# [1.1194.0](https://github.com/HankHuang0516/EClaw/compare/v1.1193.3...v1.1194.0) (2026-05-31)


### Features

* **kanban:** per-entity nudge stop-mode + avatar warning watermark ([#3055](https://github.com/HankHuang0516/EClaw/issues/3055)) ([6117ae6](https://github.com/HankHuang0516/EClaw/commit/6117ae6a7eecd590e3e9d23aabe7149801d47e39))

## Unreleased

### Features

* **kanban nudge:** add per-entity stop-mode, avatar warning watermark, and live preference sync

## [1.1193.3](https://github.com/HankHuang0516/EClaw/compare/v1.1193.2...v1.1193.3) (2026-05-31)


### Bug Fixes

* **channel:** suppress stale kanban nudges ([ed0965a](https://github.com/HankHuang0516/EClaw/commit/ed0965a59fdce279583409afa18b25127111c3bb))

## [1.1193.2](https://github.com/HankHuang0516/EClaw/compare/v1.1193.1...v1.1193.2) (2026-05-31)


### Bug Fixes

* **transform:** drop [SILENT] sentinel + noise before routing ([#3052](https://github.com/HankHuang0516/EClaw/issues/3052)) ([43444b3](https://github.com/HankHuang0516/EClaw/commit/43444b35f6ed1c64e942df087a7bb34266a1dfe9)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

## [1.1193.1](https://github.com/HankHuang0516/EClaw/compare/v1.1193.0...v1.1193.1) (2026-05-31)


### Bug Fixes

* **petdx Phase 0:** skip vault mirror when /select has no entity context ([#3051](https://github.com/HankHuang0516/EClaw/issues/3051)) ([47fd1b8](https://github.com/HankHuang0516/EClaw/commit/47fd1b88417c29d93d579d4d96fe62af6fa865e6))

# [1.1193.0](https://github.com/HankHuang0516/EClaw/compare/v1.1192.3...v1.1193.0) (2026-05-31)


### Features

* **petdx Phase 0:** atomic vault sync on /api/companion/select (§0.4a) ([#3050](https://github.com/HankHuang0516/EClaw/issues/3050)) ([9cae851](https://github.com/HankHuang0516/EClaw/commit/9cae8518ae7d9c0aa533259d4bbbf8633d58b9d9))

## [1.1192.3](https://github.com/HankHuang0516/EClaw/compare/v1.1192.2...v1.1192.3) (2026-05-31)


### Bug Fixes

* **petdx Phase 0:** live descriptor URL beats stale vault enrichment in §0.4 chain ([#3046](https://github.com/HankHuang0516/EClaw/issues/3046)) ([06e3db3](https://github.com/HankHuang0516/EClaw/commit/06e3db3b456313332a26c28fda8ec40ef96fa364)), closes [#3032](https://github.com/HankHuang0516/EClaw/issues/3032) [#3044](https://github.com/HankHuang0516/EClaw/issues/3044)

## [1.1192.2](https://github.com/HankHuang0516/EClaw/compare/v1.1192.1...v1.1192.2) (2026-05-31)


### Bug Fixes

* **petdx Phase 0:** dashboard avatar canvas guard ([2bedabf](https://github.com/HankHuang0516/EClaw/commit/2bedabf03504c7ac9ce68f72c308e0e7c90f8bc6)), closes [#3045](https://github.com/HankHuang0516/EClaw/issues/3045)

## [1.1192.1](https://github.com/HankHuang0516/EClaw/compare/v1.1192.0...v1.1192.1) (2026-05-30)


### Bug Fixes

* **point-edit Track C:** refresh anchor registry on entering mindmap mode ([#3041](https://github.com/HankHuang0516/EClaw/issues/3041)) ([59c8d87](https://github.com/HankHuang0516/EClaw/commit/59c8d87a981f2865c1f7386ac9da1e81add50f6e)), closes [#3040](https://github.com/HankHuang0516/EClaw/issues/3040)

# [1.1192.0](https://github.com/HankHuang0516/EClaw/compare/v1.1191.0...v1.1192.0) (2026-05-30)


### Features

* **point-edit:** Track C — mock mind-map node mode ([#3040](https://github.com/HankHuang0516/EClaw/issues/3040)) ([ff86b97](https://github.com/HankHuang0516/EClaw/commit/ff86b9701b3c01bed505e1926a18054edfc382a4)), closes [3006/#3010](https://github.com/HankHuang0516/EClaw/issues/3010)

# [1.1191.0](https://github.com/HankHuang0516/EClaw/compare/v1.1190.0...v1.1191.0) (2026-05-30)


### Features

* **seo:** add TechArticle + BlogPosting JSON-LD to remaining info.html panels ([#3036](https://github.com/HankHuang0516/EClaw/issues/3036)) ([dd9809e](https://github.com/HankHuang0516/EClaw/commit/dd9809eec6669a1b550509e06cc3ca96143b5e87))

# [1.1190.0](https://github.com/HankHuang0516/EClaw/compare/v1.1189.0...v1.1190.0) (2026-05-30)


### Features

* **seo:** add FAQPage JSON-LD to info.html panel-faq ([#3035](https://github.com/HankHuang0516/EClaw/issues/3035)) ([9f2a422](https://github.com/HankHuang0516/EClaw/commit/9f2a422b7a33c2793ef909d69fe7d2718d4956bb))

# [1.1189.0](https://github.com/HankHuang0516/EClaw/compare/v1.1188.0...v1.1189.0) (2026-05-30)


### Features

* **petdx phase 0:** broaden admin backfill auth to botSecret+entityId ([#3034](https://github.com/HankHuang0516/EClaw/issues/3034)) ([2e60d64](https://github.com/HankHuang0516/EClaw/commit/2e60d6487611b57b9f8bf9efcf414a43c1a1cd16)), closes [#8](https://github.com/HankHuang0516/EClaw/issues/8)

# [1.1188.0](https://github.com/HankHuang0516/EClaw/compare/v1.1187.0...v1.1188.0) (2026-05-30)


### Features

* **petdx phase 0:** admin backfill endpoint for in-process hook invocation ([#3033](https://github.com/HankHuang0516/EClaw/issues/3033)) ([6cdbe4a](https://github.com/HankHuang0516/EClaw/commit/6cdbe4a5fdce971f8285eeab3fd2f5b4279ba38d)), closes [#8](https://github.com/HankHuang0516/EClaw/issues/8)

# [1.1187.0](https://github.com/HankHuang0516/EClaw/compare/v1.1186.2...v1.1187.0) (2026-05-30)


### Features

* **petdx phase 0:** implementation — bind hook + DB migration + backfill + frontend resolver ([#3032](https://github.com/HankHuang0516/EClaw/issues/3032)) ([2033821](https://github.com/HankHuang0516/EClaw/commit/20338212d345f572396a0360efdac82722414522)), closes [#1-2](https://github.com/HankHuang0516/EClaw/issues/1-2) [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#3027](https://github.com/HankHuang0516/EClaw/issues/3027) [#6](https://github.com/HankHuang0516/EClaw/issues/6)

## [1.1186.2](https://github.com/HankHuang0516/EClaw/compare/v1.1186.1...v1.1186.2) (2026-05-30)


### Bug Fixes

* **org-chart:** suppress silent FWD echo loops ([#3028](https://github.com/HankHuang0516/EClaw/issues/3028)) ([b1205d9](https://github.com/HankHuang0516/EClaw/commit/b1205d923bd686a3fa6d926e1536c7a8d895156e))

## [1.1186.1](https://github.com/HankHuang0516/EClaw/compare/v1.1186.0...v1.1186.1) (2026-05-30)


### Bug Fixes

* **portal:** kanban avatars read live character on rebind, not hardcoded per-id default ([#3027](https://github.com/HankHuang0516/EClaw/issues/3027)) ([4bfcea8](https://github.com/HankHuang0516/EClaw/commit/4bfcea81b44f3ae5e9524b6da580ce45f93ce238)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#5](https://github.com/HankHuang0516/EClaw/issues/5)

# [1.1186.0](https://github.com/HankHuang0516/EClaw/compare/v1.1185.6...v1.1186.0) (2026-05-30)


### Features

* **portal:** /portal/about-founder.html founder story + info-nav tab + /about-founder clean URL ([#3026](https://github.com/HankHuang0516/EClaw/issues/3026)) ([6fc1520](https://github.com/HankHuang0516/EClaw/commit/6fc1520d39dbe1c1fc76bac3f9552eb1e934df5b)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#5](https://github.com/HankHuang0516/EClaw/issues/5)

## [1.1185.6](https://github.com/HankHuang0516/EClaw/compare/v1.1185.5...v1.1185.6) (2026-05-30)


### Bug Fixes

* **seo:** redirect legacy /info|/kanban|/settings|/index .html paths → /portal/* (301) ([#3024](https://github.com/HankHuang0516/EClaw/issues/3024)) ([58fe9a6](https://github.com/HankHuang0516/EClaw/commit/58fe9a6d8a5fcd1c6a564e81ce55908db63d4cfd)), closes [#3021](https://github.com/HankHuang0516/EClaw/issues/3021)

## [1.1185.5](https://github.com/HankHuang0516/EClaw/compare/v1.1185.4...v1.1185.5) (2026-05-30)


### Bug Fixes

* **portal:** wrap auth credentials in native forms ([#3021](https://github.com/HankHuang0516/EClaw/issues/3021)) ([bfade81](https://github.com/HankHuang0516/EClaw/commit/bfade810ab7d09d28ab830abd0dc230de6400e0c)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)

## [1.1185.4](https://github.com/HankHuang0516/EClaw/compare/v1.1185.3...v1.1185.4) (2026-05-30)


### Bug Fixes

* **android:** wallpaper Weekly reset countdown — per-engine claude/codex/both (parity with 5h) ([#3022](https://github.com/HankHuang0516/EClaw/issues/3022)) ([4bcc33e](https://github.com/HankHuang0516/EClaw/commit/4bcc33e4841533c60140faf081cdd224ea089acf)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#1](https://github.com/HankHuang0516/EClaw/issues/1)

## [1.1185.3](https://github.com/HankHuang0516/EClaw/compare/v1.1185.2...v1.1185.3) (2026-05-29)


### Bug Fixes

* **android:** wallpaper UX rollup — 5h+Weekly共存 / Claude vs Codex 標記 / 拖曳hit-box ([#3018](https://github.com/HankHuang0516/EClaw/issues/3018)) ([0177811](https://github.com/HankHuang0516/EClaw/commit/0177811dcdd41ec98bfc230c0dfbeec68d52c779)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#6](https://github.com/HankHuang0516/EClaw/issues/6)

## [1.1185.2](https://github.com/HankHuang0516/EClaw/compare/v1.1185.1...v1.1185.2) (2026-05-29)


### Bug Fixes

* **openclaw-channel:** ack target-mode healthcheck nonces ([6143436](https://github.com/HankHuang0516/EClaw/commit/61434361ee01394e71b52ff5d83564638b5408ac)), closes [1/#3](https://github.com/HankHuang0516/EClaw/issues/3) [1-#6](https://github.com/1-/issues/6) [1/#3](https://github.com/HankHuang0516/EClaw/issues/3)

## [1.1185.1](https://github.com/HankHuang0516/EClaw/compare/v1.1185.0...v1.1185.1) (2026-05-29)


### Bug Fixes

* **server:** point-edit resolver P0 hardening — graceful shutdown + rate limit + sanitizer revisit ([#3015](https://github.com/HankHuang0516/EClaw/issues/3015)) ([651c01d](https://github.com/HankHuang0516/EClaw/commit/651c01d9ea39b710b541213bdf1de1273373dc9f)), closes [#3010](https://github.com/HankHuang0516/EClaw/issues/3010)

# [1.1185.0](https://github.com/HankHuang0516/EClaw/compare/v1.1184.3...v1.1185.0) (2026-05-29)


### Features

* **info:** embed Day 144 — 三條 P0 同日 ship highlight in info hub ([#3016](https://github.com/HankHuang0516/EClaw/issues/3016)) ([d9d1a1b](https://github.com/HankHuang0516/EClaw/commit/d9d1a1bc692fc52f7289866462a7c8b40619d6d5)), closes [#3014](https://github.com/HankHuang0516/EClaw/issues/3014) [#3013](https://github.com/HankHuang0516/EClaw/issues/3013) [#3012](https://github.com/HankHuang0516/EClaw/issues/3012) [#6](https://github.com/HankHuang0516/EClaw/issues/6)

## [1.1184.3](https://github.com/HankHuang0516/EClaw/compare/v1.1184.2...v1.1184.3) (2026-05-29)


### Bug Fixes

* **org-chart:** suppress low-signal noise in silent FWD-to-superior path ([#3014](https://github.com/HankHuang0516/EClaw/issues/3014)) ([f0230f9](https://github.com/HankHuang0516/EClaw/commit/f0230f9032d734a96cb61c3baa679ff534b31cc2)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)

## [1.1184.2](https://github.com/HankHuang0516/EClaw/compare/v1.1184.1...v1.1184.2) (2026-05-29)


### Bug Fixes

* **security:** SSRF — per-request route guard + RFC1918/ULA block (PR [#3010](https://github.com/HankHuang0516/EClaw/issues/3010) review by [#6](https://github.com/HankHuang0516/EClaw/issues/6)) ([#3013](https://github.com/HankHuang0516/EClaw/issues/3013)) ([9fbd8c9](https://github.com/HankHuang0516/EClaw/commit/9fbd8c944738024afa99c9c5c053f7a0517eba1f))

## [1.1184.1](https://github.com/HankHuang0516/EClaw/compare/v1.1184.0...v1.1184.1) (2026-05-29)


### Bug Fixes

* **wallpaper:** render reset-countdown line regardless of snapshot==null guard (card_4018404d) ([#3012](https://github.com/HankHuang0516/EClaw/issues/3012)) ([751d9d1](https://github.com/HankHuang0516/EClaw/commit/751d9d1f197f5c42fd66e827869f337681fcb498)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2)

# [1.1184.0](https://github.com/HankHuang0516/EClaw/compare/v1.1183.1...v1.1184.0) (2026-05-29)


### Features

* **point-edit:** Track B v2 — Playwright universal resolver ([#3006](https://github.com/HankHuang0516/EClaw/issues/3006) follow-up) ([#3010](https://github.com/HankHuang0516/EClaw/issues/3010)) ([2fff9ba](https://github.com/HankHuang0516/EClaw/commit/2fff9babd979144bfcae5928ccbb050206cfbece)), closes [#id](https://github.com/HankHuang0516/EClaw/issues/id) [#1](https://github.com/HankHuang0516/EClaw/issues/1)

## [1.1183.1](https://github.com/HankHuang0516/EClaw/compare/v1.1183.0...v1.1183.1) (2026-05-28)


### Bug Fixes

* **portal:** load api before auth on publisher pages ([#3008](https://github.com/HankHuang0516/EClaw/issues/3008)) ([80ae633](https://github.com/HankHuang0516/EClaw/commit/80ae63315860ffa12674fa0d6a0d94d8acdc72fb))

# [1.1183.0](https://github.com/HankHuang0516/EClaw/compare/v1.1182.2...v1.1183.0) (2026-05-28)


### Features

* **portal:** add point-edit coordinate resolver ([#3006](https://github.com/HankHuang0516/EClaw/issues/3006)) ([d8bccba](https://github.com/HankHuang0516/EClaw/commit/d8bccba9bf5f547b6f74f60bc45dfc4fdad6f206))
* **android:** wallpaper reset-interval toggle (5h/weekly countdown) ([#3005](https://github.com/HankHuang0516/EClaw/issues/3005)) ([4e7e324](https://github.com/HankHuang0516/EClaw/commit/4e7e324f462ab74258af09e584573b1ce1dac7e0))

## [1.1182.2](https://github.com/HankHuang0516/EClaw/compare/v1.1182.1...v1.1182.2) (2026-05-28)


### Bug Fixes

* **transform:** 400-gate malformed speakTo instead of silent not_found ([#3002](https://github.com/HankHuang0516/EClaw/issues/3002)) ([5b70fa9](https://github.com/HankHuang0516/EClaw/commit/5b70fa9849eb7937df0408f06750c2b67f858174)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)

## [1.1182.1](https://github.com/HankHuang0516/EClaw/compare/v1.1182.0...v1.1182.1) (2026-05-28)


### Bug Fixes

* **entity:** sync avatar with character on rebind/transform ([#2993](https://github.com/HankHuang0516/EClaw/issues/2993)) ([af3ca91](https://github.com/HankHuang0516/EClaw/commit/af3ca9153e8a7ab593d0e7bc4b0050b914812d50))

# [1.1182.0](https://github.com/HankHuang0516/EClaw/compare/v1.1181.0...v1.1182.0) (2026-05-28)


### Features

* **portal:** point-and-edit roadmap — 3-track scenario walkthrough ([#2992](https://github.com/HankHuang0516/EClaw/issues/2992)) ([b7bf4d9](https://github.com/HankHuang0516/EClaw/commit/b7bf4d9b7b8dfc359459b63ac690097b95b88246)), closes [pointedit#point-edit-demo](https://github.com/pointedit/issues/point-edit-demo) [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.1181.0](https://github.com/HankHuang0516/EClaw/compare/v1.1180.3...v1.1181.0) (2026-05-28)


### Features

* **portal:** point-and-edit demo (Track A — DOM selector + text-selection) ([#2991](https://github.com/HankHuang0516/EClaw/issues/2991)) ([c96f746](https://github.com/HankHuang0516/EClaw/commit/c96f74613cc5dfa986876dddcc15c29b4057e697)), closes [Hermes/#3](https://github.com/HankHuang0516/EClaw/issues/3)

## [1.1180.3](https://github.com/HankHuang0516/EClaw/compare/v1.1180.2...v1.1180.3) (2026-05-28)


### Bug Fixes

* **borrow:** bind once per fleet-cron via TTL-aware reuse ([#2990](https://github.com/HankHuang0516/EClaw/issues/2990)) ([6563736](https://github.com/HankHuang0516/EClaw/commit/656373655e51c863d74a700dc30371748b19e536)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#1](https://github.com/HankHuang0516/EClaw/issues/1)

## [1.1180.2](https://github.com/HankHuang0516/EClaw/compare/v1.1180.1...v1.1180.2) (2026-05-28)


### Bug Fixes

* **kanban:** always include schedule field on /cards rows ([#2989](https://github.com/HankHuang0516/EClaw/issues/2989)) ([1eb7276](https://github.com/HankHuang0516/EClaw/commit/1eb727601ff401a5e3543645bbe35ba96e1a61b8))

## [1.1180.1](https://github.com/HankHuang0516/EClaw/compare/v1.1180.0...v1.1180.1) (2026-05-28)


### Bug Fixes

* **db:** backfill model_name on 3 existing free bots ([#2988](https://github.com/HankHuang0516/EClaw/issues/2988)) ([e0e310c](https://github.com/HankHuang0516/EClaw/commit/e0e310c7954ff4382cd66cd188bd02f52299e3a9)), closes [#2987](https://github.com/HankHuang0516/EClaw/issues/2987)

# [1.1180.0](https://github.com/HankHuang0516/EClaw/compare/v1.1179.1...v1.1180.0) (2026-05-28)


### Bug Fixes

* **backend:** skill doc IMMEDIATE ACTION example payload — placeholder redesign (Path A) ([#2986](https://github.com/HankHuang0516/EClaw/issues/2986)) ([c7f6962](https://github.com/HankHuang0516/EClaw/commit/c7f6962e383951203d4463bf0b8c555aea169232)), closes [#2982](https://github.com/HankHuang0516/EClaw/issues/2982) [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#6](https://github.com/HankHuang0516/EClaw/issues/6)


### Features

* **official-bots:** add model_name canonical field + PATCH metadata endpoint ([#2987](https://github.com/HankHuang0516/EClaw/issues/2987)) ([b34e165](https://github.com/HankHuang0516/EClaw/commit/b34e1657cee7d5ab9e0ed8845d9cdff2c5566e7e))

## [1.1179.1](https://github.com/HankHuang0516/EClaw/compare/v1.1179.0...v1.1179.1) (2026-05-27)


### Bug Fixes

* **borrow:** bind skill doc echoes back as greeting reply ([#2982](https://github.com/HankHuang0516/EClaw/issues/2982)) ([a227741](https://github.com/HankHuang0516/EClaw/commit/a22774172c54c8c3aaf6d7133d610f41f8e9e1e3)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.1179.0](https://github.com/HankHuang0516/EClaw/compare/v1.1178.0...v1.1179.0) (2026-05-27)


### Features

* **transform:** Platform-P2 ack_required delivery confirmation ([#2980](https://github.com/HankHuang0516/EClaw/issues/2980)) ([f33db8b](https://github.com/HankHuang0516/EClaw/commit/f33db8bd5939a47a43474491081bbfe8d2f8b616)), closes [hi#priority](https://github.com/hi/issues/priority)

# [1.1178.0](https://github.com/HankHuang0516/EClaw/compare/v1.1177.0...v1.1178.0) (2026-05-27)


### Features

* **transform:** Platform-P1 delivery confirmation primitives ([#2979](https://github.com/HankHuang0516/EClaw/issues/2979)) ([49d2273](https://github.com/HankHuang0516/EClaw/commit/49d2273879e9b8eca70d3ecd320601242f5612e5)), closes [#N](https://github.com/HankHuang0516/EClaw/issues/N) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#1](https://github.com/HankHuang0516/EClaw/issues/1)

# [1.1177.0](https://github.com/HankHuang0516/EClaw/compare/v1.1176.1...v1.1177.0) (2026-05-27)


### Features

* **portal:** page transition overlay (card_64917ead) ([#2975](https://github.com/HankHuang0516/EClaw/issues/2975)) ([dd96524](https://github.com/HankHuang0516/EClaw/commit/dd96524f3fb02fe91268cfc318d2bd9b3134879e)), closes [3/#4](https://github.com/HankHuang0516/EClaw/issues/4) [#6](https://github.com/HankHuang0516/EClaw/issues/6)

## [1.1176.1](https://github.com/HankHuang0516/EClaw/compare/v1.1176.0...v1.1176.1) (2026-05-27)


### Bug Fixes

* **android:** OfficialBorrow Toast error_unknown fallback ([#2974](https://github.com/HankHuang0516/EClaw/issues/2974)) ([#2971](https://github.com/HankHuang0516/EClaw/issues/2971)) ([ad8cbb1](https://github.com/HankHuang0516/EClaw/commit/ad8cbb1548de2a3dd0fa99ed4446a6cff92d59a5))

# [1.1176.0](https://github.com/HankHuang0516/EClaw/compare/v1.1175.2...v1.1176.0) (2026-05-27)


### Features

* **portal/info:** Bot Boundaries tab — 7 refusal categories with override notes ([#2943](https://github.com/HankHuang0516/EClaw/issues/2943)) ([31d5679](https://github.com/HankHuang0516/EClaw/commit/31d5679495b6916abc2b9b02f9d380e3f13091a6)), closes [3/#4](https://github.com/HankHuang0516/EClaw/issues/4) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#2945](https://github.com/HankHuang0516/EClaw/issues/2945) [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **plaza:** Featured this week section — 6-day rotation, 6 seeded stories ([#2944](https://github.com/HankHuang0516/EClaw/issues/2944)) ([f20e2da](https://github.com/HankHuang0516/EClaw/commit/f20e2daeea45ecb45c538910cd1579c47d172005)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#4](https://github.com/HankHuang0516/EClaw/issues/4) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#6](https://github.com/HankHuang0516/EClaw/issues/6) [3/#4](https://github.com/HankHuang0516/EClaw/issues/4) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2940](https://github.com/HankHuang0516/EClaw/issues/2940) [#2940](https://github.com/HankHuang0516/EClaw/issues/2940) [#6](https://github.com/HankHuang0516/EClaw/issues/6)

## [1.1175.2](https://github.com/HankHuang0516/EClaw/compare/v1.1175.1...v1.1175.2) (2026-05-27)


### Bug Fixes

* **android:** bump production app version to 1.0.87 ([bb4203e](https://github.com/HankHuang0516/EClaw/commit/bb4203ef9aeaf184ea5c270287ef523dbe5779d5))

## [1.1175.1](https://github.com/HankHuang0516/EClaw/compare/v1.1175.0...v1.1175.1) (2026-05-26)


### Bug Fixes

* **portal:** label visible form controls ([#2968](https://github.com/HankHuang0516/EClaw/issues/2968)) ([42944b1](https://github.com/HankHuang0516/EClaw/commit/42944b10279f58f3a48b9f9ae775045f42845360))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-26)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **channel:** ack healthchecks before agent dispatch ([f463a5a](https://github.com/HankHuang0516/EClaw/commit/f463a5ad2971568fc6612734a783cd280076476c))
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **notifications:** add kanban_done + kanban_done_auto toggles to Android Settings ([#2636](https://github.com/HankHuang0516/EClaw/issues/2636)) ([a710909](https://github.com/HankHuang0516/EClaw/commit/a7109095e3393b8564e7ef1b23d382a4fbb944b8))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **api:** align /api/platform-stats skill-doc with device-auth contract (card_49b8190) ([#2916](https://github.com/HankHuang0516/EClaw/issues/2916)) ([ee55b2f](https://github.com/HankHuang0516/EClaw/commit/ee55b2fdbfbcd4bead5501d16ee66339056c32d7))
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **i18n:** ar block — fix 27 broken entries (CJK leaks + truncated HTML) ([#2851](https://github.com/HankHuang0516/EClaw/issues/2851)) ([5b19175](https://github.com/HankHuang0516/EClaw/commit/5b19175d712d00d16fcec00b749035c4beae7a5c))
* **chat:** atomic-load target bar (await contacts before first render) ([#2831](https://github.com/HankHuang0516/EClaw/issues/2831)) ([5f529e6](https://github.com/HankHuang0516/EClaw/commit/5f529e6b772eacc38ba1de69b44258a05f0d816a)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2](https://github.com/HankHuang0516/EClaw/issues/2)
* **channel:** await binding persistence ([712516d](https://github.com/HankHuang0516/EClaw/commit/712516decafb745035bd1434a28cc1973d433e19))
* **rental:** bump handshake timeout to 60s + timeout-aware discovery fallback ([#2863](https://github.com/HankHuang0516/EClaw/issues/2863)) ([fd4322f](https://github.com/HankHuang0516/EClaw/commit/fd4322f8890f3c2dfca3acdae6a4b95f19c381f9)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **chat:** carry kanban message deep-links ([#2946](https://github.com/HankHuang0516/EClaw/issues/2946)) ([971e2d2](https://github.com/HankHuang0516/EClaw/commit/971e2d27aeb212660901c8707cf418b7b1411286))
* **i18n:** clear batch 1 residual missing keys ([#2790](https://github.com/HankHuang0516/EClaw/issues/2790)) ([211030e](https://github.com/HankHuang0516/EClaw/commit/211030e0b0b6a865c11f0c4ed60dc4e356d43b7a))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **kanban:** comment input no longer overlaps last comment in card detail (PR [#2678](https://github.com/HankHuang0516/EClaw/issues/2678)) ([fba91fc](https://github.com/HankHuang0516/EClaw/commit/fba91fca15402b453a0db5ee857c0b16e6087055))
* **chat:** compact 20px avatar in target bar (App WebView only shows [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2](https://github.com/HankHuang0516/EClaw/issues/2)) ([#2830](https://github.com/HankHuang0516/EClaw/issues/2830)) ([42c7543](https://github.com/HankHuang0516/EClaw/commit/42c7543b4a78a7abf3f5f7535eb9bc6142cd0fe2)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **portal:** complete 401 redirect sweep + mobile UIUX truncation ([#2842](https://github.com/HankHuang0516/EClaw/issues/2842)) ([f9799ba](https://github.com/HankHuang0516/EClaw/commit/f9799ba42498b109f0a8a70e80836aa6da51e216)), closes [#2833](https://github.com/HankHuang0516/EClaw/issues/2833) [#2845](https://github.com/HankHuang0516/EClaw/issues/2845) [#2844](https://github.com/HankHuang0516/EClaw/issues/2844) [#2843](https://github.com/HankHuang0516/EClaw/issues/2843)
* **uiux:** continue qa mobile readability sweep ([#2854](https://github.com/HankHuang0516/EClaw/issues/2854)) ([57606ff](https://github.com/HankHuang0516/EClaw/commit/57606ffe3e543b07a026aacc53c4b470c9a7825b))
* **i18n:** cover dynamic portal wrapper keys ([#2807](https://github.com/HankHuang0516/EClaw/issues/2807)) ([4c711cc](https://github.com/HankHuang0516/EClaw/commit/4c711cc4009300ffe4e8933a98ee01cd0fdd6aeb))
* **i18n:** dedup 20 dash_channel_card_* keys in es block ([#2876](https://github.com/HankHuang0516/EClaw/issues/2876)) ([807284c](https://github.com/HankHuang0516/EClaw/commit/807284ce363ef119ccdb0ae40e5ce99d3f0a27e0))
* **i18n:** dedupe backend locale keys via AST ([#2920](https://github.com/HankHuang0516/EClaw/issues/2920)) ([40ef114](https://github.com/HankHuang0516/EClaw/commit/40ef11414c8b836fe1ed93ec06c839df3a1bf7b9))
* **i18n:** dedupe zh locale keys ([#2919](https://github.com/HankHuang0516/EClaw/issues/2919)) ([afd2cca](https://github.com/HankHuang0516/EClaw/commit/afd2cca8086c2f2df0d04c9c5f8c58733652875e))
* **test:** delegate root test and remove invalid jest option ([#2292](https://github.com/HankHuang0516/EClaw/issues/2292)) ([65bf2f8](https://github.com/HankHuang0516/EClaw/commit/65bf2f83d26d925097cd380ab73b04ab2db49842))
* **kanban:** dep-aware nudge gating + roadmap dependency backfill ([#2904](https://github.com/HankHuang0516/EClaw/issues/2904)) ([2b76ac9](https://github.com/HankHuang0516/EClaw/commit/2b76ac9d3b7e4169b7bc3c6f6b0b0903b63cd9f7)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **rental:** don't pollute entity.message on push gateway timeout ([#2860](https://github.com/HankHuang0516/EClaw/issues/2860)) ([592ba44](https://github.com/HankHuang0516/EClaw/commit/592ba44f57536ee00011b6cbddaa6b129a7cbae9))
* **petdx:** drop dark-grey loading placeholder + preload sprite WEBP ([#2628](https://github.com/HankHuang0516/EClaw/issues/2628)) ([59cef38](https://github.com/HankHuang0516/EClaw/commit/59cef387bd69ca99d7d15c86a1364856d3849ad8)), closes [#1a1a1a](https://github.com/HankHuang0516/EClaw/issues/1a1a1a)
* **gateway-ws:** drop Origin header on server-to-server WS upgrade ([#2869](https://github.com/HankHuang0516/EClaw/issues/2869)) ([716dcf9](https://github.com/HankHuang0516/EClaw/commit/716dcf9d0834b17522bb9d894bad84bc142d1a19))
* **setup-scripts:** drop Origin header on server-to-server WS upgrade ([#2875](https://github.com/HankHuang0516/EClaw/issues/2875)) ([9d893b8](https://github.com/HankHuang0516/EClaw/commit/9d893b8e5eea4db275e450bf423903c156cd3e4b)), closes [#2869](https://github.com/HankHuang0516/EClaw/issues/2869)
* **security:** escape innerHTML in chat modal error messages ([#2819](https://github.com/HankHuang0516/EClaw/issues/2819)) ([dce07ad](https://github.com/HankHuang0516/EClaw/commit/dce07adde64795916dba977ae23e46f3371ce7ed)), closes [#2809](https://github.com/HankHuang0516/EClaw/issues/2809) [#2810](https://github.com/HankHuang0516/EClaw/issues/2810) [#2809](https://github.com/HankHuang0516/EClaw/issues/2809) [#2810](https://github.com/HankHuang0516/EClaw/issues/2810)
* **proxy:** export repo auth to CLI child ([#2928](https://github.com/HankHuang0516/EClaw/issues/2928)) ([336a8ca](https://github.com/HankHuang0516/EClaw/commit/336a8caff4e3663287bd2948cf9fe6e04125cbc8))
* **entities:** expose botSecret to owner so wallpaper service can poll companions ([#2615](https://github.com/HankHuang0516/EClaw/issues/2615)) ([04470fc](https://github.com/HankHuang0516/EClaw/commit/04470fce8f8c3fce2b1ba8b243e776606f107502))
* **rental:** expose owner_public_code in marketplace so plaza CTA can route ([#2616](https://github.com/HankHuang0516/EClaw/issues/2616)) ([4d1372f](https://github.com/HankHuang0516/EClaw/commit/4d1372f717d93cab65543e87c852e74e9fb67071)), closes [#2610](https://github.com/HankHuang0516/EClaw/issues/2610)
* **mindmap:** fallback to device scope when entityId is null ([#2728](https://github.com/HankHuang0516/EClaw/issues/2728)) ([7572312](https://github.com/HankHuang0516/EClaw/commit/7572312433d3d75fc245eda48a28919ce14bd927))
* **i18n:** fill 11 missing zh keys post-[#2920](https://github.com/HankHuang0516/EClaw/issues/2920)/[#2921](https://github.com/HankHuang0516/EClaw/issues/2921) (card_de6970) ([#2924](https://github.com/HankHuang0516/EClaw/issues/2924)) ([17c4899](https://github.com/HankHuang0516/EClaw/commit/17c48996489b1444d6ed589027acfa7986178fe1)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** fill backend runtime locale gaps ([#2921](https://github.com/HankHuang0516/EClaw/issues/2921)) ([00d96ff](https://github.com/HankHuang0516/EClaw/commit/00d96ff261b8134b49292623e1f786fd544144cc))
* **i18n:** fill Spanish drift keys ([#2751](https://github.com/HankHuang0516/EClaw/issues/2751)) ([0ad0ee5](https://github.com/HankHuang0516/EClaw/commit/0ad0ee55f7fac3e6ac46d891539950dab4d553cc))
* **portal:** fit embedded org chart to mobile viewport ([#2674](https://github.com/HankHuang0516/EClaw/issues/2674)) ([1c4e1b4](https://github.com/HankHuang0516/EClaw/commit/1c4e1b413ea7027b4cd4b8ecda981b0d0e12e66b))
* **i18n:** fix 6 trailing-comma syntax errors in 10-locale batch ([#2771](https://github.com/HankHuang0516/EClaw/issues/2771)) ([b27c6ca](https://github.com/HankHuang0516/EClaw/commit/b27c6ca204bf813e406c54ce3a2532a5f1f031b3))
* **kanban:** GET card returns latest 50 comments + comments endpoint exposes total ([#2816](https://github.com/HankHuang0516/EClaw/issues/2816)) ([c4d83f7](https://github.com/HankHuang0516/EClaw/commit/c4d83f777a1cd26aea0936e4316aa35c52822eef))
* **sharechat:** guest verify-email modal + disabled Send for unverified ([#2865](https://github.com/HankHuang0516/EClaw/issues/2865)) ([cb3b061](https://github.com/HankHuang0516/EClaw/commit/cb3b0614e0f6160417d907753e66eceb2d666802))
* **portal:** H4 showcase i18n data-attrs + raw key leak ([#2935](https://github.com/HankHuang0516/EClaw/issues/2935)) ([80d8587](https://github.com/HankHuang0516/EClaw/commit/80d8587c00c03f72fdb9756b1093ee8e1e3d0842)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **uiux:** harden chat previews and roster preview ([#2769](https://github.com/HankHuang0516/EClaw/issues/2769)) ([466d4d3](https://github.com/HankHuang0516/EClaw/commit/466d4d3ef81c628d3f58db64323946053d7bf61c))
* **mention-parser:** ignore @-mentions inside markdown code spans ([#2645](https://github.com/HankHuang0516/EClaw/issues/2645)) ([8da19d4](https://github.com/HankHuang0516/EClaw/commit/8da19d4a79ceb4152bf2144ee0847c61ce3e1def)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **kanban:** lazy-load dependency chips via IntersectionObserver ([#2632](https://github.com/HankHuang0516/EClaw/issues/2632)) ([20586b4](https://github.com/HankHuang0516/EClaw/commit/20586b43357335f9eb6a190c02d58c8e36b58aba)), closes [#2631](https://github.com/HankHuang0516/EClaw/issues/2631)
* **i18n:** localize FCM NotificationChannel labels (card_ec8d3a22) ([#2918](https://github.com/HankHuang0516/EClaw/issues/2918)) ([591cd20](https://github.com/HankHuang0516/EClaw/commit/591cd206704693650a53d19d94c4cc75daf84ffd))
* **kanban:** make card sorting deterministic ([#2756](https://github.com/HankHuang0516/EClaw/issues/2756)) ([48e2117](https://github.com/HankHuang0516/EClaw/commit/48e2117b64e37f05dc635e0a3b67bfd43cbe48f5))
* **android:** make wallpaper scaling two-stage ([a64b44a](https://github.com/HankHuang0516/EClaw/commit/a64b44ab46c57a7da7b6560ad553f45dffc807d7))
* **portal/nagoya-trip:** map-link invisible on dark hero/day-banner ([#2897](https://github.com/HankHuang0516/EClaw/issues/2897)) ([cc33df6](https://github.com/HankHuang0516/EClaw/commit/cc33df686673455c20beaee60871412a5d486e66)), closes [#1f4030](https://github.com/HankHuang0516/EClaw/issues/1f4030) [#8b8579](https://github.com/HankHuang0516/EClaw/issues/8b8579) [#6e6859](https://github.com/HankHuang0516/EClaw/issues/6e6859) [#7a5614](https://github.com/HankHuang0516/EClaw/issues/7a5614)
* **portal:** mobile delete-modal clipped right edge (P0) ([#2951](https://github.com/HankHuang0516/EClaw/issues/2951)) ([00418ca](https://github.com/HankHuang0516/EClaw/commit/00418ca812d5b757e35d12a9810b124f30491bbb))
* **org-chart:** notify affected bots on hierarchy change ([#2812](https://github.com/HankHuang0516/EClaw/issues/2812)) ([55675fd](https://github.com/HankHuang0516/EClaw/commit/55675fdf4487494d729a29524b32bd81b756a00c)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** notify reviewer on manual /move → review ([#2753](https://github.com/HankHuang0516/EClaw/issues/2753)) ([6cbbb4e](https://github.com/HankHuang0516/EClaw/commit/6cbbb4ee8c0d4d8ad54df2e9b5faaa3699bd530f))
* **wallpaper:** off-load spritesheet fetch to IO so per-petdx sprites actually render ([#2618](https://github.com/HankHuang0516/EClaw/issues/2618)) ([61b832c](https://github.com/HankHuang0516/EClaw/commit/61b832c9fa8a1d0caab810ccc942d85c63349267)), closes [#2615](https://github.com/HankHuang0516/EClaw/issues/2615) [#2577](https://github.com/HankHuang0516/EClaw/issues/2577)
* **security:** patch P0 sanitize-html XSS + P1 protobufjs + exam.html XSS ([#2829](https://github.com/HankHuang0516/EClaw/issues/2829)) ([c71b871](https://github.com/HankHuang0516/EClaw/commit/c71b871a045887375dd0d26d1a3280a0891a89ad))
* **security:** patch ws uninitialized memory disclosure (GHSA-58qx-3vcg-4xpx) ([#2872](https://github.com/HankHuang0516/EClaw/issues/2872)) ([2523d15](https://github.com/HankHuang0516/EClaw/commit/2523d154bbe501a7cc086340f7a07ece3abfa69b))
* **portal:** petdx-browser cookie-session fallback for device-login ([#2757](https://github.com/HankHuang0516/EClaw/issues/2757)) ([ca275f4](https://github.com/HankHuang0516/EClaw/commit/ca275f4519835da0c7ad71c588908a18f6f138d8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **api:** platform-stats 500 + entity/lookup publicCode alias ([#2809](https://github.com/HankHuang0516/EClaw/issues/2809), [#2810](https://github.com/HankHuang0516/EClaw/issues/2810)) ([#2818](https://github.com/HankHuang0516/EClaw/issues/2818)) ([f99fd17](https://github.com/HankHuang0516/EClaw/commit/f99fd17b2b1c32d88daa2510ff66d714c1a53edc))
* **i18n:** positional format specifiers for feedback_result_logs (7 locales) ([#2597](https://github.com/HankHuang0516/EClaw/issues/2597)) ([21aedc7](https://github.com/HankHuang0516/EClaw/commit/21aedc7eebc7a2839e340136f38dfdfd4dabb9dc))
* **avatar-petdx:** preserve descriptor across transient API failures (flicker) ([#2625](https://github.com/HankHuang0516/EClaw/issues/2625)) ([7b1c606](https://github.com/HankHuang0516/EClaw/commit/7b1c606514f7698d72ec95cf6c556e4043966186))
* **chat:** preserve recipient selection across rental-health refresh (P0 #card_eb1cba76) ([#2906](https://github.com/HankHuang0516/EClaw/issues/2906)) ([9cc0301](https://github.com/HankHuang0516/EClaw/commit/9cc0301cc26a0f49af4b7f53486f5c1a7cdd7902)), closes [#card_eb1cba76](https://github.com/HankHuang0516/EClaw/issues/card_eb1cba76) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **chat:** preserve scroll anchor while reading history ([#2693](https://github.com/HankHuang0516/EClaw/issues/2693)) ([945fdb7](https://github.com/HankHuang0516/EClaw/commit/945fdb7192b791b31882e1e75568dd8b11e4686f))
* **qa:** protect contact reads and refresh UX audits ([#2955](https://github.com/HankHuang0516/EClaw/issues/2955)) ([24dc2ec](https://github.com/HankHuang0516/EClaw/commit/24dc2ec5e2eb0b099d4231e440fd29e65ef83dc8))
* **promo:** pull video embed from /promo-chat-avatar.html ([#2724](https://github.com/HankHuang0516/EClaw/issues/2724)) ([2afabc8](https://github.com/HankHuang0516/EClaw/commit/2afabc8c5ff8b25218a7cb857e8adfa572c8e9d5))
* **dashboard:** read live.rate_limits.{five_hour,seven_day}.used_percentage ([#2895](https://github.com/HankHuang0516/EClaw/issues/2895)) ([8223303](https://github.com/HankHuang0516/EClaw/commit/822330312bccb1c76675ad2c3b26e78d10dd1298))
* **kanban:** realign stale recurring schedules ([#2785](https://github.com/HankHuang0516/EClaw/issues/2785)) ([ab8ee25](https://github.com/HankHuang0516/EClaw/commit/ab8ee250a9b37f3d3e838bb01d8866c8d2b78231))
* **i18n:** reapply de6970 locale gap translations ([#2925](https://github.com/HankHuang0516/EClaw/issues/2925)) ([d994dc1](https://github.com/HankHuang0516/EClaw/commit/d994dc1d240fef72326db2599262375ccbf29175))
* **portal:** reduce QA-discovered request fanout ([#2656](https://github.com/HankHuang0516/EClaw/issues/2656)) ([1e46d6b](https://github.com/HankHuang0516/EClaw/commit/1e46d6bab61e58c65b452b6503d953f8dddeee75))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **portal:** remove org chart fit scale floor ([#2676](https://github.com/HankHuang0516/EClaw/issues/2676)) ([0f01606](https://github.com/HankHuang0516/EClaw/commit/0f016068b963bb5f800a02f28817c7174979d913))
* **rental:** remove phantom 'webhook test push' step from BIND_COMPLETE ([#2864](https://github.com/HankHuang0516/EClaw/issues/2864)) ([47f4a3e](https://github.com/HankHuang0516/EClaw/commit/47f4a3edf76aa95ebd06d8713cd44fda6eef9b5d))
* **i18n:** rename mm_empty_title → mm_state_empty_title in mindmap.html ([#2683](https://github.com/HankHuang0516/EClaw/issues/2683)) ([c79c109](https://github.com/HankHuang0516/EClaw/commit/c79c109bea23142e8a6d9ace976d105af1280ec9))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **chat:** render mention avatars with companion renderer ([#2633](https://github.com/HankHuang0516/EClaw/issues/2633)) ([03e205f](https://github.com/HankHuang0516/EClaw/commit/03e205f663ecd2c2f443d4009dd5af0093f0bbbb))
* **kanban:** reserve mobile comments panel height ([#2782](https://github.com/HankHuang0516/EClaw/issues/2782)) ([ce8662d](https://github.com/HankHuang0516/EClaw/commit/ce8662d362422fdd25037f1deb61dbed9425e2f9))
* **channel:** restore handshake fallback to discovered sessions ([#2915](https://github.com/HankHuang0516/EClaw/issues/2915)) ([#2917](https://github.com/HankHuang0516/EClaw/issues/2917)) ([9d7d3a2](https://github.com/HankHuang0516/EClaw/commit/9d7d3a25654289998314dd5ca152cefdb8a4d64e)), closes [#2912](https://github.com/HankHuang0516/EClaw/issues/2912)
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* scheduled audit 2026-05-13 — 6 bugs, XSS, i18n ([#2668](https://github.com/HankHuang0516/EClaw/issues/2668)) ([21dd513](https://github.com/HankHuang0516/EClaw/commit/21dd513b4464738de29164265437435ba6cc4817)), closes [#2605](https://github.com/HankHuang0516/EClaw/issues/2605) [#2608](https://github.com/HankHuang0516/EClaw/issues/2608) [#2600](https://github.com/HankHuang0516/EClaw/issues/2600) [#2599](https://github.com/HankHuang0516/EClaw/issues/2599) [#2598](https://github.com/HankHuang0516/EClaw/issues/2598)
* **channel:** scope official bot sessions ([#2912](https://github.com/HankHuang0516/EClaw/issues/2912)) ([5c56b62](https://github.com/HankHuang0516/EClaw/commit/5c56b62c13b739b76f39e168a26bd4e5de2644fb))
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **dashboard:** show Claude weekly bar reset countdown ([#2896](https://github.com/HankHuang0516/EClaw/issues/2896)) ([3b87845](https://github.com/HankHuang0516/EClaw/commit/3b87845d713e980fec69f6b8007549338a326713)), closes [#2895](https://github.com/HankHuang0516/EClaw/issues/2895)
* **chat:** smart-chip preview falls back to inline c.comments when /comments fails (PR [#2677](https://github.com/HankHuang0516/EClaw/issues/2677)) ([7f4dffd](https://github.com/HankHuang0516/EClaw/commit/7f4dffd2c83ea86f296b8fa0610f0e67c9f1af11))
* **kanban:** stabilize comment detail viewport ([#2796](https://github.com/HankHuang0516/EClaw/issues/2796)) ([0a10aad](https://github.com/HankHuang0516/EClaw/commit/0a10aadb5a5b12ff23454c16d5c88183b94ad7d7))
* **wallpaper:** stop Android live wallpaper flashing default lobster on companion change ([#2629](https://github.com/HankHuang0516/EClaw/issues/2629)) ([8b4f66f](https://github.com/HankHuang0516/EClaw/commit/8b4f66fcb335bf43128f924b761b6337c817095b)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **chat:** stop chat.html bouncing to dashboard via /api/rental/health-status 401 race ([#2833](https://github.com/HankHuang0516/EClaw/issues/2833)) ([c422406](https://github.com/HankHuang0516/EClaw/commit/c4224067cdcfe7f3e22ab95007c7563dac4196ac))
* **openclaw-channel:** support OpenClaw 2026.5.20 ([8045de6](https://github.com/HankHuang0516/EClaw/commit/8045de6bebecfc05f9bd57453b99c098ca35681b))
* **mentions:** support same-device CJK display-name tags ([#2874](https://github.com/HankHuang0516/EClaw/issues/2874)) ([b8f61be](https://github.com/HankHuang0516/EClaw/commit/b8f61be9a3962fef75dd32ea34e8900880dafaf9))
* **channel:** suppress operational A2A loop messages (rebase of [#2288](https://github.com/HankHuang0516/EClaw/issues/2288)) ([#2930](https://github.com/HankHuang0516/EClaw/issues/2930)) ([7ceabc9](https://github.com/HankHuang0516/EClaw/commit/7ceabc915df22123cb46ae1500e2eb2e279250af))
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **openapi:** un-nest Lookup description from CardHolder ([#2964](https://github.com/HankHuang0516/EClaw/issues/2964)) ([689526e](https://github.com/HankHuang0516/EClaw/commit/689526e70a906c337d11d07bdf6150126e6bc778))
* **dashboard:** use sessions[].project for widget Projects list (was .project_id) ([#2894](https://github.com/HankHuang0516/EClaw/issues/2894)) ([0fd1334](https://github.com/HankHuang0516/EClaw/commit/0fd1334897d4a603cc6eb74f34b48606547e09cf))
* **app:** WebView pages honor app-selected locale via ?lang= URL param ([#2672](https://github.com/HankHuang0516/EClaw/issues/2672)) ([8ed8757](https://github.com/HankHuang0516/EClaw/commit/8ed8757aec5bf214e837cc0d81bf2b23f1993a91)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **share-chat:** wire rich CTA actions to msgInput ([#2867](https://github.com/HankHuang0516/EClaw/issues/2867)) ([df23b11](https://github.com/HankHuang0516/EClaw/commit/df23b1147d34c59a644a145bbd87c18b96400acc))


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* **usage-api:** /api/usage/{snapshot,timeline} + usage_snapshots table (Plan B Phase 1) ([#2889](https://github.com/HankHuang0516/EClaw/issues/2889)) ([a0d859c](https://github.com/HankHuang0516/EClaw/commit/a0d859c63f0220909dadb2b1952174861ccdce14))
* **community:** 1-click chat button on bot cards + utm tagging ([#2610](https://github.com/HankHuang0516/EClaw/issues/2610)) ([eee97b0](https://github.com/HankHuang0516/EClaw/commit/eee97b0e2e4e74945ec24f218a69a52800b97a66))
* **chat:** accept ?messageId= as deep-link alias ([#2838](https://github.com/HankHuang0516/EClaw/issues/2838)) ([1785a87](https://github.com/HankHuang0516/EClaw/commit/1785a87310426637fd10df83754fb9924c45207f))
* **chat:** add avatar size preference ([#2714](https://github.com/HankHuang0516/EClaw/issues/2714)) ([6fe164a](https://github.com/HankHuang0516/EClaw/commit/6fe164ad8b22fa576d2dd9ad37c0d9fc295b5a83))
* **version:** add build_hash and build_time to /api/version ([#2959](https://github.com/HankHuang0516/EClaw/issues/2959)) ([e1f17f0](https://github.com/HankHuang0516/EClaw/commit/e1f17f0c03f507b72cd03f7a7a16b046348634ee))
* **dashboard:** add Claude and Codex channel guides ([#2640](https://github.com/HankHuang0516/EClaw/issues/2640)) ([c64e4c4](https://github.com/HankHuang0516/EClaw/commit/c64e4c4afc78db58c5cd578f00486dd7b2fd3311))
* **dashboard:** add Claude Code channel guide card ([#2667](https://github.com/HankHuang0516/EClaw/issues/2667)) ([d70d75c](https://github.com/HankHuang0516/EClaw/commit/d70d75c0c8caa8a540358a9aab4556b8c1927a5c))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* **api:** add DELETE /api/entity/queue to clear messageQueue ([#616](https://github.com/HankHuang0516/EClaw/issues/616)) ([16ee3ff](https://github.com/HankHuang0516/EClaw/commit/16ee3ff1c6aa7f8ef187e54e5e7169f2e44f7395))
* **kanban:** add device-scoped card tags ([#2773](https://github.com/HankHuang0516/EClaw/issues/2773)) ([53a387e](https://github.com/HankHuang0516/EClaw/commit/53a387e67ba7bb4f6bed1c427000c4ae8666577a))
* **portal:** add entity selector to petdx-browser ([#2602](https://github.com/HankHuang0516/EClaw/issues/2602)) ([3fa067e](https://github.com/HankHuang0516/EClaw/commit/3fa067e00b38829b48a37cecd33ee81a9a1122d9))
* **kanban:** add explicit card links ([#2721](https://github.com/HankHuang0516/EClaw/issues/2721)) ([ef9f812](https://github.com/HankHuang0516/EClaw/commit/ef9f812a3fcf39efd07fd158ce90951bdd045ac7))
* **kanban:** add explicit done-card reopen flow ([#2801](https://github.com/HankHuang0516/EClaw/issues/2801)) ([5080aac](https://github.com/HankHuang0516/EClaw/commit/5080aacb75047c0deaa379ee708ec85465afd57c))
* **mindmap:** add GET /api/mindmap/graph force-graph projection ([#2680](https://github.com/HankHuang0516/EClaw/issues/2680)) ([a00b2e7](https://github.com/HankHuang0516/EClaw/commit/a00b2e775af2c4c98cd157f760ad87aeeee469f0)), closes [#2679](https://github.com/HankHuang0516/EClaw/issues/2679) [#2679](https://github.com/HankHuang0516/EClaw/issues/2679)
* **dashboard:** add Hermes channel promo card ([#2708](https://github.com/HankHuang0516/EClaw/issues/2708)) ([337aca1](https://github.com/HankHuang0516/EClaw/commit/337aca153d5a1cd7e888c065f00ae54db7872d91))
* **rental:** add listing soft pause ([#2781](https://github.com/HankHuang0516/EClaw/issues/2781)) ([6586b72](https://github.com/HankHuang0516/EClaw/commit/6586b72717ddb1637d91cd3242c8d2ff554f62b4))
* **portal:** add Nagoya 5D4N trip static cross-ref page ([#2689](https://github.com/HankHuang0516/EClaw/issues/2689)) ([2e0efb6](https://github.com/HankHuang0516/EClaw/commit/2e0efb6dcdaff52226cc8854a96747000b12bdff))
* **portal:** add Nagoya image atlas static page ([#2743](https://github.com/HankHuang0516/EClaw/issues/2743)) ([ac026e9](https://github.com/HankHuang0516/EClaw/commit/ac026e9fd2c92ac9437d01edddffc9adf972f6ba))
* **portal:** add Nagoya trip map links and image lightbox ([#2821](https://github.com/HankHuang0516/EClaw/issues/2821)) ([3e40955](https://github.com/HankHuang0516/EClaw/commit/3e40955650a05f45a6b9f7e39e73847705424a03))
* **portal/nagoya:** add parking shortcut buttons next to itinerary places ([#2826](https://github.com/HankHuang0516/EClaw/issues/2826)) ([63968c5](https://github.com/HankHuang0516/EClaw/commit/63968c554d046afc8d978de74e3aacbf7700500d))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **settings:** add rental roster management preview ([#2758](https://github.com/HankHuang0516/EClaw/issues/2758)) ([9706e59](https://github.com/HankHuang0516/EClaw/commit/9706e59ded140a90a6e02348124282bc69d89001))
* **rental:** add renter health chat indicator ([#2690](https://github.com/HankHuang0516/EClaw/issues/2690)) ([36cd2e9](https://github.com/HankHuang0516/EClaw/commit/36cd2e9802be4c7ebb03d3024617fa74aca48ffd))
* **ios:** add Tutorial & Intro entry in Settings ([#2800](https://github.com/HankHuang0516/EClaw/issues/2800)) ([ed83e51](https://github.com/HankHuang0516/EClaw/commit/ed83e51d043bf4cd5865f38dc95a91ed54820d6c))
* **landing:** add Watch Full Demo CTA below hero video ([#2799](https://github.com/HankHuang0516/EClaw/issues/2799)) ([66107c9](https://github.com/HankHuang0516/EClaw/commit/66107c954727551fd34d989a4674daaad9b63968))
* **footer:** add Watch Intro Video link in Info column ([#2798](https://github.com/HankHuang0516/EClaw/issues/2798)) ([d7c6d59](https://github.com/HankHuang0516/EClaw/commit/d7c6d596b69c6a5b257bf1f7a792a407ef9712ad))
* **i18n:** ar iter-2 — fill 623 missing keys against en source ([#2847](https://github.com/HankHuang0516/EClaw/issues/2847)) ([ee94a7a](https://github.com/HankHuang0516/EClaw/commit/ee94a7ae6812b5163efe4284ee4907ca32302f5c))
* **kanban:** backlog launch-gate flag to suppress L1/L2/L3 escalation ([#2855](https://github.com/HankHuang0516/EClaw/issues/2855)) ([cb8bf1b](https://github.com/HankHuang0516/EClaw/commit/cb8bf1bb6421f25214f65e129a8cadccc49cc266)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#4](https://github.com/HankHuang0516/EClaw/issues/4) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **companion:** bridge crafter-station/petdex gallery (1784 pets) ([#2601](https://github.com/HankHuang0516/EClaw/issues/2601)) ([2e245be](https://github.com/HankHuang0516/EClaw/commit/2e245bea6dd47ea7361b927d389188a3c23b6bb3))
* **promo:** chat avatar size feature landing page (self-hosted MP4) ([#2722](https://github.com/HankHuang0516/EClaw/issues/2722)) ([3852210](https://github.com/HankHuang0516/EClaw/commit/3852210d355704d018e3daca6b5f9512a011b210)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **kanban:** cron-spawn jitter + lane backpressure to prevent same-tick wedge ([#2791](https://github.com/HankHuang0516/EClaw/issues/2791)) ([9f414a7](https://github.com/HankHuang0516/EClaw/commit/9f414a731d6393672a0a4189c7b408c529ae5e12)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **portal:** dashboard usage widget — Claude/Codex 5h gauges + 24h chart (Plan B Phase 3) ([#2891](https://github.com/HankHuang0516/EClaw/issues/2891)) ([d18f373](https://github.com/HankHuang0516/EClaw/commit/d18f373857e4bd302437d6bda2a1e01871fbb1db))
* **portal:** dashboard usage widget v2 — Session/Weekly % bars + projects, no cost (Plan B Phase 3.1) ([#2893](https://github.com/HankHuang0516/EClaw/issues/2893)) ([4bc0dc7](https://github.com/HankHuang0516/EClaw/commit/4bc0dc744ed9d54dfd532ebac4b705c7f84ec0a6))
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **info:** embed 75s promo video on Quick Start tab ([#2795](https://github.com/HankHuang0516/EClaw/issues/2795)) ([86c3f70](https://github.com/HankHuang0516/EClaw/commit/86c3f709a95eebbee1241077b807880463f804b6))
* **promo:** embed daily eclaw video 2026-05-14 ([#2786](https://github.com/HankHuang0516/EClaw/issues/2786)) ([718a814](https://github.com/HankHuang0516/EClaw/commit/718a814ab16850bc2b33a1b303841e2c4378ecfa)), closes [#2782](https://github.com/HankHuang0516/EClaw/issues/2782) [#2693](https://github.com/HankHuang0516/EClaw/issues/2693)
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **info:** embed promo video at top of Quick Start tab ([#2797](https://github.com/HankHuang0516/EClaw/issues/2797)) ([047679f](https://github.com/HankHuang0516/EClaw/commit/047679fd57ab9949eaeacea414d5611e71afe041))
* **rental:** enforce strict rebind refunds ([#2703](https://github.com/HankHuang0516/EClaw/issues/2703)) ([a1859c5](https://github.com/HankHuang0516/EClaw/commit/a1859c50e6fb3991d7a8051491502d824a14a116))
* **portal:** group task chip actions ([#2825](https://github.com/HankHuang0516/EClaw/issues/2825)) ([5db5c59](https://github.com/HankHuang0516/EClaw/commit/5db5c59b32b8635f1412205faf0c2f9164d3d5d4))
* **hermes:** H2 health-check cron + 7d SLA + commander alerts (card_07891ac) ([#2922](https://github.com/HankHuang0516/EClaw/issues/2922)) ([82b4315](https://github.com/HankHuang0516/EClaw/commit/82b4315aea234493e3d1889dc53958c2f1d842e0)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **portal:** info-guide-rules + info-guide-soul slide pair ([#2793](https://github.com/HankHuang0516/EClaw/issues/2793)) ([1c8bddc](https://github.com/HankHuang0516/EClaw/commit/1c8bddc4c185054b2b60088498e3d45509117127)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **chat:** link card previews to kanban ([#2754](https://github.com/HankHuang0516/EClaw/issues/2754)) ([2261240](https://github.com/HankHuang0516/EClaw/commit/22612402c2e95efb07246629e81a849be41ee9c7))
* **mission:** link notes to kanban cards ([#2723](https://github.com/HankHuang0516/EClaw/issues/2723)) ([b36dc18](https://github.com/HankHuang0516/EClaw/commit/b36dc18f3a8facf12e0b6046351c222f1e99dc55))
* **usage-daemon:** macOS launchd daemon polls Claude/Codex usage → POST /api/usage/snapshot (Plan B Phase 2) ([#2890](https://github.com/HankHuang0516/EClaw/issues/2890)) ([fd225e1](https://github.com/HankHuang0516/EClaw/commit/fd225e12d9491037be1a340bd63b54b5f3308c7f))
* **android:** make wallpaper usage overlay draggable ([2ee9e15](https://github.com/HankHuang0516/EClaw/commit/2ee9e15e7fa6f6c209c65c0fd2fcd77cb9b11e83))
* **mindmap:** mission.html link to /portal/mindmap.html + deprecate /api/mission/mindmap ([#2685](https://github.com/HankHuang0516/EClaw/issues/2685)) ([11e297b](https://github.com/HankHuang0516/EClaw/commit/11e297bab1c9b56fcde3027d6500b7c58891bf18)), closes [#2680](https://github.com/HankHuang0516/EClaw/issues/2680) [#2684](https://github.com/HankHuang0516/EClaw/issues/2684)
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **portal:** nagoya trip interactive map (Leaflet + OSM, no API key) ([#2888](https://github.com/HankHuang0516/EClaw/issues/2888)) ([ecfdac0](https://github.com/HankHuang0516/EClaw/commit/ecfdac06348c12ee7c6872c6c28d5f82162e7aa9))
* **android:** native tab navigation bridge for portal pages ([#2832](https://github.com/HankHuang0516/EClaw/issues/2832)) ([7e02e6f](https://github.com/HankHuang0516/EClaw/commit/7e02e6f225014e64f08f55035d7b9e5727873343)), closes [#2824](https://github.com/HankHuang0516/EClaw/issues/2824) [#2743](https://github.com/HankHuang0516/EClaw/issues/2743) [#2821](https://github.com/HankHuang0516/EClaw/issues/2821) [#2826](https://github.com/HankHuang0516/EClaw/issues/2826) [#2797](https://github.com/HankHuang0516/EClaw/issues/2797) [#2798](https://github.com/HankHuang0516/EClaw/issues/2798) [#2799](https://github.com/HankHuang0516/EClaw/issues/2799) [#2800](https://github.com/HankHuang0516/EClaw/issues/2800) [#2801](https://github.com/HankHuang0516/EClaw/issues/2801) [#2816](https://github.com/HankHuang0516/EClaw/issues/2816) [#2796](https://github.com/HankHuang0516/EClaw/issues/2796) [#2825](https://github.com/HankHuang0516/EClaw/issues/2825) [#2812](https://github.com/HankHuang0516/EClaw/issues/2812) [#2813](https://github.com/HankHuang0516/EClaw/issues/2813) [#2814](https://github.com/HankHuang0516/EClaw/issues/2814) [#2815](https://github.com/HankHuang0516/EClaw/issues/2815) [#2811](https://github.com/HankHuang0516/EClaw/issues/2811) [#2807](https://github.com/HankHuang0516/EClaw/issues/2807) [#2808](https://github.com/HankHuang0516/EClaw/issues/2808) [#2818](https://github.com/HankHuang0516/EClaw/issues/2818) [#2819](https://github.com/HankHuang0516/EClaw/issues/2819) [#2824](https://github.com/HankHuang0516/EClaw/issues/2824)
* **channel:** outbound backpressure (30/min cap + 429 retry-after) ([#2911](https://github.com/HankHuang0516/EClaw/issues/2911)) ([36dc99c](https://github.com/HankHuang0516/EClaw/commit/36dc99ca78b0e1724a2aaefb5936669077b7a28f))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **ai-support:** pass per-request caller creds to claude-cli-proxy /chat (H3 Phase 2) ([#2947](https://github.com/HankHuang0516/EClaw/issues/2947)) ([1f5378b](https://github.com/HankHuang0516/EClaw/commit/1f5378b9e01d4e650005c338bf81f1ef43535624)), closes [#2937](https://github.com/HankHuang0516/EClaw/issues/2937)
* **settings:** per-entity nudge override UI (Phase 2) ([#2837](https://github.com/HankHuang0516/EClaw/issues/2837)) ([ea7662b](https://github.com/HankHuang0516/EClaw/commit/ea7662b0858882dae461e1387f711895924f9ab8)), closes [3/#4](https://github.com/HankHuang0516/EClaw/issues/4)
* **kanban:** per-entity nudge overrides (Phase 2 of card_e066cb6b) ([#2836](https://github.com/HankHuang0516/EClaw/issues/2836)) ([0425f80](https://github.com/HankHuang0516/EClaw/commit/0425f80bc1169c0d506b665659c8676695c45553))
* **avatar:** petdx render on card-holder my-cards (Phase 1b) ([#2621](https://github.com/HankHuang0516/EClaw/issues/2621)) ([f78ba8b](https://github.com/HankHuang0516/EClaw/commit/f78ba8b18acc426936ab6d8a82ca7541effea00d))
* **avatar:** petdx render on dashboard entity grid / org chart / bindings (Phase 1b) ([#2622](https://github.com/HankHuang0516/EClaw/issues/2622)) ([f417749](https://github.com/HankHuang0516/EClaw/commit/f41774914451048e8cd76e9ae30416a0642e173b)), closes [#2620](https://github.com/HankHuang0516/EClaw/issues/2620) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621)
* **avatar:** petdx render on kanban auto-assign / pulse / comment avatars (Phase 1b) ([#2624](https://github.com/HankHuang0516/EClaw/issues/2624)) ([6bff5f8](https://github.com/HankHuang0516/EClaw/commit/6bff5f80440d0bd91a6b1721cde9478d685c4d46))
* **avatar:** petdx render on mission skill/rule/soul entity dialogs (Phase 1b) ([#2623](https://github.com/HankHuang0516/EClaw/issues/2623)) ([129327b](https://github.com/HankHuang0516/EClaw/commit/129327bc7b91056659f1ab7e8d5e3f5260d951fb))
* **mindmap:** portal/mindmap.html force-graph prototype ([#129](https://github.com/HankHuang0516/EClaw/issues/129)) ([#2681](https://github.com/HankHuang0516/EClaw/issues/2681)) ([0f15e69](https://github.com/HankHuang0516/EClaw/commit/0f15e6930f0697c37fa08f3219edb8f9e499837f)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **channel:** record delivery receipts ([#2913](https://github.com/HankHuang0516/EClaw/issues/2913)) ([90c671b](https://github.com/HankHuang0516/EClaw/commit/90c671bd1970ab51584b90e2b634484ec10cc7ae))
* **portal:** redo nagoya trip page in professional tour-guide style ([#2691](https://github.com/HankHuang0516/EClaw/issues/2691)) ([b2378c0](https://github.com/HankHuang0516/EClaw/commit/b2378c06ee20fa9cccfdceceb1a4c9e0b3072f59))
* **i18n:** remove ms+hi orphan keys from i18n.js ([#2849](https://github.com/HankHuang0516/EClaw/issues/2849)) ([320176c](https://github.com/HankHuang0516/EClaw/commit/320176c06a3cfd8631e2a82ad02a6bd6a9af0389))
* **avatar:** render selected petdx companion in chat avatars ([#2620](https://github.com/HankHuang0516/EClaw/issues/2620)) ([0bdd046](https://github.com/HankHuang0516/EClaw/commit/0bdd046fe1b1c428e32edda366ff112c08927f4c))
* **home:** replace native home with WebView hosting dashboard.html ([#2634](https://github.com/HankHuang0516/EClaw/issues/2634)) ([e69ea81](https://github.com/HankHuang0516/EClaw/commit/e69ea8160c239b083a83d6dc83a4f1c3f901c863))
* **app:** route chat mission jumps through native tabs ([#2824](https://github.com/HankHuang0516/EClaw/issues/2824)) ([deb07b6](https://github.com/HankHuang0516/EClaw/commit/deb07b69a9ecca632fe27278de537f1d85234e94))
* **portal:** scaffold /portal/bot/:id/about backstory page (IP P1) ([#2938](https://github.com/HankHuang0516/EClaw/issues/2938)) ([96d6ca5](https://github.com/HankHuang0516/EClaw/commit/96d6ca506d611e2f9be03d50f76983457277f209))
* **proxy:** scope private repo git auth ([#2926](https://github.com/HankHuang0516/EClaw/issues/2926)) ([246f7ff](https://github.com/HankHuang0516/EClaw/commit/246f7ff1dedaf7bece9e3cb9eb24d0ab32ebb393))
* **android:** show usage on live wallpaper ([3f5698f](https://github.com/HankHuang0516/EClaw/commit/3f5698f5ecdae47129c2e4cf4a4296c6a3ab6659))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **chat:** support message deep links ([#2719](https://github.com/HankHuang0516/EClaw/issues/2719)) ([2dc0f1e](https://github.com/HankHuang0516/EClaw/commit/2dc0f1eeb259e1a0848db4a03186b989372cd91c))
* **mission:** support note deep links ([#2717](https://github.com/HankHuang0516/EClaw/issues/2717)) ([2efd3a5](https://github.com/HankHuang0516/EClaw/commit/2efd3a5e741217a07c0b0ac54a0ddd010e0ebe23))
* **share-chat:** twitter card + per-bot og:image/twitter:* in SSR ([#2609](https://github.com/HankHuang0516/EClaw/issues/2609)) ([6cdc853](https://github.com/HankHuang0516/EClaw/commit/6cdc853dc884cdb95bd47214942768981f218ae0))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))
* **settings:** wire petdx avatar into channel-account chips ([#2626](https://github.com/HankHuang0516/EClaw/issues/2626)) ([88aec77](https://github.com/HankHuang0516/EClaw/commit/88aec772628c240e97b336bb5820892ad632d1ae))
* **files:** wire petdx avatar into entity filter & per-file badges ([#2627](https://github.com/HankHuang0516/EClaw/issues/2627)) ([5b3e5cc](https://github.com/HankHuang0516/EClaw/commit/5b3e5cc542d9da69bb4e92500fd03a542ea33f00))
* **mindmap:** wrap hardcoded zh-TW UI strings with i18n t() ([#2607](https://github.com/HankHuang0516/EClaw/issues/2607)) ([166af87](https://github.com/HankHuang0516/EClaw/commit/166af8772b2121a24aaf34a83b3de970e9b3b571)), closes [#2606](https://github.com/HankHuang0516/EClaw/issues/2606)
* **i18n:** zh-TW backfill 8 keys (soft-pause + chat + invite + wallet) ([#2815](https://github.com/HankHuang0516/EClaw/issues/2815)) ([a2dd574](https://github.com/HankHuang0516/EClaw/commit/a2dd5743ce8d43a4b6ace9a2fd4b52568180d6c5))


### Performance Improvements

* **mindmap:** force-graph hardening for 1000/2000-node graphs ([#2684](https://github.com/HankHuang0516/EClaw/issues/2684)) ([da8b1c8](https://github.com/HankHuang0516/EClaw/commit/da8b1c8f947ab8bc8fa455c1962a91146623a1fc))


### Reverts

* Revert "feat(telegram): long-poll adapter PoC (card_406e612942ff062a06fc47be) ([#2238](https://github.com/HankHuang0516/EClaw/issues/2238))" ([#2239](https://github.com/HankHuang0516/EClaw/issues/2239)) ([eb7aa92](https://github.com/HankHuang0516/EClaw/commit/eb7aa92cce454b4a1a22654a2d133cdebe78c2bd))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-26)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **channel:** ack healthchecks before agent dispatch ([f463a5a](https://github.com/HankHuang0516/EClaw/commit/f463a5ad2971568fc6612734a783cd280076476c))
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **notifications:** add kanban_done + kanban_done_auto toggles to Android Settings ([#2636](https://github.com/HankHuang0516/EClaw/issues/2636)) ([a710909](https://github.com/HankHuang0516/EClaw/commit/a7109095e3393b8564e7ef1b23d382a4fbb944b8))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **api:** align /api/platform-stats skill-doc with device-auth contract (card_49b8190) ([#2916](https://github.com/HankHuang0516/EClaw/issues/2916)) ([ee55b2f](https://github.com/HankHuang0516/EClaw/commit/ee55b2fdbfbcd4bead5501d16ee66339056c32d7))
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **i18n:** ar block — fix 27 broken entries (CJK leaks + truncated HTML) ([#2851](https://github.com/HankHuang0516/EClaw/issues/2851)) ([5b19175](https://github.com/HankHuang0516/EClaw/commit/5b19175d712d00d16fcec00b749035c4beae7a5c))
* **chat:** atomic-load target bar (await contacts before first render) ([#2831](https://github.com/HankHuang0516/EClaw/issues/2831)) ([5f529e6](https://github.com/HankHuang0516/EClaw/commit/5f529e6b772eacc38ba1de69b44258a05f0d816a)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2](https://github.com/HankHuang0516/EClaw/issues/2)
* **channel:** await binding persistence ([712516d](https://github.com/HankHuang0516/EClaw/commit/712516decafb745035bd1434a28cc1973d433e19))
* **rental:** bump handshake timeout to 60s + timeout-aware discovery fallback ([#2863](https://github.com/HankHuang0516/EClaw/issues/2863)) ([fd4322f](https://github.com/HankHuang0516/EClaw/commit/fd4322f8890f3c2dfca3acdae6a4b95f19c381f9)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **chat:** carry kanban message deep-links ([#2946](https://github.com/HankHuang0516/EClaw/issues/2946)) ([971e2d2](https://github.com/HankHuang0516/EClaw/commit/971e2d27aeb212660901c8707cf418b7b1411286))
* **i18n:** clear batch 1 residual missing keys ([#2790](https://github.com/HankHuang0516/EClaw/issues/2790)) ([211030e](https://github.com/HankHuang0516/EClaw/commit/211030e0b0b6a865c11f0c4ed60dc4e356d43b7a))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **kanban:** comment input no longer overlaps last comment in card detail (PR [#2678](https://github.com/HankHuang0516/EClaw/issues/2678)) ([fba91fc](https://github.com/HankHuang0516/EClaw/commit/fba91fca15402b453a0db5ee857c0b16e6087055))
* **chat:** compact 20px avatar in target bar (App WebView only shows [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2](https://github.com/HankHuang0516/EClaw/issues/2)) ([#2830](https://github.com/HankHuang0516/EClaw/issues/2830)) ([42c7543](https://github.com/HankHuang0516/EClaw/commit/42c7543b4a78a7abf3f5f7535eb9bc6142cd0fe2)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **portal:** complete 401 redirect sweep + mobile UIUX truncation ([#2842](https://github.com/HankHuang0516/EClaw/issues/2842)) ([f9799ba](https://github.com/HankHuang0516/EClaw/commit/f9799ba42498b109f0a8a70e80836aa6da51e216)), closes [#2833](https://github.com/HankHuang0516/EClaw/issues/2833) [#2845](https://github.com/HankHuang0516/EClaw/issues/2845) [#2844](https://github.com/HankHuang0516/EClaw/issues/2844) [#2843](https://github.com/HankHuang0516/EClaw/issues/2843)
* **uiux:** continue qa mobile readability sweep ([#2854](https://github.com/HankHuang0516/EClaw/issues/2854)) ([57606ff](https://github.com/HankHuang0516/EClaw/commit/57606ffe3e543b07a026aacc53c4b470c9a7825b))
* **i18n:** cover dynamic portal wrapper keys ([#2807](https://github.com/HankHuang0516/EClaw/issues/2807)) ([4c711cc](https://github.com/HankHuang0516/EClaw/commit/4c711cc4009300ffe4e8933a98ee01cd0fdd6aeb))
* **i18n:** dedup 20 dash_channel_card_* keys in es block ([#2876](https://github.com/HankHuang0516/EClaw/issues/2876)) ([807284c](https://github.com/HankHuang0516/EClaw/commit/807284ce363ef119ccdb0ae40e5ce99d3f0a27e0))
* **i18n:** dedupe backend locale keys via AST ([#2920](https://github.com/HankHuang0516/EClaw/issues/2920)) ([40ef114](https://github.com/HankHuang0516/EClaw/commit/40ef11414c8b836fe1ed93ec06c839df3a1bf7b9))
* **i18n:** dedupe zh locale keys ([#2919](https://github.com/HankHuang0516/EClaw/issues/2919)) ([afd2cca](https://github.com/HankHuang0516/EClaw/commit/afd2cca8086c2f2df0d04c9c5f8c58733652875e))
* **test:** delegate root test and remove invalid jest option ([#2292](https://github.com/HankHuang0516/EClaw/issues/2292)) ([65bf2f8](https://github.com/HankHuang0516/EClaw/commit/65bf2f83d26d925097cd380ab73b04ab2db49842))
* **kanban:** dep-aware nudge gating + roadmap dependency backfill ([#2904](https://github.com/HankHuang0516/EClaw/issues/2904)) ([2b76ac9](https://github.com/HankHuang0516/EClaw/commit/2b76ac9d3b7e4169b7bc3c6f6b0b0903b63cd9f7)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **rental:** don't pollute entity.message on push gateway timeout ([#2860](https://github.com/HankHuang0516/EClaw/issues/2860)) ([592ba44](https://github.com/HankHuang0516/EClaw/commit/592ba44f57536ee00011b6cbddaa6b129a7cbae9))
* **petdx:** drop dark-grey loading placeholder + preload sprite WEBP ([#2628](https://github.com/HankHuang0516/EClaw/issues/2628)) ([59cef38](https://github.com/HankHuang0516/EClaw/commit/59cef387bd69ca99d7d15c86a1364856d3849ad8)), closes [#1a1a1a](https://github.com/HankHuang0516/EClaw/issues/1a1a1a)
* **gateway-ws:** drop Origin header on server-to-server WS upgrade ([#2869](https://github.com/HankHuang0516/EClaw/issues/2869)) ([716dcf9](https://github.com/HankHuang0516/EClaw/commit/716dcf9d0834b17522bb9d894bad84bc142d1a19))
* **setup-scripts:** drop Origin header on server-to-server WS upgrade ([#2875](https://github.com/HankHuang0516/EClaw/issues/2875)) ([9d893b8](https://github.com/HankHuang0516/EClaw/commit/9d893b8e5eea4db275e450bf423903c156cd3e4b)), closes [#2869](https://github.com/HankHuang0516/EClaw/issues/2869)
* **security:** escape innerHTML in chat modal error messages ([#2819](https://github.com/HankHuang0516/EClaw/issues/2819)) ([dce07ad](https://github.com/HankHuang0516/EClaw/commit/dce07adde64795916dba977ae23e46f3371ce7ed)), closes [#2809](https://github.com/HankHuang0516/EClaw/issues/2809) [#2810](https://github.com/HankHuang0516/EClaw/issues/2810) [#2809](https://github.com/HankHuang0516/EClaw/issues/2809) [#2810](https://github.com/HankHuang0516/EClaw/issues/2810)
* **proxy:** export repo auth to CLI child ([#2928](https://github.com/HankHuang0516/EClaw/issues/2928)) ([336a8ca](https://github.com/HankHuang0516/EClaw/commit/336a8caff4e3663287bd2948cf9fe6e04125cbc8))
* **entities:** expose botSecret to owner so wallpaper service can poll companions ([#2615](https://github.com/HankHuang0516/EClaw/issues/2615)) ([04470fc](https://github.com/HankHuang0516/EClaw/commit/04470fce8f8c3fce2b1ba8b243e776606f107502))
* **rental:** expose owner_public_code in marketplace so plaza CTA can route ([#2616](https://github.com/HankHuang0516/EClaw/issues/2616)) ([4d1372f](https://github.com/HankHuang0516/EClaw/commit/4d1372f717d93cab65543e87c852e74e9fb67071)), closes [#2610](https://github.com/HankHuang0516/EClaw/issues/2610)
* **mindmap:** fallback to device scope when entityId is null ([#2728](https://github.com/HankHuang0516/EClaw/issues/2728)) ([7572312](https://github.com/HankHuang0516/EClaw/commit/7572312433d3d75fc245eda48a28919ce14bd927))
* **i18n:** fill 11 missing zh keys post-[#2920](https://github.com/HankHuang0516/EClaw/issues/2920)/[#2921](https://github.com/HankHuang0516/EClaw/issues/2921) (card_de6970) ([#2924](https://github.com/HankHuang0516/EClaw/issues/2924)) ([17c4899](https://github.com/HankHuang0516/EClaw/commit/17c48996489b1444d6ed589027acfa7986178fe1)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** fill backend runtime locale gaps ([#2921](https://github.com/HankHuang0516/EClaw/issues/2921)) ([00d96ff](https://github.com/HankHuang0516/EClaw/commit/00d96ff261b8134b49292623e1f786fd544144cc))
* **i18n:** fill Spanish drift keys ([#2751](https://github.com/HankHuang0516/EClaw/issues/2751)) ([0ad0ee5](https://github.com/HankHuang0516/EClaw/commit/0ad0ee55f7fac3e6ac46d891539950dab4d553cc))
* **portal:** fit embedded org chart to mobile viewport ([#2674](https://github.com/HankHuang0516/EClaw/issues/2674)) ([1c4e1b4](https://github.com/HankHuang0516/EClaw/commit/1c4e1b413ea7027b4cd4b8ecda981b0d0e12e66b))
* **i18n:** fix 6 trailing-comma syntax errors in 10-locale batch ([#2771](https://github.com/HankHuang0516/EClaw/issues/2771)) ([b27c6ca](https://github.com/HankHuang0516/EClaw/commit/b27c6ca204bf813e406c54ce3a2532a5f1f031b3))
* **kanban:** GET card returns latest 50 comments + comments endpoint exposes total ([#2816](https://github.com/HankHuang0516/EClaw/issues/2816)) ([c4d83f7](https://github.com/HankHuang0516/EClaw/commit/c4d83f777a1cd26aea0936e4316aa35c52822eef))
* **sharechat:** guest verify-email modal + disabled Send for unverified ([#2865](https://github.com/HankHuang0516/EClaw/issues/2865)) ([cb3b061](https://github.com/HankHuang0516/EClaw/commit/cb3b0614e0f6160417d907753e66eceb2d666802))
* **portal:** H4 showcase i18n data-attrs + raw key leak ([#2935](https://github.com/HankHuang0516/EClaw/issues/2935)) ([80d8587](https://github.com/HankHuang0516/EClaw/commit/80d8587c00c03f72fdb9756b1093ee8e1e3d0842)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **uiux:** harden chat previews and roster preview ([#2769](https://github.com/HankHuang0516/EClaw/issues/2769)) ([466d4d3](https://github.com/HankHuang0516/EClaw/commit/466d4d3ef81c628d3f58db64323946053d7bf61c))
* **mention-parser:** ignore @-mentions inside markdown code spans ([#2645](https://github.com/HankHuang0516/EClaw/issues/2645)) ([8da19d4](https://github.com/HankHuang0516/EClaw/commit/8da19d4a79ceb4152bf2144ee0847c61ce3e1def)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **kanban:** lazy-load dependency chips via IntersectionObserver ([#2632](https://github.com/HankHuang0516/EClaw/issues/2632)) ([20586b4](https://github.com/HankHuang0516/EClaw/commit/20586b43357335f9eb6a190c02d58c8e36b58aba)), closes [#2631](https://github.com/HankHuang0516/EClaw/issues/2631)
* **i18n:** localize FCM NotificationChannel labels (card_ec8d3a22) ([#2918](https://github.com/HankHuang0516/EClaw/issues/2918)) ([591cd20](https://github.com/HankHuang0516/EClaw/commit/591cd206704693650a53d19d94c4cc75daf84ffd))
* **kanban:** make card sorting deterministic ([#2756](https://github.com/HankHuang0516/EClaw/issues/2756)) ([48e2117](https://github.com/HankHuang0516/EClaw/commit/48e2117b64e37f05dc635e0a3b67bfd43cbe48f5))
* **portal/nagoya-trip:** map-link invisible on dark hero/day-banner ([#2897](https://github.com/HankHuang0516/EClaw/issues/2897)) ([cc33df6](https://github.com/HankHuang0516/EClaw/commit/cc33df686673455c20beaee60871412a5d486e66)), closes [#1f4030](https://github.com/HankHuang0516/EClaw/issues/1f4030) [#8b8579](https://github.com/HankHuang0516/EClaw/issues/8b8579) [#6e6859](https://github.com/HankHuang0516/EClaw/issues/6e6859) [#7a5614](https://github.com/HankHuang0516/EClaw/issues/7a5614)
* **portal:** mobile delete-modal clipped right edge (P0) ([#2951](https://github.com/HankHuang0516/EClaw/issues/2951)) ([00418ca](https://github.com/HankHuang0516/EClaw/commit/00418ca812d5b757e35d12a9810b124f30491bbb))
* **org-chart:** notify affected bots on hierarchy change ([#2812](https://github.com/HankHuang0516/EClaw/issues/2812)) ([55675fd](https://github.com/HankHuang0516/EClaw/commit/55675fdf4487494d729a29524b32bd81b756a00c)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** notify reviewer on manual /move → review ([#2753](https://github.com/HankHuang0516/EClaw/issues/2753)) ([6cbbb4e](https://github.com/HankHuang0516/EClaw/commit/6cbbb4ee8c0d4d8ad54df2e9b5faaa3699bd530f))
* **wallpaper:** off-load spritesheet fetch to IO so per-petdx sprites actually render ([#2618](https://github.com/HankHuang0516/EClaw/issues/2618)) ([61b832c](https://github.com/HankHuang0516/EClaw/commit/61b832c9fa8a1d0caab810ccc942d85c63349267)), closes [#2615](https://github.com/HankHuang0516/EClaw/issues/2615) [#2577](https://github.com/HankHuang0516/EClaw/issues/2577)
* **security:** patch P0 sanitize-html XSS + P1 protobufjs + exam.html XSS ([#2829](https://github.com/HankHuang0516/EClaw/issues/2829)) ([c71b871](https://github.com/HankHuang0516/EClaw/commit/c71b871a045887375dd0d26d1a3280a0891a89ad))
* **security:** patch ws uninitialized memory disclosure (GHSA-58qx-3vcg-4xpx) ([#2872](https://github.com/HankHuang0516/EClaw/issues/2872)) ([2523d15](https://github.com/HankHuang0516/EClaw/commit/2523d154bbe501a7cc086340f7a07ece3abfa69b))
* **portal:** petdx-browser cookie-session fallback for device-login ([#2757](https://github.com/HankHuang0516/EClaw/issues/2757)) ([ca275f4](https://github.com/HankHuang0516/EClaw/commit/ca275f4519835da0c7ad71c588908a18f6f138d8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **api:** platform-stats 500 + entity/lookup publicCode alias ([#2809](https://github.com/HankHuang0516/EClaw/issues/2809), [#2810](https://github.com/HankHuang0516/EClaw/issues/2810)) ([#2818](https://github.com/HankHuang0516/EClaw/issues/2818)) ([f99fd17](https://github.com/HankHuang0516/EClaw/commit/f99fd17b2b1c32d88daa2510ff66d714c1a53edc))
* **i18n:** positional format specifiers for feedback_result_logs (7 locales) ([#2597](https://github.com/HankHuang0516/EClaw/issues/2597)) ([21aedc7](https://github.com/HankHuang0516/EClaw/commit/21aedc7eebc7a2839e340136f38dfdfd4dabb9dc))
* **avatar-petdx:** preserve descriptor across transient API failures (flicker) ([#2625](https://github.com/HankHuang0516/EClaw/issues/2625)) ([7b1c606](https://github.com/HankHuang0516/EClaw/commit/7b1c606514f7698d72ec95cf6c556e4043966186))
* **chat:** preserve recipient selection across rental-health refresh (P0 #card_eb1cba76) ([#2906](https://github.com/HankHuang0516/EClaw/issues/2906)) ([9cc0301](https://github.com/HankHuang0516/EClaw/commit/9cc0301cc26a0f49af4b7f53486f5c1a7cdd7902)), closes [#card_eb1cba76](https://github.com/HankHuang0516/EClaw/issues/card_eb1cba76) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **chat:** preserve scroll anchor while reading history ([#2693](https://github.com/HankHuang0516/EClaw/issues/2693)) ([945fdb7](https://github.com/HankHuang0516/EClaw/commit/945fdb7192b791b31882e1e75568dd8b11e4686f))
* **qa:** protect contact reads and refresh UX audits ([#2955](https://github.com/HankHuang0516/EClaw/issues/2955)) ([24dc2ec](https://github.com/HankHuang0516/EClaw/commit/24dc2ec5e2eb0b099d4231e440fd29e65ef83dc8))
* **promo:** pull video embed from /promo-chat-avatar.html ([#2724](https://github.com/HankHuang0516/EClaw/issues/2724)) ([2afabc8](https://github.com/HankHuang0516/EClaw/commit/2afabc8c5ff8b25218a7cb857e8adfa572c8e9d5))
* **dashboard:** read live.rate_limits.{five_hour,seven_day}.used_percentage ([#2895](https://github.com/HankHuang0516/EClaw/issues/2895)) ([8223303](https://github.com/HankHuang0516/EClaw/commit/822330312bccb1c76675ad2c3b26e78d10dd1298))
* **kanban:** realign stale recurring schedules ([#2785](https://github.com/HankHuang0516/EClaw/issues/2785)) ([ab8ee25](https://github.com/HankHuang0516/EClaw/commit/ab8ee250a9b37f3d3e838bb01d8866c8d2b78231))
* **i18n:** reapply de6970 locale gap translations ([#2925](https://github.com/HankHuang0516/EClaw/issues/2925)) ([d994dc1](https://github.com/HankHuang0516/EClaw/commit/d994dc1d240fef72326db2599262375ccbf29175))
* **portal:** reduce QA-discovered request fanout ([#2656](https://github.com/HankHuang0516/EClaw/issues/2656)) ([1e46d6b](https://github.com/HankHuang0516/EClaw/commit/1e46d6bab61e58c65b452b6503d953f8dddeee75))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **portal:** remove org chart fit scale floor ([#2676](https://github.com/HankHuang0516/EClaw/issues/2676)) ([0f01606](https://github.com/HankHuang0516/EClaw/commit/0f016068b963bb5f800a02f28817c7174979d913))
* **rental:** remove phantom 'webhook test push' step from BIND_COMPLETE ([#2864](https://github.com/HankHuang0516/EClaw/issues/2864)) ([47f4a3e](https://github.com/HankHuang0516/EClaw/commit/47f4a3edf76aa95ebd06d8713cd44fda6eef9b5d))
* **i18n:** rename mm_empty_title → mm_state_empty_title in mindmap.html ([#2683](https://github.com/HankHuang0516/EClaw/issues/2683)) ([c79c109](https://github.com/HankHuang0516/EClaw/commit/c79c109bea23142e8a6d9ace976d105af1280ec9))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **chat:** render mention avatars with companion renderer ([#2633](https://github.com/HankHuang0516/EClaw/issues/2633)) ([03e205f](https://github.com/HankHuang0516/EClaw/commit/03e205f663ecd2c2f443d4009dd5af0093f0bbbb))
* **kanban:** reserve mobile comments panel height ([#2782](https://github.com/HankHuang0516/EClaw/issues/2782)) ([ce8662d](https://github.com/HankHuang0516/EClaw/commit/ce8662d362422fdd25037f1deb61dbed9425e2f9))
* **channel:** restore handshake fallback to discovered sessions ([#2915](https://github.com/HankHuang0516/EClaw/issues/2915)) ([#2917](https://github.com/HankHuang0516/EClaw/issues/2917)) ([9d7d3a2](https://github.com/HankHuang0516/EClaw/commit/9d7d3a25654289998314dd5ca152cefdb8a4d64e)), closes [#2912](https://github.com/HankHuang0516/EClaw/issues/2912)
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* scheduled audit 2026-05-13 — 6 bugs, XSS, i18n ([#2668](https://github.com/HankHuang0516/EClaw/issues/2668)) ([21dd513](https://github.com/HankHuang0516/EClaw/commit/21dd513b4464738de29164265437435ba6cc4817)), closes [#2605](https://github.com/HankHuang0516/EClaw/issues/2605) [#2608](https://github.com/HankHuang0516/EClaw/issues/2608) [#2600](https://github.com/HankHuang0516/EClaw/issues/2600) [#2599](https://github.com/HankHuang0516/EClaw/issues/2599) [#2598](https://github.com/HankHuang0516/EClaw/issues/2598)
* **channel:** scope official bot sessions ([#2912](https://github.com/HankHuang0516/EClaw/issues/2912)) ([5c56b62](https://github.com/HankHuang0516/EClaw/commit/5c56b62c13b739b76f39e168a26bd4e5de2644fb))
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **dashboard:** show Claude weekly bar reset countdown ([#2896](https://github.com/HankHuang0516/EClaw/issues/2896)) ([3b87845](https://github.com/HankHuang0516/EClaw/commit/3b87845d713e980fec69f6b8007549338a326713)), closes [#2895](https://github.com/HankHuang0516/EClaw/issues/2895)
* **chat:** smart-chip preview falls back to inline c.comments when /comments fails (PR [#2677](https://github.com/HankHuang0516/EClaw/issues/2677)) ([7f4dffd](https://github.com/HankHuang0516/EClaw/commit/7f4dffd2c83ea86f296b8fa0610f0e67c9f1af11))
* **kanban:** stabilize comment detail viewport ([#2796](https://github.com/HankHuang0516/EClaw/issues/2796)) ([0a10aad](https://github.com/HankHuang0516/EClaw/commit/0a10aadb5a5b12ff23454c16d5c88183b94ad7d7))
* **wallpaper:** stop Android live wallpaper flashing default lobster on companion change ([#2629](https://github.com/HankHuang0516/EClaw/issues/2629)) ([8b4f66f](https://github.com/HankHuang0516/EClaw/commit/8b4f66fcb335bf43128f924b761b6337c817095b)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **chat:** stop chat.html bouncing to dashboard via /api/rental/health-status 401 race ([#2833](https://github.com/HankHuang0516/EClaw/issues/2833)) ([c422406](https://github.com/HankHuang0516/EClaw/commit/c4224067cdcfe7f3e22ab95007c7563dac4196ac))
* **openclaw-channel:** support OpenClaw 2026.5.20 ([8045de6](https://github.com/HankHuang0516/EClaw/commit/8045de6bebecfc05f9bd57453b99c098ca35681b))
* **mentions:** support same-device CJK display-name tags ([#2874](https://github.com/HankHuang0516/EClaw/issues/2874)) ([b8f61be](https://github.com/HankHuang0516/EClaw/commit/b8f61be9a3962fef75dd32ea34e8900880dafaf9))
* **channel:** suppress operational A2A loop messages (rebase of [#2288](https://github.com/HankHuang0516/EClaw/issues/2288)) ([#2930](https://github.com/HankHuang0516/EClaw/issues/2930)) ([7ceabc9](https://github.com/HankHuang0516/EClaw/commit/7ceabc915df22123cb46ae1500e2eb2e279250af))
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **dashboard:** use sessions[].project for widget Projects list (was .project_id) ([#2894](https://github.com/HankHuang0516/EClaw/issues/2894)) ([0fd1334](https://github.com/HankHuang0516/EClaw/commit/0fd1334897d4a603cc6eb74f34b48606547e09cf))
* **app:** WebView pages honor app-selected locale via ?lang= URL param ([#2672](https://github.com/HankHuang0516/EClaw/issues/2672)) ([8ed8757](https://github.com/HankHuang0516/EClaw/commit/8ed8757aec5bf214e837cc0d81bf2b23f1993a91)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **share-chat:** wire rich CTA actions to msgInput ([#2867](https://github.com/HankHuang0516/EClaw/issues/2867)) ([df23b11](https://github.com/HankHuang0516/EClaw/commit/df23b1147d34c59a644a145bbd87c18b96400acc))


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* **usage-api:** /api/usage/{snapshot,timeline} + usage_snapshots table (Plan B Phase 1) ([#2889](https://github.com/HankHuang0516/EClaw/issues/2889)) ([a0d859c](https://github.com/HankHuang0516/EClaw/commit/a0d859c63f0220909dadb2b1952174861ccdce14))
* **community:** 1-click chat button on bot cards + utm tagging ([#2610](https://github.com/HankHuang0516/EClaw/issues/2610)) ([eee97b0](https://github.com/HankHuang0516/EClaw/commit/eee97b0e2e4e74945ec24f218a69a52800b97a66))
* **chat:** accept ?messageId= as deep-link alias ([#2838](https://github.com/HankHuang0516/EClaw/issues/2838)) ([1785a87](https://github.com/HankHuang0516/EClaw/commit/1785a87310426637fd10df83754fb9924c45207f))
* **chat:** add avatar size preference ([#2714](https://github.com/HankHuang0516/EClaw/issues/2714)) ([6fe164a](https://github.com/HankHuang0516/EClaw/commit/6fe164ad8b22fa576d2dd9ad37c0d9fc295b5a83))
* **version:** add build_hash and build_time to /api/version ([#2959](https://github.com/HankHuang0516/EClaw/issues/2959)) ([e1f17f0](https://github.com/HankHuang0516/EClaw/commit/e1f17f0c03f507b72cd03f7a7a16b046348634ee))
* **dashboard:** add Claude and Codex channel guides ([#2640](https://github.com/HankHuang0516/EClaw/issues/2640)) ([c64e4c4](https://github.com/HankHuang0516/EClaw/commit/c64e4c4afc78db58c5cd578f00486dd7b2fd3311))
* **dashboard:** add Claude Code channel guide card ([#2667](https://github.com/HankHuang0516/EClaw/issues/2667)) ([d70d75c](https://github.com/HankHuang0516/EClaw/commit/d70d75c0c8caa8a540358a9aab4556b8c1927a5c))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* **api:** add DELETE /api/entity/queue to clear messageQueue ([#616](https://github.com/HankHuang0516/EClaw/issues/616)) ([16ee3ff](https://github.com/HankHuang0516/EClaw/commit/16ee3ff1c6aa7f8ef187e54e5e7169f2e44f7395))
* **kanban:** add device-scoped card tags ([#2773](https://github.com/HankHuang0516/EClaw/issues/2773)) ([53a387e](https://github.com/HankHuang0516/EClaw/commit/53a387e67ba7bb4f6bed1c427000c4ae8666577a))
* **portal:** add entity selector to petdx-browser ([#2602](https://github.com/HankHuang0516/EClaw/issues/2602)) ([3fa067e](https://github.com/HankHuang0516/EClaw/commit/3fa067e00b38829b48a37cecd33ee81a9a1122d9))
* **kanban:** add explicit card links ([#2721](https://github.com/HankHuang0516/EClaw/issues/2721)) ([ef9f812](https://github.com/HankHuang0516/EClaw/commit/ef9f812a3fcf39efd07fd158ce90951bdd045ac7))
* **kanban:** add explicit done-card reopen flow ([#2801](https://github.com/HankHuang0516/EClaw/issues/2801)) ([5080aac](https://github.com/HankHuang0516/EClaw/commit/5080aacb75047c0deaa379ee708ec85465afd57c))
* **mindmap:** add GET /api/mindmap/graph force-graph projection ([#2680](https://github.com/HankHuang0516/EClaw/issues/2680)) ([a00b2e7](https://github.com/HankHuang0516/EClaw/commit/a00b2e775af2c4c98cd157f760ad87aeeee469f0)), closes [#2679](https://github.com/HankHuang0516/EClaw/issues/2679) [#2679](https://github.com/HankHuang0516/EClaw/issues/2679)
* **dashboard:** add Hermes channel promo card ([#2708](https://github.com/HankHuang0516/EClaw/issues/2708)) ([337aca1](https://github.com/HankHuang0516/EClaw/commit/337aca153d5a1cd7e888c065f00ae54db7872d91))
* **rental:** add listing soft pause ([#2781](https://github.com/HankHuang0516/EClaw/issues/2781)) ([6586b72](https://github.com/HankHuang0516/EClaw/commit/6586b72717ddb1637d91cd3242c8d2ff554f62b4))
* **portal:** add Nagoya 5D4N trip static cross-ref page ([#2689](https://github.com/HankHuang0516/EClaw/issues/2689)) ([2e0efb6](https://github.com/HankHuang0516/EClaw/commit/2e0efb6dcdaff52226cc8854a96747000b12bdff))
* **portal:** add Nagoya image atlas static page ([#2743](https://github.com/HankHuang0516/EClaw/issues/2743)) ([ac026e9](https://github.com/HankHuang0516/EClaw/commit/ac026e9fd2c92ac9437d01edddffc9adf972f6ba))
* **portal:** add Nagoya trip map links and image lightbox ([#2821](https://github.com/HankHuang0516/EClaw/issues/2821)) ([3e40955](https://github.com/HankHuang0516/EClaw/commit/3e40955650a05f45a6b9f7e39e73847705424a03))
* **portal/nagoya:** add parking shortcut buttons next to itinerary places ([#2826](https://github.com/HankHuang0516/EClaw/issues/2826)) ([63968c5](https://github.com/HankHuang0516/EClaw/commit/63968c554d046afc8d978de74e3aacbf7700500d))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **settings:** add rental roster management preview ([#2758](https://github.com/HankHuang0516/EClaw/issues/2758)) ([9706e59](https://github.com/HankHuang0516/EClaw/commit/9706e59ded140a90a6e02348124282bc69d89001))
* **rental:** add renter health chat indicator ([#2690](https://github.com/HankHuang0516/EClaw/issues/2690)) ([36cd2e9](https://github.com/HankHuang0516/EClaw/commit/36cd2e9802be4c7ebb03d3024617fa74aca48ffd))
* **ios:** add Tutorial & Intro entry in Settings ([#2800](https://github.com/HankHuang0516/EClaw/issues/2800)) ([ed83e51](https://github.com/HankHuang0516/EClaw/commit/ed83e51d043bf4cd5865f38dc95a91ed54820d6c))
* **landing:** add Watch Full Demo CTA below hero video ([#2799](https://github.com/HankHuang0516/EClaw/issues/2799)) ([66107c9](https://github.com/HankHuang0516/EClaw/commit/66107c954727551fd34d989a4674daaad9b63968))
* **footer:** add Watch Intro Video link in Info column ([#2798](https://github.com/HankHuang0516/EClaw/issues/2798)) ([d7c6d59](https://github.com/HankHuang0516/EClaw/commit/d7c6d596b69c6a5b257bf1f7a792a407ef9712ad))
* **i18n:** ar iter-2 — fill 623 missing keys against en source ([#2847](https://github.com/HankHuang0516/EClaw/issues/2847)) ([ee94a7a](https://github.com/HankHuang0516/EClaw/commit/ee94a7ae6812b5163efe4284ee4907ca32302f5c))
* **kanban:** backlog launch-gate flag to suppress L1/L2/L3 escalation ([#2855](https://github.com/HankHuang0516/EClaw/issues/2855)) ([cb8bf1b](https://github.com/HankHuang0516/EClaw/commit/cb8bf1bb6421f25214f65e129a8cadccc49cc266)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#4](https://github.com/HankHuang0516/EClaw/issues/4) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **companion:** bridge crafter-station/petdex gallery (1784 pets) ([#2601](https://github.com/HankHuang0516/EClaw/issues/2601)) ([2e245be](https://github.com/HankHuang0516/EClaw/commit/2e245bea6dd47ea7361b927d389188a3c23b6bb3))
* **promo:** chat avatar size feature landing page (self-hosted MP4) ([#2722](https://github.com/HankHuang0516/EClaw/issues/2722)) ([3852210](https://github.com/HankHuang0516/EClaw/commit/3852210d355704d018e3daca6b5f9512a011b210)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **kanban:** cron-spawn jitter + lane backpressure to prevent same-tick wedge ([#2791](https://github.com/HankHuang0516/EClaw/issues/2791)) ([9f414a7](https://github.com/HankHuang0516/EClaw/commit/9f414a731d6393672a0a4189c7b408c529ae5e12)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **portal:** dashboard usage widget — Claude/Codex 5h gauges + 24h chart (Plan B Phase 3) ([#2891](https://github.com/HankHuang0516/EClaw/issues/2891)) ([d18f373](https://github.com/HankHuang0516/EClaw/commit/d18f373857e4bd302437d6bda2a1e01871fbb1db))
* **portal:** dashboard usage widget v2 — Session/Weekly % bars + projects, no cost (Plan B Phase 3.1) ([#2893](https://github.com/HankHuang0516/EClaw/issues/2893)) ([4bc0dc7](https://github.com/HankHuang0516/EClaw/commit/4bc0dc744ed9d54dfd532ebac4b705c7f84ec0a6))
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **info:** embed 75s promo video on Quick Start tab ([#2795](https://github.com/HankHuang0516/EClaw/issues/2795)) ([86c3f70](https://github.com/HankHuang0516/EClaw/commit/86c3f709a95eebbee1241077b807880463f804b6))
* **promo:** embed daily eclaw video 2026-05-14 ([#2786](https://github.com/HankHuang0516/EClaw/issues/2786)) ([718a814](https://github.com/HankHuang0516/EClaw/commit/718a814ab16850bc2b33a1b303841e2c4378ecfa)), closes [#2782](https://github.com/HankHuang0516/EClaw/issues/2782) [#2693](https://github.com/HankHuang0516/EClaw/issues/2693)
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **info:** embed promo video at top of Quick Start tab ([#2797](https://github.com/HankHuang0516/EClaw/issues/2797)) ([047679f](https://github.com/HankHuang0516/EClaw/commit/047679fd57ab9949eaeacea414d5611e71afe041))
* **rental:** enforce strict rebind refunds ([#2703](https://github.com/HankHuang0516/EClaw/issues/2703)) ([a1859c5](https://github.com/HankHuang0516/EClaw/commit/a1859c50e6fb3991d7a8051491502d824a14a116))
* **portal:** group task chip actions ([#2825](https://github.com/HankHuang0516/EClaw/issues/2825)) ([5db5c59](https://github.com/HankHuang0516/EClaw/commit/5db5c59b32b8635f1412205faf0c2f9164d3d5d4))
* **hermes:** H2 health-check cron + 7d SLA + commander alerts (card_07891ac) ([#2922](https://github.com/HankHuang0516/EClaw/issues/2922)) ([82b4315](https://github.com/HankHuang0516/EClaw/commit/82b4315aea234493e3d1889dc53958c2f1d842e0)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **portal:** info-guide-rules + info-guide-soul slide pair ([#2793](https://github.com/HankHuang0516/EClaw/issues/2793)) ([1c8bddc](https://github.com/HankHuang0516/EClaw/commit/1c8bddc4c185054b2b60088498e3d45509117127)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **chat:** link card previews to kanban ([#2754](https://github.com/HankHuang0516/EClaw/issues/2754)) ([2261240](https://github.com/HankHuang0516/EClaw/commit/22612402c2e95efb07246629e81a849be41ee9c7))
* **mission:** link notes to kanban cards ([#2723](https://github.com/HankHuang0516/EClaw/issues/2723)) ([b36dc18](https://github.com/HankHuang0516/EClaw/commit/b36dc18f3a8facf12e0b6046351c222f1e99dc55))
* **usage-daemon:** macOS launchd daemon polls Claude/Codex usage → POST /api/usage/snapshot (Plan B Phase 2) ([#2890](https://github.com/HankHuang0516/EClaw/issues/2890)) ([fd225e1](https://github.com/HankHuang0516/EClaw/commit/fd225e12d9491037be1a340bd63b54b5f3308c7f))
* **android:** make wallpaper usage overlay draggable ([2ee9e15](https://github.com/HankHuang0516/EClaw/commit/2ee9e15e7fa6f6c209c65c0fd2fcd77cb9b11e83))
* **mindmap:** mission.html link to /portal/mindmap.html + deprecate /api/mission/mindmap ([#2685](https://github.com/HankHuang0516/EClaw/issues/2685)) ([11e297b](https://github.com/HankHuang0516/EClaw/commit/11e297bab1c9b56fcde3027d6500b7c58891bf18)), closes [#2680](https://github.com/HankHuang0516/EClaw/issues/2680) [#2684](https://github.com/HankHuang0516/EClaw/issues/2684)
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **portal:** nagoya trip interactive map (Leaflet + OSM, no API key) ([#2888](https://github.com/HankHuang0516/EClaw/issues/2888)) ([ecfdac0](https://github.com/HankHuang0516/EClaw/commit/ecfdac06348c12ee7c6872c6c28d5f82162e7aa9))
* **android:** native tab navigation bridge for portal pages ([#2832](https://github.com/HankHuang0516/EClaw/issues/2832)) ([7e02e6f](https://github.com/HankHuang0516/EClaw/commit/7e02e6f225014e64f08f55035d7b9e5727873343)), closes [#2824](https://github.com/HankHuang0516/EClaw/issues/2824) [#2743](https://github.com/HankHuang0516/EClaw/issues/2743) [#2821](https://github.com/HankHuang0516/EClaw/issues/2821) [#2826](https://github.com/HankHuang0516/EClaw/issues/2826) [#2797](https://github.com/HankHuang0516/EClaw/issues/2797) [#2798](https://github.com/HankHuang0516/EClaw/issues/2798) [#2799](https://github.com/HankHuang0516/EClaw/issues/2799) [#2800](https://github.com/HankHuang0516/EClaw/issues/2800) [#2801](https://github.com/HankHuang0516/EClaw/issues/2801) [#2816](https://github.com/HankHuang0516/EClaw/issues/2816) [#2796](https://github.com/HankHuang0516/EClaw/issues/2796) [#2825](https://github.com/HankHuang0516/EClaw/issues/2825) [#2812](https://github.com/HankHuang0516/EClaw/issues/2812) [#2813](https://github.com/HankHuang0516/EClaw/issues/2813) [#2814](https://github.com/HankHuang0516/EClaw/issues/2814) [#2815](https://github.com/HankHuang0516/EClaw/issues/2815) [#2811](https://github.com/HankHuang0516/EClaw/issues/2811) [#2807](https://github.com/HankHuang0516/EClaw/issues/2807) [#2808](https://github.com/HankHuang0516/EClaw/issues/2808) [#2818](https://github.com/HankHuang0516/EClaw/issues/2818) [#2819](https://github.com/HankHuang0516/EClaw/issues/2819) [#2824](https://github.com/HankHuang0516/EClaw/issues/2824)
* **channel:** outbound backpressure (30/min cap + 429 retry-after) ([#2911](https://github.com/HankHuang0516/EClaw/issues/2911)) ([36dc99c](https://github.com/HankHuang0516/EClaw/commit/36dc99ca78b0e1724a2aaefb5936669077b7a28f))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **ai-support:** pass per-request caller creds to claude-cli-proxy /chat (H3 Phase 2) ([#2947](https://github.com/HankHuang0516/EClaw/issues/2947)) ([1f5378b](https://github.com/HankHuang0516/EClaw/commit/1f5378b9e01d4e650005c338bf81f1ef43535624)), closes [#2937](https://github.com/HankHuang0516/EClaw/issues/2937)
* **settings:** per-entity nudge override UI (Phase 2) ([#2837](https://github.com/HankHuang0516/EClaw/issues/2837)) ([ea7662b](https://github.com/HankHuang0516/EClaw/commit/ea7662b0858882dae461e1387f711895924f9ab8)), closes [3/#4](https://github.com/HankHuang0516/EClaw/issues/4)
* **kanban:** per-entity nudge overrides (Phase 2 of card_e066cb6b) ([#2836](https://github.com/HankHuang0516/EClaw/issues/2836)) ([0425f80](https://github.com/HankHuang0516/EClaw/commit/0425f80bc1169c0d506b665659c8676695c45553))
* **avatar:** petdx render on card-holder my-cards (Phase 1b) ([#2621](https://github.com/HankHuang0516/EClaw/issues/2621)) ([f78ba8b](https://github.com/HankHuang0516/EClaw/commit/f78ba8b18acc426936ab6d8a82ca7541effea00d))
* **avatar:** petdx render on dashboard entity grid / org chart / bindings (Phase 1b) ([#2622](https://github.com/HankHuang0516/EClaw/issues/2622)) ([f417749](https://github.com/HankHuang0516/EClaw/commit/f41774914451048e8cd76e9ae30416a0642e173b)), closes [#2620](https://github.com/HankHuang0516/EClaw/issues/2620) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621)
* **avatar:** petdx render on kanban auto-assign / pulse / comment avatars (Phase 1b) ([#2624](https://github.com/HankHuang0516/EClaw/issues/2624)) ([6bff5f8](https://github.com/HankHuang0516/EClaw/commit/6bff5f80440d0bd91a6b1721cde9478d685c4d46))
* **avatar:** petdx render on mission skill/rule/soul entity dialogs (Phase 1b) ([#2623](https://github.com/HankHuang0516/EClaw/issues/2623)) ([129327b](https://github.com/HankHuang0516/EClaw/commit/129327bc7b91056659f1ab7e8d5e3f5260d951fb))
* **mindmap:** portal/mindmap.html force-graph prototype ([#129](https://github.com/HankHuang0516/EClaw/issues/129)) ([#2681](https://github.com/HankHuang0516/EClaw/issues/2681)) ([0f15e69](https://github.com/HankHuang0516/EClaw/commit/0f15e6930f0697c37fa08f3219edb8f9e499837f)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **channel:** record delivery receipts ([#2913](https://github.com/HankHuang0516/EClaw/issues/2913)) ([90c671b](https://github.com/HankHuang0516/EClaw/commit/90c671bd1970ab51584b90e2b634484ec10cc7ae))
* **portal:** redo nagoya trip page in professional tour-guide style ([#2691](https://github.com/HankHuang0516/EClaw/issues/2691)) ([b2378c0](https://github.com/HankHuang0516/EClaw/commit/b2378c06ee20fa9cccfdceceb1a4c9e0b3072f59))
* **i18n:** remove ms+hi orphan keys from i18n.js ([#2849](https://github.com/HankHuang0516/EClaw/issues/2849)) ([320176c](https://github.com/HankHuang0516/EClaw/commit/320176c06a3cfd8631e2a82ad02a6bd6a9af0389))
* **avatar:** render selected petdx companion in chat avatars ([#2620](https://github.com/HankHuang0516/EClaw/issues/2620)) ([0bdd046](https://github.com/HankHuang0516/EClaw/commit/0bdd046fe1b1c428e32edda366ff112c08927f4c))
* **home:** replace native home with WebView hosting dashboard.html ([#2634](https://github.com/HankHuang0516/EClaw/issues/2634)) ([e69ea81](https://github.com/HankHuang0516/EClaw/commit/e69ea8160c239b083a83d6dc83a4f1c3f901c863))
* **app:** route chat mission jumps through native tabs ([#2824](https://github.com/HankHuang0516/EClaw/issues/2824)) ([deb07b6](https://github.com/HankHuang0516/EClaw/commit/deb07b69a9ecca632fe27278de537f1d85234e94))
* **portal:** scaffold /portal/bot/:id/about backstory page (IP P1) ([#2938](https://github.com/HankHuang0516/EClaw/issues/2938)) ([96d6ca5](https://github.com/HankHuang0516/EClaw/commit/96d6ca506d611e2f9be03d50f76983457277f209))
* **proxy:** scope private repo git auth ([#2926](https://github.com/HankHuang0516/EClaw/issues/2926)) ([246f7ff](https://github.com/HankHuang0516/EClaw/commit/246f7ff1dedaf7bece9e3cb9eb24d0ab32ebb393))
* **android:** show usage on live wallpaper ([3f5698f](https://github.com/HankHuang0516/EClaw/commit/3f5698f5ecdae47129c2e4cf4a4296c6a3ab6659))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **chat:** support message deep links ([#2719](https://github.com/HankHuang0516/EClaw/issues/2719)) ([2dc0f1e](https://github.com/HankHuang0516/EClaw/commit/2dc0f1eeb259e1a0848db4a03186b989372cd91c))
* **mission:** support note deep links ([#2717](https://github.com/HankHuang0516/EClaw/issues/2717)) ([2efd3a5](https://github.com/HankHuang0516/EClaw/commit/2efd3a5e741217a07c0b0ac54a0ddd010e0ebe23))
* **share-chat:** twitter card + per-bot og:image/twitter:* in SSR ([#2609](https://github.com/HankHuang0516/EClaw/issues/2609)) ([6cdc853](https://github.com/HankHuang0516/EClaw/commit/6cdc853dc884cdb95bd47214942768981f218ae0))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))
* **settings:** wire petdx avatar into channel-account chips ([#2626](https://github.com/HankHuang0516/EClaw/issues/2626)) ([88aec77](https://github.com/HankHuang0516/EClaw/commit/88aec772628c240e97b336bb5820892ad632d1ae))
* **files:** wire petdx avatar into entity filter & per-file badges ([#2627](https://github.com/HankHuang0516/EClaw/issues/2627)) ([5b3e5cc](https://github.com/HankHuang0516/EClaw/commit/5b3e5cc542d9da69bb4e92500fd03a542ea33f00))
* **mindmap:** wrap hardcoded zh-TW UI strings with i18n t() ([#2607](https://github.com/HankHuang0516/EClaw/issues/2607)) ([166af87](https://github.com/HankHuang0516/EClaw/commit/166af8772b2121a24aaf34a83b3de970e9b3b571)), closes [#2606](https://github.com/HankHuang0516/EClaw/issues/2606)
* **i18n:** zh-TW backfill 8 keys (soft-pause + chat + invite + wallet) ([#2815](https://github.com/HankHuang0516/EClaw/issues/2815)) ([a2dd574](https://github.com/HankHuang0516/EClaw/commit/a2dd5743ce8d43a4b6ace9a2fd4b52568180d6c5))


### Performance Improvements

* **mindmap:** force-graph hardening for 1000/2000-node graphs ([#2684](https://github.com/HankHuang0516/EClaw/issues/2684)) ([da8b1c8](https://github.com/HankHuang0516/EClaw/commit/da8b1c8f947ab8bc8fa455c1962a91146623a1fc))


### Reverts

* Revert "feat(telegram): long-poll adapter PoC (card_406e612942ff062a06fc47be) ([#2238](https://github.com/HankHuang0516/EClaw/issues/2238))" ([#2239](https://github.com/HankHuang0516/EClaw/issues/2239)) ([eb7aa92](https://github.com/HankHuang0516/EClaw/commit/eb7aa92cce454b4a1a22654a2d133cdebe78c2bd))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-26)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **channel:** ack healthchecks before agent dispatch ([f463a5a](https://github.com/HankHuang0516/EClaw/commit/f463a5ad2971568fc6612734a783cd280076476c))
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **notifications:** add kanban_done + kanban_done_auto toggles to Android Settings ([#2636](https://github.com/HankHuang0516/EClaw/issues/2636)) ([a710909](https://github.com/HankHuang0516/EClaw/commit/a7109095e3393b8564e7ef1b23d382a4fbb944b8))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **api:** align /api/platform-stats skill-doc with device-auth contract (card_49b8190) ([#2916](https://github.com/HankHuang0516/EClaw/issues/2916)) ([ee55b2f](https://github.com/HankHuang0516/EClaw/commit/ee55b2fdbfbcd4bead5501d16ee66339056c32d7))
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **i18n:** ar block — fix 27 broken entries (CJK leaks + truncated HTML) ([#2851](https://github.com/HankHuang0516/EClaw/issues/2851)) ([5b19175](https://github.com/HankHuang0516/EClaw/commit/5b19175d712d00d16fcec00b749035c4beae7a5c))
* **chat:** atomic-load target bar (await contacts before first render) ([#2831](https://github.com/HankHuang0516/EClaw/issues/2831)) ([5f529e6](https://github.com/HankHuang0516/EClaw/commit/5f529e6b772eacc38ba1de69b44258a05f0d816a)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2](https://github.com/HankHuang0516/EClaw/issues/2)
* **channel:** await binding persistence ([712516d](https://github.com/HankHuang0516/EClaw/commit/712516decafb745035bd1434a28cc1973d433e19))
* **rental:** bump handshake timeout to 60s + timeout-aware discovery fallback ([#2863](https://github.com/HankHuang0516/EClaw/issues/2863)) ([fd4322f](https://github.com/HankHuang0516/EClaw/commit/fd4322f8890f3c2dfca3acdae6a4b95f19c381f9)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **chat:** carry kanban message deep-links ([#2946](https://github.com/HankHuang0516/EClaw/issues/2946)) ([971e2d2](https://github.com/HankHuang0516/EClaw/commit/971e2d27aeb212660901c8707cf418b7b1411286))
* **i18n:** clear batch 1 residual missing keys ([#2790](https://github.com/HankHuang0516/EClaw/issues/2790)) ([211030e](https://github.com/HankHuang0516/EClaw/commit/211030e0b0b6a865c11f0c4ed60dc4e356d43b7a))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **kanban:** comment input no longer overlaps last comment in card detail (PR [#2678](https://github.com/HankHuang0516/EClaw/issues/2678)) ([fba91fc](https://github.com/HankHuang0516/EClaw/commit/fba91fca15402b453a0db5ee857c0b16e6087055))
* **chat:** compact 20px avatar in target bar (App WebView only shows [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2](https://github.com/HankHuang0516/EClaw/issues/2)) ([#2830](https://github.com/HankHuang0516/EClaw/issues/2830)) ([42c7543](https://github.com/HankHuang0516/EClaw/commit/42c7543b4a78a7abf3f5f7535eb9bc6142cd0fe2)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **portal:** complete 401 redirect sweep + mobile UIUX truncation ([#2842](https://github.com/HankHuang0516/EClaw/issues/2842)) ([f9799ba](https://github.com/HankHuang0516/EClaw/commit/f9799ba42498b109f0a8a70e80836aa6da51e216)), closes [#2833](https://github.com/HankHuang0516/EClaw/issues/2833) [#2845](https://github.com/HankHuang0516/EClaw/issues/2845) [#2844](https://github.com/HankHuang0516/EClaw/issues/2844) [#2843](https://github.com/HankHuang0516/EClaw/issues/2843)
* **uiux:** continue qa mobile readability sweep ([#2854](https://github.com/HankHuang0516/EClaw/issues/2854)) ([57606ff](https://github.com/HankHuang0516/EClaw/commit/57606ffe3e543b07a026aacc53c4b470c9a7825b))
* **i18n:** cover dynamic portal wrapper keys ([#2807](https://github.com/HankHuang0516/EClaw/issues/2807)) ([4c711cc](https://github.com/HankHuang0516/EClaw/commit/4c711cc4009300ffe4e8933a98ee01cd0fdd6aeb))
* **i18n:** dedup 20 dash_channel_card_* keys in es block ([#2876](https://github.com/HankHuang0516/EClaw/issues/2876)) ([807284c](https://github.com/HankHuang0516/EClaw/commit/807284ce363ef119ccdb0ae40e5ce99d3f0a27e0))
* **i18n:** dedupe backend locale keys via AST ([#2920](https://github.com/HankHuang0516/EClaw/issues/2920)) ([40ef114](https://github.com/HankHuang0516/EClaw/commit/40ef11414c8b836fe1ed93ec06c839df3a1bf7b9))
* **i18n:** dedupe zh locale keys ([#2919](https://github.com/HankHuang0516/EClaw/issues/2919)) ([afd2cca](https://github.com/HankHuang0516/EClaw/commit/afd2cca8086c2f2df0d04c9c5f8c58733652875e))
* **test:** delegate root test and remove invalid jest option ([#2292](https://github.com/HankHuang0516/EClaw/issues/2292)) ([65bf2f8](https://github.com/HankHuang0516/EClaw/commit/65bf2f83d26d925097cd380ab73b04ab2db49842))
* **kanban:** dep-aware nudge gating + roadmap dependency backfill ([#2904](https://github.com/HankHuang0516/EClaw/issues/2904)) ([2b76ac9](https://github.com/HankHuang0516/EClaw/commit/2b76ac9d3b7e4169b7bc3c6f6b0b0903b63cd9f7)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **rental:** don't pollute entity.message on push gateway timeout ([#2860](https://github.com/HankHuang0516/EClaw/issues/2860)) ([592ba44](https://github.com/HankHuang0516/EClaw/commit/592ba44f57536ee00011b6cbddaa6b129a7cbae9))
* **petdx:** drop dark-grey loading placeholder + preload sprite WEBP ([#2628](https://github.com/HankHuang0516/EClaw/issues/2628)) ([59cef38](https://github.com/HankHuang0516/EClaw/commit/59cef387bd69ca99d7d15c86a1364856d3849ad8)), closes [#1a1a1a](https://github.com/HankHuang0516/EClaw/issues/1a1a1a)
* **gateway-ws:** drop Origin header on server-to-server WS upgrade ([#2869](https://github.com/HankHuang0516/EClaw/issues/2869)) ([716dcf9](https://github.com/HankHuang0516/EClaw/commit/716dcf9d0834b17522bb9d894bad84bc142d1a19))
* **setup-scripts:** drop Origin header on server-to-server WS upgrade ([#2875](https://github.com/HankHuang0516/EClaw/issues/2875)) ([9d893b8](https://github.com/HankHuang0516/EClaw/commit/9d893b8e5eea4db275e450bf423903c156cd3e4b)), closes [#2869](https://github.com/HankHuang0516/EClaw/issues/2869)
* **security:** escape innerHTML in chat modal error messages ([#2819](https://github.com/HankHuang0516/EClaw/issues/2819)) ([dce07ad](https://github.com/HankHuang0516/EClaw/commit/dce07adde64795916dba977ae23e46f3371ce7ed)), closes [#2809](https://github.com/HankHuang0516/EClaw/issues/2809) [#2810](https://github.com/HankHuang0516/EClaw/issues/2810) [#2809](https://github.com/HankHuang0516/EClaw/issues/2809) [#2810](https://github.com/HankHuang0516/EClaw/issues/2810)
* **proxy:** export repo auth to CLI child ([#2928](https://github.com/HankHuang0516/EClaw/issues/2928)) ([336a8ca](https://github.com/HankHuang0516/EClaw/commit/336a8caff4e3663287bd2948cf9fe6e04125cbc8))
* **entities:** expose botSecret to owner so wallpaper service can poll companions ([#2615](https://github.com/HankHuang0516/EClaw/issues/2615)) ([04470fc](https://github.com/HankHuang0516/EClaw/commit/04470fce8f8c3fce2b1ba8b243e776606f107502))
* **rental:** expose owner_public_code in marketplace so plaza CTA can route ([#2616](https://github.com/HankHuang0516/EClaw/issues/2616)) ([4d1372f](https://github.com/HankHuang0516/EClaw/commit/4d1372f717d93cab65543e87c852e74e9fb67071)), closes [#2610](https://github.com/HankHuang0516/EClaw/issues/2610)
* **mindmap:** fallback to device scope when entityId is null ([#2728](https://github.com/HankHuang0516/EClaw/issues/2728)) ([7572312](https://github.com/HankHuang0516/EClaw/commit/7572312433d3d75fc245eda48a28919ce14bd927))
* **i18n:** fill 11 missing zh keys post-[#2920](https://github.com/HankHuang0516/EClaw/issues/2920)/[#2921](https://github.com/HankHuang0516/EClaw/issues/2921) (card_de6970) ([#2924](https://github.com/HankHuang0516/EClaw/issues/2924)) ([17c4899](https://github.com/HankHuang0516/EClaw/commit/17c48996489b1444d6ed589027acfa7986178fe1)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** fill backend runtime locale gaps ([#2921](https://github.com/HankHuang0516/EClaw/issues/2921)) ([00d96ff](https://github.com/HankHuang0516/EClaw/commit/00d96ff261b8134b49292623e1f786fd544144cc))
* **i18n:** fill Spanish drift keys ([#2751](https://github.com/HankHuang0516/EClaw/issues/2751)) ([0ad0ee5](https://github.com/HankHuang0516/EClaw/commit/0ad0ee55f7fac3e6ac46d891539950dab4d553cc))
* **portal:** fit embedded org chart to mobile viewport ([#2674](https://github.com/HankHuang0516/EClaw/issues/2674)) ([1c4e1b4](https://github.com/HankHuang0516/EClaw/commit/1c4e1b413ea7027b4cd4b8ecda981b0d0e12e66b))
* **i18n:** fix 6 trailing-comma syntax errors in 10-locale batch ([#2771](https://github.com/HankHuang0516/EClaw/issues/2771)) ([b27c6ca](https://github.com/HankHuang0516/EClaw/commit/b27c6ca204bf813e406c54ce3a2532a5f1f031b3))
* **kanban:** GET card returns latest 50 comments + comments endpoint exposes total ([#2816](https://github.com/HankHuang0516/EClaw/issues/2816)) ([c4d83f7](https://github.com/HankHuang0516/EClaw/commit/c4d83f777a1cd26aea0936e4316aa35c52822eef))
* **sharechat:** guest verify-email modal + disabled Send for unverified ([#2865](https://github.com/HankHuang0516/EClaw/issues/2865)) ([cb3b061](https://github.com/HankHuang0516/EClaw/commit/cb3b0614e0f6160417d907753e66eceb2d666802))
* **portal:** H4 showcase i18n data-attrs + raw key leak ([#2935](https://github.com/HankHuang0516/EClaw/issues/2935)) ([80d8587](https://github.com/HankHuang0516/EClaw/commit/80d8587c00c03f72fdb9756b1093ee8e1e3d0842)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **uiux:** harden chat previews and roster preview ([#2769](https://github.com/HankHuang0516/EClaw/issues/2769)) ([466d4d3](https://github.com/HankHuang0516/EClaw/commit/466d4d3ef81c628d3f58db64323946053d7bf61c))
* **mention-parser:** ignore @-mentions inside markdown code spans ([#2645](https://github.com/HankHuang0516/EClaw/issues/2645)) ([8da19d4](https://github.com/HankHuang0516/EClaw/commit/8da19d4a79ceb4152bf2144ee0847c61ce3e1def)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **kanban:** lazy-load dependency chips via IntersectionObserver ([#2632](https://github.com/HankHuang0516/EClaw/issues/2632)) ([20586b4](https://github.com/HankHuang0516/EClaw/commit/20586b43357335f9eb6a190c02d58c8e36b58aba)), closes [#2631](https://github.com/HankHuang0516/EClaw/issues/2631)
* **i18n:** localize FCM NotificationChannel labels (card_ec8d3a22) ([#2918](https://github.com/HankHuang0516/EClaw/issues/2918)) ([591cd20](https://github.com/HankHuang0516/EClaw/commit/591cd206704693650a53d19d94c4cc75daf84ffd))
* **kanban:** make card sorting deterministic ([#2756](https://github.com/HankHuang0516/EClaw/issues/2756)) ([48e2117](https://github.com/HankHuang0516/EClaw/commit/48e2117b64e37f05dc635e0a3b67bfd43cbe48f5))
* **portal/nagoya-trip:** map-link invisible on dark hero/day-banner ([#2897](https://github.com/HankHuang0516/EClaw/issues/2897)) ([cc33df6](https://github.com/HankHuang0516/EClaw/commit/cc33df686673455c20beaee60871412a5d486e66)), closes [#1f4030](https://github.com/HankHuang0516/EClaw/issues/1f4030) [#8b8579](https://github.com/HankHuang0516/EClaw/issues/8b8579) [#6e6859](https://github.com/HankHuang0516/EClaw/issues/6e6859) [#7a5614](https://github.com/HankHuang0516/EClaw/issues/7a5614)
* **portal:** mobile delete-modal clipped right edge (P0) ([#2951](https://github.com/HankHuang0516/EClaw/issues/2951)) ([00418ca](https://github.com/HankHuang0516/EClaw/commit/00418ca812d5b757e35d12a9810b124f30491bbb))
* **org-chart:** notify affected bots on hierarchy change ([#2812](https://github.com/HankHuang0516/EClaw/issues/2812)) ([55675fd](https://github.com/HankHuang0516/EClaw/commit/55675fdf4487494d729a29524b32bd81b756a00c)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** notify reviewer on manual /move → review ([#2753](https://github.com/HankHuang0516/EClaw/issues/2753)) ([6cbbb4e](https://github.com/HankHuang0516/EClaw/commit/6cbbb4ee8c0d4d8ad54df2e9b5faaa3699bd530f))
* **wallpaper:** off-load spritesheet fetch to IO so per-petdx sprites actually render ([#2618](https://github.com/HankHuang0516/EClaw/issues/2618)) ([61b832c](https://github.com/HankHuang0516/EClaw/commit/61b832c9fa8a1d0caab810ccc942d85c63349267)), closes [#2615](https://github.com/HankHuang0516/EClaw/issues/2615) [#2577](https://github.com/HankHuang0516/EClaw/issues/2577)
* **security:** patch P0 sanitize-html XSS + P1 protobufjs + exam.html XSS ([#2829](https://github.com/HankHuang0516/EClaw/issues/2829)) ([c71b871](https://github.com/HankHuang0516/EClaw/commit/c71b871a045887375dd0d26d1a3280a0891a89ad))
* **security:** patch ws uninitialized memory disclosure (GHSA-58qx-3vcg-4xpx) ([#2872](https://github.com/HankHuang0516/EClaw/issues/2872)) ([2523d15](https://github.com/HankHuang0516/EClaw/commit/2523d154bbe501a7cc086340f7a07ece3abfa69b))
* **portal:** petdx-browser cookie-session fallback for device-login ([#2757](https://github.com/HankHuang0516/EClaw/issues/2757)) ([ca275f4](https://github.com/HankHuang0516/EClaw/commit/ca275f4519835da0c7ad71c588908a18f6f138d8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **api:** platform-stats 500 + entity/lookup publicCode alias ([#2809](https://github.com/HankHuang0516/EClaw/issues/2809), [#2810](https://github.com/HankHuang0516/EClaw/issues/2810)) ([#2818](https://github.com/HankHuang0516/EClaw/issues/2818)) ([f99fd17](https://github.com/HankHuang0516/EClaw/commit/f99fd17b2b1c32d88daa2510ff66d714c1a53edc))
* **i18n:** positional format specifiers for feedback_result_logs (7 locales) ([#2597](https://github.com/HankHuang0516/EClaw/issues/2597)) ([21aedc7](https://github.com/HankHuang0516/EClaw/commit/21aedc7eebc7a2839e340136f38dfdfd4dabb9dc))
* **avatar-petdx:** preserve descriptor across transient API failures (flicker) ([#2625](https://github.com/HankHuang0516/EClaw/issues/2625)) ([7b1c606](https://github.com/HankHuang0516/EClaw/commit/7b1c606514f7698d72ec95cf6c556e4043966186))
* **chat:** preserve recipient selection across rental-health refresh (P0 #card_eb1cba76) ([#2906](https://github.com/HankHuang0516/EClaw/issues/2906)) ([9cc0301](https://github.com/HankHuang0516/EClaw/commit/9cc0301cc26a0f49af4b7f53486f5c1a7cdd7902)), closes [#card_eb1cba76](https://github.com/HankHuang0516/EClaw/issues/card_eb1cba76) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **chat:** preserve scroll anchor while reading history ([#2693](https://github.com/HankHuang0516/EClaw/issues/2693)) ([945fdb7](https://github.com/HankHuang0516/EClaw/commit/945fdb7192b791b31882e1e75568dd8b11e4686f))
* **qa:** protect contact reads and refresh UX audits ([#2955](https://github.com/HankHuang0516/EClaw/issues/2955)) ([24dc2ec](https://github.com/HankHuang0516/EClaw/commit/24dc2ec5e2eb0b099d4231e440fd29e65ef83dc8))
* **promo:** pull video embed from /promo-chat-avatar.html ([#2724](https://github.com/HankHuang0516/EClaw/issues/2724)) ([2afabc8](https://github.com/HankHuang0516/EClaw/commit/2afabc8c5ff8b25218a7cb857e8adfa572c8e9d5))
* **dashboard:** read live.rate_limits.{five_hour,seven_day}.used_percentage ([#2895](https://github.com/HankHuang0516/EClaw/issues/2895)) ([8223303](https://github.com/HankHuang0516/EClaw/commit/822330312bccb1c76675ad2c3b26e78d10dd1298))
* **kanban:** realign stale recurring schedules ([#2785](https://github.com/HankHuang0516/EClaw/issues/2785)) ([ab8ee25](https://github.com/HankHuang0516/EClaw/commit/ab8ee250a9b37f3d3e838bb01d8866c8d2b78231))
* **i18n:** reapply de6970 locale gap translations ([#2925](https://github.com/HankHuang0516/EClaw/issues/2925)) ([d994dc1](https://github.com/HankHuang0516/EClaw/commit/d994dc1d240fef72326db2599262375ccbf29175))
* **portal:** reduce QA-discovered request fanout ([#2656](https://github.com/HankHuang0516/EClaw/issues/2656)) ([1e46d6b](https://github.com/HankHuang0516/EClaw/commit/1e46d6bab61e58c65b452b6503d953f8dddeee75))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **portal:** remove org chart fit scale floor ([#2676](https://github.com/HankHuang0516/EClaw/issues/2676)) ([0f01606](https://github.com/HankHuang0516/EClaw/commit/0f016068b963bb5f800a02f28817c7174979d913))
* **rental:** remove phantom 'webhook test push' step from BIND_COMPLETE ([#2864](https://github.com/HankHuang0516/EClaw/issues/2864)) ([47f4a3e](https://github.com/HankHuang0516/EClaw/commit/47f4a3edf76aa95ebd06d8713cd44fda6eef9b5d))
* **i18n:** rename mm_empty_title → mm_state_empty_title in mindmap.html ([#2683](https://github.com/HankHuang0516/EClaw/issues/2683)) ([c79c109](https://github.com/HankHuang0516/EClaw/commit/c79c109bea23142e8a6d9ace976d105af1280ec9))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **chat:** render mention avatars with companion renderer ([#2633](https://github.com/HankHuang0516/EClaw/issues/2633)) ([03e205f](https://github.com/HankHuang0516/EClaw/commit/03e205f663ecd2c2f443d4009dd5af0093f0bbbb))
* **kanban:** reserve mobile comments panel height ([#2782](https://github.com/HankHuang0516/EClaw/issues/2782)) ([ce8662d](https://github.com/HankHuang0516/EClaw/commit/ce8662d362422fdd25037f1deb61dbed9425e2f9))
* **channel:** restore handshake fallback to discovered sessions ([#2915](https://github.com/HankHuang0516/EClaw/issues/2915)) ([#2917](https://github.com/HankHuang0516/EClaw/issues/2917)) ([9d7d3a2](https://github.com/HankHuang0516/EClaw/commit/9d7d3a25654289998314dd5ca152cefdb8a4d64e)), closes [#2912](https://github.com/HankHuang0516/EClaw/issues/2912)
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* scheduled audit 2026-05-13 — 6 bugs, XSS, i18n ([#2668](https://github.com/HankHuang0516/EClaw/issues/2668)) ([21dd513](https://github.com/HankHuang0516/EClaw/commit/21dd513b4464738de29164265437435ba6cc4817)), closes [#2605](https://github.com/HankHuang0516/EClaw/issues/2605) [#2608](https://github.com/HankHuang0516/EClaw/issues/2608) [#2600](https://github.com/HankHuang0516/EClaw/issues/2600) [#2599](https://github.com/HankHuang0516/EClaw/issues/2599) [#2598](https://github.com/HankHuang0516/EClaw/issues/2598)
* **channel:** scope official bot sessions ([#2912](https://github.com/HankHuang0516/EClaw/issues/2912)) ([5c56b62](https://github.com/HankHuang0516/EClaw/commit/5c56b62c13b739b76f39e168a26bd4e5de2644fb))
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **dashboard:** show Claude weekly bar reset countdown ([#2896](https://github.com/HankHuang0516/EClaw/issues/2896)) ([3b87845](https://github.com/HankHuang0516/EClaw/commit/3b87845d713e980fec69f6b8007549338a326713)), closes [#2895](https://github.com/HankHuang0516/EClaw/issues/2895)
* **chat:** smart-chip preview falls back to inline c.comments when /comments fails (PR [#2677](https://github.com/HankHuang0516/EClaw/issues/2677)) ([7f4dffd](https://github.com/HankHuang0516/EClaw/commit/7f4dffd2c83ea86f296b8fa0610f0e67c9f1af11))
* **kanban:** stabilize comment detail viewport ([#2796](https://github.com/HankHuang0516/EClaw/issues/2796)) ([0a10aad](https://github.com/HankHuang0516/EClaw/commit/0a10aadb5a5b12ff23454c16d5c88183b94ad7d7))
* **wallpaper:** stop Android live wallpaper flashing default lobster on companion change ([#2629](https://github.com/HankHuang0516/EClaw/issues/2629)) ([8b4f66f](https://github.com/HankHuang0516/EClaw/commit/8b4f66fcb335bf43128f924b761b6337c817095b)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **chat:** stop chat.html bouncing to dashboard via /api/rental/health-status 401 race ([#2833](https://github.com/HankHuang0516/EClaw/issues/2833)) ([c422406](https://github.com/HankHuang0516/EClaw/commit/c4224067cdcfe7f3e22ab95007c7563dac4196ac))
* **openclaw-channel:** support OpenClaw 2026.5.20 ([8045de6](https://github.com/HankHuang0516/EClaw/commit/8045de6bebecfc05f9bd57453b99c098ca35681b))
* **mentions:** support same-device CJK display-name tags ([#2874](https://github.com/HankHuang0516/EClaw/issues/2874)) ([b8f61be](https://github.com/HankHuang0516/EClaw/commit/b8f61be9a3962fef75dd32ea34e8900880dafaf9))
* **channel:** suppress operational A2A loop messages (rebase of [#2288](https://github.com/HankHuang0516/EClaw/issues/2288)) ([#2930](https://github.com/HankHuang0516/EClaw/issues/2930)) ([7ceabc9](https://github.com/HankHuang0516/EClaw/commit/7ceabc915df22123cb46ae1500e2eb2e279250af))
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **dashboard:** use sessions[].project for widget Projects list (was .project_id) ([#2894](https://github.com/HankHuang0516/EClaw/issues/2894)) ([0fd1334](https://github.com/HankHuang0516/EClaw/commit/0fd1334897d4a603cc6eb74f34b48606547e09cf))
* **app:** WebView pages honor app-selected locale via ?lang= URL param ([#2672](https://github.com/HankHuang0516/EClaw/issues/2672)) ([8ed8757](https://github.com/HankHuang0516/EClaw/commit/8ed8757aec5bf214e837cc0d81bf2b23f1993a91)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **share-chat:** wire rich CTA actions to msgInput ([#2867](https://github.com/HankHuang0516/EClaw/issues/2867)) ([df23b11](https://github.com/HankHuang0516/EClaw/commit/df23b1147d34c59a644a145bbd87c18b96400acc))


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* **usage-api:** /api/usage/{snapshot,timeline} + usage_snapshots table (Plan B Phase 1) ([#2889](https://github.com/HankHuang0516/EClaw/issues/2889)) ([a0d859c](https://github.com/HankHuang0516/EClaw/commit/a0d859c63f0220909dadb2b1952174861ccdce14))
* **community:** 1-click chat button on bot cards + utm tagging ([#2610](https://github.com/HankHuang0516/EClaw/issues/2610)) ([eee97b0](https://github.com/HankHuang0516/EClaw/commit/eee97b0e2e4e74945ec24f218a69a52800b97a66))
* **chat:** accept ?messageId= as deep-link alias ([#2838](https://github.com/HankHuang0516/EClaw/issues/2838)) ([1785a87](https://github.com/HankHuang0516/EClaw/commit/1785a87310426637fd10df83754fb9924c45207f))
* **chat:** add avatar size preference ([#2714](https://github.com/HankHuang0516/EClaw/issues/2714)) ([6fe164a](https://github.com/HankHuang0516/EClaw/commit/6fe164ad8b22fa576d2dd9ad37c0d9fc295b5a83))
* **version:** add build_hash and build_time to /api/version ([#2959](https://github.com/HankHuang0516/EClaw/issues/2959)) ([e1f17f0](https://github.com/HankHuang0516/EClaw/commit/e1f17f0c03f507b72cd03f7a7a16b046348634ee))
* **dashboard:** add Claude and Codex channel guides ([#2640](https://github.com/HankHuang0516/EClaw/issues/2640)) ([c64e4c4](https://github.com/HankHuang0516/EClaw/commit/c64e4c4afc78db58c5cd578f00486dd7b2fd3311))
* **dashboard:** add Claude Code channel guide card ([#2667](https://github.com/HankHuang0516/EClaw/issues/2667)) ([d70d75c](https://github.com/HankHuang0516/EClaw/commit/d70d75c0c8caa8a540358a9aab4556b8c1927a5c))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* **api:** add DELETE /api/entity/queue to clear messageQueue ([#616](https://github.com/HankHuang0516/EClaw/issues/616)) ([16ee3ff](https://github.com/HankHuang0516/EClaw/commit/16ee3ff1c6aa7f8ef187e54e5e7169f2e44f7395))
* **kanban:** add device-scoped card tags ([#2773](https://github.com/HankHuang0516/EClaw/issues/2773)) ([53a387e](https://github.com/HankHuang0516/EClaw/commit/53a387e67ba7bb4f6bed1c427000c4ae8666577a))
* **portal:** add entity selector to petdx-browser ([#2602](https://github.com/HankHuang0516/EClaw/issues/2602)) ([3fa067e](https://github.com/HankHuang0516/EClaw/commit/3fa067e00b38829b48a37cecd33ee81a9a1122d9))
* **kanban:** add explicit card links ([#2721](https://github.com/HankHuang0516/EClaw/issues/2721)) ([ef9f812](https://github.com/HankHuang0516/EClaw/commit/ef9f812a3fcf39efd07fd158ce90951bdd045ac7))
* **kanban:** add explicit done-card reopen flow ([#2801](https://github.com/HankHuang0516/EClaw/issues/2801)) ([5080aac](https://github.com/HankHuang0516/EClaw/commit/5080aacb75047c0deaa379ee708ec85465afd57c))
* **mindmap:** add GET /api/mindmap/graph force-graph projection ([#2680](https://github.com/HankHuang0516/EClaw/issues/2680)) ([a00b2e7](https://github.com/HankHuang0516/EClaw/commit/a00b2e775af2c4c98cd157f760ad87aeeee469f0)), closes [#2679](https://github.com/HankHuang0516/EClaw/issues/2679) [#2679](https://github.com/HankHuang0516/EClaw/issues/2679)
* **dashboard:** add Hermes channel promo card ([#2708](https://github.com/HankHuang0516/EClaw/issues/2708)) ([337aca1](https://github.com/HankHuang0516/EClaw/commit/337aca153d5a1cd7e888c065f00ae54db7872d91))
* **rental:** add listing soft pause ([#2781](https://github.com/HankHuang0516/EClaw/issues/2781)) ([6586b72](https://github.com/HankHuang0516/EClaw/commit/6586b72717ddb1637d91cd3242c8d2ff554f62b4))
* **portal:** add Nagoya 5D4N trip static cross-ref page ([#2689](https://github.com/HankHuang0516/EClaw/issues/2689)) ([2e0efb6](https://github.com/HankHuang0516/EClaw/commit/2e0efb6dcdaff52226cc8854a96747000b12bdff))
* **portal:** add Nagoya image atlas static page ([#2743](https://github.com/HankHuang0516/EClaw/issues/2743)) ([ac026e9](https://github.com/HankHuang0516/EClaw/commit/ac026e9fd2c92ac9437d01edddffc9adf972f6ba))
* **portal:** add Nagoya trip map links and image lightbox ([#2821](https://github.com/HankHuang0516/EClaw/issues/2821)) ([3e40955](https://github.com/HankHuang0516/EClaw/commit/3e40955650a05f45a6b9f7e39e73847705424a03))
* **portal/nagoya:** add parking shortcut buttons next to itinerary places ([#2826](https://github.com/HankHuang0516/EClaw/issues/2826)) ([63968c5](https://github.com/HankHuang0516/EClaw/commit/63968c554d046afc8d978de74e3aacbf7700500d))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **settings:** add rental roster management preview ([#2758](https://github.com/HankHuang0516/EClaw/issues/2758)) ([9706e59](https://github.com/HankHuang0516/EClaw/commit/9706e59ded140a90a6e02348124282bc69d89001))
* **rental:** add renter health chat indicator ([#2690](https://github.com/HankHuang0516/EClaw/issues/2690)) ([36cd2e9](https://github.com/HankHuang0516/EClaw/commit/36cd2e9802be4c7ebb03d3024617fa74aca48ffd))
* **ios:** add Tutorial & Intro entry in Settings ([#2800](https://github.com/HankHuang0516/EClaw/issues/2800)) ([ed83e51](https://github.com/HankHuang0516/EClaw/commit/ed83e51d043bf4cd5865f38dc95a91ed54820d6c))
* **landing:** add Watch Full Demo CTA below hero video ([#2799](https://github.com/HankHuang0516/EClaw/issues/2799)) ([66107c9](https://github.com/HankHuang0516/EClaw/commit/66107c954727551fd34d989a4674daaad9b63968))
* **footer:** add Watch Intro Video link in Info column ([#2798](https://github.com/HankHuang0516/EClaw/issues/2798)) ([d7c6d59](https://github.com/HankHuang0516/EClaw/commit/d7c6d596b69c6a5b257bf1f7a792a407ef9712ad))
* **i18n:** ar iter-2 — fill 623 missing keys against en source ([#2847](https://github.com/HankHuang0516/EClaw/issues/2847)) ([ee94a7a](https://github.com/HankHuang0516/EClaw/commit/ee94a7ae6812b5163efe4284ee4907ca32302f5c))
* **kanban:** backlog launch-gate flag to suppress L1/L2/L3 escalation ([#2855](https://github.com/HankHuang0516/EClaw/issues/2855)) ([cb8bf1b](https://github.com/HankHuang0516/EClaw/commit/cb8bf1bb6421f25214f65e129a8cadccc49cc266)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#4](https://github.com/HankHuang0516/EClaw/issues/4) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **companion:** bridge crafter-station/petdex gallery (1784 pets) ([#2601](https://github.com/HankHuang0516/EClaw/issues/2601)) ([2e245be](https://github.com/HankHuang0516/EClaw/commit/2e245bea6dd47ea7361b927d389188a3c23b6bb3))
* **promo:** chat avatar size feature landing page (self-hosted MP4) ([#2722](https://github.com/HankHuang0516/EClaw/issues/2722)) ([3852210](https://github.com/HankHuang0516/EClaw/commit/3852210d355704d018e3daca6b5f9512a011b210)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **kanban:** cron-spawn jitter + lane backpressure to prevent same-tick wedge ([#2791](https://github.com/HankHuang0516/EClaw/issues/2791)) ([9f414a7](https://github.com/HankHuang0516/EClaw/commit/9f414a731d6393672a0a4189c7b408c529ae5e12)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **portal:** dashboard usage widget — Claude/Codex 5h gauges + 24h chart (Plan B Phase 3) ([#2891](https://github.com/HankHuang0516/EClaw/issues/2891)) ([d18f373](https://github.com/HankHuang0516/EClaw/commit/d18f373857e4bd302437d6bda2a1e01871fbb1db))
* **portal:** dashboard usage widget v2 — Session/Weekly % bars + projects, no cost (Plan B Phase 3.1) ([#2893](https://github.com/HankHuang0516/EClaw/issues/2893)) ([4bc0dc7](https://github.com/HankHuang0516/EClaw/commit/4bc0dc744ed9d54dfd532ebac4b705c7f84ec0a6))
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **info:** embed 75s promo video on Quick Start tab ([#2795](https://github.com/HankHuang0516/EClaw/issues/2795)) ([86c3f70](https://github.com/HankHuang0516/EClaw/commit/86c3f709a95eebbee1241077b807880463f804b6))
* **promo:** embed daily eclaw video 2026-05-14 ([#2786](https://github.com/HankHuang0516/EClaw/issues/2786)) ([718a814](https://github.com/HankHuang0516/EClaw/commit/718a814ab16850bc2b33a1b303841e2c4378ecfa)), closes [#2782](https://github.com/HankHuang0516/EClaw/issues/2782) [#2693](https://github.com/HankHuang0516/EClaw/issues/2693)
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **info:** embed promo video at top of Quick Start tab ([#2797](https://github.com/HankHuang0516/EClaw/issues/2797)) ([047679f](https://github.com/HankHuang0516/EClaw/commit/047679fd57ab9949eaeacea414d5611e71afe041))
* **rental:** enforce strict rebind refunds ([#2703](https://github.com/HankHuang0516/EClaw/issues/2703)) ([a1859c5](https://github.com/HankHuang0516/EClaw/commit/a1859c50e6fb3991d7a8051491502d824a14a116))
* **portal:** group task chip actions ([#2825](https://github.com/HankHuang0516/EClaw/issues/2825)) ([5db5c59](https://github.com/HankHuang0516/EClaw/commit/5db5c59b32b8635f1412205faf0c2f9164d3d5d4))
* **hermes:** H2 health-check cron + 7d SLA + commander alerts (card_07891ac) ([#2922](https://github.com/HankHuang0516/EClaw/issues/2922)) ([82b4315](https://github.com/HankHuang0516/EClaw/commit/82b4315aea234493e3d1889dc53958c2f1d842e0)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **portal:** info-guide-rules + info-guide-soul slide pair ([#2793](https://github.com/HankHuang0516/EClaw/issues/2793)) ([1c8bddc](https://github.com/HankHuang0516/EClaw/commit/1c8bddc4c185054b2b60088498e3d45509117127)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **chat:** link card previews to kanban ([#2754](https://github.com/HankHuang0516/EClaw/issues/2754)) ([2261240](https://github.com/HankHuang0516/EClaw/commit/22612402c2e95efb07246629e81a849be41ee9c7))
* **mission:** link notes to kanban cards ([#2723](https://github.com/HankHuang0516/EClaw/issues/2723)) ([b36dc18](https://github.com/HankHuang0516/EClaw/commit/b36dc18f3a8facf12e0b6046351c222f1e99dc55))
* **usage-daemon:** macOS launchd daemon polls Claude/Codex usage → POST /api/usage/snapshot (Plan B Phase 2) ([#2890](https://github.com/HankHuang0516/EClaw/issues/2890)) ([fd225e1](https://github.com/HankHuang0516/EClaw/commit/fd225e12d9491037be1a340bd63b54b5f3308c7f))
* **mindmap:** mission.html link to /portal/mindmap.html + deprecate /api/mission/mindmap ([#2685](https://github.com/HankHuang0516/EClaw/issues/2685)) ([11e297b](https://github.com/HankHuang0516/EClaw/commit/11e297bab1c9b56fcde3027d6500b7c58891bf18)), closes [#2680](https://github.com/HankHuang0516/EClaw/issues/2680) [#2684](https://github.com/HankHuang0516/EClaw/issues/2684)
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **portal:** nagoya trip interactive map (Leaflet + OSM, no API key) ([#2888](https://github.com/HankHuang0516/EClaw/issues/2888)) ([ecfdac0](https://github.com/HankHuang0516/EClaw/commit/ecfdac06348c12ee7c6872c6c28d5f82162e7aa9))
* **android:** native tab navigation bridge for portal pages ([#2832](https://github.com/HankHuang0516/EClaw/issues/2832)) ([7e02e6f](https://github.com/HankHuang0516/EClaw/commit/7e02e6f225014e64f08f55035d7b9e5727873343)), closes [#2824](https://github.com/HankHuang0516/EClaw/issues/2824) [#2743](https://github.com/HankHuang0516/EClaw/issues/2743) [#2821](https://github.com/HankHuang0516/EClaw/issues/2821) [#2826](https://github.com/HankHuang0516/EClaw/issues/2826) [#2797](https://github.com/HankHuang0516/EClaw/issues/2797) [#2798](https://github.com/HankHuang0516/EClaw/issues/2798) [#2799](https://github.com/HankHuang0516/EClaw/issues/2799) [#2800](https://github.com/HankHuang0516/EClaw/issues/2800) [#2801](https://github.com/HankHuang0516/EClaw/issues/2801) [#2816](https://github.com/HankHuang0516/EClaw/issues/2816) [#2796](https://github.com/HankHuang0516/EClaw/issues/2796) [#2825](https://github.com/HankHuang0516/EClaw/issues/2825) [#2812](https://github.com/HankHuang0516/EClaw/issues/2812) [#2813](https://github.com/HankHuang0516/EClaw/issues/2813) [#2814](https://github.com/HankHuang0516/EClaw/issues/2814) [#2815](https://github.com/HankHuang0516/EClaw/issues/2815) [#2811](https://github.com/HankHuang0516/EClaw/issues/2811) [#2807](https://github.com/HankHuang0516/EClaw/issues/2807) [#2808](https://github.com/HankHuang0516/EClaw/issues/2808) [#2818](https://github.com/HankHuang0516/EClaw/issues/2818) [#2819](https://github.com/HankHuang0516/EClaw/issues/2819) [#2824](https://github.com/HankHuang0516/EClaw/issues/2824)
* **channel:** outbound backpressure (30/min cap + 429 retry-after) ([#2911](https://github.com/HankHuang0516/EClaw/issues/2911)) ([36dc99c](https://github.com/HankHuang0516/EClaw/commit/36dc99ca78b0e1724a2aaefb5936669077b7a28f))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **ai-support:** pass per-request caller creds to claude-cli-proxy /chat (H3 Phase 2) ([#2947](https://github.com/HankHuang0516/EClaw/issues/2947)) ([1f5378b](https://github.com/HankHuang0516/EClaw/commit/1f5378b9e01d4e650005c338bf81f1ef43535624)), closes [#2937](https://github.com/HankHuang0516/EClaw/issues/2937)
* **settings:** per-entity nudge override UI (Phase 2) ([#2837](https://github.com/HankHuang0516/EClaw/issues/2837)) ([ea7662b](https://github.com/HankHuang0516/EClaw/commit/ea7662b0858882dae461e1387f711895924f9ab8)), closes [3/#4](https://github.com/HankHuang0516/EClaw/issues/4)
* **kanban:** per-entity nudge overrides (Phase 2 of card_e066cb6b) ([#2836](https://github.com/HankHuang0516/EClaw/issues/2836)) ([0425f80](https://github.com/HankHuang0516/EClaw/commit/0425f80bc1169c0d506b665659c8676695c45553))
* **avatar:** petdx render on card-holder my-cards (Phase 1b) ([#2621](https://github.com/HankHuang0516/EClaw/issues/2621)) ([f78ba8b](https://github.com/HankHuang0516/EClaw/commit/f78ba8b18acc426936ab6d8a82ca7541effea00d))
* **avatar:** petdx render on dashboard entity grid / org chart / bindings (Phase 1b) ([#2622](https://github.com/HankHuang0516/EClaw/issues/2622)) ([f417749](https://github.com/HankHuang0516/EClaw/commit/f41774914451048e8cd76e9ae30416a0642e173b)), closes [#2620](https://github.com/HankHuang0516/EClaw/issues/2620) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621)
* **avatar:** petdx render on kanban auto-assign / pulse / comment avatars (Phase 1b) ([#2624](https://github.com/HankHuang0516/EClaw/issues/2624)) ([6bff5f8](https://github.com/HankHuang0516/EClaw/commit/6bff5f80440d0bd91a6b1721cde9478d685c4d46))
* **avatar:** petdx render on mission skill/rule/soul entity dialogs (Phase 1b) ([#2623](https://github.com/HankHuang0516/EClaw/issues/2623)) ([129327b](https://github.com/HankHuang0516/EClaw/commit/129327bc7b91056659f1ab7e8d5e3f5260d951fb))
* **mindmap:** portal/mindmap.html force-graph prototype ([#129](https://github.com/HankHuang0516/EClaw/issues/129)) ([#2681](https://github.com/HankHuang0516/EClaw/issues/2681)) ([0f15e69](https://github.com/HankHuang0516/EClaw/commit/0f15e6930f0697c37fa08f3219edb8f9e499837f)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **channel:** record delivery receipts ([#2913](https://github.com/HankHuang0516/EClaw/issues/2913)) ([90c671b](https://github.com/HankHuang0516/EClaw/commit/90c671bd1970ab51584b90e2b634484ec10cc7ae))
* **portal:** redo nagoya trip page in professional tour-guide style ([#2691](https://github.com/HankHuang0516/EClaw/issues/2691)) ([b2378c0](https://github.com/HankHuang0516/EClaw/commit/b2378c06ee20fa9cccfdceceb1a4c9e0b3072f59))
* **i18n:** remove ms+hi orphan keys from i18n.js ([#2849](https://github.com/HankHuang0516/EClaw/issues/2849)) ([320176c](https://github.com/HankHuang0516/EClaw/commit/320176c06a3cfd8631e2a82ad02a6bd6a9af0389))
* **avatar:** render selected petdx companion in chat avatars ([#2620](https://github.com/HankHuang0516/EClaw/issues/2620)) ([0bdd046](https://github.com/HankHuang0516/EClaw/commit/0bdd046fe1b1c428e32edda366ff112c08927f4c))
* **home:** replace native home with WebView hosting dashboard.html ([#2634](https://github.com/HankHuang0516/EClaw/issues/2634)) ([e69ea81](https://github.com/HankHuang0516/EClaw/commit/e69ea8160c239b083a83d6dc83a4f1c3f901c863))
* **app:** route chat mission jumps through native tabs ([#2824](https://github.com/HankHuang0516/EClaw/issues/2824)) ([deb07b6](https://github.com/HankHuang0516/EClaw/commit/deb07b69a9ecca632fe27278de537f1d85234e94))
* **portal:** scaffold /portal/bot/:id/about backstory page (IP P1) ([#2938](https://github.com/HankHuang0516/EClaw/issues/2938)) ([96d6ca5](https://github.com/HankHuang0516/EClaw/commit/96d6ca506d611e2f9be03d50f76983457277f209))
* **proxy:** scope private repo git auth ([#2926](https://github.com/HankHuang0516/EClaw/issues/2926)) ([246f7ff](https://github.com/HankHuang0516/EClaw/commit/246f7ff1dedaf7bece9e3cb9eb24d0ab32ebb393))
* **android:** show usage on live wallpaper ([3f5698f](https://github.com/HankHuang0516/EClaw/commit/3f5698f5ecdae47129c2e4cf4a4296c6a3ab6659))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **chat:** support message deep links ([#2719](https://github.com/HankHuang0516/EClaw/issues/2719)) ([2dc0f1e](https://github.com/HankHuang0516/EClaw/commit/2dc0f1eeb259e1a0848db4a03186b989372cd91c))
* **mission:** support note deep links ([#2717](https://github.com/HankHuang0516/EClaw/issues/2717)) ([2efd3a5](https://github.com/HankHuang0516/EClaw/commit/2efd3a5e741217a07c0b0ac54a0ddd010e0ebe23))
* **share-chat:** twitter card + per-bot og:image/twitter:* in SSR ([#2609](https://github.com/HankHuang0516/EClaw/issues/2609)) ([6cdc853](https://github.com/HankHuang0516/EClaw/commit/6cdc853dc884cdb95bd47214942768981f218ae0))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))
* **settings:** wire petdx avatar into channel-account chips ([#2626](https://github.com/HankHuang0516/EClaw/issues/2626)) ([88aec77](https://github.com/HankHuang0516/EClaw/commit/88aec772628c240e97b336bb5820892ad632d1ae))
* **files:** wire petdx avatar into entity filter & per-file badges ([#2627](https://github.com/HankHuang0516/EClaw/issues/2627)) ([5b3e5cc](https://github.com/HankHuang0516/EClaw/commit/5b3e5cc542d9da69bb4e92500fd03a542ea33f00))
* **mindmap:** wrap hardcoded zh-TW UI strings with i18n t() ([#2607](https://github.com/HankHuang0516/EClaw/issues/2607)) ([166af87](https://github.com/HankHuang0516/EClaw/commit/166af8772b2121a24aaf34a83b3de970e9b3b571)), closes [#2606](https://github.com/HankHuang0516/EClaw/issues/2606)
* **i18n:** zh-TW backfill 8 keys (soft-pause + chat + invite + wallet) ([#2815](https://github.com/HankHuang0516/EClaw/issues/2815)) ([a2dd574](https://github.com/HankHuang0516/EClaw/commit/a2dd5743ce8d43a4b6ace9a2fd4b52568180d6c5))


### Performance Improvements

* **mindmap:** force-graph hardening for 1000/2000-node graphs ([#2684](https://github.com/HankHuang0516/EClaw/issues/2684)) ([da8b1c8](https://github.com/HankHuang0516/EClaw/commit/da8b1c8f947ab8bc8fa455c1962a91146623a1fc))


### Reverts

* Revert "feat(telegram): long-poll adapter PoC (card_406e612942ff062a06fc47be) ([#2238](https://github.com/HankHuang0516/EClaw/issues/2238))" ([#2239](https://github.com/HankHuang0516/EClaw/issues/2239)) ([eb7aa92](https://github.com/HankHuang0516/EClaw/commit/eb7aa92cce454b4a1a22654a2d133cdebe78c2bd))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-26)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **channel:** ack healthchecks before agent dispatch ([f463a5a](https://github.com/HankHuang0516/EClaw/commit/f463a5ad2971568fc6612734a783cd280076476c))
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **notifications:** add kanban_done + kanban_done_auto toggles to Android Settings ([#2636](https://github.com/HankHuang0516/EClaw/issues/2636)) ([a710909](https://github.com/HankHuang0516/EClaw/commit/a7109095e3393b8564e7ef1b23d382a4fbb944b8))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **api:** align /api/platform-stats skill-doc with device-auth contract (card_49b8190) ([#2916](https://github.com/HankHuang0516/EClaw/issues/2916)) ([ee55b2f](https://github.com/HankHuang0516/EClaw/commit/ee55b2fdbfbcd4bead5501d16ee66339056c32d7))
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **i18n:** ar block — fix 27 broken entries (CJK leaks + truncated HTML) ([#2851](https://github.com/HankHuang0516/EClaw/issues/2851)) ([5b19175](https://github.com/HankHuang0516/EClaw/commit/5b19175d712d00d16fcec00b749035c4beae7a5c))
* **chat:** atomic-load target bar (await contacts before first render) ([#2831](https://github.com/HankHuang0516/EClaw/issues/2831)) ([5f529e6](https://github.com/HankHuang0516/EClaw/commit/5f529e6b772eacc38ba1de69b44258a05f0d816a)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2](https://github.com/HankHuang0516/EClaw/issues/2)
* **channel:** await binding persistence ([712516d](https://github.com/HankHuang0516/EClaw/commit/712516decafb745035bd1434a28cc1973d433e19))
* **rental:** bump handshake timeout to 60s + timeout-aware discovery fallback ([#2863](https://github.com/HankHuang0516/EClaw/issues/2863)) ([fd4322f](https://github.com/HankHuang0516/EClaw/commit/fd4322f8890f3c2dfca3acdae6a4b95f19c381f9)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **chat:** carry kanban message deep-links ([#2946](https://github.com/HankHuang0516/EClaw/issues/2946)) ([971e2d2](https://github.com/HankHuang0516/EClaw/commit/971e2d27aeb212660901c8707cf418b7b1411286))
* **i18n:** clear batch 1 residual missing keys ([#2790](https://github.com/HankHuang0516/EClaw/issues/2790)) ([211030e](https://github.com/HankHuang0516/EClaw/commit/211030e0b0b6a865c11f0c4ed60dc4e356d43b7a))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **kanban:** comment input no longer overlaps last comment in card detail (PR [#2678](https://github.com/HankHuang0516/EClaw/issues/2678)) ([fba91fc](https://github.com/HankHuang0516/EClaw/commit/fba91fca15402b453a0db5ee857c0b16e6087055))
* **chat:** compact 20px avatar in target bar (App WebView only shows [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2](https://github.com/HankHuang0516/EClaw/issues/2)) ([#2830](https://github.com/HankHuang0516/EClaw/issues/2830)) ([42c7543](https://github.com/HankHuang0516/EClaw/commit/42c7543b4a78a7abf3f5f7535eb9bc6142cd0fe2)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **portal:** complete 401 redirect sweep + mobile UIUX truncation ([#2842](https://github.com/HankHuang0516/EClaw/issues/2842)) ([f9799ba](https://github.com/HankHuang0516/EClaw/commit/f9799ba42498b109f0a8a70e80836aa6da51e216)), closes [#2833](https://github.com/HankHuang0516/EClaw/issues/2833) [#2845](https://github.com/HankHuang0516/EClaw/issues/2845) [#2844](https://github.com/HankHuang0516/EClaw/issues/2844) [#2843](https://github.com/HankHuang0516/EClaw/issues/2843)
* **uiux:** continue qa mobile readability sweep ([#2854](https://github.com/HankHuang0516/EClaw/issues/2854)) ([57606ff](https://github.com/HankHuang0516/EClaw/commit/57606ffe3e543b07a026aacc53c4b470c9a7825b))
* **i18n:** cover dynamic portal wrapper keys ([#2807](https://github.com/HankHuang0516/EClaw/issues/2807)) ([4c711cc](https://github.com/HankHuang0516/EClaw/commit/4c711cc4009300ffe4e8933a98ee01cd0fdd6aeb))
* **i18n:** dedup 20 dash_channel_card_* keys in es block ([#2876](https://github.com/HankHuang0516/EClaw/issues/2876)) ([807284c](https://github.com/HankHuang0516/EClaw/commit/807284ce363ef119ccdb0ae40e5ce99d3f0a27e0))
* **i18n:** dedupe backend locale keys via AST ([#2920](https://github.com/HankHuang0516/EClaw/issues/2920)) ([40ef114](https://github.com/HankHuang0516/EClaw/commit/40ef11414c8b836fe1ed93ec06c839df3a1bf7b9))
* **i18n:** dedupe zh locale keys ([#2919](https://github.com/HankHuang0516/EClaw/issues/2919)) ([afd2cca](https://github.com/HankHuang0516/EClaw/commit/afd2cca8086c2f2df0d04c9c5f8c58733652875e))
* **test:** delegate root test and remove invalid jest option ([#2292](https://github.com/HankHuang0516/EClaw/issues/2292)) ([65bf2f8](https://github.com/HankHuang0516/EClaw/commit/65bf2f83d26d925097cd380ab73b04ab2db49842))
* **kanban:** dep-aware nudge gating + roadmap dependency backfill ([#2904](https://github.com/HankHuang0516/EClaw/issues/2904)) ([2b76ac9](https://github.com/HankHuang0516/EClaw/commit/2b76ac9d3b7e4169b7bc3c6f6b0b0903b63cd9f7)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **rental:** don't pollute entity.message on push gateway timeout ([#2860](https://github.com/HankHuang0516/EClaw/issues/2860)) ([592ba44](https://github.com/HankHuang0516/EClaw/commit/592ba44f57536ee00011b6cbddaa6b129a7cbae9))
* **petdx:** drop dark-grey loading placeholder + preload sprite WEBP ([#2628](https://github.com/HankHuang0516/EClaw/issues/2628)) ([59cef38](https://github.com/HankHuang0516/EClaw/commit/59cef387bd69ca99d7d15c86a1364856d3849ad8)), closes [#1a1a1a](https://github.com/HankHuang0516/EClaw/issues/1a1a1a)
* **gateway-ws:** drop Origin header on server-to-server WS upgrade ([#2869](https://github.com/HankHuang0516/EClaw/issues/2869)) ([716dcf9](https://github.com/HankHuang0516/EClaw/commit/716dcf9d0834b17522bb9d894bad84bc142d1a19))
* **setup-scripts:** drop Origin header on server-to-server WS upgrade ([#2875](https://github.com/HankHuang0516/EClaw/issues/2875)) ([9d893b8](https://github.com/HankHuang0516/EClaw/commit/9d893b8e5eea4db275e450bf423903c156cd3e4b)), closes [#2869](https://github.com/HankHuang0516/EClaw/issues/2869)
* **security:** escape innerHTML in chat modal error messages ([#2819](https://github.com/HankHuang0516/EClaw/issues/2819)) ([dce07ad](https://github.com/HankHuang0516/EClaw/commit/dce07adde64795916dba977ae23e46f3371ce7ed)), closes [#2809](https://github.com/HankHuang0516/EClaw/issues/2809) [#2810](https://github.com/HankHuang0516/EClaw/issues/2810) [#2809](https://github.com/HankHuang0516/EClaw/issues/2809) [#2810](https://github.com/HankHuang0516/EClaw/issues/2810)
* **proxy:** export repo auth to CLI child ([#2928](https://github.com/HankHuang0516/EClaw/issues/2928)) ([336a8ca](https://github.com/HankHuang0516/EClaw/commit/336a8caff4e3663287bd2948cf9fe6e04125cbc8))
* **entities:** expose botSecret to owner so wallpaper service can poll companions ([#2615](https://github.com/HankHuang0516/EClaw/issues/2615)) ([04470fc](https://github.com/HankHuang0516/EClaw/commit/04470fce8f8c3fce2b1ba8b243e776606f107502))
* **rental:** expose owner_public_code in marketplace so plaza CTA can route ([#2616](https://github.com/HankHuang0516/EClaw/issues/2616)) ([4d1372f](https://github.com/HankHuang0516/EClaw/commit/4d1372f717d93cab65543e87c852e74e9fb67071)), closes [#2610](https://github.com/HankHuang0516/EClaw/issues/2610)
* **mindmap:** fallback to device scope when entityId is null ([#2728](https://github.com/HankHuang0516/EClaw/issues/2728)) ([7572312](https://github.com/HankHuang0516/EClaw/commit/7572312433d3d75fc245eda48a28919ce14bd927))
* **i18n:** fill 11 missing zh keys post-[#2920](https://github.com/HankHuang0516/EClaw/issues/2920)/[#2921](https://github.com/HankHuang0516/EClaw/issues/2921) (card_de6970) ([#2924](https://github.com/HankHuang0516/EClaw/issues/2924)) ([17c4899](https://github.com/HankHuang0516/EClaw/commit/17c48996489b1444d6ed589027acfa7986178fe1)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** fill backend runtime locale gaps ([#2921](https://github.com/HankHuang0516/EClaw/issues/2921)) ([00d96ff](https://github.com/HankHuang0516/EClaw/commit/00d96ff261b8134b49292623e1f786fd544144cc))
* **i18n:** fill Spanish drift keys ([#2751](https://github.com/HankHuang0516/EClaw/issues/2751)) ([0ad0ee5](https://github.com/HankHuang0516/EClaw/commit/0ad0ee55f7fac3e6ac46d891539950dab4d553cc))
* **portal:** fit embedded org chart to mobile viewport ([#2674](https://github.com/HankHuang0516/EClaw/issues/2674)) ([1c4e1b4](https://github.com/HankHuang0516/EClaw/commit/1c4e1b413ea7027b4cd4b8ecda981b0d0e12e66b))
* **i18n:** fix 6 trailing-comma syntax errors in 10-locale batch ([#2771](https://github.com/HankHuang0516/EClaw/issues/2771)) ([b27c6ca](https://github.com/HankHuang0516/EClaw/commit/b27c6ca204bf813e406c54ce3a2532a5f1f031b3))
* **kanban:** GET card returns latest 50 comments + comments endpoint exposes total ([#2816](https://github.com/HankHuang0516/EClaw/issues/2816)) ([c4d83f7](https://github.com/HankHuang0516/EClaw/commit/c4d83f777a1cd26aea0936e4316aa35c52822eef))
* **sharechat:** guest verify-email modal + disabled Send for unverified ([#2865](https://github.com/HankHuang0516/EClaw/issues/2865)) ([cb3b061](https://github.com/HankHuang0516/EClaw/commit/cb3b0614e0f6160417d907753e66eceb2d666802))
* **portal:** H4 showcase i18n data-attrs + raw key leak ([#2935](https://github.com/HankHuang0516/EClaw/issues/2935)) ([80d8587](https://github.com/HankHuang0516/EClaw/commit/80d8587c00c03f72fdb9756b1093ee8e1e3d0842)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **uiux:** harden chat previews and roster preview ([#2769](https://github.com/HankHuang0516/EClaw/issues/2769)) ([466d4d3](https://github.com/HankHuang0516/EClaw/commit/466d4d3ef81c628d3f58db64323946053d7bf61c))
* **mention-parser:** ignore @-mentions inside markdown code spans ([#2645](https://github.com/HankHuang0516/EClaw/issues/2645)) ([8da19d4](https://github.com/HankHuang0516/EClaw/commit/8da19d4a79ceb4152bf2144ee0847c61ce3e1def)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **kanban:** lazy-load dependency chips via IntersectionObserver ([#2632](https://github.com/HankHuang0516/EClaw/issues/2632)) ([20586b4](https://github.com/HankHuang0516/EClaw/commit/20586b43357335f9eb6a190c02d58c8e36b58aba)), closes [#2631](https://github.com/HankHuang0516/EClaw/issues/2631)
* **i18n:** localize FCM NotificationChannel labels (card_ec8d3a22) ([#2918](https://github.com/HankHuang0516/EClaw/issues/2918)) ([591cd20](https://github.com/HankHuang0516/EClaw/commit/591cd206704693650a53d19d94c4cc75daf84ffd))
* **kanban:** make card sorting deterministic ([#2756](https://github.com/HankHuang0516/EClaw/issues/2756)) ([48e2117](https://github.com/HankHuang0516/EClaw/commit/48e2117b64e37f05dc635e0a3b67bfd43cbe48f5))
* **portal/nagoya-trip:** map-link invisible on dark hero/day-banner ([#2897](https://github.com/HankHuang0516/EClaw/issues/2897)) ([cc33df6](https://github.com/HankHuang0516/EClaw/commit/cc33df686673455c20beaee60871412a5d486e66)), closes [#1f4030](https://github.com/HankHuang0516/EClaw/issues/1f4030) [#8b8579](https://github.com/HankHuang0516/EClaw/issues/8b8579) [#6e6859](https://github.com/HankHuang0516/EClaw/issues/6e6859) [#7a5614](https://github.com/HankHuang0516/EClaw/issues/7a5614)
* **portal:** mobile delete-modal clipped right edge (P0) ([#2951](https://github.com/HankHuang0516/EClaw/issues/2951)) ([00418ca](https://github.com/HankHuang0516/EClaw/commit/00418ca812d5b757e35d12a9810b124f30491bbb))
* **org-chart:** notify affected bots on hierarchy change ([#2812](https://github.com/HankHuang0516/EClaw/issues/2812)) ([55675fd](https://github.com/HankHuang0516/EClaw/commit/55675fdf4487494d729a29524b32bd81b756a00c)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** notify reviewer on manual /move → review ([#2753](https://github.com/HankHuang0516/EClaw/issues/2753)) ([6cbbb4e](https://github.com/HankHuang0516/EClaw/commit/6cbbb4ee8c0d4d8ad54df2e9b5faaa3699bd530f))
* **wallpaper:** off-load spritesheet fetch to IO so per-petdx sprites actually render ([#2618](https://github.com/HankHuang0516/EClaw/issues/2618)) ([61b832c](https://github.com/HankHuang0516/EClaw/commit/61b832c9fa8a1d0caab810ccc942d85c63349267)), closes [#2615](https://github.com/HankHuang0516/EClaw/issues/2615) [#2577](https://github.com/HankHuang0516/EClaw/issues/2577)
* **security:** patch P0 sanitize-html XSS + P1 protobufjs + exam.html XSS ([#2829](https://github.com/HankHuang0516/EClaw/issues/2829)) ([c71b871](https://github.com/HankHuang0516/EClaw/commit/c71b871a045887375dd0d26d1a3280a0891a89ad))
* **security:** patch ws uninitialized memory disclosure (GHSA-58qx-3vcg-4xpx) ([#2872](https://github.com/HankHuang0516/EClaw/issues/2872)) ([2523d15](https://github.com/HankHuang0516/EClaw/commit/2523d154bbe501a7cc086340f7a07ece3abfa69b))
* **portal:** petdx-browser cookie-session fallback for device-login ([#2757](https://github.com/HankHuang0516/EClaw/issues/2757)) ([ca275f4](https://github.com/HankHuang0516/EClaw/commit/ca275f4519835da0c7ad71c588908a18f6f138d8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **api:** platform-stats 500 + entity/lookup publicCode alias ([#2809](https://github.com/HankHuang0516/EClaw/issues/2809), [#2810](https://github.com/HankHuang0516/EClaw/issues/2810)) ([#2818](https://github.com/HankHuang0516/EClaw/issues/2818)) ([f99fd17](https://github.com/HankHuang0516/EClaw/commit/f99fd17b2b1c32d88daa2510ff66d714c1a53edc))
* **i18n:** positional format specifiers for feedback_result_logs (7 locales) ([#2597](https://github.com/HankHuang0516/EClaw/issues/2597)) ([21aedc7](https://github.com/HankHuang0516/EClaw/commit/21aedc7eebc7a2839e340136f38dfdfd4dabb9dc))
* **avatar-petdx:** preserve descriptor across transient API failures (flicker) ([#2625](https://github.com/HankHuang0516/EClaw/issues/2625)) ([7b1c606](https://github.com/HankHuang0516/EClaw/commit/7b1c606514f7698d72ec95cf6c556e4043966186))
* **chat:** preserve recipient selection across rental-health refresh (P0 #card_eb1cba76) ([#2906](https://github.com/HankHuang0516/EClaw/issues/2906)) ([9cc0301](https://github.com/HankHuang0516/EClaw/commit/9cc0301cc26a0f49af4b7f53486f5c1a7cdd7902)), closes [#card_eb1cba76](https://github.com/HankHuang0516/EClaw/issues/card_eb1cba76) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **chat:** preserve scroll anchor while reading history ([#2693](https://github.com/HankHuang0516/EClaw/issues/2693)) ([945fdb7](https://github.com/HankHuang0516/EClaw/commit/945fdb7192b791b31882e1e75568dd8b11e4686f))
* **qa:** protect contact reads and refresh UX audits ([#2955](https://github.com/HankHuang0516/EClaw/issues/2955)) ([24dc2ec](https://github.com/HankHuang0516/EClaw/commit/24dc2ec5e2eb0b099d4231e440fd29e65ef83dc8))
* **promo:** pull video embed from /promo-chat-avatar.html ([#2724](https://github.com/HankHuang0516/EClaw/issues/2724)) ([2afabc8](https://github.com/HankHuang0516/EClaw/commit/2afabc8c5ff8b25218a7cb857e8adfa572c8e9d5))
* **dashboard:** read live.rate_limits.{five_hour,seven_day}.used_percentage ([#2895](https://github.com/HankHuang0516/EClaw/issues/2895)) ([8223303](https://github.com/HankHuang0516/EClaw/commit/822330312bccb1c76675ad2c3b26e78d10dd1298))
* **kanban:** realign stale recurring schedules ([#2785](https://github.com/HankHuang0516/EClaw/issues/2785)) ([ab8ee25](https://github.com/HankHuang0516/EClaw/commit/ab8ee250a9b37f3d3e838bb01d8866c8d2b78231))
* **i18n:** reapply de6970 locale gap translations ([#2925](https://github.com/HankHuang0516/EClaw/issues/2925)) ([d994dc1](https://github.com/HankHuang0516/EClaw/commit/d994dc1d240fef72326db2599262375ccbf29175))
* **portal:** reduce QA-discovered request fanout ([#2656](https://github.com/HankHuang0516/EClaw/issues/2656)) ([1e46d6b](https://github.com/HankHuang0516/EClaw/commit/1e46d6bab61e58c65b452b6503d953f8dddeee75))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **portal:** remove org chart fit scale floor ([#2676](https://github.com/HankHuang0516/EClaw/issues/2676)) ([0f01606](https://github.com/HankHuang0516/EClaw/commit/0f016068b963bb5f800a02f28817c7174979d913))
* **rental:** remove phantom 'webhook test push' step from BIND_COMPLETE ([#2864](https://github.com/HankHuang0516/EClaw/issues/2864)) ([47f4a3e](https://github.com/HankHuang0516/EClaw/commit/47f4a3edf76aa95ebd06d8713cd44fda6eef9b5d))
* **i18n:** rename mm_empty_title → mm_state_empty_title in mindmap.html ([#2683](https://github.com/HankHuang0516/EClaw/issues/2683)) ([c79c109](https://github.com/HankHuang0516/EClaw/commit/c79c109bea23142e8a6d9ace976d105af1280ec9))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **chat:** render mention avatars with companion renderer ([#2633](https://github.com/HankHuang0516/EClaw/issues/2633)) ([03e205f](https://github.com/HankHuang0516/EClaw/commit/03e205f663ecd2c2f443d4009dd5af0093f0bbbb))
* **kanban:** reserve mobile comments panel height ([#2782](https://github.com/HankHuang0516/EClaw/issues/2782)) ([ce8662d](https://github.com/HankHuang0516/EClaw/commit/ce8662d362422fdd25037f1deb61dbed9425e2f9))
* **channel:** restore handshake fallback to discovered sessions ([#2915](https://github.com/HankHuang0516/EClaw/issues/2915)) ([#2917](https://github.com/HankHuang0516/EClaw/issues/2917)) ([9d7d3a2](https://github.com/HankHuang0516/EClaw/commit/9d7d3a25654289998314dd5ca152cefdb8a4d64e)), closes [#2912](https://github.com/HankHuang0516/EClaw/issues/2912)
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* scheduled audit 2026-05-13 — 6 bugs, XSS, i18n ([#2668](https://github.com/HankHuang0516/EClaw/issues/2668)) ([21dd513](https://github.com/HankHuang0516/EClaw/commit/21dd513b4464738de29164265437435ba6cc4817)), closes [#2605](https://github.com/HankHuang0516/EClaw/issues/2605) [#2608](https://github.com/HankHuang0516/EClaw/issues/2608) [#2600](https://github.com/HankHuang0516/EClaw/issues/2600) [#2599](https://github.com/HankHuang0516/EClaw/issues/2599) [#2598](https://github.com/HankHuang0516/EClaw/issues/2598)
* **channel:** scope official bot sessions ([#2912](https://github.com/HankHuang0516/EClaw/issues/2912)) ([5c56b62](https://github.com/HankHuang0516/EClaw/commit/5c56b62c13b739b76f39e168a26bd4e5de2644fb))
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **dashboard:** show Claude weekly bar reset countdown ([#2896](https://github.com/HankHuang0516/EClaw/issues/2896)) ([3b87845](https://github.com/HankHuang0516/EClaw/commit/3b87845d713e980fec69f6b8007549338a326713)), closes [#2895](https://github.com/HankHuang0516/EClaw/issues/2895)
* **chat:** smart-chip preview falls back to inline c.comments when /comments fails (PR [#2677](https://github.com/HankHuang0516/EClaw/issues/2677)) ([7f4dffd](https://github.com/HankHuang0516/EClaw/commit/7f4dffd2c83ea86f296b8fa0610f0e67c9f1af11))
* **kanban:** stabilize comment detail viewport ([#2796](https://github.com/HankHuang0516/EClaw/issues/2796)) ([0a10aad](https://github.com/HankHuang0516/EClaw/commit/0a10aadb5a5b12ff23454c16d5c88183b94ad7d7))
* **wallpaper:** stop Android live wallpaper flashing default lobster on companion change ([#2629](https://github.com/HankHuang0516/EClaw/issues/2629)) ([8b4f66f](https://github.com/HankHuang0516/EClaw/commit/8b4f66fcb335bf43128f924b761b6337c817095b)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **chat:** stop chat.html bouncing to dashboard via /api/rental/health-status 401 race ([#2833](https://github.com/HankHuang0516/EClaw/issues/2833)) ([c422406](https://github.com/HankHuang0516/EClaw/commit/c4224067cdcfe7f3e22ab95007c7563dac4196ac))
* **openclaw-channel:** support OpenClaw 2026.5.20 ([8045de6](https://github.com/HankHuang0516/EClaw/commit/8045de6bebecfc05f9bd57453b99c098ca35681b))
* **mentions:** support same-device CJK display-name tags ([#2874](https://github.com/HankHuang0516/EClaw/issues/2874)) ([b8f61be](https://github.com/HankHuang0516/EClaw/commit/b8f61be9a3962fef75dd32ea34e8900880dafaf9))
* **channel:** suppress operational A2A loop messages (rebase of [#2288](https://github.com/HankHuang0516/EClaw/issues/2288)) ([#2930](https://github.com/HankHuang0516/EClaw/issues/2930)) ([7ceabc9](https://github.com/HankHuang0516/EClaw/commit/7ceabc915df22123cb46ae1500e2eb2e279250af))
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **dashboard:** use sessions[].project for widget Projects list (was .project_id) ([#2894](https://github.com/HankHuang0516/EClaw/issues/2894)) ([0fd1334](https://github.com/HankHuang0516/EClaw/commit/0fd1334897d4a603cc6eb74f34b48606547e09cf))
* **app:** WebView pages honor app-selected locale via ?lang= URL param ([#2672](https://github.com/HankHuang0516/EClaw/issues/2672)) ([8ed8757](https://github.com/HankHuang0516/EClaw/commit/8ed8757aec5bf214e837cc0d81bf2b23f1993a91)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **share-chat:** wire rich CTA actions to msgInput ([#2867](https://github.com/HankHuang0516/EClaw/issues/2867)) ([df23b11](https://github.com/HankHuang0516/EClaw/commit/df23b1147d34c59a644a145bbd87c18b96400acc))


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* **usage-api:** /api/usage/{snapshot,timeline} + usage_snapshots table (Plan B Phase 1) ([#2889](https://github.com/HankHuang0516/EClaw/issues/2889)) ([a0d859c](https://github.com/HankHuang0516/EClaw/commit/a0d859c63f0220909dadb2b1952174861ccdce14))
* **community:** 1-click chat button on bot cards + utm tagging ([#2610](https://github.com/HankHuang0516/EClaw/issues/2610)) ([eee97b0](https://github.com/HankHuang0516/EClaw/commit/eee97b0e2e4e74945ec24f218a69a52800b97a66))
* **chat:** accept ?messageId= as deep-link alias ([#2838](https://github.com/HankHuang0516/EClaw/issues/2838)) ([1785a87](https://github.com/HankHuang0516/EClaw/commit/1785a87310426637fd10df83754fb9924c45207f))
* **chat:** add avatar size preference ([#2714](https://github.com/HankHuang0516/EClaw/issues/2714)) ([6fe164a](https://github.com/HankHuang0516/EClaw/commit/6fe164ad8b22fa576d2dd9ad37c0d9fc295b5a83))
* **version:** add build_hash and build_time to /api/version ([#2959](https://github.com/HankHuang0516/EClaw/issues/2959)) ([e1f17f0](https://github.com/HankHuang0516/EClaw/commit/e1f17f0c03f507b72cd03f7a7a16b046348634ee))
* **dashboard:** add Claude and Codex channel guides ([#2640](https://github.com/HankHuang0516/EClaw/issues/2640)) ([c64e4c4](https://github.com/HankHuang0516/EClaw/commit/c64e4c4afc78db58c5cd578f00486dd7b2fd3311))
* **dashboard:** add Claude Code channel guide card ([#2667](https://github.com/HankHuang0516/EClaw/issues/2667)) ([d70d75c](https://github.com/HankHuang0516/EClaw/commit/d70d75c0c8caa8a540358a9aab4556b8c1927a5c))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* **api:** add DELETE /api/entity/queue to clear messageQueue ([#616](https://github.com/HankHuang0516/EClaw/issues/616)) ([16ee3ff](https://github.com/HankHuang0516/EClaw/commit/16ee3ff1c6aa7f8ef187e54e5e7169f2e44f7395))
* **kanban:** add device-scoped card tags ([#2773](https://github.com/HankHuang0516/EClaw/issues/2773)) ([53a387e](https://github.com/HankHuang0516/EClaw/commit/53a387e67ba7bb4f6bed1c427000c4ae8666577a))
* **portal:** add entity selector to petdx-browser ([#2602](https://github.com/HankHuang0516/EClaw/issues/2602)) ([3fa067e](https://github.com/HankHuang0516/EClaw/commit/3fa067e00b38829b48a37cecd33ee81a9a1122d9))
* **kanban:** add explicit card links ([#2721](https://github.com/HankHuang0516/EClaw/issues/2721)) ([ef9f812](https://github.com/HankHuang0516/EClaw/commit/ef9f812a3fcf39efd07fd158ce90951bdd045ac7))
* **kanban:** add explicit done-card reopen flow ([#2801](https://github.com/HankHuang0516/EClaw/issues/2801)) ([5080aac](https://github.com/HankHuang0516/EClaw/commit/5080aacb75047c0deaa379ee708ec85465afd57c))
* **mindmap:** add GET /api/mindmap/graph force-graph projection ([#2680](https://github.com/HankHuang0516/EClaw/issues/2680)) ([a00b2e7](https://github.com/HankHuang0516/EClaw/commit/a00b2e775af2c4c98cd157f760ad87aeeee469f0)), closes [#2679](https://github.com/HankHuang0516/EClaw/issues/2679) [#2679](https://github.com/HankHuang0516/EClaw/issues/2679)
* **dashboard:** add Hermes channel promo card ([#2708](https://github.com/HankHuang0516/EClaw/issues/2708)) ([337aca1](https://github.com/HankHuang0516/EClaw/commit/337aca153d5a1cd7e888c065f00ae54db7872d91))
* **rental:** add listing soft pause ([#2781](https://github.com/HankHuang0516/EClaw/issues/2781)) ([6586b72](https://github.com/HankHuang0516/EClaw/commit/6586b72717ddb1637d91cd3242c8d2ff554f62b4))
* **portal:** add Nagoya 5D4N trip static cross-ref page ([#2689](https://github.com/HankHuang0516/EClaw/issues/2689)) ([2e0efb6](https://github.com/HankHuang0516/EClaw/commit/2e0efb6dcdaff52226cc8854a96747000b12bdff))
* **portal:** add Nagoya image atlas static page ([#2743](https://github.com/HankHuang0516/EClaw/issues/2743)) ([ac026e9](https://github.com/HankHuang0516/EClaw/commit/ac026e9fd2c92ac9437d01edddffc9adf972f6ba))
* **portal:** add Nagoya trip map links and image lightbox ([#2821](https://github.com/HankHuang0516/EClaw/issues/2821)) ([3e40955](https://github.com/HankHuang0516/EClaw/commit/3e40955650a05f45a6b9f7e39e73847705424a03))
* **portal/nagoya:** add parking shortcut buttons next to itinerary places ([#2826](https://github.com/HankHuang0516/EClaw/issues/2826)) ([63968c5](https://github.com/HankHuang0516/EClaw/commit/63968c554d046afc8d978de74e3aacbf7700500d))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **settings:** add rental roster management preview ([#2758](https://github.com/HankHuang0516/EClaw/issues/2758)) ([9706e59](https://github.com/HankHuang0516/EClaw/commit/9706e59ded140a90a6e02348124282bc69d89001))
* **rental:** add renter health chat indicator ([#2690](https://github.com/HankHuang0516/EClaw/issues/2690)) ([36cd2e9](https://github.com/HankHuang0516/EClaw/commit/36cd2e9802be4c7ebb03d3024617fa74aca48ffd))
* **ios:** add Tutorial & Intro entry in Settings ([#2800](https://github.com/HankHuang0516/EClaw/issues/2800)) ([ed83e51](https://github.com/HankHuang0516/EClaw/commit/ed83e51d043bf4cd5865f38dc95a91ed54820d6c))
* **landing:** add Watch Full Demo CTA below hero video ([#2799](https://github.com/HankHuang0516/EClaw/issues/2799)) ([66107c9](https://github.com/HankHuang0516/EClaw/commit/66107c954727551fd34d989a4674daaad9b63968))
* **footer:** add Watch Intro Video link in Info column ([#2798](https://github.com/HankHuang0516/EClaw/issues/2798)) ([d7c6d59](https://github.com/HankHuang0516/EClaw/commit/d7c6d596b69c6a5b257bf1f7a792a407ef9712ad))
* **i18n:** ar iter-2 — fill 623 missing keys against en source ([#2847](https://github.com/HankHuang0516/EClaw/issues/2847)) ([ee94a7a](https://github.com/HankHuang0516/EClaw/commit/ee94a7ae6812b5163efe4284ee4907ca32302f5c))
* **kanban:** backlog launch-gate flag to suppress L1/L2/L3 escalation ([#2855](https://github.com/HankHuang0516/EClaw/issues/2855)) ([cb8bf1b](https://github.com/HankHuang0516/EClaw/commit/cb8bf1bb6421f25214f65e129a8cadccc49cc266)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#4](https://github.com/HankHuang0516/EClaw/issues/4) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **companion:** bridge crafter-station/petdex gallery (1784 pets) ([#2601](https://github.com/HankHuang0516/EClaw/issues/2601)) ([2e245be](https://github.com/HankHuang0516/EClaw/commit/2e245bea6dd47ea7361b927d389188a3c23b6bb3))
* **promo:** chat avatar size feature landing page (self-hosted MP4) ([#2722](https://github.com/HankHuang0516/EClaw/issues/2722)) ([3852210](https://github.com/HankHuang0516/EClaw/commit/3852210d355704d018e3daca6b5f9512a011b210)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **kanban:** cron-spawn jitter + lane backpressure to prevent same-tick wedge ([#2791](https://github.com/HankHuang0516/EClaw/issues/2791)) ([9f414a7](https://github.com/HankHuang0516/EClaw/commit/9f414a731d6393672a0a4189c7b408c529ae5e12)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **portal:** dashboard usage widget — Claude/Codex 5h gauges + 24h chart (Plan B Phase 3) ([#2891](https://github.com/HankHuang0516/EClaw/issues/2891)) ([d18f373](https://github.com/HankHuang0516/EClaw/commit/d18f373857e4bd302437d6bda2a1e01871fbb1db))
* **portal:** dashboard usage widget v2 — Session/Weekly % bars + projects, no cost (Plan B Phase 3.1) ([#2893](https://github.com/HankHuang0516/EClaw/issues/2893)) ([4bc0dc7](https://github.com/HankHuang0516/EClaw/commit/4bc0dc744ed9d54dfd532ebac4b705c7f84ec0a6))
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **info:** embed 75s promo video on Quick Start tab ([#2795](https://github.com/HankHuang0516/EClaw/issues/2795)) ([86c3f70](https://github.com/HankHuang0516/EClaw/commit/86c3f709a95eebbee1241077b807880463f804b6))
* **promo:** embed daily eclaw video 2026-05-14 ([#2786](https://github.com/HankHuang0516/EClaw/issues/2786)) ([718a814](https://github.com/HankHuang0516/EClaw/commit/718a814ab16850bc2b33a1b303841e2c4378ecfa)), closes [#2782](https://github.com/HankHuang0516/EClaw/issues/2782) [#2693](https://github.com/HankHuang0516/EClaw/issues/2693)
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **info:** embed promo video at top of Quick Start tab ([#2797](https://github.com/HankHuang0516/EClaw/issues/2797)) ([047679f](https://github.com/HankHuang0516/EClaw/commit/047679fd57ab9949eaeacea414d5611e71afe041))
* **rental:** enforce strict rebind refunds ([#2703](https://github.com/HankHuang0516/EClaw/issues/2703)) ([a1859c5](https://github.com/HankHuang0516/EClaw/commit/a1859c50e6fb3991d7a8051491502d824a14a116))
* **portal:** group task chip actions ([#2825](https://github.com/HankHuang0516/EClaw/issues/2825)) ([5db5c59](https://github.com/HankHuang0516/EClaw/commit/5db5c59b32b8635f1412205faf0c2f9164d3d5d4))
* **hermes:** H2 health-check cron + 7d SLA + commander alerts (card_07891ac) ([#2922](https://github.com/HankHuang0516/EClaw/issues/2922)) ([82b4315](https://github.com/HankHuang0516/EClaw/commit/82b4315aea234493e3d1889dc53958c2f1d842e0)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **portal:** info-guide-rules + info-guide-soul slide pair ([#2793](https://github.com/HankHuang0516/EClaw/issues/2793)) ([1c8bddc](https://github.com/HankHuang0516/EClaw/commit/1c8bddc4c185054b2b60088498e3d45509117127)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **chat:** link card previews to kanban ([#2754](https://github.com/HankHuang0516/EClaw/issues/2754)) ([2261240](https://github.com/HankHuang0516/EClaw/commit/22612402c2e95efb07246629e81a849be41ee9c7))
* **mission:** link notes to kanban cards ([#2723](https://github.com/HankHuang0516/EClaw/issues/2723)) ([b36dc18](https://github.com/HankHuang0516/EClaw/commit/b36dc18f3a8facf12e0b6046351c222f1e99dc55))
* **usage-daemon:** macOS launchd daemon polls Claude/Codex usage → POST /api/usage/snapshot (Plan B Phase 2) ([#2890](https://github.com/HankHuang0516/EClaw/issues/2890)) ([fd225e1](https://github.com/HankHuang0516/EClaw/commit/fd225e12d9491037be1a340bd63b54b5f3308c7f))
* **mindmap:** mission.html link to /portal/mindmap.html + deprecate /api/mission/mindmap ([#2685](https://github.com/HankHuang0516/EClaw/issues/2685)) ([11e297b](https://github.com/HankHuang0516/EClaw/commit/11e297bab1c9b56fcde3027d6500b7c58891bf18)), closes [#2680](https://github.com/HankHuang0516/EClaw/issues/2680) [#2684](https://github.com/HankHuang0516/EClaw/issues/2684)
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **portal:** nagoya trip interactive map (Leaflet + OSM, no API key) ([#2888](https://github.com/HankHuang0516/EClaw/issues/2888)) ([ecfdac0](https://github.com/HankHuang0516/EClaw/commit/ecfdac06348c12ee7c6872c6c28d5f82162e7aa9))
* **android:** native tab navigation bridge for portal pages ([#2832](https://github.com/HankHuang0516/EClaw/issues/2832)) ([7e02e6f](https://github.com/HankHuang0516/EClaw/commit/7e02e6f225014e64f08f55035d7b9e5727873343)), closes [#2824](https://github.com/HankHuang0516/EClaw/issues/2824) [#2743](https://github.com/HankHuang0516/EClaw/issues/2743) [#2821](https://github.com/HankHuang0516/EClaw/issues/2821) [#2826](https://github.com/HankHuang0516/EClaw/issues/2826) [#2797](https://github.com/HankHuang0516/EClaw/issues/2797) [#2798](https://github.com/HankHuang0516/EClaw/issues/2798) [#2799](https://github.com/HankHuang0516/EClaw/issues/2799) [#2800](https://github.com/HankHuang0516/EClaw/issues/2800) [#2801](https://github.com/HankHuang0516/EClaw/issues/2801) [#2816](https://github.com/HankHuang0516/EClaw/issues/2816) [#2796](https://github.com/HankHuang0516/EClaw/issues/2796) [#2825](https://github.com/HankHuang0516/EClaw/issues/2825) [#2812](https://github.com/HankHuang0516/EClaw/issues/2812) [#2813](https://github.com/HankHuang0516/EClaw/issues/2813) [#2814](https://github.com/HankHuang0516/EClaw/issues/2814) [#2815](https://github.com/HankHuang0516/EClaw/issues/2815) [#2811](https://github.com/HankHuang0516/EClaw/issues/2811) [#2807](https://github.com/HankHuang0516/EClaw/issues/2807) [#2808](https://github.com/HankHuang0516/EClaw/issues/2808) [#2818](https://github.com/HankHuang0516/EClaw/issues/2818) [#2819](https://github.com/HankHuang0516/EClaw/issues/2819) [#2824](https://github.com/HankHuang0516/EClaw/issues/2824)
* **channel:** outbound backpressure (30/min cap + 429 retry-after) ([#2911](https://github.com/HankHuang0516/EClaw/issues/2911)) ([36dc99c](https://github.com/HankHuang0516/EClaw/commit/36dc99ca78b0e1724a2aaefb5936669077b7a28f))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **ai-support:** pass per-request caller creds to claude-cli-proxy /chat (H3 Phase 2) ([#2947](https://github.com/HankHuang0516/EClaw/issues/2947)) ([1f5378b](https://github.com/HankHuang0516/EClaw/commit/1f5378b9e01d4e650005c338bf81f1ef43535624)), closes [#2937](https://github.com/HankHuang0516/EClaw/issues/2937)
* **settings:** per-entity nudge override UI (Phase 2) ([#2837](https://github.com/HankHuang0516/EClaw/issues/2837)) ([ea7662b](https://github.com/HankHuang0516/EClaw/commit/ea7662b0858882dae461e1387f711895924f9ab8)), closes [3/#4](https://github.com/HankHuang0516/EClaw/issues/4)
* **kanban:** per-entity nudge overrides (Phase 2 of card_e066cb6b) ([#2836](https://github.com/HankHuang0516/EClaw/issues/2836)) ([0425f80](https://github.com/HankHuang0516/EClaw/commit/0425f80bc1169c0d506b665659c8676695c45553))
* **avatar:** petdx render on card-holder my-cards (Phase 1b) ([#2621](https://github.com/HankHuang0516/EClaw/issues/2621)) ([f78ba8b](https://github.com/HankHuang0516/EClaw/commit/f78ba8b18acc426936ab6d8a82ca7541effea00d))
* **avatar:** petdx render on dashboard entity grid / org chart / bindings (Phase 1b) ([#2622](https://github.com/HankHuang0516/EClaw/issues/2622)) ([f417749](https://github.com/HankHuang0516/EClaw/commit/f41774914451048e8cd76e9ae30416a0642e173b)), closes [#2620](https://github.com/HankHuang0516/EClaw/issues/2620) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621)
* **avatar:** petdx render on kanban auto-assign / pulse / comment avatars (Phase 1b) ([#2624](https://github.com/HankHuang0516/EClaw/issues/2624)) ([6bff5f8](https://github.com/HankHuang0516/EClaw/commit/6bff5f80440d0bd91a6b1721cde9478d685c4d46))
* **avatar:** petdx render on mission skill/rule/soul entity dialogs (Phase 1b) ([#2623](https://github.com/HankHuang0516/EClaw/issues/2623)) ([129327b](https://github.com/HankHuang0516/EClaw/commit/129327bc7b91056659f1ab7e8d5e3f5260d951fb))
* **mindmap:** portal/mindmap.html force-graph prototype ([#129](https://github.com/HankHuang0516/EClaw/issues/129)) ([#2681](https://github.com/HankHuang0516/EClaw/issues/2681)) ([0f15e69](https://github.com/HankHuang0516/EClaw/commit/0f15e6930f0697c37fa08f3219edb8f9e499837f)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **channel:** record delivery receipts ([#2913](https://github.com/HankHuang0516/EClaw/issues/2913)) ([90c671b](https://github.com/HankHuang0516/EClaw/commit/90c671bd1970ab51584b90e2b634484ec10cc7ae))
* **portal:** redo nagoya trip page in professional tour-guide style ([#2691](https://github.com/HankHuang0516/EClaw/issues/2691)) ([b2378c0](https://github.com/HankHuang0516/EClaw/commit/b2378c06ee20fa9cccfdceceb1a4c9e0b3072f59))
* **i18n:** remove ms+hi orphan keys from i18n.js ([#2849](https://github.com/HankHuang0516/EClaw/issues/2849)) ([320176c](https://github.com/HankHuang0516/EClaw/commit/320176c06a3cfd8631e2a82ad02a6bd6a9af0389))
* **avatar:** render selected petdx companion in chat avatars ([#2620](https://github.com/HankHuang0516/EClaw/issues/2620)) ([0bdd046](https://github.com/HankHuang0516/EClaw/commit/0bdd046fe1b1c428e32edda366ff112c08927f4c))
* **home:** replace native home with WebView hosting dashboard.html ([#2634](https://github.com/HankHuang0516/EClaw/issues/2634)) ([e69ea81](https://github.com/HankHuang0516/EClaw/commit/e69ea8160c239b083a83d6dc83a4f1c3f901c863))
* **app:** route chat mission jumps through native tabs ([#2824](https://github.com/HankHuang0516/EClaw/issues/2824)) ([deb07b6](https://github.com/HankHuang0516/EClaw/commit/deb07b69a9ecca632fe27278de537f1d85234e94))
* **portal:** scaffold /portal/bot/:id/about backstory page (IP P1) ([#2938](https://github.com/HankHuang0516/EClaw/issues/2938)) ([96d6ca5](https://github.com/HankHuang0516/EClaw/commit/96d6ca506d611e2f9be03d50f76983457277f209))
* **proxy:** scope private repo git auth ([#2926](https://github.com/HankHuang0516/EClaw/issues/2926)) ([246f7ff](https://github.com/HankHuang0516/EClaw/commit/246f7ff1dedaf7bece9e3cb9eb24d0ab32ebb393))
* **android:** show usage on live wallpaper ([3f5698f](https://github.com/HankHuang0516/EClaw/commit/3f5698f5ecdae47129c2e4cf4a4296c6a3ab6659))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **chat:** support message deep links ([#2719](https://github.com/HankHuang0516/EClaw/issues/2719)) ([2dc0f1e](https://github.com/HankHuang0516/EClaw/commit/2dc0f1eeb259e1a0848db4a03186b989372cd91c))
* **mission:** support note deep links ([#2717](https://github.com/HankHuang0516/EClaw/issues/2717)) ([2efd3a5](https://github.com/HankHuang0516/EClaw/commit/2efd3a5e741217a07c0b0ac54a0ddd010e0ebe23))
* **share-chat:** twitter card + per-bot og:image/twitter:* in SSR ([#2609](https://github.com/HankHuang0516/EClaw/issues/2609)) ([6cdc853](https://github.com/HankHuang0516/EClaw/commit/6cdc853dc884cdb95bd47214942768981f218ae0))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))
* **settings:** wire petdx avatar into channel-account chips ([#2626](https://github.com/HankHuang0516/EClaw/issues/2626)) ([88aec77](https://github.com/HankHuang0516/EClaw/commit/88aec772628c240e97b336bb5820892ad632d1ae))
* **files:** wire petdx avatar into entity filter & per-file badges ([#2627](https://github.com/HankHuang0516/EClaw/issues/2627)) ([5b3e5cc](https://github.com/HankHuang0516/EClaw/commit/5b3e5cc542d9da69bb4e92500fd03a542ea33f00))
* **mindmap:** wrap hardcoded zh-TW UI strings with i18n t() ([#2607](https://github.com/HankHuang0516/EClaw/issues/2607)) ([166af87](https://github.com/HankHuang0516/EClaw/commit/166af8772b2121a24aaf34a83b3de970e9b3b571)), closes [#2606](https://github.com/HankHuang0516/EClaw/issues/2606)
* **i18n:** zh-TW backfill 8 keys (soft-pause + chat + invite + wallet) ([#2815](https://github.com/HankHuang0516/EClaw/issues/2815)) ([a2dd574](https://github.com/HankHuang0516/EClaw/commit/a2dd5743ce8d43a4b6ace9a2fd4b52568180d6c5))


### Performance Improvements

* **mindmap:** force-graph hardening for 1000/2000-node graphs ([#2684](https://github.com/HankHuang0516/EClaw/issues/2684)) ([da8b1c8](https://github.com/HankHuang0516/EClaw/commit/da8b1c8f947ab8bc8fa455c1962a91146623a1fc))


### Reverts

* Revert "feat(telegram): long-poll adapter PoC (card_406e612942ff062a06fc47be) ([#2238](https://github.com/HankHuang0516/EClaw/issues/2238))" ([#2239](https://github.com/HankHuang0516/EClaw/issues/2239)) ([eb7aa92](https://github.com/HankHuang0516/EClaw/commit/eb7aa92cce454b4a1a22654a2d133cdebe78c2bd))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-26)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **channel:** ack healthchecks before agent dispatch ([f463a5a](https://github.com/HankHuang0516/EClaw/commit/f463a5ad2971568fc6612734a783cd280076476c))
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **notifications:** add kanban_done + kanban_done_auto toggles to Android Settings ([#2636](https://github.com/HankHuang0516/EClaw/issues/2636)) ([a710909](https://github.com/HankHuang0516/EClaw/commit/a7109095e3393b8564e7ef1b23d382a4fbb944b8))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **api:** align /api/platform-stats skill-doc with device-auth contract (card_49b8190) ([#2916](https://github.com/HankHuang0516/EClaw/issues/2916)) ([ee55b2f](https://github.com/HankHuang0516/EClaw/commit/ee55b2fdbfbcd4bead5501d16ee66339056c32d7))
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **i18n:** ar block — fix 27 broken entries (CJK leaks + truncated HTML) ([#2851](https://github.com/HankHuang0516/EClaw/issues/2851)) ([5b19175](https://github.com/HankHuang0516/EClaw/commit/5b19175d712d00d16fcec00b749035c4beae7a5c))
* **chat:** atomic-load target bar (await contacts before first render) ([#2831](https://github.com/HankHuang0516/EClaw/issues/2831)) ([5f529e6](https://github.com/HankHuang0516/EClaw/commit/5f529e6b772eacc38ba1de69b44258a05f0d816a)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2](https://github.com/HankHuang0516/EClaw/issues/2)
* **channel:** await binding persistence ([712516d](https://github.com/HankHuang0516/EClaw/commit/712516decafb745035bd1434a28cc1973d433e19))
* **rental:** bump handshake timeout to 60s + timeout-aware discovery fallback ([#2863](https://github.com/HankHuang0516/EClaw/issues/2863)) ([fd4322f](https://github.com/HankHuang0516/EClaw/commit/fd4322f8890f3c2dfca3acdae6a4b95f19c381f9)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **chat:** carry kanban message deep-links ([#2946](https://github.com/HankHuang0516/EClaw/issues/2946)) ([971e2d2](https://github.com/HankHuang0516/EClaw/commit/971e2d27aeb212660901c8707cf418b7b1411286))
* **i18n:** clear batch 1 residual missing keys ([#2790](https://github.com/HankHuang0516/EClaw/issues/2790)) ([211030e](https://github.com/HankHuang0516/EClaw/commit/211030e0b0b6a865c11f0c4ed60dc4e356d43b7a))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **kanban:** comment input no longer overlaps last comment in card detail (PR [#2678](https://github.com/HankHuang0516/EClaw/issues/2678)) ([fba91fc](https://github.com/HankHuang0516/EClaw/commit/fba91fca15402b453a0db5ee857c0b16e6087055))
* **chat:** compact 20px avatar in target bar (App WebView only shows [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2](https://github.com/HankHuang0516/EClaw/issues/2)) ([#2830](https://github.com/HankHuang0516/EClaw/issues/2830)) ([42c7543](https://github.com/HankHuang0516/EClaw/commit/42c7543b4a78a7abf3f5f7535eb9bc6142cd0fe2)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **portal:** complete 401 redirect sweep + mobile UIUX truncation ([#2842](https://github.com/HankHuang0516/EClaw/issues/2842)) ([f9799ba](https://github.com/HankHuang0516/EClaw/commit/f9799ba42498b109f0a8a70e80836aa6da51e216)), closes [#2833](https://github.com/HankHuang0516/EClaw/issues/2833) [#2845](https://github.com/HankHuang0516/EClaw/issues/2845) [#2844](https://github.com/HankHuang0516/EClaw/issues/2844) [#2843](https://github.com/HankHuang0516/EClaw/issues/2843)
* **uiux:** continue qa mobile readability sweep ([#2854](https://github.com/HankHuang0516/EClaw/issues/2854)) ([57606ff](https://github.com/HankHuang0516/EClaw/commit/57606ffe3e543b07a026aacc53c4b470c9a7825b))
* **i18n:** cover dynamic portal wrapper keys ([#2807](https://github.com/HankHuang0516/EClaw/issues/2807)) ([4c711cc](https://github.com/HankHuang0516/EClaw/commit/4c711cc4009300ffe4e8933a98ee01cd0fdd6aeb))
* **i18n:** dedup 20 dash_channel_card_* keys in es block ([#2876](https://github.com/HankHuang0516/EClaw/issues/2876)) ([807284c](https://github.com/HankHuang0516/EClaw/commit/807284ce363ef119ccdb0ae40e5ce99d3f0a27e0))
* **i18n:** dedupe backend locale keys via AST ([#2920](https://github.com/HankHuang0516/EClaw/issues/2920)) ([40ef114](https://github.com/HankHuang0516/EClaw/commit/40ef11414c8b836fe1ed93ec06c839df3a1bf7b9))
* **i18n:** dedupe zh locale keys ([#2919](https://github.com/HankHuang0516/EClaw/issues/2919)) ([afd2cca](https://github.com/HankHuang0516/EClaw/commit/afd2cca8086c2f2df0d04c9c5f8c58733652875e))
* **test:** delegate root test and remove invalid jest option ([#2292](https://github.com/HankHuang0516/EClaw/issues/2292)) ([65bf2f8](https://github.com/HankHuang0516/EClaw/commit/65bf2f83d26d925097cd380ab73b04ab2db49842))
* **kanban:** dep-aware nudge gating + roadmap dependency backfill ([#2904](https://github.com/HankHuang0516/EClaw/issues/2904)) ([2b76ac9](https://github.com/HankHuang0516/EClaw/commit/2b76ac9d3b7e4169b7bc3c6f6b0b0903b63cd9f7)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **rental:** don't pollute entity.message on push gateway timeout ([#2860](https://github.com/HankHuang0516/EClaw/issues/2860)) ([592ba44](https://github.com/HankHuang0516/EClaw/commit/592ba44f57536ee00011b6cbddaa6b129a7cbae9))
* **petdx:** drop dark-grey loading placeholder + preload sprite WEBP ([#2628](https://github.com/HankHuang0516/EClaw/issues/2628)) ([59cef38](https://github.com/HankHuang0516/EClaw/commit/59cef387bd69ca99d7d15c86a1364856d3849ad8)), closes [#1a1a1a](https://github.com/HankHuang0516/EClaw/issues/1a1a1a)
* **gateway-ws:** drop Origin header on server-to-server WS upgrade ([#2869](https://github.com/HankHuang0516/EClaw/issues/2869)) ([716dcf9](https://github.com/HankHuang0516/EClaw/commit/716dcf9d0834b17522bb9d894bad84bc142d1a19))
* **setup-scripts:** drop Origin header on server-to-server WS upgrade ([#2875](https://github.com/HankHuang0516/EClaw/issues/2875)) ([9d893b8](https://github.com/HankHuang0516/EClaw/commit/9d893b8e5eea4db275e450bf423903c156cd3e4b)), closes [#2869](https://github.com/HankHuang0516/EClaw/issues/2869)
* **security:** escape innerHTML in chat modal error messages ([#2819](https://github.com/HankHuang0516/EClaw/issues/2819)) ([dce07ad](https://github.com/HankHuang0516/EClaw/commit/dce07adde64795916dba977ae23e46f3371ce7ed)), closes [#2809](https://github.com/HankHuang0516/EClaw/issues/2809) [#2810](https://github.com/HankHuang0516/EClaw/issues/2810) [#2809](https://github.com/HankHuang0516/EClaw/issues/2809) [#2810](https://github.com/HankHuang0516/EClaw/issues/2810)
* **proxy:** export repo auth to CLI child ([#2928](https://github.com/HankHuang0516/EClaw/issues/2928)) ([336a8ca](https://github.com/HankHuang0516/EClaw/commit/336a8caff4e3663287bd2948cf9fe6e04125cbc8))
* **entities:** expose botSecret to owner so wallpaper service can poll companions ([#2615](https://github.com/HankHuang0516/EClaw/issues/2615)) ([04470fc](https://github.com/HankHuang0516/EClaw/commit/04470fce8f8c3fce2b1ba8b243e776606f107502))
* **rental:** expose owner_public_code in marketplace so plaza CTA can route ([#2616](https://github.com/HankHuang0516/EClaw/issues/2616)) ([4d1372f](https://github.com/HankHuang0516/EClaw/commit/4d1372f717d93cab65543e87c852e74e9fb67071)), closes [#2610](https://github.com/HankHuang0516/EClaw/issues/2610)
* **mindmap:** fallback to device scope when entityId is null ([#2728](https://github.com/HankHuang0516/EClaw/issues/2728)) ([7572312](https://github.com/HankHuang0516/EClaw/commit/7572312433d3d75fc245eda48a28919ce14bd927))
* **i18n:** fill 11 missing zh keys post-[#2920](https://github.com/HankHuang0516/EClaw/issues/2920)/[#2921](https://github.com/HankHuang0516/EClaw/issues/2921) (card_de6970) ([#2924](https://github.com/HankHuang0516/EClaw/issues/2924)) ([17c4899](https://github.com/HankHuang0516/EClaw/commit/17c48996489b1444d6ed589027acfa7986178fe1)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** fill backend runtime locale gaps ([#2921](https://github.com/HankHuang0516/EClaw/issues/2921)) ([00d96ff](https://github.com/HankHuang0516/EClaw/commit/00d96ff261b8134b49292623e1f786fd544144cc))
* **i18n:** fill Spanish drift keys ([#2751](https://github.com/HankHuang0516/EClaw/issues/2751)) ([0ad0ee5](https://github.com/HankHuang0516/EClaw/commit/0ad0ee55f7fac3e6ac46d891539950dab4d553cc))
* **portal:** fit embedded org chart to mobile viewport ([#2674](https://github.com/HankHuang0516/EClaw/issues/2674)) ([1c4e1b4](https://github.com/HankHuang0516/EClaw/commit/1c4e1b413ea7027b4cd4b8ecda981b0d0e12e66b))
* **i18n:** fix 6 trailing-comma syntax errors in 10-locale batch ([#2771](https://github.com/HankHuang0516/EClaw/issues/2771)) ([b27c6ca](https://github.com/HankHuang0516/EClaw/commit/b27c6ca204bf813e406c54ce3a2532a5f1f031b3))
* **kanban:** GET card returns latest 50 comments + comments endpoint exposes total ([#2816](https://github.com/HankHuang0516/EClaw/issues/2816)) ([c4d83f7](https://github.com/HankHuang0516/EClaw/commit/c4d83f777a1cd26aea0936e4316aa35c52822eef))
* **sharechat:** guest verify-email modal + disabled Send for unverified ([#2865](https://github.com/HankHuang0516/EClaw/issues/2865)) ([cb3b061](https://github.com/HankHuang0516/EClaw/commit/cb3b0614e0f6160417d907753e66eceb2d666802))
* **portal:** H4 showcase i18n data-attrs + raw key leak ([#2935](https://github.com/HankHuang0516/EClaw/issues/2935)) ([80d8587](https://github.com/HankHuang0516/EClaw/commit/80d8587c00c03f72fdb9756b1093ee8e1e3d0842)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **uiux:** harden chat previews and roster preview ([#2769](https://github.com/HankHuang0516/EClaw/issues/2769)) ([466d4d3](https://github.com/HankHuang0516/EClaw/commit/466d4d3ef81c628d3f58db64323946053d7bf61c))
* **mention-parser:** ignore @-mentions inside markdown code spans ([#2645](https://github.com/HankHuang0516/EClaw/issues/2645)) ([8da19d4](https://github.com/HankHuang0516/EClaw/commit/8da19d4a79ceb4152bf2144ee0847c61ce3e1def)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **kanban:** lazy-load dependency chips via IntersectionObserver ([#2632](https://github.com/HankHuang0516/EClaw/issues/2632)) ([20586b4](https://github.com/HankHuang0516/EClaw/commit/20586b43357335f9eb6a190c02d58c8e36b58aba)), closes [#2631](https://github.com/HankHuang0516/EClaw/issues/2631)
* **i18n:** localize FCM NotificationChannel labels (card_ec8d3a22) ([#2918](https://github.com/HankHuang0516/EClaw/issues/2918)) ([591cd20](https://github.com/HankHuang0516/EClaw/commit/591cd206704693650a53d19d94c4cc75daf84ffd))
* **kanban:** make card sorting deterministic ([#2756](https://github.com/HankHuang0516/EClaw/issues/2756)) ([48e2117](https://github.com/HankHuang0516/EClaw/commit/48e2117b64e37f05dc635e0a3b67bfd43cbe48f5))
* **portal/nagoya-trip:** map-link invisible on dark hero/day-banner ([#2897](https://github.com/HankHuang0516/EClaw/issues/2897)) ([cc33df6](https://github.com/HankHuang0516/EClaw/commit/cc33df686673455c20beaee60871412a5d486e66)), closes [#1f4030](https://github.com/HankHuang0516/EClaw/issues/1f4030) [#8b8579](https://github.com/HankHuang0516/EClaw/issues/8b8579) [#6e6859](https://github.com/HankHuang0516/EClaw/issues/6e6859) [#7a5614](https://github.com/HankHuang0516/EClaw/issues/7a5614)
* **portal:** mobile delete-modal clipped right edge (P0) ([#2951](https://github.com/HankHuang0516/EClaw/issues/2951)) ([00418ca](https://github.com/HankHuang0516/EClaw/commit/00418ca812d5b757e35d12a9810b124f30491bbb))
* **org-chart:** notify affected bots on hierarchy change ([#2812](https://github.com/HankHuang0516/EClaw/issues/2812)) ([55675fd](https://github.com/HankHuang0516/EClaw/commit/55675fdf4487494d729a29524b32bd81b756a00c)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** notify reviewer on manual /move → review ([#2753](https://github.com/HankHuang0516/EClaw/issues/2753)) ([6cbbb4e](https://github.com/HankHuang0516/EClaw/commit/6cbbb4ee8c0d4d8ad54df2e9b5faaa3699bd530f))
* **wallpaper:** off-load spritesheet fetch to IO so per-petdx sprites actually render ([#2618](https://github.com/HankHuang0516/EClaw/issues/2618)) ([61b832c](https://github.com/HankHuang0516/EClaw/commit/61b832c9fa8a1d0caab810ccc942d85c63349267)), closes [#2615](https://github.com/HankHuang0516/EClaw/issues/2615) [#2577](https://github.com/HankHuang0516/EClaw/issues/2577)
* **security:** patch P0 sanitize-html XSS + P1 protobufjs + exam.html XSS ([#2829](https://github.com/HankHuang0516/EClaw/issues/2829)) ([c71b871](https://github.com/HankHuang0516/EClaw/commit/c71b871a045887375dd0d26d1a3280a0891a89ad))
* **security:** patch ws uninitialized memory disclosure (GHSA-58qx-3vcg-4xpx) ([#2872](https://github.com/HankHuang0516/EClaw/issues/2872)) ([2523d15](https://github.com/HankHuang0516/EClaw/commit/2523d154bbe501a7cc086340f7a07ece3abfa69b))
* **portal:** petdx-browser cookie-session fallback for device-login ([#2757](https://github.com/HankHuang0516/EClaw/issues/2757)) ([ca275f4](https://github.com/HankHuang0516/EClaw/commit/ca275f4519835da0c7ad71c588908a18f6f138d8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **api:** platform-stats 500 + entity/lookup publicCode alias ([#2809](https://github.com/HankHuang0516/EClaw/issues/2809), [#2810](https://github.com/HankHuang0516/EClaw/issues/2810)) ([#2818](https://github.com/HankHuang0516/EClaw/issues/2818)) ([f99fd17](https://github.com/HankHuang0516/EClaw/commit/f99fd17b2b1c32d88daa2510ff66d714c1a53edc))
* **i18n:** positional format specifiers for feedback_result_logs (7 locales) ([#2597](https://github.com/HankHuang0516/EClaw/issues/2597)) ([21aedc7](https://github.com/HankHuang0516/EClaw/commit/21aedc7eebc7a2839e340136f38dfdfd4dabb9dc))
* **avatar-petdx:** preserve descriptor across transient API failures (flicker) ([#2625](https://github.com/HankHuang0516/EClaw/issues/2625)) ([7b1c606](https://github.com/HankHuang0516/EClaw/commit/7b1c606514f7698d72ec95cf6c556e4043966186))
* **chat:** preserve recipient selection across rental-health refresh (P0 #card_eb1cba76) ([#2906](https://github.com/HankHuang0516/EClaw/issues/2906)) ([9cc0301](https://github.com/HankHuang0516/EClaw/commit/9cc0301cc26a0f49af4b7f53486f5c1a7cdd7902)), closes [#card_eb1cba76](https://github.com/HankHuang0516/EClaw/issues/card_eb1cba76) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **chat:** preserve scroll anchor while reading history ([#2693](https://github.com/HankHuang0516/EClaw/issues/2693)) ([945fdb7](https://github.com/HankHuang0516/EClaw/commit/945fdb7192b791b31882e1e75568dd8b11e4686f))
* **qa:** protect contact reads and refresh UX audits ([#2955](https://github.com/HankHuang0516/EClaw/issues/2955)) ([24dc2ec](https://github.com/HankHuang0516/EClaw/commit/24dc2ec5e2eb0b099d4231e440fd29e65ef83dc8))
* **promo:** pull video embed from /promo-chat-avatar.html ([#2724](https://github.com/HankHuang0516/EClaw/issues/2724)) ([2afabc8](https://github.com/HankHuang0516/EClaw/commit/2afabc8c5ff8b25218a7cb857e8adfa572c8e9d5))
* **dashboard:** read live.rate_limits.{five_hour,seven_day}.used_percentage ([#2895](https://github.com/HankHuang0516/EClaw/issues/2895)) ([8223303](https://github.com/HankHuang0516/EClaw/commit/822330312bccb1c76675ad2c3b26e78d10dd1298))
* **kanban:** realign stale recurring schedules ([#2785](https://github.com/HankHuang0516/EClaw/issues/2785)) ([ab8ee25](https://github.com/HankHuang0516/EClaw/commit/ab8ee250a9b37f3d3e838bb01d8866c8d2b78231))
* **i18n:** reapply de6970 locale gap translations ([#2925](https://github.com/HankHuang0516/EClaw/issues/2925)) ([d994dc1](https://github.com/HankHuang0516/EClaw/commit/d994dc1d240fef72326db2599262375ccbf29175))
* **portal:** reduce QA-discovered request fanout ([#2656](https://github.com/HankHuang0516/EClaw/issues/2656)) ([1e46d6b](https://github.com/HankHuang0516/EClaw/commit/1e46d6bab61e58c65b452b6503d953f8dddeee75))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **portal:** remove org chart fit scale floor ([#2676](https://github.com/HankHuang0516/EClaw/issues/2676)) ([0f01606](https://github.com/HankHuang0516/EClaw/commit/0f016068b963bb5f800a02f28817c7174979d913))
* **rental:** remove phantom 'webhook test push' step from BIND_COMPLETE ([#2864](https://github.com/HankHuang0516/EClaw/issues/2864)) ([47f4a3e](https://github.com/HankHuang0516/EClaw/commit/47f4a3edf76aa95ebd06d8713cd44fda6eef9b5d))
* **i18n:** rename mm_empty_title → mm_state_empty_title in mindmap.html ([#2683](https://github.com/HankHuang0516/EClaw/issues/2683)) ([c79c109](https://github.com/HankHuang0516/EClaw/commit/c79c109bea23142e8a6d9ace976d105af1280ec9))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **chat:** render mention avatars with companion renderer ([#2633](https://github.com/HankHuang0516/EClaw/issues/2633)) ([03e205f](https://github.com/HankHuang0516/EClaw/commit/03e205f663ecd2c2f443d4009dd5af0093f0bbbb))
* **kanban:** reserve mobile comments panel height ([#2782](https://github.com/HankHuang0516/EClaw/issues/2782)) ([ce8662d](https://github.com/HankHuang0516/EClaw/commit/ce8662d362422fdd25037f1deb61dbed9425e2f9))
* **channel:** restore handshake fallback to discovered sessions ([#2915](https://github.com/HankHuang0516/EClaw/issues/2915)) ([#2917](https://github.com/HankHuang0516/EClaw/issues/2917)) ([9d7d3a2](https://github.com/HankHuang0516/EClaw/commit/9d7d3a25654289998314dd5ca152cefdb8a4d64e)), closes [#2912](https://github.com/HankHuang0516/EClaw/issues/2912)
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* scheduled audit 2026-05-13 — 6 bugs, XSS, i18n ([#2668](https://github.com/HankHuang0516/EClaw/issues/2668)) ([21dd513](https://github.com/HankHuang0516/EClaw/commit/21dd513b4464738de29164265437435ba6cc4817)), closes [#2605](https://github.com/HankHuang0516/EClaw/issues/2605) [#2608](https://github.com/HankHuang0516/EClaw/issues/2608) [#2600](https://github.com/HankHuang0516/EClaw/issues/2600) [#2599](https://github.com/HankHuang0516/EClaw/issues/2599) [#2598](https://github.com/HankHuang0516/EClaw/issues/2598)
* **channel:** scope official bot sessions ([#2912](https://github.com/HankHuang0516/EClaw/issues/2912)) ([5c56b62](https://github.com/HankHuang0516/EClaw/commit/5c56b62c13b739b76f39e168a26bd4e5de2644fb))
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **dashboard:** show Claude weekly bar reset countdown ([#2896](https://github.com/HankHuang0516/EClaw/issues/2896)) ([3b87845](https://github.com/HankHuang0516/EClaw/commit/3b87845d713e980fec69f6b8007549338a326713)), closes [#2895](https://github.com/HankHuang0516/EClaw/issues/2895)
* **chat:** smart-chip preview falls back to inline c.comments when /comments fails (PR [#2677](https://github.com/HankHuang0516/EClaw/issues/2677)) ([7f4dffd](https://github.com/HankHuang0516/EClaw/commit/7f4dffd2c83ea86f296b8fa0610f0e67c9f1af11))
* **kanban:** stabilize comment detail viewport ([#2796](https://github.com/HankHuang0516/EClaw/issues/2796)) ([0a10aad](https://github.com/HankHuang0516/EClaw/commit/0a10aadb5a5b12ff23454c16d5c88183b94ad7d7))
* **wallpaper:** stop Android live wallpaper flashing default lobster on companion change ([#2629](https://github.com/HankHuang0516/EClaw/issues/2629)) ([8b4f66f](https://github.com/HankHuang0516/EClaw/commit/8b4f66fcb335bf43128f924b761b6337c817095b)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **chat:** stop chat.html bouncing to dashboard via /api/rental/health-status 401 race ([#2833](https://github.com/HankHuang0516/EClaw/issues/2833)) ([c422406](https://github.com/HankHuang0516/EClaw/commit/c4224067cdcfe7f3e22ab95007c7563dac4196ac))
* **openclaw-channel:** support OpenClaw 2026.5.20 ([8045de6](https://github.com/HankHuang0516/EClaw/commit/8045de6bebecfc05f9bd57453b99c098ca35681b))
* **mentions:** support same-device CJK display-name tags ([#2874](https://github.com/HankHuang0516/EClaw/issues/2874)) ([b8f61be](https://github.com/HankHuang0516/EClaw/commit/b8f61be9a3962fef75dd32ea34e8900880dafaf9))
* **channel:** suppress operational A2A loop messages (rebase of [#2288](https://github.com/HankHuang0516/EClaw/issues/2288)) ([#2930](https://github.com/HankHuang0516/EClaw/issues/2930)) ([7ceabc9](https://github.com/HankHuang0516/EClaw/commit/7ceabc915df22123cb46ae1500e2eb2e279250af))
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **dashboard:** use sessions[].project for widget Projects list (was .project_id) ([#2894](https://github.com/HankHuang0516/EClaw/issues/2894)) ([0fd1334](https://github.com/HankHuang0516/EClaw/commit/0fd1334897d4a603cc6eb74f34b48606547e09cf))
* **app:** WebView pages honor app-selected locale via ?lang= URL param ([#2672](https://github.com/HankHuang0516/EClaw/issues/2672)) ([8ed8757](https://github.com/HankHuang0516/EClaw/commit/8ed8757aec5bf214e837cc0d81bf2b23f1993a91)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **share-chat:** wire rich CTA actions to msgInput ([#2867](https://github.com/HankHuang0516/EClaw/issues/2867)) ([df23b11](https://github.com/HankHuang0516/EClaw/commit/df23b1147d34c59a644a145bbd87c18b96400acc))


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* **usage-api:** /api/usage/{snapshot,timeline} + usage_snapshots table (Plan B Phase 1) ([#2889](https://github.com/HankHuang0516/EClaw/issues/2889)) ([a0d859c](https://github.com/HankHuang0516/EClaw/commit/a0d859c63f0220909dadb2b1952174861ccdce14))
* **community:** 1-click chat button on bot cards + utm tagging ([#2610](https://github.com/HankHuang0516/EClaw/issues/2610)) ([eee97b0](https://github.com/HankHuang0516/EClaw/commit/eee97b0e2e4e74945ec24f218a69a52800b97a66))
* **chat:** accept ?messageId= as deep-link alias ([#2838](https://github.com/HankHuang0516/EClaw/issues/2838)) ([1785a87](https://github.com/HankHuang0516/EClaw/commit/1785a87310426637fd10df83754fb9924c45207f))
* **chat:** add avatar size preference ([#2714](https://github.com/HankHuang0516/EClaw/issues/2714)) ([6fe164a](https://github.com/HankHuang0516/EClaw/commit/6fe164ad8b22fa576d2dd9ad37c0d9fc295b5a83))
* **dashboard:** add Claude and Codex channel guides ([#2640](https://github.com/HankHuang0516/EClaw/issues/2640)) ([c64e4c4](https://github.com/HankHuang0516/EClaw/commit/c64e4c4afc78db58c5cd578f00486dd7b2fd3311))
* **dashboard:** add Claude Code channel guide card ([#2667](https://github.com/HankHuang0516/EClaw/issues/2667)) ([d70d75c](https://github.com/HankHuang0516/EClaw/commit/d70d75c0c8caa8a540358a9aab4556b8c1927a5c))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* **api:** add DELETE /api/entity/queue to clear messageQueue ([#616](https://github.com/HankHuang0516/EClaw/issues/616)) ([16ee3ff](https://github.com/HankHuang0516/EClaw/commit/16ee3ff1c6aa7f8ef187e54e5e7169f2e44f7395))
* **kanban:** add device-scoped card tags ([#2773](https://github.com/HankHuang0516/EClaw/issues/2773)) ([53a387e](https://github.com/HankHuang0516/EClaw/commit/53a387e67ba7bb4f6bed1c427000c4ae8666577a))
* **portal:** add entity selector to petdx-browser ([#2602](https://github.com/HankHuang0516/EClaw/issues/2602)) ([3fa067e](https://github.com/HankHuang0516/EClaw/commit/3fa067e00b38829b48a37cecd33ee81a9a1122d9))
* **kanban:** add explicit card links ([#2721](https://github.com/HankHuang0516/EClaw/issues/2721)) ([ef9f812](https://github.com/HankHuang0516/EClaw/commit/ef9f812a3fcf39efd07fd158ce90951bdd045ac7))
* **kanban:** add explicit done-card reopen flow ([#2801](https://github.com/HankHuang0516/EClaw/issues/2801)) ([5080aac](https://github.com/HankHuang0516/EClaw/commit/5080aacb75047c0deaa379ee708ec85465afd57c))
* **mindmap:** add GET /api/mindmap/graph force-graph projection ([#2680](https://github.com/HankHuang0516/EClaw/issues/2680)) ([a00b2e7](https://github.com/HankHuang0516/EClaw/commit/a00b2e775af2c4c98cd157f760ad87aeeee469f0)), closes [#2679](https://github.com/HankHuang0516/EClaw/issues/2679) [#2679](https://github.com/HankHuang0516/EClaw/issues/2679)
* **dashboard:** add Hermes channel promo card ([#2708](https://github.com/HankHuang0516/EClaw/issues/2708)) ([337aca1](https://github.com/HankHuang0516/EClaw/commit/337aca153d5a1cd7e888c065f00ae54db7872d91))
* **rental:** add listing soft pause ([#2781](https://github.com/HankHuang0516/EClaw/issues/2781)) ([6586b72](https://github.com/HankHuang0516/EClaw/commit/6586b72717ddb1637d91cd3242c8d2ff554f62b4))
* **portal:** add Nagoya 5D4N trip static cross-ref page ([#2689](https://github.com/HankHuang0516/EClaw/issues/2689)) ([2e0efb6](https://github.com/HankHuang0516/EClaw/commit/2e0efb6dcdaff52226cc8854a96747000b12bdff))
* **portal:** add Nagoya image atlas static page ([#2743](https://github.com/HankHuang0516/EClaw/issues/2743)) ([ac026e9](https://github.com/HankHuang0516/EClaw/commit/ac026e9fd2c92ac9437d01edddffc9adf972f6ba))
* **portal:** add Nagoya trip map links and image lightbox ([#2821](https://github.com/HankHuang0516/EClaw/issues/2821)) ([3e40955](https://github.com/HankHuang0516/EClaw/commit/3e40955650a05f45a6b9f7e39e73847705424a03))
* **portal/nagoya:** add parking shortcut buttons next to itinerary places ([#2826](https://github.com/HankHuang0516/EClaw/issues/2826)) ([63968c5](https://github.com/HankHuang0516/EClaw/commit/63968c554d046afc8d978de74e3aacbf7700500d))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **settings:** add rental roster management preview ([#2758](https://github.com/HankHuang0516/EClaw/issues/2758)) ([9706e59](https://github.com/HankHuang0516/EClaw/commit/9706e59ded140a90a6e02348124282bc69d89001))
* **rental:** add renter health chat indicator ([#2690](https://github.com/HankHuang0516/EClaw/issues/2690)) ([36cd2e9](https://github.com/HankHuang0516/EClaw/commit/36cd2e9802be4c7ebb03d3024617fa74aca48ffd))
* **ios:** add Tutorial & Intro entry in Settings ([#2800](https://github.com/HankHuang0516/EClaw/issues/2800)) ([ed83e51](https://github.com/HankHuang0516/EClaw/commit/ed83e51d043bf4cd5865f38dc95a91ed54820d6c))
* **landing:** add Watch Full Demo CTA below hero video ([#2799](https://github.com/HankHuang0516/EClaw/issues/2799)) ([66107c9](https://github.com/HankHuang0516/EClaw/commit/66107c954727551fd34d989a4674daaad9b63968))
* **footer:** add Watch Intro Video link in Info column ([#2798](https://github.com/HankHuang0516/EClaw/issues/2798)) ([d7c6d59](https://github.com/HankHuang0516/EClaw/commit/d7c6d596b69c6a5b257bf1f7a792a407ef9712ad))
* **i18n:** ar iter-2 — fill 623 missing keys against en source ([#2847](https://github.com/HankHuang0516/EClaw/issues/2847)) ([ee94a7a](https://github.com/HankHuang0516/EClaw/commit/ee94a7ae6812b5163efe4284ee4907ca32302f5c))
* **kanban:** backlog launch-gate flag to suppress L1/L2/L3 escalation ([#2855](https://github.com/HankHuang0516/EClaw/issues/2855)) ([cb8bf1b](https://github.com/HankHuang0516/EClaw/commit/cb8bf1bb6421f25214f65e129a8cadccc49cc266)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#4](https://github.com/HankHuang0516/EClaw/issues/4) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **companion:** bridge crafter-station/petdex gallery (1784 pets) ([#2601](https://github.com/HankHuang0516/EClaw/issues/2601)) ([2e245be](https://github.com/HankHuang0516/EClaw/commit/2e245bea6dd47ea7361b927d389188a3c23b6bb3))
* **promo:** chat avatar size feature landing page (self-hosted MP4) ([#2722](https://github.com/HankHuang0516/EClaw/issues/2722)) ([3852210](https://github.com/HankHuang0516/EClaw/commit/3852210d355704d018e3daca6b5f9512a011b210)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **kanban:** cron-spawn jitter + lane backpressure to prevent same-tick wedge ([#2791](https://github.com/HankHuang0516/EClaw/issues/2791)) ([9f414a7](https://github.com/HankHuang0516/EClaw/commit/9f414a731d6393672a0a4189c7b408c529ae5e12)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **portal:** dashboard usage widget — Claude/Codex 5h gauges + 24h chart (Plan B Phase 3) ([#2891](https://github.com/HankHuang0516/EClaw/issues/2891)) ([d18f373](https://github.com/HankHuang0516/EClaw/commit/d18f373857e4bd302437d6bda2a1e01871fbb1db))
* **portal:** dashboard usage widget v2 — Session/Weekly % bars + projects, no cost (Plan B Phase 3.1) ([#2893](https://github.com/HankHuang0516/EClaw/issues/2893)) ([4bc0dc7](https://github.com/HankHuang0516/EClaw/commit/4bc0dc744ed9d54dfd532ebac4b705c7f84ec0a6))
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **info:** embed 75s promo video on Quick Start tab ([#2795](https://github.com/HankHuang0516/EClaw/issues/2795)) ([86c3f70](https://github.com/HankHuang0516/EClaw/commit/86c3f709a95eebbee1241077b807880463f804b6))
* **promo:** embed daily eclaw video 2026-05-14 ([#2786](https://github.com/HankHuang0516/EClaw/issues/2786)) ([718a814](https://github.com/HankHuang0516/EClaw/commit/718a814ab16850bc2b33a1b303841e2c4378ecfa)), closes [#2782](https://github.com/HankHuang0516/EClaw/issues/2782) [#2693](https://github.com/HankHuang0516/EClaw/issues/2693)
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **info:** embed promo video at top of Quick Start tab ([#2797](https://github.com/HankHuang0516/EClaw/issues/2797)) ([047679f](https://github.com/HankHuang0516/EClaw/commit/047679fd57ab9949eaeacea414d5611e71afe041))
* **rental:** enforce strict rebind refunds ([#2703](https://github.com/HankHuang0516/EClaw/issues/2703)) ([a1859c5](https://github.com/HankHuang0516/EClaw/commit/a1859c50e6fb3991d7a8051491502d824a14a116))
* **portal:** group task chip actions ([#2825](https://github.com/HankHuang0516/EClaw/issues/2825)) ([5db5c59](https://github.com/HankHuang0516/EClaw/commit/5db5c59b32b8635f1412205faf0c2f9164d3d5d4))
* **hermes:** H2 health-check cron + 7d SLA + commander alerts (card_07891ac) ([#2922](https://github.com/HankHuang0516/EClaw/issues/2922)) ([82b4315](https://github.com/HankHuang0516/EClaw/commit/82b4315aea234493e3d1889dc53958c2f1d842e0)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **portal:** info-guide-rules + info-guide-soul slide pair ([#2793](https://github.com/HankHuang0516/EClaw/issues/2793)) ([1c8bddc](https://github.com/HankHuang0516/EClaw/commit/1c8bddc4c185054b2b60088498e3d45509117127)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **chat:** link card previews to kanban ([#2754](https://github.com/HankHuang0516/EClaw/issues/2754)) ([2261240](https://github.com/HankHuang0516/EClaw/commit/22612402c2e95efb07246629e81a849be41ee9c7))
* **mission:** link notes to kanban cards ([#2723](https://github.com/HankHuang0516/EClaw/issues/2723)) ([b36dc18](https://github.com/HankHuang0516/EClaw/commit/b36dc18f3a8facf12e0b6046351c222f1e99dc55))
* **usage-daemon:** macOS launchd daemon polls Claude/Codex usage → POST /api/usage/snapshot (Plan B Phase 2) ([#2890](https://github.com/HankHuang0516/EClaw/issues/2890)) ([fd225e1](https://github.com/HankHuang0516/EClaw/commit/fd225e12d9491037be1a340bd63b54b5f3308c7f))
* **mindmap:** mission.html link to /portal/mindmap.html + deprecate /api/mission/mindmap ([#2685](https://github.com/HankHuang0516/EClaw/issues/2685)) ([11e297b](https://github.com/HankHuang0516/EClaw/commit/11e297bab1c9b56fcde3027d6500b7c58891bf18)), closes [#2680](https://github.com/HankHuang0516/EClaw/issues/2680) [#2684](https://github.com/HankHuang0516/EClaw/issues/2684)
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **portal:** nagoya trip interactive map (Leaflet + OSM, no API key) ([#2888](https://github.com/HankHuang0516/EClaw/issues/2888)) ([ecfdac0](https://github.com/HankHuang0516/EClaw/commit/ecfdac06348c12ee7c6872c6c28d5f82162e7aa9))
* **android:** native tab navigation bridge for portal pages ([#2832](https://github.com/HankHuang0516/EClaw/issues/2832)) ([7e02e6f](https://github.com/HankHuang0516/EClaw/commit/7e02e6f225014e64f08f55035d7b9e5727873343)), closes [#2824](https://github.com/HankHuang0516/EClaw/issues/2824) [#2743](https://github.com/HankHuang0516/EClaw/issues/2743) [#2821](https://github.com/HankHuang0516/EClaw/issues/2821) [#2826](https://github.com/HankHuang0516/EClaw/issues/2826) [#2797](https://github.com/HankHuang0516/EClaw/issues/2797) [#2798](https://github.com/HankHuang0516/EClaw/issues/2798) [#2799](https://github.com/HankHuang0516/EClaw/issues/2799) [#2800](https://github.com/HankHuang0516/EClaw/issues/2800) [#2801](https://github.com/HankHuang0516/EClaw/issues/2801) [#2816](https://github.com/HankHuang0516/EClaw/issues/2816) [#2796](https://github.com/HankHuang0516/EClaw/issues/2796) [#2825](https://github.com/HankHuang0516/EClaw/issues/2825) [#2812](https://github.com/HankHuang0516/EClaw/issues/2812) [#2813](https://github.com/HankHuang0516/EClaw/issues/2813) [#2814](https://github.com/HankHuang0516/EClaw/issues/2814) [#2815](https://github.com/HankHuang0516/EClaw/issues/2815) [#2811](https://github.com/HankHuang0516/EClaw/issues/2811) [#2807](https://github.com/HankHuang0516/EClaw/issues/2807) [#2808](https://github.com/HankHuang0516/EClaw/issues/2808) [#2818](https://github.com/HankHuang0516/EClaw/issues/2818) [#2819](https://github.com/HankHuang0516/EClaw/issues/2819) [#2824](https://github.com/HankHuang0516/EClaw/issues/2824)
* **channel:** outbound backpressure (30/min cap + 429 retry-after) ([#2911](https://github.com/HankHuang0516/EClaw/issues/2911)) ([36dc99c](https://github.com/HankHuang0516/EClaw/commit/36dc99ca78b0e1724a2aaefb5936669077b7a28f))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **ai-support:** pass per-request caller creds to claude-cli-proxy /chat (H3 Phase 2) ([#2947](https://github.com/HankHuang0516/EClaw/issues/2947)) ([1f5378b](https://github.com/HankHuang0516/EClaw/commit/1f5378b9e01d4e650005c338bf81f1ef43535624)), closes [#2937](https://github.com/HankHuang0516/EClaw/issues/2937)
* **settings:** per-entity nudge override UI (Phase 2) ([#2837](https://github.com/HankHuang0516/EClaw/issues/2837)) ([ea7662b](https://github.com/HankHuang0516/EClaw/commit/ea7662b0858882dae461e1387f711895924f9ab8)), closes [3/#4](https://github.com/HankHuang0516/EClaw/issues/4)
* **kanban:** per-entity nudge overrides (Phase 2 of card_e066cb6b) ([#2836](https://github.com/HankHuang0516/EClaw/issues/2836)) ([0425f80](https://github.com/HankHuang0516/EClaw/commit/0425f80bc1169c0d506b665659c8676695c45553))
* **avatar:** petdx render on card-holder my-cards (Phase 1b) ([#2621](https://github.com/HankHuang0516/EClaw/issues/2621)) ([f78ba8b](https://github.com/HankHuang0516/EClaw/commit/f78ba8b18acc426936ab6d8a82ca7541effea00d))
* **avatar:** petdx render on dashboard entity grid / org chart / bindings (Phase 1b) ([#2622](https://github.com/HankHuang0516/EClaw/issues/2622)) ([f417749](https://github.com/HankHuang0516/EClaw/commit/f41774914451048e8cd76e9ae30416a0642e173b)), closes [#2620](https://github.com/HankHuang0516/EClaw/issues/2620) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621)
* **avatar:** petdx render on kanban auto-assign / pulse / comment avatars (Phase 1b) ([#2624](https://github.com/HankHuang0516/EClaw/issues/2624)) ([6bff5f8](https://github.com/HankHuang0516/EClaw/commit/6bff5f80440d0bd91a6b1721cde9478d685c4d46))
* **avatar:** petdx render on mission skill/rule/soul entity dialogs (Phase 1b) ([#2623](https://github.com/HankHuang0516/EClaw/issues/2623)) ([129327b](https://github.com/HankHuang0516/EClaw/commit/129327bc7b91056659f1ab7e8d5e3f5260d951fb))
* **mindmap:** portal/mindmap.html force-graph prototype ([#129](https://github.com/HankHuang0516/EClaw/issues/129)) ([#2681](https://github.com/HankHuang0516/EClaw/issues/2681)) ([0f15e69](https://github.com/HankHuang0516/EClaw/commit/0f15e6930f0697c37fa08f3219edb8f9e499837f)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **channel:** record delivery receipts ([#2913](https://github.com/HankHuang0516/EClaw/issues/2913)) ([90c671b](https://github.com/HankHuang0516/EClaw/commit/90c671bd1970ab51584b90e2b634484ec10cc7ae))
* **portal:** redo nagoya trip page in professional tour-guide style ([#2691](https://github.com/HankHuang0516/EClaw/issues/2691)) ([b2378c0](https://github.com/HankHuang0516/EClaw/commit/b2378c06ee20fa9cccfdceceb1a4c9e0b3072f59))
* **i18n:** remove ms+hi orphan keys from i18n.js ([#2849](https://github.com/HankHuang0516/EClaw/issues/2849)) ([320176c](https://github.com/HankHuang0516/EClaw/commit/320176c06a3cfd8631e2a82ad02a6bd6a9af0389))
* **avatar:** render selected petdx companion in chat avatars ([#2620](https://github.com/HankHuang0516/EClaw/issues/2620)) ([0bdd046](https://github.com/HankHuang0516/EClaw/commit/0bdd046fe1b1c428e32edda366ff112c08927f4c))
* **home:** replace native home with WebView hosting dashboard.html ([#2634](https://github.com/HankHuang0516/EClaw/issues/2634)) ([e69ea81](https://github.com/HankHuang0516/EClaw/commit/e69ea8160c239b083a83d6dc83a4f1c3f901c863))
* **app:** route chat mission jumps through native tabs ([#2824](https://github.com/HankHuang0516/EClaw/issues/2824)) ([deb07b6](https://github.com/HankHuang0516/EClaw/commit/deb07b69a9ecca632fe27278de537f1d85234e94))
* **portal:** scaffold /portal/bot/:id/about backstory page (IP P1) ([#2938](https://github.com/HankHuang0516/EClaw/issues/2938)) ([96d6ca5](https://github.com/HankHuang0516/EClaw/commit/96d6ca506d611e2f9be03d50f76983457277f209))
* **proxy:** scope private repo git auth ([#2926](https://github.com/HankHuang0516/EClaw/issues/2926)) ([246f7ff](https://github.com/HankHuang0516/EClaw/commit/246f7ff1dedaf7bece9e3cb9eb24d0ab32ebb393))
* **android:** show usage on live wallpaper ([3f5698f](https://github.com/HankHuang0516/EClaw/commit/3f5698f5ecdae47129c2e4cf4a4296c6a3ab6659))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **chat:** support message deep links ([#2719](https://github.com/HankHuang0516/EClaw/issues/2719)) ([2dc0f1e](https://github.com/HankHuang0516/EClaw/commit/2dc0f1eeb259e1a0848db4a03186b989372cd91c))
* **mission:** support note deep links ([#2717](https://github.com/HankHuang0516/EClaw/issues/2717)) ([2efd3a5](https://github.com/HankHuang0516/EClaw/commit/2efd3a5e741217a07c0b0ac54a0ddd010e0ebe23))
* **share-chat:** twitter card + per-bot og:image/twitter:* in SSR ([#2609](https://github.com/HankHuang0516/EClaw/issues/2609)) ([6cdc853](https://github.com/HankHuang0516/EClaw/commit/6cdc853dc884cdb95bd47214942768981f218ae0))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))
* **settings:** wire petdx avatar into channel-account chips ([#2626](https://github.com/HankHuang0516/EClaw/issues/2626)) ([88aec77](https://github.com/HankHuang0516/EClaw/commit/88aec772628c240e97b336bb5820892ad632d1ae))
* **files:** wire petdx avatar into entity filter & per-file badges ([#2627](https://github.com/HankHuang0516/EClaw/issues/2627)) ([5b3e5cc](https://github.com/HankHuang0516/EClaw/commit/5b3e5cc542d9da69bb4e92500fd03a542ea33f00))
* **mindmap:** wrap hardcoded zh-TW UI strings with i18n t() ([#2607](https://github.com/HankHuang0516/EClaw/issues/2607)) ([166af87](https://github.com/HankHuang0516/EClaw/commit/166af8772b2121a24aaf34a83b3de970e9b3b571)), closes [#2606](https://github.com/HankHuang0516/EClaw/issues/2606)
* **i18n:** zh-TW backfill 8 keys (soft-pause + chat + invite + wallet) ([#2815](https://github.com/HankHuang0516/EClaw/issues/2815)) ([a2dd574](https://github.com/HankHuang0516/EClaw/commit/a2dd5743ce8d43a4b6ace9a2fd4b52568180d6c5))


### Performance Improvements

* **mindmap:** force-graph hardening for 1000/2000-node graphs ([#2684](https://github.com/HankHuang0516/EClaw/issues/2684)) ([da8b1c8](https://github.com/HankHuang0516/EClaw/commit/da8b1c8f947ab8bc8fa455c1962a91146623a1fc))


### Reverts

* Revert "feat(telegram): long-poll adapter PoC (card_406e612942ff062a06fc47be) ([#2238](https://github.com/HankHuang0516/EClaw/issues/2238))" ([#2239](https://github.com/HankHuang0516/EClaw/issues/2239)) ([eb7aa92](https://github.com/HankHuang0516/EClaw/commit/eb7aa92cce454b4a1a22654a2d133cdebe78c2bd))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-26)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **notifications:** add kanban_done + kanban_done_auto toggles to Android Settings ([#2636](https://github.com/HankHuang0516/EClaw/issues/2636)) ([a710909](https://github.com/HankHuang0516/EClaw/commit/a7109095e3393b8564e7ef1b23d382a4fbb944b8))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **api:** align /api/platform-stats skill-doc with device-auth contract (card_49b8190) ([#2916](https://github.com/HankHuang0516/EClaw/issues/2916)) ([ee55b2f](https://github.com/HankHuang0516/EClaw/commit/ee55b2fdbfbcd4bead5501d16ee66339056c32d7))
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **i18n:** ar block — fix 27 broken entries (CJK leaks + truncated HTML) ([#2851](https://github.com/HankHuang0516/EClaw/issues/2851)) ([5b19175](https://github.com/HankHuang0516/EClaw/commit/5b19175d712d00d16fcec00b749035c4beae7a5c))
* **chat:** atomic-load target bar (await contacts before first render) ([#2831](https://github.com/HankHuang0516/EClaw/issues/2831)) ([5f529e6](https://github.com/HankHuang0516/EClaw/commit/5f529e6b772eacc38ba1de69b44258a05f0d816a)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2](https://github.com/HankHuang0516/EClaw/issues/2)
* **channel:** await binding persistence ([712516d](https://github.com/HankHuang0516/EClaw/commit/712516decafb745035bd1434a28cc1973d433e19))
* **rental:** bump handshake timeout to 60s + timeout-aware discovery fallback ([#2863](https://github.com/HankHuang0516/EClaw/issues/2863)) ([fd4322f](https://github.com/HankHuang0516/EClaw/commit/fd4322f8890f3c2dfca3acdae6a4b95f19c381f9)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **chat:** carry kanban message deep-links ([#2946](https://github.com/HankHuang0516/EClaw/issues/2946)) ([971e2d2](https://github.com/HankHuang0516/EClaw/commit/971e2d27aeb212660901c8707cf418b7b1411286))
* **i18n:** clear batch 1 residual missing keys ([#2790](https://github.com/HankHuang0516/EClaw/issues/2790)) ([211030e](https://github.com/HankHuang0516/EClaw/commit/211030e0b0b6a865c11f0c4ed60dc4e356d43b7a))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **kanban:** comment input no longer overlaps last comment in card detail (PR [#2678](https://github.com/HankHuang0516/EClaw/issues/2678)) ([fba91fc](https://github.com/HankHuang0516/EClaw/commit/fba91fca15402b453a0db5ee857c0b16e6087055))
* **chat:** compact 20px avatar in target bar (App WebView only shows [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2](https://github.com/HankHuang0516/EClaw/issues/2)) ([#2830](https://github.com/HankHuang0516/EClaw/issues/2830)) ([42c7543](https://github.com/HankHuang0516/EClaw/commit/42c7543b4a78a7abf3f5f7535eb9bc6142cd0fe2)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **portal:** complete 401 redirect sweep + mobile UIUX truncation ([#2842](https://github.com/HankHuang0516/EClaw/issues/2842)) ([f9799ba](https://github.com/HankHuang0516/EClaw/commit/f9799ba42498b109f0a8a70e80836aa6da51e216)), closes [#2833](https://github.com/HankHuang0516/EClaw/issues/2833) [#2845](https://github.com/HankHuang0516/EClaw/issues/2845) [#2844](https://github.com/HankHuang0516/EClaw/issues/2844) [#2843](https://github.com/HankHuang0516/EClaw/issues/2843)
* **uiux:** continue qa mobile readability sweep ([#2854](https://github.com/HankHuang0516/EClaw/issues/2854)) ([57606ff](https://github.com/HankHuang0516/EClaw/commit/57606ffe3e543b07a026aacc53c4b470c9a7825b))
* **i18n:** cover dynamic portal wrapper keys ([#2807](https://github.com/HankHuang0516/EClaw/issues/2807)) ([4c711cc](https://github.com/HankHuang0516/EClaw/commit/4c711cc4009300ffe4e8933a98ee01cd0fdd6aeb))
* **i18n:** dedup 20 dash_channel_card_* keys in es block ([#2876](https://github.com/HankHuang0516/EClaw/issues/2876)) ([807284c](https://github.com/HankHuang0516/EClaw/commit/807284ce363ef119ccdb0ae40e5ce99d3f0a27e0))
* **i18n:** dedupe backend locale keys via AST ([#2920](https://github.com/HankHuang0516/EClaw/issues/2920)) ([40ef114](https://github.com/HankHuang0516/EClaw/commit/40ef11414c8b836fe1ed93ec06c839df3a1bf7b9))
* **i18n:** dedupe zh locale keys ([#2919](https://github.com/HankHuang0516/EClaw/issues/2919)) ([afd2cca](https://github.com/HankHuang0516/EClaw/commit/afd2cca8086c2f2df0d04c9c5f8c58733652875e))
* **test:** delegate root test and remove invalid jest option ([#2292](https://github.com/HankHuang0516/EClaw/issues/2292)) ([65bf2f8](https://github.com/HankHuang0516/EClaw/commit/65bf2f83d26d925097cd380ab73b04ab2db49842))
* **kanban:** dep-aware nudge gating + roadmap dependency backfill ([#2904](https://github.com/HankHuang0516/EClaw/issues/2904)) ([2b76ac9](https://github.com/HankHuang0516/EClaw/commit/2b76ac9d3b7e4169b7bc3c6f6b0b0903b63cd9f7)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **rental:** don't pollute entity.message on push gateway timeout ([#2860](https://github.com/HankHuang0516/EClaw/issues/2860)) ([592ba44](https://github.com/HankHuang0516/EClaw/commit/592ba44f57536ee00011b6cbddaa6b129a7cbae9))
* **petdx:** drop dark-grey loading placeholder + preload sprite WEBP ([#2628](https://github.com/HankHuang0516/EClaw/issues/2628)) ([59cef38](https://github.com/HankHuang0516/EClaw/commit/59cef387bd69ca99d7d15c86a1364856d3849ad8)), closes [#1a1a1a](https://github.com/HankHuang0516/EClaw/issues/1a1a1a)
* **gateway-ws:** drop Origin header on server-to-server WS upgrade ([#2869](https://github.com/HankHuang0516/EClaw/issues/2869)) ([716dcf9](https://github.com/HankHuang0516/EClaw/commit/716dcf9d0834b17522bb9d894bad84bc142d1a19))
* **setup-scripts:** drop Origin header on server-to-server WS upgrade ([#2875](https://github.com/HankHuang0516/EClaw/issues/2875)) ([9d893b8](https://github.com/HankHuang0516/EClaw/commit/9d893b8e5eea4db275e450bf423903c156cd3e4b)), closes [#2869](https://github.com/HankHuang0516/EClaw/issues/2869)
* **security:** escape innerHTML in chat modal error messages ([#2819](https://github.com/HankHuang0516/EClaw/issues/2819)) ([dce07ad](https://github.com/HankHuang0516/EClaw/commit/dce07adde64795916dba977ae23e46f3371ce7ed)), closes [#2809](https://github.com/HankHuang0516/EClaw/issues/2809) [#2810](https://github.com/HankHuang0516/EClaw/issues/2810) [#2809](https://github.com/HankHuang0516/EClaw/issues/2809) [#2810](https://github.com/HankHuang0516/EClaw/issues/2810)
* **proxy:** export repo auth to CLI child ([#2928](https://github.com/HankHuang0516/EClaw/issues/2928)) ([336a8ca](https://github.com/HankHuang0516/EClaw/commit/336a8caff4e3663287bd2948cf9fe6e04125cbc8))
* **entities:** expose botSecret to owner so wallpaper service can poll companions ([#2615](https://github.com/HankHuang0516/EClaw/issues/2615)) ([04470fc](https://github.com/HankHuang0516/EClaw/commit/04470fce8f8c3fce2b1ba8b243e776606f107502))
* **rental:** expose owner_public_code in marketplace so plaza CTA can route ([#2616](https://github.com/HankHuang0516/EClaw/issues/2616)) ([4d1372f](https://github.com/HankHuang0516/EClaw/commit/4d1372f717d93cab65543e87c852e74e9fb67071)), closes [#2610](https://github.com/HankHuang0516/EClaw/issues/2610)
* **mindmap:** fallback to device scope when entityId is null ([#2728](https://github.com/HankHuang0516/EClaw/issues/2728)) ([7572312](https://github.com/HankHuang0516/EClaw/commit/7572312433d3d75fc245eda48a28919ce14bd927))
* **i18n:** fill 11 missing zh keys post-[#2920](https://github.com/HankHuang0516/EClaw/issues/2920)/[#2921](https://github.com/HankHuang0516/EClaw/issues/2921) (card_de6970) ([#2924](https://github.com/HankHuang0516/EClaw/issues/2924)) ([17c4899](https://github.com/HankHuang0516/EClaw/commit/17c48996489b1444d6ed589027acfa7986178fe1)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** fill backend runtime locale gaps ([#2921](https://github.com/HankHuang0516/EClaw/issues/2921)) ([00d96ff](https://github.com/HankHuang0516/EClaw/commit/00d96ff261b8134b49292623e1f786fd544144cc))
* **i18n:** fill Spanish drift keys ([#2751](https://github.com/HankHuang0516/EClaw/issues/2751)) ([0ad0ee5](https://github.com/HankHuang0516/EClaw/commit/0ad0ee55f7fac3e6ac46d891539950dab4d553cc))
* **portal:** fit embedded org chart to mobile viewport ([#2674](https://github.com/HankHuang0516/EClaw/issues/2674)) ([1c4e1b4](https://github.com/HankHuang0516/EClaw/commit/1c4e1b413ea7027b4cd4b8ecda981b0d0e12e66b))
* **i18n:** fix 6 trailing-comma syntax errors in 10-locale batch ([#2771](https://github.com/HankHuang0516/EClaw/issues/2771)) ([b27c6ca](https://github.com/HankHuang0516/EClaw/commit/b27c6ca204bf813e406c54ce3a2532a5f1f031b3))
* **kanban:** GET card returns latest 50 comments + comments endpoint exposes total ([#2816](https://github.com/HankHuang0516/EClaw/issues/2816)) ([c4d83f7](https://github.com/HankHuang0516/EClaw/commit/c4d83f777a1cd26aea0936e4316aa35c52822eef))
* **sharechat:** guest verify-email modal + disabled Send for unverified ([#2865](https://github.com/HankHuang0516/EClaw/issues/2865)) ([cb3b061](https://github.com/HankHuang0516/EClaw/commit/cb3b0614e0f6160417d907753e66eceb2d666802))
* **portal:** H4 showcase i18n data-attrs + raw key leak ([#2935](https://github.com/HankHuang0516/EClaw/issues/2935)) ([80d8587](https://github.com/HankHuang0516/EClaw/commit/80d8587c00c03f72fdb9756b1093ee8e1e3d0842)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **uiux:** harden chat previews and roster preview ([#2769](https://github.com/HankHuang0516/EClaw/issues/2769)) ([466d4d3](https://github.com/HankHuang0516/EClaw/commit/466d4d3ef81c628d3f58db64323946053d7bf61c))
* **mention-parser:** ignore @-mentions inside markdown code spans ([#2645](https://github.com/HankHuang0516/EClaw/issues/2645)) ([8da19d4](https://github.com/HankHuang0516/EClaw/commit/8da19d4a79ceb4152bf2144ee0847c61ce3e1def)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **kanban:** lazy-load dependency chips via IntersectionObserver ([#2632](https://github.com/HankHuang0516/EClaw/issues/2632)) ([20586b4](https://github.com/HankHuang0516/EClaw/commit/20586b43357335f9eb6a190c02d58c8e36b58aba)), closes [#2631](https://github.com/HankHuang0516/EClaw/issues/2631)
* **i18n:** localize FCM NotificationChannel labels (card_ec8d3a22) ([#2918](https://github.com/HankHuang0516/EClaw/issues/2918)) ([591cd20](https://github.com/HankHuang0516/EClaw/commit/591cd206704693650a53d19d94c4cc75daf84ffd))
* **kanban:** make card sorting deterministic ([#2756](https://github.com/HankHuang0516/EClaw/issues/2756)) ([48e2117](https://github.com/HankHuang0516/EClaw/commit/48e2117b64e37f05dc635e0a3b67bfd43cbe48f5))
* **portal/nagoya-trip:** map-link invisible on dark hero/day-banner ([#2897](https://github.com/HankHuang0516/EClaw/issues/2897)) ([cc33df6](https://github.com/HankHuang0516/EClaw/commit/cc33df686673455c20beaee60871412a5d486e66)), closes [#1f4030](https://github.com/HankHuang0516/EClaw/issues/1f4030) [#8b8579](https://github.com/HankHuang0516/EClaw/issues/8b8579) [#6e6859](https://github.com/HankHuang0516/EClaw/issues/6e6859) [#7a5614](https://github.com/HankHuang0516/EClaw/issues/7a5614)
* **portal:** mobile delete-modal clipped right edge (P0) ([#2951](https://github.com/HankHuang0516/EClaw/issues/2951)) ([00418ca](https://github.com/HankHuang0516/EClaw/commit/00418ca812d5b757e35d12a9810b124f30491bbb))
* **org-chart:** notify affected bots on hierarchy change ([#2812](https://github.com/HankHuang0516/EClaw/issues/2812)) ([55675fd](https://github.com/HankHuang0516/EClaw/commit/55675fdf4487494d729a29524b32bd81b756a00c)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** notify reviewer on manual /move → review ([#2753](https://github.com/HankHuang0516/EClaw/issues/2753)) ([6cbbb4e](https://github.com/HankHuang0516/EClaw/commit/6cbbb4ee8c0d4d8ad54df2e9b5faaa3699bd530f))
* **wallpaper:** off-load spritesheet fetch to IO so per-petdx sprites actually render ([#2618](https://github.com/HankHuang0516/EClaw/issues/2618)) ([61b832c](https://github.com/HankHuang0516/EClaw/commit/61b832c9fa8a1d0caab810ccc942d85c63349267)), closes [#2615](https://github.com/HankHuang0516/EClaw/issues/2615) [#2577](https://github.com/HankHuang0516/EClaw/issues/2577)
* **security:** patch P0 sanitize-html XSS + P1 protobufjs + exam.html XSS ([#2829](https://github.com/HankHuang0516/EClaw/issues/2829)) ([c71b871](https://github.com/HankHuang0516/EClaw/commit/c71b871a045887375dd0d26d1a3280a0891a89ad))
* **security:** patch ws uninitialized memory disclosure (GHSA-58qx-3vcg-4xpx) ([#2872](https://github.com/HankHuang0516/EClaw/issues/2872)) ([2523d15](https://github.com/HankHuang0516/EClaw/commit/2523d154bbe501a7cc086340f7a07ece3abfa69b))
* **portal:** petdx-browser cookie-session fallback for device-login ([#2757](https://github.com/HankHuang0516/EClaw/issues/2757)) ([ca275f4](https://github.com/HankHuang0516/EClaw/commit/ca275f4519835da0c7ad71c588908a18f6f138d8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **api:** platform-stats 500 + entity/lookup publicCode alias ([#2809](https://github.com/HankHuang0516/EClaw/issues/2809), [#2810](https://github.com/HankHuang0516/EClaw/issues/2810)) ([#2818](https://github.com/HankHuang0516/EClaw/issues/2818)) ([f99fd17](https://github.com/HankHuang0516/EClaw/commit/f99fd17b2b1c32d88daa2510ff66d714c1a53edc))
* **i18n:** positional format specifiers for feedback_result_logs (7 locales) ([#2597](https://github.com/HankHuang0516/EClaw/issues/2597)) ([21aedc7](https://github.com/HankHuang0516/EClaw/commit/21aedc7eebc7a2839e340136f38dfdfd4dabb9dc))
* **avatar-petdx:** preserve descriptor across transient API failures (flicker) ([#2625](https://github.com/HankHuang0516/EClaw/issues/2625)) ([7b1c606](https://github.com/HankHuang0516/EClaw/commit/7b1c606514f7698d72ec95cf6c556e4043966186))
* **chat:** preserve recipient selection across rental-health refresh (P0 #card_eb1cba76) ([#2906](https://github.com/HankHuang0516/EClaw/issues/2906)) ([9cc0301](https://github.com/HankHuang0516/EClaw/commit/9cc0301cc26a0f49af4b7f53486f5c1a7cdd7902)), closes [#card_eb1cba76](https://github.com/HankHuang0516/EClaw/issues/card_eb1cba76) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **chat:** preserve scroll anchor while reading history ([#2693](https://github.com/HankHuang0516/EClaw/issues/2693)) ([945fdb7](https://github.com/HankHuang0516/EClaw/commit/945fdb7192b791b31882e1e75568dd8b11e4686f))
* **qa:** protect contact reads and refresh UX audits ([#2955](https://github.com/HankHuang0516/EClaw/issues/2955)) ([24dc2ec](https://github.com/HankHuang0516/EClaw/commit/24dc2ec5e2eb0b099d4231e440fd29e65ef83dc8))
* **promo:** pull video embed from /promo-chat-avatar.html ([#2724](https://github.com/HankHuang0516/EClaw/issues/2724)) ([2afabc8](https://github.com/HankHuang0516/EClaw/commit/2afabc8c5ff8b25218a7cb857e8adfa572c8e9d5))
* **dashboard:** read live.rate_limits.{five_hour,seven_day}.used_percentage ([#2895](https://github.com/HankHuang0516/EClaw/issues/2895)) ([8223303](https://github.com/HankHuang0516/EClaw/commit/822330312bccb1c76675ad2c3b26e78d10dd1298))
* **kanban:** realign stale recurring schedules ([#2785](https://github.com/HankHuang0516/EClaw/issues/2785)) ([ab8ee25](https://github.com/HankHuang0516/EClaw/commit/ab8ee250a9b37f3d3e838bb01d8866c8d2b78231))
* **i18n:** reapply de6970 locale gap translations ([#2925](https://github.com/HankHuang0516/EClaw/issues/2925)) ([d994dc1](https://github.com/HankHuang0516/EClaw/commit/d994dc1d240fef72326db2599262375ccbf29175))
* **portal:** reduce QA-discovered request fanout ([#2656](https://github.com/HankHuang0516/EClaw/issues/2656)) ([1e46d6b](https://github.com/HankHuang0516/EClaw/commit/1e46d6bab61e58c65b452b6503d953f8dddeee75))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **portal:** remove org chart fit scale floor ([#2676](https://github.com/HankHuang0516/EClaw/issues/2676)) ([0f01606](https://github.com/HankHuang0516/EClaw/commit/0f016068b963bb5f800a02f28817c7174979d913))
* **rental:** remove phantom 'webhook test push' step from BIND_COMPLETE ([#2864](https://github.com/HankHuang0516/EClaw/issues/2864)) ([47f4a3e](https://github.com/HankHuang0516/EClaw/commit/47f4a3edf76aa95ebd06d8713cd44fda6eef9b5d))
* **i18n:** rename mm_empty_title → mm_state_empty_title in mindmap.html ([#2683](https://github.com/HankHuang0516/EClaw/issues/2683)) ([c79c109](https://github.com/HankHuang0516/EClaw/commit/c79c109bea23142e8a6d9ace976d105af1280ec9))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **chat:** render mention avatars with companion renderer ([#2633](https://github.com/HankHuang0516/EClaw/issues/2633)) ([03e205f](https://github.com/HankHuang0516/EClaw/commit/03e205f663ecd2c2f443d4009dd5af0093f0bbbb))
* **kanban:** reserve mobile comments panel height ([#2782](https://github.com/HankHuang0516/EClaw/issues/2782)) ([ce8662d](https://github.com/HankHuang0516/EClaw/commit/ce8662d362422fdd25037f1deb61dbed9425e2f9))
* **channel:** restore handshake fallback to discovered sessions ([#2915](https://github.com/HankHuang0516/EClaw/issues/2915)) ([#2917](https://github.com/HankHuang0516/EClaw/issues/2917)) ([9d7d3a2](https://github.com/HankHuang0516/EClaw/commit/9d7d3a25654289998314dd5ca152cefdb8a4d64e)), closes [#2912](https://github.com/HankHuang0516/EClaw/issues/2912)
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* scheduled audit 2026-05-13 — 6 bugs, XSS, i18n ([#2668](https://github.com/HankHuang0516/EClaw/issues/2668)) ([21dd513](https://github.com/HankHuang0516/EClaw/commit/21dd513b4464738de29164265437435ba6cc4817)), closes [#2605](https://github.com/HankHuang0516/EClaw/issues/2605) [#2608](https://github.com/HankHuang0516/EClaw/issues/2608) [#2600](https://github.com/HankHuang0516/EClaw/issues/2600) [#2599](https://github.com/HankHuang0516/EClaw/issues/2599) [#2598](https://github.com/HankHuang0516/EClaw/issues/2598)
* **channel:** scope official bot sessions ([#2912](https://github.com/HankHuang0516/EClaw/issues/2912)) ([5c56b62](https://github.com/HankHuang0516/EClaw/commit/5c56b62c13b739b76f39e168a26bd4e5de2644fb))
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **dashboard:** show Claude weekly bar reset countdown ([#2896](https://github.com/HankHuang0516/EClaw/issues/2896)) ([3b87845](https://github.com/HankHuang0516/EClaw/commit/3b87845d713e980fec69f6b8007549338a326713)), closes [#2895](https://github.com/HankHuang0516/EClaw/issues/2895)
* **chat:** smart-chip preview falls back to inline c.comments when /comments fails (PR [#2677](https://github.com/HankHuang0516/EClaw/issues/2677)) ([7f4dffd](https://github.com/HankHuang0516/EClaw/commit/7f4dffd2c83ea86f296b8fa0610f0e67c9f1af11))
* **kanban:** stabilize comment detail viewport ([#2796](https://github.com/HankHuang0516/EClaw/issues/2796)) ([0a10aad](https://github.com/HankHuang0516/EClaw/commit/0a10aadb5a5b12ff23454c16d5c88183b94ad7d7))
* **wallpaper:** stop Android live wallpaper flashing default lobster on companion change ([#2629](https://github.com/HankHuang0516/EClaw/issues/2629)) ([8b4f66f](https://github.com/HankHuang0516/EClaw/commit/8b4f66fcb335bf43128f924b761b6337c817095b)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **chat:** stop chat.html bouncing to dashboard via /api/rental/health-status 401 race ([#2833](https://github.com/HankHuang0516/EClaw/issues/2833)) ([c422406](https://github.com/HankHuang0516/EClaw/commit/c4224067cdcfe7f3e22ab95007c7563dac4196ac))
* **openclaw-channel:** support OpenClaw 2026.5.20 ([8045de6](https://github.com/HankHuang0516/EClaw/commit/8045de6bebecfc05f9bd57453b99c098ca35681b))
* **mentions:** support same-device CJK display-name tags ([#2874](https://github.com/HankHuang0516/EClaw/issues/2874)) ([b8f61be](https://github.com/HankHuang0516/EClaw/commit/b8f61be9a3962fef75dd32ea34e8900880dafaf9))
* **channel:** suppress operational A2A loop messages (rebase of [#2288](https://github.com/HankHuang0516/EClaw/issues/2288)) ([#2930](https://github.com/HankHuang0516/EClaw/issues/2930)) ([7ceabc9](https://github.com/HankHuang0516/EClaw/commit/7ceabc915df22123cb46ae1500e2eb2e279250af))
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **dashboard:** use sessions[].project for widget Projects list (was .project_id) ([#2894](https://github.com/HankHuang0516/EClaw/issues/2894)) ([0fd1334](https://github.com/HankHuang0516/EClaw/commit/0fd1334897d4a603cc6eb74f34b48606547e09cf))
* **app:** WebView pages honor app-selected locale via ?lang= URL param ([#2672](https://github.com/HankHuang0516/EClaw/issues/2672)) ([8ed8757](https://github.com/HankHuang0516/EClaw/commit/8ed8757aec5bf214e837cc0d81bf2b23f1993a91)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **share-chat:** wire rich CTA actions to msgInput ([#2867](https://github.com/HankHuang0516/EClaw/issues/2867)) ([df23b11](https://github.com/HankHuang0516/EClaw/commit/df23b1147d34c59a644a145bbd87c18b96400acc))


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* **usage-api:** /api/usage/{snapshot,timeline} + usage_snapshots table (Plan B Phase 1) ([#2889](https://github.com/HankHuang0516/EClaw/issues/2889)) ([a0d859c](https://github.com/HankHuang0516/EClaw/commit/a0d859c63f0220909dadb2b1952174861ccdce14))
* **community:** 1-click chat button on bot cards + utm tagging ([#2610](https://github.com/HankHuang0516/EClaw/issues/2610)) ([eee97b0](https://github.com/HankHuang0516/EClaw/commit/eee97b0e2e4e74945ec24f218a69a52800b97a66))
* **chat:** accept ?messageId= as deep-link alias ([#2838](https://github.com/HankHuang0516/EClaw/issues/2838)) ([1785a87](https://github.com/HankHuang0516/EClaw/commit/1785a87310426637fd10df83754fb9924c45207f))
* **chat:** add avatar size preference ([#2714](https://github.com/HankHuang0516/EClaw/issues/2714)) ([6fe164a](https://github.com/HankHuang0516/EClaw/commit/6fe164ad8b22fa576d2dd9ad37c0d9fc295b5a83))
* **dashboard:** add Claude and Codex channel guides ([#2640](https://github.com/HankHuang0516/EClaw/issues/2640)) ([c64e4c4](https://github.com/HankHuang0516/EClaw/commit/c64e4c4afc78db58c5cd578f00486dd7b2fd3311))
* **dashboard:** add Claude Code channel guide card ([#2667](https://github.com/HankHuang0516/EClaw/issues/2667)) ([d70d75c](https://github.com/HankHuang0516/EClaw/commit/d70d75c0c8caa8a540358a9aab4556b8c1927a5c))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* **api:** add DELETE /api/entity/queue to clear messageQueue ([#616](https://github.com/HankHuang0516/EClaw/issues/616)) ([16ee3ff](https://github.com/HankHuang0516/EClaw/commit/16ee3ff1c6aa7f8ef187e54e5e7169f2e44f7395))
* **kanban:** add device-scoped card tags ([#2773](https://github.com/HankHuang0516/EClaw/issues/2773)) ([53a387e](https://github.com/HankHuang0516/EClaw/commit/53a387e67ba7bb4f6bed1c427000c4ae8666577a))
* **portal:** add entity selector to petdx-browser ([#2602](https://github.com/HankHuang0516/EClaw/issues/2602)) ([3fa067e](https://github.com/HankHuang0516/EClaw/commit/3fa067e00b38829b48a37cecd33ee81a9a1122d9))
* **kanban:** add explicit card links ([#2721](https://github.com/HankHuang0516/EClaw/issues/2721)) ([ef9f812](https://github.com/HankHuang0516/EClaw/commit/ef9f812a3fcf39efd07fd158ce90951bdd045ac7))
* **kanban:** add explicit done-card reopen flow ([#2801](https://github.com/HankHuang0516/EClaw/issues/2801)) ([5080aac](https://github.com/HankHuang0516/EClaw/commit/5080aacb75047c0deaa379ee708ec85465afd57c))
* **mindmap:** add GET /api/mindmap/graph force-graph projection ([#2680](https://github.com/HankHuang0516/EClaw/issues/2680)) ([a00b2e7](https://github.com/HankHuang0516/EClaw/commit/a00b2e775af2c4c98cd157f760ad87aeeee469f0)), closes [#2679](https://github.com/HankHuang0516/EClaw/issues/2679) [#2679](https://github.com/HankHuang0516/EClaw/issues/2679)
* **dashboard:** add Hermes channel promo card ([#2708](https://github.com/HankHuang0516/EClaw/issues/2708)) ([337aca1](https://github.com/HankHuang0516/EClaw/commit/337aca153d5a1cd7e888c065f00ae54db7872d91))
* **rental:** add listing soft pause ([#2781](https://github.com/HankHuang0516/EClaw/issues/2781)) ([6586b72](https://github.com/HankHuang0516/EClaw/commit/6586b72717ddb1637d91cd3242c8d2ff554f62b4))
* **portal:** add Nagoya 5D4N trip static cross-ref page ([#2689](https://github.com/HankHuang0516/EClaw/issues/2689)) ([2e0efb6](https://github.com/HankHuang0516/EClaw/commit/2e0efb6dcdaff52226cc8854a96747000b12bdff))
* **portal:** add Nagoya image atlas static page ([#2743](https://github.com/HankHuang0516/EClaw/issues/2743)) ([ac026e9](https://github.com/HankHuang0516/EClaw/commit/ac026e9fd2c92ac9437d01edddffc9adf972f6ba))
* **portal:** add Nagoya trip map links and image lightbox ([#2821](https://github.com/HankHuang0516/EClaw/issues/2821)) ([3e40955](https://github.com/HankHuang0516/EClaw/commit/3e40955650a05f45a6b9f7e39e73847705424a03))
* **portal/nagoya:** add parking shortcut buttons next to itinerary places ([#2826](https://github.com/HankHuang0516/EClaw/issues/2826)) ([63968c5](https://github.com/HankHuang0516/EClaw/commit/63968c554d046afc8d978de74e3aacbf7700500d))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **settings:** add rental roster management preview ([#2758](https://github.com/HankHuang0516/EClaw/issues/2758)) ([9706e59](https://github.com/HankHuang0516/EClaw/commit/9706e59ded140a90a6e02348124282bc69d89001))
* **rental:** add renter health chat indicator ([#2690](https://github.com/HankHuang0516/EClaw/issues/2690)) ([36cd2e9](https://github.com/HankHuang0516/EClaw/commit/36cd2e9802be4c7ebb03d3024617fa74aca48ffd))
* **ios:** add Tutorial & Intro entry in Settings ([#2800](https://github.com/HankHuang0516/EClaw/issues/2800)) ([ed83e51](https://github.com/HankHuang0516/EClaw/commit/ed83e51d043bf4cd5865f38dc95a91ed54820d6c))
* **landing:** add Watch Full Demo CTA below hero video ([#2799](https://github.com/HankHuang0516/EClaw/issues/2799)) ([66107c9](https://github.com/HankHuang0516/EClaw/commit/66107c954727551fd34d989a4674daaad9b63968))
* **footer:** add Watch Intro Video link in Info column ([#2798](https://github.com/HankHuang0516/EClaw/issues/2798)) ([d7c6d59](https://github.com/HankHuang0516/EClaw/commit/d7c6d596b69c6a5b257bf1f7a792a407ef9712ad))
* **i18n:** ar iter-2 — fill 623 missing keys against en source ([#2847](https://github.com/HankHuang0516/EClaw/issues/2847)) ([ee94a7a](https://github.com/HankHuang0516/EClaw/commit/ee94a7ae6812b5163efe4284ee4907ca32302f5c))
* **kanban:** backlog launch-gate flag to suppress L1/L2/L3 escalation ([#2855](https://github.com/HankHuang0516/EClaw/issues/2855)) ([cb8bf1b](https://github.com/HankHuang0516/EClaw/commit/cb8bf1bb6421f25214f65e129a8cadccc49cc266)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#4](https://github.com/HankHuang0516/EClaw/issues/4) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **companion:** bridge crafter-station/petdex gallery (1784 pets) ([#2601](https://github.com/HankHuang0516/EClaw/issues/2601)) ([2e245be](https://github.com/HankHuang0516/EClaw/commit/2e245bea6dd47ea7361b927d389188a3c23b6bb3))
* **promo:** chat avatar size feature landing page (self-hosted MP4) ([#2722](https://github.com/HankHuang0516/EClaw/issues/2722)) ([3852210](https://github.com/HankHuang0516/EClaw/commit/3852210d355704d018e3daca6b5f9512a011b210)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **kanban:** cron-spawn jitter + lane backpressure to prevent same-tick wedge ([#2791](https://github.com/HankHuang0516/EClaw/issues/2791)) ([9f414a7](https://github.com/HankHuang0516/EClaw/commit/9f414a731d6393672a0a4189c7b408c529ae5e12)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **portal:** dashboard usage widget — Claude/Codex 5h gauges + 24h chart (Plan B Phase 3) ([#2891](https://github.com/HankHuang0516/EClaw/issues/2891)) ([d18f373](https://github.com/HankHuang0516/EClaw/commit/d18f373857e4bd302437d6bda2a1e01871fbb1db))
* **portal:** dashboard usage widget v2 — Session/Weekly % bars + projects, no cost (Plan B Phase 3.1) ([#2893](https://github.com/HankHuang0516/EClaw/issues/2893)) ([4bc0dc7](https://github.com/HankHuang0516/EClaw/commit/4bc0dc744ed9d54dfd532ebac4b705c7f84ec0a6))
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **info:** embed 75s promo video on Quick Start tab ([#2795](https://github.com/HankHuang0516/EClaw/issues/2795)) ([86c3f70](https://github.com/HankHuang0516/EClaw/commit/86c3f709a95eebbee1241077b807880463f804b6))
* **promo:** embed daily eclaw video 2026-05-14 ([#2786](https://github.com/HankHuang0516/EClaw/issues/2786)) ([718a814](https://github.com/HankHuang0516/EClaw/commit/718a814ab16850bc2b33a1b303841e2c4378ecfa)), closes [#2782](https://github.com/HankHuang0516/EClaw/issues/2782) [#2693](https://github.com/HankHuang0516/EClaw/issues/2693)
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **info:** embed promo video at top of Quick Start tab ([#2797](https://github.com/HankHuang0516/EClaw/issues/2797)) ([047679f](https://github.com/HankHuang0516/EClaw/commit/047679fd57ab9949eaeacea414d5611e71afe041))
* **rental:** enforce strict rebind refunds ([#2703](https://github.com/HankHuang0516/EClaw/issues/2703)) ([a1859c5](https://github.com/HankHuang0516/EClaw/commit/a1859c50e6fb3991d7a8051491502d824a14a116))
* **portal:** group task chip actions ([#2825](https://github.com/HankHuang0516/EClaw/issues/2825)) ([5db5c59](https://github.com/HankHuang0516/EClaw/commit/5db5c59b32b8635f1412205faf0c2f9164d3d5d4))
* **hermes:** H2 health-check cron + 7d SLA + commander alerts (card_07891ac) ([#2922](https://github.com/HankHuang0516/EClaw/issues/2922)) ([82b4315](https://github.com/HankHuang0516/EClaw/commit/82b4315aea234493e3d1889dc53958c2f1d842e0)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **portal:** info-guide-rules + info-guide-soul slide pair ([#2793](https://github.com/HankHuang0516/EClaw/issues/2793)) ([1c8bddc](https://github.com/HankHuang0516/EClaw/commit/1c8bddc4c185054b2b60088498e3d45509117127)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **chat:** link card previews to kanban ([#2754](https://github.com/HankHuang0516/EClaw/issues/2754)) ([2261240](https://github.com/HankHuang0516/EClaw/commit/22612402c2e95efb07246629e81a849be41ee9c7))
* **mission:** link notes to kanban cards ([#2723](https://github.com/HankHuang0516/EClaw/issues/2723)) ([b36dc18](https://github.com/HankHuang0516/EClaw/commit/b36dc18f3a8facf12e0b6046351c222f1e99dc55))
* **usage-daemon:** macOS launchd daemon polls Claude/Codex usage → POST /api/usage/snapshot (Plan B Phase 2) ([#2890](https://github.com/HankHuang0516/EClaw/issues/2890)) ([fd225e1](https://github.com/HankHuang0516/EClaw/commit/fd225e12d9491037be1a340bd63b54b5f3308c7f))
* **mindmap:** mission.html link to /portal/mindmap.html + deprecate /api/mission/mindmap ([#2685](https://github.com/HankHuang0516/EClaw/issues/2685)) ([11e297b](https://github.com/HankHuang0516/EClaw/commit/11e297bab1c9b56fcde3027d6500b7c58891bf18)), closes [#2680](https://github.com/HankHuang0516/EClaw/issues/2680) [#2684](https://github.com/HankHuang0516/EClaw/issues/2684)
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **portal:** nagoya trip interactive map (Leaflet + OSM, no API key) ([#2888](https://github.com/HankHuang0516/EClaw/issues/2888)) ([ecfdac0](https://github.com/HankHuang0516/EClaw/commit/ecfdac06348c12ee7c6872c6c28d5f82162e7aa9))
* **android:** native tab navigation bridge for portal pages ([#2832](https://github.com/HankHuang0516/EClaw/issues/2832)) ([7e02e6f](https://github.com/HankHuang0516/EClaw/commit/7e02e6f225014e64f08f55035d7b9e5727873343)), closes [#2824](https://github.com/HankHuang0516/EClaw/issues/2824) [#2743](https://github.com/HankHuang0516/EClaw/issues/2743) [#2821](https://github.com/HankHuang0516/EClaw/issues/2821) [#2826](https://github.com/HankHuang0516/EClaw/issues/2826) [#2797](https://github.com/HankHuang0516/EClaw/issues/2797) [#2798](https://github.com/HankHuang0516/EClaw/issues/2798) [#2799](https://github.com/HankHuang0516/EClaw/issues/2799) [#2800](https://github.com/HankHuang0516/EClaw/issues/2800) [#2801](https://github.com/HankHuang0516/EClaw/issues/2801) [#2816](https://github.com/HankHuang0516/EClaw/issues/2816) [#2796](https://github.com/HankHuang0516/EClaw/issues/2796) [#2825](https://github.com/HankHuang0516/EClaw/issues/2825) [#2812](https://github.com/HankHuang0516/EClaw/issues/2812) [#2813](https://github.com/HankHuang0516/EClaw/issues/2813) [#2814](https://github.com/HankHuang0516/EClaw/issues/2814) [#2815](https://github.com/HankHuang0516/EClaw/issues/2815) [#2811](https://github.com/HankHuang0516/EClaw/issues/2811) [#2807](https://github.com/HankHuang0516/EClaw/issues/2807) [#2808](https://github.com/HankHuang0516/EClaw/issues/2808) [#2818](https://github.com/HankHuang0516/EClaw/issues/2818) [#2819](https://github.com/HankHuang0516/EClaw/issues/2819) [#2824](https://github.com/HankHuang0516/EClaw/issues/2824)
* **channel:** outbound backpressure (30/min cap + 429 retry-after) ([#2911](https://github.com/HankHuang0516/EClaw/issues/2911)) ([36dc99c](https://github.com/HankHuang0516/EClaw/commit/36dc99ca78b0e1724a2aaefb5936669077b7a28f))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **ai-support:** pass per-request caller creds to claude-cli-proxy /chat (H3 Phase 2) ([#2947](https://github.com/HankHuang0516/EClaw/issues/2947)) ([1f5378b](https://github.com/HankHuang0516/EClaw/commit/1f5378b9e01d4e650005c338bf81f1ef43535624)), closes [#2937](https://github.com/HankHuang0516/EClaw/issues/2937)
* **settings:** per-entity nudge override UI (Phase 2) ([#2837](https://github.com/HankHuang0516/EClaw/issues/2837)) ([ea7662b](https://github.com/HankHuang0516/EClaw/commit/ea7662b0858882dae461e1387f711895924f9ab8)), closes [3/#4](https://github.com/HankHuang0516/EClaw/issues/4)
* **kanban:** per-entity nudge overrides (Phase 2 of card_e066cb6b) ([#2836](https://github.com/HankHuang0516/EClaw/issues/2836)) ([0425f80](https://github.com/HankHuang0516/EClaw/commit/0425f80bc1169c0d506b665659c8676695c45553))
* **avatar:** petdx render on card-holder my-cards (Phase 1b) ([#2621](https://github.com/HankHuang0516/EClaw/issues/2621)) ([f78ba8b](https://github.com/HankHuang0516/EClaw/commit/f78ba8b18acc426936ab6d8a82ca7541effea00d))
* **avatar:** petdx render on dashboard entity grid / org chart / bindings (Phase 1b) ([#2622](https://github.com/HankHuang0516/EClaw/issues/2622)) ([f417749](https://github.com/HankHuang0516/EClaw/commit/f41774914451048e8cd76e9ae30416a0642e173b)), closes [#2620](https://github.com/HankHuang0516/EClaw/issues/2620) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621)
* **avatar:** petdx render on kanban auto-assign / pulse / comment avatars (Phase 1b) ([#2624](https://github.com/HankHuang0516/EClaw/issues/2624)) ([6bff5f8](https://github.com/HankHuang0516/EClaw/commit/6bff5f80440d0bd91a6b1721cde9478d685c4d46))
* **avatar:** petdx render on mission skill/rule/soul entity dialogs (Phase 1b) ([#2623](https://github.com/HankHuang0516/EClaw/issues/2623)) ([129327b](https://github.com/HankHuang0516/EClaw/commit/129327bc7b91056659f1ab7e8d5e3f5260d951fb))
* **mindmap:** portal/mindmap.html force-graph prototype ([#129](https://github.com/HankHuang0516/EClaw/issues/129)) ([#2681](https://github.com/HankHuang0516/EClaw/issues/2681)) ([0f15e69](https://github.com/HankHuang0516/EClaw/commit/0f15e6930f0697c37fa08f3219edb8f9e499837f)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **channel:** record delivery receipts ([#2913](https://github.com/HankHuang0516/EClaw/issues/2913)) ([90c671b](https://github.com/HankHuang0516/EClaw/commit/90c671bd1970ab51584b90e2b634484ec10cc7ae))
* **portal:** redo nagoya trip page in professional tour-guide style ([#2691](https://github.com/HankHuang0516/EClaw/issues/2691)) ([b2378c0](https://github.com/HankHuang0516/EClaw/commit/b2378c06ee20fa9cccfdceceb1a4c9e0b3072f59))
* **i18n:** remove ms+hi orphan keys from i18n.js ([#2849](https://github.com/HankHuang0516/EClaw/issues/2849)) ([320176c](https://github.com/HankHuang0516/EClaw/commit/320176c06a3cfd8631e2a82ad02a6bd6a9af0389))
* **avatar:** render selected petdx companion in chat avatars ([#2620](https://github.com/HankHuang0516/EClaw/issues/2620)) ([0bdd046](https://github.com/HankHuang0516/EClaw/commit/0bdd046fe1b1c428e32edda366ff112c08927f4c))
* **home:** replace native home with WebView hosting dashboard.html ([#2634](https://github.com/HankHuang0516/EClaw/issues/2634)) ([e69ea81](https://github.com/HankHuang0516/EClaw/commit/e69ea8160c239b083a83d6dc83a4f1c3f901c863))
* **app:** route chat mission jumps through native tabs ([#2824](https://github.com/HankHuang0516/EClaw/issues/2824)) ([deb07b6](https://github.com/HankHuang0516/EClaw/commit/deb07b69a9ecca632fe27278de537f1d85234e94))
* **portal:** scaffold /portal/bot/:id/about backstory page (IP P1) ([#2938](https://github.com/HankHuang0516/EClaw/issues/2938)) ([96d6ca5](https://github.com/HankHuang0516/EClaw/commit/96d6ca506d611e2f9be03d50f76983457277f209))
* **proxy:** scope private repo git auth ([#2926](https://github.com/HankHuang0516/EClaw/issues/2926)) ([246f7ff](https://github.com/HankHuang0516/EClaw/commit/246f7ff1dedaf7bece9e3cb9eb24d0ab32ebb393))
* **android:** show usage on live wallpaper ([3f5698f](https://github.com/HankHuang0516/EClaw/commit/3f5698f5ecdae47129c2e4cf4a4296c6a3ab6659))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **chat:** support message deep links ([#2719](https://github.com/HankHuang0516/EClaw/issues/2719)) ([2dc0f1e](https://github.com/HankHuang0516/EClaw/commit/2dc0f1eeb259e1a0848db4a03186b989372cd91c))
* **mission:** support note deep links ([#2717](https://github.com/HankHuang0516/EClaw/issues/2717)) ([2efd3a5](https://github.com/HankHuang0516/EClaw/commit/2efd3a5e741217a07c0b0ac54a0ddd010e0ebe23))
* **share-chat:** twitter card + per-bot og:image/twitter:* in SSR ([#2609](https://github.com/HankHuang0516/EClaw/issues/2609)) ([6cdc853](https://github.com/HankHuang0516/EClaw/commit/6cdc853dc884cdb95bd47214942768981f218ae0))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))
* **settings:** wire petdx avatar into channel-account chips ([#2626](https://github.com/HankHuang0516/EClaw/issues/2626)) ([88aec77](https://github.com/HankHuang0516/EClaw/commit/88aec772628c240e97b336bb5820892ad632d1ae))
* **files:** wire petdx avatar into entity filter & per-file badges ([#2627](https://github.com/HankHuang0516/EClaw/issues/2627)) ([5b3e5cc](https://github.com/HankHuang0516/EClaw/commit/5b3e5cc542d9da69bb4e92500fd03a542ea33f00))
* **mindmap:** wrap hardcoded zh-TW UI strings with i18n t() ([#2607](https://github.com/HankHuang0516/EClaw/issues/2607)) ([166af87](https://github.com/HankHuang0516/EClaw/commit/166af8772b2121a24aaf34a83b3de970e9b3b571)), closes [#2606](https://github.com/HankHuang0516/EClaw/issues/2606)
* **i18n:** zh-TW backfill 8 keys (soft-pause + chat + invite + wallet) ([#2815](https://github.com/HankHuang0516/EClaw/issues/2815)) ([a2dd574](https://github.com/HankHuang0516/EClaw/commit/a2dd5743ce8d43a4b6ace9a2fd4b52568180d6c5))


### Performance Improvements

* **mindmap:** force-graph hardening for 1000/2000-node graphs ([#2684](https://github.com/HankHuang0516/EClaw/issues/2684)) ([da8b1c8](https://github.com/HankHuang0516/EClaw/commit/da8b1c8f947ab8bc8fa455c1962a91146623a1fc))


### Reverts

* Revert "feat(telegram): long-poll adapter PoC (card_406e612942ff062a06fc47be) ([#2238](https://github.com/HankHuang0516/EClaw/issues/2238))" ([#2239](https://github.com/HankHuang0516/EClaw/issues/2239)) ([eb7aa92](https://github.com/HankHuang0516/EClaw/commit/eb7aa92cce454b4a1a22654a2d133cdebe78c2bd))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-26)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **notifications:** add kanban_done + kanban_done_auto toggles to Android Settings ([#2636](https://github.com/HankHuang0516/EClaw/issues/2636)) ([a710909](https://github.com/HankHuang0516/EClaw/commit/a7109095e3393b8564e7ef1b23d382a4fbb944b8))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **api:** align /api/platform-stats skill-doc with device-auth contract (card_49b8190) ([#2916](https://github.com/HankHuang0516/EClaw/issues/2916)) ([ee55b2f](https://github.com/HankHuang0516/EClaw/commit/ee55b2fdbfbcd4bead5501d16ee66339056c32d7))
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **i18n:** ar block — fix 27 broken entries (CJK leaks + truncated HTML) ([#2851](https://github.com/HankHuang0516/EClaw/issues/2851)) ([5b19175](https://github.com/HankHuang0516/EClaw/commit/5b19175d712d00d16fcec00b749035c4beae7a5c))
* **chat:** atomic-load target bar (await contacts before first render) ([#2831](https://github.com/HankHuang0516/EClaw/issues/2831)) ([5f529e6](https://github.com/HankHuang0516/EClaw/commit/5f529e6b772eacc38ba1de69b44258a05f0d816a)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2](https://github.com/HankHuang0516/EClaw/issues/2)
* **channel:** await binding persistence ([712516d](https://github.com/HankHuang0516/EClaw/commit/712516decafb745035bd1434a28cc1973d433e19))
* **rental:** bump handshake timeout to 60s + timeout-aware discovery fallback ([#2863](https://github.com/HankHuang0516/EClaw/issues/2863)) ([fd4322f](https://github.com/HankHuang0516/EClaw/commit/fd4322f8890f3c2dfca3acdae6a4b95f19c381f9)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **chat:** carry kanban message deep-links ([#2946](https://github.com/HankHuang0516/EClaw/issues/2946)) ([971e2d2](https://github.com/HankHuang0516/EClaw/commit/971e2d27aeb212660901c8707cf418b7b1411286))
* **i18n:** clear batch 1 residual missing keys ([#2790](https://github.com/HankHuang0516/EClaw/issues/2790)) ([211030e](https://github.com/HankHuang0516/EClaw/commit/211030e0b0b6a865c11f0c4ed60dc4e356d43b7a))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **kanban:** comment input no longer overlaps last comment in card detail (PR [#2678](https://github.com/HankHuang0516/EClaw/issues/2678)) ([fba91fc](https://github.com/HankHuang0516/EClaw/commit/fba91fca15402b453a0db5ee857c0b16e6087055))
* **chat:** compact 20px avatar in target bar (App WebView only shows [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2](https://github.com/HankHuang0516/EClaw/issues/2)) ([#2830](https://github.com/HankHuang0516/EClaw/issues/2830)) ([42c7543](https://github.com/HankHuang0516/EClaw/commit/42c7543b4a78a7abf3f5f7535eb9bc6142cd0fe2)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **portal:** complete 401 redirect sweep + mobile UIUX truncation ([#2842](https://github.com/HankHuang0516/EClaw/issues/2842)) ([f9799ba](https://github.com/HankHuang0516/EClaw/commit/f9799ba42498b109f0a8a70e80836aa6da51e216)), closes [#2833](https://github.com/HankHuang0516/EClaw/issues/2833) [#2845](https://github.com/HankHuang0516/EClaw/issues/2845) [#2844](https://github.com/HankHuang0516/EClaw/issues/2844) [#2843](https://github.com/HankHuang0516/EClaw/issues/2843)
* **uiux:** continue qa mobile readability sweep ([#2854](https://github.com/HankHuang0516/EClaw/issues/2854)) ([57606ff](https://github.com/HankHuang0516/EClaw/commit/57606ffe3e543b07a026aacc53c4b470c9a7825b))
* **i18n:** cover dynamic portal wrapper keys ([#2807](https://github.com/HankHuang0516/EClaw/issues/2807)) ([4c711cc](https://github.com/HankHuang0516/EClaw/commit/4c711cc4009300ffe4e8933a98ee01cd0fdd6aeb))
* **i18n:** dedup 20 dash_channel_card_* keys in es block ([#2876](https://github.com/HankHuang0516/EClaw/issues/2876)) ([807284c](https://github.com/HankHuang0516/EClaw/commit/807284ce363ef119ccdb0ae40e5ce99d3f0a27e0))
* **i18n:** dedupe backend locale keys via AST ([#2920](https://github.com/HankHuang0516/EClaw/issues/2920)) ([40ef114](https://github.com/HankHuang0516/EClaw/commit/40ef11414c8b836fe1ed93ec06c839df3a1bf7b9))
* **i18n:** dedupe zh locale keys ([#2919](https://github.com/HankHuang0516/EClaw/issues/2919)) ([afd2cca](https://github.com/HankHuang0516/EClaw/commit/afd2cca8086c2f2df0d04c9c5f8c58733652875e))
* **test:** delegate root test and remove invalid jest option ([#2292](https://github.com/HankHuang0516/EClaw/issues/2292)) ([65bf2f8](https://github.com/HankHuang0516/EClaw/commit/65bf2f83d26d925097cd380ab73b04ab2db49842))
* **kanban:** dep-aware nudge gating + roadmap dependency backfill ([#2904](https://github.com/HankHuang0516/EClaw/issues/2904)) ([2b76ac9](https://github.com/HankHuang0516/EClaw/commit/2b76ac9d3b7e4169b7bc3c6f6b0b0903b63cd9f7)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **rental:** don't pollute entity.message on push gateway timeout ([#2860](https://github.com/HankHuang0516/EClaw/issues/2860)) ([592ba44](https://github.com/HankHuang0516/EClaw/commit/592ba44f57536ee00011b6cbddaa6b129a7cbae9))
* **petdx:** drop dark-grey loading placeholder + preload sprite WEBP ([#2628](https://github.com/HankHuang0516/EClaw/issues/2628)) ([59cef38](https://github.com/HankHuang0516/EClaw/commit/59cef387bd69ca99d7d15c86a1364856d3849ad8)), closes [#1a1a1a](https://github.com/HankHuang0516/EClaw/issues/1a1a1a)
* **gateway-ws:** drop Origin header on server-to-server WS upgrade ([#2869](https://github.com/HankHuang0516/EClaw/issues/2869)) ([716dcf9](https://github.com/HankHuang0516/EClaw/commit/716dcf9d0834b17522bb9d894bad84bc142d1a19))
* **setup-scripts:** drop Origin header on server-to-server WS upgrade ([#2875](https://github.com/HankHuang0516/EClaw/issues/2875)) ([9d893b8](https://github.com/HankHuang0516/EClaw/commit/9d893b8e5eea4db275e450bf423903c156cd3e4b)), closes [#2869](https://github.com/HankHuang0516/EClaw/issues/2869)
* **security:** escape innerHTML in chat modal error messages ([#2819](https://github.com/HankHuang0516/EClaw/issues/2819)) ([dce07ad](https://github.com/HankHuang0516/EClaw/commit/dce07adde64795916dba977ae23e46f3371ce7ed)), closes [#2809](https://github.com/HankHuang0516/EClaw/issues/2809) [#2810](https://github.com/HankHuang0516/EClaw/issues/2810) [#2809](https://github.com/HankHuang0516/EClaw/issues/2809) [#2810](https://github.com/HankHuang0516/EClaw/issues/2810)
* **proxy:** export repo auth to CLI child ([#2928](https://github.com/HankHuang0516/EClaw/issues/2928)) ([336a8ca](https://github.com/HankHuang0516/EClaw/commit/336a8caff4e3663287bd2948cf9fe6e04125cbc8))
* **entities:** expose botSecret to owner so wallpaper service can poll companions ([#2615](https://github.com/HankHuang0516/EClaw/issues/2615)) ([04470fc](https://github.com/HankHuang0516/EClaw/commit/04470fce8f8c3fce2b1ba8b243e776606f107502))
* **rental:** expose owner_public_code in marketplace so plaza CTA can route ([#2616](https://github.com/HankHuang0516/EClaw/issues/2616)) ([4d1372f](https://github.com/HankHuang0516/EClaw/commit/4d1372f717d93cab65543e87c852e74e9fb67071)), closes [#2610](https://github.com/HankHuang0516/EClaw/issues/2610)
* **mindmap:** fallback to device scope when entityId is null ([#2728](https://github.com/HankHuang0516/EClaw/issues/2728)) ([7572312](https://github.com/HankHuang0516/EClaw/commit/7572312433d3d75fc245eda48a28919ce14bd927))
* **i18n:** fill 11 missing zh keys post-[#2920](https://github.com/HankHuang0516/EClaw/issues/2920)/[#2921](https://github.com/HankHuang0516/EClaw/issues/2921) (card_de6970) ([#2924](https://github.com/HankHuang0516/EClaw/issues/2924)) ([17c4899](https://github.com/HankHuang0516/EClaw/commit/17c48996489b1444d6ed589027acfa7986178fe1)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** fill backend runtime locale gaps ([#2921](https://github.com/HankHuang0516/EClaw/issues/2921)) ([00d96ff](https://github.com/HankHuang0516/EClaw/commit/00d96ff261b8134b49292623e1f786fd544144cc))
* **i18n:** fill Spanish drift keys ([#2751](https://github.com/HankHuang0516/EClaw/issues/2751)) ([0ad0ee5](https://github.com/HankHuang0516/EClaw/commit/0ad0ee55f7fac3e6ac46d891539950dab4d553cc))
* **portal:** fit embedded org chart to mobile viewport ([#2674](https://github.com/HankHuang0516/EClaw/issues/2674)) ([1c4e1b4](https://github.com/HankHuang0516/EClaw/commit/1c4e1b413ea7027b4cd4b8ecda981b0d0e12e66b))
* **i18n:** fix 6 trailing-comma syntax errors in 10-locale batch ([#2771](https://github.com/HankHuang0516/EClaw/issues/2771)) ([b27c6ca](https://github.com/HankHuang0516/EClaw/commit/b27c6ca204bf813e406c54ce3a2532a5f1f031b3))
* **kanban:** GET card returns latest 50 comments + comments endpoint exposes total ([#2816](https://github.com/HankHuang0516/EClaw/issues/2816)) ([c4d83f7](https://github.com/HankHuang0516/EClaw/commit/c4d83f777a1cd26aea0936e4316aa35c52822eef))
* **sharechat:** guest verify-email modal + disabled Send for unverified ([#2865](https://github.com/HankHuang0516/EClaw/issues/2865)) ([cb3b061](https://github.com/HankHuang0516/EClaw/commit/cb3b0614e0f6160417d907753e66eceb2d666802))
* **portal:** H4 showcase i18n data-attrs + raw key leak ([#2935](https://github.com/HankHuang0516/EClaw/issues/2935)) ([80d8587](https://github.com/HankHuang0516/EClaw/commit/80d8587c00c03f72fdb9756b1093ee8e1e3d0842)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **uiux:** harden chat previews and roster preview ([#2769](https://github.com/HankHuang0516/EClaw/issues/2769)) ([466d4d3](https://github.com/HankHuang0516/EClaw/commit/466d4d3ef81c628d3f58db64323946053d7bf61c))
* **mention-parser:** ignore @-mentions inside markdown code spans ([#2645](https://github.com/HankHuang0516/EClaw/issues/2645)) ([8da19d4](https://github.com/HankHuang0516/EClaw/commit/8da19d4a79ceb4152bf2144ee0847c61ce3e1def)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **kanban:** lazy-load dependency chips via IntersectionObserver ([#2632](https://github.com/HankHuang0516/EClaw/issues/2632)) ([20586b4](https://github.com/HankHuang0516/EClaw/commit/20586b43357335f9eb6a190c02d58c8e36b58aba)), closes [#2631](https://github.com/HankHuang0516/EClaw/issues/2631)
* **i18n:** localize FCM NotificationChannel labels (card_ec8d3a22) ([#2918](https://github.com/HankHuang0516/EClaw/issues/2918)) ([591cd20](https://github.com/HankHuang0516/EClaw/commit/591cd206704693650a53d19d94c4cc75daf84ffd))
* **kanban:** make card sorting deterministic ([#2756](https://github.com/HankHuang0516/EClaw/issues/2756)) ([48e2117](https://github.com/HankHuang0516/EClaw/commit/48e2117b64e37f05dc635e0a3b67bfd43cbe48f5))
* **portal/nagoya-trip:** map-link invisible on dark hero/day-banner ([#2897](https://github.com/HankHuang0516/EClaw/issues/2897)) ([cc33df6](https://github.com/HankHuang0516/EClaw/commit/cc33df686673455c20beaee60871412a5d486e66)), closes [#1f4030](https://github.com/HankHuang0516/EClaw/issues/1f4030) [#8b8579](https://github.com/HankHuang0516/EClaw/issues/8b8579) [#6e6859](https://github.com/HankHuang0516/EClaw/issues/6e6859) [#7a5614](https://github.com/HankHuang0516/EClaw/issues/7a5614)
* **portal:** mobile delete-modal clipped right edge (P0) ([#2951](https://github.com/HankHuang0516/EClaw/issues/2951)) ([00418ca](https://github.com/HankHuang0516/EClaw/commit/00418ca812d5b757e35d12a9810b124f30491bbb))
* **org-chart:** notify affected bots on hierarchy change ([#2812](https://github.com/HankHuang0516/EClaw/issues/2812)) ([55675fd](https://github.com/HankHuang0516/EClaw/commit/55675fdf4487494d729a29524b32bd81b756a00c)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** notify reviewer on manual /move → review ([#2753](https://github.com/HankHuang0516/EClaw/issues/2753)) ([6cbbb4e](https://github.com/HankHuang0516/EClaw/commit/6cbbb4ee8c0d4d8ad54df2e9b5faaa3699bd530f))
* **wallpaper:** off-load spritesheet fetch to IO so per-petdx sprites actually render ([#2618](https://github.com/HankHuang0516/EClaw/issues/2618)) ([61b832c](https://github.com/HankHuang0516/EClaw/commit/61b832c9fa8a1d0caab810ccc942d85c63349267)), closes [#2615](https://github.com/HankHuang0516/EClaw/issues/2615) [#2577](https://github.com/HankHuang0516/EClaw/issues/2577)
* **security:** patch P0 sanitize-html XSS + P1 protobufjs + exam.html XSS ([#2829](https://github.com/HankHuang0516/EClaw/issues/2829)) ([c71b871](https://github.com/HankHuang0516/EClaw/commit/c71b871a045887375dd0d26d1a3280a0891a89ad))
* **security:** patch ws uninitialized memory disclosure (GHSA-58qx-3vcg-4xpx) ([#2872](https://github.com/HankHuang0516/EClaw/issues/2872)) ([2523d15](https://github.com/HankHuang0516/EClaw/commit/2523d154bbe501a7cc086340f7a07ece3abfa69b))
* **portal:** petdx-browser cookie-session fallback for device-login ([#2757](https://github.com/HankHuang0516/EClaw/issues/2757)) ([ca275f4](https://github.com/HankHuang0516/EClaw/commit/ca275f4519835da0c7ad71c588908a18f6f138d8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **api:** platform-stats 500 + entity/lookup publicCode alias ([#2809](https://github.com/HankHuang0516/EClaw/issues/2809), [#2810](https://github.com/HankHuang0516/EClaw/issues/2810)) ([#2818](https://github.com/HankHuang0516/EClaw/issues/2818)) ([f99fd17](https://github.com/HankHuang0516/EClaw/commit/f99fd17b2b1c32d88daa2510ff66d714c1a53edc))
* **i18n:** positional format specifiers for feedback_result_logs (7 locales) ([#2597](https://github.com/HankHuang0516/EClaw/issues/2597)) ([21aedc7](https://github.com/HankHuang0516/EClaw/commit/21aedc7eebc7a2839e340136f38dfdfd4dabb9dc))
* **avatar-petdx:** preserve descriptor across transient API failures (flicker) ([#2625](https://github.com/HankHuang0516/EClaw/issues/2625)) ([7b1c606](https://github.com/HankHuang0516/EClaw/commit/7b1c606514f7698d72ec95cf6c556e4043966186))
* **chat:** preserve recipient selection across rental-health refresh (P0 #card_eb1cba76) ([#2906](https://github.com/HankHuang0516/EClaw/issues/2906)) ([9cc0301](https://github.com/HankHuang0516/EClaw/commit/9cc0301cc26a0f49af4b7f53486f5c1a7cdd7902)), closes [#card_eb1cba76](https://github.com/HankHuang0516/EClaw/issues/card_eb1cba76) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **chat:** preserve scroll anchor while reading history ([#2693](https://github.com/HankHuang0516/EClaw/issues/2693)) ([945fdb7](https://github.com/HankHuang0516/EClaw/commit/945fdb7192b791b31882e1e75568dd8b11e4686f))
* **qa:** protect contact reads and refresh UX audits ([#2955](https://github.com/HankHuang0516/EClaw/issues/2955)) ([24dc2ec](https://github.com/HankHuang0516/EClaw/commit/24dc2ec5e2eb0b099d4231e440fd29e65ef83dc8))
* **promo:** pull video embed from /promo-chat-avatar.html ([#2724](https://github.com/HankHuang0516/EClaw/issues/2724)) ([2afabc8](https://github.com/HankHuang0516/EClaw/commit/2afabc8c5ff8b25218a7cb857e8adfa572c8e9d5))
* **dashboard:** read live.rate_limits.{five_hour,seven_day}.used_percentage ([#2895](https://github.com/HankHuang0516/EClaw/issues/2895)) ([8223303](https://github.com/HankHuang0516/EClaw/commit/822330312bccb1c76675ad2c3b26e78d10dd1298))
* **kanban:** realign stale recurring schedules ([#2785](https://github.com/HankHuang0516/EClaw/issues/2785)) ([ab8ee25](https://github.com/HankHuang0516/EClaw/commit/ab8ee250a9b37f3d3e838bb01d8866c8d2b78231))
* **i18n:** reapply de6970 locale gap translations ([#2925](https://github.com/HankHuang0516/EClaw/issues/2925)) ([d994dc1](https://github.com/HankHuang0516/EClaw/commit/d994dc1d240fef72326db2599262375ccbf29175))
* **portal:** reduce QA-discovered request fanout ([#2656](https://github.com/HankHuang0516/EClaw/issues/2656)) ([1e46d6b](https://github.com/HankHuang0516/EClaw/commit/1e46d6bab61e58c65b452b6503d953f8dddeee75))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **portal:** remove org chart fit scale floor ([#2676](https://github.com/HankHuang0516/EClaw/issues/2676)) ([0f01606](https://github.com/HankHuang0516/EClaw/commit/0f016068b963bb5f800a02f28817c7174979d913))
* **rental:** remove phantom 'webhook test push' step from BIND_COMPLETE ([#2864](https://github.com/HankHuang0516/EClaw/issues/2864)) ([47f4a3e](https://github.com/HankHuang0516/EClaw/commit/47f4a3edf76aa95ebd06d8713cd44fda6eef9b5d))
* **i18n:** rename mm_empty_title → mm_state_empty_title in mindmap.html ([#2683](https://github.com/HankHuang0516/EClaw/issues/2683)) ([c79c109](https://github.com/HankHuang0516/EClaw/commit/c79c109bea23142e8a6d9ace976d105af1280ec9))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **chat:** render mention avatars with companion renderer ([#2633](https://github.com/HankHuang0516/EClaw/issues/2633)) ([03e205f](https://github.com/HankHuang0516/EClaw/commit/03e205f663ecd2c2f443d4009dd5af0093f0bbbb))
* **kanban:** reserve mobile comments panel height ([#2782](https://github.com/HankHuang0516/EClaw/issues/2782)) ([ce8662d](https://github.com/HankHuang0516/EClaw/commit/ce8662d362422fdd25037f1deb61dbed9425e2f9))
* **channel:** restore handshake fallback to discovered sessions ([#2915](https://github.com/HankHuang0516/EClaw/issues/2915)) ([#2917](https://github.com/HankHuang0516/EClaw/issues/2917)) ([9d7d3a2](https://github.com/HankHuang0516/EClaw/commit/9d7d3a25654289998314dd5ca152cefdb8a4d64e)), closes [#2912](https://github.com/HankHuang0516/EClaw/issues/2912)
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* scheduled audit 2026-05-13 — 6 bugs, XSS, i18n ([#2668](https://github.com/HankHuang0516/EClaw/issues/2668)) ([21dd513](https://github.com/HankHuang0516/EClaw/commit/21dd513b4464738de29164265437435ba6cc4817)), closes [#2605](https://github.com/HankHuang0516/EClaw/issues/2605) [#2608](https://github.com/HankHuang0516/EClaw/issues/2608) [#2600](https://github.com/HankHuang0516/EClaw/issues/2600) [#2599](https://github.com/HankHuang0516/EClaw/issues/2599) [#2598](https://github.com/HankHuang0516/EClaw/issues/2598)
* **channel:** scope official bot sessions ([#2912](https://github.com/HankHuang0516/EClaw/issues/2912)) ([5c56b62](https://github.com/HankHuang0516/EClaw/commit/5c56b62c13b739b76f39e168a26bd4e5de2644fb))
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **dashboard:** show Claude weekly bar reset countdown ([#2896](https://github.com/HankHuang0516/EClaw/issues/2896)) ([3b87845](https://github.com/HankHuang0516/EClaw/commit/3b87845d713e980fec69f6b8007549338a326713)), closes [#2895](https://github.com/HankHuang0516/EClaw/issues/2895)
* **chat:** smart-chip preview falls back to inline c.comments when /comments fails (PR [#2677](https://github.com/HankHuang0516/EClaw/issues/2677)) ([7f4dffd](https://github.com/HankHuang0516/EClaw/commit/7f4dffd2c83ea86f296b8fa0610f0e67c9f1af11))
* **kanban:** stabilize comment detail viewport ([#2796](https://github.com/HankHuang0516/EClaw/issues/2796)) ([0a10aad](https://github.com/HankHuang0516/EClaw/commit/0a10aadb5a5b12ff23454c16d5c88183b94ad7d7))
* **wallpaper:** stop Android live wallpaper flashing default lobster on companion change ([#2629](https://github.com/HankHuang0516/EClaw/issues/2629)) ([8b4f66f](https://github.com/HankHuang0516/EClaw/commit/8b4f66fcb335bf43128f924b761b6337c817095b)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **chat:** stop chat.html bouncing to dashboard via /api/rental/health-status 401 race ([#2833](https://github.com/HankHuang0516/EClaw/issues/2833)) ([c422406](https://github.com/HankHuang0516/EClaw/commit/c4224067cdcfe7f3e22ab95007c7563dac4196ac))
* **openclaw-channel:** support OpenClaw 2026.5.20 ([8045de6](https://github.com/HankHuang0516/EClaw/commit/8045de6bebecfc05f9bd57453b99c098ca35681b))
* **mentions:** support same-device CJK display-name tags ([#2874](https://github.com/HankHuang0516/EClaw/issues/2874)) ([b8f61be](https://github.com/HankHuang0516/EClaw/commit/b8f61be9a3962fef75dd32ea34e8900880dafaf9))
* **channel:** suppress operational A2A loop messages (rebase of [#2288](https://github.com/HankHuang0516/EClaw/issues/2288)) ([#2930](https://github.com/HankHuang0516/EClaw/issues/2930)) ([7ceabc9](https://github.com/HankHuang0516/EClaw/commit/7ceabc915df22123cb46ae1500e2eb2e279250af))
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **dashboard:** use sessions[].project for widget Projects list (was .project_id) ([#2894](https://github.com/HankHuang0516/EClaw/issues/2894)) ([0fd1334](https://github.com/HankHuang0516/EClaw/commit/0fd1334897d4a603cc6eb74f34b48606547e09cf))
* **app:** WebView pages honor app-selected locale via ?lang= URL param ([#2672](https://github.com/HankHuang0516/EClaw/issues/2672)) ([8ed8757](https://github.com/HankHuang0516/EClaw/commit/8ed8757aec5bf214e837cc0d81bf2b23f1993a91)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **share-chat:** wire rich CTA actions to msgInput ([#2867](https://github.com/HankHuang0516/EClaw/issues/2867)) ([df23b11](https://github.com/HankHuang0516/EClaw/commit/df23b1147d34c59a644a145bbd87c18b96400acc))


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* **usage-api:** /api/usage/{snapshot,timeline} + usage_snapshots table (Plan B Phase 1) ([#2889](https://github.com/HankHuang0516/EClaw/issues/2889)) ([a0d859c](https://github.com/HankHuang0516/EClaw/commit/a0d859c63f0220909dadb2b1952174861ccdce14))
* **community:** 1-click chat button on bot cards + utm tagging ([#2610](https://github.com/HankHuang0516/EClaw/issues/2610)) ([eee97b0](https://github.com/HankHuang0516/EClaw/commit/eee97b0e2e4e74945ec24f218a69a52800b97a66))
* **chat:** accept ?messageId= as deep-link alias ([#2838](https://github.com/HankHuang0516/EClaw/issues/2838)) ([1785a87](https://github.com/HankHuang0516/EClaw/commit/1785a87310426637fd10df83754fb9924c45207f))
* **chat:** add avatar size preference ([#2714](https://github.com/HankHuang0516/EClaw/issues/2714)) ([6fe164a](https://github.com/HankHuang0516/EClaw/commit/6fe164ad8b22fa576d2dd9ad37c0d9fc295b5a83))
* **dashboard:** add Claude and Codex channel guides ([#2640](https://github.com/HankHuang0516/EClaw/issues/2640)) ([c64e4c4](https://github.com/HankHuang0516/EClaw/commit/c64e4c4afc78db58c5cd578f00486dd7b2fd3311))
* **dashboard:** add Claude Code channel guide card ([#2667](https://github.com/HankHuang0516/EClaw/issues/2667)) ([d70d75c](https://github.com/HankHuang0516/EClaw/commit/d70d75c0c8caa8a540358a9aab4556b8c1927a5c))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* **api:** add DELETE /api/entity/queue to clear messageQueue ([#616](https://github.com/HankHuang0516/EClaw/issues/616)) ([16ee3ff](https://github.com/HankHuang0516/EClaw/commit/16ee3ff1c6aa7f8ef187e54e5e7169f2e44f7395))
* **kanban:** add device-scoped card tags ([#2773](https://github.com/HankHuang0516/EClaw/issues/2773)) ([53a387e](https://github.com/HankHuang0516/EClaw/commit/53a387e67ba7bb4f6bed1c427000c4ae8666577a))
* **portal:** add entity selector to petdx-browser ([#2602](https://github.com/HankHuang0516/EClaw/issues/2602)) ([3fa067e](https://github.com/HankHuang0516/EClaw/commit/3fa067e00b38829b48a37cecd33ee81a9a1122d9))
* **kanban:** add explicit card links ([#2721](https://github.com/HankHuang0516/EClaw/issues/2721)) ([ef9f812](https://github.com/HankHuang0516/EClaw/commit/ef9f812a3fcf39efd07fd158ce90951bdd045ac7))
* **kanban:** add explicit done-card reopen flow ([#2801](https://github.com/HankHuang0516/EClaw/issues/2801)) ([5080aac](https://github.com/HankHuang0516/EClaw/commit/5080aacb75047c0deaa379ee708ec85465afd57c))
* **mindmap:** add GET /api/mindmap/graph force-graph projection ([#2680](https://github.com/HankHuang0516/EClaw/issues/2680)) ([a00b2e7](https://github.com/HankHuang0516/EClaw/commit/a00b2e775af2c4c98cd157f760ad87aeeee469f0)), closes [#2679](https://github.com/HankHuang0516/EClaw/issues/2679) [#2679](https://github.com/HankHuang0516/EClaw/issues/2679)
* **dashboard:** add Hermes channel promo card ([#2708](https://github.com/HankHuang0516/EClaw/issues/2708)) ([337aca1](https://github.com/HankHuang0516/EClaw/commit/337aca153d5a1cd7e888c065f00ae54db7872d91))
* **rental:** add listing soft pause ([#2781](https://github.com/HankHuang0516/EClaw/issues/2781)) ([6586b72](https://github.com/HankHuang0516/EClaw/commit/6586b72717ddb1637d91cd3242c8d2ff554f62b4))
* **portal:** add Nagoya 5D4N trip static cross-ref page ([#2689](https://github.com/HankHuang0516/EClaw/issues/2689)) ([2e0efb6](https://github.com/HankHuang0516/EClaw/commit/2e0efb6dcdaff52226cc8854a96747000b12bdff))
* **portal:** add Nagoya image atlas static page ([#2743](https://github.com/HankHuang0516/EClaw/issues/2743)) ([ac026e9](https://github.com/HankHuang0516/EClaw/commit/ac026e9fd2c92ac9437d01edddffc9adf972f6ba))
* **portal:** add Nagoya trip map links and image lightbox ([#2821](https://github.com/HankHuang0516/EClaw/issues/2821)) ([3e40955](https://github.com/HankHuang0516/EClaw/commit/3e40955650a05f45a6b9f7e39e73847705424a03))
* **portal/nagoya:** add parking shortcut buttons next to itinerary places ([#2826](https://github.com/HankHuang0516/EClaw/issues/2826)) ([63968c5](https://github.com/HankHuang0516/EClaw/commit/63968c554d046afc8d978de74e3aacbf7700500d))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **settings:** add rental roster management preview ([#2758](https://github.com/HankHuang0516/EClaw/issues/2758)) ([9706e59](https://github.com/HankHuang0516/EClaw/commit/9706e59ded140a90a6e02348124282bc69d89001))
* **rental:** add renter health chat indicator ([#2690](https://github.com/HankHuang0516/EClaw/issues/2690)) ([36cd2e9](https://github.com/HankHuang0516/EClaw/commit/36cd2e9802be4c7ebb03d3024617fa74aca48ffd))
* **ios:** add Tutorial & Intro entry in Settings ([#2800](https://github.com/HankHuang0516/EClaw/issues/2800)) ([ed83e51](https://github.com/HankHuang0516/EClaw/commit/ed83e51d043bf4cd5865f38dc95a91ed54820d6c))
* **landing:** add Watch Full Demo CTA below hero video ([#2799](https://github.com/HankHuang0516/EClaw/issues/2799)) ([66107c9](https://github.com/HankHuang0516/EClaw/commit/66107c954727551fd34d989a4674daaad9b63968))
* **footer:** add Watch Intro Video link in Info column ([#2798](https://github.com/HankHuang0516/EClaw/issues/2798)) ([d7c6d59](https://github.com/HankHuang0516/EClaw/commit/d7c6d596b69c6a5b257bf1f7a792a407ef9712ad))
* **i18n:** ar iter-2 — fill 623 missing keys against en source ([#2847](https://github.com/HankHuang0516/EClaw/issues/2847)) ([ee94a7a](https://github.com/HankHuang0516/EClaw/commit/ee94a7ae6812b5163efe4284ee4907ca32302f5c))
* **kanban:** backlog launch-gate flag to suppress L1/L2/L3 escalation ([#2855](https://github.com/HankHuang0516/EClaw/issues/2855)) ([cb8bf1b](https://github.com/HankHuang0516/EClaw/commit/cb8bf1bb6421f25214f65e129a8cadccc49cc266)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#4](https://github.com/HankHuang0516/EClaw/issues/4) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **companion:** bridge crafter-station/petdex gallery (1784 pets) ([#2601](https://github.com/HankHuang0516/EClaw/issues/2601)) ([2e245be](https://github.com/HankHuang0516/EClaw/commit/2e245bea6dd47ea7361b927d389188a3c23b6bb3))
* **promo:** chat avatar size feature landing page (self-hosted MP4) ([#2722](https://github.com/HankHuang0516/EClaw/issues/2722)) ([3852210](https://github.com/HankHuang0516/EClaw/commit/3852210d355704d018e3daca6b5f9512a011b210)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **kanban:** cron-spawn jitter + lane backpressure to prevent same-tick wedge ([#2791](https://github.com/HankHuang0516/EClaw/issues/2791)) ([9f414a7](https://github.com/HankHuang0516/EClaw/commit/9f414a731d6393672a0a4189c7b408c529ae5e12)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **portal:** dashboard usage widget — Claude/Codex 5h gauges + 24h chart (Plan B Phase 3) ([#2891](https://github.com/HankHuang0516/EClaw/issues/2891)) ([d18f373](https://github.com/HankHuang0516/EClaw/commit/d18f373857e4bd302437d6bda2a1e01871fbb1db))
* **portal:** dashboard usage widget v2 — Session/Weekly % bars + projects, no cost (Plan B Phase 3.1) ([#2893](https://github.com/HankHuang0516/EClaw/issues/2893)) ([4bc0dc7](https://github.com/HankHuang0516/EClaw/commit/4bc0dc744ed9d54dfd532ebac4b705c7f84ec0a6))
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **info:** embed 75s promo video on Quick Start tab ([#2795](https://github.com/HankHuang0516/EClaw/issues/2795)) ([86c3f70](https://github.com/HankHuang0516/EClaw/commit/86c3f709a95eebbee1241077b807880463f804b6))
* **promo:** embed daily eclaw video 2026-05-14 ([#2786](https://github.com/HankHuang0516/EClaw/issues/2786)) ([718a814](https://github.com/HankHuang0516/EClaw/commit/718a814ab16850bc2b33a1b303841e2c4378ecfa)), closes [#2782](https://github.com/HankHuang0516/EClaw/issues/2782) [#2693](https://github.com/HankHuang0516/EClaw/issues/2693)
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **info:** embed promo video at top of Quick Start tab ([#2797](https://github.com/HankHuang0516/EClaw/issues/2797)) ([047679f](https://github.com/HankHuang0516/EClaw/commit/047679fd57ab9949eaeacea414d5611e71afe041))
* **rental:** enforce strict rebind refunds ([#2703](https://github.com/HankHuang0516/EClaw/issues/2703)) ([a1859c5](https://github.com/HankHuang0516/EClaw/commit/a1859c50e6fb3991d7a8051491502d824a14a116))
* **portal:** group task chip actions ([#2825](https://github.com/HankHuang0516/EClaw/issues/2825)) ([5db5c59](https://github.com/HankHuang0516/EClaw/commit/5db5c59b32b8635f1412205faf0c2f9164d3d5d4))
* **hermes:** H2 health-check cron + 7d SLA + commander alerts (card_07891ac) ([#2922](https://github.com/HankHuang0516/EClaw/issues/2922)) ([82b4315](https://github.com/HankHuang0516/EClaw/commit/82b4315aea234493e3d1889dc53958c2f1d842e0)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **portal:** info-guide-rules + info-guide-soul slide pair ([#2793](https://github.com/HankHuang0516/EClaw/issues/2793)) ([1c8bddc](https://github.com/HankHuang0516/EClaw/commit/1c8bddc4c185054b2b60088498e3d45509117127)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **chat:** link card previews to kanban ([#2754](https://github.com/HankHuang0516/EClaw/issues/2754)) ([2261240](https://github.com/HankHuang0516/EClaw/commit/22612402c2e95efb07246629e81a849be41ee9c7))
* **mission:** link notes to kanban cards ([#2723](https://github.com/HankHuang0516/EClaw/issues/2723)) ([b36dc18](https://github.com/HankHuang0516/EClaw/commit/b36dc18f3a8facf12e0b6046351c222f1e99dc55))
* **usage-daemon:** macOS launchd daemon polls Claude/Codex usage → POST /api/usage/snapshot (Plan B Phase 2) ([#2890](https://github.com/HankHuang0516/EClaw/issues/2890)) ([fd225e1](https://github.com/HankHuang0516/EClaw/commit/fd225e12d9491037be1a340bd63b54b5f3308c7f))
* **mindmap:** mission.html link to /portal/mindmap.html + deprecate /api/mission/mindmap ([#2685](https://github.com/HankHuang0516/EClaw/issues/2685)) ([11e297b](https://github.com/HankHuang0516/EClaw/commit/11e297bab1c9b56fcde3027d6500b7c58891bf18)), closes [#2680](https://github.com/HankHuang0516/EClaw/issues/2680) [#2684](https://github.com/HankHuang0516/EClaw/issues/2684)
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **portal:** nagoya trip interactive map (Leaflet + OSM, no API key) ([#2888](https://github.com/HankHuang0516/EClaw/issues/2888)) ([ecfdac0](https://github.com/HankHuang0516/EClaw/commit/ecfdac06348c12ee7c6872c6c28d5f82162e7aa9))
* **android:** native tab navigation bridge for portal pages ([#2832](https://github.com/HankHuang0516/EClaw/issues/2832)) ([7e02e6f](https://github.com/HankHuang0516/EClaw/commit/7e02e6f225014e64f08f55035d7b9e5727873343)), closes [#2824](https://github.com/HankHuang0516/EClaw/issues/2824) [#2743](https://github.com/HankHuang0516/EClaw/issues/2743) [#2821](https://github.com/HankHuang0516/EClaw/issues/2821) [#2826](https://github.com/HankHuang0516/EClaw/issues/2826) [#2797](https://github.com/HankHuang0516/EClaw/issues/2797) [#2798](https://github.com/HankHuang0516/EClaw/issues/2798) [#2799](https://github.com/HankHuang0516/EClaw/issues/2799) [#2800](https://github.com/HankHuang0516/EClaw/issues/2800) [#2801](https://github.com/HankHuang0516/EClaw/issues/2801) [#2816](https://github.com/HankHuang0516/EClaw/issues/2816) [#2796](https://github.com/HankHuang0516/EClaw/issues/2796) [#2825](https://github.com/HankHuang0516/EClaw/issues/2825) [#2812](https://github.com/HankHuang0516/EClaw/issues/2812) [#2813](https://github.com/HankHuang0516/EClaw/issues/2813) [#2814](https://github.com/HankHuang0516/EClaw/issues/2814) [#2815](https://github.com/HankHuang0516/EClaw/issues/2815) [#2811](https://github.com/HankHuang0516/EClaw/issues/2811) [#2807](https://github.com/HankHuang0516/EClaw/issues/2807) [#2808](https://github.com/HankHuang0516/EClaw/issues/2808) [#2818](https://github.com/HankHuang0516/EClaw/issues/2818) [#2819](https://github.com/HankHuang0516/EClaw/issues/2819) [#2824](https://github.com/HankHuang0516/EClaw/issues/2824)
* **channel:** outbound backpressure (30/min cap + 429 retry-after) ([#2911](https://github.com/HankHuang0516/EClaw/issues/2911)) ([36dc99c](https://github.com/HankHuang0516/EClaw/commit/36dc99ca78b0e1724a2aaefb5936669077b7a28f))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **ai-support:** pass per-request caller creds to claude-cli-proxy /chat (H3 Phase 2) ([#2947](https://github.com/HankHuang0516/EClaw/issues/2947)) ([1f5378b](https://github.com/HankHuang0516/EClaw/commit/1f5378b9e01d4e650005c338bf81f1ef43535624)), closes [#2937](https://github.com/HankHuang0516/EClaw/issues/2937)
* **settings:** per-entity nudge override UI (Phase 2) ([#2837](https://github.com/HankHuang0516/EClaw/issues/2837)) ([ea7662b](https://github.com/HankHuang0516/EClaw/commit/ea7662b0858882dae461e1387f711895924f9ab8)), closes [3/#4](https://github.com/HankHuang0516/EClaw/issues/4)
* **kanban:** per-entity nudge overrides (Phase 2 of card_e066cb6b) ([#2836](https://github.com/HankHuang0516/EClaw/issues/2836)) ([0425f80](https://github.com/HankHuang0516/EClaw/commit/0425f80bc1169c0d506b665659c8676695c45553))
* **avatar:** petdx render on card-holder my-cards (Phase 1b) ([#2621](https://github.com/HankHuang0516/EClaw/issues/2621)) ([f78ba8b](https://github.com/HankHuang0516/EClaw/commit/f78ba8b18acc426936ab6d8a82ca7541effea00d))
* **avatar:** petdx render on dashboard entity grid / org chart / bindings (Phase 1b) ([#2622](https://github.com/HankHuang0516/EClaw/issues/2622)) ([f417749](https://github.com/HankHuang0516/EClaw/commit/f41774914451048e8cd76e9ae30416a0642e173b)), closes [#2620](https://github.com/HankHuang0516/EClaw/issues/2620) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621)
* **avatar:** petdx render on kanban auto-assign / pulse / comment avatars (Phase 1b) ([#2624](https://github.com/HankHuang0516/EClaw/issues/2624)) ([6bff5f8](https://github.com/HankHuang0516/EClaw/commit/6bff5f80440d0bd91a6b1721cde9478d685c4d46))
* **avatar:** petdx render on mission skill/rule/soul entity dialogs (Phase 1b) ([#2623](https://github.com/HankHuang0516/EClaw/issues/2623)) ([129327b](https://github.com/HankHuang0516/EClaw/commit/129327bc7b91056659f1ab7e8d5e3f5260d951fb))
* **mindmap:** portal/mindmap.html force-graph prototype ([#129](https://github.com/HankHuang0516/EClaw/issues/129)) ([#2681](https://github.com/HankHuang0516/EClaw/issues/2681)) ([0f15e69](https://github.com/HankHuang0516/EClaw/commit/0f15e6930f0697c37fa08f3219edb8f9e499837f)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **channel:** record delivery receipts ([#2913](https://github.com/HankHuang0516/EClaw/issues/2913)) ([90c671b](https://github.com/HankHuang0516/EClaw/commit/90c671bd1970ab51584b90e2b634484ec10cc7ae))
* **portal:** redo nagoya trip page in professional tour-guide style ([#2691](https://github.com/HankHuang0516/EClaw/issues/2691)) ([b2378c0](https://github.com/HankHuang0516/EClaw/commit/b2378c06ee20fa9cccfdceceb1a4c9e0b3072f59))
* **i18n:** remove ms+hi orphan keys from i18n.js ([#2849](https://github.com/HankHuang0516/EClaw/issues/2849)) ([320176c](https://github.com/HankHuang0516/EClaw/commit/320176c06a3cfd8631e2a82ad02a6bd6a9af0389))
* **avatar:** render selected petdx companion in chat avatars ([#2620](https://github.com/HankHuang0516/EClaw/issues/2620)) ([0bdd046](https://github.com/HankHuang0516/EClaw/commit/0bdd046fe1b1c428e32edda366ff112c08927f4c))
* **home:** replace native home with WebView hosting dashboard.html ([#2634](https://github.com/HankHuang0516/EClaw/issues/2634)) ([e69ea81](https://github.com/HankHuang0516/EClaw/commit/e69ea8160c239b083a83d6dc83a4f1c3f901c863))
* **app:** route chat mission jumps through native tabs ([#2824](https://github.com/HankHuang0516/EClaw/issues/2824)) ([deb07b6](https://github.com/HankHuang0516/EClaw/commit/deb07b69a9ecca632fe27278de537f1d85234e94))
* **portal:** scaffold /portal/bot/:id/about backstory page (IP P1) ([#2938](https://github.com/HankHuang0516/EClaw/issues/2938)) ([96d6ca5](https://github.com/HankHuang0516/EClaw/commit/96d6ca506d611e2f9be03d50f76983457277f209))
* **proxy:** scope private repo git auth ([#2926](https://github.com/HankHuang0516/EClaw/issues/2926)) ([246f7ff](https://github.com/HankHuang0516/EClaw/commit/246f7ff1dedaf7bece9e3cb9eb24d0ab32ebb393))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **chat:** support message deep links ([#2719](https://github.com/HankHuang0516/EClaw/issues/2719)) ([2dc0f1e](https://github.com/HankHuang0516/EClaw/commit/2dc0f1eeb259e1a0848db4a03186b989372cd91c))
* **mission:** support note deep links ([#2717](https://github.com/HankHuang0516/EClaw/issues/2717)) ([2efd3a5](https://github.com/HankHuang0516/EClaw/commit/2efd3a5e741217a07c0b0ac54a0ddd010e0ebe23))
* **share-chat:** twitter card + per-bot og:image/twitter:* in SSR ([#2609](https://github.com/HankHuang0516/EClaw/issues/2609)) ([6cdc853](https://github.com/HankHuang0516/EClaw/commit/6cdc853dc884cdb95bd47214942768981f218ae0))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))
* **settings:** wire petdx avatar into channel-account chips ([#2626](https://github.com/HankHuang0516/EClaw/issues/2626)) ([88aec77](https://github.com/HankHuang0516/EClaw/commit/88aec772628c240e97b336bb5820892ad632d1ae))
* **files:** wire petdx avatar into entity filter & per-file badges ([#2627](https://github.com/HankHuang0516/EClaw/issues/2627)) ([5b3e5cc](https://github.com/HankHuang0516/EClaw/commit/5b3e5cc542d9da69bb4e92500fd03a542ea33f00))
* **mindmap:** wrap hardcoded zh-TW UI strings with i18n t() ([#2607](https://github.com/HankHuang0516/EClaw/issues/2607)) ([166af87](https://github.com/HankHuang0516/EClaw/commit/166af8772b2121a24aaf34a83b3de970e9b3b571)), closes [#2606](https://github.com/HankHuang0516/EClaw/issues/2606)
* **i18n:** zh-TW backfill 8 keys (soft-pause + chat + invite + wallet) ([#2815](https://github.com/HankHuang0516/EClaw/issues/2815)) ([a2dd574](https://github.com/HankHuang0516/EClaw/commit/a2dd5743ce8d43a4b6ace9a2fd4b52568180d6c5))


### Performance Improvements

* **mindmap:** force-graph hardening for 1000/2000-node graphs ([#2684](https://github.com/HankHuang0516/EClaw/issues/2684)) ([da8b1c8](https://github.com/HankHuang0516/EClaw/commit/da8b1c8f947ab8bc8fa455c1962a91146623a1fc))


### Reverts

* Revert "feat(telegram): long-poll adapter PoC (card_406e612942ff062a06fc47be) ([#2238](https://github.com/HankHuang0516/EClaw/issues/2238))" ([#2239](https://github.com/HankHuang0516/EClaw/issues/2239)) ([eb7aa92](https://github.com/HankHuang0516/EClaw/commit/eb7aa92cce454b4a1a22654a2d133cdebe78c2bd))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-26)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **notifications:** add kanban_done + kanban_done_auto toggles to Android Settings ([#2636](https://github.com/HankHuang0516/EClaw/issues/2636)) ([a710909](https://github.com/HankHuang0516/EClaw/commit/a7109095e3393b8564e7ef1b23d382a4fbb944b8))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **api:** align /api/platform-stats skill-doc with device-auth contract (card_49b8190) ([#2916](https://github.com/HankHuang0516/EClaw/issues/2916)) ([ee55b2f](https://github.com/HankHuang0516/EClaw/commit/ee55b2fdbfbcd4bead5501d16ee66339056c32d7))
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **i18n:** ar block — fix 27 broken entries (CJK leaks + truncated HTML) ([#2851](https://github.com/HankHuang0516/EClaw/issues/2851)) ([5b19175](https://github.com/HankHuang0516/EClaw/commit/5b19175d712d00d16fcec00b749035c4beae7a5c))
* **chat:** atomic-load target bar (await contacts before first render) ([#2831](https://github.com/HankHuang0516/EClaw/issues/2831)) ([5f529e6](https://github.com/HankHuang0516/EClaw/commit/5f529e6b772eacc38ba1de69b44258a05f0d816a)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2](https://github.com/HankHuang0516/EClaw/issues/2)
* **channel:** await binding persistence ([712516d](https://github.com/HankHuang0516/EClaw/commit/712516decafb745035bd1434a28cc1973d433e19))
* **rental:** bump handshake timeout to 60s + timeout-aware discovery fallback ([#2863](https://github.com/HankHuang0516/EClaw/issues/2863)) ([fd4322f](https://github.com/HankHuang0516/EClaw/commit/fd4322f8890f3c2dfca3acdae6a4b95f19c381f9)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **chat:** carry kanban message deep-links ([#2946](https://github.com/HankHuang0516/EClaw/issues/2946)) ([971e2d2](https://github.com/HankHuang0516/EClaw/commit/971e2d27aeb212660901c8707cf418b7b1411286))
* **i18n:** clear batch 1 residual missing keys ([#2790](https://github.com/HankHuang0516/EClaw/issues/2790)) ([211030e](https://github.com/HankHuang0516/EClaw/commit/211030e0b0b6a865c11f0c4ed60dc4e356d43b7a))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **kanban:** comment input no longer overlaps last comment in card detail (PR [#2678](https://github.com/HankHuang0516/EClaw/issues/2678)) ([fba91fc](https://github.com/HankHuang0516/EClaw/commit/fba91fca15402b453a0db5ee857c0b16e6087055))
* **chat:** compact 20px avatar in target bar (App WebView only shows [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2](https://github.com/HankHuang0516/EClaw/issues/2)) ([#2830](https://github.com/HankHuang0516/EClaw/issues/2830)) ([42c7543](https://github.com/HankHuang0516/EClaw/commit/42c7543b4a78a7abf3f5f7535eb9bc6142cd0fe2)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **portal:** complete 401 redirect sweep + mobile UIUX truncation ([#2842](https://github.com/HankHuang0516/EClaw/issues/2842)) ([f9799ba](https://github.com/HankHuang0516/EClaw/commit/f9799ba42498b109f0a8a70e80836aa6da51e216)), closes [#2833](https://github.com/HankHuang0516/EClaw/issues/2833) [#2845](https://github.com/HankHuang0516/EClaw/issues/2845) [#2844](https://github.com/HankHuang0516/EClaw/issues/2844) [#2843](https://github.com/HankHuang0516/EClaw/issues/2843)
* **uiux:** continue qa mobile readability sweep ([#2854](https://github.com/HankHuang0516/EClaw/issues/2854)) ([57606ff](https://github.com/HankHuang0516/EClaw/commit/57606ffe3e543b07a026aacc53c4b470c9a7825b))
* **i18n:** cover dynamic portal wrapper keys ([#2807](https://github.com/HankHuang0516/EClaw/issues/2807)) ([4c711cc](https://github.com/HankHuang0516/EClaw/commit/4c711cc4009300ffe4e8933a98ee01cd0fdd6aeb))
* **i18n:** dedup 20 dash_channel_card_* keys in es block ([#2876](https://github.com/HankHuang0516/EClaw/issues/2876)) ([807284c](https://github.com/HankHuang0516/EClaw/commit/807284ce363ef119ccdb0ae40e5ce99d3f0a27e0))
* **i18n:** dedupe backend locale keys via AST ([#2920](https://github.com/HankHuang0516/EClaw/issues/2920)) ([40ef114](https://github.com/HankHuang0516/EClaw/commit/40ef11414c8b836fe1ed93ec06c839df3a1bf7b9))
* **i18n:** dedupe zh locale keys ([#2919](https://github.com/HankHuang0516/EClaw/issues/2919)) ([afd2cca](https://github.com/HankHuang0516/EClaw/commit/afd2cca8086c2f2df0d04c9c5f8c58733652875e))
* **test:** delegate root test and remove invalid jest option ([#2292](https://github.com/HankHuang0516/EClaw/issues/2292)) ([65bf2f8](https://github.com/HankHuang0516/EClaw/commit/65bf2f83d26d925097cd380ab73b04ab2db49842))
* **kanban:** dep-aware nudge gating + roadmap dependency backfill ([#2904](https://github.com/HankHuang0516/EClaw/issues/2904)) ([2b76ac9](https://github.com/HankHuang0516/EClaw/commit/2b76ac9d3b7e4169b7bc3c6f6b0b0903b63cd9f7)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **rental:** don't pollute entity.message on push gateway timeout ([#2860](https://github.com/HankHuang0516/EClaw/issues/2860)) ([592ba44](https://github.com/HankHuang0516/EClaw/commit/592ba44f57536ee00011b6cbddaa6b129a7cbae9))
* **petdx:** drop dark-grey loading placeholder + preload sprite WEBP ([#2628](https://github.com/HankHuang0516/EClaw/issues/2628)) ([59cef38](https://github.com/HankHuang0516/EClaw/commit/59cef387bd69ca99d7d15c86a1364856d3849ad8)), closes [#1a1a1a](https://github.com/HankHuang0516/EClaw/issues/1a1a1a)
* **gateway-ws:** drop Origin header on server-to-server WS upgrade ([#2869](https://github.com/HankHuang0516/EClaw/issues/2869)) ([716dcf9](https://github.com/HankHuang0516/EClaw/commit/716dcf9d0834b17522bb9d894bad84bc142d1a19))
* **setup-scripts:** drop Origin header on server-to-server WS upgrade ([#2875](https://github.com/HankHuang0516/EClaw/issues/2875)) ([9d893b8](https://github.com/HankHuang0516/EClaw/commit/9d893b8e5eea4db275e450bf423903c156cd3e4b)), closes [#2869](https://github.com/HankHuang0516/EClaw/issues/2869)
* **security:** escape innerHTML in chat modal error messages ([#2819](https://github.com/HankHuang0516/EClaw/issues/2819)) ([dce07ad](https://github.com/HankHuang0516/EClaw/commit/dce07adde64795916dba977ae23e46f3371ce7ed)), closes [#2809](https://github.com/HankHuang0516/EClaw/issues/2809) [#2810](https://github.com/HankHuang0516/EClaw/issues/2810) [#2809](https://github.com/HankHuang0516/EClaw/issues/2809) [#2810](https://github.com/HankHuang0516/EClaw/issues/2810)
* **proxy:** export repo auth to CLI child ([#2928](https://github.com/HankHuang0516/EClaw/issues/2928)) ([336a8ca](https://github.com/HankHuang0516/EClaw/commit/336a8caff4e3663287bd2948cf9fe6e04125cbc8))
* **entities:** expose botSecret to owner so wallpaper service can poll companions ([#2615](https://github.com/HankHuang0516/EClaw/issues/2615)) ([04470fc](https://github.com/HankHuang0516/EClaw/commit/04470fce8f8c3fce2b1ba8b243e776606f107502))
* **rental:** expose owner_public_code in marketplace so plaza CTA can route ([#2616](https://github.com/HankHuang0516/EClaw/issues/2616)) ([4d1372f](https://github.com/HankHuang0516/EClaw/commit/4d1372f717d93cab65543e87c852e74e9fb67071)), closes [#2610](https://github.com/HankHuang0516/EClaw/issues/2610)
* **mindmap:** fallback to device scope when entityId is null ([#2728](https://github.com/HankHuang0516/EClaw/issues/2728)) ([7572312](https://github.com/HankHuang0516/EClaw/commit/7572312433d3d75fc245eda48a28919ce14bd927))
* **i18n:** fill 11 missing zh keys post-[#2920](https://github.com/HankHuang0516/EClaw/issues/2920)/[#2921](https://github.com/HankHuang0516/EClaw/issues/2921) (card_de6970) ([#2924](https://github.com/HankHuang0516/EClaw/issues/2924)) ([17c4899](https://github.com/HankHuang0516/EClaw/commit/17c48996489b1444d6ed589027acfa7986178fe1)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** fill backend runtime locale gaps ([#2921](https://github.com/HankHuang0516/EClaw/issues/2921)) ([00d96ff](https://github.com/HankHuang0516/EClaw/commit/00d96ff261b8134b49292623e1f786fd544144cc))
* **i18n:** fill Spanish drift keys ([#2751](https://github.com/HankHuang0516/EClaw/issues/2751)) ([0ad0ee5](https://github.com/HankHuang0516/EClaw/commit/0ad0ee55f7fac3e6ac46d891539950dab4d553cc))
* **portal:** fit embedded org chart to mobile viewport ([#2674](https://github.com/HankHuang0516/EClaw/issues/2674)) ([1c4e1b4](https://github.com/HankHuang0516/EClaw/commit/1c4e1b413ea7027b4cd4b8ecda981b0d0e12e66b))
* **i18n:** fix 6 trailing-comma syntax errors in 10-locale batch ([#2771](https://github.com/HankHuang0516/EClaw/issues/2771)) ([b27c6ca](https://github.com/HankHuang0516/EClaw/commit/b27c6ca204bf813e406c54ce3a2532a5f1f031b3))
* **kanban:** GET card returns latest 50 comments + comments endpoint exposes total ([#2816](https://github.com/HankHuang0516/EClaw/issues/2816)) ([c4d83f7](https://github.com/HankHuang0516/EClaw/commit/c4d83f777a1cd26aea0936e4316aa35c52822eef))
* **sharechat:** guest verify-email modal + disabled Send for unverified ([#2865](https://github.com/HankHuang0516/EClaw/issues/2865)) ([cb3b061](https://github.com/HankHuang0516/EClaw/commit/cb3b0614e0f6160417d907753e66eceb2d666802))
* **portal:** H4 showcase i18n data-attrs + raw key leak ([#2935](https://github.com/HankHuang0516/EClaw/issues/2935)) ([80d8587](https://github.com/HankHuang0516/EClaw/commit/80d8587c00c03f72fdb9756b1093ee8e1e3d0842)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **uiux:** harden chat previews and roster preview ([#2769](https://github.com/HankHuang0516/EClaw/issues/2769)) ([466d4d3](https://github.com/HankHuang0516/EClaw/commit/466d4d3ef81c628d3f58db64323946053d7bf61c))
* **mention-parser:** ignore @-mentions inside markdown code spans ([#2645](https://github.com/HankHuang0516/EClaw/issues/2645)) ([8da19d4](https://github.com/HankHuang0516/EClaw/commit/8da19d4a79ceb4152bf2144ee0847c61ce3e1def)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **kanban:** lazy-load dependency chips via IntersectionObserver ([#2632](https://github.com/HankHuang0516/EClaw/issues/2632)) ([20586b4](https://github.com/HankHuang0516/EClaw/commit/20586b43357335f9eb6a190c02d58c8e36b58aba)), closes [#2631](https://github.com/HankHuang0516/EClaw/issues/2631)
* **i18n:** localize FCM NotificationChannel labels (card_ec8d3a22) ([#2918](https://github.com/HankHuang0516/EClaw/issues/2918)) ([591cd20](https://github.com/HankHuang0516/EClaw/commit/591cd206704693650a53d19d94c4cc75daf84ffd))
* **kanban:** make card sorting deterministic ([#2756](https://github.com/HankHuang0516/EClaw/issues/2756)) ([48e2117](https://github.com/HankHuang0516/EClaw/commit/48e2117b64e37f05dc635e0a3b67bfd43cbe48f5))
* **portal/nagoya-trip:** map-link invisible on dark hero/day-banner ([#2897](https://github.com/HankHuang0516/EClaw/issues/2897)) ([cc33df6](https://github.com/HankHuang0516/EClaw/commit/cc33df686673455c20beaee60871412a5d486e66)), closes [#1f4030](https://github.com/HankHuang0516/EClaw/issues/1f4030) [#8b8579](https://github.com/HankHuang0516/EClaw/issues/8b8579) [#6e6859](https://github.com/HankHuang0516/EClaw/issues/6e6859) [#7a5614](https://github.com/HankHuang0516/EClaw/issues/7a5614)
* **portal:** mobile delete-modal clipped right edge (P0) ([#2951](https://github.com/HankHuang0516/EClaw/issues/2951)) ([00418ca](https://github.com/HankHuang0516/EClaw/commit/00418ca812d5b757e35d12a9810b124f30491bbb))
* **org-chart:** notify affected bots on hierarchy change ([#2812](https://github.com/HankHuang0516/EClaw/issues/2812)) ([55675fd](https://github.com/HankHuang0516/EClaw/commit/55675fdf4487494d729a29524b32bd81b756a00c)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** notify reviewer on manual /move → review ([#2753](https://github.com/HankHuang0516/EClaw/issues/2753)) ([6cbbb4e](https://github.com/HankHuang0516/EClaw/commit/6cbbb4ee8c0d4d8ad54df2e9b5faaa3699bd530f))
* **wallpaper:** off-load spritesheet fetch to IO so per-petdx sprites actually render ([#2618](https://github.com/HankHuang0516/EClaw/issues/2618)) ([61b832c](https://github.com/HankHuang0516/EClaw/commit/61b832c9fa8a1d0caab810ccc942d85c63349267)), closes [#2615](https://github.com/HankHuang0516/EClaw/issues/2615) [#2577](https://github.com/HankHuang0516/EClaw/issues/2577)
* **security:** patch P0 sanitize-html XSS + P1 protobufjs + exam.html XSS ([#2829](https://github.com/HankHuang0516/EClaw/issues/2829)) ([c71b871](https://github.com/HankHuang0516/EClaw/commit/c71b871a045887375dd0d26d1a3280a0891a89ad))
* **security:** patch ws uninitialized memory disclosure (GHSA-58qx-3vcg-4xpx) ([#2872](https://github.com/HankHuang0516/EClaw/issues/2872)) ([2523d15](https://github.com/HankHuang0516/EClaw/commit/2523d154bbe501a7cc086340f7a07ece3abfa69b))
* **portal:** petdx-browser cookie-session fallback for device-login ([#2757](https://github.com/HankHuang0516/EClaw/issues/2757)) ([ca275f4](https://github.com/HankHuang0516/EClaw/commit/ca275f4519835da0c7ad71c588908a18f6f138d8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **api:** platform-stats 500 + entity/lookup publicCode alias ([#2809](https://github.com/HankHuang0516/EClaw/issues/2809), [#2810](https://github.com/HankHuang0516/EClaw/issues/2810)) ([#2818](https://github.com/HankHuang0516/EClaw/issues/2818)) ([f99fd17](https://github.com/HankHuang0516/EClaw/commit/f99fd17b2b1c32d88daa2510ff66d714c1a53edc))
* **i18n:** positional format specifiers for feedback_result_logs (7 locales) ([#2597](https://github.com/HankHuang0516/EClaw/issues/2597)) ([21aedc7](https://github.com/HankHuang0516/EClaw/commit/21aedc7eebc7a2839e340136f38dfdfd4dabb9dc))
* **avatar-petdx:** preserve descriptor across transient API failures (flicker) ([#2625](https://github.com/HankHuang0516/EClaw/issues/2625)) ([7b1c606](https://github.com/HankHuang0516/EClaw/commit/7b1c606514f7698d72ec95cf6c556e4043966186))
* **chat:** preserve recipient selection across rental-health refresh (P0 #card_eb1cba76) ([#2906](https://github.com/HankHuang0516/EClaw/issues/2906)) ([9cc0301](https://github.com/HankHuang0516/EClaw/commit/9cc0301cc26a0f49af4b7f53486f5c1a7cdd7902)), closes [#card_eb1cba76](https://github.com/HankHuang0516/EClaw/issues/card_eb1cba76) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **chat:** preserve scroll anchor while reading history ([#2693](https://github.com/HankHuang0516/EClaw/issues/2693)) ([945fdb7](https://github.com/HankHuang0516/EClaw/commit/945fdb7192b791b31882e1e75568dd8b11e4686f))
* **promo:** pull video embed from /promo-chat-avatar.html ([#2724](https://github.com/HankHuang0516/EClaw/issues/2724)) ([2afabc8](https://github.com/HankHuang0516/EClaw/commit/2afabc8c5ff8b25218a7cb857e8adfa572c8e9d5))
* **dashboard:** read live.rate_limits.{five_hour,seven_day}.used_percentage ([#2895](https://github.com/HankHuang0516/EClaw/issues/2895)) ([8223303](https://github.com/HankHuang0516/EClaw/commit/822330312bccb1c76675ad2c3b26e78d10dd1298))
* **kanban:** realign stale recurring schedules ([#2785](https://github.com/HankHuang0516/EClaw/issues/2785)) ([ab8ee25](https://github.com/HankHuang0516/EClaw/commit/ab8ee250a9b37f3d3e838bb01d8866c8d2b78231))
* **i18n:** reapply de6970 locale gap translations ([#2925](https://github.com/HankHuang0516/EClaw/issues/2925)) ([d994dc1](https://github.com/HankHuang0516/EClaw/commit/d994dc1d240fef72326db2599262375ccbf29175))
* **portal:** reduce QA-discovered request fanout ([#2656](https://github.com/HankHuang0516/EClaw/issues/2656)) ([1e46d6b](https://github.com/HankHuang0516/EClaw/commit/1e46d6bab61e58c65b452b6503d953f8dddeee75))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **portal:** remove org chart fit scale floor ([#2676](https://github.com/HankHuang0516/EClaw/issues/2676)) ([0f01606](https://github.com/HankHuang0516/EClaw/commit/0f016068b963bb5f800a02f28817c7174979d913))
* **rental:** remove phantom 'webhook test push' step from BIND_COMPLETE ([#2864](https://github.com/HankHuang0516/EClaw/issues/2864)) ([47f4a3e](https://github.com/HankHuang0516/EClaw/commit/47f4a3edf76aa95ebd06d8713cd44fda6eef9b5d))
* **i18n:** rename mm_empty_title → mm_state_empty_title in mindmap.html ([#2683](https://github.com/HankHuang0516/EClaw/issues/2683)) ([c79c109](https://github.com/HankHuang0516/EClaw/commit/c79c109bea23142e8a6d9ace976d105af1280ec9))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **chat:** render mention avatars with companion renderer ([#2633](https://github.com/HankHuang0516/EClaw/issues/2633)) ([03e205f](https://github.com/HankHuang0516/EClaw/commit/03e205f663ecd2c2f443d4009dd5af0093f0bbbb))
* **kanban:** reserve mobile comments panel height ([#2782](https://github.com/HankHuang0516/EClaw/issues/2782)) ([ce8662d](https://github.com/HankHuang0516/EClaw/commit/ce8662d362422fdd25037f1deb61dbed9425e2f9))
* **channel:** restore handshake fallback to discovered sessions ([#2915](https://github.com/HankHuang0516/EClaw/issues/2915)) ([#2917](https://github.com/HankHuang0516/EClaw/issues/2917)) ([9d7d3a2](https://github.com/HankHuang0516/EClaw/commit/9d7d3a25654289998314dd5ca152cefdb8a4d64e)), closes [#2912](https://github.com/HankHuang0516/EClaw/issues/2912)
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* scheduled audit 2026-05-13 — 6 bugs, XSS, i18n ([#2668](https://github.com/HankHuang0516/EClaw/issues/2668)) ([21dd513](https://github.com/HankHuang0516/EClaw/commit/21dd513b4464738de29164265437435ba6cc4817)), closes [#2605](https://github.com/HankHuang0516/EClaw/issues/2605) [#2608](https://github.com/HankHuang0516/EClaw/issues/2608) [#2600](https://github.com/HankHuang0516/EClaw/issues/2600) [#2599](https://github.com/HankHuang0516/EClaw/issues/2599) [#2598](https://github.com/HankHuang0516/EClaw/issues/2598)
* **channel:** scope official bot sessions ([#2912](https://github.com/HankHuang0516/EClaw/issues/2912)) ([5c56b62](https://github.com/HankHuang0516/EClaw/commit/5c56b62c13b739b76f39e168a26bd4e5de2644fb))
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **dashboard:** show Claude weekly bar reset countdown ([#2896](https://github.com/HankHuang0516/EClaw/issues/2896)) ([3b87845](https://github.com/HankHuang0516/EClaw/commit/3b87845d713e980fec69f6b8007549338a326713)), closes [#2895](https://github.com/HankHuang0516/EClaw/issues/2895)
* **chat:** smart-chip preview falls back to inline c.comments when /comments fails (PR [#2677](https://github.com/HankHuang0516/EClaw/issues/2677)) ([7f4dffd](https://github.com/HankHuang0516/EClaw/commit/7f4dffd2c83ea86f296b8fa0610f0e67c9f1af11))
* **kanban:** stabilize comment detail viewport ([#2796](https://github.com/HankHuang0516/EClaw/issues/2796)) ([0a10aad](https://github.com/HankHuang0516/EClaw/commit/0a10aadb5a5b12ff23454c16d5c88183b94ad7d7))
* **wallpaper:** stop Android live wallpaper flashing default lobster on companion change ([#2629](https://github.com/HankHuang0516/EClaw/issues/2629)) ([8b4f66f](https://github.com/HankHuang0516/EClaw/commit/8b4f66fcb335bf43128f924b761b6337c817095b)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **chat:** stop chat.html bouncing to dashboard via /api/rental/health-status 401 race ([#2833](https://github.com/HankHuang0516/EClaw/issues/2833)) ([c422406](https://github.com/HankHuang0516/EClaw/commit/c4224067cdcfe7f3e22ab95007c7563dac4196ac))
* **openclaw-channel:** support OpenClaw 2026.5.20 ([8045de6](https://github.com/HankHuang0516/EClaw/commit/8045de6bebecfc05f9bd57453b99c098ca35681b))
* **mentions:** support same-device CJK display-name tags ([#2874](https://github.com/HankHuang0516/EClaw/issues/2874)) ([b8f61be](https://github.com/HankHuang0516/EClaw/commit/b8f61be9a3962fef75dd32ea34e8900880dafaf9))
* **channel:** suppress operational A2A loop messages (rebase of [#2288](https://github.com/HankHuang0516/EClaw/issues/2288)) ([#2930](https://github.com/HankHuang0516/EClaw/issues/2930)) ([7ceabc9](https://github.com/HankHuang0516/EClaw/commit/7ceabc915df22123cb46ae1500e2eb2e279250af))
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **dashboard:** use sessions[].project for widget Projects list (was .project_id) ([#2894](https://github.com/HankHuang0516/EClaw/issues/2894)) ([0fd1334](https://github.com/HankHuang0516/EClaw/commit/0fd1334897d4a603cc6eb74f34b48606547e09cf))
* **app:** WebView pages honor app-selected locale via ?lang= URL param ([#2672](https://github.com/HankHuang0516/EClaw/issues/2672)) ([8ed8757](https://github.com/HankHuang0516/EClaw/commit/8ed8757aec5bf214e837cc0d81bf2b23f1993a91)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **share-chat:** wire rich CTA actions to msgInput ([#2867](https://github.com/HankHuang0516/EClaw/issues/2867)) ([df23b11](https://github.com/HankHuang0516/EClaw/commit/df23b1147d34c59a644a145bbd87c18b96400acc))


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* **usage-api:** /api/usage/{snapshot,timeline} + usage_snapshots table (Plan B Phase 1) ([#2889](https://github.com/HankHuang0516/EClaw/issues/2889)) ([a0d859c](https://github.com/HankHuang0516/EClaw/commit/a0d859c63f0220909dadb2b1952174861ccdce14))
* **community:** 1-click chat button on bot cards + utm tagging ([#2610](https://github.com/HankHuang0516/EClaw/issues/2610)) ([eee97b0](https://github.com/HankHuang0516/EClaw/commit/eee97b0e2e4e74945ec24f218a69a52800b97a66))
* **chat:** accept ?messageId= as deep-link alias ([#2838](https://github.com/HankHuang0516/EClaw/issues/2838)) ([1785a87](https://github.com/HankHuang0516/EClaw/commit/1785a87310426637fd10df83754fb9924c45207f))
* **chat:** add avatar size preference ([#2714](https://github.com/HankHuang0516/EClaw/issues/2714)) ([6fe164a](https://github.com/HankHuang0516/EClaw/commit/6fe164ad8b22fa576d2dd9ad37c0d9fc295b5a83))
* **dashboard:** add Claude and Codex channel guides ([#2640](https://github.com/HankHuang0516/EClaw/issues/2640)) ([c64e4c4](https://github.com/HankHuang0516/EClaw/commit/c64e4c4afc78db58c5cd578f00486dd7b2fd3311))
* **dashboard:** add Claude Code channel guide card ([#2667](https://github.com/HankHuang0516/EClaw/issues/2667)) ([d70d75c](https://github.com/HankHuang0516/EClaw/commit/d70d75c0c8caa8a540358a9aab4556b8c1927a5c))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* **api:** add DELETE /api/entity/queue to clear messageQueue ([#616](https://github.com/HankHuang0516/EClaw/issues/616)) ([16ee3ff](https://github.com/HankHuang0516/EClaw/commit/16ee3ff1c6aa7f8ef187e54e5e7169f2e44f7395))
* **kanban:** add device-scoped card tags ([#2773](https://github.com/HankHuang0516/EClaw/issues/2773)) ([53a387e](https://github.com/HankHuang0516/EClaw/commit/53a387e67ba7bb4f6bed1c427000c4ae8666577a))
* **portal:** add entity selector to petdx-browser ([#2602](https://github.com/HankHuang0516/EClaw/issues/2602)) ([3fa067e](https://github.com/HankHuang0516/EClaw/commit/3fa067e00b38829b48a37cecd33ee81a9a1122d9))
* **kanban:** add explicit card links ([#2721](https://github.com/HankHuang0516/EClaw/issues/2721)) ([ef9f812](https://github.com/HankHuang0516/EClaw/commit/ef9f812a3fcf39efd07fd158ce90951bdd045ac7))
* **kanban:** add explicit done-card reopen flow ([#2801](https://github.com/HankHuang0516/EClaw/issues/2801)) ([5080aac](https://github.com/HankHuang0516/EClaw/commit/5080aacb75047c0deaa379ee708ec85465afd57c))
* **mindmap:** add GET /api/mindmap/graph force-graph projection ([#2680](https://github.com/HankHuang0516/EClaw/issues/2680)) ([a00b2e7](https://github.com/HankHuang0516/EClaw/commit/a00b2e775af2c4c98cd157f760ad87aeeee469f0)), closes [#2679](https://github.com/HankHuang0516/EClaw/issues/2679) [#2679](https://github.com/HankHuang0516/EClaw/issues/2679)
* **dashboard:** add Hermes channel promo card ([#2708](https://github.com/HankHuang0516/EClaw/issues/2708)) ([337aca1](https://github.com/HankHuang0516/EClaw/commit/337aca153d5a1cd7e888c065f00ae54db7872d91))
* **rental:** add listing soft pause ([#2781](https://github.com/HankHuang0516/EClaw/issues/2781)) ([6586b72](https://github.com/HankHuang0516/EClaw/commit/6586b72717ddb1637d91cd3242c8d2ff554f62b4))
* **portal:** add Nagoya 5D4N trip static cross-ref page ([#2689](https://github.com/HankHuang0516/EClaw/issues/2689)) ([2e0efb6](https://github.com/HankHuang0516/EClaw/commit/2e0efb6dcdaff52226cc8854a96747000b12bdff))
* **portal:** add Nagoya image atlas static page ([#2743](https://github.com/HankHuang0516/EClaw/issues/2743)) ([ac026e9](https://github.com/HankHuang0516/EClaw/commit/ac026e9fd2c92ac9437d01edddffc9adf972f6ba))
* **portal:** add Nagoya trip map links and image lightbox ([#2821](https://github.com/HankHuang0516/EClaw/issues/2821)) ([3e40955](https://github.com/HankHuang0516/EClaw/commit/3e40955650a05f45a6b9f7e39e73847705424a03))
* **portal/nagoya:** add parking shortcut buttons next to itinerary places ([#2826](https://github.com/HankHuang0516/EClaw/issues/2826)) ([63968c5](https://github.com/HankHuang0516/EClaw/commit/63968c554d046afc8d978de74e3aacbf7700500d))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **settings:** add rental roster management preview ([#2758](https://github.com/HankHuang0516/EClaw/issues/2758)) ([9706e59](https://github.com/HankHuang0516/EClaw/commit/9706e59ded140a90a6e02348124282bc69d89001))
* **rental:** add renter health chat indicator ([#2690](https://github.com/HankHuang0516/EClaw/issues/2690)) ([36cd2e9](https://github.com/HankHuang0516/EClaw/commit/36cd2e9802be4c7ebb03d3024617fa74aca48ffd))
* **ios:** add Tutorial & Intro entry in Settings ([#2800](https://github.com/HankHuang0516/EClaw/issues/2800)) ([ed83e51](https://github.com/HankHuang0516/EClaw/commit/ed83e51d043bf4cd5865f38dc95a91ed54820d6c))
* **landing:** add Watch Full Demo CTA below hero video ([#2799](https://github.com/HankHuang0516/EClaw/issues/2799)) ([66107c9](https://github.com/HankHuang0516/EClaw/commit/66107c954727551fd34d989a4674daaad9b63968))
* **footer:** add Watch Intro Video link in Info column ([#2798](https://github.com/HankHuang0516/EClaw/issues/2798)) ([d7c6d59](https://github.com/HankHuang0516/EClaw/commit/d7c6d596b69c6a5b257bf1f7a792a407ef9712ad))
* **i18n:** ar iter-2 — fill 623 missing keys against en source ([#2847](https://github.com/HankHuang0516/EClaw/issues/2847)) ([ee94a7a](https://github.com/HankHuang0516/EClaw/commit/ee94a7ae6812b5163efe4284ee4907ca32302f5c))
* **kanban:** backlog launch-gate flag to suppress L1/L2/L3 escalation ([#2855](https://github.com/HankHuang0516/EClaw/issues/2855)) ([cb8bf1b](https://github.com/HankHuang0516/EClaw/commit/cb8bf1bb6421f25214f65e129a8cadccc49cc266)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#4](https://github.com/HankHuang0516/EClaw/issues/4) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **companion:** bridge crafter-station/petdex gallery (1784 pets) ([#2601](https://github.com/HankHuang0516/EClaw/issues/2601)) ([2e245be](https://github.com/HankHuang0516/EClaw/commit/2e245bea6dd47ea7361b927d389188a3c23b6bb3))
* **promo:** chat avatar size feature landing page (self-hosted MP4) ([#2722](https://github.com/HankHuang0516/EClaw/issues/2722)) ([3852210](https://github.com/HankHuang0516/EClaw/commit/3852210d355704d018e3daca6b5f9512a011b210)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **kanban:** cron-spawn jitter + lane backpressure to prevent same-tick wedge ([#2791](https://github.com/HankHuang0516/EClaw/issues/2791)) ([9f414a7](https://github.com/HankHuang0516/EClaw/commit/9f414a731d6393672a0a4189c7b408c529ae5e12)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **portal:** dashboard usage widget — Claude/Codex 5h gauges + 24h chart (Plan B Phase 3) ([#2891](https://github.com/HankHuang0516/EClaw/issues/2891)) ([d18f373](https://github.com/HankHuang0516/EClaw/commit/d18f373857e4bd302437d6bda2a1e01871fbb1db))
* **portal:** dashboard usage widget v2 — Session/Weekly % bars + projects, no cost (Plan B Phase 3.1) ([#2893](https://github.com/HankHuang0516/EClaw/issues/2893)) ([4bc0dc7](https://github.com/HankHuang0516/EClaw/commit/4bc0dc744ed9d54dfd532ebac4b705c7f84ec0a6))
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **info:** embed 75s promo video on Quick Start tab ([#2795](https://github.com/HankHuang0516/EClaw/issues/2795)) ([86c3f70](https://github.com/HankHuang0516/EClaw/commit/86c3f709a95eebbee1241077b807880463f804b6))
* **promo:** embed daily eclaw video 2026-05-14 ([#2786](https://github.com/HankHuang0516/EClaw/issues/2786)) ([718a814](https://github.com/HankHuang0516/EClaw/commit/718a814ab16850bc2b33a1b303841e2c4378ecfa)), closes [#2782](https://github.com/HankHuang0516/EClaw/issues/2782) [#2693](https://github.com/HankHuang0516/EClaw/issues/2693)
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **info:** embed promo video at top of Quick Start tab ([#2797](https://github.com/HankHuang0516/EClaw/issues/2797)) ([047679f](https://github.com/HankHuang0516/EClaw/commit/047679fd57ab9949eaeacea414d5611e71afe041))
* **rental:** enforce strict rebind refunds ([#2703](https://github.com/HankHuang0516/EClaw/issues/2703)) ([a1859c5](https://github.com/HankHuang0516/EClaw/commit/a1859c50e6fb3991d7a8051491502d824a14a116))
* **portal:** group task chip actions ([#2825](https://github.com/HankHuang0516/EClaw/issues/2825)) ([5db5c59](https://github.com/HankHuang0516/EClaw/commit/5db5c59b32b8635f1412205faf0c2f9164d3d5d4))
* **hermes:** H2 health-check cron + 7d SLA + commander alerts (card_07891ac) ([#2922](https://github.com/HankHuang0516/EClaw/issues/2922)) ([82b4315](https://github.com/HankHuang0516/EClaw/commit/82b4315aea234493e3d1889dc53958c2f1d842e0)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **portal:** info-guide-rules + info-guide-soul slide pair ([#2793](https://github.com/HankHuang0516/EClaw/issues/2793)) ([1c8bddc](https://github.com/HankHuang0516/EClaw/commit/1c8bddc4c185054b2b60088498e3d45509117127)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **chat:** link card previews to kanban ([#2754](https://github.com/HankHuang0516/EClaw/issues/2754)) ([2261240](https://github.com/HankHuang0516/EClaw/commit/22612402c2e95efb07246629e81a849be41ee9c7))
* **mission:** link notes to kanban cards ([#2723](https://github.com/HankHuang0516/EClaw/issues/2723)) ([b36dc18](https://github.com/HankHuang0516/EClaw/commit/b36dc18f3a8facf12e0b6046351c222f1e99dc55))
* **usage-daemon:** macOS launchd daemon polls Claude/Codex usage → POST /api/usage/snapshot (Plan B Phase 2) ([#2890](https://github.com/HankHuang0516/EClaw/issues/2890)) ([fd225e1](https://github.com/HankHuang0516/EClaw/commit/fd225e12d9491037be1a340bd63b54b5f3308c7f))
* **mindmap:** mission.html link to /portal/mindmap.html + deprecate /api/mission/mindmap ([#2685](https://github.com/HankHuang0516/EClaw/issues/2685)) ([11e297b](https://github.com/HankHuang0516/EClaw/commit/11e297bab1c9b56fcde3027d6500b7c58891bf18)), closes [#2680](https://github.com/HankHuang0516/EClaw/issues/2680) [#2684](https://github.com/HankHuang0516/EClaw/issues/2684)
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **portal:** nagoya trip interactive map (Leaflet + OSM, no API key) ([#2888](https://github.com/HankHuang0516/EClaw/issues/2888)) ([ecfdac0](https://github.com/HankHuang0516/EClaw/commit/ecfdac06348c12ee7c6872c6c28d5f82162e7aa9))
* **android:** native tab navigation bridge for portal pages ([#2832](https://github.com/HankHuang0516/EClaw/issues/2832)) ([7e02e6f](https://github.com/HankHuang0516/EClaw/commit/7e02e6f225014e64f08f55035d7b9e5727873343)), closes [#2824](https://github.com/HankHuang0516/EClaw/issues/2824) [#2743](https://github.com/HankHuang0516/EClaw/issues/2743) [#2821](https://github.com/HankHuang0516/EClaw/issues/2821) [#2826](https://github.com/HankHuang0516/EClaw/issues/2826) [#2797](https://github.com/HankHuang0516/EClaw/issues/2797) [#2798](https://github.com/HankHuang0516/EClaw/issues/2798) [#2799](https://github.com/HankHuang0516/EClaw/issues/2799) [#2800](https://github.com/HankHuang0516/EClaw/issues/2800) [#2801](https://github.com/HankHuang0516/EClaw/issues/2801) [#2816](https://github.com/HankHuang0516/EClaw/issues/2816) [#2796](https://github.com/HankHuang0516/EClaw/issues/2796) [#2825](https://github.com/HankHuang0516/EClaw/issues/2825) [#2812](https://github.com/HankHuang0516/EClaw/issues/2812) [#2813](https://github.com/HankHuang0516/EClaw/issues/2813) [#2814](https://github.com/HankHuang0516/EClaw/issues/2814) [#2815](https://github.com/HankHuang0516/EClaw/issues/2815) [#2811](https://github.com/HankHuang0516/EClaw/issues/2811) [#2807](https://github.com/HankHuang0516/EClaw/issues/2807) [#2808](https://github.com/HankHuang0516/EClaw/issues/2808) [#2818](https://github.com/HankHuang0516/EClaw/issues/2818) [#2819](https://github.com/HankHuang0516/EClaw/issues/2819) [#2824](https://github.com/HankHuang0516/EClaw/issues/2824)
* **channel:** outbound backpressure (30/min cap + 429 retry-after) ([#2911](https://github.com/HankHuang0516/EClaw/issues/2911)) ([36dc99c](https://github.com/HankHuang0516/EClaw/commit/36dc99ca78b0e1724a2aaefb5936669077b7a28f))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **ai-support:** pass per-request caller creds to claude-cli-proxy /chat (H3 Phase 2) ([#2947](https://github.com/HankHuang0516/EClaw/issues/2947)) ([1f5378b](https://github.com/HankHuang0516/EClaw/commit/1f5378b9e01d4e650005c338bf81f1ef43535624)), closes [#2937](https://github.com/HankHuang0516/EClaw/issues/2937)
* **settings:** per-entity nudge override UI (Phase 2) ([#2837](https://github.com/HankHuang0516/EClaw/issues/2837)) ([ea7662b](https://github.com/HankHuang0516/EClaw/commit/ea7662b0858882dae461e1387f711895924f9ab8)), closes [3/#4](https://github.com/HankHuang0516/EClaw/issues/4)
* **kanban:** per-entity nudge overrides (Phase 2 of card_e066cb6b) ([#2836](https://github.com/HankHuang0516/EClaw/issues/2836)) ([0425f80](https://github.com/HankHuang0516/EClaw/commit/0425f80bc1169c0d506b665659c8676695c45553))
* **avatar:** petdx render on card-holder my-cards (Phase 1b) ([#2621](https://github.com/HankHuang0516/EClaw/issues/2621)) ([f78ba8b](https://github.com/HankHuang0516/EClaw/commit/f78ba8b18acc426936ab6d8a82ca7541effea00d))
* **avatar:** petdx render on dashboard entity grid / org chart / bindings (Phase 1b) ([#2622](https://github.com/HankHuang0516/EClaw/issues/2622)) ([f417749](https://github.com/HankHuang0516/EClaw/commit/f41774914451048e8cd76e9ae30416a0642e173b)), closes [#2620](https://github.com/HankHuang0516/EClaw/issues/2620) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621)
* **avatar:** petdx render on kanban auto-assign / pulse / comment avatars (Phase 1b) ([#2624](https://github.com/HankHuang0516/EClaw/issues/2624)) ([6bff5f8](https://github.com/HankHuang0516/EClaw/commit/6bff5f80440d0bd91a6b1721cde9478d685c4d46))
* **avatar:** petdx render on mission skill/rule/soul entity dialogs (Phase 1b) ([#2623](https://github.com/HankHuang0516/EClaw/issues/2623)) ([129327b](https://github.com/HankHuang0516/EClaw/commit/129327bc7b91056659f1ab7e8d5e3f5260d951fb))
* **mindmap:** portal/mindmap.html force-graph prototype ([#129](https://github.com/HankHuang0516/EClaw/issues/129)) ([#2681](https://github.com/HankHuang0516/EClaw/issues/2681)) ([0f15e69](https://github.com/HankHuang0516/EClaw/commit/0f15e6930f0697c37fa08f3219edb8f9e499837f)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **channel:** record delivery receipts ([#2913](https://github.com/HankHuang0516/EClaw/issues/2913)) ([90c671b](https://github.com/HankHuang0516/EClaw/commit/90c671bd1970ab51584b90e2b634484ec10cc7ae))
* **portal:** redo nagoya trip page in professional tour-guide style ([#2691](https://github.com/HankHuang0516/EClaw/issues/2691)) ([b2378c0](https://github.com/HankHuang0516/EClaw/commit/b2378c06ee20fa9cccfdceceb1a4c9e0b3072f59))
* **i18n:** remove ms+hi orphan keys from i18n.js ([#2849](https://github.com/HankHuang0516/EClaw/issues/2849)) ([320176c](https://github.com/HankHuang0516/EClaw/commit/320176c06a3cfd8631e2a82ad02a6bd6a9af0389))
* **avatar:** render selected petdx companion in chat avatars ([#2620](https://github.com/HankHuang0516/EClaw/issues/2620)) ([0bdd046](https://github.com/HankHuang0516/EClaw/commit/0bdd046fe1b1c428e32edda366ff112c08927f4c))
* **home:** replace native home with WebView hosting dashboard.html ([#2634](https://github.com/HankHuang0516/EClaw/issues/2634)) ([e69ea81](https://github.com/HankHuang0516/EClaw/commit/e69ea8160c239b083a83d6dc83a4f1c3f901c863))
* **app:** route chat mission jumps through native tabs ([#2824](https://github.com/HankHuang0516/EClaw/issues/2824)) ([deb07b6](https://github.com/HankHuang0516/EClaw/commit/deb07b69a9ecca632fe27278de537f1d85234e94))
* **portal:** scaffold /portal/bot/:id/about backstory page (IP P1) ([#2938](https://github.com/HankHuang0516/EClaw/issues/2938)) ([96d6ca5](https://github.com/HankHuang0516/EClaw/commit/96d6ca506d611e2f9be03d50f76983457277f209))
* **proxy:** scope private repo git auth ([#2926](https://github.com/HankHuang0516/EClaw/issues/2926)) ([246f7ff](https://github.com/HankHuang0516/EClaw/commit/246f7ff1dedaf7bece9e3cb9eb24d0ab32ebb393))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **chat:** support message deep links ([#2719](https://github.com/HankHuang0516/EClaw/issues/2719)) ([2dc0f1e](https://github.com/HankHuang0516/EClaw/commit/2dc0f1eeb259e1a0848db4a03186b989372cd91c))
* **mission:** support note deep links ([#2717](https://github.com/HankHuang0516/EClaw/issues/2717)) ([2efd3a5](https://github.com/HankHuang0516/EClaw/commit/2efd3a5e741217a07c0b0ac54a0ddd010e0ebe23))
* **share-chat:** twitter card + per-bot og:image/twitter:* in SSR ([#2609](https://github.com/HankHuang0516/EClaw/issues/2609)) ([6cdc853](https://github.com/HankHuang0516/EClaw/commit/6cdc853dc884cdb95bd47214942768981f218ae0))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))
* **settings:** wire petdx avatar into channel-account chips ([#2626](https://github.com/HankHuang0516/EClaw/issues/2626)) ([88aec77](https://github.com/HankHuang0516/EClaw/commit/88aec772628c240e97b336bb5820892ad632d1ae))
* **files:** wire petdx avatar into entity filter & per-file badges ([#2627](https://github.com/HankHuang0516/EClaw/issues/2627)) ([5b3e5cc](https://github.com/HankHuang0516/EClaw/commit/5b3e5cc542d9da69bb4e92500fd03a542ea33f00))
* **mindmap:** wrap hardcoded zh-TW UI strings with i18n t() ([#2607](https://github.com/HankHuang0516/EClaw/issues/2607)) ([166af87](https://github.com/HankHuang0516/EClaw/commit/166af8772b2121a24aaf34a83b3de970e9b3b571)), closes [#2606](https://github.com/HankHuang0516/EClaw/issues/2606)
* **i18n:** zh-TW backfill 8 keys (soft-pause + chat + invite + wallet) ([#2815](https://github.com/HankHuang0516/EClaw/issues/2815)) ([a2dd574](https://github.com/HankHuang0516/EClaw/commit/a2dd5743ce8d43a4b6ace9a2fd4b52568180d6c5))


### Performance Improvements

* **mindmap:** force-graph hardening for 1000/2000-node graphs ([#2684](https://github.com/HankHuang0516/EClaw/issues/2684)) ([da8b1c8](https://github.com/HankHuang0516/EClaw/commit/da8b1c8f947ab8bc8fa455c1962a91146623a1fc))


### Reverts

* Revert "feat(telegram): long-poll adapter PoC (card_406e612942ff062a06fc47be) ([#2238](https://github.com/HankHuang0516/EClaw/issues/2238))" ([#2239](https://github.com/HankHuang0516/EClaw/issues/2239)) ([eb7aa92](https://github.com/HankHuang0516/EClaw/commit/eb7aa92cce454b4a1a22654a2d133cdebe78c2bd))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-26)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **notifications:** add kanban_done + kanban_done_auto toggles to Android Settings ([#2636](https://github.com/HankHuang0516/EClaw/issues/2636)) ([a710909](https://github.com/HankHuang0516/EClaw/commit/a7109095e3393b8564e7ef1b23d382a4fbb944b8))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **api:** align /api/platform-stats skill-doc with device-auth contract (card_49b8190) ([#2916](https://github.com/HankHuang0516/EClaw/issues/2916)) ([ee55b2f](https://github.com/HankHuang0516/EClaw/commit/ee55b2fdbfbcd4bead5501d16ee66339056c32d7))
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **i18n:** ar block — fix 27 broken entries (CJK leaks + truncated HTML) ([#2851](https://github.com/HankHuang0516/EClaw/issues/2851)) ([5b19175](https://github.com/HankHuang0516/EClaw/commit/5b19175d712d00d16fcec00b749035c4beae7a5c))
* **chat:** atomic-load target bar (await contacts before first render) ([#2831](https://github.com/HankHuang0516/EClaw/issues/2831)) ([5f529e6](https://github.com/HankHuang0516/EClaw/commit/5f529e6b772eacc38ba1de69b44258a05f0d816a)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2](https://github.com/HankHuang0516/EClaw/issues/2)
* **channel:** await binding persistence ([712516d](https://github.com/HankHuang0516/EClaw/commit/712516decafb745035bd1434a28cc1973d433e19))
* **rental:** bump handshake timeout to 60s + timeout-aware discovery fallback ([#2863](https://github.com/HankHuang0516/EClaw/issues/2863)) ([fd4322f](https://github.com/HankHuang0516/EClaw/commit/fd4322f8890f3c2dfca3acdae6a4b95f19c381f9)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **chat:** carry kanban message deep-links ([#2946](https://github.com/HankHuang0516/EClaw/issues/2946)) ([971e2d2](https://github.com/HankHuang0516/EClaw/commit/971e2d27aeb212660901c8707cf418b7b1411286))
* **i18n:** clear batch 1 residual missing keys ([#2790](https://github.com/HankHuang0516/EClaw/issues/2790)) ([211030e](https://github.com/HankHuang0516/EClaw/commit/211030e0b0b6a865c11f0c4ed60dc4e356d43b7a))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **kanban:** comment input no longer overlaps last comment in card detail (PR [#2678](https://github.com/HankHuang0516/EClaw/issues/2678)) ([fba91fc](https://github.com/HankHuang0516/EClaw/commit/fba91fca15402b453a0db5ee857c0b16e6087055))
* **chat:** compact 20px avatar in target bar (App WebView only shows [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2](https://github.com/HankHuang0516/EClaw/issues/2)) ([#2830](https://github.com/HankHuang0516/EClaw/issues/2830)) ([42c7543](https://github.com/HankHuang0516/EClaw/commit/42c7543b4a78a7abf3f5f7535eb9bc6142cd0fe2)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **portal:** complete 401 redirect sweep + mobile UIUX truncation ([#2842](https://github.com/HankHuang0516/EClaw/issues/2842)) ([f9799ba](https://github.com/HankHuang0516/EClaw/commit/f9799ba42498b109f0a8a70e80836aa6da51e216)), closes [#2833](https://github.com/HankHuang0516/EClaw/issues/2833) [#2845](https://github.com/HankHuang0516/EClaw/issues/2845) [#2844](https://github.com/HankHuang0516/EClaw/issues/2844) [#2843](https://github.com/HankHuang0516/EClaw/issues/2843)
* **uiux:** continue qa mobile readability sweep ([#2854](https://github.com/HankHuang0516/EClaw/issues/2854)) ([57606ff](https://github.com/HankHuang0516/EClaw/commit/57606ffe3e543b07a026aacc53c4b470c9a7825b))
* **i18n:** cover dynamic portal wrapper keys ([#2807](https://github.com/HankHuang0516/EClaw/issues/2807)) ([4c711cc](https://github.com/HankHuang0516/EClaw/commit/4c711cc4009300ffe4e8933a98ee01cd0fdd6aeb))
* **i18n:** dedup 20 dash_channel_card_* keys in es block ([#2876](https://github.com/HankHuang0516/EClaw/issues/2876)) ([807284c](https://github.com/HankHuang0516/EClaw/commit/807284ce363ef119ccdb0ae40e5ce99d3f0a27e0))
* **i18n:** dedupe backend locale keys via AST ([#2920](https://github.com/HankHuang0516/EClaw/issues/2920)) ([40ef114](https://github.com/HankHuang0516/EClaw/commit/40ef11414c8b836fe1ed93ec06c839df3a1bf7b9))
* **i18n:** dedupe zh locale keys ([#2919](https://github.com/HankHuang0516/EClaw/issues/2919)) ([afd2cca](https://github.com/HankHuang0516/EClaw/commit/afd2cca8086c2f2df0d04c9c5f8c58733652875e))
* **test:** delegate root test and remove invalid jest option ([#2292](https://github.com/HankHuang0516/EClaw/issues/2292)) ([65bf2f8](https://github.com/HankHuang0516/EClaw/commit/65bf2f83d26d925097cd380ab73b04ab2db49842))
* **kanban:** dep-aware nudge gating + roadmap dependency backfill ([#2904](https://github.com/HankHuang0516/EClaw/issues/2904)) ([2b76ac9](https://github.com/HankHuang0516/EClaw/commit/2b76ac9d3b7e4169b7bc3c6f6b0b0903b63cd9f7)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **rental:** don't pollute entity.message on push gateway timeout ([#2860](https://github.com/HankHuang0516/EClaw/issues/2860)) ([592ba44](https://github.com/HankHuang0516/EClaw/commit/592ba44f57536ee00011b6cbddaa6b129a7cbae9))
* **petdx:** drop dark-grey loading placeholder + preload sprite WEBP ([#2628](https://github.com/HankHuang0516/EClaw/issues/2628)) ([59cef38](https://github.com/HankHuang0516/EClaw/commit/59cef387bd69ca99d7d15c86a1364856d3849ad8)), closes [#1a1a1a](https://github.com/HankHuang0516/EClaw/issues/1a1a1a)
* **gateway-ws:** drop Origin header on server-to-server WS upgrade ([#2869](https://github.com/HankHuang0516/EClaw/issues/2869)) ([716dcf9](https://github.com/HankHuang0516/EClaw/commit/716dcf9d0834b17522bb9d894bad84bc142d1a19))
* **setup-scripts:** drop Origin header on server-to-server WS upgrade ([#2875](https://github.com/HankHuang0516/EClaw/issues/2875)) ([9d893b8](https://github.com/HankHuang0516/EClaw/commit/9d893b8e5eea4db275e450bf423903c156cd3e4b)), closes [#2869](https://github.com/HankHuang0516/EClaw/issues/2869)
* **security:** escape innerHTML in chat modal error messages ([#2819](https://github.com/HankHuang0516/EClaw/issues/2819)) ([dce07ad](https://github.com/HankHuang0516/EClaw/commit/dce07adde64795916dba977ae23e46f3371ce7ed)), closes [#2809](https://github.com/HankHuang0516/EClaw/issues/2809) [#2810](https://github.com/HankHuang0516/EClaw/issues/2810) [#2809](https://github.com/HankHuang0516/EClaw/issues/2809) [#2810](https://github.com/HankHuang0516/EClaw/issues/2810)
* **proxy:** export repo auth to CLI child ([#2928](https://github.com/HankHuang0516/EClaw/issues/2928)) ([336a8ca](https://github.com/HankHuang0516/EClaw/commit/336a8caff4e3663287bd2948cf9fe6e04125cbc8))
* **entities:** expose botSecret to owner so wallpaper service can poll companions ([#2615](https://github.com/HankHuang0516/EClaw/issues/2615)) ([04470fc](https://github.com/HankHuang0516/EClaw/commit/04470fce8f8c3fce2b1ba8b243e776606f107502))
* **rental:** expose owner_public_code in marketplace so plaza CTA can route ([#2616](https://github.com/HankHuang0516/EClaw/issues/2616)) ([4d1372f](https://github.com/HankHuang0516/EClaw/commit/4d1372f717d93cab65543e87c852e74e9fb67071)), closes [#2610](https://github.com/HankHuang0516/EClaw/issues/2610)
* **mindmap:** fallback to device scope when entityId is null ([#2728](https://github.com/HankHuang0516/EClaw/issues/2728)) ([7572312](https://github.com/HankHuang0516/EClaw/commit/7572312433d3d75fc245eda48a28919ce14bd927))
* **i18n:** fill 11 missing zh keys post-[#2920](https://github.com/HankHuang0516/EClaw/issues/2920)/[#2921](https://github.com/HankHuang0516/EClaw/issues/2921) (card_de6970) ([#2924](https://github.com/HankHuang0516/EClaw/issues/2924)) ([17c4899](https://github.com/HankHuang0516/EClaw/commit/17c48996489b1444d6ed589027acfa7986178fe1)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** fill backend runtime locale gaps ([#2921](https://github.com/HankHuang0516/EClaw/issues/2921)) ([00d96ff](https://github.com/HankHuang0516/EClaw/commit/00d96ff261b8134b49292623e1f786fd544144cc))
* **i18n:** fill Spanish drift keys ([#2751](https://github.com/HankHuang0516/EClaw/issues/2751)) ([0ad0ee5](https://github.com/HankHuang0516/EClaw/commit/0ad0ee55f7fac3e6ac46d891539950dab4d553cc))
* **portal:** fit embedded org chart to mobile viewport ([#2674](https://github.com/HankHuang0516/EClaw/issues/2674)) ([1c4e1b4](https://github.com/HankHuang0516/EClaw/commit/1c4e1b413ea7027b4cd4b8ecda981b0d0e12e66b))
* **i18n:** fix 6 trailing-comma syntax errors in 10-locale batch ([#2771](https://github.com/HankHuang0516/EClaw/issues/2771)) ([b27c6ca](https://github.com/HankHuang0516/EClaw/commit/b27c6ca204bf813e406c54ce3a2532a5f1f031b3))
* **kanban:** GET card returns latest 50 comments + comments endpoint exposes total ([#2816](https://github.com/HankHuang0516/EClaw/issues/2816)) ([c4d83f7](https://github.com/HankHuang0516/EClaw/commit/c4d83f777a1cd26aea0936e4316aa35c52822eef))
* **sharechat:** guest verify-email modal + disabled Send for unverified ([#2865](https://github.com/HankHuang0516/EClaw/issues/2865)) ([cb3b061](https://github.com/HankHuang0516/EClaw/commit/cb3b0614e0f6160417d907753e66eceb2d666802))
* **portal:** H4 showcase i18n data-attrs + raw key leak ([#2935](https://github.com/HankHuang0516/EClaw/issues/2935)) ([80d8587](https://github.com/HankHuang0516/EClaw/commit/80d8587c00c03f72fdb9756b1093ee8e1e3d0842)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **uiux:** harden chat previews and roster preview ([#2769](https://github.com/HankHuang0516/EClaw/issues/2769)) ([466d4d3](https://github.com/HankHuang0516/EClaw/commit/466d4d3ef81c628d3f58db64323946053d7bf61c))
* **mention-parser:** ignore @-mentions inside markdown code spans ([#2645](https://github.com/HankHuang0516/EClaw/issues/2645)) ([8da19d4](https://github.com/HankHuang0516/EClaw/commit/8da19d4a79ceb4152bf2144ee0847c61ce3e1def)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **kanban:** lazy-load dependency chips via IntersectionObserver ([#2632](https://github.com/HankHuang0516/EClaw/issues/2632)) ([20586b4](https://github.com/HankHuang0516/EClaw/commit/20586b43357335f9eb6a190c02d58c8e36b58aba)), closes [#2631](https://github.com/HankHuang0516/EClaw/issues/2631)
* **i18n:** localize FCM NotificationChannel labels (card_ec8d3a22) ([#2918](https://github.com/HankHuang0516/EClaw/issues/2918)) ([591cd20](https://github.com/HankHuang0516/EClaw/commit/591cd206704693650a53d19d94c4cc75daf84ffd))
* **kanban:** make card sorting deterministic ([#2756](https://github.com/HankHuang0516/EClaw/issues/2756)) ([48e2117](https://github.com/HankHuang0516/EClaw/commit/48e2117b64e37f05dc635e0a3b67bfd43cbe48f5))
* **portal/nagoya-trip:** map-link invisible on dark hero/day-banner ([#2897](https://github.com/HankHuang0516/EClaw/issues/2897)) ([cc33df6](https://github.com/HankHuang0516/EClaw/commit/cc33df686673455c20beaee60871412a5d486e66)), closes [#1f4030](https://github.com/HankHuang0516/EClaw/issues/1f4030) [#8b8579](https://github.com/HankHuang0516/EClaw/issues/8b8579) [#6e6859](https://github.com/HankHuang0516/EClaw/issues/6e6859) [#7a5614](https://github.com/HankHuang0516/EClaw/issues/7a5614)
* **org-chart:** notify affected bots on hierarchy change ([#2812](https://github.com/HankHuang0516/EClaw/issues/2812)) ([55675fd](https://github.com/HankHuang0516/EClaw/commit/55675fdf4487494d729a29524b32bd81b756a00c)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** notify reviewer on manual /move → review ([#2753](https://github.com/HankHuang0516/EClaw/issues/2753)) ([6cbbb4e](https://github.com/HankHuang0516/EClaw/commit/6cbbb4ee8c0d4d8ad54df2e9b5faaa3699bd530f))
* **wallpaper:** off-load spritesheet fetch to IO so per-petdx sprites actually render ([#2618](https://github.com/HankHuang0516/EClaw/issues/2618)) ([61b832c](https://github.com/HankHuang0516/EClaw/commit/61b832c9fa8a1d0caab810ccc942d85c63349267)), closes [#2615](https://github.com/HankHuang0516/EClaw/issues/2615) [#2577](https://github.com/HankHuang0516/EClaw/issues/2577)
* **security:** patch P0 sanitize-html XSS + P1 protobufjs + exam.html XSS ([#2829](https://github.com/HankHuang0516/EClaw/issues/2829)) ([c71b871](https://github.com/HankHuang0516/EClaw/commit/c71b871a045887375dd0d26d1a3280a0891a89ad))
* **security:** patch ws uninitialized memory disclosure (GHSA-58qx-3vcg-4xpx) ([#2872](https://github.com/HankHuang0516/EClaw/issues/2872)) ([2523d15](https://github.com/HankHuang0516/EClaw/commit/2523d154bbe501a7cc086340f7a07ece3abfa69b))
* **portal:** petdx-browser cookie-session fallback for device-login ([#2757](https://github.com/HankHuang0516/EClaw/issues/2757)) ([ca275f4](https://github.com/HankHuang0516/EClaw/commit/ca275f4519835da0c7ad71c588908a18f6f138d8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **api:** platform-stats 500 + entity/lookup publicCode alias ([#2809](https://github.com/HankHuang0516/EClaw/issues/2809), [#2810](https://github.com/HankHuang0516/EClaw/issues/2810)) ([#2818](https://github.com/HankHuang0516/EClaw/issues/2818)) ([f99fd17](https://github.com/HankHuang0516/EClaw/commit/f99fd17b2b1c32d88daa2510ff66d714c1a53edc))
* **i18n:** positional format specifiers for feedback_result_logs (7 locales) ([#2597](https://github.com/HankHuang0516/EClaw/issues/2597)) ([21aedc7](https://github.com/HankHuang0516/EClaw/commit/21aedc7eebc7a2839e340136f38dfdfd4dabb9dc))
* **avatar-petdx:** preserve descriptor across transient API failures (flicker) ([#2625](https://github.com/HankHuang0516/EClaw/issues/2625)) ([7b1c606](https://github.com/HankHuang0516/EClaw/commit/7b1c606514f7698d72ec95cf6c556e4043966186))
* **chat:** preserve recipient selection across rental-health refresh (P0 #card_eb1cba76) ([#2906](https://github.com/HankHuang0516/EClaw/issues/2906)) ([9cc0301](https://github.com/HankHuang0516/EClaw/commit/9cc0301cc26a0f49af4b7f53486f5c1a7cdd7902)), closes [#card_eb1cba76](https://github.com/HankHuang0516/EClaw/issues/card_eb1cba76) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **chat:** preserve scroll anchor while reading history ([#2693](https://github.com/HankHuang0516/EClaw/issues/2693)) ([945fdb7](https://github.com/HankHuang0516/EClaw/commit/945fdb7192b791b31882e1e75568dd8b11e4686f))
* **promo:** pull video embed from /promo-chat-avatar.html ([#2724](https://github.com/HankHuang0516/EClaw/issues/2724)) ([2afabc8](https://github.com/HankHuang0516/EClaw/commit/2afabc8c5ff8b25218a7cb857e8adfa572c8e9d5))
* **dashboard:** read live.rate_limits.{five_hour,seven_day}.used_percentage ([#2895](https://github.com/HankHuang0516/EClaw/issues/2895)) ([8223303](https://github.com/HankHuang0516/EClaw/commit/822330312bccb1c76675ad2c3b26e78d10dd1298))
* **kanban:** realign stale recurring schedules ([#2785](https://github.com/HankHuang0516/EClaw/issues/2785)) ([ab8ee25](https://github.com/HankHuang0516/EClaw/commit/ab8ee250a9b37f3d3e838bb01d8866c8d2b78231))
* **i18n:** reapply de6970 locale gap translations ([#2925](https://github.com/HankHuang0516/EClaw/issues/2925)) ([d994dc1](https://github.com/HankHuang0516/EClaw/commit/d994dc1d240fef72326db2599262375ccbf29175))
* **portal:** reduce QA-discovered request fanout ([#2656](https://github.com/HankHuang0516/EClaw/issues/2656)) ([1e46d6b](https://github.com/HankHuang0516/EClaw/commit/1e46d6bab61e58c65b452b6503d953f8dddeee75))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **portal:** remove org chart fit scale floor ([#2676](https://github.com/HankHuang0516/EClaw/issues/2676)) ([0f01606](https://github.com/HankHuang0516/EClaw/commit/0f016068b963bb5f800a02f28817c7174979d913))
* **rental:** remove phantom 'webhook test push' step from BIND_COMPLETE ([#2864](https://github.com/HankHuang0516/EClaw/issues/2864)) ([47f4a3e](https://github.com/HankHuang0516/EClaw/commit/47f4a3edf76aa95ebd06d8713cd44fda6eef9b5d))
* **i18n:** rename mm_empty_title → mm_state_empty_title in mindmap.html ([#2683](https://github.com/HankHuang0516/EClaw/issues/2683)) ([c79c109](https://github.com/HankHuang0516/EClaw/commit/c79c109bea23142e8a6d9ace976d105af1280ec9))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **chat:** render mention avatars with companion renderer ([#2633](https://github.com/HankHuang0516/EClaw/issues/2633)) ([03e205f](https://github.com/HankHuang0516/EClaw/commit/03e205f663ecd2c2f443d4009dd5af0093f0bbbb))
* **kanban:** reserve mobile comments panel height ([#2782](https://github.com/HankHuang0516/EClaw/issues/2782)) ([ce8662d](https://github.com/HankHuang0516/EClaw/commit/ce8662d362422fdd25037f1deb61dbed9425e2f9))
* **channel:** restore handshake fallback to discovered sessions ([#2915](https://github.com/HankHuang0516/EClaw/issues/2915)) ([#2917](https://github.com/HankHuang0516/EClaw/issues/2917)) ([9d7d3a2](https://github.com/HankHuang0516/EClaw/commit/9d7d3a25654289998314dd5ca152cefdb8a4d64e)), closes [#2912](https://github.com/HankHuang0516/EClaw/issues/2912)
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* scheduled audit 2026-05-13 — 6 bugs, XSS, i18n ([#2668](https://github.com/HankHuang0516/EClaw/issues/2668)) ([21dd513](https://github.com/HankHuang0516/EClaw/commit/21dd513b4464738de29164265437435ba6cc4817)), closes [#2605](https://github.com/HankHuang0516/EClaw/issues/2605) [#2608](https://github.com/HankHuang0516/EClaw/issues/2608) [#2600](https://github.com/HankHuang0516/EClaw/issues/2600) [#2599](https://github.com/HankHuang0516/EClaw/issues/2599) [#2598](https://github.com/HankHuang0516/EClaw/issues/2598)
* **channel:** scope official bot sessions ([#2912](https://github.com/HankHuang0516/EClaw/issues/2912)) ([5c56b62](https://github.com/HankHuang0516/EClaw/commit/5c56b62c13b739b76f39e168a26bd4e5de2644fb))
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **dashboard:** show Claude weekly bar reset countdown ([#2896](https://github.com/HankHuang0516/EClaw/issues/2896)) ([3b87845](https://github.com/HankHuang0516/EClaw/commit/3b87845d713e980fec69f6b8007549338a326713)), closes [#2895](https://github.com/HankHuang0516/EClaw/issues/2895)
* **chat:** smart-chip preview falls back to inline c.comments when /comments fails (PR [#2677](https://github.com/HankHuang0516/EClaw/issues/2677)) ([7f4dffd](https://github.com/HankHuang0516/EClaw/commit/7f4dffd2c83ea86f296b8fa0610f0e67c9f1af11))
* **kanban:** stabilize comment detail viewport ([#2796](https://github.com/HankHuang0516/EClaw/issues/2796)) ([0a10aad](https://github.com/HankHuang0516/EClaw/commit/0a10aadb5a5b12ff23454c16d5c88183b94ad7d7))
* **wallpaper:** stop Android live wallpaper flashing default lobster on companion change ([#2629](https://github.com/HankHuang0516/EClaw/issues/2629)) ([8b4f66f](https://github.com/HankHuang0516/EClaw/commit/8b4f66fcb335bf43128f924b761b6337c817095b)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **chat:** stop chat.html bouncing to dashboard via /api/rental/health-status 401 race ([#2833](https://github.com/HankHuang0516/EClaw/issues/2833)) ([c422406](https://github.com/HankHuang0516/EClaw/commit/c4224067cdcfe7f3e22ab95007c7563dac4196ac))
* **openclaw-channel:** support OpenClaw 2026.5.20 ([8045de6](https://github.com/HankHuang0516/EClaw/commit/8045de6bebecfc05f9bd57453b99c098ca35681b))
* **mentions:** support same-device CJK display-name tags ([#2874](https://github.com/HankHuang0516/EClaw/issues/2874)) ([b8f61be](https://github.com/HankHuang0516/EClaw/commit/b8f61be9a3962fef75dd32ea34e8900880dafaf9))
* **channel:** suppress operational A2A loop messages (rebase of [#2288](https://github.com/HankHuang0516/EClaw/issues/2288)) ([#2930](https://github.com/HankHuang0516/EClaw/issues/2930)) ([7ceabc9](https://github.com/HankHuang0516/EClaw/commit/7ceabc915df22123cb46ae1500e2eb2e279250af))
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **dashboard:** use sessions[].project for widget Projects list (was .project_id) ([#2894](https://github.com/HankHuang0516/EClaw/issues/2894)) ([0fd1334](https://github.com/HankHuang0516/EClaw/commit/0fd1334897d4a603cc6eb74f34b48606547e09cf))
* **app:** WebView pages honor app-selected locale via ?lang= URL param ([#2672](https://github.com/HankHuang0516/EClaw/issues/2672)) ([8ed8757](https://github.com/HankHuang0516/EClaw/commit/8ed8757aec5bf214e837cc0d81bf2b23f1993a91)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **share-chat:** wire rich CTA actions to msgInput ([#2867](https://github.com/HankHuang0516/EClaw/issues/2867)) ([df23b11](https://github.com/HankHuang0516/EClaw/commit/df23b1147d34c59a644a145bbd87c18b96400acc))


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* **usage-api:** /api/usage/{snapshot,timeline} + usage_snapshots table (Plan B Phase 1) ([#2889](https://github.com/HankHuang0516/EClaw/issues/2889)) ([a0d859c](https://github.com/HankHuang0516/EClaw/commit/a0d859c63f0220909dadb2b1952174861ccdce14))
* **community:** 1-click chat button on bot cards + utm tagging ([#2610](https://github.com/HankHuang0516/EClaw/issues/2610)) ([eee97b0](https://github.com/HankHuang0516/EClaw/commit/eee97b0e2e4e74945ec24f218a69a52800b97a66))
* **chat:** accept ?messageId= as deep-link alias ([#2838](https://github.com/HankHuang0516/EClaw/issues/2838)) ([1785a87](https://github.com/HankHuang0516/EClaw/commit/1785a87310426637fd10df83754fb9924c45207f))
* **chat:** add avatar size preference ([#2714](https://github.com/HankHuang0516/EClaw/issues/2714)) ([6fe164a](https://github.com/HankHuang0516/EClaw/commit/6fe164ad8b22fa576d2dd9ad37c0d9fc295b5a83))
* **dashboard:** add Claude and Codex channel guides ([#2640](https://github.com/HankHuang0516/EClaw/issues/2640)) ([c64e4c4](https://github.com/HankHuang0516/EClaw/commit/c64e4c4afc78db58c5cd578f00486dd7b2fd3311))
* **dashboard:** add Claude Code channel guide card ([#2667](https://github.com/HankHuang0516/EClaw/issues/2667)) ([d70d75c](https://github.com/HankHuang0516/EClaw/commit/d70d75c0c8caa8a540358a9aab4556b8c1927a5c))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* **api:** add DELETE /api/entity/queue to clear messageQueue ([#616](https://github.com/HankHuang0516/EClaw/issues/616)) ([16ee3ff](https://github.com/HankHuang0516/EClaw/commit/16ee3ff1c6aa7f8ef187e54e5e7169f2e44f7395))
* **kanban:** add device-scoped card tags ([#2773](https://github.com/HankHuang0516/EClaw/issues/2773)) ([53a387e](https://github.com/HankHuang0516/EClaw/commit/53a387e67ba7bb4f6bed1c427000c4ae8666577a))
* **portal:** add entity selector to petdx-browser ([#2602](https://github.com/HankHuang0516/EClaw/issues/2602)) ([3fa067e](https://github.com/HankHuang0516/EClaw/commit/3fa067e00b38829b48a37cecd33ee81a9a1122d9))
* **kanban:** add explicit card links ([#2721](https://github.com/HankHuang0516/EClaw/issues/2721)) ([ef9f812](https://github.com/HankHuang0516/EClaw/commit/ef9f812a3fcf39efd07fd158ce90951bdd045ac7))
* **kanban:** add explicit done-card reopen flow ([#2801](https://github.com/HankHuang0516/EClaw/issues/2801)) ([5080aac](https://github.com/HankHuang0516/EClaw/commit/5080aacb75047c0deaa379ee708ec85465afd57c))
* **mindmap:** add GET /api/mindmap/graph force-graph projection ([#2680](https://github.com/HankHuang0516/EClaw/issues/2680)) ([a00b2e7](https://github.com/HankHuang0516/EClaw/commit/a00b2e775af2c4c98cd157f760ad87aeeee469f0)), closes [#2679](https://github.com/HankHuang0516/EClaw/issues/2679) [#2679](https://github.com/HankHuang0516/EClaw/issues/2679)
* **dashboard:** add Hermes channel promo card ([#2708](https://github.com/HankHuang0516/EClaw/issues/2708)) ([337aca1](https://github.com/HankHuang0516/EClaw/commit/337aca153d5a1cd7e888c065f00ae54db7872d91))
* **rental:** add listing soft pause ([#2781](https://github.com/HankHuang0516/EClaw/issues/2781)) ([6586b72](https://github.com/HankHuang0516/EClaw/commit/6586b72717ddb1637d91cd3242c8d2ff554f62b4))
* **portal:** add Nagoya 5D4N trip static cross-ref page ([#2689](https://github.com/HankHuang0516/EClaw/issues/2689)) ([2e0efb6](https://github.com/HankHuang0516/EClaw/commit/2e0efb6dcdaff52226cc8854a96747000b12bdff))
* **portal:** add Nagoya image atlas static page ([#2743](https://github.com/HankHuang0516/EClaw/issues/2743)) ([ac026e9](https://github.com/HankHuang0516/EClaw/commit/ac026e9fd2c92ac9437d01edddffc9adf972f6ba))
* **portal:** add Nagoya trip map links and image lightbox ([#2821](https://github.com/HankHuang0516/EClaw/issues/2821)) ([3e40955](https://github.com/HankHuang0516/EClaw/commit/3e40955650a05f45a6b9f7e39e73847705424a03))
* **portal/nagoya:** add parking shortcut buttons next to itinerary places ([#2826](https://github.com/HankHuang0516/EClaw/issues/2826)) ([63968c5](https://github.com/HankHuang0516/EClaw/commit/63968c554d046afc8d978de74e3aacbf7700500d))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **settings:** add rental roster management preview ([#2758](https://github.com/HankHuang0516/EClaw/issues/2758)) ([9706e59](https://github.com/HankHuang0516/EClaw/commit/9706e59ded140a90a6e02348124282bc69d89001))
* **rental:** add renter health chat indicator ([#2690](https://github.com/HankHuang0516/EClaw/issues/2690)) ([36cd2e9](https://github.com/HankHuang0516/EClaw/commit/36cd2e9802be4c7ebb03d3024617fa74aca48ffd))
* **ios:** add Tutorial & Intro entry in Settings ([#2800](https://github.com/HankHuang0516/EClaw/issues/2800)) ([ed83e51](https://github.com/HankHuang0516/EClaw/commit/ed83e51d043bf4cd5865f38dc95a91ed54820d6c))
* **landing:** add Watch Full Demo CTA below hero video ([#2799](https://github.com/HankHuang0516/EClaw/issues/2799)) ([66107c9](https://github.com/HankHuang0516/EClaw/commit/66107c954727551fd34d989a4674daaad9b63968))
* **footer:** add Watch Intro Video link in Info column ([#2798](https://github.com/HankHuang0516/EClaw/issues/2798)) ([d7c6d59](https://github.com/HankHuang0516/EClaw/commit/d7c6d596b69c6a5b257bf1f7a792a407ef9712ad))
* **i18n:** ar iter-2 — fill 623 missing keys against en source ([#2847](https://github.com/HankHuang0516/EClaw/issues/2847)) ([ee94a7a](https://github.com/HankHuang0516/EClaw/commit/ee94a7ae6812b5163efe4284ee4907ca32302f5c))
* **kanban:** backlog launch-gate flag to suppress L1/L2/L3 escalation ([#2855](https://github.com/HankHuang0516/EClaw/issues/2855)) ([cb8bf1b](https://github.com/HankHuang0516/EClaw/commit/cb8bf1bb6421f25214f65e129a8cadccc49cc266)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#4](https://github.com/HankHuang0516/EClaw/issues/4) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **companion:** bridge crafter-station/petdex gallery (1784 pets) ([#2601](https://github.com/HankHuang0516/EClaw/issues/2601)) ([2e245be](https://github.com/HankHuang0516/EClaw/commit/2e245bea6dd47ea7361b927d389188a3c23b6bb3))
* **promo:** chat avatar size feature landing page (self-hosted MP4) ([#2722](https://github.com/HankHuang0516/EClaw/issues/2722)) ([3852210](https://github.com/HankHuang0516/EClaw/commit/3852210d355704d018e3daca6b5f9512a011b210)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **kanban:** cron-spawn jitter + lane backpressure to prevent same-tick wedge ([#2791](https://github.com/HankHuang0516/EClaw/issues/2791)) ([9f414a7](https://github.com/HankHuang0516/EClaw/commit/9f414a731d6393672a0a4189c7b408c529ae5e12)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **portal:** dashboard usage widget — Claude/Codex 5h gauges + 24h chart (Plan B Phase 3) ([#2891](https://github.com/HankHuang0516/EClaw/issues/2891)) ([d18f373](https://github.com/HankHuang0516/EClaw/commit/d18f373857e4bd302437d6bda2a1e01871fbb1db))
* **portal:** dashboard usage widget v2 — Session/Weekly % bars + projects, no cost (Plan B Phase 3.1) ([#2893](https://github.com/HankHuang0516/EClaw/issues/2893)) ([4bc0dc7](https://github.com/HankHuang0516/EClaw/commit/4bc0dc744ed9d54dfd532ebac4b705c7f84ec0a6))
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **info:** embed 75s promo video on Quick Start tab ([#2795](https://github.com/HankHuang0516/EClaw/issues/2795)) ([86c3f70](https://github.com/HankHuang0516/EClaw/commit/86c3f709a95eebbee1241077b807880463f804b6))
* **promo:** embed daily eclaw video 2026-05-14 ([#2786](https://github.com/HankHuang0516/EClaw/issues/2786)) ([718a814](https://github.com/HankHuang0516/EClaw/commit/718a814ab16850bc2b33a1b303841e2c4378ecfa)), closes [#2782](https://github.com/HankHuang0516/EClaw/issues/2782) [#2693](https://github.com/HankHuang0516/EClaw/issues/2693)
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **info:** embed promo video at top of Quick Start tab ([#2797](https://github.com/HankHuang0516/EClaw/issues/2797)) ([047679f](https://github.com/HankHuang0516/EClaw/commit/047679fd57ab9949eaeacea414d5611e71afe041))
* **rental:** enforce strict rebind refunds ([#2703](https://github.com/HankHuang0516/EClaw/issues/2703)) ([a1859c5](https://github.com/HankHuang0516/EClaw/commit/a1859c50e6fb3991d7a8051491502d824a14a116))
* **portal:** group task chip actions ([#2825](https://github.com/HankHuang0516/EClaw/issues/2825)) ([5db5c59](https://github.com/HankHuang0516/EClaw/commit/5db5c59b32b8635f1412205faf0c2f9164d3d5d4))
* **hermes:** H2 health-check cron + 7d SLA + commander alerts (card_07891ac) ([#2922](https://github.com/HankHuang0516/EClaw/issues/2922)) ([82b4315](https://github.com/HankHuang0516/EClaw/commit/82b4315aea234493e3d1889dc53958c2f1d842e0)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **portal:** info-guide-rules + info-guide-soul slide pair ([#2793](https://github.com/HankHuang0516/EClaw/issues/2793)) ([1c8bddc](https://github.com/HankHuang0516/EClaw/commit/1c8bddc4c185054b2b60088498e3d45509117127)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **chat:** link card previews to kanban ([#2754](https://github.com/HankHuang0516/EClaw/issues/2754)) ([2261240](https://github.com/HankHuang0516/EClaw/commit/22612402c2e95efb07246629e81a849be41ee9c7))
* **mission:** link notes to kanban cards ([#2723](https://github.com/HankHuang0516/EClaw/issues/2723)) ([b36dc18](https://github.com/HankHuang0516/EClaw/commit/b36dc18f3a8facf12e0b6046351c222f1e99dc55))
* **usage-daemon:** macOS launchd daemon polls Claude/Codex usage → POST /api/usage/snapshot (Plan B Phase 2) ([#2890](https://github.com/HankHuang0516/EClaw/issues/2890)) ([fd225e1](https://github.com/HankHuang0516/EClaw/commit/fd225e12d9491037be1a340bd63b54b5f3308c7f))
* **mindmap:** mission.html link to /portal/mindmap.html + deprecate /api/mission/mindmap ([#2685](https://github.com/HankHuang0516/EClaw/issues/2685)) ([11e297b](https://github.com/HankHuang0516/EClaw/commit/11e297bab1c9b56fcde3027d6500b7c58891bf18)), closes [#2680](https://github.com/HankHuang0516/EClaw/issues/2680) [#2684](https://github.com/HankHuang0516/EClaw/issues/2684)
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **portal:** nagoya trip interactive map (Leaflet + OSM, no API key) ([#2888](https://github.com/HankHuang0516/EClaw/issues/2888)) ([ecfdac0](https://github.com/HankHuang0516/EClaw/commit/ecfdac06348c12ee7c6872c6c28d5f82162e7aa9))
* **android:** native tab navigation bridge for portal pages ([#2832](https://github.com/HankHuang0516/EClaw/issues/2832)) ([7e02e6f](https://github.com/HankHuang0516/EClaw/commit/7e02e6f225014e64f08f55035d7b9e5727873343)), closes [#2824](https://github.com/HankHuang0516/EClaw/issues/2824) [#2743](https://github.com/HankHuang0516/EClaw/issues/2743) [#2821](https://github.com/HankHuang0516/EClaw/issues/2821) [#2826](https://github.com/HankHuang0516/EClaw/issues/2826) [#2797](https://github.com/HankHuang0516/EClaw/issues/2797) [#2798](https://github.com/HankHuang0516/EClaw/issues/2798) [#2799](https://github.com/HankHuang0516/EClaw/issues/2799) [#2800](https://github.com/HankHuang0516/EClaw/issues/2800) [#2801](https://github.com/HankHuang0516/EClaw/issues/2801) [#2816](https://github.com/HankHuang0516/EClaw/issues/2816) [#2796](https://github.com/HankHuang0516/EClaw/issues/2796) [#2825](https://github.com/HankHuang0516/EClaw/issues/2825) [#2812](https://github.com/HankHuang0516/EClaw/issues/2812) [#2813](https://github.com/HankHuang0516/EClaw/issues/2813) [#2814](https://github.com/HankHuang0516/EClaw/issues/2814) [#2815](https://github.com/HankHuang0516/EClaw/issues/2815) [#2811](https://github.com/HankHuang0516/EClaw/issues/2811) [#2807](https://github.com/HankHuang0516/EClaw/issues/2807) [#2808](https://github.com/HankHuang0516/EClaw/issues/2808) [#2818](https://github.com/HankHuang0516/EClaw/issues/2818) [#2819](https://github.com/HankHuang0516/EClaw/issues/2819) [#2824](https://github.com/HankHuang0516/EClaw/issues/2824)
* **channel:** outbound backpressure (30/min cap + 429 retry-after) ([#2911](https://github.com/HankHuang0516/EClaw/issues/2911)) ([36dc99c](https://github.com/HankHuang0516/EClaw/commit/36dc99ca78b0e1724a2aaefb5936669077b7a28f))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **ai-support:** pass per-request caller creds to claude-cli-proxy /chat (H3 Phase 2) ([#2947](https://github.com/HankHuang0516/EClaw/issues/2947)) ([1f5378b](https://github.com/HankHuang0516/EClaw/commit/1f5378b9e01d4e650005c338bf81f1ef43535624)), closes [#2937](https://github.com/HankHuang0516/EClaw/issues/2937)
* **settings:** per-entity nudge override UI (Phase 2) ([#2837](https://github.com/HankHuang0516/EClaw/issues/2837)) ([ea7662b](https://github.com/HankHuang0516/EClaw/commit/ea7662b0858882dae461e1387f711895924f9ab8)), closes [3/#4](https://github.com/HankHuang0516/EClaw/issues/4)
* **kanban:** per-entity nudge overrides (Phase 2 of card_e066cb6b) ([#2836](https://github.com/HankHuang0516/EClaw/issues/2836)) ([0425f80](https://github.com/HankHuang0516/EClaw/commit/0425f80bc1169c0d506b665659c8676695c45553))
* **avatar:** petdx render on card-holder my-cards (Phase 1b) ([#2621](https://github.com/HankHuang0516/EClaw/issues/2621)) ([f78ba8b](https://github.com/HankHuang0516/EClaw/commit/f78ba8b18acc426936ab6d8a82ca7541effea00d))
* **avatar:** petdx render on dashboard entity grid / org chart / bindings (Phase 1b) ([#2622](https://github.com/HankHuang0516/EClaw/issues/2622)) ([f417749](https://github.com/HankHuang0516/EClaw/commit/f41774914451048e8cd76e9ae30416a0642e173b)), closes [#2620](https://github.com/HankHuang0516/EClaw/issues/2620) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621)
* **avatar:** petdx render on kanban auto-assign / pulse / comment avatars (Phase 1b) ([#2624](https://github.com/HankHuang0516/EClaw/issues/2624)) ([6bff5f8](https://github.com/HankHuang0516/EClaw/commit/6bff5f80440d0bd91a6b1721cde9478d685c4d46))
* **avatar:** petdx render on mission skill/rule/soul entity dialogs (Phase 1b) ([#2623](https://github.com/HankHuang0516/EClaw/issues/2623)) ([129327b](https://github.com/HankHuang0516/EClaw/commit/129327bc7b91056659f1ab7e8d5e3f5260d951fb))
* **mindmap:** portal/mindmap.html force-graph prototype ([#129](https://github.com/HankHuang0516/EClaw/issues/129)) ([#2681](https://github.com/HankHuang0516/EClaw/issues/2681)) ([0f15e69](https://github.com/HankHuang0516/EClaw/commit/0f15e6930f0697c37fa08f3219edb8f9e499837f)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **channel:** record delivery receipts ([#2913](https://github.com/HankHuang0516/EClaw/issues/2913)) ([90c671b](https://github.com/HankHuang0516/EClaw/commit/90c671bd1970ab51584b90e2b634484ec10cc7ae))
* **portal:** redo nagoya trip page in professional tour-guide style ([#2691](https://github.com/HankHuang0516/EClaw/issues/2691)) ([b2378c0](https://github.com/HankHuang0516/EClaw/commit/b2378c06ee20fa9cccfdceceb1a4c9e0b3072f59))
* **i18n:** remove ms+hi orphan keys from i18n.js ([#2849](https://github.com/HankHuang0516/EClaw/issues/2849)) ([320176c](https://github.com/HankHuang0516/EClaw/commit/320176c06a3cfd8631e2a82ad02a6bd6a9af0389))
* **avatar:** render selected petdx companion in chat avatars ([#2620](https://github.com/HankHuang0516/EClaw/issues/2620)) ([0bdd046](https://github.com/HankHuang0516/EClaw/commit/0bdd046fe1b1c428e32edda366ff112c08927f4c))
* **home:** replace native home with WebView hosting dashboard.html ([#2634](https://github.com/HankHuang0516/EClaw/issues/2634)) ([e69ea81](https://github.com/HankHuang0516/EClaw/commit/e69ea8160c239b083a83d6dc83a4f1c3f901c863))
* **app:** route chat mission jumps through native tabs ([#2824](https://github.com/HankHuang0516/EClaw/issues/2824)) ([deb07b6](https://github.com/HankHuang0516/EClaw/commit/deb07b69a9ecca632fe27278de537f1d85234e94))
* **portal:** scaffold /portal/bot/:id/about backstory page (IP P1) ([#2938](https://github.com/HankHuang0516/EClaw/issues/2938)) ([96d6ca5](https://github.com/HankHuang0516/EClaw/commit/96d6ca506d611e2f9be03d50f76983457277f209))
* **proxy:** scope private repo git auth ([#2926](https://github.com/HankHuang0516/EClaw/issues/2926)) ([246f7ff](https://github.com/HankHuang0516/EClaw/commit/246f7ff1dedaf7bece9e3cb9eb24d0ab32ebb393))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **chat:** support message deep links ([#2719](https://github.com/HankHuang0516/EClaw/issues/2719)) ([2dc0f1e](https://github.com/HankHuang0516/EClaw/commit/2dc0f1eeb259e1a0848db4a03186b989372cd91c))
* **mission:** support note deep links ([#2717](https://github.com/HankHuang0516/EClaw/issues/2717)) ([2efd3a5](https://github.com/HankHuang0516/EClaw/commit/2efd3a5e741217a07c0b0ac54a0ddd010e0ebe23))
* **share-chat:** twitter card + per-bot og:image/twitter:* in SSR ([#2609](https://github.com/HankHuang0516/EClaw/issues/2609)) ([6cdc853](https://github.com/HankHuang0516/EClaw/commit/6cdc853dc884cdb95bd47214942768981f218ae0))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))
* **settings:** wire petdx avatar into channel-account chips ([#2626](https://github.com/HankHuang0516/EClaw/issues/2626)) ([88aec77](https://github.com/HankHuang0516/EClaw/commit/88aec772628c240e97b336bb5820892ad632d1ae))
* **files:** wire petdx avatar into entity filter & per-file badges ([#2627](https://github.com/HankHuang0516/EClaw/issues/2627)) ([5b3e5cc](https://github.com/HankHuang0516/EClaw/commit/5b3e5cc542d9da69bb4e92500fd03a542ea33f00))
* **mindmap:** wrap hardcoded zh-TW UI strings with i18n t() ([#2607](https://github.com/HankHuang0516/EClaw/issues/2607)) ([166af87](https://github.com/HankHuang0516/EClaw/commit/166af8772b2121a24aaf34a83b3de970e9b3b571)), closes [#2606](https://github.com/HankHuang0516/EClaw/issues/2606)
* **i18n:** zh-TW backfill 8 keys (soft-pause + chat + invite + wallet) ([#2815](https://github.com/HankHuang0516/EClaw/issues/2815)) ([a2dd574](https://github.com/HankHuang0516/EClaw/commit/a2dd5743ce8d43a4b6ace9a2fd4b52568180d6c5))


### Performance Improvements

* **mindmap:** force-graph hardening for 1000/2000-node graphs ([#2684](https://github.com/HankHuang0516/EClaw/issues/2684)) ([da8b1c8](https://github.com/HankHuang0516/EClaw/commit/da8b1c8f947ab8bc8fa455c1962a91146623a1fc))


### Reverts

* Revert "feat(telegram): long-poll adapter PoC (card_406e612942ff062a06fc47be) ([#2238](https://github.com/HankHuang0516/EClaw/issues/2238))" ([#2239](https://github.com/HankHuang0516/EClaw/issues/2239)) ([eb7aa92](https://github.com/HankHuang0516/EClaw/commit/eb7aa92cce454b4a1a22654a2d133cdebe78c2bd))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-25)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **notifications:** add kanban_done + kanban_done_auto toggles to Android Settings ([#2636](https://github.com/HankHuang0516/EClaw/issues/2636)) ([a710909](https://github.com/HankHuang0516/EClaw/commit/a7109095e3393b8564e7ef1b23d382a4fbb944b8))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **api:** align /api/platform-stats skill-doc with device-auth contract (card_49b8190) ([#2916](https://github.com/HankHuang0516/EClaw/issues/2916)) ([ee55b2f](https://github.com/HankHuang0516/EClaw/commit/ee55b2fdbfbcd4bead5501d16ee66339056c32d7))
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **i18n:** ar block — fix 27 broken entries (CJK leaks + truncated HTML) ([#2851](https://github.com/HankHuang0516/EClaw/issues/2851)) ([5b19175](https://github.com/HankHuang0516/EClaw/commit/5b19175d712d00d16fcec00b749035c4beae7a5c))
* **chat:** atomic-load target bar (await contacts before first render) ([#2831](https://github.com/HankHuang0516/EClaw/issues/2831)) ([5f529e6](https://github.com/HankHuang0516/EClaw/commit/5f529e6b772eacc38ba1de69b44258a05f0d816a)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2](https://github.com/HankHuang0516/EClaw/issues/2)
* **channel:** await binding persistence ([712516d](https://github.com/HankHuang0516/EClaw/commit/712516decafb745035bd1434a28cc1973d433e19))
* **rental:** bump handshake timeout to 60s + timeout-aware discovery fallback ([#2863](https://github.com/HankHuang0516/EClaw/issues/2863)) ([fd4322f](https://github.com/HankHuang0516/EClaw/commit/fd4322f8890f3c2dfca3acdae6a4b95f19c381f9)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **i18n:** clear batch 1 residual missing keys ([#2790](https://github.com/HankHuang0516/EClaw/issues/2790)) ([211030e](https://github.com/HankHuang0516/EClaw/commit/211030e0b0b6a865c11f0c4ed60dc4e356d43b7a))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **kanban:** comment input no longer overlaps last comment in card detail (PR [#2678](https://github.com/HankHuang0516/EClaw/issues/2678)) ([fba91fc](https://github.com/HankHuang0516/EClaw/commit/fba91fca15402b453a0db5ee857c0b16e6087055))
* **chat:** compact 20px avatar in target bar (App WebView only shows [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2](https://github.com/HankHuang0516/EClaw/issues/2)) ([#2830](https://github.com/HankHuang0516/EClaw/issues/2830)) ([42c7543](https://github.com/HankHuang0516/EClaw/commit/42c7543b4a78a7abf3f5f7535eb9bc6142cd0fe2)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **portal:** complete 401 redirect sweep + mobile UIUX truncation ([#2842](https://github.com/HankHuang0516/EClaw/issues/2842)) ([f9799ba](https://github.com/HankHuang0516/EClaw/commit/f9799ba42498b109f0a8a70e80836aa6da51e216)), closes [#2833](https://github.com/HankHuang0516/EClaw/issues/2833) [#2845](https://github.com/HankHuang0516/EClaw/issues/2845) [#2844](https://github.com/HankHuang0516/EClaw/issues/2844) [#2843](https://github.com/HankHuang0516/EClaw/issues/2843)
* **uiux:** continue qa mobile readability sweep ([#2854](https://github.com/HankHuang0516/EClaw/issues/2854)) ([57606ff](https://github.com/HankHuang0516/EClaw/commit/57606ffe3e543b07a026aacc53c4b470c9a7825b))
* **i18n:** cover dynamic portal wrapper keys ([#2807](https://github.com/HankHuang0516/EClaw/issues/2807)) ([4c711cc](https://github.com/HankHuang0516/EClaw/commit/4c711cc4009300ffe4e8933a98ee01cd0fdd6aeb))
* **i18n:** dedup 20 dash_channel_card_* keys in es block ([#2876](https://github.com/HankHuang0516/EClaw/issues/2876)) ([807284c](https://github.com/HankHuang0516/EClaw/commit/807284ce363ef119ccdb0ae40e5ce99d3f0a27e0))
* **i18n:** dedupe backend locale keys via AST ([#2920](https://github.com/HankHuang0516/EClaw/issues/2920)) ([40ef114](https://github.com/HankHuang0516/EClaw/commit/40ef11414c8b836fe1ed93ec06c839df3a1bf7b9))
* **i18n:** dedupe zh locale keys ([#2919](https://github.com/HankHuang0516/EClaw/issues/2919)) ([afd2cca](https://github.com/HankHuang0516/EClaw/commit/afd2cca8086c2f2df0d04c9c5f8c58733652875e))
* **test:** delegate root test and remove invalid jest option ([#2292](https://github.com/HankHuang0516/EClaw/issues/2292)) ([65bf2f8](https://github.com/HankHuang0516/EClaw/commit/65bf2f83d26d925097cd380ab73b04ab2db49842))
* **kanban:** dep-aware nudge gating + roadmap dependency backfill ([#2904](https://github.com/HankHuang0516/EClaw/issues/2904)) ([2b76ac9](https://github.com/HankHuang0516/EClaw/commit/2b76ac9d3b7e4169b7bc3c6f6b0b0903b63cd9f7)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **rental:** don't pollute entity.message on push gateway timeout ([#2860](https://github.com/HankHuang0516/EClaw/issues/2860)) ([592ba44](https://github.com/HankHuang0516/EClaw/commit/592ba44f57536ee00011b6cbddaa6b129a7cbae9))
* **petdx:** drop dark-grey loading placeholder + preload sprite WEBP ([#2628](https://github.com/HankHuang0516/EClaw/issues/2628)) ([59cef38](https://github.com/HankHuang0516/EClaw/commit/59cef387bd69ca99d7d15c86a1364856d3849ad8)), closes [#1a1a1a](https://github.com/HankHuang0516/EClaw/issues/1a1a1a)
* **gateway-ws:** drop Origin header on server-to-server WS upgrade ([#2869](https://github.com/HankHuang0516/EClaw/issues/2869)) ([716dcf9](https://github.com/HankHuang0516/EClaw/commit/716dcf9d0834b17522bb9d894bad84bc142d1a19))
* **setup-scripts:** drop Origin header on server-to-server WS upgrade ([#2875](https://github.com/HankHuang0516/EClaw/issues/2875)) ([9d893b8](https://github.com/HankHuang0516/EClaw/commit/9d893b8e5eea4db275e450bf423903c156cd3e4b)), closes [#2869](https://github.com/HankHuang0516/EClaw/issues/2869)
* **security:** escape innerHTML in chat modal error messages ([#2819](https://github.com/HankHuang0516/EClaw/issues/2819)) ([dce07ad](https://github.com/HankHuang0516/EClaw/commit/dce07adde64795916dba977ae23e46f3371ce7ed)), closes [#2809](https://github.com/HankHuang0516/EClaw/issues/2809) [#2810](https://github.com/HankHuang0516/EClaw/issues/2810) [#2809](https://github.com/HankHuang0516/EClaw/issues/2809) [#2810](https://github.com/HankHuang0516/EClaw/issues/2810)
* **proxy:** export repo auth to CLI child ([#2928](https://github.com/HankHuang0516/EClaw/issues/2928)) ([336a8ca](https://github.com/HankHuang0516/EClaw/commit/336a8caff4e3663287bd2948cf9fe6e04125cbc8))
* **entities:** expose botSecret to owner so wallpaper service can poll companions ([#2615](https://github.com/HankHuang0516/EClaw/issues/2615)) ([04470fc](https://github.com/HankHuang0516/EClaw/commit/04470fce8f8c3fce2b1ba8b243e776606f107502))
* **rental:** expose owner_public_code in marketplace so plaza CTA can route ([#2616](https://github.com/HankHuang0516/EClaw/issues/2616)) ([4d1372f](https://github.com/HankHuang0516/EClaw/commit/4d1372f717d93cab65543e87c852e74e9fb67071)), closes [#2610](https://github.com/HankHuang0516/EClaw/issues/2610)
* **mindmap:** fallback to device scope when entityId is null ([#2728](https://github.com/HankHuang0516/EClaw/issues/2728)) ([7572312](https://github.com/HankHuang0516/EClaw/commit/7572312433d3d75fc245eda48a28919ce14bd927))
* **i18n:** fill 11 missing zh keys post-[#2920](https://github.com/HankHuang0516/EClaw/issues/2920)/[#2921](https://github.com/HankHuang0516/EClaw/issues/2921) (card_de6970) ([#2924](https://github.com/HankHuang0516/EClaw/issues/2924)) ([17c4899](https://github.com/HankHuang0516/EClaw/commit/17c48996489b1444d6ed589027acfa7986178fe1)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** fill backend runtime locale gaps ([#2921](https://github.com/HankHuang0516/EClaw/issues/2921)) ([00d96ff](https://github.com/HankHuang0516/EClaw/commit/00d96ff261b8134b49292623e1f786fd544144cc))
* **i18n:** fill Spanish drift keys ([#2751](https://github.com/HankHuang0516/EClaw/issues/2751)) ([0ad0ee5](https://github.com/HankHuang0516/EClaw/commit/0ad0ee55f7fac3e6ac46d891539950dab4d553cc))
* **portal:** fit embedded org chart to mobile viewport ([#2674](https://github.com/HankHuang0516/EClaw/issues/2674)) ([1c4e1b4](https://github.com/HankHuang0516/EClaw/commit/1c4e1b413ea7027b4cd4b8ecda981b0d0e12e66b))
* **i18n:** fix 6 trailing-comma syntax errors in 10-locale batch ([#2771](https://github.com/HankHuang0516/EClaw/issues/2771)) ([b27c6ca](https://github.com/HankHuang0516/EClaw/commit/b27c6ca204bf813e406c54ce3a2532a5f1f031b3))
* **kanban:** GET card returns latest 50 comments + comments endpoint exposes total ([#2816](https://github.com/HankHuang0516/EClaw/issues/2816)) ([c4d83f7](https://github.com/HankHuang0516/EClaw/commit/c4d83f777a1cd26aea0936e4316aa35c52822eef))
* **sharechat:** guest verify-email modal + disabled Send for unverified ([#2865](https://github.com/HankHuang0516/EClaw/issues/2865)) ([cb3b061](https://github.com/HankHuang0516/EClaw/commit/cb3b0614e0f6160417d907753e66eceb2d666802))
* **portal:** H4 showcase i18n data-attrs + raw key leak ([#2935](https://github.com/HankHuang0516/EClaw/issues/2935)) ([80d8587](https://github.com/HankHuang0516/EClaw/commit/80d8587c00c03f72fdb9756b1093ee8e1e3d0842)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **uiux:** harden chat previews and roster preview ([#2769](https://github.com/HankHuang0516/EClaw/issues/2769)) ([466d4d3](https://github.com/HankHuang0516/EClaw/commit/466d4d3ef81c628d3f58db64323946053d7bf61c))
* **mention-parser:** ignore @-mentions inside markdown code spans ([#2645](https://github.com/HankHuang0516/EClaw/issues/2645)) ([8da19d4](https://github.com/HankHuang0516/EClaw/commit/8da19d4a79ceb4152bf2144ee0847c61ce3e1def)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **kanban:** lazy-load dependency chips via IntersectionObserver ([#2632](https://github.com/HankHuang0516/EClaw/issues/2632)) ([20586b4](https://github.com/HankHuang0516/EClaw/commit/20586b43357335f9eb6a190c02d58c8e36b58aba)), closes [#2631](https://github.com/HankHuang0516/EClaw/issues/2631)
* **i18n:** localize FCM NotificationChannel labels (card_ec8d3a22) ([#2918](https://github.com/HankHuang0516/EClaw/issues/2918)) ([591cd20](https://github.com/HankHuang0516/EClaw/commit/591cd206704693650a53d19d94c4cc75daf84ffd))
* **kanban:** make card sorting deterministic ([#2756](https://github.com/HankHuang0516/EClaw/issues/2756)) ([48e2117](https://github.com/HankHuang0516/EClaw/commit/48e2117b64e37f05dc635e0a3b67bfd43cbe48f5))
* **portal/nagoya-trip:** map-link invisible on dark hero/day-banner ([#2897](https://github.com/HankHuang0516/EClaw/issues/2897)) ([cc33df6](https://github.com/HankHuang0516/EClaw/commit/cc33df686673455c20beaee60871412a5d486e66)), closes [#1f4030](https://github.com/HankHuang0516/EClaw/issues/1f4030) [#8b8579](https://github.com/HankHuang0516/EClaw/issues/8b8579) [#6e6859](https://github.com/HankHuang0516/EClaw/issues/6e6859) [#7a5614](https://github.com/HankHuang0516/EClaw/issues/7a5614)
* **org-chart:** notify affected bots on hierarchy change ([#2812](https://github.com/HankHuang0516/EClaw/issues/2812)) ([55675fd](https://github.com/HankHuang0516/EClaw/commit/55675fdf4487494d729a29524b32bd81b756a00c)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** notify reviewer on manual /move → review ([#2753](https://github.com/HankHuang0516/EClaw/issues/2753)) ([6cbbb4e](https://github.com/HankHuang0516/EClaw/commit/6cbbb4ee8c0d4d8ad54df2e9b5faaa3699bd530f))
* **wallpaper:** off-load spritesheet fetch to IO so per-petdx sprites actually render ([#2618](https://github.com/HankHuang0516/EClaw/issues/2618)) ([61b832c](https://github.com/HankHuang0516/EClaw/commit/61b832c9fa8a1d0caab810ccc942d85c63349267)), closes [#2615](https://github.com/HankHuang0516/EClaw/issues/2615) [#2577](https://github.com/HankHuang0516/EClaw/issues/2577)
* **security:** patch P0 sanitize-html XSS + P1 protobufjs + exam.html XSS ([#2829](https://github.com/HankHuang0516/EClaw/issues/2829)) ([c71b871](https://github.com/HankHuang0516/EClaw/commit/c71b871a045887375dd0d26d1a3280a0891a89ad))
* **security:** patch ws uninitialized memory disclosure (GHSA-58qx-3vcg-4xpx) ([#2872](https://github.com/HankHuang0516/EClaw/issues/2872)) ([2523d15](https://github.com/HankHuang0516/EClaw/commit/2523d154bbe501a7cc086340f7a07ece3abfa69b))
* **portal:** petdx-browser cookie-session fallback for device-login ([#2757](https://github.com/HankHuang0516/EClaw/issues/2757)) ([ca275f4](https://github.com/HankHuang0516/EClaw/commit/ca275f4519835da0c7ad71c588908a18f6f138d8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **api:** platform-stats 500 + entity/lookup publicCode alias ([#2809](https://github.com/HankHuang0516/EClaw/issues/2809), [#2810](https://github.com/HankHuang0516/EClaw/issues/2810)) ([#2818](https://github.com/HankHuang0516/EClaw/issues/2818)) ([f99fd17](https://github.com/HankHuang0516/EClaw/commit/f99fd17b2b1c32d88daa2510ff66d714c1a53edc))
* **i18n:** positional format specifiers for feedback_result_logs (7 locales) ([#2597](https://github.com/HankHuang0516/EClaw/issues/2597)) ([21aedc7](https://github.com/HankHuang0516/EClaw/commit/21aedc7eebc7a2839e340136f38dfdfd4dabb9dc))
* **avatar-petdx:** preserve descriptor across transient API failures (flicker) ([#2625](https://github.com/HankHuang0516/EClaw/issues/2625)) ([7b1c606](https://github.com/HankHuang0516/EClaw/commit/7b1c606514f7698d72ec95cf6c556e4043966186))
* **chat:** preserve recipient selection across rental-health refresh (P0 #card_eb1cba76) ([#2906](https://github.com/HankHuang0516/EClaw/issues/2906)) ([9cc0301](https://github.com/HankHuang0516/EClaw/commit/9cc0301cc26a0f49af4b7f53486f5c1a7cdd7902)), closes [#card_eb1cba76](https://github.com/HankHuang0516/EClaw/issues/card_eb1cba76) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **chat:** preserve scroll anchor while reading history ([#2693](https://github.com/HankHuang0516/EClaw/issues/2693)) ([945fdb7](https://github.com/HankHuang0516/EClaw/commit/945fdb7192b791b31882e1e75568dd8b11e4686f))
* **promo:** pull video embed from /promo-chat-avatar.html ([#2724](https://github.com/HankHuang0516/EClaw/issues/2724)) ([2afabc8](https://github.com/HankHuang0516/EClaw/commit/2afabc8c5ff8b25218a7cb857e8adfa572c8e9d5))
* **dashboard:** read live.rate_limits.{five_hour,seven_day}.used_percentage ([#2895](https://github.com/HankHuang0516/EClaw/issues/2895)) ([8223303](https://github.com/HankHuang0516/EClaw/commit/822330312bccb1c76675ad2c3b26e78d10dd1298))
* **kanban:** realign stale recurring schedules ([#2785](https://github.com/HankHuang0516/EClaw/issues/2785)) ([ab8ee25](https://github.com/HankHuang0516/EClaw/commit/ab8ee250a9b37f3d3e838bb01d8866c8d2b78231))
* **i18n:** reapply de6970 locale gap translations ([#2925](https://github.com/HankHuang0516/EClaw/issues/2925)) ([d994dc1](https://github.com/HankHuang0516/EClaw/commit/d994dc1d240fef72326db2599262375ccbf29175))
* **portal:** reduce QA-discovered request fanout ([#2656](https://github.com/HankHuang0516/EClaw/issues/2656)) ([1e46d6b](https://github.com/HankHuang0516/EClaw/commit/1e46d6bab61e58c65b452b6503d953f8dddeee75))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **portal:** remove org chart fit scale floor ([#2676](https://github.com/HankHuang0516/EClaw/issues/2676)) ([0f01606](https://github.com/HankHuang0516/EClaw/commit/0f016068b963bb5f800a02f28817c7174979d913))
* **rental:** remove phantom 'webhook test push' step from BIND_COMPLETE ([#2864](https://github.com/HankHuang0516/EClaw/issues/2864)) ([47f4a3e](https://github.com/HankHuang0516/EClaw/commit/47f4a3edf76aa95ebd06d8713cd44fda6eef9b5d))
* **i18n:** rename mm_empty_title → mm_state_empty_title in mindmap.html ([#2683](https://github.com/HankHuang0516/EClaw/issues/2683)) ([c79c109](https://github.com/HankHuang0516/EClaw/commit/c79c109bea23142e8a6d9ace976d105af1280ec9))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **chat:** render mention avatars with companion renderer ([#2633](https://github.com/HankHuang0516/EClaw/issues/2633)) ([03e205f](https://github.com/HankHuang0516/EClaw/commit/03e205f663ecd2c2f443d4009dd5af0093f0bbbb))
* **kanban:** reserve mobile comments panel height ([#2782](https://github.com/HankHuang0516/EClaw/issues/2782)) ([ce8662d](https://github.com/HankHuang0516/EClaw/commit/ce8662d362422fdd25037f1deb61dbed9425e2f9))
* **channel:** restore handshake fallback to discovered sessions ([#2915](https://github.com/HankHuang0516/EClaw/issues/2915)) ([#2917](https://github.com/HankHuang0516/EClaw/issues/2917)) ([9d7d3a2](https://github.com/HankHuang0516/EClaw/commit/9d7d3a25654289998314dd5ca152cefdb8a4d64e)), closes [#2912](https://github.com/HankHuang0516/EClaw/issues/2912)
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* scheduled audit 2026-05-13 — 6 bugs, XSS, i18n ([#2668](https://github.com/HankHuang0516/EClaw/issues/2668)) ([21dd513](https://github.com/HankHuang0516/EClaw/commit/21dd513b4464738de29164265437435ba6cc4817)), closes [#2605](https://github.com/HankHuang0516/EClaw/issues/2605) [#2608](https://github.com/HankHuang0516/EClaw/issues/2608) [#2600](https://github.com/HankHuang0516/EClaw/issues/2600) [#2599](https://github.com/HankHuang0516/EClaw/issues/2599) [#2598](https://github.com/HankHuang0516/EClaw/issues/2598)
* **channel:** scope official bot sessions ([#2912](https://github.com/HankHuang0516/EClaw/issues/2912)) ([5c56b62](https://github.com/HankHuang0516/EClaw/commit/5c56b62c13b739b76f39e168a26bd4e5de2644fb))
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **dashboard:** show Claude weekly bar reset countdown ([#2896](https://github.com/HankHuang0516/EClaw/issues/2896)) ([3b87845](https://github.com/HankHuang0516/EClaw/commit/3b87845d713e980fec69f6b8007549338a326713)), closes [#2895](https://github.com/HankHuang0516/EClaw/issues/2895)
* **chat:** smart-chip preview falls back to inline c.comments when /comments fails (PR [#2677](https://github.com/HankHuang0516/EClaw/issues/2677)) ([7f4dffd](https://github.com/HankHuang0516/EClaw/commit/7f4dffd2c83ea86f296b8fa0610f0e67c9f1af11))
* **kanban:** stabilize comment detail viewport ([#2796](https://github.com/HankHuang0516/EClaw/issues/2796)) ([0a10aad](https://github.com/HankHuang0516/EClaw/commit/0a10aadb5a5b12ff23454c16d5c88183b94ad7d7))
* **wallpaper:** stop Android live wallpaper flashing default lobster on companion change ([#2629](https://github.com/HankHuang0516/EClaw/issues/2629)) ([8b4f66f](https://github.com/HankHuang0516/EClaw/commit/8b4f66fcb335bf43128f924b761b6337c817095b)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **chat:** stop chat.html bouncing to dashboard via /api/rental/health-status 401 race ([#2833](https://github.com/HankHuang0516/EClaw/issues/2833)) ([c422406](https://github.com/HankHuang0516/EClaw/commit/c4224067cdcfe7f3e22ab95007c7563dac4196ac))
* **openclaw-channel:** support OpenClaw 2026.5.20 ([8045de6](https://github.com/HankHuang0516/EClaw/commit/8045de6bebecfc05f9bd57453b99c098ca35681b))
* **mentions:** support same-device CJK display-name tags ([#2874](https://github.com/HankHuang0516/EClaw/issues/2874)) ([b8f61be](https://github.com/HankHuang0516/EClaw/commit/b8f61be9a3962fef75dd32ea34e8900880dafaf9))
* **channel:** suppress operational A2A loop messages (rebase of [#2288](https://github.com/HankHuang0516/EClaw/issues/2288)) ([#2930](https://github.com/HankHuang0516/EClaw/issues/2930)) ([7ceabc9](https://github.com/HankHuang0516/EClaw/commit/7ceabc915df22123cb46ae1500e2eb2e279250af))
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **dashboard:** use sessions[].project for widget Projects list (was .project_id) ([#2894](https://github.com/HankHuang0516/EClaw/issues/2894)) ([0fd1334](https://github.com/HankHuang0516/EClaw/commit/0fd1334897d4a603cc6eb74f34b48606547e09cf))
* **app:** WebView pages honor app-selected locale via ?lang= URL param ([#2672](https://github.com/HankHuang0516/EClaw/issues/2672)) ([8ed8757](https://github.com/HankHuang0516/EClaw/commit/8ed8757aec5bf214e837cc0d81bf2b23f1993a91)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **share-chat:** wire rich CTA actions to msgInput ([#2867](https://github.com/HankHuang0516/EClaw/issues/2867)) ([df23b11](https://github.com/HankHuang0516/EClaw/commit/df23b1147d34c59a644a145bbd87c18b96400acc))


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* **usage-api:** /api/usage/{snapshot,timeline} + usage_snapshots table (Plan B Phase 1) ([#2889](https://github.com/HankHuang0516/EClaw/issues/2889)) ([a0d859c](https://github.com/HankHuang0516/EClaw/commit/a0d859c63f0220909dadb2b1952174861ccdce14))
* **community:** 1-click chat button on bot cards + utm tagging ([#2610](https://github.com/HankHuang0516/EClaw/issues/2610)) ([eee97b0](https://github.com/HankHuang0516/EClaw/commit/eee97b0e2e4e74945ec24f218a69a52800b97a66))
* **chat:** accept ?messageId= as deep-link alias ([#2838](https://github.com/HankHuang0516/EClaw/issues/2838)) ([1785a87](https://github.com/HankHuang0516/EClaw/commit/1785a87310426637fd10df83754fb9924c45207f))
* **chat:** add avatar size preference ([#2714](https://github.com/HankHuang0516/EClaw/issues/2714)) ([6fe164a](https://github.com/HankHuang0516/EClaw/commit/6fe164ad8b22fa576d2dd9ad37c0d9fc295b5a83))
* **dashboard:** add Claude and Codex channel guides ([#2640](https://github.com/HankHuang0516/EClaw/issues/2640)) ([c64e4c4](https://github.com/HankHuang0516/EClaw/commit/c64e4c4afc78db58c5cd578f00486dd7b2fd3311))
* **dashboard:** add Claude Code channel guide card ([#2667](https://github.com/HankHuang0516/EClaw/issues/2667)) ([d70d75c](https://github.com/HankHuang0516/EClaw/commit/d70d75c0c8caa8a540358a9aab4556b8c1927a5c))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* **api:** add DELETE /api/entity/queue to clear messageQueue ([#616](https://github.com/HankHuang0516/EClaw/issues/616)) ([16ee3ff](https://github.com/HankHuang0516/EClaw/commit/16ee3ff1c6aa7f8ef187e54e5e7169f2e44f7395))
* **kanban:** add device-scoped card tags ([#2773](https://github.com/HankHuang0516/EClaw/issues/2773)) ([53a387e](https://github.com/HankHuang0516/EClaw/commit/53a387e67ba7bb4f6bed1c427000c4ae8666577a))
* **portal:** add entity selector to petdx-browser ([#2602](https://github.com/HankHuang0516/EClaw/issues/2602)) ([3fa067e](https://github.com/HankHuang0516/EClaw/commit/3fa067e00b38829b48a37cecd33ee81a9a1122d9))
* **kanban:** add explicit card links ([#2721](https://github.com/HankHuang0516/EClaw/issues/2721)) ([ef9f812](https://github.com/HankHuang0516/EClaw/commit/ef9f812a3fcf39efd07fd158ce90951bdd045ac7))
* **kanban:** add explicit done-card reopen flow ([#2801](https://github.com/HankHuang0516/EClaw/issues/2801)) ([5080aac](https://github.com/HankHuang0516/EClaw/commit/5080aacb75047c0deaa379ee708ec85465afd57c))
* **mindmap:** add GET /api/mindmap/graph force-graph projection ([#2680](https://github.com/HankHuang0516/EClaw/issues/2680)) ([a00b2e7](https://github.com/HankHuang0516/EClaw/commit/a00b2e775af2c4c98cd157f760ad87aeeee469f0)), closes [#2679](https://github.com/HankHuang0516/EClaw/issues/2679) [#2679](https://github.com/HankHuang0516/EClaw/issues/2679)
* **dashboard:** add Hermes channel promo card ([#2708](https://github.com/HankHuang0516/EClaw/issues/2708)) ([337aca1](https://github.com/HankHuang0516/EClaw/commit/337aca153d5a1cd7e888c065f00ae54db7872d91))
* **rental:** add listing soft pause ([#2781](https://github.com/HankHuang0516/EClaw/issues/2781)) ([6586b72](https://github.com/HankHuang0516/EClaw/commit/6586b72717ddb1637d91cd3242c8d2ff554f62b4))
* **portal:** add Nagoya 5D4N trip static cross-ref page ([#2689](https://github.com/HankHuang0516/EClaw/issues/2689)) ([2e0efb6](https://github.com/HankHuang0516/EClaw/commit/2e0efb6dcdaff52226cc8854a96747000b12bdff))
* **portal:** add Nagoya image atlas static page ([#2743](https://github.com/HankHuang0516/EClaw/issues/2743)) ([ac026e9](https://github.com/HankHuang0516/EClaw/commit/ac026e9fd2c92ac9437d01edddffc9adf972f6ba))
* **portal:** add Nagoya trip map links and image lightbox ([#2821](https://github.com/HankHuang0516/EClaw/issues/2821)) ([3e40955](https://github.com/HankHuang0516/EClaw/commit/3e40955650a05f45a6b9f7e39e73847705424a03))
* **portal/nagoya:** add parking shortcut buttons next to itinerary places ([#2826](https://github.com/HankHuang0516/EClaw/issues/2826)) ([63968c5](https://github.com/HankHuang0516/EClaw/commit/63968c554d046afc8d978de74e3aacbf7700500d))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **settings:** add rental roster management preview ([#2758](https://github.com/HankHuang0516/EClaw/issues/2758)) ([9706e59](https://github.com/HankHuang0516/EClaw/commit/9706e59ded140a90a6e02348124282bc69d89001))
* **rental:** add renter health chat indicator ([#2690](https://github.com/HankHuang0516/EClaw/issues/2690)) ([36cd2e9](https://github.com/HankHuang0516/EClaw/commit/36cd2e9802be4c7ebb03d3024617fa74aca48ffd))
* **ios:** add Tutorial & Intro entry in Settings ([#2800](https://github.com/HankHuang0516/EClaw/issues/2800)) ([ed83e51](https://github.com/HankHuang0516/EClaw/commit/ed83e51d043bf4cd5865f38dc95a91ed54820d6c))
* **landing:** add Watch Full Demo CTA below hero video ([#2799](https://github.com/HankHuang0516/EClaw/issues/2799)) ([66107c9](https://github.com/HankHuang0516/EClaw/commit/66107c954727551fd34d989a4674daaad9b63968))
* **footer:** add Watch Intro Video link in Info column ([#2798](https://github.com/HankHuang0516/EClaw/issues/2798)) ([d7c6d59](https://github.com/HankHuang0516/EClaw/commit/d7c6d596b69c6a5b257bf1f7a792a407ef9712ad))
* **i18n:** ar iter-2 — fill 623 missing keys against en source ([#2847](https://github.com/HankHuang0516/EClaw/issues/2847)) ([ee94a7a](https://github.com/HankHuang0516/EClaw/commit/ee94a7ae6812b5163efe4284ee4907ca32302f5c))
* **kanban:** backlog launch-gate flag to suppress L1/L2/L3 escalation ([#2855](https://github.com/HankHuang0516/EClaw/issues/2855)) ([cb8bf1b](https://github.com/HankHuang0516/EClaw/commit/cb8bf1bb6421f25214f65e129a8cadccc49cc266)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#4](https://github.com/HankHuang0516/EClaw/issues/4) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **companion:** bridge crafter-station/petdex gallery (1784 pets) ([#2601](https://github.com/HankHuang0516/EClaw/issues/2601)) ([2e245be](https://github.com/HankHuang0516/EClaw/commit/2e245bea6dd47ea7361b927d389188a3c23b6bb3))
* **promo:** chat avatar size feature landing page (self-hosted MP4) ([#2722](https://github.com/HankHuang0516/EClaw/issues/2722)) ([3852210](https://github.com/HankHuang0516/EClaw/commit/3852210d355704d018e3daca6b5f9512a011b210)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **kanban:** cron-spawn jitter + lane backpressure to prevent same-tick wedge ([#2791](https://github.com/HankHuang0516/EClaw/issues/2791)) ([9f414a7](https://github.com/HankHuang0516/EClaw/commit/9f414a731d6393672a0a4189c7b408c529ae5e12)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **portal:** dashboard usage widget — Claude/Codex 5h gauges + 24h chart (Plan B Phase 3) ([#2891](https://github.com/HankHuang0516/EClaw/issues/2891)) ([d18f373](https://github.com/HankHuang0516/EClaw/commit/d18f373857e4bd302437d6bda2a1e01871fbb1db))
* **portal:** dashboard usage widget v2 — Session/Weekly % bars + projects, no cost (Plan B Phase 3.1) ([#2893](https://github.com/HankHuang0516/EClaw/issues/2893)) ([4bc0dc7](https://github.com/HankHuang0516/EClaw/commit/4bc0dc744ed9d54dfd532ebac4b705c7f84ec0a6))
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **info:** embed 75s promo video on Quick Start tab ([#2795](https://github.com/HankHuang0516/EClaw/issues/2795)) ([86c3f70](https://github.com/HankHuang0516/EClaw/commit/86c3f709a95eebbee1241077b807880463f804b6))
* **promo:** embed daily eclaw video 2026-05-14 ([#2786](https://github.com/HankHuang0516/EClaw/issues/2786)) ([718a814](https://github.com/HankHuang0516/EClaw/commit/718a814ab16850bc2b33a1b303841e2c4378ecfa)), closes [#2782](https://github.com/HankHuang0516/EClaw/issues/2782) [#2693](https://github.com/HankHuang0516/EClaw/issues/2693)
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **info:** embed promo video at top of Quick Start tab ([#2797](https://github.com/HankHuang0516/EClaw/issues/2797)) ([047679f](https://github.com/HankHuang0516/EClaw/commit/047679fd57ab9949eaeacea414d5611e71afe041))
* **rental:** enforce strict rebind refunds ([#2703](https://github.com/HankHuang0516/EClaw/issues/2703)) ([a1859c5](https://github.com/HankHuang0516/EClaw/commit/a1859c50e6fb3991d7a8051491502d824a14a116))
* **portal:** group task chip actions ([#2825](https://github.com/HankHuang0516/EClaw/issues/2825)) ([5db5c59](https://github.com/HankHuang0516/EClaw/commit/5db5c59b32b8635f1412205faf0c2f9164d3d5d4))
* **hermes:** H2 health-check cron + 7d SLA + commander alerts (card_07891ac) ([#2922](https://github.com/HankHuang0516/EClaw/issues/2922)) ([82b4315](https://github.com/HankHuang0516/EClaw/commit/82b4315aea234493e3d1889dc53958c2f1d842e0)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **portal:** info-guide-rules + info-guide-soul slide pair ([#2793](https://github.com/HankHuang0516/EClaw/issues/2793)) ([1c8bddc](https://github.com/HankHuang0516/EClaw/commit/1c8bddc4c185054b2b60088498e3d45509117127)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **chat:** link card previews to kanban ([#2754](https://github.com/HankHuang0516/EClaw/issues/2754)) ([2261240](https://github.com/HankHuang0516/EClaw/commit/22612402c2e95efb07246629e81a849be41ee9c7))
* **mission:** link notes to kanban cards ([#2723](https://github.com/HankHuang0516/EClaw/issues/2723)) ([b36dc18](https://github.com/HankHuang0516/EClaw/commit/b36dc18f3a8facf12e0b6046351c222f1e99dc55))
* **usage-daemon:** macOS launchd daemon polls Claude/Codex usage → POST /api/usage/snapshot (Plan B Phase 2) ([#2890](https://github.com/HankHuang0516/EClaw/issues/2890)) ([fd225e1](https://github.com/HankHuang0516/EClaw/commit/fd225e12d9491037be1a340bd63b54b5f3308c7f))
* **mindmap:** mission.html link to /portal/mindmap.html + deprecate /api/mission/mindmap ([#2685](https://github.com/HankHuang0516/EClaw/issues/2685)) ([11e297b](https://github.com/HankHuang0516/EClaw/commit/11e297bab1c9b56fcde3027d6500b7c58891bf18)), closes [#2680](https://github.com/HankHuang0516/EClaw/issues/2680) [#2684](https://github.com/HankHuang0516/EClaw/issues/2684)
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **portal:** nagoya trip interactive map (Leaflet + OSM, no API key) ([#2888](https://github.com/HankHuang0516/EClaw/issues/2888)) ([ecfdac0](https://github.com/HankHuang0516/EClaw/commit/ecfdac06348c12ee7c6872c6c28d5f82162e7aa9))
* **android:** native tab navigation bridge for portal pages ([#2832](https://github.com/HankHuang0516/EClaw/issues/2832)) ([7e02e6f](https://github.com/HankHuang0516/EClaw/commit/7e02e6f225014e64f08f55035d7b9e5727873343)), closes [#2824](https://github.com/HankHuang0516/EClaw/issues/2824) [#2743](https://github.com/HankHuang0516/EClaw/issues/2743) [#2821](https://github.com/HankHuang0516/EClaw/issues/2821) [#2826](https://github.com/HankHuang0516/EClaw/issues/2826) [#2797](https://github.com/HankHuang0516/EClaw/issues/2797) [#2798](https://github.com/HankHuang0516/EClaw/issues/2798) [#2799](https://github.com/HankHuang0516/EClaw/issues/2799) [#2800](https://github.com/HankHuang0516/EClaw/issues/2800) [#2801](https://github.com/HankHuang0516/EClaw/issues/2801) [#2816](https://github.com/HankHuang0516/EClaw/issues/2816) [#2796](https://github.com/HankHuang0516/EClaw/issues/2796) [#2825](https://github.com/HankHuang0516/EClaw/issues/2825) [#2812](https://github.com/HankHuang0516/EClaw/issues/2812) [#2813](https://github.com/HankHuang0516/EClaw/issues/2813) [#2814](https://github.com/HankHuang0516/EClaw/issues/2814) [#2815](https://github.com/HankHuang0516/EClaw/issues/2815) [#2811](https://github.com/HankHuang0516/EClaw/issues/2811) [#2807](https://github.com/HankHuang0516/EClaw/issues/2807) [#2808](https://github.com/HankHuang0516/EClaw/issues/2808) [#2818](https://github.com/HankHuang0516/EClaw/issues/2818) [#2819](https://github.com/HankHuang0516/EClaw/issues/2819) [#2824](https://github.com/HankHuang0516/EClaw/issues/2824)
* **channel:** outbound backpressure (30/min cap + 429 retry-after) ([#2911](https://github.com/HankHuang0516/EClaw/issues/2911)) ([36dc99c](https://github.com/HankHuang0516/EClaw/commit/36dc99ca78b0e1724a2aaefb5936669077b7a28f))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **ai-support:** pass per-request caller creds to claude-cli-proxy /chat (H3 Phase 2) ([#2947](https://github.com/HankHuang0516/EClaw/issues/2947)) ([1f5378b](https://github.com/HankHuang0516/EClaw/commit/1f5378b9e01d4e650005c338bf81f1ef43535624)), closes [#2937](https://github.com/HankHuang0516/EClaw/issues/2937)
* **settings:** per-entity nudge override UI (Phase 2) ([#2837](https://github.com/HankHuang0516/EClaw/issues/2837)) ([ea7662b](https://github.com/HankHuang0516/EClaw/commit/ea7662b0858882dae461e1387f711895924f9ab8)), closes [3/#4](https://github.com/HankHuang0516/EClaw/issues/4)
* **kanban:** per-entity nudge overrides (Phase 2 of card_e066cb6b) ([#2836](https://github.com/HankHuang0516/EClaw/issues/2836)) ([0425f80](https://github.com/HankHuang0516/EClaw/commit/0425f80bc1169c0d506b665659c8676695c45553))
* **avatar:** petdx render on card-holder my-cards (Phase 1b) ([#2621](https://github.com/HankHuang0516/EClaw/issues/2621)) ([f78ba8b](https://github.com/HankHuang0516/EClaw/commit/f78ba8b18acc426936ab6d8a82ca7541effea00d))
* **avatar:** petdx render on dashboard entity grid / org chart / bindings (Phase 1b) ([#2622](https://github.com/HankHuang0516/EClaw/issues/2622)) ([f417749](https://github.com/HankHuang0516/EClaw/commit/f41774914451048e8cd76e9ae30416a0642e173b)), closes [#2620](https://github.com/HankHuang0516/EClaw/issues/2620) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621)
* **avatar:** petdx render on kanban auto-assign / pulse / comment avatars (Phase 1b) ([#2624](https://github.com/HankHuang0516/EClaw/issues/2624)) ([6bff5f8](https://github.com/HankHuang0516/EClaw/commit/6bff5f80440d0bd91a6b1721cde9478d685c4d46))
* **avatar:** petdx render on mission skill/rule/soul entity dialogs (Phase 1b) ([#2623](https://github.com/HankHuang0516/EClaw/issues/2623)) ([129327b](https://github.com/HankHuang0516/EClaw/commit/129327bc7b91056659f1ab7e8d5e3f5260d951fb))
* **mindmap:** portal/mindmap.html force-graph prototype ([#129](https://github.com/HankHuang0516/EClaw/issues/129)) ([#2681](https://github.com/HankHuang0516/EClaw/issues/2681)) ([0f15e69](https://github.com/HankHuang0516/EClaw/commit/0f15e6930f0697c37fa08f3219edb8f9e499837f)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **channel:** record delivery receipts ([#2913](https://github.com/HankHuang0516/EClaw/issues/2913)) ([90c671b](https://github.com/HankHuang0516/EClaw/commit/90c671bd1970ab51584b90e2b634484ec10cc7ae))
* **portal:** redo nagoya trip page in professional tour-guide style ([#2691](https://github.com/HankHuang0516/EClaw/issues/2691)) ([b2378c0](https://github.com/HankHuang0516/EClaw/commit/b2378c06ee20fa9cccfdceceb1a4c9e0b3072f59))
* **i18n:** remove ms+hi orphan keys from i18n.js ([#2849](https://github.com/HankHuang0516/EClaw/issues/2849)) ([320176c](https://github.com/HankHuang0516/EClaw/commit/320176c06a3cfd8631e2a82ad02a6bd6a9af0389))
* **avatar:** render selected petdx companion in chat avatars ([#2620](https://github.com/HankHuang0516/EClaw/issues/2620)) ([0bdd046](https://github.com/HankHuang0516/EClaw/commit/0bdd046fe1b1c428e32edda366ff112c08927f4c))
* **home:** replace native home with WebView hosting dashboard.html ([#2634](https://github.com/HankHuang0516/EClaw/issues/2634)) ([e69ea81](https://github.com/HankHuang0516/EClaw/commit/e69ea8160c239b083a83d6dc83a4f1c3f901c863))
* **app:** route chat mission jumps through native tabs ([#2824](https://github.com/HankHuang0516/EClaw/issues/2824)) ([deb07b6](https://github.com/HankHuang0516/EClaw/commit/deb07b69a9ecca632fe27278de537f1d85234e94))
* **portal:** scaffold /portal/bot/:id/about backstory page (IP P1) ([#2938](https://github.com/HankHuang0516/EClaw/issues/2938)) ([96d6ca5](https://github.com/HankHuang0516/EClaw/commit/96d6ca506d611e2f9be03d50f76983457277f209))
* **proxy:** scope private repo git auth ([#2926](https://github.com/HankHuang0516/EClaw/issues/2926)) ([246f7ff](https://github.com/HankHuang0516/EClaw/commit/246f7ff1dedaf7bece9e3cb9eb24d0ab32ebb393))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **chat:** support message deep links ([#2719](https://github.com/HankHuang0516/EClaw/issues/2719)) ([2dc0f1e](https://github.com/HankHuang0516/EClaw/commit/2dc0f1eeb259e1a0848db4a03186b989372cd91c))
* **mission:** support note deep links ([#2717](https://github.com/HankHuang0516/EClaw/issues/2717)) ([2efd3a5](https://github.com/HankHuang0516/EClaw/commit/2efd3a5e741217a07c0b0ac54a0ddd010e0ebe23))
* **share-chat:** twitter card + per-bot og:image/twitter:* in SSR ([#2609](https://github.com/HankHuang0516/EClaw/issues/2609)) ([6cdc853](https://github.com/HankHuang0516/EClaw/commit/6cdc853dc884cdb95bd47214942768981f218ae0))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))
* **settings:** wire petdx avatar into channel-account chips ([#2626](https://github.com/HankHuang0516/EClaw/issues/2626)) ([88aec77](https://github.com/HankHuang0516/EClaw/commit/88aec772628c240e97b336bb5820892ad632d1ae))
* **files:** wire petdx avatar into entity filter & per-file badges ([#2627](https://github.com/HankHuang0516/EClaw/issues/2627)) ([5b3e5cc](https://github.com/HankHuang0516/EClaw/commit/5b3e5cc542d9da69bb4e92500fd03a542ea33f00))
* **mindmap:** wrap hardcoded zh-TW UI strings with i18n t() ([#2607](https://github.com/HankHuang0516/EClaw/issues/2607)) ([166af87](https://github.com/HankHuang0516/EClaw/commit/166af8772b2121a24aaf34a83b3de970e9b3b571)), closes [#2606](https://github.com/HankHuang0516/EClaw/issues/2606)
* **i18n:** zh-TW backfill 8 keys (soft-pause + chat + invite + wallet) ([#2815](https://github.com/HankHuang0516/EClaw/issues/2815)) ([a2dd574](https://github.com/HankHuang0516/EClaw/commit/a2dd5743ce8d43a4b6ace9a2fd4b52568180d6c5))


### Performance Improvements

* **mindmap:** force-graph hardening for 1000/2000-node graphs ([#2684](https://github.com/HankHuang0516/EClaw/issues/2684)) ([da8b1c8](https://github.com/HankHuang0516/EClaw/commit/da8b1c8f947ab8bc8fa455c1962a91146623a1fc))


### Reverts

* Revert "feat(telegram): long-poll adapter PoC (card_406e612942ff062a06fc47be) ([#2238](https://github.com/HankHuang0516/EClaw/issues/2238))" ([#2239](https://github.com/HankHuang0516/EClaw/issues/2239)) ([eb7aa92](https://github.com/HankHuang0516/EClaw/commit/eb7aa92cce454b4a1a22654a2d133cdebe78c2bd))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-25)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **notifications:** add kanban_done + kanban_done_auto toggles to Android Settings ([#2636](https://github.com/HankHuang0516/EClaw/issues/2636)) ([a710909](https://github.com/HankHuang0516/EClaw/commit/a7109095e3393b8564e7ef1b23d382a4fbb944b8))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **api:** align /api/platform-stats skill-doc with device-auth contract (card_49b8190) ([#2916](https://github.com/HankHuang0516/EClaw/issues/2916)) ([ee55b2f](https://github.com/HankHuang0516/EClaw/commit/ee55b2fdbfbcd4bead5501d16ee66339056c32d7))
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **i18n:** ar block — fix 27 broken entries (CJK leaks + truncated HTML) ([#2851](https://github.com/HankHuang0516/EClaw/issues/2851)) ([5b19175](https://github.com/HankHuang0516/EClaw/commit/5b19175d712d00d16fcec00b749035c4beae7a5c))
* **chat:** atomic-load target bar (await contacts before first render) ([#2831](https://github.com/HankHuang0516/EClaw/issues/2831)) ([5f529e6](https://github.com/HankHuang0516/EClaw/commit/5f529e6b772eacc38ba1de69b44258a05f0d816a)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2](https://github.com/HankHuang0516/EClaw/issues/2)
* **channel:** await binding persistence ([712516d](https://github.com/HankHuang0516/EClaw/commit/712516decafb745035bd1434a28cc1973d433e19))
* **rental:** bump handshake timeout to 60s + timeout-aware discovery fallback ([#2863](https://github.com/HankHuang0516/EClaw/issues/2863)) ([fd4322f](https://github.com/HankHuang0516/EClaw/commit/fd4322f8890f3c2dfca3acdae6a4b95f19c381f9)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **i18n:** clear batch 1 residual missing keys ([#2790](https://github.com/HankHuang0516/EClaw/issues/2790)) ([211030e](https://github.com/HankHuang0516/EClaw/commit/211030e0b0b6a865c11f0c4ed60dc4e356d43b7a))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **kanban:** comment input no longer overlaps last comment in card detail (PR [#2678](https://github.com/HankHuang0516/EClaw/issues/2678)) ([fba91fc](https://github.com/HankHuang0516/EClaw/commit/fba91fca15402b453a0db5ee857c0b16e6087055))
* **chat:** compact 20px avatar in target bar (App WebView only shows [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2](https://github.com/HankHuang0516/EClaw/issues/2)) ([#2830](https://github.com/HankHuang0516/EClaw/issues/2830)) ([42c7543](https://github.com/HankHuang0516/EClaw/commit/42c7543b4a78a7abf3f5f7535eb9bc6142cd0fe2)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **portal:** complete 401 redirect sweep + mobile UIUX truncation ([#2842](https://github.com/HankHuang0516/EClaw/issues/2842)) ([f9799ba](https://github.com/HankHuang0516/EClaw/commit/f9799ba42498b109f0a8a70e80836aa6da51e216)), closes [#2833](https://github.com/HankHuang0516/EClaw/issues/2833) [#2845](https://github.com/HankHuang0516/EClaw/issues/2845) [#2844](https://github.com/HankHuang0516/EClaw/issues/2844) [#2843](https://github.com/HankHuang0516/EClaw/issues/2843)
* **uiux:** continue qa mobile readability sweep ([#2854](https://github.com/HankHuang0516/EClaw/issues/2854)) ([57606ff](https://github.com/HankHuang0516/EClaw/commit/57606ffe3e543b07a026aacc53c4b470c9a7825b))
* **i18n:** cover dynamic portal wrapper keys ([#2807](https://github.com/HankHuang0516/EClaw/issues/2807)) ([4c711cc](https://github.com/HankHuang0516/EClaw/commit/4c711cc4009300ffe4e8933a98ee01cd0fdd6aeb))
* **i18n:** dedup 20 dash_channel_card_* keys in es block ([#2876](https://github.com/HankHuang0516/EClaw/issues/2876)) ([807284c](https://github.com/HankHuang0516/EClaw/commit/807284ce363ef119ccdb0ae40e5ce99d3f0a27e0))
* **i18n:** dedupe backend locale keys via AST ([#2920](https://github.com/HankHuang0516/EClaw/issues/2920)) ([40ef114](https://github.com/HankHuang0516/EClaw/commit/40ef11414c8b836fe1ed93ec06c839df3a1bf7b9))
* **i18n:** dedupe zh locale keys ([#2919](https://github.com/HankHuang0516/EClaw/issues/2919)) ([afd2cca](https://github.com/HankHuang0516/EClaw/commit/afd2cca8086c2f2df0d04c9c5f8c58733652875e))
* **test:** delegate root test and remove invalid jest option ([#2292](https://github.com/HankHuang0516/EClaw/issues/2292)) ([65bf2f8](https://github.com/HankHuang0516/EClaw/commit/65bf2f83d26d925097cd380ab73b04ab2db49842))
* **kanban:** dep-aware nudge gating + roadmap dependency backfill ([#2904](https://github.com/HankHuang0516/EClaw/issues/2904)) ([2b76ac9](https://github.com/HankHuang0516/EClaw/commit/2b76ac9d3b7e4169b7bc3c6f6b0b0903b63cd9f7)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **rental:** don't pollute entity.message on push gateway timeout ([#2860](https://github.com/HankHuang0516/EClaw/issues/2860)) ([592ba44](https://github.com/HankHuang0516/EClaw/commit/592ba44f57536ee00011b6cbddaa6b129a7cbae9))
* **petdx:** drop dark-grey loading placeholder + preload sprite WEBP ([#2628](https://github.com/HankHuang0516/EClaw/issues/2628)) ([59cef38](https://github.com/HankHuang0516/EClaw/commit/59cef387bd69ca99d7d15c86a1364856d3849ad8)), closes [#1a1a1a](https://github.com/HankHuang0516/EClaw/issues/1a1a1a)
* **gateway-ws:** drop Origin header on server-to-server WS upgrade ([#2869](https://github.com/HankHuang0516/EClaw/issues/2869)) ([716dcf9](https://github.com/HankHuang0516/EClaw/commit/716dcf9d0834b17522bb9d894bad84bc142d1a19))
* **setup-scripts:** drop Origin header on server-to-server WS upgrade ([#2875](https://github.com/HankHuang0516/EClaw/issues/2875)) ([9d893b8](https://github.com/HankHuang0516/EClaw/commit/9d893b8e5eea4db275e450bf423903c156cd3e4b)), closes [#2869](https://github.com/HankHuang0516/EClaw/issues/2869)
* **security:** escape innerHTML in chat modal error messages ([#2819](https://github.com/HankHuang0516/EClaw/issues/2819)) ([dce07ad](https://github.com/HankHuang0516/EClaw/commit/dce07adde64795916dba977ae23e46f3371ce7ed)), closes [#2809](https://github.com/HankHuang0516/EClaw/issues/2809) [#2810](https://github.com/HankHuang0516/EClaw/issues/2810) [#2809](https://github.com/HankHuang0516/EClaw/issues/2809) [#2810](https://github.com/HankHuang0516/EClaw/issues/2810)
* **proxy:** export repo auth to CLI child ([#2928](https://github.com/HankHuang0516/EClaw/issues/2928)) ([336a8ca](https://github.com/HankHuang0516/EClaw/commit/336a8caff4e3663287bd2948cf9fe6e04125cbc8))
* **entities:** expose botSecret to owner so wallpaper service can poll companions ([#2615](https://github.com/HankHuang0516/EClaw/issues/2615)) ([04470fc](https://github.com/HankHuang0516/EClaw/commit/04470fce8f8c3fce2b1ba8b243e776606f107502))
* **rental:** expose owner_public_code in marketplace so plaza CTA can route ([#2616](https://github.com/HankHuang0516/EClaw/issues/2616)) ([4d1372f](https://github.com/HankHuang0516/EClaw/commit/4d1372f717d93cab65543e87c852e74e9fb67071)), closes [#2610](https://github.com/HankHuang0516/EClaw/issues/2610)
* **mindmap:** fallback to device scope when entityId is null ([#2728](https://github.com/HankHuang0516/EClaw/issues/2728)) ([7572312](https://github.com/HankHuang0516/EClaw/commit/7572312433d3d75fc245eda48a28919ce14bd927))
* **i18n:** fill 11 missing zh keys post-[#2920](https://github.com/HankHuang0516/EClaw/issues/2920)/[#2921](https://github.com/HankHuang0516/EClaw/issues/2921) (card_de6970) ([#2924](https://github.com/HankHuang0516/EClaw/issues/2924)) ([17c4899](https://github.com/HankHuang0516/EClaw/commit/17c48996489b1444d6ed589027acfa7986178fe1)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** fill backend runtime locale gaps ([#2921](https://github.com/HankHuang0516/EClaw/issues/2921)) ([00d96ff](https://github.com/HankHuang0516/EClaw/commit/00d96ff261b8134b49292623e1f786fd544144cc))
* **i18n:** fill Spanish drift keys ([#2751](https://github.com/HankHuang0516/EClaw/issues/2751)) ([0ad0ee5](https://github.com/HankHuang0516/EClaw/commit/0ad0ee55f7fac3e6ac46d891539950dab4d553cc))
* **portal:** fit embedded org chart to mobile viewport ([#2674](https://github.com/HankHuang0516/EClaw/issues/2674)) ([1c4e1b4](https://github.com/HankHuang0516/EClaw/commit/1c4e1b413ea7027b4cd4b8ecda981b0d0e12e66b))
* **i18n:** fix 6 trailing-comma syntax errors in 10-locale batch ([#2771](https://github.com/HankHuang0516/EClaw/issues/2771)) ([b27c6ca](https://github.com/HankHuang0516/EClaw/commit/b27c6ca204bf813e406c54ce3a2532a5f1f031b3))
* **kanban:** GET card returns latest 50 comments + comments endpoint exposes total ([#2816](https://github.com/HankHuang0516/EClaw/issues/2816)) ([c4d83f7](https://github.com/HankHuang0516/EClaw/commit/c4d83f777a1cd26aea0936e4316aa35c52822eef))
* **sharechat:** guest verify-email modal + disabled Send for unverified ([#2865](https://github.com/HankHuang0516/EClaw/issues/2865)) ([cb3b061](https://github.com/HankHuang0516/EClaw/commit/cb3b0614e0f6160417d907753e66eceb2d666802))
* **portal:** H4 showcase i18n data-attrs + raw key leak ([#2935](https://github.com/HankHuang0516/EClaw/issues/2935)) ([80d8587](https://github.com/HankHuang0516/EClaw/commit/80d8587c00c03f72fdb9756b1093ee8e1e3d0842)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **uiux:** harden chat previews and roster preview ([#2769](https://github.com/HankHuang0516/EClaw/issues/2769)) ([466d4d3](https://github.com/HankHuang0516/EClaw/commit/466d4d3ef81c628d3f58db64323946053d7bf61c))
* **mention-parser:** ignore @-mentions inside markdown code spans ([#2645](https://github.com/HankHuang0516/EClaw/issues/2645)) ([8da19d4](https://github.com/HankHuang0516/EClaw/commit/8da19d4a79ceb4152bf2144ee0847c61ce3e1def)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **kanban:** lazy-load dependency chips via IntersectionObserver ([#2632](https://github.com/HankHuang0516/EClaw/issues/2632)) ([20586b4](https://github.com/HankHuang0516/EClaw/commit/20586b43357335f9eb6a190c02d58c8e36b58aba)), closes [#2631](https://github.com/HankHuang0516/EClaw/issues/2631)
* **i18n:** localize FCM NotificationChannel labels (card_ec8d3a22) ([#2918](https://github.com/HankHuang0516/EClaw/issues/2918)) ([591cd20](https://github.com/HankHuang0516/EClaw/commit/591cd206704693650a53d19d94c4cc75daf84ffd))
* **kanban:** make card sorting deterministic ([#2756](https://github.com/HankHuang0516/EClaw/issues/2756)) ([48e2117](https://github.com/HankHuang0516/EClaw/commit/48e2117b64e37f05dc635e0a3b67bfd43cbe48f5))
* **portal/nagoya-trip:** map-link invisible on dark hero/day-banner ([#2897](https://github.com/HankHuang0516/EClaw/issues/2897)) ([cc33df6](https://github.com/HankHuang0516/EClaw/commit/cc33df686673455c20beaee60871412a5d486e66)), closes [#1f4030](https://github.com/HankHuang0516/EClaw/issues/1f4030) [#8b8579](https://github.com/HankHuang0516/EClaw/issues/8b8579) [#6e6859](https://github.com/HankHuang0516/EClaw/issues/6e6859) [#7a5614](https://github.com/HankHuang0516/EClaw/issues/7a5614)
* **org-chart:** notify affected bots on hierarchy change ([#2812](https://github.com/HankHuang0516/EClaw/issues/2812)) ([55675fd](https://github.com/HankHuang0516/EClaw/commit/55675fdf4487494d729a29524b32bd81b756a00c)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** notify reviewer on manual /move → review ([#2753](https://github.com/HankHuang0516/EClaw/issues/2753)) ([6cbbb4e](https://github.com/HankHuang0516/EClaw/commit/6cbbb4ee8c0d4d8ad54df2e9b5faaa3699bd530f))
* **wallpaper:** off-load spritesheet fetch to IO so per-petdx sprites actually render ([#2618](https://github.com/HankHuang0516/EClaw/issues/2618)) ([61b832c](https://github.com/HankHuang0516/EClaw/commit/61b832c9fa8a1d0caab810ccc942d85c63349267)), closes [#2615](https://github.com/HankHuang0516/EClaw/issues/2615) [#2577](https://github.com/HankHuang0516/EClaw/issues/2577)
* **security:** patch P0 sanitize-html XSS + P1 protobufjs + exam.html XSS ([#2829](https://github.com/HankHuang0516/EClaw/issues/2829)) ([c71b871](https://github.com/HankHuang0516/EClaw/commit/c71b871a045887375dd0d26d1a3280a0891a89ad))
* **security:** patch ws uninitialized memory disclosure (GHSA-58qx-3vcg-4xpx) ([#2872](https://github.com/HankHuang0516/EClaw/issues/2872)) ([2523d15](https://github.com/HankHuang0516/EClaw/commit/2523d154bbe501a7cc086340f7a07ece3abfa69b))
* **portal:** petdx-browser cookie-session fallback for device-login ([#2757](https://github.com/HankHuang0516/EClaw/issues/2757)) ([ca275f4](https://github.com/HankHuang0516/EClaw/commit/ca275f4519835da0c7ad71c588908a18f6f138d8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **api:** platform-stats 500 + entity/lookup publicCode alias ([#2809](https://github.com/HankHuang0516/EClaw/issues/2809), [#2810](https://github.com/HankHuang0516/EClaw/issues/2810)) ([#2818](https://github.com/HankHuang0516/EClaw/issues/2818)) ([f99fd17](https://github.com/HankHuang0516/EClaw/commit/f99fd17b2b1c32d88daa2510ff66d714c1a53edc))
* **i18n:** positional format specifiers for feedback_result_logs (7 locales) ([#2597](https://github.com/HankHuang0516/EClaw/issues/2597)) ([21aedc7](https://github.com/HankHuang0516/EClaw/commit/21aedc7eebc7a2839e340136f38dfdfd4dabb9dc))
* **avatar-petdx:** preserve descriptor across transient API failures (flicker) ([#2625](https://github.com/HankHuang0516/EClaw/issues/2625)) ([7b1c606](https://github.com/HankHuang0516/EClaw/commit/7b1c606514f7698d72ec95cf6c556e4043966186))
* **chat:** preserve recipient selection across rental-health refresh (P0 #card_eb1cba76) ([#2906](https://github.com/HankHuang0516/EClaw/issues/2906)) ([9cc0301](https://github.com/HankHuang0516/EClaw/commit/9cc0301cc26a0f49af4b7f53486f5c1a7cdd7902)), closes [#card_eb1cba76](https://github.com/HankHuang0516/EClaw/issues/card_eb1cba76) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **chat:** preserve scroll anchor while reading history ([#2693](https://github.com/HankHuang0516/EClaw/issues/2693)) ([945fdb7](https://github.com/HankHuang0516/EClaw/commit/945fdb7192b791b31882e1e75568dd8b11e4686f))
* **promo:** pull video embed from /promo-chat-avatar.html ([#2724](https://github.com/HankHuang0516/EClaw/issues/2724)) ([2afabc8](https://github.com/HankHuang0516/EClaw/commit/2afabc8c5ff8b25218a7cb857e8adfa572c8e9d5))
* **dashboard:** read live.rate_limits.{five_hour,seven_day}.used_percentage ([#2895](https://github.com/HankHuang0516/EClaw/issues/2895)) ([8223303](https://github.com/HankHuang0516/EClaw/commit/822330312bccb1c76675ad2c3b26e78d10dd1298))
* **kanban:** realign stale recurring schedules ([#2785](https://github.com/HankHuang0516/EClaw/issues/2785)) ([ab8ee25](https://github.com/HankHuang0516/EClaw/commit/ab8ee250a9b37f3d3e838bb01d8866c8d2b78231))
* **i18n:** reapply de6970 locale gap translations ([#2925](https://github.com/HankHuang0516/EClaw/issues/2925)) ([d994dc1](https://github.com/HankHuang0516/EClaw/commit/d994dc1d240fef72326db2599262375ccbf29175))
* **portal:** reduce QA-discovered request fanout ([#2656](https://github.com/HankHuang0516/EClaw/issues/2656)) ([1e46d6b](https://github.com/HankHuang0516/EClaw/commit/1e46d6bab61e58c65b452b6503d953f8dddeee75))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **portal:** remove org chart fit scale floor ([#2676](https://github.com/HankHuang0516/EClaw/issues/2676)) ([0f01606](https://github.com/HankHuang0516/EClaw/commit/0f016068b963bb5f800a02f28817c7174979d913))
* **rental:** remove phantom 'webhook test push' step from BIND_COMPLETE ([#2864](https://github.com/HankHuang0516/EClaw/issues/2864)) ([47f4a3e](https://github.com/HankHuang0516/EClaw/commit/47f4a3edf76aa95ebd06d8713cd44fda6eef9b5d))
* **i18n:** rename mm_empty_title → mm_state_empty_title in mindmap.html ([#2683](https://github.com/HankHuang0516/EClaw/issues/2683)) ([c79c109](https://github.com/HankHuang0516/EClaw/commit/c79c109bea23142e8a6d9ace976d105af1280ec9))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **chat:** render mention avatars with companion renderer ([#2633](https://github.com/HankHuang0516/EClaw/issues/2633)) ([03e205f](https://github.com/HankHuang0516/EClaw/commit/03e205f663ecd2c2f443d4009dd5af0093f0bbbb))
* **kanban:** reserve mobile comments panel height ([#2782](https://github.com/HankHuang0516/EClaw/issues/2782)) ([ce8662d](https://github.com/HankHuang0516/EClaw/commit/ce8662d362422fdd25037f1deb61dbed9425e2f9))
* **channel:** restore handshake fallback to discovered sessions ([#2915](https://github.com/HankHuang0516/EClaw/issues/2915)) ([#2917](https://github.com/HankHuang0516/EClaw/issues/2917)) ([9d7d3a2](https://github.com/HankHuang0516/EClaw/commit/9d7d3a25654289998314dd5ca152cefdb8a4d64e)), closes [#2912](https://github.com/HankHuang0516/EClaw/issues/2912)
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* scheduled audit 2026-05-13 — 6 bugs, XSS, i18n ([#2668](https://github.com/HankHuang0516/EClaw/issues/2668)) ([21dd513](https://github.com/HankHuang0516/EClaw/commit/21dd513b4464738de29164265437435ba6cc4817)), closes [#2605](https://github.com/HankHuang0516/EClaw/issues/2605) [#2608](https://github.com/HankHuang0516/EClaw/issues/2608) [#2600](https://github.com/HankHuang0516/EClaw/issues/2600) [#2599](https://github.com/HankHuang0516/EClaw/issues/2599) [#2598](https://github.com/HankHuang0516/EClaw/issues/2598)
* **channel:** scope official bot sessions ([#2912](https://github.com/HankHuang0516/EClaw/issues/2912)) ([5c56b62](https://github.com/HankHuang0516/EClaw/commit/5c56b62c13b739b76f39e168a26bd4e5de2644fb))
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **dashboard:** show Claude weekly bar reset countdown ([#2896](https://github.com/HankHuang0516/EClaw/issues/2896)) ([3b87845](https://github.com/HankHuang0516/EClaw/commit/3b87845d713e980fec69f6b8007549338a326713)), closes [#2895](https://github.com/HankHuang0516/EClaw/issues/2895)
* **chat:** smart-chip preview falls back to inline c.comments when /comments fails (PR [#2677](https://github.com/HankHuang0516/EClaw/issues/2677)) ([7f4dffd](https://github.com/HankHuang0516/EClaw/commit/7f4dffd2c83ea86f296b8fa0610f0e67c9f1af11))
* **kanban:** stabilize comment detail viewport ([#2796](https://github.com/HankHuang0516/EClaw/issues/2796)) ([0a10aad](https://github.com/HankHuang0516/EClaw/commit/0a10aadb5a5b12ff23454c16d5c88183b94ad7d7))
* **wallpaper:** stop Android live wallpaper flashing default lobster on companion change ([#2629](https://github.com/HankHuang0516/EClaw/issues/2629)) ([8b4f66f](https://github.com/HankHuang0516/EClaw/commit/8b4f66fcb335bf43128f924b761b6337c817095b)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **chat:** stop chat.html bouncing to dashboard via /api/rental/health-status 401 race ([#2833](https://github.com/HankHuang0516/EClaw/issues/2833)) ([c422406](https://github.com/HankHuang0516/EClaw/commit/c4224067cdcfe7f3e22ab95007c7563dac4196ac))
* **openclaw-channel:** support OpenClaw 2026.5.20 ([8045de6](https://github.com/HankHuang0516/EClaw/commit/8045de6bebecfc05f9bd57453b99c098ca35681b))
* **mentions:** support same-device CJK display-name tags ([#2874](https://github.com/HankHuang0516/EClaw/issues/2874)) ([b8f61be](https://github.com/HankHuang0516/EClaw/commit/b8f61be9a3962fef75dd32ea34e8900880dafaf9))
* **channel:** suppress operational A2A loop messages (rebase of [#2288](https://github.com/HankHuang0516/EClaw/issues/2288)) ([#2930](https://github.com/HankHuang0516/EClaw/issues/2930)) ([7ceabc9](https://github.com/HankHuang0516/EClaw/commit/7ceabc915df22123cb46ae1500e2eb2e279250af))
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **dashboard:** use sessions[].project for widget Projects list (was .project_id) ([#2894](https://github.com/HankHuang0516/EClaw/issues/2894)) ([0fd1334](https://github.com/HankHuang0516/EClaw/commit/0fd1334897d4a603cc6eb74f34b48606547e09cf))
* **app:** WebView pages honor app-selected locale via ?lang= URL param ([#2672](https://github.com/HankHuang0516/EClaw/issues/2672)) ([8ed8757](https://github.com/HankHuang0516/EClaw/commit/8ed8757aec5bf214e837cc0d81bf2b23f1993a91)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **share-chat:** wire rich CTA actions to msgInput ([#2867](https://github.com/HankHuang0516/EClaw/issues/2867)) ([df23b11](https://github.com/HankHuang0516/EClaw/commit/df23b1147d34c59a644a145bbd87c18b96400acc))


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* **usage-api:** /api/usage/{snapshot,timeline} + usage_snapshots table (Plan B Phase 1) ([#2889](https://github.com/HankHuang0516/EClaw/issues/2889)) ([a0d859c](https://github.com/HankHuang0516/EClaw/commit/a0d859c63f0220909dadb2b1952174861ccdce14))
* **community:** 1-click chat button on bot cards + utm tagging ([#2610](https://github.com/HankHuang0516/EClaw/issues/2610)) ([eee97b0](https://github.com/HankHuang0516/EClaw/commit/eee97b0e2e4e74945ec24f218a69a52800b97a66))
* **chat:** accept ?messageId= as deep-link alias ([#2838](https://github.com/HankHuang0516/EClaw/issues/2838)) ([1785a87](https://github.com/HankHuang0516/EClaw/commit/1785a87310426637fd10df83754fb9924c45207f))
* **chat:** add avatar size preference ([#2714](https://github.com/HankHuang0516/EClaw/issues/2714)) ([6fe164a](https://github.com/HankHuang0516/EClaw/commit/6fe164ad8b22fa576d2dd9ad37c0d9fc295b5a83))
* **dashboard:** add Claude and Codex channel guides ([#2640](https://github.com/HankHuang0516/EClaw/issues/2640)) ([c64e4c4](https://github.com/HankHuang0516/EClaw/commit/c64e4c4afc78db58c5cd578f00486dd7b2fd3311))
* **dashboard:** add Claude Code channel guide card ([#2667](https://github.com/HankHuang0516/EClaw/issues/2667)) ([d70d75c](https://github.com/HankHuang0516/EClaw/commit/d70d75c0c8caa8a540358a9aab4556b8c1927a5c))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* **api:** add DELETE /api/entity/queue to clear messageQueue ([#616](https://github.com/HankHuang0516/EClaw/issues/616)) ([16ee3ff](https://github.com/HankHuang0516/EClaw/commit/16ee3ff1c6aa7f8ef187e54e5e7169f2e44f7395))
* **kanban:** add device-scoped card tags ([#2773](https://github.com/HankHuang0516/EClaw/issues/2773)) ([53a387e](https://github.com/HankHuang0516/EClaw/commit/53a387e67ba7bb4f6bed1c427000c4ae8666577a))
* **portal:** add entity selector to petdx-browser ([#2602](https://github.com/HankHuang0516/EClaw/issues/2602)) ([3fa067e](https://github.com/HankHuang0516/EClaw/commit/3fa067e00b38829b48a37cecd33ee81a9a1122d9))
* **kanban:** add explicit card links ([#2721](https://github.com/HankHuang0516/EClaw/issues/2721)) ([ef9f812](https://github.com/HankHuang0516/EClaw/commit/ef9f812a3fcf39efd07fd158ce90951bdd045ac7))
* **kanban:** add explicit done-card reopen flow ([#2801](https://github.com/HankHuang0516/EClaw/issues/2801)) ([5080aac](https://github.com/HankHuang0516/EClaw/commit/5080aacb75047c0deaa379ee708ec85465afd57c))
* **mindmap:** add GET /api/mindmap/graph force-graph projection ([#2680](https://github.com/HankHuang0516/EClaw/issues/2680)) ([a00b2e7](https://github.com/HankHuang0516/EClaw/commit/a00b2e775af2c4c98cd157f760ad87aeeee469f0)), closes [#2679](https://github.com/HankHuang0516/EClaw/issues/2679) [#2679](https://github.com/HankHuang0516/EClaw/issues/2679)
* **dashboard:** add Hermes channel promo card ([#2708](https://github.com/HankHuang0516/EClaw/issues/2708)) ([337aca1](https://github.com/HankHuang0516/EClaw/commit/337aca153d5a1cd7e888c065f00ae54db7872d91))
* **rental:** add listing soft pause ([#2781](https://github.com/HankHuang0516/EClaw/issues/2781)) ([6586b72](https://github.com/HankHuang0516/EClaw/commit/6586b72717ddb1637d91cd3242c8d2ff554f62b4))
* **portal:** add Nagoya 5D4N trip static cross-ref page ([#2689](https://github.com/HankHuang0516/EClaw/issues/2689)) ([2e0efb6](https://github.com/HankHuang0516/EClaw/commit/2e0efb6dcdaff52226cc8854a96747000b12bdff))
* **portal:** add Nagoya image atlas static page ([#2743](https://github.com/HankHuang0516/EClaw/issues/2743)) ([ac026e9](https://github.com/HankHuang0516/EClaw/commit/ac026e9fd2c92ac9437d01edddffc9adf972f6ba))
* **portal:** add Nagoya trip map links and image lightbox ([#2821](https://github.com/HankHuang0516/EClaw/issues/2821)) ([3e40955](https://github.com/HankHuang0516/EClaw/commit/3e40955650a05f45a6b9f7e39e73847705424a03))
* **portal/nagoya:** add parking shortcut buttons next to itinerary places ([#2826](https://github.com/HankHuang0516/EClaw/issues/2826)) ([63968c5](https://github.com/HankHuang0516/EClaw/commit/63968c554d046afc8d978de74e3aacbf7700500d))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **settings:** add rental roster management preview ([#2758](https://github.com/HankHuang0516/EClaw/issues/2758)) ([9706e59](https://github.com/HankHuang0516/EClaw/commit/9706e59ded140a90a6e02348124282bc69d89001))
* **rental:** add renter health chat indicator ([#2690](https://github.com/HankHuang0516/EClaw/issues/2690)) ([36cd2e9](https://github.com/HankHuang0516/EClaw/commit/36cd2e9802be4c7ebb03d3024617fa74aca48ffd))
* **ios:** add Tutorial & Intro entry in Settings ([#2800](https://github.com/HankHuang0516/EClaw/issues/2800)) ([ed83e51](https://github.com/HankHuang0516/EClaw/commit/ed83e51d043bf4cd5865f38dc95a91ed54820d6c))
* **landing:** add Watch Full Demo CTA below hero video ([#2799](https://github.com/HankHuang0516/EClaw/issues/2799)) ([66107c9](https://github.com/HankHuang0516/EClaw/commit/66107c954727551fd34d989a4674daaad9b63968))
* **footer:** add Watch Intro Video link in Info column ([#2798](https://github.com/HankHuang0516/EClaw/issues/2798)) ([d7c6d59](https://github.com/HankHuang0516/EClaw/commit/d7c6d596b69c6a5b257bf1f7a792a407ef9712ad))
* **i18n:** ar iter-2 — fill 623 missing keys against en source ([#2847](https://github.com/HankHuang0516/EClaw/issues/2847)) ([ee94a7a](https://github.com/HankHuang0516/EClaw/commit/ee94a7ae6812b5163efe4284ee4907ca32302f5c))
* **kanban:** backlog launch-gate flag to suppress L1/L2/L3 escalation ([#2855](https://github.com/HankHuang0516/EClaw/issues/2855)) ([cb8bf1b](https://github.com/HankHuang0516/EClaw/commit/cb8bf1bb6421f25214f65e129a8cadccc49cc266)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#4](https://github.com/HankHuang0516/EClaw/issues/4) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **companion:** bridge crafter-station/petdex gallery (1784 pets) ([#2601](https://github.com/HankHuang0516/EClaw/issues/2601)) ([2e245be](https://github.com/HankHuang0516/EClaw/commit/2e245bea6dd47ea7361b927d389188a3c23b6bb3))
* **promo:** chat avatar size feature landing page (self-hosted MP4) ([#2722](https://github.com/HankHuang0516/EClaw/issues/2722)) ([3852210](https://github.com/HankHuang0516/EClaw/commit/3852210d355704d018e3daca6b5f9512a011b210)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **kanban:** cron-spawn jitter + lane backpressure to prevent same-tick wedge ([#2791](https://github.com/HankHuang0516/EClaw/issues/2791)) ([9f414a7](https://github.com/HankHuang0516/EClaw/commit/9f414a731d6393672a0a4189c7b408c529ae5e12)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **portal:** dashboard usage widget — Claude/Codex 5h gauges + 24h chart (Plan B Phase 3) ([#2891](https://github.com/HankHuang0516/EClaw/issues/2891)) ([d18f373](https://github.com/HankHuang0516/EClaw/commit/d18f373857e4bd302437d6bda2a1e01871fbb1db))
* **portal:** dashboard usage widget v2 — Session/Weekly % bars + projects, no cost (Plan B Phase 3.1) ([#2893](https://github.com/HankHuang0516/EClaw/issues/2893)) ([4bc0dc7](https://github.com/HankHuang0516/EClaw/commit/4bc0dc744ed9d54dfd532ebac4b705c7f84ec0a6))
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **info:** embed 75s promo video on Quick Start tab ([#2795](https://github.com/HankHuang0516/EClaw/issues/2795)) ([86c3f70](https://github.com/HankHuang0516/EClaw/commit/86c3f709a95eebbee1241077b807880463f804b6))
* **promo:** embed daily eclaw video 2026-05-14 ([#2786](https://github.com/HankHuang0516/EClaw/issues/2786)) ([718a814](https://github.com/HankHuang0516/EClaw/commit/718a814ab16850bc2b33a1b303841e2c4378ecfa)), closes [#2782](https://github.com/HankHuang0516/EClaw/issues/2782) [#2693](https://github.com/HankHuang0516/EClaw/issues/2693)
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **info:** embed promo video at top of Quick Start tab ([#2797](https://github.com/HankHuang0516/EClaw/issues/2797)) ([047679f](https://github.com/HankHuang0516/EClaw/commit/047679fd57ab9949eaeacea414d5611e71afe041))
* **rental:** enforce strict rebind refunds ([#2703](https://github.com/HankHuang0516/EClaw/issues/2703)) ([a1859c5](https://github.com/HankHuang0516/EClaw/commit/a1859c50e6fb3991d7a8051491502d824a14a116))
* **portal:** group task chip actions ([#2825](https://github.com/HankHuang0516/EClaw/issues/2825)) ([5db5c59](https://github.com/HankHuang0516/EClaw/commit/5db5c59b32b8635f1412205faf0c2f9164d3d5d4))
* **hermes:** H2 health-check cron + 7d SLA + commander alerts (card_07891ac) ([#2922](https://github.com/HankHuang0516/EClaw/issues/2922)) ([82b4315](https://github.com/HankHuang0516/EClaw/commit/82b4315aea234493e3d1889dc53958c2f1d842e0)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **portal:** info-guide-rules + info-guide-soul slide pair ([#2793](https://github.com/HankHuang0516/EClaw/issues/2793)) ([1c8bddc](https://github.com/HankHuang0516/EClaw/commit/1c8bddc4c185054b2b60088498e3d45509117127)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **chat:** link card previews to kanban ([#2754](https://github.com/HankHuang0516/EClaw/issues/2754)) ([2261240](https://github.com/HankHuang0516/EClaw/commit/22612402c2e95efb07246629e81a849be41ee9c7))
* **mission:** link notes to kanban cards ([#2723](https://github.com/HankHuang0516/EClaw/issues/2723)) ([b36dc18](https://github.com/HankHuang0516/EClaw/commit/b36dc18f3a8facf12e0b6046351c222f1e99dc55))
* **usage-daemon:** macOS launchd daemon polls Claude/Codex usage → POST /api/usage/snapshot (Plan B Phase 2) ([#2890](https://github.com/HankHuang0516/EClaw/issues/2890)) ([fd225e1](https://github.com/HankHuang0516/EClaw/commit/fd225e12d9491037be1a340bd63b54b5f3308c7f))
* **mindmap:** mission.html link to /portal/mindmap.html + deprecate /api/mission/mindmap ([#2685](https://github.com/HankHuang0516/EClaw/issues/2685)) ([11e297b](https://github.com/HankHuang0516/EClaw/commit/11e297bab1c9b56fcde3027d6500b7c58891bf18)), closes [#2680](https://github.com/HankHuang0516/EClaw/issues/2680) [#2684](https://github.com/HankHuang0516/EClaw/issues/2684)
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **portal:** nagoya trip interactive map (Leaflet + OSM, no API key) ([#2888](https://github.com/HankHuang0516/EClaw/issues/2888)) ([ecfdac0](https://github.com/HankHuang0516/EClaw/commit/ecfdac06348c12ee7c6872c6c28d5f82162e7aa9))
* **android:** native tab navigation bridge for portal pages ([#2832](https://github.com/HankHuang0516/EClaw/issues/2832)) ([7e02e6f](https://github.com/HankHuang0516/EClaw/commit/7e02e6f225014e64f08f55035d7b9e5727873343)), closes [#2824](https://github.com/HankHuang0516/EClaw/issues/2824) [#2743](https://github.com/HankHuang0516/EClaw/issues/2743) [#2821](https://github.com/HankHuang0516/EClaw/issues/2821) [#2826](https://github.com/HankHuang0516/EClaw/issues/2826) [#2797](https://github.com/HankHuang0516/EClaw/issues/2797) [#2798](https://github.com/HankHuang0516/EClaw/issues/2798) [#2799](https://github.com/HankHuang0516/EClaw/issues/2799) [#2800](https://github.com/HankHuang0516/EClaw/issues/2800) [#2801](https://github.com/HankHuang0516/EClaw/issues/2801) [#2816](https://github.com/HankHuang0516/EClaw/issues/2816) [#2796](https://github.com/HankHuang0516/EClaw/issues/2796) [#2825](https://github.com/HankHuang0516/EClaw/issues/2825) [#2812](https://github.com/HankHuang0516/EClaw/issues/2812) [#2813](https://github.com/HankHuang0516/EClaw/issues/2813) [#2814](https://github.com/HankHuang0516/EClaw/issues/2814) [#2815](https://github.com/HankHuang0516/EClaw/issues/2815) [#2811](https://github.com/HankHuang0516/EClaw/issues/2811) [#2807](https://github.com/HankHuang0516/EClaw/issues/2807) [#2808](https://github.com/HankHuang0516/EClaw/issues/2808) [#2818](https://github.com/HankHuang0516/EClaw/issues/2818) [#2819](https://github.com/HankHuang0516/EClaw/issues/2819) [#2824](https://github.com/HankHuang0516/EClaw/issues/2824)
* **channel:** outbound backpressure (30/min cap + 429 retry-after) ([#2911](https://github.com/HankHuang0516/EClaw/issues/2911)) ([36dc99c](https://github.com/HankHuang0516/EClaw/commit/36dc99ca78b0e1724a2aaefb5936669077b7a28f))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **ai-support:** pass per-request caller creds to claude-cli-proxy /chat (H3 Phase 2) ([#2947](https://github.com/HankHuang0516/EClaw/issues/2947)) ([1f5378b](https://github.com/HankHuang0516/EClaw/commit/1f5378b9e01d4e650005c338bf81f1ef43535624)), closes [#2937](https://github.com/HankHuang0516/EClaw/issues/2937)
* **settings:** per-entity nudge override UI (Phase 2) ([#2837](https://github.com/HankHuang0516/EClaw/issues/2837)) ([ea7662b](https://github.com/HankHuang0516/EClaw/commit/ea7662b0858882dae461e1387f711895924f9ab8)), closes [3/#4](https://github.com/HankHuang0516/EClaw/issues/4)
* **kanban:** per-entity nudge overrides (Phase 2 of card_e066cb6b) ([#2836](https://github.com/HankHuang0516/EClaw/issues/2836)) ([0425f80](https://github.com/HankHuang0516/EClaw/commit/0425f80bc1169c0d506b665659c8676695c45553))
* **avatar:** petdx render on card-holder my-cards (Phase 1b) ([#2621](https://github.com/HankHuang0516/EClaw/issues/2621)) ([f78ba8b](https://github.com/HankHuang0516/EClaw/commit/f78ba8b18acc426936ab6d8a82ca7541effea00d))
* **avatar:** petdx render on dashboard entity grid / org chart / bindings (Phase 1b) ([#2622](https://github.com/HankHuang0516/EClaw/issues/2622)) ([f417749](https://github.com/HankHuang0516/EClaw/commit/f41774914451048e8cd76e9ae30416a0642e173b)), closes [#2620](https://github.com/HankHuang0516/EClaw/issues/2620) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621)
* **avatar:** petdx render on kanban auto-assign / pulse / comment avatars (Phase 1b) ([#2624](https://github.com/HankHuang0516/EClaw/issues/2624)) ([6bff5f8](https://github.com/HankHuang0516/EClaw/commit/6bff5f80440d0bd91a6b1721cde9478d685c4d46))
* **avatar:** petdx render on mission skill/rule/soul entity dialogs (Phase 1b) ([#2623](https://github.com/HankHuang0516/EClaw/issues/2623)) ([129327b](https://github.com/HankHuang0516/EClaw/commit/129327bc7b91056659f1ab7e8d5e3f5260d951fb))
* **mindmap:** portal/mindmap.html force-graph prototype ([#129](https://github.com/HankHuang0516/EClaw/issues/129)) ([#2681](https://github.com/HankHuang0516/EClaw/issues/2681)) ([0f15e69](https://github.com/HankHuang0516/EClaw/commit/0f15e6930f0697c37fa08f3219edb8f9e499837f)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **channel:** record delivery receipts ([#2913](https://github.com/HankHuang0516/EClaw/issues/2913)) ([90c671b](https://github.com/HankHuang0516/EClaw/commit/90c671bd1970ab51584b90e2b634484ec10cc7ae))
* **portal:** redo nagoya trip page in professional tour-guide style ([#2691](https://github.com/HankHuang0516/EClaw/issues/2691)) ([b2378c0](https://github.com/HankHuang0516/EClaw/commit/b2378c06ee20fa9cccfdceceb1a4c9e0b3072f59))
* **i18n:** remove ms+hi orphan keys from i18n.js ([#2849](https://github.com/HankHuang0516/EClaw/issues/2849)) ([320176c](https://github.com/HankHuang0516/EClaw/commit/320176c06a3cfd8631e2a82ad02a6bd6a9af0389))
* **avatar:** render selected petdx companion in chat avatars ([#2620](https://github.com/HankHuang0516/EClaw/issues/2620)) ([0bdd046](https://github.com/HankHuang0516/EClaw/commit/0bdd046fe1b1c428e32edda366ff112c08927f4c))
* **home:** replace native home with WebView hosting dashboard.html ([#2634](https://github.com/HankHuang0516/EClaw/issues/2634)) ([e69ea81](https://github.com/HankHuang0516/EClaw/commit/e69ea8160c239b083a83d6dc83a4f1c3f901c863))
* **app:** route chat mission jumps through native tabs ([#2824](https://github.com/HankHuang0516/EClaw/issues/2824)) ([deb07b6](https://github.com/HankHuang0516/EClaw/commit/deb07b69a9ecca632fe27278de537f1d85234e94))
* **portal:** scaffold /portal/bot/:id/about backstory page (IP P1) ([#2938](https://github.com/HankHuang0516/EClaw/issues/2938)) ([96d6ca5](https://github.com/HankHuang0516/EClaw/commit/96d6ca506d611e2f9be03d50f76983457277f209))
* **proxy:** scope private repo git auth ([#2926](https://github.com/HankHuang0516/EClaw/issues/2926)) ([246f7ff](https://github.com/HankHuang0516/EClaw/commit/246f7ff1dedaf7bece9e3cb9eb24d0ab32ebb393))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **chat:** support message deep links ([#2719](https://github.com/HankHuang0516/EClaw/issues/2719)) ([2dc0f1e](https://github.com/HankHuang0516/EClaw/commit/2dc0f1eeb259e1a0848db4a03186b989372cd91c))
* **mission:** support note deep links ([#2717](https://github.com/HankHuang0516/EClaw/issues/2717)) ([2efd3a5](https://github.com/HankHuang0516/EClaw/commit/2efd3a5e741217a07c0b0ac54a0ddd010e0ebe23))
* **share-chat:** twitter card + per-bot og:image/twitter:* in SSR ([#2609](https://github.com/HankHuang0516/EClaw/issues/2609)) ([6cdc853](https://github.com/HankHuang0516/EClaw/commit/6cdc853dc884cdb95bd47214942768981f218ae0))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))
* **settings:** wire petdx avatar into channel-account chips ([#2626](https://github.com/HankHuang0516/EClaw/issues/2626)) ([88aec77](https://github.com/HankHuang0516/EClaw/commit/88aec772628c240e97b336bb5820892ad632d1ae))
* **files:** wire petdx avatar into entity filter & per-file badges ([#2627](https://github.com/HankHuang0516/EClaw/issues/2627)) ([5b3e5cc](https://github.com/HankHuang0516/EClaw/commit/5b3e5cc542d9da69bb4e92500fd03a542ea33f00))
* **mindmap:** wrap hardcoded zh-TW UI strings with i18n t() ([#2607](https://github.com/HankHuang0516/EClaw/issues/2607)) ([166af87](https://github.com/HankHuang0516/EClaw/commit/166af8772b2121a24aaf34a83b3de970e9b3b571)), closes [#2606](https://github.com/HankHuang0516/EClaw/issues/2606)
* **i18n:** zh-TW backfill 8 keys (soft-pause + chat + invite + wallet) ([#2815](https://github.com/HankHuang0516/EClaw/issues/2815)) ([a2dd574](https://github.com/HankHuang0516/EClaw/commit/a2dd5743ce8d43a4b6ace9a2fd4b52568180d6c5))


### Performance Improvements

* **mindmap:** force-graph hardening for 1000/2000-node graphs ([#2684](https://github.com/HankHuang0516/EClaw/issues/2684)) ([da8b1c8](https://github.com/HankHuang0516/EClaw/commit/da8b1c8f947ab8bc8fa455c1962a91146623a1fc))


### Reverts

* Revert "feat(telegram): long-poll adapter PoC (card_406e612942ff062a06fc47be) ([#2238](https://github.com/HankHuang0516/EClaw/issues/2238))" ([#2239](https://github.com/HankHuang0516/EClaw/issues/2239)) ([eb7aa92](https://github.com/HankHuang0516/EClaw/commit/eb7aa92cce454b4a1a22654a2d133cdebe78c2bd))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-25)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **notifications:** add kanban_done + kanban_done_auto toggles to Android Settings ([#2636](https://github.com/HankHuang0516/EClaw/issues/2636)) ([a710909](https://github.com/HankHuang0516/EClaw/commit/a7109095e3393b8564e7ef1b23d382a4fbb944b8))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **api:** align /api/platform-stats skill-doc with device-auth contract (card_49b8190) ([#2916](https://github.com/HankHuang0516/EClaw/issues/2916)) ([ee55b2f](https://github.com/HankHuang0516/EClaw/commit/ee55b2fdbfbcd4bead5501d16ee66339056c32d7))
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **i18n:** ar block — fix 27 broken entries (CJK leaks + truncated HTML) ([#2851](https://github.com/HankHuang0516/EClaw/issues/2851)) ([5b19175](https://github.com/HankHuang0516/EClaw/commit/5b19175d712d00d16fcec00b749035c4beae7a5c))
* **chat:** atomic-load target bar (await contacts before first render) ([#2831](https://github.com/HankHuang0516/EClaw/issues/2831)) ([5f529e6](https://github.com/HankHuang0516/EClaw/commit/5f529e6b772eacc38ba1de69b44258a05f0d816a)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2](https://github.com/HankHuang0516/EClaw/issues/2)
* **channel:** await binding persistence ([712516d](https://github.com/HankHuang0516/EClaw/commit/712516decafb745035bd1434a28cc1973d433e19))
* **rental:** bump handshake timeout to 60s + timeout-aware discovery fallback ([#2863](https://github.com/HankHuang0516/EClaw/issues/2863)) ([fd4322f](https://github.com/HankHuang0516/EClaw/commit/fd4322f8890f3c2dfca3acdae6a4b95f19c381f9)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **i18n:** clear batch 1 residual missing keys ([#2790](https://github.com/HankHuang0516/EClaw/issues/2790)) ([211030e](https://github.com/HankHuang0516/EClaw/commit/211030e0b0b6a865c11f0c4ed60dc4e356d43b7a))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **kanban:** comment input no longer overlaps last comment in card detail (PR [#2678](https://github.com/HankHuang0516/EClaw/issues/2678)) ([fba91fc](https://github.com/HankHuang0516/EClaw/commit/fba91fca15402b453a0db5ee857c0b16e6087055))
* **chat:** compact 20px avatar in target bar (App WebView only shows [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2](https://github.com/HankHuang0516/EClaw/issues/2)) ([#2830](https://github.com/HankHuang0516/EClaw/issues/2830)) ([42c7543](https://github.com/HankHuang0516/EClaw/commit/42c7543b4a78a7abf3f5f7535eb9bc6142cd0fe2)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **portal:** complete 401 redirect sweep + mobile UIUX truncation ([#2842](https://github.com/HankHuang0516/EClaw/issues/2842)) ([f9799ba](https://github.com/HankHuang0516/EClaw/commit/f9799ba42498b109f0a8a70e80836aa6da51e216)), closes [#2833](https://github.com/HankHuang0516/EClaw/issues/2833) [#2845](https://github.com/HankHuang0516/EClaw/issues/2845) [#2844](https://github.com/HankHuang0516/EClaw/issues/2844) [#2843](https://github.com/HankHuang0516/EClaw/issues/2843)
* **uiux:** continue qa mobile readability sweep ([#2854](https://github.com/HankHuang0516/EClaw/issues/2854)) ([57606ff](https://github.com/HankHuang0516/EClaw/commit/57606ffe3e543b07a026aacc53c4b470c9a7825b))
* **i18n:** cover dynamic portal wrapper keys ([#2807](https://github.com/HankHuang0516/EClaw/issues/2807)) ([4c711cc](https://github.com/HankHuang0516/EClaw/commit/4c711cc4009300ffe4e8933a98ee01cd0fdd6aeb))
* **i18n:** dedup 20 dash_channel_card_* keys in es block ([#2876](https://github.com/HankHuang0516/EClaw/issues/2876)) ([807284c](https://github.com/HankHuang0516/EClaw/commit/807284ce363ef119ccdb0ae40e5ce99d3f0a27e0))
* **i18n:** dedupe backend locale keys via AST ([#2920](https://github.com/HankHuang0516/EClaw/issues/2920)) ([40ef114](https://github.com/HankHuang0516/EClaw/commit/40ef11414c8b836fe1ed93ec06c839df3a1bf7b9))
* **i18n:** dedupe zh locale keys ([#2919](https://github.com/HankHuang0516/EClaw/issues/2919)) ([afd2cca](https://github.com/HankHuang0516/EClaw/commit/afd2cca8086c2f2df0d04c9c5f8c58733652875e))
* **test:** delegate root test and remove invalid jest option ([#2292](https://github.com/HankHuang0516/EClaw/issues/2292)) ([65bf2f8](https://github.com/HankHuang0516/EClaw/commit/65bf2f83d26d925097cd380ab73b04ab2db49842))
* **kanban:** dep-aware nudge gating + roadmap dependency backfill ([#2904](https://github.com/HankHuang0516/EClaw/issues/2904)) ([2b76ac9](https://github.com/HankHuang0516/EClaw/commit/2b76ac9d3b7e4169b7bc3c6f6b0b0903b63cd9f7)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **rental:** don't pollute entity.message on push gateway timeout ([#2860](https://github.com/HankHuang0516/EClaw/issues/2860)) ([592ba44](https://github.com/HankHuang0516/EClaw/commit/592ba44f57536ee00011b6cbddaa6b129a7cbae9))
* **petdx:** drop dark-grey loading placeholder + preload sprite WEBP ([#2628](https://github.com/HankHuang0516/EClaw/issues/2628)) ([59cef38](https://github.com/HankHuang0516/EClaw/commit/59cef387bd69ca99d7d15c86a1364856d3849ad8)), closes [#1a1a1a](https://github.com/HankHuang0516/EClaw/issues/1a1a1a)
* **gateway-ws:** drop Origin header on server-to-server WS upgrade ([#2869](https://github.com/HankHuang0516/EClaw/issues/2869)) ([716dcf9](https://github.com/HankHuang0516/EClaw/commit/716dcf9d0834b17522bb9d894bad84bc142d1a19))
* **setup-scripts:** drop Origin header on server-to-server WS upgrade ([#2875](https://github.com/HankHuang0516/EClaw/issues/2875)) ([9d893b8](https://github.com/HankHuang0516/EClaw/commit/9d893b8e5eea4db275e450bf423903c156cd3e4b)), closes [#2869](https://github.com/HankHuang0516/EClaw/issues/2869)
* **security:** escape innerHTML in chat modal error messages ([#2819](https://github.com/HankHuang0516/EClaw/issues/2819)) ([dce07ad](https://github.com/HankHuang0516/EClaw/commit/dce07adde64795916dba977ae23e46f3371ce7ed)), closes [#2809](https://github.com/HankHuang0516/EClaw/issues/2809) [#2810](https://github.com/HankHuang0516/EClaw/issues/2810) [#2809](https://github.com/HankHuang0516/EClaw/issues/2809) [#2810](https://github.com/HankHuang0516/EClaw/issues/2810)
* **proxy:** export repo auth to CLI child ([#2928](https://github.com/HankHuang0516/EClaw/issues/2928)) ([336a8ca](https://github.com/HankHuang0516/EClaw/commit/336a8caff4e3663287bd2948cf9fe6e04125cbc8))
* **entities:** expose botSecret to owner so wallpaper service can poll companions ([#2615](https://github.com/HankHuang0516/EClaw/issues/2615)) ([04470fc](https://github.com/HankHuang0516/EClaw/commit/04470fce8f8c3fce2b1ba8b243e776606f107502))
* **rental:** expose owner_public_code in marketplace so plaza CTA can route ([#2616](https://github.com/HankHuang0516/EClaw/issues/2616)) ([4d1372f](https://github.com/HankHuang0516/EClaw/commit/4d1372f717d93cab65543e87c852e74e9fb67071)), closes [#2610](https://github.com/HankHuang0516/EClaw/issues/2610)
* **mindmap:** fallback to device scope when entityId is null ([#2728](https://github.com/HankHuang0516/EClaw/issues/2728)) ([7572312](https://github.com/HankHuang0516/EClaw/commit/7572312433d3d75fc245eda48a28919ce14bd927))
* **i18n:** fill 11 missing zh keys post-[#2920](https://github.com/HankHuang0516/EClaw/issues/2920)/[#2921](https://github.com/HankHuang0516/EClaw/issues/2921) (card_de6970) ([#2924](https://github.com/HankHuang0516/EClaw/issues/2924)) ([17c4899](https://github.com/HankHuang0516/EClaw/commit/17c48996489b1444d6ed589027acfa7986178fe1)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** fill backend runtime locale gaps ([#2921](https://github.com/HankHuang0516/EClaw/issues/2921)) ([00d96ff](https://github.com/HankHuang0516/EClaw/commit/00d96ff261b8134b49292623e1f786fd544144cc))
* **i18n:** fill Spanish drift keys ([#2751](https://github.com/HankHuang0516/EClaw/issues/2751)) ([0ad0ee5](https://github.com/HankHuang0516/EClaw/commit/0ad0ee55f7fac3e6ac46d891539950dab4d553cc))
* **portal:** fit embedded org chart to mobile viewport ([#2674](https://github.com/HankHuang0516/EClaw/issues/2674)) ([1c4e1b4](https://github.com/HankHuang0516/EClaw/commit/1c4e1b413ea7027b4cd4b8ecda981b0d0e12e66b))
* **i18n:** fix 6 trailing-comma syntax errors in 10-locale batch ([#2771](https://github.com/HankHuang0516/EClaw/issues/2771)) ([b27c6ca](https://github.com/HankHuang0516/EClaw/commit/b27c6ca204bf813e406c54ce3a2532a5f1f031b3))
* **kanban:** GET card returns latest 50 comments + comments endpoint exposes total ([#2816](https://github.com/HankHuang0516/EClaw/issues/2816)) ([c4d83f7](https://github.com/HankHuang0516/EClaw/commit/c4d83f777a1cd26aea0936e4316aa35c52822eef))
* **sharechat:** guest verify-email modal + disabled Send for unverified ([#2865](https://github.com/HankHuang0516/EClaw/issues/2865)) ([cb3b061](https://github.com/HankHuang0516/EClaw/commit/cb3b0614e0f6160417d907753e66eceb2d666802))
* **portal:** H4 showcase i18n data-attrs + raw key leak ([#2935](https://github.com/HankHuang0516/EClaw/issues/2935)) ([80d8587](https://github.com/HankHuang0516/EClaw/commit/80d8587c00c03f72fdb9756b1093ee8e1e3d0842)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **uiux:** harden chat previews and roster preview ([#2769](https://github.com/HankHuang0516/EClaw/issues/2769)) ([466d4d3](https://github.com/HankHuang0516/EClaw/commit/466d4d3ef81c628d3f58db64323946053d7bf61c))
* **mention-parser:** ignore @-mentions inside markdown code spans ([#2645](https://github.com/HankHuang0516/EClaw/issues/2645)) ([8da19d4](https://github.com/HankHuang0516/EClaw/commit/8da19d4a79ceb4152bf2144ee0847c61ce3e1def)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **kanban:** lazy-load dependency chips via IntersectionObserver ([#2632](https://github.com/HankHuang0516/EClaw/issues/2632)) ([20586b4](https://github.com/HankHuang0516/EClaw/commit/20586b43357335f9eb6a190c02d58c8e36b58aba)), closes [#2631](https://github.com/HankHuang0516/EClaw/issues/2631)
* **i18n:** localize FCM NotificationChannel labels (card_ec8d3a22) ([#2918](https://github.com/HankHuang0516/EClaw/issues/2918)) ([591cd20](https://github.com/HankHuang0516/EClaw/commit/591cd206704693650a53d19d94c4cc75daf84ffd))
* **kanban:** make card sorting deterministic ([#2756](https://github.com/HankHuang0516/EClaw/issues/2756)) ([48e2117](https://github.com/HankHuang0516/EClaw/commit/48e2117b64e37f05dc635e0a3b67bfd43cbe48f5))
* **portal/nagoya-trip:** map-link invisible on dark hero/day-banner ([#2897](https://github.com/HankHuang0516/EClaw/issues/2897)) ([cc33df6](https://github.com/HankHuang0516/EClaw/commit/cc33df686673455c20beaee60871412a5d486e66)), closes [#1f4030](https://github.com/HankHuang0516/EClaw/issues/1f4030) [#8b8579](https://github.com/HankHuang0516/EClaw/issues/8b8579) [#6e6859](https://github.com/HankHuang0516/EClaw/issues/6e6859) [#7a5614](https://github.com/HankHuang0516/EClaw/issues/7a5614)
* **org-chart:** notify affected bots on hierarchy change ([#2812](https://github.com/HankHuang0516/EClaw/issues/2812)) ([55675fd](https://github.com/HankHuang0516/EClaw/commit/55675fdf4487494d729a29524b32bd81b756a00c)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** notify reviewer on manual /move → review ([#2753](https://github.com/HankHuang0516/EClaw/issues/2753)) ([6cbbb4e](https://github.com/HankHuang0516/EClaw/commit/6cbbb4ee8c0d4d8ad54df2e9b5faaa3699bd530f))
* **wallpaper:** off-load spritesheet fetch to IO so per-petdx sprites actually render ([#2618](https://github.com/HankHuang0516/EClaw/issues/2618)) ([61b832c](https://github.com/HankHuang0516/EClaw/commit/61b832c9fa8a1d0caab810ccc942d85c63349267)), closes [#2615](https://github.com/HankHuang0516/EClaw/issues/2615) [#2577](https://github.com/HankHuang0516/EClaw/issues/2577)
* **security:** patch P0 sanitize-html XSS + P1 protobufjs + exam.html XSS ([#2829](https://github.com/HankHuang0516/EClaw/issues/2829)) ([c71b871](https://github.com/HankHuang0516/EClaw/commit/c71b871a045887375dd0d26d1a3280a0891a89ad))
* **security:** patch ws uninitialized memory disclosure (GHSA-58qx-3vcg-4xpx) ([#2872](https://github.com/HankHuang0516/EClaw/issues/2872)) ([2523d15](https://github.com/HankHuang0516/EClaw/commit/2523d154bbe501a7cc086340f7a07ece3abfa69b))
* **portal:** petdx-browser cookie-session fallback for device-login ([#2757](https://github.com/HankHuang0516/EClaw/issues/2757)) ([ca275f4](https://github.com/HankHuang0516/EClaw/commit/ca275f4519835da0c7ad71c588908a18f6f138d8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **api:** platform-stats 500 + entity/lookup publicCode alias ([#2809](https://github.com/HankHuang0516/EClaw/issues/2809), [#2810](https://github.com/HankHuang0516/EClaw/issues/2810)) ([#2818](https://github.com/HankHuang0516/EClaw/issues/2818)) ([f99fd17](https://github.com/HankHuang0516/EClaw/commit/f99fd17b2b1c32d88daa2510ff66d714c1a53edc))
* **i18n:** positional format specifiers for feedback_result_logs (7 locales) ([#2597](https://github.com/HankHuang0516/EClaw/issues/2597)) ([21aedc7](https://github.com/HankHuang0516/EClaw/commit/21aedc7eebc7a2839e340136f38dfdfd4dabb9dc))
* **avatar-petdx:** preserve descriptor across transient API failures (flicker) ([#2625](https://github.com/HankHuang0516/EClaw/issues/2625)) ([7b1c606](https://github.com/HankHuang0516/EClaw/commit/7b1c606514f7698d72ec95cf6c556e4043966186))
* **chat:** preserve recipient selection across rental-health refresh (P0 #card_eb1cba76) ([#2906](https://github.com/HankHuang0516/EClaw/issues/2906)) ([9cc0301](https://github.com/HankHuang0516/EClaw/commit/9cc0301cc26a0f49af4b7f53486f5c1a7cdd7902)), closes [#card_eb1cba76](https://github.com/HankHuang0516/EClaw/issues/card_eb1cba76) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **chat:** preserve scroll anchor while reading history ([#2693](https://github.com/HankHuang0516/EClaw/issues/2693)) ([945fdb7](https://github.com/HankHuang0516/EClaw/commit/945fdb7192b791b31882e1e75568dd8b11e4686f))
* **promo:** pull video embed from /promo-chat-avatar.html ([#2724](https://github.com/HankHuang0516/EClaw/issues/2724)) ([2afabc8](https://github.com/HankHuang0516/EClaw/commit/2afabc8c5ff8b25218a7cb857e8adfa572c8e9d5))
* **dashboard:** read live.rate_limits.{five_hour,seven_day}.used_percentage ([#2895](https://github.com/HankHuang0516/EClaw/issues/2895)) ([8223303](https://github.com/HankHuang0516/EClaw/commit/822330312bccb1c76675ad2c3b26e78d10dd1298))
* **kanban:** realign stale recurring schedules ([#2785](https://github.com/HankHuang0516/EClaw/issues/2785)) ([ab8ee25](https://github.com/HankHuang0516/EClaw/commit/ab8ee250a9b37f3d3e838bb01d8866c8d2b78231))
* **i18n:** reapply de6970 locale gap translations ([#2925](https://github.com/HankHuang0516/EClaw/issues/2925)) ([d994dc1](https://github.com/HankHuang0516/EClaw/commit/d994dc1d240fef72326db2599262375ccbf29175))
* **portal:** reduce QA-discovered request fanout ([#2656](https://github.com/HankHuang0516/EClaw/issues/2656)) ([1e46d6b](https://github.com/HankHuang0516/EClaw/commit/1e46d6bab61e58c65b452b6503d953f8dddeee75))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **portal:** remove org chart fit scale floor ([#2676](https://github.com/HankHuang0516/EClaw/issues/2676)) ([0f01606](https://github.com/HankHuang0516/EClaw/commit/0f016068b963bb5f800a02f28817c7174979d913))
* **rental:** remove phantom 'webhook test push' step from BIND_COMPLETE ([#2864](https://github.com/HankHuang0516/EClaw/issues/2864)) ([47f4a3e](https://github.com/HankHuang0516/EClaw/commit/47f4a3edf76aa95ebd06d8713cd44fda6eef9b5d))
* **i18n:** rename mm_empty_title → mm_state_empty_title in mindmap.html ([#2683](https://github.com/HankHuang0516/EClaw/issues/2683)) ([c79c109](https://github.com/HankHuang0516/EClaw/commit/c79c109bea23142e8a6d9ace976d105af1280ec9))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **chat:** render mention avatars with companion renderer ([#2633](https://github.com/HankHuang0516/EClaw/issues/2633)) ([03e205f](https://github.com/HankHuang0516/EClaw/commit/03e205f663ecd2c2f443d4009dd5af0093f0bbbb))
* **kanban:** reserve mobile comments panel height ([#2782](https://github.com/HankHuang0516/EClaw/issues/2782)) ([ce8662d](https://github.com/HankHuang0516/EClaw/commit/ce8662d362422fdd25037f1deb61dbed9425e2f9))
* **channel:** restore handshake fallback to discovered sessions ([#2915](https://github.com/HankHuang0516/EClaw/issues/2915)) ([#2917](https://github.com/HankHuang0516/EClaw/issues/2917)) ([9d7d3a2](https://github.com/HankHuang0516/EClaw/commit/9d7d3a25654289998314dd5ca152cefdb8a4d64e)), closes [#2912](https://github.com/HankHuang0516/EClaw/issues/2912)
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* scheduled audit 2026-05-13 — 6 bugs, XSS, i18n ([#2668](https://github.com/HankHuang0516/EClaw/issues/2668)) ([21dd513](https://github.com/HankHuang0516/EClaw/commit/21dd513b4464738de29164265437435ba6cc4817)), closes [#2605](https://github.com/HankHuang0516/EClaw/issues/2605) [#2608](https://github.com/HankHuang0516/EClaw/issues/2608) [#2600](https://github.com/HankHuang0516/EClaw/issues/2600) [#2599](https://github.com/HankHuang0516/EClaw/issues/2599) [#2598](https://github.com/HankHuang0516/EClaw/issues/2598)
* **channel:** scope official bot sessions ([#2912](https://github.com/HankHuang0516/EClaw/issues/2912)) ([5c56b62](https://github.com/HankHuang0516/EClaw/commit/5c56b62c13b739b76f39e168a26bd4e5de2644fb))
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **dashboard:** show Claude weekly bar reset countdown ([#2896](https://github.com/HankHuang0516/EClaw/issues/2896)) ([3b87845](https://github.com/HankHuang0516/EClaw/commit/3b87845d713e980fec69f6b8007549338a326713)), closes [#2895](https://github.com/HankHuang0516/EClaw/issues/2895)
* **chat:** smart-chip preview falls back to inline c.comments when /comments fails (PR [#2677](https://github.com/HankHuang0516/EClaw/issues/2677)) ([7f4dffd](https://github.com/HankHuang0516/EClaw/commit/7f4dffd2c83ea86f296b8fa0610f0e67c9f1af11))
* **kanban:** stabilize comment detail viewport ([#2796](https://github.com/HankHuang0516/EClaw/issues/2796)) ([0a10aad](https://github.com/HankHuang0516/EClaw/commit/0a10aadb5a5b12ff23454c16d5c88183b94ad7d7))
* **wallpaper:** stop Android live wallpaper flashing default lobster on companion change ([#2629](https://github.com/HankHuang0516/EClaw/issues/2629)) ([8b4f66f](https://github.com/HankHuang0516/EClaw/commit/8b4f66fcb335bf43128f924b761b6337c817095b)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **chat:** stop chat.html bouncing to dashboard via /api/rental/health-status 401 race ([#2833](https://github.com/HankHuang0516/EClaw/issues/2833)) ([c422406](https://github.com/HankHuang0516/EClaw/commit/c4224067cdcfe7f3e22ab95007c7563dac4196ac))
* **openclaw-channel:** support OpenClaw 2026.5.20 ([8045de6](https://github.com/HankHuang0516/EClaw/commit/8045de6bebecfc05f9bd57453b99c098ca35681b))
* **mentions:** support same-device CJK display-name tags ([#2874](https://github.com/HankHuang0516/EClaw/issues/2874)) ([b8f61be](https://github.com/HankHuang0516/EClaw/commit/b8f61be9a3962fef75dd32ea34e8900880dafaf9))
* **channel:** suppress operational A2A loop messages (rebase of [#2288](https://github.com/HankHuang0516/EClaw/issues/2288)) ([#2930](https://github.com/HankHuang0516/EClaw/issues/2930)) ([7ceabc9](https://github.com/HankHuang0516/EClaw/commit/7ceabc915df22123cb46ae1500e2eb2e279250af))
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **dashboard:** use sessions[].project for widget Projects list (was .project_id) ([#2894](https://github.com/HankHuang0516/EClaw/issues/2894)) ([0fd1334](https://github.com/HankHuang0516/EClaw/commit/0fd1334897d4a603cc6eb74f34b48606547e09cf))
* **app:** WebView pages honor app-selected locale via ?lang= URL param ([#2672](https://github.com/HankHuang0516/EClaw/issues/2672)) ([8ed8757](https://github.com/HankHuang0516/EClaw/commit/8ed8757aec5bf214e837cc0d81bf2b23f1993a91)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **share-chat:** wire rich CTA actions to msgInput ([#2867](https://github.com/HankHuang0516/EClaw/issues/2867)) ([df23b11](https://github.com/HankHuang0516/EClaw/commit/df23b1147d34c59a644a145bbd87c18b96400acc))


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* **usage-api:** /api/usage/{snapshot,timeline} + usage_snapshots table (Plan B Phase 1) ([#2889](https://github.com/HankHuang0516/EClaw/issues/2889)) ([a0d859c](https://github.com/HankHuang0516/EClaw/commit/a0d859c63f0220909dadb2b1952174861ccdce14))
* **community:** 1-click chat button on bot cards + utm tagging ([#2610](https://github.com/HankHuang0516/EClaw/issues/2610)) ([eee97b0](https://github.com/HankHuang0516/EClaw/commit/eee97b0e2e4e74945ec24f218a69a52800b97a66))
* **chat:** accept ?messageId= as deep-link alias ([#2838](https://github.com/HankHuang0516/EClaw/issues/2838)) ([1785a87](https://github.com/HankHuang0516/EClaw/commit/1785a87310426637fd10df83754fb9924c45207f))
* **chat:** add avatar size preference ([#2714](https://github.com/HankHuang0516/EClaw/issues/2714)) ([6fe164a](https://github.com/HankHuang0516/EClaw/commit/6fe164ad8b22fa576d2dd9ad37c0d9fc295b5a83))
* **dashboard:** add Claude and Codex channel guides ([#2640](https://github.com/HankHuang0516/EClaw/issues/2640)) ([c64e4c4](https://github.com/HankHuang0516/EClaw/commit/c64e4c4afc78db58c5cd578f00486dd7b2fd3311))
* **dashboard:** add Claude Code channel guide card ([#2667](https://github.com/HankHuang0516/EClaw/issues/2667)) ([d70d75c](https://github.com/HankHuang0516/EClaw/commit/d70d75c0c8caa8a540358a9aab4556b8c1927a5c))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* **api:** add DELETE /api/entity/queue to clear messageQueue ([#616](https://github.com/HankHuang0516/EClaw/issues/616)) ([16ee3ff](https://github.com/HankHuang0516/EClaw/commit/16ee3ff1c6aa7f8ef187e54e5e7169f2e44f7395))
* **kanban:** add device-scoped card tags ([#2773](https://github.com/HankHuang0516/EClaw/issues/2773)) ([53a387e](https://github.com/HankHuang0516/EClaw/commit/53a387e67ba7bb4f6bed1c427000c4ae8666577a))
* **portal:** add entity selector to petdx-browser ([#2602](https://github.com/HankHuang0516/EClaw/issues/2602)) ([3fa067e](https://github.com/HankHuang0516/EClaw/commit/3fa067e00b38829b48a37cecd33ee81a9a1122d9))
* **kanban:** add explicit card links ([#2721](https://github.com/HankHuang0516/EClaw/issues/2721)) ([ef9f812](https://github.com/HankHuang0516/EClaw/commit/ef9f812a3fcf39efd07fd158ce90951bdd045ac7))
* **kanban:** add explicit done-card reopen flow ([#2801](https://github.com/HankHuang0516/EClaw/issues/2801)) ([5080aac](https://github.com/HankHuang0516/EClaw/commit/5080aacb75047c0deaa379ee708ec85465afd57c))
* **mindmap:** add GET /api/mindmap/graph force-graph projection ([#2680](https://github.com/HankHuang0516/EClaw/issues/2680)) ([a00b2e7](https://github.com/HankHuang0516/EClaw/commit/a00b2e775af2c4c98cd157f760ad87aeeee469f0)), closes [#2679](https://github.com/HankHuang0516/EClaw/issues/2679) [#2679](https://github.com/HankHuang0516/EClaw/issues/2679)
* **dashboard:** add Hermes channel promo card ([#2708](https://github.com/HankHuang0516/EClaw/issues/2708)) ([337aca1](https://github.com/HankHuang0516/EClaw/commit/337aca153d5a1cd7e888c065f00ae54db7872d91))
* **rental:** add listing soft pause ([#2781](https://github.com/HankHuang0516/EClaw/issues/2781)) ([6586b72](https://github.com/HankHuang0516/EClaw/commit/6586b72717ddb1637d91cd3242c8d2ff554f62b4))
* **portal:** add Nagoya 5D4N trip static cross-ref page ([#2689](https://github.com/HankHuang0516/EClaw/issues/2689)) ([2e0efb6](https://github.com/HankHuang0516/EClaw/commit/2e0efb6dcdaff52226cc8854a96747000b12bdff))
* **portal:** add Nagoya image atlas static page ([#2743](https://github.com/HankHuang0516/EClaw/issues/2743)) ([ac026e9](https://github.com/HankHuang0516/EClaw/commit/ac026e9fd2c92ac9437d01edddffc9adf972f6ba))
* **portal:** add Nagoya trip map links and image lightbox ([#2821](https://github.com/HankHuang0516/EClaw/issues/2821)) ([3e40955](https://github.com/HankHuang0516/EClaw/commit/3e40955650a05f45a6b9f7e39e73847705424a03))
* **portal/nagoya:** add parking shortcut buttons next to itinerary places ([#2826](https://github.com/HankHuang0516/EClaw/issues/2826)) ([63968c5](https://github.com/HankHuang0516/EClaw/commit/63968c554d046afc8d978de74e3aacbf7700500d))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **settings:** add rental roster management preview ([#2758](https://github.com/HankHuang0516/EClaw/issues/2758)) ([9706e59](https://github.com/HankHuang0516/EClaw/commit/9706e59ded140a90a6e02348124282bc69d89001))
* **rental:** add renter health chat indicator ([#2690](https://github.com/HankHuang0516/EClaw/issues/2690)) ([36cd2e9](https://github.com/HankHuang0516/EClaw/commit/36cd2e9802be4c7ebb03d3024617fa74aca48ffd))
* **ios:** add Tutorial & Intro entry in Settings ([#2800](https://github.com/HankHuang0516/EClaw/issues/2800)) ([ed83e51](https://github.com/HankHuang0516/EClaw/commit/ed83e51d043bf4cd5865f38dc95a91ed54820d6c))
* **landing:** add Watch Full Demo CTA below hero video ([#2799](https://github.com/HankHuang0516/EClaw/issues/2799)) ([66107c9](https://github.com/HankHuang0516/EClaw/commit/66107c954727551fd34d989a4674daaad9b63968))
* **footer:** add Watch Intro Video link in Info column ([#2798](https://github.com/HankHuang0516/EClaw/issues/2798)) ([d7c6d59](https://github.com/HankHuang0516/EClaw/commit/d7c6d596b69c6a5b257bf1f7a792a407ef9712ad))
* **i18n:** ar iter-2 — fill 623 missing keys against en source ([#2847](https://github.com/HankHuang0516/EClaw/issues/2847)) ([ee94a7a](https://github.com/HankHuang0516/EClaw/commit/ee94a7ae6812b5163efe4284ee4907ca32302f5c))
* **kanban:** backlog launch-gate flag to suppress L1/L2/L3 escalation ([#2855](https://github.com/HankHuang0516/EClaw/issues/2855)) ([cb8bf1b](https://github.com/HankHuang0516/EClaw/commit/cb8bf1bb6421f25214f65e129a8cadccc49cc266)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#4](https://github.com/HankHuang0516/EClaw/issues/4) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **companion:** bridge crafter-station/petdex gallery (1784 pets) ([#2601](https://github.com/HankHuang0516/EClaw/issues/2601)) ([2e245be](https://github.com/HankHuang0516/EClaw/commit/2e245bea6dd47ea7361b927d389188a3c23b6bb3))
* **promo:** chat avatar size feature landing page (self-hosted MP4) ([#2722](https://github.com/HankHuang0516/EClaw/issues/2722)) ([3852210](https://github.com/HankHuang0516/EClaw/commit/3852210d355704d018e3daca6b5f9512a011b210)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **kanban:** cron-spawn jitter + lane backpressure to prevent same-tick wedge ([#2791](https://github.com/HankHuang0516/EClaw/issues/2791)) ([9f414a7](https://github.com/HankHuang0516/EClaw/commit/9f414a731d6393672a0a4189c7b408c529ae5e12)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **portal:** dashboard usage widget — Claude/Codex 5h gauges + 24h chart (Plan B Phase 3) ([#2891](https://github.com/HankHuang0516/EClaw/issues/2891)) ([d18f373](https://github.com/HankHuang0516/EClaw/commit/d18f373857e4bd302437d6bda2a1e01871fbb1db))
* **portal:** dashboard usage widget v2 — Session/Weekly % bars + projects, no cost (Plan B Phase 3.1) ([#2893](https://github.com/HankHuang0516/EClaw/issues/2893)) ([4bc0dc7](https://github.com/HankHuang0516/EClaw/commit/4bc0dc744ed9d54dfd532ebac4b705c7f84ec0a6))
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **info:** embed 75s promo video on Quick Start tab ([#2795](https://github.com/HankHuang0516/EClaw/issues/2795)) ([86c3f70](https://github.com/HankHuang0516/EClaw/commit/86c3f709a95eebbee1241077b807880463f804b6))
* **promo:** embed daily eclaw video 2026-05-14 ([#2786](https://github.com/HankHuang0516/EClaw/issues/2786)) ([718a814](https://github.com/HankHuang0516/EClaw/commit/718a814ab16850bc2b33a1b303841e2c4378ecfa)), closes [#2782](https://github.com/HankHuang0516/EClaw/issues/2782) [#2693](https://github.com/HankHuang0516/EClaw/issues/2693)
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **info:** embed promo video at top of Quick Start tab ([#2797](https://github.com/HankHuang0516/EClaw/issues/2797)) ([047679f](https://github.com/HankHuang0516/EClaw/commit/047679fd57ab9949eaeacea414d5611e71afe041))
* **rental:** enforce strict rebind refunds ([#2703](https://github.com/HankHuang0516/EClaw/issues/2703)) ([a1859c5](https://github.com/HankHuang0516/EClaw/commit/a1859c50e6fb3991d7a8051491502d824a14a116))
* **portal:** group task chip actions ([#2825](https://github.com/HankHuang0516/EClaw/issues/2825)) ([5db5c59](https://github.com/HankHuang0516/EClaw/commit/5db5c59b32b8635f1412205faf0c2f9164d3d5d4))
* **hermes:** H2 health-check cron + 7d SLA + commander alerts (card_07891ac) ([#2922](https://github.com/HankHuang0516/EClaw/issues/2922)) ([82b4315](https://github.com/HankHuang0516/EClaw/commit/82b4315aea234493e3d1889dc53958c2f1d842e0)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **portal:** info-guide-rules + info-guide-soul slide pair ([#2793](https://github.com/HankHuang0516/EClaw/issues/2793)) ([1c8bddc](https://github.com/HankHuang0516/EClaw/commit/1c8bddc4c185054b2b60088498e3d45509117127)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **chat:** link card previews to kanban ([#2754](https://github.com/HankHuang0516/EClaw/issues/2754)) ([2261240](https://github.com/HankHuang0516/EClaw/commit/22612402c2e95efb07246629e81a849be41ee9c7))
* **mission:** link notes to kanban cards ([#2723](https://github.com/HankHuang0516/EClaw/issues/2723)) ([b36dc18](https://github.com/HankHuang0516/EClaw/commit/b36dc18f3a8facf12e0b6046351c222f1e99dc55))
* **usage-daemon:** macOS launchd daemon polls Claude/Codex usage → POST /api/usage/snapshot (Plan B Phase 2) ([#2890](https://github.com/HankHuang0516/EClaw/issues/2890)) ([fd225e1](https://github.com/HankHuang0516/EClaw/commit/fd225e12d9491037be1a340bd63b54b5f3308c7f))
* **mindmap:** mission.html link to /portal/mindmap.html + deprecate /api/mission/mindmap ([#2685](https://github.com/HankHuang0516/EClaw/issues/2685)) ([11e297b](https://github.com/HankHuang0516/EClaw/commit/11e297bab1c9b56fcde3027d6500b7c58891bf18)), closes [#2680](https://github.com/HankHuang0516/EClaw/issues/2680) [#2684](https://github.com/HankHuang0516/EClaw/issues/2684)
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽���伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **portal:** nagoya trip interactive map (Leaflet + OSM, no API key) ([#2888](https://github.com/HankHuang0516/EClaw/issues/2888)) ([ecfdac0](https://github.com/HankHuang0516/EClaw/commit/ecfdac06348c12ee7c6872c6c28d5f82162e7aa9))
* **android:** native tab navigation bridge for portal pages ([#2832](https://github.com/HankHuang0516/EClaw/issues/2832)) ([7e02e6f](https://github.com/HankHuang0516/EClaw/commit/7e02e6f225014e64f08f55035d7b9e5727873343)), closes [#2824](https://github.com/HankHuang0516/EClaw/issues/2824) [#2743](https://github.com/HankHuang0516/EClaw/issues/2743) [#2821](https://github.com/HankHuang0516/EClaw/issues/2821) [#2826](https://github.com/HankHuang0516/EClaw/issues/2826) [#2797](https://github.com/HankHuang0516/EClaw/issues/2797) [#2798](https://github.com/HankHuang0516/EClaw/issues/2798) [#2799](https://github.com/HankHuang0516/EClaw/issues/2799) [#2800](https://github.com/HankHuang0516/EClaw/issues/2800) [#2801](https://github.com/HankHuang0516/EClaw/issues/2801) [#2816](https://github.com/HankHuang0516/EClaw/issues/2816) [#2796](https://github.com/HankHuang0516/EClaw/issues/2796) [#2825](https://github.com/HankHuang0516/EClaw/issues/2825) [#2812](https://github.com/HankHuang0516/EClaw/issues/2812) [#2813](https://github.com/HankHuang0516/EClaw/issues/2813) [#2814](https://github.com/HankHuang0516/EClaw/issues/2814) [#2815](https://github.com/HankHuang0516/EClaw/issues/2815) [#2811](https://github.com/HankHuang0516/EClaw/issues/2811) [#2807](https://github.com/HankHuang0516/EClaw/issues/2807) [#2808](https://github.com/HankHuang0516/EClaw/issues/2808) [#2818](https://github.com/HankHuang0516/EClaw/issues/2818) [#2819](https://github.com/HankHuang0516/EClaw/issues/2819) [#2824](https://github.com/HankHuang0516/EClaw/issues/2824)
* **channel:** outbound backpressure (30/min cap + 429 retry-after) ([#2911](https://github.com/HankHuang0516/EClaw/issues/2911)) ([36dc99c](https://github.com/HankHuang0516/EClaw/commit/36dc99ca78b0e1724a2aaefb5936669077b7a28f))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **settings:** per-entity nudge override UI (Phase 2) ([#2837](https://github.com/HankHuang0516/EClaw/issues/2837)) ([ea7662b](https://github.com/HankHuang0516/EClaw/commit/ea7662b0858882dae461e1387f711895924f9ab8)), closes [3/#4](https://github.com/HankHuang0516/EClaw/issues/4)
* **kanban:** per-entity nudge overrides (Phase 2 of card_e066cb6b) ([#2836](https://github.com/HankHuang0516/EClaw/issues/2836)) ([0425f80](https://github.com/HankHuang0516/EClaw/commit/0425f80bc1169c0d506b665659c8676695c45553))
* **avatar:** petdx render on card-holder my-cards (Phase 1b) ([#2621](https://github.com/HankHuang0516/EClaw/issues/2621)) ([f78ba8b](https://github.com/HankHuang0516/EClaw/commit/f78ba8b18acc426936ab6d8a82ca7541effea00d))
* **avatar:** petdx render on dashboard entity grid / org chart / bindings (Phase 1b) ([#2622](https://github.com/HankHuang0516/EClaw/issues/2622)) ([f417749](https://github.com/HankHuang0516/EClaw/commit/f41774914451048e8cd76e9ae30416a0642e173b)), closes [#2620](https://github.com/HankHuang0516/EClaw/issues/2620) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621)
* **avatar:** petdx render on kanban auto-assign / pulse / comment avatars (Phase 1b) ([#2624](https://github.com/HankHuang0516/EClaw/issues/2624)) ([6bff5f8](https://github.com/HankHuang0516/EClaw/commit/6bff5f80440d0bd91a6b1721cde9478d685c4d46))
* **avatar:** petdx render on mission skill/rule/soul entity dialogs (Phase 1b) ([#2623](https://github.com/HankHuang0516/EClaw/issues/2623)) ([129327b](https://github.com/HankHuang0516/EClaw/commit/129327bc7b91056659f1ab7e8d5e3f5260d951fb))
* **mindmap:** portal/mindmap.html force-graph prototype ([#129](https://github.com/HankHuang0516/EClaw/issues/129)) ([#2681](https://github.com/HankHuang0516/EClaw/issues/2681)) ([0f15e69](https://github.com/HankHuang0516/EClaw/commit/0f15e6930f0697c37fa08f3219edb8f9e499837f)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **channel:** record delivery receipts ([#2913](https://github.com/HankHuang0516/EClaw/issues/2913)) ([90c671b](https://github.com/HankHuang0516/EClaw/commit/90c671bd1970ab51584b90e2b634484ec10cc7ae))
* **portal:** redo nagoya trip page in professional tour-guide style ([#2691](https://github.com/HankHuang0516/EClaw/issues/2691)) ([b2378c0](https://github.com/HankHuang0516/EClaw/commit/b2378c06ee20fa9cccfdceceb1a4c9e0b3072f59))
* **i18n:** remove ms+hi orphan keys from i18n.js ([#2849](https://github.com/HankHuang0516/EClaw/issues/2849)) ([320176c](https://github.com/HankHuang0516/EClaw/commit/320176c06a3cfd8631e2a82ad02a6bd6a9af0389))
* **avatar:** render selected petdx companion in chat avatars ([#2620](https://github.com/HankHuang0516/EClaw/issues/2620)) ([0bdd046](https://github.com/HankHuang0516/EClaw/commit/0bdd046fe1b1c428e32edda366ff112c08927f4c))
* **home:** replace native home with WebView hosting dashboard.html ([#2634](https://github.com/HankHuang0516/EClaw/issues/2634)) ([e69ea81](https://github.com/HankHuang0516/EClaw/commit/e69ea8160c239b083a83d6dc83a4f1c3f901c863))
* **app:** route chat mission jumps through native tabs ([#2824](https://github.com/HankHuang0516/EClaw/issues/2824)) ([deb07b6](https://github.com/HankHuang0516/EClaw/commit/deb07b69a9ecca632fe27278de537f1d85234e94))
* **portal:** scaffold /portal/bot/:id/about backstory page (IP P1) ([#2938](https://github.com/HankHuang0516/EClaw/issues/2938)) ([96d6ca5](https://github.com/HankHuang0516/EClaw/commit/96d6ca506d611e2f9be03d50f76983457277f209))
* **proxy:** scope private repo git auth ([#2926](https://github.com/HankHuang0516/EClaw/issues/2926)) ([246f7ff](https://github.com/HankHuang0516/EClaw/commit/246f7ff1dedaf7bece9e3cb9eb24d0ab32ebb393))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **chat:** support message deep links ([#2719](https://github.com/HankHuang0516/EClaw/issues/2719)) ([2dc0f1e](https://github.com/HankHuang0516/EClaw/commit/2dc0f1eeb259e1a0848db4a03186b989372cd91c))
* **mission:** support note deep links ([#2717](https://github.com/HankHuang0516/EClaw/issues/2717)) ([2efd3a5](https://github.com/HankHuang0516/EClaw/commit/2efd3a5e741217a07c0b0ac54a0ddd010e0ebe23))
* **share-chat:** twitter card + per-bot og:image/twitter:* in SSR ([#2609](https://github.com/HankHuang0516/EClaw/issues/2609)) ([6cdc853](https://github.com/HankHuang0516/EClaw/commit/6cdc853dc884cdb95bd47214942768981f218ae0))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))
* **settings:** wire petdx avatar into channel-account chips ([#2626](https://github.com/HankHuang0516/EClaw/issues/2626)) ([88aec77](https://github.com/HankHuang0516/EClaw/commit/88aec772628c240e97b336bb5820892ad632d1ae))
* **files:** wire petdx avatar into entity filter & per-file badges ([#2627](https://github.com/HankHuang0516/EClaw/issues/2627)) ([5b3e5cc](https://github.com/HankHuang0516/EClaw/commit/5b3e5cc542d9da69bb4e92500fd03a542ea33f00))
* **mindmap:** wrap hardcoded zh-TW UI strings with i18n t() ([#2607](https://github.com/HankHuang0516/EClaw/issues/2607)) ([166af87](https://github.com/HankHuang0516/EClaw/commit/166af8772b2121a24aaf34a83b3de970e9b3b571)), closes [#2606](https://github.com/HankHuang0516/EClaw/issues/2606)
* **i18n:** zh-TW backfill 8 keys (soft-pause + chat + invite + wallet) ([#2815](https://github.com/HankHuang0516/EClaw/issues/2815)) ([a2dd574](https://github.com/HankHuang0516/EClaw/commit/a2dd5743ce8d43a4b6ace9a2fd4b52568180d6c5))


### Performance Improvements

* **mindmap:** force-graph hardening for 1000/2000-node graphs ([#2684](https://github.com/HankHuang0516/EClaw/issues/2684)) ([da8b1c8](https://github.com/HankHuang0516/EClaw/commit/da8b1c8f947ab8bc8fa455c1962a91146623a1fc))


### Reverts

* Revert "feat(telegram): long-poll adapter PoC (card_406e612942ff062a06fc47be) ([#2238](https://github.com/HankHuang0516/EClaw/issues/2238))" ([#2239](https://github.com/HankHuang0516/EClaw/issues/2239)) ([eb7aa92](https://github.com/HankHuang0516/EClaw/commit/eb7aa92cce454b4a1a22654a2d133cdebe78c2bd))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-25)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **notifications:** add kanban_done + kanban_done_auto toggles to Android Settings ([#2636](https://github.com/HankHuang0516/EClaw/issues/2636)) ([a710909](https://github.com/HankHuang0516/EClaw/commit/a7109095e3393b8564e7ef1b23d382a4fbb944b8))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **api:** align /api/platform-stats skill-doc with device-auth contract (card_49b8190) ([#2916](https://github.com/HankHuang0516/EClaw/issues/2916)) ([ee55b2f](https://github.com/HankHuang0516/EClaw/commit/ee55b2fdbfbcd4bead5501d16ee66339056c32d7))
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **i18n:** ar block — fix 27 broken entries (CJK leaks + truncated HTML) ([#2851](https://github.com/HankHuang0516/EClaw/issues/2851)) ([5b19175](https://github.com/HankHuang0516/EClaw/commit/5b19175d712d00d16fcec00b749035c4beae7a5c))
* **chat:** atomic-load target bar (await contacts before first render) ([#2831](https://github.com/HankHuang0516/EClaw/issues/2831)) ([5f529e6](https://github.com/HankHuang0516/EClaw/commit/5f529e6b772eacc38ba1de69b44258a05f0d816a)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2](https://github.com/HankHuang0516/EClaw/issues/2)
* **channel:** await binding persistence ([712516d](https://github.com/HankHuang0516/EClaw/commit/712516decafb745035bd1434a28cc1973d433e19))
* **rental:** bump handshake timeout to 60s + timeout-aware discovery fallback ([#2863](https://github.com/HankHuang0516/EClaw/issues/2863)) ([fd4322f](https://github.com/HankHuang0516/EClaw/commit/fd4322f8890f3c2dfca3acdae6a4b95f19c381f9)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **i18n:** clear batch 1 residual missing keys ([#2790](https://github.com/HankHuang0516/EClaw/issues/2790)) ([211030e](https://github.com/HankHuang0516/EClaw/commit/211030e0b0b6a865c11f0c4ed60dc4e356d43b7a))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **kanban:** comment input no longer overlaps last comment in card detail (PR [#2678](https://github.com/HankHuang0516/EClaw/issues/2678)) ([fba91fc](https://github.com/HankHuang0516/EClaw/commit/fba91fca15402b453a0db5ee857c0b16e6087055))
* **chat:** compact 20px avatar in target bar (App WebView only shows [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2](https://github.com/HankHuang0516/EClaw/issues/2)) ([#2830](https://github.com/HankHuang0516/EClaw/issues/2830)) ([42c7543](https://github.com/HankHuang0516/EClaw/commit/42c7543b4a78a7abf3f5f7535eb9bc6142cd0fe2)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **portal:** complete 401 redirect sweep + mobile UIUX truncation ([#2842](https://github.com/HankHuang0516/EClaw/issues/2842)) ([f9799ba](https://github.com/HankHuang0516/EClaw/commit/f9799ba42498b109f0a8a70e80836aa6da51e216)), closes [#2833](https://github.com/HankHuang0516/EClaw/issues/2833) [#2845](https://github.com/HankHuang0516/EClaw/issues/2845) [#2844](https://github.com/HankHuang0516/EClaw/issues/2844) [#2843](https://github.com/HankHuang0516/EClaw/issues/2843)
* **uiux:** continue qa mobile readability sweep ([#2854](https://github.com/HankHuang0516/EClaw/issues/2854)) ([57606ff](https://github.com/HankHuang0516/EClaw/commit/57606ffe3e543b07a026aacc53c4b470c9a7825b))
* **i18n:** cover dynamic portal wrapper keys ([#2807](https://github.com/HankHuang0516/EClaw/issues/2807)) ([4c711cc](https://github.com/HankHuang0516/EClaw/commit/4c711cc4009300ffe4e8933a98ee01cd0fdd6aeb))
* **i18n:** dedup 20 dash_channel_card_* keys in es block ([#2876](https://github.com/HankHuang0516/EClaw/issues/2876)) ([807284c](https://github.com/HankHuang0516/EClaw/commit/807284ce363ef119ccdb0ae40e5ce99d3f0a27e0))
* **i18n:** dedupe backend locale keys via AST ([#2920](https://github.com/HankHuang0516/EClaw/issues/2920)) ([40ef114](https://github.com/HankHuang0516/EClaw/commit/40ef11414c8b836fe1ed93ec06c839df3a1bf7b9))
* **i18n:** dedupe zh locale keys ([#2919](https://github.com/HankHuang0516/EClaw/issues/2919)) ([afd2cca](https://github.com/HankHuang0516/EClaw/commit/afd2cca8086c2f2df0d04c9c5f8c58733652875e))
* **test:** delegate root test and remove invalid jest option ([#2292](https://github.com/HankHuang0516/EClaw/issues/2292)) ([65bf2f8](https://github.com/HankHuang0516/EClaw/commit/65bf2f83d26d925097cd380ab73b04ab2db49842))
* **kanban:** dep-aware nudge gating + roadmap dependency backfill ([#2904](https://github.com/HankHuang0516/EClaw/issues/2904)) ([2b76ac9](https://github.com/HankHuang0516/EClaw/commit/2b76ac9d3b7e4169b7bc3c6f6b0b0903b63cd9f7)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **rental:** don't pollute entity.message on push gateway timeout ([#2860](https://github.com/HankHuang0516/EClaw/issues/2860)) ([592ba44](https://github.com/HankHuang0516/EClaw/commit/592ba44f57536ee00011b6cbddaa6b129a7cbae9))
* **petdx:** drop dark-grey loading placeholder + preload sprite WEBP ([#2628](https://github.com/HankHuang0516/EClaw/issues/2628)) ([59cef38](https://github.com/HankHuang0516/EClaw/commit/59cef387bd69ca99d7d15c86a1364856d3849ad8)), closes [#1a1a1a](https://github.com/HankHuang0516/EClaw/issues/1a1a1a)
* **gateway-ws:** drop Origin header on server-to-server WS upgrade ([#2869](https://github.com/HankHuang0516/EClaw/issues/2869)) ([716dcf9](https://github.com/HankHuang0516/EClaw/commit/716dcf9d0834b17522bb9d894bad84bc142d1a19))
* **setup-scripts:** drop Origin header on server-to-server WS upgrade ([#2875](https://github.com/HankHuang0516/EClaw/issues/2875)) ([9d893b8](https://github.com/HankHuang0516/EClaw/commit/9d893b8e5eea4db275e450bf423903c156cd3e4b)), closes [#2869](https://github.com/HankHuang0516/EClaw/issues/2869)
* **security:** escape innerHTML in chat modal error messages ([#2819](https://github.com/HankHuang0516/EClaw/issues/2819)) ([dce07ad](https://github.com/HankHuang0516/EClaw/commit/dce07adde64795916dba977ae23e46f3371ce7ed)), closes [#2809](https://github.com/HankHuang0516/EClaw/issues/2809) [#2810](https://github.com/HankHuang0516/EClaw/issues/2810) [#2809](https://github.com/HankHuang0516/EClaw/issues/2809) [#2810](https://github.com/HankHuang0516/EClaw/issues/2810)
* **proxy:** export repo auth to CLI child ([#2928](https://github.com/HankHuang0516/EClaw/issues/2928)) ([336a8ca](https://github.com/HankHuang0516/EClaw/commit/336a8caff4e3663287bd2948cf9fe6e04125cbc8))
* **entities:** expose botSecret to owner so wallpaper service can poll companions ([#2615](https://github.com/HankHuang0516/EClaw/issues/2615)) ([04470fc](https://github.com/HankHuang0516/EClaw/commit/04470fce8f8c3fce2b1ba8b243e776606f107502))
* **rental:** expose owner_public_code in marketplace so plaza CTA can route ([#2616](https://github.com/HankHuang0516/EClaw/issues/2616)) ([4d1372f](https://github.com/HankHuang0516/EClaw/commit/4d1372f717d93cab65543e87c852e74e9fb67071)), closes [#2610](https://github.com/HankHuang0516/EClaw/issues/2610)
* **mindmap:** fallback to device scope when entityId is null ([#2728](https://github.com/HankHuang0516/EClaw/issues/2728)) ([7572312](https://github.com/HankHuang0516/EClaw/commit/7572312433d3d75fc245eda48a28919ce14bd927))
* **i18n:** fill 11 missing zh keys post-[#2920](https://github.com/HankHuang0516/EClaw/issues/2920)/[#2921](https://github.com/HankHuang0516/EClaw/issues/2921) (card_de6970) ([#2924](https://github.com/HankHuang0516/EClaw/issues/2924)) ([17c4899](https://github.com/HankHuang0516/EClaw/commit/17c48996489b1444d6ed589027acfa7986178fe1)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** fill backend runtime locale gaps ([#2921](https://github.com/HankHuang0516/EClaw/issues/2921)) ([00d96ff](https://github.com/HankHuang0516/EClaw/commit/00d96ff261b8134b49292623e1f786fd544144cc))
* **i18n:** fill Spanish drift keys ([#2751](https://github.com/HankHuang0516/EClaw/issues/2751)) ([0ad0ee5](https://github.com/HankHuang0516/EClaw/commit/0ad0ee55f7fac3e6ac46d891539950dab4d553cc))
* **portal:** fit embedded org chart to mobile viewport ([#2674](https://github.com/HankHuang0516/EClaw/issues/2674)) ([1c4e1b4](https://github.com/HankHuang0516/EClaw/commit/1c4e1b413ea7027b4cd4b8ecda981b0d0e12e66b))
* **i18n:** fix 6 trailing-comma syntax errors in 10-locale batch ([#2771](https://github.com/HankHuang0516/EClaw/issues/2771)) ([b27c6ca](https://github.com/HankHuang0516/EClaw/commit/b27c6ca204bf813e406c54ce3a2532a5f1f031b3))
* **kanban:** GET card returns latest 50 comments + comments endpoint exposes total ([#2816](https://github.com/HankHuang0516/EClaw/issues/2816)) ([c4d83f7](https://github.com/HankHuang0516/EClaw/commit/c4d83f777a1cd26aea0936e4316aa35c52822eef))
* **sharechat:** guest verify-email modal + disabled Send for unverified ([#2865](https://github.com/HankHuang0516/EClaw/issues/2865)) ([cb3b061](https://github.com/HankHuang0516/EClaw/commit/cb3b0614e0f6160417d907753e66eceb2d666802))
* **portal:** H4 showcase i18n data-attrs + raw key leak ([#2935](https://github.com/HankHuang0516/EClaw/issues/2935)) ([80d8587](https://github.com/HankHuang0516/EClaw/commit/80d8587c00c03f72fdb9756b1093ee8e1e3d0842)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **uiux:** harden chat previews and roster preview ([#2769](https://github.com/HankHuang0516/EClaw/issues/2769)) ([466d4d3](https://github.com/HankHuang0516/EClaw/commit/466d4d3ef81c628d3f58db64323946053d7bf61c))
* **mention-parser:** ignore @-mentions inside markdown code spans ([#2645](https://github.com/HankHuang0516/EClaw/issues/2645)) ([8da19d4](https://github.com/HankHuang0516/EClaw/commit/8da19d4a79ceb4152bf2144ee0847c61ce3e1def)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **kanban:** lazy-load dependency chips via IntersectionObserver ([#2632](https://github.com/HankHuang0516/EClaw/issues/2632)) ([20586b4](https://github.com/HankHuang0516/EClaw/commit/20586b43357335f9eb6a190c02d58c8e36b58aba)), closes [#2631](https://github.com/HankHuang0516/EClaw/issues/2631)
* **i18n:** localize FCM NotificationChannel labels (card_ec8d3a22) ([#2918](https://github.com/HankHuang0516/EClaw/issues/2918)) ([591cd20](https://github.com/HankHuang0516/EClaw/commit/591cd206704693650a53d19d94c4cc75daf84ffd))
* **kanban:** make card sorting deterministic ([#2756](https://github.com/HankHuang0516/EClaw/issues/2756)) ([48e2117](https://github.com/HankHuang0516/EClaw/commit/48e2117b64e37f05dc635e0a3b67bfd43cbe48f5))
* **portal/nagoya-trip:** map-link invisible on dark hero/day-banner ([#2897](https://github.com/HankHuang0516/EClaw/issues/2897)) ([cc33df6](https://github.com/HankHuang0516/EClaw/commit/cc33df686673455c20beaee60871412a5d486e66)), closes [#1f4030](https://github.com/HankHuang0516/EClaw/issues/1f4030) [#8b8579](https://github.com/HankHuang0516/EClaw/issues/8b8579) [#6e6859](https://github.com/HankHuang0516/EClaw/issues/6e6859) [#7a5614](https://github.com/HankHuang0516/EClaw/issues/7a5614)
* **org-chart:** notify affected bots on hierarchy change ([#2812](https://github.com/HankHuang0516/EClaw/issues/2812)) ([55675fd](https://github.com/HankHuang0516/EClaw/commit/55675fdf4487494d729a29524b32bd81b756a00c)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** notify reviewer on manual /move → review ([#2753](https://github.com/HankHuang0516/EClaw/issues/2753)) ([6cbbb4e](https://github.com/HankHuang0516/EClaw/commit/6cbbb4ee8c0d4d8ad54df2e9b5faaa3699bd530f))
* **wallpaper:** off-load spritesheet fetch to IO so per-petdx sprites actually render ([#2618](https://github.com/HankHuang0516/EClaw/issues/2618)) ([61b832c](https://github.com/HankHuang0516/EClaw/commit/61b832c9fa8a1d0caab810ccc942d85c63349267)), closes [#2615](https://github.com/HankHuang0516/EClaw/issues/2615) [#2577](https://github.com/HankHuang0516/EClaw/issues/2577)
* **security:** patch P0 sanitize-html XSS + P1 protobufjs + exam.html XSS ([#2829](https://github.com/HankHuang0516/EClaw/issues/2829)) ([c71b871](https://github.com/HankHuang0516/EClaw/commit/c71b871a045887375dd0d26d1a3280a0891a89ad))
* **security:** patch ws uninitialized memory disclosure (GHSA-58qx-3vcg-4xpx) ([#2872](https://github.com/HankHuang0516/EClaw/issues/2872)) ([2523d15](https://github.com/HankHuang0516/EClaw/commit/2523d154bbe501a7cc086340f7a07ece3abfa69b))
* **portal:** petdx-browser cookie-session fallback for device-login ([#2757](https://github.com/HankHuang0516/EClaw/issues/2757)) ([ca275f4](https://github.com/HankHuang0516/EClaw/commit/ca275f4519835da0c7ad71c588908a18f6f138d8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **api:** platform-stats 500 + entity/lookup publicCode alias ([#2809](https://github.com/HankHuang0516/EClaw/issues/2809), [#2810](https://github.com/HankHuang0516/EClaw/issues/2810)) ([#2818](https://github.com/HankHuang0516/EClaw/issues/2818)) ([f99fd17](https://github.com/HankHuang0516/EClaw/commit/f99fd17b2b1c32d88daa2510ff66d714c1a53edc))
* **i18n:** positional format specifiers for feedback_result_logs (7 locales) ([#2597](https://github.com/HankHuang0516/EClaw/issues/2597)) ([21aedc7](https://github.com/HankHuang0516/EClaw/commit/21aedc7eebc7a2839e340136f38dfdfd4dabb9dc))
* **avatar-petdx:** preserve descriptor across transient API failures (flicker) ([#2625](https://github.com/HankHuang0516/EClaw/issues/2625)) ([7b1c606](https://github.com/HankHuang0516/EClaw/commit/7b1c606514f7698d72ec95cf6c556e4043966186))
* **chat:** preserve recipient selection across rental-health refresh (P0 #card_eb1cba76) ([#2906](https://github.com/HankHuang0516/EClaw/issues/2906)) ([9cc0301](https://github.com/HankHuang0516/EClaw/commit/9cc0301cc26a0f49af4b7f53486f5c1a7cdd7902)), closes [#card_eb1cba76](https://github.com/HankHuang0516/EClaw/issues/card_eb1cba76) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **chat:** preserve scroll anchor while reading history ([#2693](https://github.com/HankHuang0516/EClaw/issues/2693)) ([945fdb7](https://github.com/HankHuang0516/EClaw/commit/945fdb7192b791b31882e1e75568dd8b11e4686f))
* **promo:** pull video embed from /promo-chat-avatar.html ([#2724](https://github.com/HankHuang0516/EClaw/issues/2724)) ([2afabc8](https://github.com/HankHuang0516/EClaw/commit/2afabc8c5ff8b25218a7cb857e8adfa572c8e9d5))
* **dashboard:** read live.rate_limits.{five_hour,seven_day}.used_percentage ([#2895](https://github.com/HankHuang0516/EClaw/issues/2895)) ([8223303](https://github.com/HankHuang0516/EClaw/commit/822330312bccb1c76675ad2c3b26e78d10dd1298))
* **kanban:** realign stale recurring schedules ([#2785](https://github.com/HankHuang0516/EClaw/issues/2785)) ([ab8ee25](https://github.com/HankHuang0516/EClaw/commit/ab8ee250a9b37f3d3e838bb01d8866c8d2b78231))
* **i18n:** reapply de6970 locale gap translations ([#2925](https://github.com/HankHuang0516/EClaw/issues/2925)) ([d994dc1](https://github.com/HankHuang0516/EClaw/commit/d994dc1d240fef72326db2599262375ccbf29175))
* **portal:** reduce QA-discovered request fanout ([#2656](https://github.com/HankHuang0516/EClaw/issues/2656)) ([1e46d6b](https://github.com/HankHuang0516/EClaw/commit/1e46d6bab61e58c65b452b6503d953f8dddeee75))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **portal:** remove org chart fit scale floor ([#2676](https://github.com/HankHuang0516/EClaw/issues/2676)) ([0f01606](https://github.com/HankHuang0516/EClaw/commit/0f016068b963bb5f800a02f28817c7174979d913))
* **rental:** remove phantom 'webhook test push' step from BIND_COMPLETE ([#2864](https://github.com/HankHuang0516/EClaw/issues/2864)) ([47f4a3e](https://github.com/HankHuang0516/EClaw/commit/47f4a3edf76aa95ebd06d8713cd44fda6eef9b5d))
* **i18n:** rename mm_empty_title → mm_state_empty_title in mindmap.html ([#2683](https://github.com/HankHuang0516/EClaw/issues/2683)) ([c79c109](https://github.com/HankHuang0516/EClaw/commit/c79c109bea23142e8a6d9ace976d105af1280ec9))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **chat:** render mention avatars with companion renderer ([#2633](https://github.com/HankHuang0516/EClaw/issues/2633)) ([03e205f](https://github.com/HankHuang0516/EClaw/commit/03e205f663ecd2c2f443d4009dd5af0093f0bbbb))
* **kanban:** reserve mobile comments panel height ([#2782](https://github.com/HankHuang0516/EClaw/issues/2782)) ([ce8662d](https://github.com/HankHuang0516/EClaw/commit/ce8662d362422fdd25037f1deb61dbed9425e2f9))
* **channel:** restore handshake fallback to discovered sessions ([#2915](https://github.com/HankHuang0516/EClaw/issues/2915)) ([#2917](https://github.com/HankHuang0516/EClaw/issues/2917)) ([9d7d3a2](https://github.com/HankHuang0516/EClaw/commit/9d7d3a25654289998314dd5ca152cefdb8a4d64e)), closes [#2912](https://github.com/HankHuang0516/EClaw/issues/2912)
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* scheduled audit 2026-05-13 — 6 bugs, XSS, i18n ([#2668](https://github.com/HankHuang0516/EClaw/issues/2668)) ([21dd513](https://github.com/HankHuang0516/EClaw/commit/21dd513b4464738de29164265437435ba6cc4817)), closes [#2605](https://github.com/HankHuang0516/EClaw/issues/2605) [#2608](https://github.com/HankHuang0516/EClaw/issues/2608) [#2600](https://github.com/HankHuang0516/EClaw/issues/2600) [#2599](https://github.com/HankHuang0516/EClaw/issues/2599) [#2598](https://github.com/HankHuang0516/EClaw/issues/2598)
* **channel:** scope official bot sessions ([#2912](https://github.com/HankHuang0516/EClaw/issues/2912)) ([5c56b62](https://github.com/HankHuang0516/EClaw/commit/5c56b62c13b739b76f39e168a26bd4e5de2644fb))
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **dashboard:** show Claude weekly bar reset countdown ([#2896](https://github.com/HankHuang0516/EClaw/issues/2896)) ([3b87845](https://github.com/HankHuang0516/EClaw/commit/3b87845d713e980fec69f6b8007549338a326713)), closes [#2895](https://github.com/HankHuang0516/EClaw/issues/2895)
* **chat:** smart-chip preview falls back to inline c.comments when /comments fails (PR [#2677](https://github.com/HankHuang0516/EClaw/issues/2677)) ([7f4dffd](https://github.com/HankHuang0516/EClaw/commit/7f4dffd2c83ea86f296b8fa0610f0e67c9f1af11))
* **kanban:** stabilize comment detail viewport ([#2796](https://github.com/HankHuang0516/EClaw/issues/2796)) ([0a10aad](https://github.com/HankHuang0516/EClaw/commit/0a10aadb5a5b12ff23454c16d5c88183b94ad7d7))
* **wallpaper:** stop Android live wallpaper flashing default lobster on companion change ([#2629](https://github.com/HankHuang0516/EClaw/issues/2629)) ([8b4f66f](https://github.com/HankHuang0516/EClaw/commit/8b4f66fcb335bf43128f924b761b6337c817095b)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **chat:** stop chat.html bouncing to dashboard via /api/rental/health-status 401 race ([#2833](https://github.com/HankHuang0516/EClaw/issues/2833)) ([c422406](https://github.com/HankHuang0516/EClaw/commit/c4224067cdcfe7f3e22ab95007c7563dac4196ac))
* **openclaw-channel:** support OpenClaw 2026.5.20 ([8045de6](https://github.com/HankHuang0516/EClaw/commit/8045de6bebecfc05f9bd57453b99c098ca35681b))
* **mentions:** support same-device CJK display-name tags ([#2874](https://github.com/HankHuang0516/EClaw/issues/2874)) ([b8f61be](https://github.com/HankHuang0516/EClaw/commit/b8f61be9a3962fef75dd32ea34e8900880dafaf9))
* **channel:** suppress operational A2A loop messages (rebase of [#2288](https://github.com/HankHuang0516/EClaw/issues/2288)) ([#2930](https://github.com/HankHuang0516/EClaw/issues/2930)) ([7ceabc9](https://github.com/HankHuang0516/EClaw/commit/7ceabc915df22123cb46ae1500e2eb2e279250af))
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **dashboard:** use sessions[].project for widget Projects list (was .project_id) ([#2894](https://github.com/HankHuang0516/EClaw/issues/2894)) ([0fd1334](https://github.com/HankHuang0516/EClaw/commit/0fd1334897d4a603cc6eb74f34b48606547e09cf))
* **app:** WebView pages honor app-selected locale via ?lang= URL param ([#2672](https://github.com/HankHuang0516/EClaw/issues/2672)) ([8ed8757](https://github.com/HankHuang0516/EClaw/commit/8ed8757aec5bf214e837cc0d81bf2b23f1993a91)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **share-chat:** wire rich CTA actions to msgInput ([#2867](https://github.com/HankHuang0516/EClaw/issues/2867)) ([df23b11](https://github.com/HankHuang0516/EClaw/commit/df23b1147d34c59a644a145bbd87c18b96400acc))


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* **usage-api:** /api/usage/{snapshot,timeline} + usage_snapshots table (Plan B Phase 1) ([#2889](https://github.com/HankHuang0516/EClaw/issues/2889)) ([a0d859c](https://github.com/HankHuang0516/EClaw/commit/a0d859c63f0220909dadb2b1952174861ccdce14))
* **community:** 1-click chat button on bot cards + utm tagging ([#2610](https://github.com/HankHuang0516/EClaw/issues/2610)) ([eee97b0](https://github.com/HankHuang0516/EClaw/commit/eee97b0e2e4e74945ec24f218a69a52800b97a66))
* **chat:** accept ?messageId= as deep-link alias ([#2838](https://github.com/HankHuang0516/EClaw/issues/2838)) ([1785a87](https://github.com/HankHuang0516/EClaw/commit/1785a87310426637fd10df83754fb9924c45207f))
* **chat:** add avatar size preference ([#2714](https://github.com/HankHuang0516/EClaw/issues/2714)) ([6fe164a](https://github.com/HankHuang0516/EClaw/commit/6fe164ad8b22fa576d2dd9ad37c0d9fc295b5a83))
* **dashboard:** add Claude and Codex channel guides ([#2640](https://github.com/HankHuang0516/EClaw/issues/2640)) ([c64e4c4](https://github.com/HankHuang0516/EClaw/commit/c64e4c4afc78db58c5cd578f00486dd7b2fd3311))
* **dashboard:** add Claude Code channel guide card ([#2667](https://github.com/HankHuang0516/EClaw/issues/2667)) ([d70d75c](https://github.com/HankHuang0516/EClaw/commit/d70d75c0c8caa8a540358a9aab4556b8c1927a5c))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* **kanban:** add device-scoped card tags ([#2773](https://github.com/HankHuang0516/EClaw/issues/2773)) ([53a387e](https://github.com/HankHuang0516/EClaw/commit/53a387e67ba7bb4f6bed1c427000c4ae8666577a))
* **portal:** add entity selector to petdx-browser ([#2602](https://github.com/HankHuang0516/EClaw/issues/2602)) ([3fa067e](https://github.com/HankHuang0516/EClaw/commit/3fa067e00b38829b48a37cecd33ee81a9a1122d9))
* **kanban:** add explicit card links ([#2721](https://github.com/HankHuang0516/EClaw/issues/2721)) ([ef9f812](https://github.com/HankHuang0516/EClaw/commit/ef9f812a3fcf39efd07fd158ce90951bdd045ac7))
* **kanban:** add explicit done-card reopen flow ([#2801](https://github.com/HankHuang0516/EClaw/issues/2801)) ([5080aac](https://github.com/HankHuang0516/EClaw/commit/5080aacb75047c0deaa379ee708ec85465afd57c))
* **mindmap:** add GET /api/mindmap/graph force-graph projection ([#2680](https://github.com/HankHuang0516/EClaw/issues/2680)) ([a00b2e7](https://github.com/HankHuang0516/EClaw/commit/a00b2e775af2c4c98cd157f760ad87aeeee469f0)), closes [#2679](https://github.com/HankHuang0516/EClaw/issues/2679) [#2679](https://github.com/HankHuang0516/EClaw/issues/2679)
* **dashboard:** add Hermes channel promo card ([#2708](https://github.com/HankHuang0516/EClaw/issues/2708)) ([337aca1](https://github.com/HankHuang0516/EClaw/commit/337aca153d5a1cd7e888c065f00ae54db7872d91))
* **rental:** add listing soft pause ([#2781](https://github.com/HankHuang0516/EClaw/issues/2781)) ([6586b72](https://github.com/HankHuang0516/EClaw/commit/6586b72717ddb1637d91cd3242c8d2ff554f62b4))
* **portal:** add Nagoya 5D4N trip static cross-ref page ([#2689](https://github.com/HankHuang0516/EClaw/issues/2689)) ([2e0efb6](https://github.com/HankHuang0516/EClaw/commit/2e0efb6dcdaff52226cc8854a96747000b12bdff))
* **portal:** add Nagoya image atlas static page ([#2743](https://github.com/HankHuang0516/EClaw/issues/2743)) ([ac026e9](https://github.com/HankHuang0516/EClaw/commit/ac026e9fd2c92ac9437d01edddffc9adf972f6ba))
* **portal:** add Nagoya trip map links and image lightbox ([#2821](https://github.com/HankHuang0516/EClaw/issues/2821)) ([3e40955](https://github.com/HankHuang0516/EClaw/commit/3e40955650a05f45a6b9f7e39e73847705424a03))
* **portal/nagoya:** add parking shortcut buttons next to itinerary places ([#2826](https://github.com/HankHuang0516/EClaw/issues/2826)) ([63968c5](https://github.com/HankHuang0516/EClaw/commit/63968c554d046afc8d978de74e3aacbf7700500d))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **settings:** add rental roster management preview ([#2758](https://github.com/HankHuang0516/EClaw/issues/2758)) ([9706e59](https://github.com/HankHuang0516/EClaw/commit/9706e59ded140a90a6e02348124282bc69d89001))
* **rental:** add renter health chat indicator ([#2690](https://github.com/HankHuang0516/EClaw/issues/2690)) ([36cd2e9](https://github.com/HankHuang0516/EClaw/commit/36cd2e9802be4c7ebb03d3024617fa74aca48ffd))
* **ios:** add Tutorial & Intro entry in Settings ([#2800](https://github.com/HankHuang0516/EClaw/issues/2800)) ([ed83e51](https://github.com/HankHuang0516/EClaw/commit/ed83e51d043bf4cd5865f38dc95a91ed54820d6c))
* **landing:** add Watch Full Demo CTA below hero video ([#2799](https://github.com/HankHuang0516/EClaw/issues/2799)) ([66107c9](https://github.com/HankHuang0516/EClaw/commit/66107c954727551fd34d989a4674daaad9b63968))
* **footer:** add Watch Intro Video link in Info column ([#2798](https://github.com/HankHuang0516/EClaw/issues/2798)) ([d7c6d59](https://github.com/HankHuang0516/EClaw/commit/d7c6d596b69c6a5b257bf1f7a792a407ef9712ad))
* **i18n:** ar iter-2 — fill 623 missing keys against en source ([#2847](https://github.com/HankHuang0516/EClaw/issues/2847)) ([ee94a7a](https://github.com/HankHuang0516/EClaw/commit/ee94a7ae6812b5163efe4284ee4907ca32302f5c))
* **kanban:** backlog launch-gate flag to suppress L1/L2/L3 escalation ([#2855](https://github.com/HankHuang0516/EClaw/issues/2855)) ([cb8bf1b](https://github.com/HankHuang0516/EClaw/commit/cb8bf1bb6421f25214f65e129a8cadccc49cc266)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#4](https://github.com/HankHuang0516/EClaw/issues/4) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **companion:** bridge crafter-station/petdex gallery (1784 pets) ([#2601](https://github.com/HankHuang0516/EClaw/issues/2601)) ([2e245be](https://github.com/HankHuang0516/EClaw/commit/2e245bea6dd47ea7361b927d389188a3c23b6bb3))
* **promo:** chat avatar size feature landing page (self-hosted MP4) ([#2722](https://github.com/HankHuang0516/EClaw/issues/2722)) ([3852210](https://github.com/HankHuang0516/EClaw/commit/3852210d355704d018e3daca6b5f9512a011b210)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **kanban:** cron-spawn jitter + lane backpressure to prevent same-tick wedge ([#2791](https://github.com/HankHuang0516/EClaw/issues/2791)) ([9f414a7](https://github.com/HankHuang0516/EClaw/commit/9f414a731d6393672a0a4189c7b408c529ae5e12)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **portal:** dashboard usage widget — Claude/Codex 5h gauges + 24h chart (Plan B Phase 3) ([#2891](https://github.com/HankHuang0516/EClaw/issues/2891)) ([d18f373](https://github.com/HankHuang0516/EClaw/commit/d18f373857e4bd302437d6bda2a1e01871fbb1db))
* **portal:** dashboard usage widget v2 — Session/Weekly % bars + projects, no cost (Plan B Phase 3.1) ([#2893](https://github.com/HankHuang0516/EClaw/issues/2893)) ([4bc0dc7](https://github.com/HankHuang0516/EClaw/commit/4bc0dc744ed9d54dfd532ebac4b705c7f84ec0a6))
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **info:** embed 75s promo video on Quick Start tab ([#2795](https://github.com/HankHuang0516/EClaw/issues/2795)) ([86c3f70](https://github.com/HankHuang0516/EClaw/commit/86c3f709a95eebbee1241077b807880463f804b6))
* **promo:** embed daily eclaw video 2026-05-14 ([#2786](https://github.com/HankHuang0516/EClaw/issues/2786)) ([718a814](https://github.com/HankHuang0516/EClaw/commit/718a814ab16850bc2b33a1b303841e2c4378ecfa)), closes [#2782](https://github.com/HankHuang0516/EClaw/issues/2782) [#2693](https://github.com/HankHuang0516/EClaw/issues/2693)
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **info:** embed promo video at top of Quick Start tab ([#2797](https://github.com/HankHuang0516/EClaw/issues/2797)) ([047679f](https://github.com/HankHuang0516/EClaw/commit/047679fd57ab9949eaeacea414d5611e71afe041))
* **rental:** enforce strict rebind refunds ([#2703](https://github.com/HankHuang0516/EClaw/issues/2703)) ([a1859c5](https://github.com/HankHuang0516/EClaw/commit/a1859c50e6fb3991d7a8051491502d824a14a116))
* **portal:** group task chip actions ([#2825](https://github.com/HankHuang0516/EClaw/issues/2825)) ([5db5c59](https://github.com/HankHuang0516/EClaw/commit/5db5c59b32b8635f1412205faf0c2f9164d3d5d4))
* **hermes:** H2 health-check cron + 7d SLA + commander alerts (card_07891ac) ([#2922](https://github.com/HankHuang0516/EClaw/issues/2922)) ([82b4315](https://github.com/HankHuang0516/EClaw/commit/82b4315aea234493e3d1889dc53958c2f1d842e0)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **portal:** info-guide-rules + info-guide-soul slide pair ([#2793](https://github.com/HankHuang0516/EClaw/issues/2793)) ([1c8bddc](https://github.com/HankHuang0516/EClaw/commit/1c8bddc4c185054b2b60088498e3d45509117127)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **chat:** link card previews to kanban ([#2754](https://github.com/HankHuang0516/EClaw/issues/2754)) ([2261240](https://github.com/HankHuang0516/EClaw/commit/22612402c2e95efb07246629e81a849be41ee9c7))
* **mission:** link notes to kanban cards ([#2723](https://github.com/HankHuang0516/EClaw/issues/2723)) ([b36dc18](https://github.com/HankHuang0516/EClaw/commit/b36dc18f3a8facf12e0b6046351c222f1e99dc55))
* **usage-daemon:** macOS launchd daemon polls Claude/Codex usage → POST /api/usage/snapshot (Plan B Phase 2) ([#2890](https://github.com/HankHuang0516/EClaw/issues/2890)) ([fd225e1](https://github.com/HankHuang0516/EClaw/commit/fd225e12d9491037be1a340bd63b54b5f3308c7f))
* **mindmap:** mission.html link to /portal/mindmap.html + deprecate /api/mission/mindmap ([#2685](https://github.com/HankHuang0516/EClaw/issues/2685)) ([11e297b](https://github.com/HankHuang0516/EClaw/commit/11e297bab1c9b56fcde3027d6500b7c58891bf18)), closes [#2680](https://github.com/HankHuang0516/EClaw/issues/2680) [#2684](https://github.com/HankHuang0516/EClaw/issues/2684)
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **portal:** nagoya trip interactive map (Leaflet + OSM, no API key) ([#2888](https://github.com/HankHuang0516/EClaw/issues/2888)) ([ecfdac0](https://github.com/HankHuang0516/EClaw/commit/ecfdac06348c12ee7c6872c6c28d5f82162e7aa9))
* **android:** native tab navigation bridge for portal pages ([#2832](https://github.com/HankHuang0516/EClaw/issues/2832)) ([7e02e6f](https://github.com/HankHuang0516/EClaw/commit/7e02e6f225014e64f08f55035d7b9e5727873343)), closes [#2824](https://github.com/HankHuang0516/EClaw/issues/2824) [#2743](https://github.com/HankHuang0516/EClaw/issues/2743) [#2821](https://github.com/HankHuang0516/EClaw/issues/2821) [#2826](https://github.com/HankHuang0516/EClaw/issues/2826) [#2797](https://github.com/HankHuang0516/EClaw/issues/2797) [#2798](https://github.com/HankHuang0516/EClaw/issues/2798) [#2799](https://github.com/HankHuang0516/EClaw/issues/2799) [#2800](https://github.com/HankHuang0516/EClaw/issues/2800) [#2801](https://github.com/HankHuang0516/EClaw/issues/2801) [#2816](https://github.com/HankHuang0516/EClaw/issues/2816) [#2796](https://github.com/HankHuang0516/EClaw/issues/2796) [#2825](https://github.com/HankHuang0516/EClaw/issues/2825) [#2812](https://github.com/HankHuang0516/EClaw/issues/2812) [#2813](https://github.com/HankHuang0516/EClaw/issues/2813) [#2814](https://github.com/HankHuang0516/EClaw/issues/2814) [#2815](https://github.com/HankHuang0516/EClaw/issues/2815) [#2811](https://github.com/HankHuang0516/EClaw/issues/2811) [#2807](https://github.com/HankHuang0516/EClaw/issues/2807) [#2808](https://github.com/HankHuang0516/EClaw/issues/2808) [#2818](https://github.com/HankHuang0516/EClaw/issues/2818) [#2819](https://github.com/HankHuang0516/EClaw/issues/2819) [#2824](https://github.com/HankHuang0516/EClaw/issues/2824)
* **channel:** outbound backpressure (30/min cap + 429 retry-after) ([#2911](https://github.com/HankHuang0516/EClaw/issues/2911)) ([36dc99c](https://github.com/HankHuang0516/EClaw/commit/36dc99ca78b0e1724a2aaefb5936669077b7a28f))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **settings:** per-entity nudge override UI (Phase 2) ([#2837](https://github.com/HankHuang0516/EClaw/issues/2837)) ([ea7662b](https://github.com/HankHuang0516/EClaw/commit/ea7662b0858882dae461e1387f711895924f9ab8)), closes [3/#4](https://github.com/HankHuang0516/EClaw/issues/4)
* **kanban:** per-entity nudge overrides (Phase 2 of card_e066cb6b) ([#2836](https://github.com/HankHuang0516/EClaw/issues/2836)) ([0425f80](https://github.com/HankHuang0516/EClaw/commit/0425f80bc1169c0d506b665659c8676695c45553))
* **avatar:** petdx render on card-holder my-cards (Phase 1b) ([#2621](https://github.com/HankHuang0516/EClaw/issues/2621)) ([f78ba8b](https://github.com/HankHuang0516/EClaw/commit/f78ba8b18acc426936ab6d8a82ca7541effea00d))
* **avatar:** petdx render on dashboard entity grid / org chart / bindings (Phase 1b) ([#2622](https://github.com/HankHuang0516/EClaw/issues/2622)) ([f417749](https://github.com/HankHuang0516/EClaw/commit/f41774914451048e8cd76e9ae30416a0642e173b)), closes [#2620](https://github.com/HankHuang0516/EClaw/issues/2620) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621)
* **avatar:** petdx render on kanban auto-assign / pulse / comment avatars (Phase 1b) ([#2624](https://github.com/HankHuang0516/EClaw/issues/2624)) ([6bff5f8](https://github.com/HankHuang0516/EClaw/commit/6bff5f80440d0bd91a6b1721cde9478d685c4d46))
* **avatar:** petdx render on mission skill/rule/soul entity dialogs (Phase 1b) ([#2623](https://github.com/HankHuang0516/EClaw/issues/2623)) ([129327b](https://github.com/HankHuang0516/EClaw/commit/129327bc7b91056659f1ab7e8d5e3f5260d951fb))
* **mindmap:** portal/mindmap.html force-graph prototype ([#129](https://github.com/HankHuang0516/EClaw/issues/129)) ([#2681](https://github.com/HankHuang0516/EClaw/issues/2681)) ([0f15e69](https://github.com/HankHuang0516/EClaw/commit/0f15e6930f0697c37fa08f3219edb8f9e499837f)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **channel:** record delivery receipts ([#2913](https://github.com/HankHuang0516/EClaw/issues/2913)) ([90c671b](https://github.com/HankHuang0516/EClaw/commit/90c671bd1970ab51584b90e2b634484ec10cc7ae))
* **portal:** redo nagoya trip page in professional tour-guide style ([#2691](https://github.com/HankHuang0516/EClaw/issues/2691)) ([b2378c0](https://github.com/HankHuang0516/EClaw/commit/b2378c06ee20fa9cccfdceceb1a4c9e0b3072f59))
* **i18n:** remove ms+hi orphan keys from i18n.js ([#2849](https://github.com/HankHuang0516/EClaw/issues/2849)) ([320176c](https://github.com/HankHuang0516/EClaw/commit/320176c06a3cfd8631e2a82ad02a6bd6a9af0389))
* **avatar:** render selected petdx companion in chat avatars ([#2620](https://github.com/HankHuang0516/EClaw/issues/2620)) ([0bdd046](https://github.com/HankHuang0516/EClaw/commit/0bdd046fe1b1c428e32edda366ff112c08927f4c))
* **home:** replace native home with WebView hosting dashboard.html ([#2634](https://github.com/HankHuang0516/EClaw/issues/2634)) ([e69ea81](https://github.com/HankHuang0516/EClaw/commit/e69ea8160c239b083a83d6dc83a4f1c3f901c863))
* **app:** route chat mission jumps through native tabs ([#2824](https://github.com/HankHuang0516/EClaw/issues/2824)) ([deb07b6](https://github.com/HankHuang0516/EClaw/commit/deb07b69a9ecca632fe27278de537f1d85234e94))
* **proxy:** scope private repo git auth ([#2926](https://github.com/HankHuang0516/EClaw/issues/2926)) ([246f7ff](https://github.com/HankHuang0516/EClaw/commit/246f7ff1dedaf7bece9e3cb9eb24d0ab32ebb393))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **chat:** support message deep links ([#2719](https://github.com/HankHuang0516/EClaw/issues/2719)) ([2dc0f1e](https://github.com/HankHuang0516/EClaw/commit/2dc0f1eeb259e1a0848db4a03186b989372cd91c))
* **mission:** support note deep links ([#2717](https://github.com/HankHuang0516/EClaw/issues/2717)) ([2efd3a5](https://github.com/HankHuang0516/EClaw/commit/2efd3a5e741217a07c0b0ac54a0ddd010e0ebe23))
* **share-chat:** twitter card + per-bot og:image/twitter:* in SSR ([#2609](https://github.com/HankHuang0516/EClaw/issues/2609)) ([6cdc853](https://github.com/HankHuang0516/EClaw/commit/6cdc853dc884cdb95bd47214942768981f218ae0))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))
* **settings:** wire petdx avatar into channel-account chips ([#2626](https://github.com/HankHuang0516/EClaw/issues/2626)) ([88aec77](https://github.com/HankHuang0516/EClaw/commit/88aec772628c240e97b336bb5820892ad632d1ae))
* **files:** wire petdx avatar into entity filter & per-file badges ([#2627](https://github.com/HankHuang0516/EClaw/issues/2627)) ([5b3e5cc](https://github.com/HankHuang0516/EClaw/commit/5b3e5cc542d9da69bb4e92500fd03a542ea33f00))
* **mindmap:** wrap hardcoded zh-TW UI strings with i18n t() ([#2607](https://github.com/HankHuang0516/EClaw/issues/2607)) ([166af87](https://github.com/HankHuang0516/EClaw/commit/166af8772b2121a24aaf34a83b3de970e9b3b571)), closes [#2606](https://github.com/HankHuang0516/EClaw/issues/2606)
* **i18n:** zh-TW backfill 8 keys (soft-pause + chat + invite + wallet) ([#2815](https://github.com/HankHuang0516/EClaw/issues/2815)) ([a2dd574](https://github.com/HankHuang0516/EClaw/commit/a2dd5743ce8d43a4b6ace9a2fd4b52568180d6c5))


### Performance Improvements

* **mindmap:** force-graph hardening for 1000/2000-node graphs ([#2684](https://github.com/HankHuang0516/EClaw/issues/2684)) ([da8b1c8](https://github.com/HankHuang0516/EClaw/commit/da8b1c8f947ab8bc8fa455c1962a91146623a1fc))


### Reverts

* Revert "feat(telegram): long-poll adapter PoC (card_406e612942ff062a06fc47be) ([#2238](https://github.com/HankHuang0516/EClaw/issues/2238))" ([#2239](https://github.com/HankHuang0516/EClaw/issues/2239)) ([eb7aa92](https://github.com/HankHuang0516/EClaw/commit/eb7aa92cce454b4a1a22654a2d133cdebe78c2bd))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-25)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **notifications:** add kanban_done + kanban_done_auto toggles to Android Settings ([#2636](https://github.com/HankHuang0516/EClaw/issues/2636)) ([a710909](https://github.com/HankHuang0516/EClaw/commit/a7109095e3393b8564e7ef1b23d382a4fbb944b8))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **api:** align /api/platform-stats skill-doc with device-auth contract (card_49b8190) ([#2916](https://github.com/HankHuang0516/EClaw/issues/2916)) ([ee55b2f](https://github.com/HankHuang0516/EClaw/commit/ee55b2fdbfbcd4bead5501d16ee66339056c32d7))
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **i18n:** ar block — fix 27 broken entries (CJK leaks + truncated HTML) ([#2851](https://github.com/HankHuang0516/EClaw/issues/2851)) ([5b19175](https://github.com/HankHuang0516/EClaw/commit/5b19175d712d00d16fcec00b749035c4beae7a5c))
* **chat:** atomic-load target bar (await contacts before first render) ([#2831](https://github.com/HankHuang0516/EClaw/issues/2831)) ([5f529e6](https://github.com/HankHuang0516/EClaw/commit/5f529e6b772eacc38ba1de69b44258a05f0d816a)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2](https://github.com/HankHuang0516/EClaw/issues/2)
* **channel:** await binding persistence ([712516d](https://github.com/HankHuang0516/EClaw/commit/712516decafb745035bd1434a28cc1973d433e19))
* **rental:** bump handshake timeout to 60s + timeout-aware discovery fallback ([#2863](https://github.com/HankHuang0516/EClaw/issues/2863)) ([fd4322f](https://github.com/HankHuang0516/EClaw/commit/fd4322f8890f3c2dfca3acdae6a4b95f19c381f9)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **i18n:** clear batch 1 residual missing keys ([#2790](https://github.com/HankHuang0516/EClaw/issues/2790)) ([211030e](https://github.com/HankHuang0516/EClaw/commit/211030e0b0b6a865c11f0c4ed60dc4e356d43b7a))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **kanban:** comment input no longer overlaps last comment in card detail (PR [#2678](https://github.com/HankHuang0516/EClaw/issues/2678)) ([fba91fc](https://github.com/HankHuang0516/EClaw/commit/fba91fca15402b453a0db5ee857c0b16e6087055))
* **chat:** compact 20px avatar in target bar (App WebView only shows [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2](https://github.com/HankHuang0516/EClaw/issues/2)) ([#2830](https://github.com/HankHuang0516/EClaw/issues/2830)) ([42c7543](https://github.com/HankHuang0516/EClaw/commit/42c7543b4a78a7abf3f5f7535eb9bc6142cd0fe2)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **portal:** complete 401 redirect sweep + mobile UIUX truncation ([#2842](https://github.com/HankHuang0516/EClaw/issues/2842)) ([f9799ba](https://github.com/HankHuang0516/EClaw/commit/f9799ba42498b109f0a8a70e80836aa6da51e216)), closes [#2833](https://github.com/HankHuang0516/EClaw/issues/2833) [#2845](https://github.com/HankHuang0516/EClaw/issues/2845) [#2844](https://github.com/HankHuang0516/EClaw/issues/2844) [#2843](https://github.com/HankHuang0516/EClaw/issues/2843)
* **uiux:** continue qa mobile readability sweep ([#2854](https://github.com/HankHuang0516/EClaw/issues/2854)) ([57606ff](https://github.com/HankHuang0516/EClaw/commit/57606ffe3e543b07a026aacc53c4b470c9a7825b))
* **i18n:** cover dynamic portal wrapper keys ([#2807](https://github.com/HankHuang0516/EClaw/issues/2807)) ([4c711cc](https://github.com/HankHuang0516/EClaw/commit/4c711cc4009300ffe4e8933a98ee01cd0fdd6aeb))
* **i18n:** dedup 20 dash_channel_card_* keys in es block ([#2876](https://github.com/HankHuang0516/EClaw/issues/2876)) ([807284c](https://github.com/HankHuang0516/EClaw/commit/807284ce363ef119ccdb0ae40e5ce99d3f0a27e0))
* **i18n:** dedupe backend locale keys via AST ([#2920](https://github.com/HankHuang0516/EClaw/issues/2920)) ([40ef114](https://github.com/HankHuang0516/EClaw/commit/40ef11414c8b836fe1ed93ec06c839df3a1bf7b9))
* **i18n:** dedupe zh locale keys ([#2919](https://github.com/HankHuang0516/EClaw/issues/2919)) ([afd2cca](https://github.com/HankHuang0516/EClaw/commit/afd2cca8086c2f2df0d04c9c5f8c58733652875e))
* **test:** delegate root test and remove invalid jest option ([#2292](https://github.com/HankHuang0516/EClaw/issues/2292)) ([65bf2f8](https://github.com/HankHuang0516/EClaw/commit/65bf2f83d26d925097cd380ab73b04ab2db49842))
* **kanban:** dep-aware nudge gating + roadmap dependency backfill ([#2904](https://github.com/HankHuang0516/EClaw/issues/2904)) ([2b76ac9](https://github.com/HankHuang0516/EClaw/commit/2b76ac9d3b7e4169b7bc3c6f6b0b0903b63cd9f7)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **rental:** don't pollute entity.message on push gateway timeout ([#2860](https://github.com/HankHuang0516/EClaw/issues/2860)) ([592ba44](https://github.com/HankHuang0516/EClaw/commit/592ba44f57536ee00011b6cbddaa6b129a7cbae9))
* **petdx:** drop dark-grey loading placeholder + preload sprite WEBP ([#2628](https://github.com/HankHuang0516/EClaw/issues/2628)) ([59cef38](https://github.com/HankHuang0516/EClaw/commit/59cef387bd69ca99d7d15c86a1364856d3849ad8)), closes [#1a1a1a](https://github.com/HankHuang0516/EClaw/issues/1a1a1a)
* **gateway-ws:** drop Origin header on server-to-server WS upgrade ([#2869](https://github.com/HankHuang0516/EClaw/issues/2869)) ([716dcf9](https://github.com/HankHuang0516/EClaw/commit/716dcf9d0834b17522bb9d894bad84bc142d1a19))
* **setup-scripts:** drop Origin header on server-to-server WS upgrade ([#2875](https://github.com/HankHuang0516/EClaw/issues/2875)) ([9d893b8](https://github.com/HankHuang0516/EClaw/commit/9d893b8e5eea4db275e450bf423903c156cd3e4b)), closes [#2869](https://github.com/HankHuang0516/EClaw/issues/2869)
* **security:** escape innerHTML in chat modal error messages ([#2819](https://github.com/HankHuang0516/EClaw/issues/2819)) ([dce07ad](https://github.com/HankHuang0516/EClaw/commit/dce07adde64795916dba977ae23e46f3371ce7ed)), closes [#2809](https://github.com/HankHuang0516/EClaw/issues/2809) [#2810](https://github.com/HankHuang0516/EClaw/issues/2810) [#2809](https://github.com/HankHuang0516/EClaw/issues/2809) [#2810](https://github.com/HankHuang0516/EClaw/issues/2810)
* **proxy:** export repo auth to CLI child ([#2928](https://github.com/HankHuang0516/EClaw/issues/2928)) ([336a8ca](https://github.com/HankHuang0516/EClaw/commit/336a8caff4e3663287bd2948cf9fe6e04125cbc8))
* **entities:** expose botSecret to owner so wallpaper service can poll companions ([#2615](https://github.com/HankHuang0516/EClaw/issues/2615)) ([04470fc](https://github.com/HankHuang0516/EClaw/commit/04470fce8f8c3fce2b1ba8b243e776606f107502))
* **rental:** expose owner_public_code in marketplace so plaza CTA can route ([#2616](https://github.com/HankHuang0516/EClaw/issues/2616)) ([4d1372f](https://github.com/HankHuang0516/EClaw/commit/4d1372f717d93cab65543e87c852e74e9fb67071)), closes [#2610](https://github.com/HankHuang0516/EClaw/issues/2610)
* **mindmap:** fallback to device scope when entityId is null ([#2728](https://github.com/HankHuang0516/EClaw/issues/2728)) ([7572312](https://github.com/HankHuang0516/EClaw/commit/7572312433d3d75fc245eda48a28919ce14bd927))
* **i18n:** fill 11 missing zh keys post-[#2920](https://github.com/HankHuang0516/EClaw/issues/2920)/[#2921](https://github.com/HankHuang0516/EClaw/issues/2921) (card_de6970) ([#2924](https://github.com/HankHuang0516/EClaw/issues/2924)) ([17c4899](https://github.com/HankHuang0516/EClaw/commit/17c48996489b1444d6ed589027acfa7986178fe1)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** fill backend runtime locale gaps ([#2921](https://github.com/HankHuang0516/EClaw/issues/2921)) ([00d96ff](https://github.com/HankHuang0516/EClaw/commit/00d96ff261b8134b49292623e1f786fd544144cc))
* **i18n:** fill Spanish drift keys ([#2751](https://github.com/HankHuang0516/EClaw/issues/2751)) ([0ad0ee5](https://github.com/HankHuang0516/EClaw/commit/0ad0ee55f7fac3e6ac46d891539950dab4d553cc))
* **portal:** fit embedded org chart to mobile viewport ([#2674](https://github.com/HankHuang0516/EClaw/issues/2674)) ([1c4e1b4](https://github.com/HankHuang0516/EClaw/commit/1c4e1b413ea7027b4cd4b8ecda981b0d0e12e66b))
* **i18n:** fix 6 trailing-comma syntax errors in 10-locale batch ([#2771](https://github.com/HankHuang0516/EClaw/issues/2771)) ([b27c6ca](https://github.com/HankHuang0516/EClaw/commit/b27c6ca204bf813e406c54ce3a2532a5f1f031b3))
* **kanban:** GET card returns latest 50 comments + comments endpoint exposes total ([#2816](https://github.com/HankHuang0516/EClaw/issues/2816)) ([c4d83f7](https://github.com/HankHuang0516/EClaw/commit/c4d83f777a1cd26aea0936e4316aa35c52822eef))
* **sharechat:** guest verify-email modal + disabled Send for unverified ([#2865](https://github.com/HankHuang0516/EClaw/issues/2865)) ([cb3b061](https://github.com/HankHuang0516/EClaw/commit/cb3b0614e0f6160417d907753e66eceb2d666802))
* **portal:** H4 showcase i18n data-attrs + raw key leak ([#2935](https://github.com/HankHuang0516/EClaw/issues/2935)) ([80d8587](https://github.com/HankHuang0516/EClaw/commit/80d8587c00c03f72fdb9756b1093ee8e1e3d0842)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **uiux:** harden chat previews and roster preview ([#2769](https://github.com/HankHuang0516/EClaw/issues/2769)) ([466d4d3](https://github.com/HankHuang0516/EClaw/commit/466d4d3ef81c628d3f58db64323946053d7bf61c))
* **mention-parser:** ignore @-mentions inside markdown code spans ([#2645](https://github.com/HankHuang0516/EClaw/issues/2645)) ([8da19d4](https://github.com/HankHuang0516/EClaw/commit/8da19d4a79ceb4152bf2144ee0847c61ce3e1def)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **kanban:** lazy-load dependency chips via IntersectionObserver ([#2632](https://github.com/HankHuang0516/EClaw/issues/2632)) ([20586b4](https://github.com/HankHuang0516/EClaw/commit/20586b43357335f9eb6a190c02d58c8e36b58aba)), closes [#2631](https://github.com/HankHuang0516/EClaw/issues/2631)
* **i18n:** localize FCM NotificationChannel labels (card_ec8d3a22) ([#2918](https://github.com/HankHuang0516/EClaw/issues/2918)) ([591cd20](https://github.com/HankHuang0516/EClaw/commit/591cd206704693650a53d19d94c4cc75daf84ffd))
* **kanban:** make card sorting deterministic ([#2756](https://github.com/HankHuang0516/EClaw/issues/2756)) ([48e2117](https://github.com/HankHuang0516/EClaw/commit/48e2117b64e37f05dc635e0a3b67bfd43cbe48f5))
* **portal/nagoya-trip:** map-link invisible on dark hero/day-banner ([#2897](https://github.com/HankHuang0516/EClaw/issues/2897)) ([cc33df6](https://github.com/HankHuang0516/EClaw/commit/cc33df686673455c20beaee60871412a5d486e66)), closes [#1f4030](https://github.com/HankHuang0516/EClaw/issues/1f4030) [#8b8579](https://github.com/HankHuang0516/EClaw/issues/8b8579) [#6e6859](https://github.com/HankHuang0516/EClaw/issues/6e6859) [#7a5614](https://github.com/HankHuang0516/EClaw/issues/7a5614)
* **org-chart:** notify affected bots on hierarchy change ([#2812](https://github.com/HankHuang0516/EClaw/issues/2812)) ([55675fd](https://github.com/HankHuang0516/EClaw/commit/55675fdf4487494d729a29524b32bd81b756a00c)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** notify reviewer on manual /move → review ([#2753](https://github.com/HankHuang0516/EClaw/issues/2753)) ([6cbbb4e](https://github.com/HankHuang0516/EClaw/commit/6cbbb4ee8c0d4d8ad54df2e9b5faaa3699bd530f))
* **wallpaper:** off-load spritesheet fetch to IO so per-petdx sprites actually render ([#2618](https://github.com/HankHuang0516/EClaw/issues/2618)) ([61b832c](https://github.com/HankHuang0516/EClaw/commit/61b832c9fa8a1d0caab810ccc942d85c63349267)), closes [#2615](https://github.com/HankHuang0516/EClaw/issues/2615) [#2577](https://github.com/HankHuang0516/EClaw/issues/2577)
* **security:** patch P0 sanitize-html XSS + P1 protobufjs + exam.html XSS ([#2829](https://github.com/HankHuang0516/EClaw/issues/2829)) ([c71b871](https://github.com/HankHuang0516/EClaw/commit/c71b871a045887375dd0d26d1a3280a0891a89ad))
* **security:** patch ws uninitialized memory disclosure (GHSA-58qx-3vcg-4xpx) ([#2872](https://github.com/HankHuang0516/EClaw/issues/2872)) ([2523d15](https://github.com/HankHuang0516/EClaw/commit/2523d154bbe501a7cc086340f7a07ece3abfa69b))
* **portal:** petdx-browser cookie-session fallback for device-login ([#2757](https://github.com/HankHuang0516/EClaw/issues/2757)) ([ca275f4](https://github.com/HankHuang0516/EClaw/commit/ca275f4519835da0c7ad71c588908a18f6f138d8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **api:** platform-stats 500 + entity/lookup publicCode alias ([#2809](https://github.com/HankHuang0516/EClaw/issues/2809), [#2810](https://github.com/HankHuang0516/EClaw/issues/2810)) ([#2818](https://github.com/HankHuang0516/EClaw/issues/2818)) ([f99fd17](https://github.com/HankHuang0516/EClaw/commit/f99fd17b2b1c32d88daa2510ff66d714c1a53edc))
* **i18n:** positional format specifiers for feedback_result_logs (7 locales) ([#2597](https://github.com/HankHuang0516/EClaw/issues/2597)) ([21aedc7](https://github.com/HankHuang0516/EClaw/commit/21aedc7eebc7a2839e340136f38dfdfd4dabb9dc))
* **avatar-petdx:** preserve descriptor across transient API failures (flicker) ([#2625](https://github.com/HankHuang0516/EClaw/issues/2625)) ([7b1c606](https://github.com/HankHuang0516/EClaw/commit/7b1c606514f7698d72ec95cf6c556e4043966186))
* **chat:** preserve recipient selection across rental-health refresh (P0 #card_eb1cba76) ([#2906](https://github.com/HankHuang0516/EClaw/issues/2906)) ([9cc0301](https://github.com/HankHuang0516/EClaw/commit/9cc0301cc26a0f49af4b7f53486f5c1a7cdd7902)), closes [#card_eb1cba76](https://github.com/HankHuang0516/EClaw/issues/card_eb1cba76) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **chat:** preserve scroll anchor while reading history ([#2693](https://github.com/HankHuang0516/EClaw/issues/2693)) ([945fdb7](https://github.com/HankHuang0516/EClaw/commit/945fdb7192b791b31882e1e75568dd8b11e4686f))
* **promo:** pull video embed from /promo-chat-avatar.html ([#2724](https://github.com/HankHuang0516/EClaw/issues/2724)) ([2afabc8](https://github.com/HankHuang0516/EClaw/commit/2afabc8c5ff8b25218a7cb857e8adfa572c8e9d5))
* **dashboard:** read live.rate_limits.{five_hour,seven_day}.used_percentage ([#2895](https://github.com/HankHuang0516/EClaw/issues/2895)) ([8223303](https://github.com/HankHuang0516/EClaw/commit/822330312bccb1c76675ad2c3b26e78d10dd1298))
* **kanban:** realign stale recurring schedules ([#2785](https://github.com/HankHuang0516/EClaw/issues/2785)) ([ab8ee25](https://github.com/HankHuang0516/EClaw/commit/ab8ee250a9b37f3d3e838bb01d8866c8d2b78231))
* **i18n:** reapply de6970 locale gap translations ([#2925](https://github.com/HankHuang0516/EClaw/issues/2925)) ([d994dc1](https://github.com/HankHuang0516/EClaw/commit/d994dc1d240fef72326db2599262375ccbf29175))
* **portal:** reduce QA-discovered request fanout ([#2656](https://github.com/HankHuang0516/EClaw/issues/2656)) ([1e46d6b](https://github.com/HankHuang0516/EClaw/commit/1e46d6bab61e58c65b452b6503d953f8dddeee75))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **portal:** remove org chart fit scale floor ([#2676](https://github.com/HankHuang0516/EClaw/issues/2676)) ([0f01606](https://github.com/HankHuang0516/EClaw/commit/0f016068b963bb5f800a02f28817c7174979d913))
* **rental:** remove phantom 'webhook test push' step from BIND_COMPLETE ([#2864](https://github.com/HankHuang0516/EClaw/issues/2864)) ([47f4a3e](https://github.com/HankHuang0516/EClaw/commit/47f4a3edf76aa95ebd06d8713cd44fda6eef9b5d))
* **i18n:** rename mm_empty_title → mm_state_empty_title in mindmap.html ([#2683](https://github.com/HankHuang0516/EClaw/issues/2683)) ([c79c109](https://github.com/HankHuang0516/EClaw/commit/c79c109bea23142e8a6d9ace976d105af1280ec9))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **chat:** render mention avatars with companion renderer ([#2633](https://github.com/HankHuang0516/EClaw/issues/2633)) ([03e205f](https://github.com/HankHuang0516/EClaw/commit/03e205f663ecd2c2f443d4009dd5af0093f0bbbb))
* **kanban:** reserve mobile comments panel height ([#2782](https://github.com/HankHuang0516/EClaw/issues/2782)) ([ce8662d](https://github.com/HankHuang0516/EClaw/commit/ce8662d362422fdd25037f1deb61dbed9425e2f9))
* **channel:** restore handshake fallback to discovered sessions ([#2915](https://github.com/HankHuang0516/EClaw/issues/2915)) ([#2917](https://github.com/HankHuang0516/EClaw/issues/2917)) ([9d7d3a2](https://github.com/HankHuang0516/EClaw/commit/9d7d3a25654289998314dd5ca152cefdb8a4d64e)), closes [#2912](https://github.com/HankHuang0516/EClaw/issues/2912)
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* scheduled audit 2026-05-13 — 6 bugs, XSS, i18n ([#2668](https://github.com/HankHuang0516/EClaw/issues/2668)) ([21dd513](https://github.com/HankHuang0516/EClaw/commit/21dd513b4464738de29164265437435ba6cc4817)), closes [#2605](https://github.com/HankHuang0516/EClaw/issues/2605) [#2608](https://github.com/HankHuang0516/EClaw/issues/2608) [#2600](https://github.com/HankHuang0516/EClaw/issues/2600) [#2599](https://github.com/HankHuang0516/EClaw/issues/2599) [#2598](https://github.com/HankHuang0516/EClaw/issues/2598)
* **channel:** scope official bot sessions ([#2912](https://github.com/HankHuang0516/EClaw/issues/2912)) ([5c56b62](https://github.com/HankHuang0516/EClaw/commit/5c56b62c13b739b76f39e168a26bd4e5de2644fb))
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **dashboard:** show Claude weekly bar reset countdown ([#2896](https://github.com/HankHuang0516/EClaw/issues/2896)) ([3b87845](https://github.com/HankHuang0516/EClaw/commit/3b87845d713e980fec69f6b8007549338a326713)), closes [#2895](https://github.com/HankHuang0516/EClaw/issues/2895)
* **chat:** smart-chip preview falls back to inline c.comments when /comments fails (PR [#2677](https://github.com/HankHuang0516/EClaw/issues/2677)) ([7f4dffd](https://github.com/HankHuang0516/EClaw/commit/7f4dffd2c83ea86f296b8fa0610f0e67c9f1af11))
* **kanban:** stabilize comment detail viewport ([#2796](https://github.com/HankHuang0516/EClaw/issues/2796)) ([0a10aad](https://github.com/HankHuang0516/EClaw/commit/0a10aadb5a5b12ff23454c16d5c88183b94ad7d7))
* **wallpaper:** stop Android live wallpaper flashing default lobster on companion change ([#2629](https://github.com/HankHuang0516/EClaw/issues/2629)) ([8b4f66f](https://github.com/HankHuang0516/EClaw/commit/8b4f66fcb335bf43128f924b761b6337c817095b)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **chat:** stop chat.html bouncing to dashboard via /api/rental/health-status 401 race ([#2833](https://github.com/HankHuang0516/EClaw/issues/2833)) ([c422406](https://github.com/HankHuang0516/EClaw/commit/c4224067cdcfe7f3e22ab95007c7563dac4196ac))
* **openclaw-channel:** support OpenClaw 2026.5.20 ([8045de6](https://github.com/HankHuang0516/EClaw/commit/8045de6bebecfc05f9bd57453b99c098ca35681b))
* **mentions:** support same-device CJK display-name tags ([#2874](https://github.com/HankHuang0516/EClaw/issues/2874)) ([b8f61be](https://github.com/HankHuang0516/EClaw/commit/b8f61be9a3962fef75dd32ea34e8900880dafaf9))
* **channel:** suppress operational A2A loop messages (rebase of [#2288](https://github.com/HankHuang0516/EClaw/issues/2288)) ([#2930](https://github.com/HankHuang0516/EClaw/issues/2930)) ([7ceabc9](https://github.com/HankHuang0516/EClaw/commit/7ceabc915df22123cb46ae1500e2eb2e279250af))
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **dashboard:** use sessions[].project for widget Projects list (was .project_id) ([#2894](https://github.com/HankHuang0516/EClaw/issues/2894)) ([0fd1334](https://github.com/HankHuang0516/EClaw/commit/0fd1334897d4a603cc6eb74f34b48606547e09cf))
* **app:** WebView pages honor app-selected locale via ?lang= URL param ([#2672](https://github.com/HankHuang0516/EClaw/issues/2672)) ([8ed8757](https://github.com/HankHuang0516/EClaw/commit/8ed8757aec5bf214e837cc0d81bf2b23f1993a91)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **share-chat:** wire rich CTA actions to msgInput ([#2867](https://github.com/HankHuang0516/EClaw/issues/2867)) ([df23b11](https://github.com/HankHuang0516/EClaw/commit/df23b1147d34c59a644a145bbd87c18b96400acc))


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* **usage-api:** /api/usage/{snapshot,timeline} + usage_snapshots table (Plan B Phase 1) ([#2889](https://github.com/HankHuang0516/EClaw/issues/2889)) ([a0d859c](https://github.com/HankHuang0516/EClaw/commit/a0d859c63f0220909dadb2b1952174861ccdce14))
* **community:** 1-click chat button on bot cards + utm tagging ([#2610](https://github.com/HankHuang0516/EClaw/issues/2610)) ([eee97b0](https://github.com/HankHuang0516/EClaw/commit/eee97b0e2e4e74945ec24f218a69a52800b97a66))
* **chat:** accept ?messageId= as deep-link alias ([#2838](https://github.com/HankHuang0516/EClaw/issues/2838)) ([1785a87](https://github.com/HankHuang0516/EClaw/commit/1785a87310426637fd10df83754fb9924c45207f))
* **chat:** add avatar size preference ([#2714](https://github.com/HankHuang0516/EClaw/issues/2714)) ([6fe164a](https://github.com/HankHuang0516/EClaw/commit/6fe164ad8b22fa576d2dd9ad37c0d9fc295b5a83))
* **dashboard:** add Claude and Codex channel guides ([#2640](https://github.com/HankHuang0516/EClaw/issues/2640)) ([c64e4c4](https://github.com/HankHuang0516/EClaw/commit/c64e4c4afc78db58c5cd578f00486dd7b2fd3311))
* **dashboard:** add Claude Code channel guide card ([#2667](https://github.com/HankHuang0516/EClaw/issues/2667)) ([d70d75c](https://github.com/HankHuang0516/EClaw/commit/d70d75c0c8caa8a540358a9aab4556b8c1927a5c))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* **kanban:** add device-scoped card tags ([#2773](https://github.com/HankHuang0516/EClaw/issues/2773)) ([53a387e](https://github.com/HankHuang0516/EClaw/commit/53a387e67ba7bb4f6bed1c427000c4ae8666577a))
* **portal:** add entity selector to petdx-browser ([#2602](https://github.com/HankHuang0516/EClaw/issues/2602)) ([3fa067e](https://github.com/HankHuang0516/EClaw/commit/3fa067e00b38829b48a37cecd33ee81a9a1122d9))
* **kanban:** add explicit card links ([#2721](https://github.com/HankHuang0516/EClaw/issues/2721)) ([ef9f812](https://github.com/HankHuang0516/EClaw/commit/ef9f812a3fcf39efd07fd158ce90951bdd045ac7))
* **kanban:** add explicit done-card reopen flow ([#2801](https://github.com/HankHuang0516/EClaw/issues/2801)) ([5080aac](https://github.com/HankHuang0516/EClaw/commit/5080aacb75047c0deaa379ee708ec85465afd57c))
* **mindmap:** add GET /api/mindmap/graph force-graph projection ([#2680](https://github.com/HankHuang0516/EClaw/issues/2680)) ([a00b2e7](https://github.com/HankHuang0516/EClaw/commit/a00b2e775af2c4c98cd157f760ad87aeeee469f0)), closes [#2679](https://github.com/HankHuang0516/EClaw/issues/2679) [#2679](https://github.com/HankHuang0516/EClaw/issues/2679)
* **dashboard:** add Hermes channel promo card ([#2708](https://github.com/HankHuang0516/EClaw/issues/2708)) ([337aca1](https://github.com/HankHuang0516/EClaw/commit/337aca153d5a1cd7e888c065f00ae54db7872d91))
* **rental:** add listing soft pause ([#2781](https://github.com/HankHuang0516/EClaw/issues/2781)) ([6586b72](https://github.com/HankHuang0516/EClaw/commit/6586b72717ddb1637d91cd3242c8d2ff554f62b4))
* **portal:** add Nagoya 5D4N trip static cross-ref page ([#2689](https://github.com/HankHuang0516/EClaw/issues/2689)) ([2e0efb6](https://github.com/HankHuang0516/EClaw/commit/2e0efb6dcdaff52226cc8854a96747000b12bdff))
* **portal:** add Nagoya image atlas static page ([#2743](https://github.com/HankHuang0516/EClaw/issues/2743)) ([ac026e9](https://github.com/HankHuang0516/EClaw/commit/ac026e9fd2c92ac9437d01edddffc9adf972f6ba))
* **portal:** add Nagoya trip map links and image lightbox ([#2821](https://github.com/HankHuang0516/EClaw/issues/2821)) ([3e40955](https://github.com/HankHuang0516/EClaw/commit/3e40955650a05f45a6b9f7e39e73847705424a03))
* **portal/nagoya:** add parking shortcut buttons next to itinerary places ([#2826](https://github.com/HankHuang0516/EClaw/issues/2826)) ([63968c5](https://github.com/HankHuang0516/EClaw/commit/63968c554d046afc8d978de74e3aacbf7700500d))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **settings:** add rental roster management preview ([#2758](https://github.com/HankHuang0516/EClaw/issues/2758)) ([9706e59](https://github.com/HankHuang0516/EClaw/commit/9706e59ded140a90a6e02348124282bc69d89001))
* **rental:** add renter health chat indicator ([#2690](https://github.com/HankHuang0516/EClaw/issues/2690)) ([36cd2e9](https://github.com/HankHuang0516/EClaw/commit/36cd2e9802be4c7ebb03d3024617fa74aca48ffd))
* **ios:** add Tutorial & Intro entry in Settings ([#2800](https://github.com/HankHuang0516/EClaw/issues/2800)) ([ed83e51](https://github.com/HankHuang0516/EClaw/commit/ed83e51d043bf4cd5865f38dc95a91ed54820d6c))
* **landing:** add Watch Full Demo CTA below hero video ([#2799](https://github.com/HankHuang0516/EClaw/issues/2799)) ([66107c9](https://github.com/HankHuang0516/EClaw/commit/66107c954727551fd34d989a4674daaad9b63968))
* **footer:** add Watch Intro Video link in Info column ([#2798](https://github.com/HankHuang0516/EClaw/issues/2798)) ([d7c6d59](https://github.com/HankHuang0516/EClaw/commit/d7c6d596b69c6a5b257bf1f7a792a407ef9712ad))
* **i18n:** ar iter-2 — fill 623 missing keys against en source ([#2847](https://github.com/HankHuang0516/EClaw/issues/2847)) ([ee94a7a](https://github.com/HankHuang0516/EClaw/commit/ee94a7ae6812b5163efe4284ee4907ca32302f5c))
* **kanban:** backlog launch-gate flag to suppress L1/L2/L3 escalation ([#2855](https://github.com/HankHuang0516/EClaw/issues/2855)) ([cb8bf1b](https://github.com/HankHuang0516/EClaw/commit/cb8bf1bb6421f25214f65e129a8cadccc49cc266)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#4](https://github.com/HankHuang0516/EClaw/issues/4) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **companion:** bridge crafter-station/petdex gallery (1784 pets) ([#2601](https://github.com/HankHuang0516/EClaw/issues/2601)) ([2e245be](https://github.com/HankHuang0516/EClaw/commit/2e245bea6dd47ea7361b927d389188a3c23b6bb3))
* **promo:** chat avatar size feature landing page (self-hosted MP4) ([#2722](https://github.com/HankHuang0516/EClaw/issues/2722)) ([3852210](https://github.com/HankHuang0516/EClaw/commit/3852210d355704d018e3daca6b5f9512a011b210)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **kanban:** cron-spawn jitter + lane backpressure to prevent same-tick wedge ([#2791](https://github.com/HankHuang0516/EClaw/issues/2791)) ([9f414a7](https://github.com/HankHuang0516/EClaw/commit/9f414a731d6393672a0a4189c7b408c529ae5e12)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **portal:** dashboard usage widget — Claude/Codex 5h gauges + 24h chart (Plan B Phase 3) ([#2891](https://github.com/HankHuang0516/EClaw/issues/2891)) ([d18f373](https://github.com/HankHuang0516/EClaw/commit/d18f373857e4bd302437d6bda2a1e01871fbb1db))
* **portal:** dashboard usage widget v2 — Session/Weekly % bars + projects, no cost (Plan B Phase 3.1) ([#2893](https://github.com/HankHuang0516/EClaw/issues/2893)) ([4bc0dc7](https://github.com/HankHuang0516/EClaw/commit/4bc0dc744ed9d54dfd532ebac4b705c7f84ec0a6))
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **info:** embed 75s promo video on Quick Start tab ([#2795](https://github.com/HankHuang0516/EClaw/issues/2795)) ([86c3f70](https://github.com/HankHuang0516/EClaw/commit/86c3f709a95eebbee1241077b807880463f804b6))
* **promo:** embed daily eclaw video 2026-05-14 ([#2786](https://github.com/HankHuang0516/EClaw/issues/2786)) ([718a814](https://github.com/HankHuang0516/EClaw/commit/718a814ab16850bc2b33a1b303841e2c4378ecfa)), closes [#2782](https://github.com/HankHuang0516/EClaw/issues/2782) [#2693](https://github.com/HankHuang0516/EClaw/issues/2693)
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **info:** embed promo video at top of Quick Start tab ([#2797](https://github.com/HankHuang0516/EClaw/issues/2797)) ([047679f](https://github.com/HankHuang0516/EClaw/commit/047679fd57ab9949eaeacea414d5611e71afe041))
* **rental:** enforce strict rebind refunds ([#2703](https://github.com/HankHuang0516/EClaw/issues/2703)) ([a1859c5](https://github.com/HankHuang0516/EClaw/commit/a1859c50e6fb3991d7a8051491502d824a14a116))
* **portal:** group task chip actions ([#2825](https://github.com/HankHuang0516/EClaw/issues/2825)) ([5db5c59](https://github.com/HankHuang0516/EClaw/commit/5db5c59b32b8635f1412205faf0c2f9164d3d5d4))
* **hermes:** H2 health-check cron + 7d SLA + commander alerts (card_07891ac) ([#2922](https://github.com/HankHuang0516/EClaw/issues/2922)) ([82b4315](https://github.com/HankHuang0516/EClaw/commit/82b4315aea234493e3d1889dc53958c2f1d842e0)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **portal:** info-guide-rules + info-guide-soul slide pair ([#2793](https://github.com/HankHuang0516/EClaw/issues/2793)) ([1c8bddc](https://github.com/HankHuang0516/EClaw/commit/1c8bddc4c185054b2b60088498e3d45509117127)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **chat:** link card previews to kanban ([#2754](https://github.com/HankHuang0516/EClaw/issues/2754)) ([2261240](https://github.com/HankHuang0516/EClaw/commit/22612402c2e95efb07246629e81a849be41ee9c7))
* **mission:** link notes to kanban cards ([#2723](https://github.com/HankHuang0516/EClaw/issues/2723)) ([b36dc18](https://github.com/HankHuang0516/EClaw/commit/b36dc18f3a8facf12e0b6046351c222f1e99dc55))
* **usage-daemon:** macOS launchd daemon polls Claude/Codex usage → POST /api/usage/snapshot (Plan B Phase 2) ([#2890](https://github.com/HankHuang0516/EClaw/issues/2890)) ([fd225e1](https://github.com/HankHuang0516/EClaw/commit/fd225e12d9491037be1a340bd63b54b5f3308c7f))
* **mindmap:** mission.html link to /portal/mindmap.html + deprecate /api/mission/mindmap ([#2685](https://github.com/HankHuang0516/EClaw/issues/2685)) ([11e297b](https://github.com/HankHuang0516/EClaw/commit/11e297bab1c9b56fcde3027d6500b7c58891bf18)), closes [#2680](https://github.com/HankHuang0516/EClaw/issues/2680) [#2684](https://github.com/HankHuang0516/EClaw/issues/2684)
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **portal:** nagoya trip interactive map (Leaflet + OSM, no API key) ([#2888](https://github.com/HankHuang0516/EClaw/issues/2888)) ([ecfdac0](https://github.com/HankHuang0516/EClaw/commit/ecfdac06348c12ee7c6872c6c28d5f82162e7aa9))
* **android:** native tab navigation bridge for portal pages ([#2832](https://github.com/HankHuang0516/EClaw/issues/2832)) ([7e02e6f](https://github.com/HankHuang0516/EClaw/commit/7e02e6f225014e64f08f55035d7b9e5727873343)), closes [#2824](https://github.com/HankHuang0516/EClaw/issues/2824) [#2743](https://github.com/HankHuang0516/EClaw/issues/2743) [#2821](https://github.com/HankHuang0516/EClaw/issues/2821) [#2826](https://github.com/HankHuang0516/EClaw/issues/2826) [#2797](https://github.com/HankHuang0516/EClaw/issues/2797) [#2798](https://github.com/HankHuang0516/EClaw/issues/2798) [#2799](https://github.com/HankHuang0516/EClaw/issues/2799) [#2800](https://github.com/HankHuang0516/EClaw/issues/2800) [#2801](https://github.com/HankHuang0516/EClaw/issues/2801) [#2816](https://github.com/HankHuang0516/EClaw/issues/2816) [#2796](https://github.com/HankHuang0516/EClaw/issues/2796) [#2825](https://github.com/HankHuang0516/EClaw/issues/2825) [#2812](https://github.com/HankHuang0516/EClaw/issues/2812) [#2813](https://github.com/HankHuang0516/EClaw/issues/2813) [#2814](https://github.com/HankHuang0516/EClaw/issues/2814) [#2815](https://github.com/HankHuang0516/EClaw/issues/2815) [#2811](https://github.com/HankHuang0516/EClaw/issues/2811) [#2807](https://github.com/HankHuang0516/EClaw/issues/2807) [#2808](https://github.com/HankHuang0516/EClaw/issues/2808) [#2818](https://github.com/HankHuang0516/EClaw/issues/2818) [#2819](https://github.com/HankHuang0516/EClaw/issues/2819) [#2824](https://github.com/HankHuang0516/EClaw/issues/2824)
* **channel:** outbound backpressure (30/min cap + 429 retry-after) ([#2911](https://github.com/HankHuang0516/EClaw/issues/2911)) ([36dc99c](https://github.com/HankHuang0516/EClaw/commit/36dc99ca78b0e1724a2aaefb5936669077b7a28f))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **settings:** per-entity nudge override UI (Phase 2) ([#2837](https://github.com/HankHuang0516/EClaw/issues/2837)) ([ea7662b](https://github.com/HankHuang0516/EClaw/commit/ea7662b0858882dae461e1387f711895924f9ab8)), closes [3/#4](https://github.com/HankHuang0516/EClaw/issues/4)
* **kanban:** per-entity nudge overrides (Phase 2 of card_e066cb6b) ([#2836](https://github.com/HankHuang0516/EClaw/issues/2836)) ([0425f80](https://github.com/HankHuang0516/EClaw/commit/0425f80bc1169c0d506b665659c8676695c45553))
* **avatar:** petdx render on card-holder my-cards (Phase 1b) ([#2621](https://github.com/HankHuang0516/EClaw/issues/2621)) ([f78ba8b](https://github.com/HankHuang0516/EClaw/commit/f78ba8b18acc426936ab6d8a82ca7541effea00d))
* **avatar:** petdx render on dashboard entity grid / org chart / bindings (Phase 1b) ([#2622](https://github.com/HankHuang0516/EClaw/issues/2622)) ([f417749](https://github.com/HankHuang0516/EClaw/commit/f41774914451048e8cd76e9ae30416a0642e173b)), closes [#2620](https://github.com/HankHuang0516/EClaw/issues/2620) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621)
* **avatar:** petdx render on kanban auto-assign / pulse / comment avatars (Phase 1b) ([#2624](https://github.com/HankHuang0516/EClaw/issues/2624)) ([6bff5f8](https://github.com/HankHuang0516/EClaw/commit/6bff5f80440d0bd91a6b1721cde9478d685c4d46))
* **avatar:** petdx render on mission skill/rule/soul entity dialogs (Phase 1b) ([#2623](https://github.com/HankHuang0516/EClaw/issues/2623)) ([129327b](https://github.com/HankHuang0516/EClaw/commit/129327bc7b91056659f1ab7e8d5e3f5260d951fb))
* **mindmap:** portal/mindmap.html force-graph prototype ([#129](https://github.com/HankHuang0516/EClaw/issues/129)) ([#2681](https://github.com/HankHuang0516/EClaw/issues/2681)) ([0f15e69](https://github.com/HankHuang0516/EClaw/commit/0f15e6930f0697c37fa08f3219edb8f9e499837f)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **channel:** record delivery receipts ([#2913](https://github.com/HankHuang0516/EClaw/issues/2913)) ([90c671b](https://github.com/HankHuang0516/EClaw/commit/90c671bd1970ab51584b90e2b634484ec10cc7ae))
* **portal:** redo nagoya trip page in professional tour-guide style ([#2691](https://github.com/HankHuang0516/EClaw/issues/2691)) ([b2378c0](https://github.com/HankHuang0516/EClaw/commit/b2378c06ee20fa9cccfdceceb1a4c9e0b3072f59))
* **i18n:** remove ms+hi orphan keys from i18n.js ([#2849](https://github.com/HankHuang0516/EClaw/issues/2849)) ([320176c](https://github.com/HankHuang0516/EClaw/commit/320176c06a3cfd8631e2a82ad02a6bd6a9af0389))
* **avatar:** render selected petdx companion in chat avatars ([#2620](https://github.com/HankHuang0516/EClaw/issues/2620)) ([0bdd046](https://github.com/HankHuang0516/EClaw/commit/0bdd046fe1b1c428e32edda366ff112c08927f4c))
* **home:** replace native home with WebView hosting dashboard.html ([#2634](https://github.com/HankHuang0516/EClaw/issues/2634)) ([e69ea81](https://github.com/HankHuang0516/EClaw/commit/e69ea8160c239b083a83d6dc83a4f1c3f901c863))
* **app:** route chat mission jumps through native tabs ([#2824](https://github.com/HankHuang0516/EClaw/issues/2824)) ([deb07b6](https://github.com/HankHuang0516/EClaw/commit/deb07b69a9ecca632fe27278de537f1d85234e94))
* **proxy:** scope private repo git auth ([#2926](https://github.com/HankHuang0516/EClaw/issues/2926)) ([246f7ff](https://github.com/HankHuang0516/EClaw/commit/246f7ff1dedaf7bece9e3cb9eb24d0ab32ebb393))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **chat:** support message deep links ([#2719](https://github.com/HankHuang0516/EClaw/issues/2719)) ([2dc0f1e](https://github.com/HankHuang0516/EClaw/commit/2dc0f1eeb259e1a0848db4a03186b989372cd91c))
* **mission:** support note deep links ([#2717](https://github.com/HankHuang0516/EClaw/issues/2717)) ([2efd3a5](https://github.com/HankHuang0516/EClaw/commit/2efd3a5e741217a07c0b0ac54a0ddd010e0ebe23))
* **share-chat:** twitter card + per-bot og:image/twitter:* in SSR ([#2609](https://github.com/HankHuang0516/EClaw/issues/2609)) ([6cdc853](https://github.com/HankHuang0516/EClaw/commit/6cdc853dc884cdb95bd47214942768981f218ae0))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))
* **settings:** wire petdx avatar into channel-account chips ([#2626](https://github.com/HankHuang0516/EClaw/issues/2626)) ([88aec77](https://github.com/HankHuang0516/EClaw/commit/88aec772628c240e97b336bb5820892ad632d1ae))
* **files:** wire petdx avatar into entity filter & per-file badges ([#2627](https://github.com/HankHuang0516/EClaw/issues/2627)) ([5b3e5cc](https://github.com/HankHuang0516/EClaw/commit/5b3e5cc542d9da69bb4e92500fd03a542ea33f00))
* **mindmap:** wrap hardcoded zh-TW UI strings with i18n t() ([#2607](https://github.com/HankHuang0516/EClaw/issues/2607)) ([166af87](https://github.com/HankHuang0516/EClaw/commit/166af8772b2121a24aaf34a83b3de970e9b3b571)), closes [#2606](https://github.com/HankHuang0516/EClaw/issues/2606)
* **i18n:** zh-TW backfill 8 keys (soft-pause + chat + invite + wallet) ([#2815](https://github.com/HankHuang0516/EClaw/issues/2815)) ([a2dd574](https://github.com/HankHuang0516/EClaw/commit/a2dd5743ce8d43a4b6ace9a2fd4b52568180d6c5))


### Performance Improvements

* **mindmap:** force-graph hardening for 1000/2000-node graphs ([#2684](https://github.com/HankHuang0516/EClaw/issues/2684)) ([da8b1c8](https://github.com/HankHuang0516/EClaw/commit/da8b1c8f947ab8bc8fa455c1962a91146623a1fc))


### Reverts

* Revert "feat(telegram): long-poll adapter PoC (card_406e612942ff062a06fc47be) ([#2238](https://github.com/HankHuang0516/EClaw/issues/2238))" ([#2239](https://github.com/HankHuang0516/EClaw/issues/2239)) ([eb7aa92](https://github.com/HankHuang0516/EClaw/commit/eb7aa92cce454b4a1a22654a2d133cdebe78c2bd))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-25)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **notifications:** add kanban_done + kanban_done_auto toggles to Android Settings ([#2636](https://github.com/HankHuang0516/EClaw/issues/2636)) ([a710909](https://github.com/HankHuang0516/EClaw/commit/a7109095e3393b8564e7ef1b23d382a4fbb944b8))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **api:** align /api/platform-stats skill-doc with device-auth contract (card_49b8190) ([#2916](https://github.com/HankHuang0516/EClaw/issues/2916)) ([ee55b2f](https://github.com/HankHuang0516/EClaw/commit/ee55b2fdbfbcd4bead5501d16ee66339056c32d7))
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **i18n:** ar block — fix 27 broken entries (CJK leaks + truncated HTML) ([#2851](https://github.com/HankHuang0516/EClaw/issues/2851)) ([5b19175](https://github.com/HankHuang0516/EClaw/commit/5b19175d712d00d16fcec00b749035c4beae7a5c))
* **chat:** atomic-load target bar (await contacts before first render) ([#2831](https://github.com/HankHuang0516/EClaw/issues/2831)) ([5f529e6](https://github.com/HankHuang0516/EClaw/commit/5f529e6b772eacc38ba1de69b44258a05f0d816a)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2](https://github.com/HankHuang0516/EClaw/issues/2)
* **channel:** await binding persistence ([712516d](https://github.com/HankHuang0516/EClaw/commit/712516decafb745035bd1434a28cc1973d433e19))
* **rental:** bump handshake timeout to 60s + timeout-aware discovery fallback ([#2863](https://github.com/HankHuang0516/EClaw/issues/2863)) ([fd4322f](https://github.com/HankHuang0516/EClaw/commit/fd4322f8890f3c2dfca3acdae6a4b95f19c381f9)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **i18n:** clear batch 1 residual missing keys ([#2790](https://github.com/HankHuang0516/EClaw/issues/2790)) ([211030e](https://github.com/HankHuang0516/EClaw/commit/211030e0b0b6a865c11f0c4ed60dc4e356d43b7a))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **kanban:** comment input no longer overlaps last comment in card detail (PR [#2678](https://github.com/HankHuang0516/EClaw/issues/2678)) ([fba91fc](https://github.com/HankHuang0516/EClaw/commit/fba91fca15402b453a0db5ee857c0b16e6087055))
* **chat:** compact 20px avatar in target bar (App WebView only shows [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2](https://github.com/HankHuang0516/EClaw/issues/2)) ([#2830](https://github.com/HankHuang0516/EClaw/issues/2830)) ([42c7543](https://github.com/HankHuang0516/EClaw/commit/42c7543b4a78a7abf3f5f7535eb9bc6142cd0fe2)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **portal:** complete 401 redirect sweep + mobile UIUX truncation ([#2842](https://github.com/HankHuang0516/EClaw/issues/2842)) ([f9799ba](https://github.com/HankHuang0516/EClaw/commit/f9799ba42498b109f0a8a70e80836aa6da51e216)), closes [#2833](https://github.com/HankHuang0516/EClaw/issues/2833) [#2845](https://github.com/HankHuang0516/EClaw/issues/2845) [#2844](https://github.com/HankHuang0516/EClaw/issues/2844) [#2843](https://github.com/HankHuang0516/EClaw/issues/2843)
* **uiux:** continue qa mobile readability sweep ([#2854](https://github.com/HankHuang0516/EClaw/issues/2854)) ([57606ff](https://github.com/HankHuang0516/EClaw/commit/57606ffe3e543b07a026aacc53c4b470c9a7825b))
* **i18n:** cover dynamic portal wrapper keys ([#2807](https://github.com/HankHuang0516/EClaw/issues/2807)) ([4c711cc](https://github.com/HankHuang0516/EClaw/commit/4c711cc4009300ffe4e8933a98ee01cd0fdd6aeb))
* **i18n:** dedup 20 dash_channel_card_* keys in es block ([#2876](https://github.com/HankHuang0516/EClaw/issues/2876)) ([807284c](https://github.com/HankHuang0516/EClaw/commit/807284ce363ef119ccdb0ae40e5ce99d3f0a27e0))
* **i18n:** dedupe backend locale keys via AST ([#2920](https://github.com/HankHuang0516/EClaw/issues/2920)) ([40ef114](https://github.com/HankHuang0516/EClaw/commit/40ef11414c8b836fe1ed93ec06c839df3a1bf7b9))
* **i18n:** dedupe zh locale keys ([#2919](https://github.com/HankHuang0516/EClaw/issues/2919)) ([afd2cca](https://github.com/HankHuang0516/EClaw/commit/afd2cca8086c2f2df0d04c9c5f8c58733652875e))
* **test:** delegate root test and remove invalid jest option ([#2292](https://github.com/HankHuang0516/EClaw/issues/2292)) ([65bf2f8](https://github.com/HankHuang0516/EClaw/commit/65bf2f83d26d925097cd380ab73b04ab2db49842))
* **kanban:** dep-aware nudge gating + roadmap dependency backfill ([#2904](https://github.com/HankHuang0516/EClaw/issues/2904)) ([2b76ac9](https://github.com/HankHuang0516/EClaw/commit/2b76ac9d3b7e4169b7bc3c6f6b0b0903b63cd9f7)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **rental:** don't pollute entity.message on push gateway timeout ([#2860](https://github.com/HankHuang0516/EClaw/issues/2860)) ([592ba44](https://github.com/HankHuang0516/EClaw/commit/592ba44f57536ee00011b6cbddaa6b129a7cbae9))
* **petdx:** drop dark-grey loading placeholder + preload sprite WEBP ([#2628](https://github.com/HankHuang0516/EClaw/issues/2628)) ([59cef38](https://github.com/HankHuang0516/EClaw/commit/59cef387bd69ca99d7d15c86a1364856d3849ad8)), closes [#1a1a1a](https://github.com/HankHuang0516/EClaw/issues/1a1a1a)
* **gateway-ws:** drop Origin header on server-to-server WS upgrade ([#2869](https://github.com/HankHuang0516/EClaw/issues/2869)) ([716dcf9](https://github.com/HankHuang0516/EClaw/commit/716dcf9d0834b17522bb9d894bad84bc142d1a19))
* **setup-scripts:** drop Origin header on server-to-server WS upgrade ([#2875](https://github.com/HankHuang0516/EClaw/issues/2875)) ([9d893b8](https://github.com/HankHuang0516/EClaw/commit/9d893b8e5eea4db275e450bf423903c156cd3e4b)), closes [#2869](https://github.com/HankHuang0516/EClaw/issues/2869)
* **security:** escape innerHTML in chat modal error messages ([#2819](https://github.com/HankHuang0516/EClaw/issues/2819)) ([dce07ad](https://github.com/HankHuang0516/EClaw/commit/dce07adde64795916dba977ae23e46f3371ce7ed)), closes [#2809](https://github.com/HankHuang0516/EClaw/issues/2809) [#2810](https://github.com/HankHuang0516/EClaw/issues/2810) [#2809](https://github.com/HankHuang0516/EClaw/issues/2809) [#2810](https://github.com/HankHuang0516/EClaw/issues/2810)
* **proxy:** export repo auth to CLI child ([#2928](https://github.com/HankHuang0516/EClaw/issues/2928)) ([336a8ca](https://github.com/HankHuang0516/EClaw/commit/336a8caff4e3663287bd2948cf9fe6e04125cbc8))
* **entities:** expose botSecret to owner so wallpaper service can poll companions ([#2615](https://github.com/HankHuang0516/EClaw/issues/2615)) ([04470fc](https://github.com/HankHuang0516/EClaw/commit/04470fce8f8c3fce2b1ba8b243e776606f107502))
* **rental:** expose owner_public_code in marketplace so plaza CTA can route ([#2616](https://github.com/HankHuang0516/EClaw/issues/2616)) ([4d1372f](https://github.com/HankHuang0516/EClaw/commit/4d1372f717d93cab65543e87c852e74e9fb67071)), closes [#2610](https://github.com/HankHuang0516/EClaw/issues/2610)
* **mindmap:** fallback to device scope when entityId is null ([#2728](https://github.com/HankHuang0516/EClaw/issues/2728)) ([7572312](https://github.com/HankHuang0516/EClaw/commit/7572312433d3d75fc245eda48a28919ce14bd927))
* **i18n:** fill 11 missing zh keys post-[#2920](https://github.com/HankHuang0516/EClaw/issues/2920)/[#2921](https://github.com/HankHuang0516/EClaw/issues/2921) (card_de6970) ([#2924](https://github.com/HankHuang0516/EClaw/issues/2924)) ([17c4899](https://github.com/HankHuang0516/EClaw/commit/17c48996489b1444d6ed589027acfa7986178fe1)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** fill backend runtime locale gaps ([#2921](https://github.com/HankHuang0516/EClaw/issues/2921)) ([00d96ff](https://github.com/HankHuang0516/EClaw/commit/00d96ff261b8134b49292623e1f786fd544144cc))
* **i18n:** fill Spanish drift keys ([#2751](https://github.com/HankHuang0516/EClaw/issues/2751)) ([0ad0ee5](https://github.com/HankHuang0516/EClaw/commit/0ad0ee55f7fac3e6ac46d891539950dab4d553cc))
* **portal:** fit embedded org chart to mobile viewport ([#2674](https://github.com/HankHuang0516/EClaw/issues/2674)) ([1c4e1b4](https://github.com/HankHuang0516/EClaw/commit/1c4e1b413ea7027b4cd4b8ecda981b0d0e12e66b))
* **i18n:** fix 6 trailing-comma syntax errors in 10-locale batch ([#2771](https://github.com/HankHuang0516/EClaw/issues/2771)) ([b27c6ca](https://github.com/HankHuang0516/EClaw/commit/b27c6ca204bf813e406c54ce3a2532a5f1f031b3))
* **kanban:** GET card returns latest 50 comments + comments endpoint exposes total ([#2816](https://github.com/HankHuang0516/EClaw/issues/2816)) ([c4d83f7](https://github.com/HankHuang0516/EClaw/commit/c4d83f777a1cd26aea0936e4316aa35c52822eef))
* **sharechat:** guest verify-email modal + disabled Send for unverified ([#2865](https://github.com/HankHuang0516/EClaw/issues/2865)) ([cb3b061](https://github.com/HankHuang0516/EClaw/commit/cb3b0614e0f6160417d907753e66eceb2d666802))
* **portal:** H4 showcase i18n data-attrs + raw key leak ([#2935](https://github.com/HankHuang0516/EClaw/issues/2935)) ([80d8587](https://github.com/HankHuang0516/EClaw/commit/80d8587c00c03f72fdb9756b1093ee8e1e3d0842)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **uiux:** harden chat previews and roster preview ([#2769](https://github.com/HankHuang0516/EClaw/issues/2769)) ([466d4d3](https://github.com/HankHuang0516/EClaw/commit/466d4d3ef81c628d3f58db64323946053d7bf61c))
* **mention-parser:** ignore @-mentions inside markdown code spans ([#2645](https://github.com/HankHuang0516/EClaw/issues/2645)) ([8da19d4](https://github.com/HankHuang0516/EClaw/commit/8da19d4a79ceb4152bf2144ee0847c61ce3e1def)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **kanban:** lazy-load dependency chips via IntersectionObserver ([#2632](https://github.com/HankHuang0516/EClaw/issues/2632)) ([20586b4](https://github.com/HankHuang0516/EClaw/commit/20586b43357335f9eb6a190c02d58c8e36b58aba)), closes [#2631](https://github.com/HankHuang0516/EClaw/issues/2631)
* **i18n:** localize FCM NotificationChannel labels (card_ec8d3a22) ([#2918](https://github.com/HankHuang0516/EClaw/issues/2918)) ([591cd20](https://github.com/HankHuang0516/EClaw/commit/591cd206704693650a53d19d94c4cc75daf84ffd))
* **kanban:** make card sorting deterministic ([#2756](https://github.com/HankHuang0516/EClaw/issues/2756)) ([48e2117](https://github.com/HankHuang0516/EClaw/commit/48e2117b64e37f05dc635e0a3b67bfd43cbe48f5))
* **portal/nagoya-trip:** map-link invisible on dark hero/day-banner ([#2897](https://github.com/HankHuang0516/EClaw/issues/2897)) ([cc33df6](https://github.com/HankHuang0516/EClaw/commit/cc33df686673455c20beaee60871412a5d486e66)), closes [#1f4030](https://github.com/HankHuang0516/EClaw/issues/1f4030) [#8b8579](https://github.com/HankHuang0516/EClaw/issues/8b8579) [#6e6859](https://github.com/HankHuang0516/EClaw/issues/6e6859) [#7a5614](https://github.com/HankHuang0516/EClaw/issues/7a5614)
* **org-chart:** notify affected bots on hierarchy change ([#2812](https://github.com/HankHuang0516/EClaw/issues/2812)) ([55675fd](https://github.com/HankHuang0516/EClaw/commit/55675fdf4487494d729a29524b32bd81b756a00c)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** notify reviewer on manual /move → review ([#2753](https://github.com/HankHuang0516/EClaw/issues/2753)) ([6cbbb4e](https://github.com/HankHuang0516/EClaw/commit/6cbbb4ee8c0d4d8ad54df2e9b5faaa3699bd530f))
* **wallpaper:** off-load spritesheet fetch to IO so per-petdx sprites actually render ([#2618](https://github.com/HankHuang0516/EClaw/issues/2618)) ([61b832c](https://github.com/HankHuang0516/EClaw/commit/61b832c9fa8a1d0caab810ccc942d85c63349267)), closes [#2615](https://github.com/HankHuang0516/EClaw/issues/2615) [#2577](https://github.com/HankHuang0516/EClaw/issues/2577)
* **security:** patch P0 sanitize-html XSS + P1 protobufjs + exam.html XSS ([#2829](https://github.com/HankHuang0516/EClaw/issues/2829)) ([c71b871](https://github.com/HankHuang0516/EClaw/commit/c71b871a045887375dd0d26d1a3280a0891a89ad))
* **security:** patch ws uninitialized memory disclosure (GHSA-58qx-3vcg-4xpx) ([#2872](https://github.com/HankHuang0516/EClaw/issues/2872)) ([2523d15](https://github.com/HankHuang0516/EClaw/commit/2523d154bbe501a7cc086340f7a07ece3abfa69b))
* **portal:** petdx-browser cookie-session fallback for device-login ([#2757](https://github.com/HankHuang0516/EClaw/issues/2757)) ([ca275f4](https://github.com/HankHuang0516/EClaw/commit/ca275f4519835da0c7ad71c588908a18f6f138d8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **api:** platform-stats 500 + entity/lookup publicCode alias ([#2809](https://github.com/HankHuang0516/EClaw/issues/2809), [#2810](https://github.com/HankHuang0516/EClaw/issues/2810)) ([#2818](https://github.com/HankHuang0516/EClaw/issues/2818)) ([f99fd17](https://github.com/HankHuang0516/EClaw/commit/f99fd17b2b1c32d88daa2510ff66d714c1a53edc))
* **i18n:** positional format specifiers for feedback_result_logs (7 locales) ([#2597](https://github.com/HankHuang0516/EClaw/issues/2597)) ([21aedc7](https://github.com/HankHuang0516/EClaw/commit/21aedc7eebc7a2839e340136f38dfdfd4dabb9dc))
* **avatar-petdx:** preserve descriptor across transient API failures (flicker) ([#2625](https://github.com/HankHuang0516/EClaw/issues/2625)) ([7b1c606](https://github.com/HankHuang0516/EClaw/commit/7b1c606514f7698d72ec95cf6c556e4043966186))
* **chat:** preserve recipient selection across rental-health refresh (P0 #card_eb1cba76) ([#2906](https://github.com/HankHuang0516/EClaw/issues/2906)) ([9cc0301](https://github.com/HankHuang0516/EClaw/commit/9cc0301cc26a0f49af4b7f53486f5c1a7cdd7902)), closes [#card_eb1cba76](https://github.com/HankHuang0516/EClaw/issues/card_eb1cba76) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **chat:** preserve scroll anchor while reading history ([#2693](https://github.com/HankHuang0516/EClaw/issues/2693)) ([945fdb7](https://github.com/HankHuang0516/EClaw/commit/945fdb7192b791b31882e1e75568dd8b11e4686f))
* **promo:** pull video embed from /promo-chat-avatar.html ([#2724](https://github.com/HankHuang0516/EClaw/issues/2724)) ([2afabc8](https://github.com/HankHuang0516/EClaw/commit/2afabc8c5ff8b25218a7cb857e8adfa572c8e9d5))
* **dashboard:** read live.rate_limits.{five_hour,seven_day}.used_percentage ([#2895](https://github.com/HankHuang0516/EClaw/issues/2895)) ([8223303](https://github.com/HankHuang0516/EClaw/commit/822330312bccb1c76675ad2c3b26e78d10dd1298))
* **kanban:** realign stale recurring schedules ([#2785](https://github.com/HankHuang0516/EClaw/issues/2785)) ([ab8ee25](https://github.com/HankHuang0516/EClaw/commit/ab8ee250a9b37f3d3e838bb01d8866c8d2b78231))
* **i18n:** reapply de6970 locale gap translations ([#2925](https://github.com/HankHuang0516/EClaw/issues/2925)) ([d994dc1](https://github.com/HankHuang0516/EClaw/commit/d994dc1d240fef72326db2599262375ccbf29175))
* **portal:** reduce QA-discovered request fanout ([#2656](https://github.com/HankHuang0516/EClaw/issues/2656)) ([1e46d6b](https://github.com/HankHuang0516/EClaw/commit/1e46d6bab61e58c65b452b6503d953f8dddeee75))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **portal:** remove org chart fit scale floor ([#2676](https://github.com/HankHuang0516/EClaw/issues/2676)) ([0f01606](https://github.com/HankHuang0516/EClaw/commit/0f016068b963bb5f800a02f28817c7174979d913))
* **rental:** remove phantom 'webhook test push' step from BIND_COMPLETE ([#2864](https://github.com/HankHuang0516/EClaw/issues/2864)) ([47f4a3e](https://github.com/HankHuang0516/EClaw/commit/47f4a3edf76aa95ebd06d8713cd44fda6eef9b5d))
* **i18n:** rename mm_empty_title → mm_state_empty_title in mindmap.html ([#2683](https://github.com/HankHuang0516/EClaw/issues/2683)) ([c79c109](https://github.com/HankHuang0516/EClaw/commit/c79c109bea23142e8a6d9ace976d105af1280ec9))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **chat:** render mention avatars with companion renderer ([#2633](https://github.com/HankHuang0516/EClaw/issues/2633)) ([03e205f](https://github.com/HankHuang0516/EClaw/commit/03e205f663ecd2c2f443d4009dd5af0093f0bbbb))
* **kanban:** reserve mobile comments panel height ([#2782](https://github.com/HankHuang0516/EClaw/issues/2782)) ([ce8662d](https://github.com/HankHuang0516/EClaw/commit/ce8662d362422fdd25037f1deb61dbed9425e2f9))
* **channel:** restore handshake fallback to discovered sessions ([#2915](https://github.com/HankHuang0516/EClaw/issues/2915)) ([#2917](https://github.com/HankHuang0516/EClaw/issues/2917)) ([9d7d3a2](https://github.com/HankHuang0516/EClaw/commit/9d7d3a25654289998314dd5ca152cefdb8a4d64e)), closes [#2912](https://github.com/HankHuang0516/EClaw/issues/2912)
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* scheduled audit 2026-05-13 — 6 bugs, XSS, i18n ([#2668](https://github.com/HankHuang0516/EClaw/issues/2668)) ([21dd513](https://github.com/HankHuang0516/EClaw/commit/21dd513b4464738de29164265437435ba6cc4817)), closes [#2605](https://github.com/HankHuang0516/EClaw/issues/2605) [#2608](https://github.com/HankHuang0516/EClaw/issues/2608) [#2600](https://github.com/HankHuang0516/EClaw/issues/2600) [#2599](https://github.com/HankHuang0516/EClaw/issues/2599) [#2598](https://github.com/HankHuang0516/EClaw/issues/2598)
* **channel:** scope official bot sessions ([#2912](https://github.com/HankHuang0516/EClaw/issues/2912)) ([5c56b62](https://github.com/HankHuang0516/EClaw/commit/5c56b62c13b739b76f39e168a26bd4e5de2644fb))
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **dashboard:** show Claude weekly bar reset countdown ([#2896](https://github.com/HankHuang0516/EClaw/issues/2896)) ([3b87845](https://github.com/HankHuang0516/EClaw/commit/3b87845d713e980fec69f6b8007549338a326713)), closes [#2895](https://github.com/HankHuang0516/EClaw/issues/2895)
* **chat:** smart-chip preview falls back to inline c.comments when /comments fails (PR [#2677](https://github.com/HankHuang0516/EClaw/issues/2677)) ([7f4dffd](https://github.com/HankHuang0516/EClaw/commit/7f4dffd2c83ea86f296b8fa0610f0e67c9f1af11))
* **kanban:** stabilize comment detail viewport ([#2796](https://github.com/HankHuang0516/EClaw/issues/2796)) ([0a10aad](https://github.com/HankHuang0516/EClaw/commit/0a10aadb5a5b12ff23454c16d5c88183b94ad7d7))
* **wallpaper:** stop Android live wallpaper flashing default lobster on companion change ([#2629](https://github.com/HankHuang0516/EClaw/issues/2629)) ([8b4f66f](https://github.com/HankHuang0516/EClaw/commit/8b4f66fcb335bf43128f924b761b6337c817095b)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **chat:** stop chat.html bouncing to dashboard via /api/rental/health-status 401 race ([#2833](https://github.com/HankHuang0516/EClaw/issues/2833)) ([c422406](https://github.com/HankHuang0516/EClaw/commit/c4224067cdcfe7f3e22ab95007c7563dac4196ac))
* **openclaw-channel:** support OpenClaw 2026.5.20 ([8045de6](https://github.com/HankHuang0516/EClaw/commit/8045de6bebecfc05f9bd57453b99c098ca35681b))
* **mentions:** support same-device CJK display-name tags ([#2874](https://github.com/HankHuang0516/EClaw/issues/2874)) ([b8f61be](https://github.com/HankHuang0516/EClaw/commit/b8f61be9a3962fef75dd32ea34e8900880dafaf9))
* **channel:** suppress operational A2A loop messages (rebase of [#2288](https://github.com/HankHuang0516/EClaw/issues/2288)) ([#2930](https://github.com/HankHuang0516/EClaw/issues/2930)) ([7ceabc9](https://github.com/HankHuang0516/EClaw/commit/7ceabc915df22123cb46ae1500e2eb2e279250af))
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **dashboard:** use sessions[].project for widget Projects list (was .project_id) ([#2894](https://github.com/HankHuang0516/EClaw/issues/2894)) ([0fd1334](https://github.com/HankHuang0516/EClaw/commit/0fd1334897d4a603cc6eb74f34b48606547e09cf))
* **app:** WebView pages honor app-selected locale via ?lang= URL param ([#2672](https://github.com/HankHuang0516/EClaw/issues/2672)) ([8ed8757](https://github.com/HankHuang0516/EClaw/commit/8ed8757aec5bf214e837cc0d81bf2b23f1993a91)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **share-chat:** wire rich CTA actions to msgInput ([#2867](https://github.com/HankHuang0516/EClaw/issues/2867)) ([df23b11](https://github.com/HankHuang0516/EClaw/commit/df23b1147d34c59a644a145bbd87c18b96400acc))


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* **usage-api:** /api/usage/{snapshot,timeline} + usage_snapshots table (Plan B Phase 1) ([#2889](https://github.com/HankHuang0516/EClaw/issues/2889)) ([a0d859c](https://github.com/HankHuang0516/EClaw/commit/a0d859c63f0220909dadb2b1952174861ccdce14))
* **community:** 1-click chat button on bot cards + utm tagging ([#2610](https://github.com/HankHuang0516/EClaw/issues/2610)) ([eee97b0](https://github.com/HankHuang0516/EClaw/commit/eee97b0e2e4e74945ec24f218a69a52800b97a66))
* **chat:** accept ?messageId= as deep-link alias ([#2838](https://github.com/HankHuang0516/EClaw/issues/2838)) ([1785a87](https://github.com/HankHuang0516/EClaw/commit/1785a87310426637fd10df83754fb9924c45207f))
* **chat:** add avatar size preference ([#2714](https://github.com/HankHuang0516/EClaw/issues/2714)) ([6fe164a](https://github.com/HankHuang0516/EClaw/commit/6fe164ad8b22fa576d2dd9ad37c0d9fc295b5a83))
* **dashboard:** add Claude and Codex channel guides ([#2640](https://github.com/HankHuang0516/EClaw/issues/2640)) ([c64e4c4](https://github.com/HankHuang0516/EClaw/commit/c64e4c4afc78db58c5cd578f00486dd7b2fd3311))
* **dashboard:** add Claude Code channel guide card ([#2667](https://github.com/HankHuang0516/EClaw/issues/2667)) ([d70d75c](https://github.com/HankHuang0516/EClaw/commit/d70d75c0c8caa8a540358a9aab4556b8c1927a5c))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* **kanban:** add device-scoped card tags ([#2773](https://github.com/HankHuang0516/EClaw/issues/2773)) ([53a387e](https://github.com/HankHuang0516/EClaw/commit/53a387e67ba7bb4f6bed1c427000c4ae8666577a))
* **portal:** add entity selector to petdx-browser ([#2602](https://github.com/HankHuang0516/EClaw/issues/2602)) ([3fa067e](https://github.com/HankHuang0516/EClaw/commit/3fa067e00b38829b48a37cecd33ee81a9a1122d9))
* **kanban:** add explicit card links ([#2721](https://github.com/HankHuang0516/EClaw/issues/2721)) ([ef9f812](https://github.com/HankHuang0516/EClaw/commit/ef9f812a3fcf39efd07fd158ce90951bdd045ac7))
* **kanban:** add explicit done-card reopen flow ([#2801](https://github.com/HankHuang0516/EClaw/issues/2801)) ([5080aac](https://github.com/HankHuang0516/EClaw/commit/5080aacb75047c0deaa379ee708ec85465afd57c))
* **mindmap:** add GET /api/mindmap/graph force-graph projection ([#2680](https://github.com/HankHuang0516/EClaw/issues/2680)) ([a00b2e7](https://github.com/HankHuang0516/EClaw/commit/a00b2e775af2c4c98cd157f760ad87aeeee469f0)), closes [#2679](https://github.com/HankHuang0516/EClaw/issues/2679) [#2679](https://github.com/HankHuang0516/EClaw/issues/2679)
* **dashboard:** add Hermes channel promo card ([#2708](https://github.com/HankHuang0516/EClaw/issues/2708)) ([337aca1](https://github.com/HankHuang0516/EClaw/commit/337aca153d5a1cd7e888c065f00ae54db7872d91))
* **rental:** add listing soft pause ([#2781](https://github.com/HankHuang0516/EClaw/issues/2781)) ([6586b72](https://github.com/HankHuang0516/EClaw/commit/6586b72717ddb1637d91cd3242c8d2ff554f62b4))
* **portal:** add Nagoya 5D4N trip static cross-ref page ([#2689](https://github.com/HankHuang0516/EClaw/issues/2689)) ([2e0efb6](https://github.com/HankHuang0516/EClaw/commit/2e0efb6dcdaff52226cc8854a96747000b12bdff))
* **portal:** add Nagoya image atlas static page ([#2743](https://github.com/HankHuang0516/EClaw/issues/2743)) ([ac026e9](https://github.com/HankHuang0516/EClaw/commit/ac026e9fd2c92ac9437d01edddffc9adf972f6ba))
* **portal:** add Nagoya trip map links and image lightbox ([#2821](https://github.com/HankHuang0516/EClaw/issues/2821)) ([3e40955](https://github.com/HankHuang0516/EClaw/commit/3e40955650a05f45a6b9f7e39e73847705424a03))
* **portal/nagoya:** add parking shortcut buttons next to itinerary places ([#2826](https://github.com/HankHuang0516/EClaw/issues/2826)) ([63968c5](https://github.com/HankHuang0516/EClaw/commit/63968c554d046afc8d978de74e3aacbf7700500d))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **settings:** add rental roster management preview ([#2758](https://github.com/HankHuang0516/EClaw/issues/2758)) ([9706e59](https://github.com/HankHuang0516/EClaw/commit/9706e59ded140a90a6e02348124282bc69d89001))
* **rental:** add renter health chat indicator ([#2690](https://github.com/HankHuang0516/EClaw/issues/2690)) ([36cd2e9](https://github.com/HankHuang0516/EClaw/commit/36cd2e9802be4c7ebb03d3024617fa74aca48ffd))
* **ios:** add Tutorial & Intro entry in Settings ([#2800](https://github.com/HankHuang0516/EClaw/issues/2800)) ([ed83e51](https://github.com/HankHuang0516/EClaw/commit/ed83e51d043bf4cd5865f38dc95a91ed54820d6c))
* **landing:** add Watch Full Demo CTA below hero video ([#2799](https://github.com/HankHuang0516/EClaw/issues/2799)) ([66107c9](https://github.com/HankHuang0516/EClaw/commit/66107c954727551fd34d989a4674daaad9b63968))
* **footer:** add Watch Intro Video link in Info column ([#2798](https://github.com/HankHuang0516/EClaw/issues/2798)) ([d7c6d59](https://github.com/HankHuang0516/EClaw/commit/d7c6d596b69c6a5b257bf1f7a792a407ef9712ad))
* **i18n:** ar iter-2 — fill 623 missing keys against en source ([#2847](https://github.com/HankHuang0516/EClaw/issues/2847)) ([ee94a7a](https://github.com/HankHuang0516/EClaw/commit/ee94a7ae6812b5163efe4284ee4907ca32302f5c))
* **kanban:** backlog launch-gate flag to suppress L1/L2/L3 escalation ([#2855](https://github.com/HankHuang0516/EClaw/issues/2855)) ([cb8bf1b](https://github.com/HankHuang0516/EClaw/commit/cb8bf1bb6421f25214f65e129a8cadccc49cc266)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#4](https://github.com/HankHuang0516/EClaw/issues/4) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **companion:** bridge crafter-station/petdex gallery (1784 pets) ([#2601](https://github.com/HankHuang0516/EClaw/issues/2601)) ([2e245be](https://github.com/HankHuang0516/EClaw/commit/2e245bea6dd47ea7361b927d389188a3c23b6bb3))
* **promo:** chat avatar size feature landing page (self-hosted MP4) ([#2722](https://github.com/HankHuang0516/EClaw/issues/2722)) ([3852210](https://github.com/HankHuang0516/EClaw/commit/3852210d355704d018e3daca6b5f9512a011b210)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **kanban:** cron-spawn jitter + lane backpressure to prevent same-tick wedge ([#2791](https://github.com/HankHuang0516/EClaw/issues/2791)) ([9f414a7](https://github.com/HankHuang0516/EClaw/commit/9f414a731d6393672a0a4189c7b408c529ae5e12)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **portal:** dashboard usage widget — Claude/Codex 5h gauges + 24h chart (Plan B Phase 3) ([#2891](https://github.com/HankHuang0516/EClaw/issues/2891)) ([d18f373](https://github.com/HankHuang0516/EClaw/commit/d18f373857e4bd302437d6bda2a1e01871fbb1db))
* **portal:** dashboard usage widget v2 — Session/Weekly % bars + projects, no cost (Plan B Phase 3.1) ([#2893](https://github.com/HankHuang0516/EClaw/issues/2893)) ([4bc0dc7](https://github.com/HankHuang0516/EClaw/commit/4bc0dc744ed9d54dfd532ebac4b705c7f84ec0a6))
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **info:** embed 75s promo video on Quick Start tab ([#2795](https://github.com/HankHuang0516/EClaw/issues/2795)) ([86c3f70](https://github.com/HankHuang0516/EClaw/commit/86c3f709a95eebbee1241077b807880463f804b6))
* **promo:** embed daily eclaw video 2026-05-14 ([#2786](https://github.com/HankHuang0516/EClaw/issues/2786)) ([718a814](https://github.com/HankHuang0516/EClaw/commit/718a814ab16850bc2b33a1b303841e2c4378ecfa)), closes [#2782](https://github.com/HankHuang0516/EClaw/issues/2782) [#2693](https://github.com/HankHuang0516/EClaw/issues/2693)
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **info:** embed promo video at top of Quick Start tab ([#2797](https://github.com/HankHuang0516/EClaw/issues/2797)) ([047679f](https://github.com/HankHuang0516/EClaw/commit/047679fd57ab9949eaeacea414d5611e71afe041))
* **rental:** enforce strict rebind refunds ([#2703](https://github.com/HankHuang0516/EClaw/issues/2703)) ([a1859c5](https://github.com/HankHuang0516/EClaw/commit/a1859c50e6fb3991d7a8051491502d824a14a116))
* **portal:** group task chip actions ([#2825](https://github.com/HankHuang0516/EClaw/issues/2825)) ([5db5c59](https://github.com/HankHuang0516/EClaw/commit/5db5c59b32b8635f1412205faf0c2f9164d3d5d4))
* **hermes:** H2 health-check cron + 7d SLA + commander alerts (card_07891ac) ([#2922](https://github.com/HankHuang0516/EClaw/issues/2922)) ([82b4315](https://github.com/HankHuang0516/EClaw/commit/82b4315aea234493e3d1889dc53958c2f1d842e0)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **portal:** info-guide-rules + info-guide-soul slide pair ([#2793](https://github.com/HankHuang0516/EClaw/issues/2793)) ([1c8bddc](https://github.com/HankHuang0516/EClaw/commit/1c8bddc4c185054b2b60088498e3d45509117127)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **chat:** link card previews to kanban ([#2754](https://github.com/HankHuang0516/EClaw/issues/2754)) ([2261240](https://github.com/HankHuang0516/EClaw/commit/22612402c2e95efb07246629e81a849be41ee9c7))
* **mission:** link notes to kanban cards ([#2723](https://github.com/HankHuang0516/EClaw/issues/2723)) ([b36dc18](https://github.com/HankHuang0516/EClaw/commit/b36dc18f3a8facf12e0b6046351c222f1e99dc55))
* **usage-daemon:** macOS launchd daemon polls Claude/Codex usage → POST /api/usage/snapshot (Plan B Phase 2) ([#2890](https://github.com/HankHuang0516/EClaw/issues/2890)) ([fd225e1](https://github.com/HankHuang0516/EClaw/commit/fd225e12d9491037be1a340bd63b54b5f3308c7f))
* **mindmap:** mission.html link to /portal/mindmap.html + deprecate /api/mission/mindmap ([#2685](https://github.com/HankHuang0516/EClaw/issues/2685)) ([11e297b](https://github.com/HankHuang0516/EClaw/commit/11e297bab1c9b56fcde3027d6500b7c58891bf18)), closes [#2680](https://github.com/HankHuang0516/EClaw/issues/2680) [#2684](https://github.com/HankHuang0516/EClaw/issues/2684)
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **portal:** nagoya trip interactive map (Leaflet + OSM, no API key) ([#2888](https://github.com/HankHuang0516/EClaw/issues/2888)) ([ecfdac0](https://github.com/HankHuang0516/EClaw/commit/ecfdac06348c12ee7c6872c6c28d5f82162e7aa9))
* **android:** native tab navigation bridge for portal pages ([#2832](https://github.com/HankHuang0516/EClaw/issues/2832)) ([7e02e6f](https://github.com/HankHuang0516/EClaw/commit/7e02e6f225014e64f08f55035d7b9e5727873343)), closes [#2824](https://github.com/HankHuang0516/EClaw/issues/2824) [#2743](https://github.com/HankHuang0516/EClaw/issues/2743) [#2821](https://github.com/HankHuang0516/EClaw/issues/2821) [#2826](https://github.com/HankHuang0516/EClaw/issues/2826) [#2797](https://github.com/HankHuang0516/EClaw/issues/2797) [#2798](https://github.com/HankHuang0516/EClaw/issues/2798) [#2799](https://github.com/HankHuang0516/EClaw/issues/2799) [#2800](https://github.com/HankHuang0516/EClaw/issues/2800) [#2801](https://github.com/HankHuang0516/EClaw/issues/2801) [#2816](https://github.com/HankHuang0516/EClaw/issues/2816) [#2796](https://github.com/HankHuang0516/EClaw/issues/2796) [#2825](https://github.com/HankHuang0516/EClaw/issues/2825) [#2812](https://github.com/HankHuang0516/EClaw/issues/2812) [#2813](https://github.com/HankHuang0516/EClaw/issues/2813) [#2814](https://github.com/HankHuang0516/EClaw/issues/2814) [#2815](https://github.com/HankHuang0516/EClaw/issues/2815) [#2811](https://github.com/HankHuang0516/EClaw/issues/2811) [#2807](https://github.com/HankHuang0516/EClaw/issues/2807) [#2808](https://github.com/HankHuang0516/EClaw/issues/2808) [#2818](https://github.com/HankHuang0516/EClaw/issues/2818) [#2819](https://github.com/HankHuang0516/EClaw/issues/2819) [#2824](https://github.com/HankHuang0516/EClaw/issues/2824)
* **channel:** outbound backpressure (30/min cap + 429 retry-after) ([#2911](https://github.com/HankHuang0516/EClaw/issues/2911)) ([36dc99c](https://github.com/HankHuang0516/EClaw/commit/36dc99ca78b0e1724a2aaefb5936669077b7a28f))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **settings:** per-entity nudge override UI (Phase 2) ([#2837](https://github.com/HankHuang0516/EClaw/issues/2837)) ([ea7662b](https://github.com/HankHuang0516/EClaw/commit/ea7662b0858882dae461e1387f711895924f9ab8)), closes [3/#4](https://github.com/HankHuang0516/EClaw/issues/4)
* **kanban:** per-entity nudge overrides (Phase 2 of card_e066cb6b) ([#2836](https://github.com/HankHuang0516/EClaw/issues/2836)) ([0425f80](https://github.com/HankHuang0516/EClaw/commit/0425f80bc1169c0d506b665659c8676695c45553))
* **avatar:** petdx render on card-holder my-cards (Phase 1b) ([#2621](https://github.com/HankHuang0516/EClaw/issues/2621)) ([f78ba8b](https://github.com/HankHuang0516/EClaw/commit/f78ba8b18acc426936ab6d8a82ca7541effea00d))
* **avatar:** petdx render on dashboard entity grid / org chart / bindings (Phase 1b) ([#2622](https://github.com/HankHuang0516/EClaw/issues/2622)) ([f417749](https://github.com/HankHuang0516/EClaw/commit/f41774914451048e8cd76e9ae30416a0642e173b)), closes [#2620](https://github.com/HankHuang0516/EClaw/issues/2620) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621)
* **avatar:** petdx render on kanban auto-assign / pulse / comment avatars (Phase 1b) ([#2624](https://github.com/HankHuang0516/EClaw/issues/2624)) ([6bff5f8](https://github.com/HankHuang0516/EClaw/commit/6bff5f80440d0bd91a6b1721cde9478d685c4d46))
* **avatar:** petdx render on mission skill/rule/soul entity dialogs (Phase 1b) ([#2623](https://github.com/HankHuang0516/EClaw/issues/2623)) ([129327b](https://github.com/HankHuang0516/EClaw/commit/129327bc7b91056659f1ab7e8d5e3f5260d951fb))
* **mindmap:** portal/mindmap.html force-graph prototype ([#129](https://github.com/HankHuang0516/EClaw/issues/129)) ([#2681](https://github.com/HankHuang0516/EClaw/issues/2681)) ([0f15e69](https://github.com/HankHuang0516/EClaw/commit/0f15e6930f0697c37fa08f3219edb8f9e499837f)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **channel:** record delivery receipts ([#2913](https://github.com/HankHuang0516/EClaw/issues/2913)) ([90c671b](https://github.com/HankHuang0516/EClaw/commit/90c671bd1970ab51584b90e2b634484ec10cc7ae))
* **portal:** redo nagoya trip page in professional tour-guide style ([#2691](https://github.com/HankHuang0516/EClaw/issues/2691)) ([b2378c0](https://github.com/HankHuang0516/EClaw/commit/b2378c06ee20fa9cccfdceceb1a4c9e0b3072f59))
* **i18n:** remove ms+hi orphan keys from i18n.js ([#2849](https://github.com/HankHuang0516/EClaw/issues/2849)) ([320176c](https://github.com/HankHuang0516/EClaw/commit/320176c06a3cfd8631e2a82ad02a6bd6a9af0389))
* **avatar:** render selected petdx companion in chat avatars ([#2620](https://github.com/HankHuang0516/EClaw/issues/2620)) ([0bdd046](https://github.com/HankHuang0516/EClaw/commit/0bdd046fe1b1c428e32edda366ff112c08927f4c))
* **home:** replace native home with WebView hosting dashboard.html ([#2634](https://github.com/HankHuang0516/EClaw/issues/2634)) ([e69ea81](https://github.com/HankHuang0516/EClaw/commit/e69ea8160c239b083a83d6dc83a4f1c3f901c863))
* **app:** route chat mission jumps through native tabs ([#2824](https://github.com/HankHuang0516/EClaw/issues/2824)) ([deb07b6](https://github.com/HankHuang0516/EClaw/commit/deb07b69a9ecca632fe27278de537f1d85234e94))
* **proxy:** scope private repo git auth ([#2926](https://github.com/HankHuang0516/EClaw/issues/2926)) ([246f7ff](https://github.com/HankHuang0516/EClaw/commit/246f7ff1dedaf7bece9e3cb9eb24d0ab32ebb393))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **chat:** support message deep links ([#2719](https://github.com/HankHuang0516/EClaw/issues/2719)) ([2dc0f1e](https://github.com/HankHuang0516/EClaw/commit/2dc0f1eeb259e1a0848db4a03186b989372cd91c))
* **mission:** support note deep links ([#2717](https://github.com/HankHuang0516/EClaw/issues/2717)) ([2efd3a5](https://github.com/HankHuang0516/EClaw/commit/2efd3a5e741217a07c0b0ac54a0ddd010e0ebe23))
* **share-chat:** twitter card + per-bot og:image/twitter:* in SSR ([#2609](https://github.com/HankHuang0516/EClaw/issues/2609)) ([6cdc853](https://github.com/HankHuang0516/EClaw/commit/6cdc853dc884cdb95bd47214942768981f218ae0))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))
* **settings:** wire petdx avatar into channel-account chips ([#2626](https://github.com/HankHuang0516/EClaw/issues/2626)) ([88aec77](https://github.com/HankHuang0516/EClaw/commit/88aec772628c240e97b336bb5820892ad632d1ae))
* **files:** wire petdx avatar into entity filter & per-file badges ([#2627](https://github.com/HankHuang0516/EClaw/issues/2627)) ([5b3e5cc](https://github.com/HankHuang0516/EClaw/commit/5b3e5cc542d9da69bb4e92500fd03a542ea33f00))
* **mindmap:** wrap hardcoded zh-TW UI strings with i18n t() ([#2607](https://github.com/HankHuang0516/EClaw/issues/2607)) ([166af87](https://github.com/HankHuang0516/EClaw/commit/166af8772b2121a24aaf34a83b3de970e9b3b571)), closes [#2606](https://github.com/HankHuang0516/EClaw/issues/2606)
* **i18n:** zh-TW backfill 8 keys (soft-pause + chat + invite + wallet) ([#2815](https://github.com/HankHuang0516/EClaw/issues/2815)) ([a2dd574](https://github.com/HankHuang0516/EClaw/commit/a2dd5743ce8d43a4b6ace9a2fd4b52568180d6c5))


### Performance Improvements

* **mindmap:** force-graph hardening for 1000/2000-node graphs ([#2684](https://github.com/HankHuang0516/EClaw/issues/2684)) ([da8b1c8](https://github.com/HankHuang0516/EClaw/commit/da8b1c8f947ab8bc8fa455c1962a91146623a1fc))


### Reverts

* Revert "feat(telegram): long-poll adapter PoC (card_406e612942ff062a06fc47be) ([#2238](https://github.com/HankHuang0516/EClaw/issues/2238))" ([#2239](https://github.com/HankHuang0516/EClaw/issues/2239)) ([eb7aa92](https://github.com/HankHuang0516/EClaw/commit/eb7aa92cce454b4a1a22654a2d133cdebe78c2bd))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-25)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **notifications:** add kanban_done + kanban_done_auto toggles to Android Settings ([#2636](https://github.com/HankHuang0516/EClaw/issues/2636)) ([a710909](https://github.com/HankHuang0516/EClaw/commit/a7109095e3393b8564e7ef1b23d382a4fbb944b8))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **api:** align /api/platform-stats skill-doc with device-auth contract (card_49b8190) ([#2916](https://github.com/HankHuang0516/EClaw/issues/2916)) ([ee55b2f](https://github.com/HankHuang0516/EClaw/commit/ee55b2fdbfbcd4bead5501d16ee66339056c32d7))
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **i18n:** ar block — fix 27 broken entries (CJK leaks + truncated HTML) ([#2851](https://github.com/HankHuang0516/EClaw/issues/2851)) ([5b19175](https://github.com/HankHuang0516/EClaw/commit/5b19175d712d00d16fcec00b749035c4beae7a5c))
* **chat:** atomic-load target bar (await contacts before first render) ([#2831](https://github.com/HankHuang0516/EClaw/issues/2831)) ([5f529e6](https://github.com/HankHuang0516/EClaw/commit/5f529e6b772eacc38ba1de69b44258a05f0d816a)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2](https://github.com/HankHuang0516/EClaw/issues/2)
* **channel:** await binding persistence ([712516d](https://github.com/HankHuang0516/EClaw/commit/712516decafb745035bd1434a28cc1973d433e19))
* **rental:** bump handshake timeout to 60s + timeout-aware discovery fallback ([#2863](https://github.com/HankHuang0516/EClaw/issues/2863)) ([fd4322f](https://github.com/HankHuang0516/EClaw/commit/fd4322f8890f3c2dfca3acdae6a4b95f19c381f9)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **i18n:** clear batch 1 residual missing keys ([#2790](https://github.com/HankHuang0516/EClaw/issues/2790)) ([211030e](https://github.com/HankHuang0516/EClaw/commit/211030e0b0b6a865c11f0c4ed60dc4e356d43b7a))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **kanban:** comment input no longer overlaps last comment in card detail (PR [#2678](https://github.com/HankHuang0516/EClaw/issues/2678)) ([fba91fc](https://github.com/HankHuang0516/EClaw/commit/fba91fca15402b453a0db5ee857c0b16e6087055))
* **chat:** compact 20px avatar in target bar (App WebView only shows [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2](https://github.com/HankHuang0516/EClaw/issues/2)) ([#2830](https://github.com/HankHuang0516/EClaw/issues/2830)) ([42c7543](https://github.com/HankHuang0516/EClaw/commit/42c7543b4a78a7abf3f5f7535eb9bc6142cd0fe2)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **portal:** complete 401 redirect sweep + mobile UIUX truncation ([#2842](https://github.com/HankHuang0516/EClaw/issues/2842)) ([f9799ba](https://github.com/HankHuang0516/EClaw/commit/f9799ba42498b109f0a8a70e80836aa6da51e216)), closes [#2833](https://github.com/HankHuang0516/EClaw/issues/2833) [#2845](https://github.com/HankHuang0516/EClaw/issues/2845) [#2844](https://github.com/HankHuang0516/EClaw/issues/2844) [#2843](https://github.com/HankHuang0516/EClaw/issues/2843)
* **uiux:** continue qa mobile readability sweep ([#2854](https://github.com/HankHuang0516/EClaw/issues/2854)) ([57606ff](https://github.com/HankHuang0516/EClaw/commit/57606ffe3e543b07a026aacc53c4b470c9a7825b))
* **i18n:** cover dynamic portal wrapper keys ([#2807](https://github.com/HankHuang0516/EClaw/issues/2807)) ([4c711cc](https://github.com/HankHuang0516/EClaw/commit/4c711cc4009300ffe4e8933a98ee01cd0fdd6aeb))
* **i18n:** dedup 20 dash_channel_card_* keys in es block ([#2876](https://github.com/HankHuang0516/EClaw/issues/2876)) ([807284c](https://github.com/HankHuang0516/EClaw/commit/807284ce363ef119ccdb0ae40e5ce99d3f0a27e0))
* **i18n:** dedupe backend locale keys via AST ([#2920](https://github.com/HankHuang0516/EClaw/issues/2920)) ([40ef114](https://github.com/HankHuang0516/EClaw/commit/40ef11414c8b836fe1ed93ec06c839df3a1bf7b9))
* **i18n:** dedupe zh locale keys ([#2919](https://github.com/HankHuang0516/EClaw/issues/2919)) ([afd2cca](https://github.com/HankHuang0516/EClaw/commit/afd2cca8086c2f2df0d04c9c5f8c58733652875e))
* **test:** delegate root test and remove invalid jest option ([#2292](https://github.com/HankHuang0516/EClaw/issues/2292)) ([65bf2f8](https://github.com/HankHuang0516/EClaw/commit/65bf2f83d26d925097cd380ab73b04ab2db49842))
* **kanban:** dep-aware nudge gating + roadmap dependency backfill ([#2904](https://github.com/HankHuang0516/EClaw/issues/2904)) ([2b76ac9](https://github.com/HankHuang0516/EClaw/commit/2b76ac9d3b7e4169b7bc3c6f6b0b0903b63cd9f7)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **rental:** don't pollute entity.message on push gateway timeout ([#2860](https://github.com/HankHuang0516/EClaw/issues/2860)) ([592ba44](https://github.com/HankHuang0516/EClaw/commit/592ba44f57536ee00011b6cbddaa6b129a7cbae9))
* **petdx:** drop dark-grey loading placeholder + preload sprite WEBP ([#2628](https://github.com/HankHuang0516/EClaw/issues/2628)) ([59cef38](https://github.com/HankHuang0516/EClaw/commit/59cef387bd69ca99d7d15c86a1364856d3849ad8)), closes [#1a1a1a](https://github.com/HankHuang0516/EClaw/issues/1a1a1a)
* **gateway-ws:** drop Origin header on server-to-server WS upgrade ([#2869](https://github.com/HankHuang0516/EClaw/issues/2869)) ([716dcf9](https://github.com/HankHuang0516/EClaw/commit/716dcf9d0834b17522bb9d894bad84bc142d1a19))
* **setup-scripts:** drop Origin header on server-to-server WS upgrade ([#2875](https://github.com/HankHuang0516/EClaw/issues/2875)) ([9d893b8](https://github.com/HankHuang0516/EClaw/commit/9d893b8e5eea4db275e450bf423903c156cd3e4b)), closes [#2869](https://github.com/HankHuang0516/EClaw/issues/2869)
* **security:** escape innerHTML in chat modal error messages ([#2819](https://github.com/HankHuang0516/EClaw/issues/2819)) ([dce07ad](https://github.com/HankHuang0516/EClaw/commit/dce07adde64795916dba977ae23e46f3371ce7ed)), closes [#2809](https://github.com/HankHuang0516/EClaw/issues/2809) [#2810](https://github.com/HankHuang0516/EClaw/issues/2810) [#2809](https://github.com/HankHuang0516/EClaw/issues/2809) [#2810](https://github.com/HankHuang0516/EClaw/issues/2810)
* **proxy:** export repo auth to CLI child ([#2928](https://github.com/HankHuang0516/EClaw/issues/2928)) ([336a8ca](https://github.com/HankHuang0516/EClaw/commit/336a8caff4e3663287bd2948cf9fe6e04125cbc8))
* **entities:** expose botSecret to owner so wallpaper service can poll companions ([#2615](https://github.com/HankHuang0516/EClaw/issues/2615)) ([04470fc](https://github.com/HankHuang0516/EClaw/commit/04470fce8f8c3fce2b1ba8b243e776606f107502))
* **rental:** expose owner_public_code in marketplace so plaza CTA can route ([#2616](https://github.com/HankHuang0516/EClaw/issues/2616)) ([4d1372f](https://github.com/HankHuang0516/EClaw/commit/4d1372f717d93cab65543e87c852e74e9fb67071)), closes [#2610](https://github.com/HankHuang0516/EClaw/issues/2610)
* **mindmap:** fallback to device scope when entityId is null ([#2728](https://github.com/HankHuang0516/EClaw/issues/2728)) ([7572312](https://github.com/HankHuang0516/EClaw/commit/7572312433d3d75fc245eda48a28919ce14bd927))
* **i18n:** fill 11 missing zh keys post-[#2920](https://github.com/HankHuang0516/EClaw/issues/2920)/[#2921](https://github.com/HankHuang0516/EClaw/issues/2921) (card_de6970) ([#2924](https://github.com/HankHuang0516/EClaw/issues/2924)) ([17c4899](https://github.com/HankHuang0516/EClaw/commit/17c48996489b1444d6ed589027acfa7986178fe1)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** fill backend runtime locale gaps ([#2921](https://github.com/HankHuang0516/EClaw/issues/2921)) ([00d96ff](https://github.com/HankHuang0516/EClaw/commit/00d96ff261b8134b49292623e1f786fd544144cc))
* **i18n:** fill Spanish drift keys ([#2751](https://github.com/HankHuang0516/EClaw/issues/2751)) ([0ad0ee5](https://github.com/HankHuang0516/EClaw/commit/0ad0ee55f7fac3e6ac46d891539950dab4d553cc))
* **portal:** fit embedded org chart to mobile viewport ([#2674](https://github.com/HankHuang0516/EClaw/issues/2674)) ([1c4e1b4](https://github.com/HankHuang0516/EClaw/commit/1c4e1b413ea7027b4cd4b8ecda981b0d0e12e66b))
* **i18n:** fix 6 trailing-comma syntax errors in 10-locale batch ([#2771](https://github.com/HankHuang0516/EClaw/issues/2771)) ([b27c6ca](https://github.com/HankHuang0516/EClaw/commit/b27c6ca204bf813e406c54ce3a2532a5f1f031b3))
* **kanban:** GET card returns latest 50 comments + comments endpoint exposes total ([#2816](https://github.com/HankHuang0516/EClaw/issues/2816)) ([c4d83f7](https://github.com/HankHuang0516/EClaw/commit/c4d83f777a1cd26aea0936e4316aa35c52822eef))
* **sharechat:** guest verify-email modal + disabled Send for unverified ([#2865](https://github.com/HankHuang0516/EClaw/issues/2865)) ([cb3b061](https://github.com/HankHuang0516/EClaw/commit/cb3b0614e0f6160417d907753e66eceb2d666802))
* **uiux:** harden chat previews and roster preview ([#2769](https://github.com/HankHuang0516/EClaw/issues/2769)) ([466d4d3](https://github.com/HankHuang0516/EClaw/commit/466d4d3ef81c628d3f58db64323946053d7bf61c))
* **mention-parser:** ignore @-mentions inside markdown code spans ([#2645](https://github.com/HankHuang0516/EClaw/issues/2645)) ([8da19d4](https://github.com/HankHuang0516/EClaw/commit/8da19d4a79ceb4152bf2144ee0847c61ce3e1def)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **kanban:** lazy-load dependency chips via IntersectionObserver ([#2632](https://github.com/HankHuang0516/EClaw/issues/2632)) ([20586b4](https://github.com/HankHuang0516/EClaw/commit/20586b43357335f9eb6a190c02d58c8e36b58aba)), closes [#2631](https://github.com/HankHuang0516/EClaw/issues/2631)
* **i18n:** localize FCM NotificationChannel labels (card_ec8d3a22) ([#2918](https://github.com/HankHuang0516/EClaw/issues/2918)) ([591cd20](https://github.com/HankHuang0516/EClaw/commit/591cd206704693650a53d19d94c4cc75daf84ffd))
* **kanban:** make card sorting deterministic ([#2756](https://github.com/HankHuang0516/EClaw/issues/2756)) ([48e2117](https://github.com/HankHuang0516/EClaw/commit/48e2117b64e37f05dc635e0a3b67bfd43cbe48f5))
* **portal/nagoya-trip:** map-link invisible on dark hero/day-banner ([#2897](https://github.com/HankHuang0516/EClaw/issues/2897)) ([cc33df6](https://github.com/HankHuang0516/EClaw/commit/cc33df686673455c20beaee60871412a5d486e66)), closes [#1f4030](https://github.com/HankHuang0516/EClaw/issues/1f4030) [#8b8579](https://github.com/HankHuang0516/EClaw/issues/8b8579) [#6e6859](https://github.com/HankHuang0516/EClaw/issues/6e6859) [#7a5614](https://github.com/HankHuang0516/EClaw/issues/7a5614)
* **org-chart:** notify affected bots on hierarchy change ([#2812](https://github.com/HankHuang0516/EClaw/issues/2812)) ([55675fd](https://github.com/HankHuang0516/EClaw/commit/55675fdf4487494d729a29524b32bd81b756a00c)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** notify reviewer on manual /move → review ([#2753](https://github.com/HankHuang0516/EClaw/issues/2753)) ([6cbbb4e](https://github.com/HankHuang0516/EClaw/commit/6cbbb4ee8c0d4d8ad54df2e9b5faaa3699bd530f))
* **wallpaper:** off-load spritesheet fetch to IO so per-petdx sprites actually render ([#2618](https://github.com/HankHuang0516/EClaw/issues/2618)) ([61b832c](https://github.com/HankHuang0516/EClaw/commit/61b832c9fa8a1d0caab810ccc942d85c63349267)), closes [#2615](https://github.com/HankHuang0516/EClaw/issues/2615) [#2577](https://github.com/HankHuang0516/EClaw/issues/2577)
* **security:** patch P0 sanitize-html XSS + P1 protobufjs + exam.html XSS ([#2829](https://github.com/HankHuang0516/EClaw/issues/2829)) ([c71b871](https://github.com/HankHuang0516/EClaw/commit/c71b871a045887375dd0d26d1a3280a0891a89ad))
* **security:** patch ws uninitialized memory disclosure (GHSA-58qx-3vcg-4xpx) ([#2872](https://github.com/HankHuang0516/EClaw/issues/2872)) ([2523d15](https://github.com/HankHuang0516/EClaw/commit/2523d154bbe501a7cc086340f7a07ece3abfa69b))
* **portal:** petdx-browser cookie-session fallback for device-login ([#2757](https://github.com/HankHuang0516/EClaw/issues/2757)) ([ca275f4](https://github.com/HankHuang0516/EClaw/commit/ca275f4519835da0c7ad71c588908a18f6f138d8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **api:** platform-stats 500 + entity/lookup publicCode alias ([#2809](https://github.com/HankHuang0516/EClaw/issues/2809), [#2810](https://github.com/HankHuang0516/EClaw/issues/2810)) ([#2818](https://github.com/HankHuang0516/EClaw/issues/2818)) ([f99fd17](https://github.com/HankHuang0516/EClaw/commit/f99fd17b2b1c32d88daa2510ff66d714c1a53edc))
* **i18n:** positional format specifiers for feedback_result_logs (7 locales) ([#2597](https://github.com/HankHuang0516/EClaw/issues/2597)) ([21aedc7](https://github.com/HankHuang0516/EClaw/commit/21aedc7eebc7a2839e340136f38dfdfd4dabb9dc))
* **avatar-petdx:** preserve descriptor across transient API failures (flicker) ([#2625](https://github.com/HankHuang0516/EClaw/issues/2625)) ([7b1c606](https://github.com/HankHuang0516/EClaw/commit/7b1c606514f7698d72ec95cf6c556e4043966186))
* **chat:** preserve recipient selection across rental-health refresh (P0 #card_eb1cba76) ([#2906](https://github.com/HankHuang0516/EClaw/issues/2906)) ([9cc0301](https://github.com/HankHuang0516/EClaw/commit/9cc0301cc26a0f49af4b7f53486f5c1a7cdd7902)), closes [#card_eb1cba76](https://github.com/HankHuang0516/EClaw/issues/card_eb1cba76) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **chat:** preserve scroll anchor while reading history ([#2693](https://github.com/HankHuang0516/EClaw/issues/2693)) ([945fdb7](https://github.com/HankHuang0516/EClaw/commit/945fdb7192b791b31882e1e75568dd8b11e4686f))
* **promo:** pull video embed from /promo-chat-avatar.html ([#2724](https://github.com/HankHuang0516/EClaw/issues/2724)) ([2afabc8](https://github.com/HankHuang0516/EClaw/commit/2afabc8c5ff8b25218a7cb857e8adfa572c8e9d5))
* **dashboard:** read live.rate_limits.{five_hour,seven_day}.used_percentage ([#2895](https://github.com/HankHuang0516/EClaw/issues/2895)) ([8223303](https://github.com/HankHuang0516/EClaw/commit/822330312bccb1c76675ad2c3b26e78d10dd1298))
* **kanban:** realign stale recurring schedules ([#2785](https://github.com/HankHuang0516/EClaw/issues/2785)) ([ab8ee25](https://github.com/HankHuang0516/EClaw/commit/ab8ee250a9b37f3d3e838bb01d8866c8d2b78231))
* **i18n:** reapply de6970 locale gap translations ([#2925](https://github.com/HankHuang0516/EClaw/issues/2925)) ([d994dc1](https://github.com/HankHuang0516/EClaw/commit/d994dc1d240fef72326db2599262375ccbf29175))
* **portal:** reduce QA-discovered request fanout ([#2656](https://github.com/HankHuang0516/EClaw/issues/2656)) ([1e46d6b](https://github.com/HankHuang0516/EClaw/commit/1e46d6bab61e58c65b452b6503d953f8dddeee75))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **portal:** remove org chart fit scale floor ([#2676](https://github.com/HankHuang0516/EClaw/issues/2676)) ([0f01606](https://github.com/HankHuang0516/EClaw/commit/0f016068b963bb5f800a02f28817c7174979d913))
* **rental:** remove phantom 'webhook test push' step from BIND_COMPLETE ([#2864](https://github.com/HankHuang0516/EClaw/issues/2864)) ([47f4a3e](https://github.com/HankHuang0516/EClaw/commit/47f4a3edf76aa95ebd06d8713cd44fda6eef9b5d))
* **i18n:** rename mm_empty_title → mm_state_empty_title in mindmap.html ([#2683](https://github.com/HankHuang0516/EClaw/issues/2683)) ([c79c109](https://github.com/HankHuang0516/EClaw/commit/c79c109bea23142e8a6d9ace976d105af1280ec9))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **chat:** render mention avatars with companion renderer ([#2633](https://github.com/HankHuang0516/EClaw/issues/2633)) ([03e205f](https://github.com/HankHuang0516/EClaw/commit/03e205f663ecd2c2f443d4009dd5af0093f0bbbb))
* **kanban:** reserve mobile comments panel height ([#2782](https://github.com/HankHuang0516/EClaw/issues/2782)) ([ce8662d](https://github.com/HankHuang0516/EClaw/commit/ce8662d362422fdd25037f1deb61dbed9425e2f9))
* **channel:** restore handshake fallback to discovered sessions ([#2915](https://github.com/HankHuang0516/EClaw/issues/2915)) ([#2917](https://github.com/HankHuang0516/EClaw/issues/2917)) ([9d7d3a2](https://github.com/HankHuang0516/EClaw/commit/9d7d3a25654289998314dd5ca152cefdb8a4d64e)), closes [#2912](https://github.com/HankHuang0516/EClaw/issues/2912)
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* scheduled audit 2026-05-13 — 6 bugs, XSS, i18n ([#2668](https://github.com/HankHuang0516/EClaw/issues/2668)) ([21dd513](https://github.com/HankHuang0516/EClaw/commit/21dd513b4464738de29164265437435ba6cc4817)), closes [#2605](https://github.com/HankHuang0516/EClaw/issues/2605) [#2608](https://github.com/HankHuang0516/EClaw/issues/2608) [#2600](https://github.com/HankHuang0516/EClaw/issues/2600) [#2599](https://github.com/HankHuang0516/EClaw/issues/2599) [#2598](https://github.com/HankHuang0516/EClaw/issues/2598)
* **channel:** scope official bot sessions ([#2912](https://github.com/HankHuang0516/EClaw/issues/2912)) ([5c56b62](https://github.com/HankHuang0516/EClaw/commit/5c56b62c13b739b76f39e168a26bd4e5de2644fb))
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **dashboard:** show Claude weekly bar reset countdown ([#2896](https://github.com/HankHuang0516/EClaw/issues/2896)) ([3b87845](https://github.com/HankHuang0516/EClaw/commit/3b87845d713e980fec69f6b8007549338a326713)), closes [#2895](https://github.com/HankHuang0516/EClaw/issues/2895)
* **chat:** smart-chip preview falls back to inline c.comments when /comments fails (PR [#2677](https://github.com/HankHuang0516/EClaw/issues/2677)) ([7f4dffd](https://github.com/HankHuang0516/EClaw/commit/7f4dffd2c83ea86f296b8fa0610f0e67c9f1af11))
* **kanban:** stabilize comment detail viewport ([#2796](https://github.com/HankHuang0516/EClaw/issues/2796)) ([0a10aad](https://github.com/HankHuang0516/EClaw/commit/0a10aadb5a5b12ff23454c16d5c88183b94ad7d7))
* **wallpaper:** stop Android live wallpaper flashing default lobster on companion change ([#2629](https://github.com/HankHuang0516/EClaw/issues/2629)) ([8b4f66f](https://github.com/HankHuang0516/EClaw/commit/8b4f66fcb335bf43128f924b761b6337c817095b)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **chat:** stop chat.html bouncing to dashboard via /api/rental/health-status 401 race ([#2833](https://github.com/HankHuang0516/EClaw/issues/2833)) ([c422406](https://github.com/HankHuang0516/EClaw/commit/c4224067cdcfe7f3e22ab95007c7563dac4196ac))
* **openclaw-channel:** support OpenClaw 2026.5.20 ([8045de6](https://github.com/HankHuang0516/EClaw/commit/8045de6bebecfc05f9bd57453b99c098ca35681b))
* **mentions:** support same-device CJK display-name tags ([#2874](https://github.com/HankHuang0516/EClaw/issues/2874)) ([b8f61be](https://github.com/HankHuang0516/EClaw/commit/b8f61be9a3962fef75dd32ea34e8900880dafaf9))
* **channel:** suppress operational A2A loop messages (rebase of [#2288](https://github.com/HankHuang0516/EClaw/issues/2288)) ([#2930](https://github.com/HankHuang0516/EClaw/issues/2930)) ([7ceabc9](https://github.com/HankHuang0516/EClaw/commit/7ceabc915df22123cb46ae1500e2eb2e279250af))
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **dashboard:** use sessions[].project for widget Projects list (was .project_id) ([#2894](https://github.com/HankHuang0516/EClaw/issues/2894)) ([0fd1334](https://github.com/HankHuang0516/EClaw/commit/0fd1334897d4a603cc6eb74f34b48606547e09cf))
* **app:** WebView pages honor app-selected locale via ?lang= URL param ([#2672](https://github.com/HankHuang0516/EClaw/issues/2672)) ([8ed8757](https://github.com/HankHuang0516/EClaw/commit/8ed8757aec5bf214e837cc0d81bf2b23f1993a91)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **share-chat:** wire rich CTA actions to msgInput ([#2867](https://github.com/HankHuang0516/EClaw/issues/2867)) ([df23b11](https://github.com/HankHuang0516/EClaw/commit/df23b1147d34c59a644a145bbd87c18b96400acc))


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* **usage-api:** /api/usage/{snapshot,timeline} + usage_snapshots table (Plan B Phase 1) ([#2889](https://github.com/HankHuang0516/EClaw/issues/2889)) ([a0d859c](https://github.com/HankHuang0516/EClaw/commit/a0d859c63f0220909dadb2b1952174861ccdce14))
* **community:** 1-click chat button on bot cards + utm tagging ([#2610](https://github.com/HankHuang0516/EClaw/issues/2610)) ([eee97b0](https://github.com/HankHuang0516/EClaw/commit/eee97b0e2e4e74945ec24f218a69a52800b97a66))
* **chat:** accept ?messageId= as deep-link alias ([#2838](https://github.com/HankHuang0516/EClaw/issues/2838)) ([1785a87](https://github.com/HankHuang0516/EClaw/commit/1785a87310426637fd10df83754fb9924c45207f))
* **chat:** add avatar size preference ([#2714](https://github.com/HankHuang0516/EClaw/issues/2714)) ([6fe164a](https://github.com/HankHuang0516/EClaw/commit/6fe164ad8b22fa576d2dd9ad37c0d9fc295b5a83))
* **dashboard:** add Claude and Codex channel guides ([#2640](https://github.com/HankHuang0516/EClaw/issues/2640)) ([c64e4c4](https://github.com/HankHuang0516/EClaw/commit/c64e4c4afc78db58c5cd578f00486dd7b2fd3311))
* **dashboard:** add Claude Code channel guide card ([#2667](https://github.com/HankHuang0516/EClaw/issues/2667)) ([d70d75c](https://github.com/HankHuang0516/EClaw/commit/d70d75c0c8caa8a540358a9aab4556b8c1927a5c))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* **kanban:** add device-scoped card tags ([#2773](https://github.com/HankHuang0516/EClaw/issues/2773)) ([53a387e](https://github.com/HankHuang0516/EClaw/commit/53a387e67ba7bb4f6bed1c427000c4ae8666577a))
* **portal:** add entity selector to petdx-browser ([#2602](https://github.com/HankHuang0516/EClaw/issues/2602)) ([3fa067e](https://github.com/HankHuang0516/EClaw/commit/3fa067e00b38829b48a37cecd33ee81a9a1122d9))
* **kanban:** add explicit card links ([#2721](https://github.com/HankHuang0516/EClaw/issues/2721)) ([ef9f812](https://github.com/HankHuang0516/EClaw/commit/ef9f812a3fcf39efd07fd158ce90951bdd045ac7))
* **kanban:** add explicit done-card reopen flow ([#2801](https://github.com/HankHuang0516/EClaw/issues/2801)) ([5080aac](https://github.com/HankHuang0516/EClaw/commit/5080aacb75047c0deaa379ee708ec85465afd57c))
* **mindmap:** add GET /api/mindmap/graph force-graph projection ([#2680](https://github.com/HankHuang0516/EClaw/issues/2680)) ([a00b2e7](https://github.com/HankHuang0516/EClaw/commit/a00b2e775af2c4c98cd157f760ad87aeeee469f0)), closes [#2679](https://github.com/HankHuang0516/EClaw/issues/2679) [#2679](https://github.com/HankHuang0516/EClaw/issues/2679)
* **dashboard:** add Hermes channel promo card ([#2708](https://github.com/HankHuang0516/EClaw/issues/2708)) ([337aca1](https://github.com/HankHuang0516/EClaw/commit/337aca153d5a1cd7e888c065f00ae54db7872d91))
* **rental:** add listing soft pause ([#2781](https://github.com/HankHuang0516/EClaw/issues/2781)) ([6586b72](https://github.com/HankHuang0516/EClaw/commit/6586b72717ddb1637d91cd3242c8d2ff554f62b4))
* **portal:** add Nagoya 5D4N trip static cross-ref page ([#2689](https://github.com/HankHuang0516/EClaw/issues/2689)) ([2e0efb6](https://github.com/HankHuang0516/EClaw/commit/2e0efb6dcdaff52226cc8854a96747000b12bdff))
* **portal:** add Nagoya image atlas static page ([#2743](https://github.com/HankHuang0516/EClaw/issues/2743)) ([ac026e9](https://github.com/HankHuang0516/EClaw/commit/ac026e9fd2c92ac9437d01edddffc9adf972f6ba))
* **portal:** add Nagoya trip map links and image lightbox ([#2821](https://github.com/HankHuang0516/EClaw/issues/2821)) ([3e40955](https://github.com/HankHuang0516/EClaw/commit/3e40955650a05f45a6b9f7e39e73847705424a03))
* **portal/nagoya:** add parking shortcut buttons next to itinerary places ([#2826](https://github.com/HankHuang0516/EClaw/issues/2826)) ([63968c5](https://github.com/HankHuang0516/EClaw/commit/63968c554d046afc8d978de74e3aacbf7700500d))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **settings:** add rental roster management preview ([#2758](https://github.com/HankHuang0516/EClaw/issues/2758)) ([9706e59](https://github.com/HankHuang0516/EClaw/commit/9706e59ded140a90a6e02348124282bc69d89001))
* **rental:** add renter health chat indicator ([#2690](https://github.com/HankHuang0516/EClaw/issues/2690)) ([36cd2e9](https://github.com/HankHuang0516/EClaw/commit/36cd2e9802be4c7ebb03d3024617fa74aca48ffd))
* **ios:** add Tutorial & Intro entry in Settings ([#2800](https://github.com/HankHuang0516/EClaw/issues/2800)) ([ed83e51](https://github.com/HankHuang0516/EClaw/commit/ed83e51d043bf4cd5865f38dc95a91ed54820d6c))
* **landing:** add Watch Full Demo CTA below hero video ([#2799](https://github.com/HankHuang0516/EClaw/issues/2799)) ([66107c9](https://github.com/HankHuang0516/EClaw/commit/66107c954727551fd34d989a4674daaad9b63968))
* **footer:** add Watch Intro Video link in Info column ([#2798](https://github.com/HankHuang0516/EClaw/issues/2798)) ([d7c6d59](https://github.com/HankHuang0516/EClaw/commit/d7c6d596b69c6a5b257bf1f7a792a407ef9712ad))
* **i18n:** ar iter-2 — fill 623 missing keys against en source ([#2847](https://github.com/HankHuang0516/EClaw/issues/2847)) ([ee94a7a](https://github.com/HankHuang0516/EClaw/commit/ee94a7ae6812b5163efe4284ee4907ca32302f5c))
* **kanban:** backlog launch-gate flag to suppress L1/L2/L3 escalation ([#2855](https://github.com/HankHuang0516/EClaw/issues/2855)) ([cb8bf1b](https://github.com/HankHuang0516/EClaw/commit/cb8bf1bb6421f25214f65e129a8cadccc49cc266)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#4](https://github.com/HankHuang0516/EClaw/issues/4) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **companion:** bridge crafter-station/petdex gallery (1784 pets) ([#2601](https://github.com/HankHuang0516/EClaw/issues/2601)) ([2e245be](https://github.com/HankHuang0516/EClaw/commit/2e245bea6dd47ea7361b927d389188a3c23b6bb3))
* **promo:** chat avatar size feature landing page (self-hosted MP4) ([#2722](https://github.com/HankHuang0516/EClaw/issues/2722)) ([3852210](https://github.com/HankHuang0516/EClaw/commit/3852210d355704d018e3daca6b5f9512a011b210)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **kanban:** cron-spawn jitter + lane backpressure to prevent same-tick wedge ([#2791](https://github.com/HankHuang0516/EClaw/issues/2791)) ([9f414a7](https://github.com/HankHuang0516/EClaw/commit/9f414a731d6393672a0a4189c7b408c529ae5e12)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **portal:** dashboard usage widget — Claude/Codex 5h gauges + 24h chart (Plan B Phase 3) ([#2891](https://github.com/HankHuang0516/EClaw/issues/2891)) ([d18f373](https://github.com/HankHuang0516/EClaw/commit/d18f373857e4bd302437d6bda2a1e01871fbb1db))
* **portal:** dashboard usage widget v2 — Session/Weekly % bars + projects, no cost (Plan B Phase 3.1) ([#2893](https://github.com/HankHuang0516/EClaw/issues/2893)) ([4bc0dc7](https://github.com/HankHuang0516/EClaw/commit/4bc0dc744ed9d54dfd532ebac4b705c7f84ec0a6))
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **info:** embed 75s promo video on Quick Start tab ([#2795](https://github.com/HankHuang0516/EClaw/issues/2795)) ([86c3f70](https://github.com/HankHuang0516/EClaw/commit/86c3f709a95eebbee1241077b807880463f804b6))
* **promo:** embed daily eclaw video 2026-05-14 ([#2786](https://github.com/HankHuang0516/EClaw/issues/2786)) ([718a814](https://github.com/HankHuang0516/EClaw/commit/718a814ab16850bc2b33a1b303841e2c4378ecfa)), closes [#2782](https://github.com/HankHuang0516/EClaw/issues/2782) [#2693](https://github.com/HankHuang0516/EClaw/issues/2693)
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **info:** embed promo video at top of Quick Start tab ([#2797](https://github.com/HankHuang0516/EClaw/issues/2797)) ([047679f](https://github.com/HankHuang0516/EClaw/commit/047679fd57ab9949eaeacea414d5611e71afe041))
* **rental:** enforce strict rebind refunds ([#2703](https://github.com/HankHuang0516/EClaw/issues/2703)) ([a1859c5](https://github.com/HankHuang0516/EClaw/commit/a1859c50e6fb3991d7a8051491502d824a14a116))
* **portal:** group task chip actions ([#2825](https://github.com/HankHuang0516/EClaw/issues/2825)) ([5db5c59](https://github.com/HankHuang0516/EClaw/commit/5db5c59b32b8635f1412205faf0c2f9164d3d5d4))
* **hermes:** H2 health-check cron + 7d SLA + commander alerts (card_07891ac) ([#2922](https://github.com/HankHuang0516/EClaw/issues/2922)) ([82b4315](https://github.com/HankHuang0516/EClaw/commit/82b4315aea234493e3d1889dc53958c2f1d842e0)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **portal:** info-guide-rules + info-guide-soul slide pair ([#2793](https://github.com/HankHuang0516/EClaw/issues/2793)) ([1c8bddc](https://github.com/HankHuang0516/EClaw/commit/1c8bddc4c185054b2b60088498e3d45509117127)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **chat:** link card previews to kanban ([#2754](https://github.com/HankHuang0516/EClaw/issues/2754)) ([2261240](https://github.com/HankHuang0516/EClaw/commit/22612402c2e95efb07246629e81a849be41ee9c7))
* **mission:** link notes to kanban cards ([#2723](https://github.com/HankHuang0516/EClaw/issues/2723)) ([b36dc18](https://github.com/HankHuang0516/EClaw/commit/b36dc18f3a8facf12e0b6046351c222f1e99dc55))
* **usage-daemon:** macOS launchd daemon polls Claude/Codex usage → POST /api/usage/snapshot (Plan B Phase 2) ([#2890](https://github.com/HankHuang0516/EClaw/issues/2890)) ([fd225e1](https://github.com/HankHuang0516/EClaw/commit/fd225e12d9491037be1a340bd63b54b5f3308c7f))
* **mindmap:** mission.html link to /portal/mindmap.html + deprecate /api/mission/mindmap ([#2685](https://github.com/HankHuang0516/EClaw/issues/2685)) ([11e297b](https://github.com/HankHuang0516/EClaw/commit/11e297bab1c9b56fcde3027d6500b7c58891bf18)), closes [#2680](https://github.com/HankHuang0516/EClaw/issues/2680) [#2684](https://github.com/HankHuang0516/EClaw/issues/2684)
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **portal:** nagoya trip interactive map (Leaflet + OSM, no API key) ([#2888](https://github.com/HankHuang0516/EClaw/issues/2888)) ([ecfdac0](https://github.com/HankHuang0516/EClaw/commit/ecfdac06348c12ee7c6872c6c28d5f82162e7aa9))
* **android:** native tab navigation bridge for portal pages ([#2832](https://github.com/HankHuang0516/EClaw/issues/2832)) ([7e02e6f](https://github.com/HankHuang0516/EClaw/commit/7e02e6f225014e64f08f55035d7b9e5727873343)), closes [#2824](https://github.com/HankHuang0516/EClaw/issues/2824) [#2743](https://github.com/HankHuang0516/EClaw/issues/2743) [#2821](https://github.com/HankHuang0516/EClaw/issues/2821) [#2826](https://github.com/HankHuang0516/EClaw/issues/2826) [#2797](https://github.com/HankHuang0516/EClaw/issues/2797) [#2798](https://github.com/HankHuang0516/EClaw/issues/2798) [#2799](https://github.com/HankHuang0516/EClaw/issues/2799) [#2800](https://github.com/HankHuang0516/EClaw/issues/2800) [#2801](https://github.com/HankHuang0516/EClaw/issues/2801) [#2816](https://github.com/HankHuang0516/EClaw/issues/2816) [#2796](https://github.com/HankHuang0516/EClaw/issues/2796) [#2825](https://github.com/HankHuang0516/EClaw/issues/2825) [#2812](https://github.com/HankHuang0516/EClaw/issues/2812) [#2813](https://github.com/HankHuang0516/EClaw/issues/2813) [#2814](https://github.com/HankHuang0516/EClaw/issues/2814) [#2815](https://github.com/HankHuang0516/EClaw/issues/2815) [#2811](https://github.com/HankHuang0516/EClaw/issues/2811) [#2807](https://github.com/HankHuang0516/EClaw/issues/2807) [#2808](https://github.com/HankHuang0516/EClaw/issues/2808) [#2818](https://github.com/HankHuang0516/EClaw/issues/2818) [#2819](https://github.com/HankHuang0516/EClaw/issues/2819) [#2824](https://github.com/HankHuang0516/EClaw/issues/2824)
* **channel:** outbound backpressure (30/min cap + 429 retry-after) ([#2911](https://github.com/HankHuang0516/EClaw/issues/2911)) ([36dc99c](https://github.com/HankHuang0516/EClaw/commit/36dc99ca78b0e1724a2aaefb5936669077b7a28f))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **settings:** per-entity nudge override UI (Phase 2) ([#2837](https://github.com/HankHuang0516/EClaw/issues/2837)) ([ea7662b](https://github.com/HankHuang0516/EClaw/commit/ea7662b0858882dae461e1387f711895924f9ab8)), closes [3/#4](https://github.com/HankHuang0516/EClaw/issues/4)
* **kanban:** per-entity nudge overrides (Phase 2 of card_e066cb6b) ([#2836](https://github.com/HankHuang0516/EClaw/issues/2836)) ([0425f80](https://github.com/HankHuang0516/EClaw/commit/0425f80bc1169c0d506b665659c8676695c45553))
* **avatar:** petdx render on card-holder my-cards (Phase 1b) ([#2621](https://github.com/HankHuang0516/EClaw/issues/2621)) ([f78ba8b](https://github.com/HankHuang0516/EClaw/commit/f78ba8b18acc426936ab6d8a82ca7541effea00d))
* **avatar:** petdx render on dashboard entity grid / org chart / bindings (Phase 1b) ([#2622](https://github.com/HankHuang0516/EClaw/issues/2622)) ([f417749](https://github.com/HankHuang0516/EClaw/commit/f41774914451048e8cd76e9ae30416a0642e173b)), closes [#2620](https://github.com/HankHuang0516/EClaw/issues/2620) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621)
* **avatar:** petdx render on kanban auto-assign / pulse / comment avatars (Phase 1b) ([#2624](https://github.com/HankHuang0516/EClaw/issues/2624)) ([6bff5f8](https://github.com/HankHuang0516/EClaw/commit/6bff5f80440d0bd91a6b1721cde9478d685c4d46))
* **avatar:** petdx render on mission skill/rule/soul entity dialogs (Phase 1b) ([#2623](https://github.com/HankHuang0516/EClaw/issues/2623)) ([129327b](https://github.com/HankHuang0516/EClaw/commit/129327bc7b91056659f1ab7e8d5e3f5260d951fb))
* **mindmap:** portal/mindmap.html force-graph prototype ([#129](https://github.com/HankHuang0516/EClaw/issues/129)) ([#2681](https://github.com/HankHuang0516/EClaw/issues/2681)) ([0f15e69](https://github.com/HankHuang0516/EClaw/commit/0f15e6930f0697c37fa08f3219edb8f9e499837f)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **channel:** record delivery receipts ([#2913](https://github.com/HankHuang0516/EClaw/issues/2913)) ([90c671b](https://github.com/HankHuang0516/EClaw/commit/90c671bd1970ab51584b90e2b634484ec10cc7ae))
* **portal:** redo nagoya trip page in professional tour-guide style ([#2691](https://github.com/HankHuang0516/EClaw/issues/2691)) ([b2378c0](https://github.com/HankHuang0516/EClaw/commit/b2378c06ee20fa9cccfdceceb1a4c9e0b3072f59))
* **i18n:** remove ms+hi orphan keys from i18n.js ([#2849](https://github.com/HankHuang0516/EClaw/issues/2849)) ([320176c](https://github.com/HankHuang0516/EClaw/commit/320176c06a3cfd8631e2a82ad02a6bd6a9af0389))
* **avatar:** render selected petdx companion in chat avatars ([#2620](https://github.com/HankHuang0516/EClaw/issues/2620)) ([0bdd046](https://github.com/HankHuang0516/EClaw/commit/0bdd046fe1b1c428e32edda366ff112c08927f4c))
* **home:** replace native home with WebView hosting dashboard.html ([#2634](https://github.com/HankHuang0516/EClaw/issues/2634)) ([e69ea81](https://github.com/HankHuang0516/EClaw/commit/e69ea8160c239b083a83d6dc83a4f1c3f901c863))
* **app:** route chat mission jumps through native tabs ([#2824](https://github.com/HankHuang0516/EClaw/issues/2824)) ([deb07b6](https://github.com/HankHuang0516/EClaw/commit/deb07b69a9ecca632fe27278de537f1d85234e94))
* **proxy:** scope private repo git auth ([#2926](https://github.com/HankHuang0516/EClaw/issues/2926)) ([246f7ff](https://github.com/HankHuang0516/EClaw/commit/246f7ff1dedaf7bece9e3cb9eb24d0ab32ebb393))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **chat:** support message deep links ([#2719](https://github.com/HankHuang0516/EClaw/issues/2719)) ([2dc0f1e](https://github.com/HankHuang0516/EClaw/commit/2dc0f1eeb259e1a0848db4a03186b989372cd91c))
* **mission:** support note deep links ([#2717](https://github.com/HankHuang0516/EClaw/issues/2717)) ([2efd3a5](https://github.com/HankHuang0516/EClaw/commit/2efd3a5e741217a07c0b0ac54a0ddd010e0ebe23))
* **share-chat:** twitter card + per-bot og:image/twitter:* in SSR ([#2609](https://github.com/HankHuang0516/EClaw/issues/2609)) ([6cdc853](https://github.com/HankHuang0516/EClaw/commit/6cdc853dc884cdb95bd47214942768981f218ae0))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))
* **settings:** wire petdx avatar into channel-account chips ([#2626](https://github.com/HankHuang0516/EClaw/issues/2626)) ([88aec77](https://github.com/HankHuang0516/EClaw/commit/88aec772628c240e97b336bb5820892ad632d1ae))
* **files:** wire petdx avatar into entity filter & per-file badges ([#2627](https://github.com/HankHuang0516/EClaw/issues/2627)) ([5b3e5cc](https://github.com/HankHuang0516/EClaw/commit/5b3e5cc542d9da69bb4e92500fd03a542ea33f00))
* **mindmap:** wrap hardcoded zh-TW UI strings with i18n t() ([#2607](https://github.com/HankHuang0516/EClaw/issues/2607)) ([166af87](https://github.com/HankHuang0516/EClaw/commit/166af8772b2121a24aaf34a83b3de970e9b3b571)), closes [#2606](https://github.com/HankHuang0516/EClaw/issues/2606)
* **i18n:** zh-TW backfill 8 keys (soft-pause + chat + invite + wallet) ([#2815](https://github.com/HankHuang0516/EClaw/issues/2815)) ([a2dd574](https://github.com/HankHuang0516/EClaw/commit/a2dd5743ce8d43a4b6ace9a2fd4b52568180d6c5))


### Performance Improvements

* **mindmap:** force-graph hardening for 1000/2000-node graphs ([#2684](https://github.com/HankHuang0516/EClaw/issues/2684)) ([da8b1c8](https://github.com/HankHuang0516/EClaw/commit/da8b1c8f947ab8bc8fa455c1962a91146623a1fc))


### Reverts

* Revert "feat(telegram): long-poll adapter PoC (card_406e612942ff062a06fc47be) ([#2238](https://github.com/HankHuang0516/EClaw/issues/2238))" ([#2239](https://github.com/HankHuang0516/EClaw/issues/2239)) ([eb7aa92](https://github.com/HankHuang0516/EClaw/commit/eb7aa92cce454b4a1a22654a2d133cdebe78c2bd))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-25)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **notifications:** add kanban_done + kanban_done_auto toggles to Android Settings ([#2636](https://github.com/HankHuang0516/EClaw/issues/2636)) ([a710909](https://github.com/HankHuang0516/EClaw/commit/a7109095e3393b8564e7ef1b23d382a4fbb944b8))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **api:** align /api/platform-stats skill-doc with device-auth contract (card_49b8190) ([#2916](https://github.com/HankHuang0516/EClaw/issues/2916)) ([ee55b2f](https://github.com/HankHuang0516/EClaw/commit/ee55b2fdbfbcd4bead5501d16ee66339056c32d7))
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **i18n:** ar block — fix 27 broken entries (CJK leaks + truncated HTML) ([#2851](https://github.com/HankHuang0516/EClaw/issues/2851)) ([5b19175](https://github.com/HankHuang0516/EClaw/commit/5b19175d712d00d16fcec00b749035c4beae7a5c))
* **chat:** atomic-load target bar (await contacts before first render) ([#2831](https://github.com/HankHuang0516/EClaw/issues/2831)) ([5f529e6](https://github.com/HankHuang0516/EClaw/commit/5f529e6b772eacc38ba1de69b44258a05f0d816a)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2](https://github.com/HankHuang0516/EClaw/issues/2)
* **channel:** await binding persistence ([712516d](https://github.com/HankHuang0516/EClaw/commit/712516decafb745035bd1434a28cc1973d433e19))
* **rental:** bump handshake timeout to 60s + timeout-aware discovery fallback ([#2863](https://github.com/HankHuang0516/EClaw/issues/2863)) ([fd4322f](https://github.com/HankHuang0516/EClaw/commit/fd4322f8890f3c2dfca3acdae6a4b95f19c381f9)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **i18n:** clear batch 1 residual missing keys ([#2790](https://github.com/HankHuang0516/EClaw/issues/2790)) ([211030e](https://github.com/HankHuang0516/EClaw/commit/211030e0b0b6a865c11f0c4ed60dc4e356d43b7a))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **kanban:** comment input no longer overlaps last comment in card detail (PR [#2678](https://github.com/HankHuang0516/EClaw/issues/2678)) ([fba91fc](https://github.com/HankHuang0516/EClaw/commit/fba91fca15402b453a0db5ee857c0b16e6087055))
* **chat:** compact 20px avatar in target bar (App WebView only shows [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2](https://github.com/HankHuang0516/EClaw/issues/2)) ([#2830](https://github.com/HankHuang0516/EClaw/issues/2830)) ([42c7543](https://github.com/HankHuang0516/EClaw/commit/42c7543b4a78a7abf3f5f7535eb9bc6142cd0fe2)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **portal:** complete 401 redirect sweep + mobile UIUX truncation ([#2842](https://github.com/HankHuang0516/EClaw/issues/2842)) ([f9799ba](https://github.com/HankHuang0516/EClaw/commit/f9799ba42498b109f0a8a70e80836aa6da51e216)), closes [#2833](https://github.com/HankHuang0516/EClaw/issues/2833) [#2845](https://github.com/HankHuang0516/EClaw/issues/2845) [#2844](https://github.com/HankHuang0516/EClaw/issues/2844) [#2843](https://github.com/HankHuang0516/EClaw/issues/2843)
* **uiux:** continue qa mobile readability sweep ([#2854](https://github.com/HankHuang0516/EClaw/issues/2854)) ([57606ff](https://github.com/HankHuang0516/EClaw/commit/57606ffe3e543b07a026aacc53c4b470c9a7825b))
* **i18n:** cover dynamic portal wrapper keys ([#2807](https://github.com/HankHuang0516/EClaw/issues/2807)) ([4c711cc](https://github.com/HankHuang0516/EClaw/commit/4c711cc4009300ffe4e8933a98ee01cd0fdd6aeb))
* **i18n:** dedup 20 dash_channel_card_* keys in es block ([#2876](https://github.com/HankHuang0516/EClaw/issues/2876)) ([807284c](https://github.com/HankHuang0516/EClaw/commit/807284ce363ef119ccdb0ae40e5ce99d3f0a27e0))
* **i18n:** dedupe backend locale keys via AST ([#2920](https://github.com/HankHuang0516/EClaw/issues/2920)) ([40ef114](https://github.com/HankHuang0516/EClaw/commit/40ef11414c8b836fe1ed93ec06c839df3a1bf7b9))
* **i18n:** dedupe zh locale keys ([#2919](https://github.com/HankHuang0516/EClaw/issues/2919)) ([afd2cca](https://github.com/HankHuang0516/EClaw/commit/afd2cca8086c2f2df0d04c9c5f8c58733652875e))
* **test:** delegate root test and remove invalid jest option ([#2292](https://github.com/HankHuang0516/EClaw/issues/2292)) ([65bf2f8](https://github.com/HankHuang0516/EClaw/commit/65bf2f83d26d925097cd380ab73b04ab2db49842))
* **kanban:** dep-aware nudge gating + roadmap dependency backfill ([#2904](https://github.com/HankHuang0516/EClaw/issues/2904)) ([2b76ac9](https://github.com/HankHuang0516/EClaw/commit/2b76ac9d3b7e4169b7bc3c6f6b0b0903b63cd9f7)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **rental:** don't pollute entity.message on push gateway timeout ([#2860](https://github.com/HankHuang0516/EClaw/issues/2860)) ([592ba44](https://github.com/HankHuang0516/EClaw/commit/592ba44f57536ee00011b6cbddaa6b129a7cbae9))
* **petdx:** drop dark-grey loading placeholder + preload sprite WEBP ([#2628](https://github.com/HankHuang0516/EClaw/issues/2628)) ([59cef38](https://github.com/HankHuang0516/EClaw/commit/59cef387bd69ca99d7d15c86a1364856d3849ad8)), closes [#1a1a1a](https://github.com/HankHuang0516/EClaw/issues/1a1a1a)
* **gateway-ws:** drop Origin header on server-to-server WS upgrade ([#2869](https://github.com/HankHuang0516/EClaw/issues/2869)) ([716dcf9](https://github.com/HankHuang0516/EClaw/commit/716dcf9d0834b17522bb9d894bad84bc142d1a19))
* **setup-scripts:** drop Origin header on server-to-server WS upgrade ([#2875](https://github.com/HankHuang0516/EClaw/issues/2875)) ([9d893b8](https://github.com/HankHuang0516/EClaw/commit/9d893b8e5eea4db275e450bf423903c156cd3e4b)), closes [#2869](https://github.com/HankHuang0516/EClaw/issues/2869)
* **security:** escape innerHTML in chat modal error messages ([#2819](https://github.com/HankHuang0516/EClaw/issues/2819)) ([dce07ad](https://github.com/HankHuang0516/EClaw/commit/dce07adde64795916dba977ae23e46f3371ce7ed)), closes [#2809](https://github.com/HankHuang0516/EClaw/issues/2809) [#2810](https://github.com/HankHuang0516/EClaw/issues/2810) [#2809](https://github.com/HankHuang0516/EClaw/issues/2809) [#2810](https://github.com/HankHuang0516/EClaw/issues/2810)
* **proxy:** export repo auth to CLI child ([#2928](https://github.com/HankHuang0516/EClaw/issues/2928)) ([336a8ca](https://github.com/HankHuang0516/EClaw/commit/336a8caff4e3663287bd2948cf9fe6e04125cbc8))
* **entities:** expose botSecret to owner so wallpaper service can poll companions ([#2615](https://github.com/HankHuang0516/EClaw/issues/2615)) ([04470fc](https://github.com/HankHuang0516/EClaw/commit/04470fce8f8c3fce2b1ba8b243e776606f107502))
* **rental:** expose owner_public_code in marketplace so plaza CTA can route ([#2616](https://github.com/HankHuang0516/EClaw/issues/2616)) ([4d1372f](https://github.com/HankHuang0516/EClaw/commit/4d1372f717d93cab65543e87c852e74e9fb67071)), closes [#2610](https://github.com/HankHuang0516/EClaw/issues/2610)
* **mindmap:** fallback to device scope when entityId is null ([#2728](https://github.com/HankHuang0516/EClaw/issues/2728)) ([7572312](https://github.com/HankHuang0516/EClaw/commit/7572312433d3d75fc245eda48a28919ce14bd927))
* **i18n:** fill 11 missing zh keys post-[#2920](https://github.com/HankHuang0516/EClaw/issues/2920)/[#2921](https://github.com/HankHuang0516/EClaw/issues/2921) (card_de6970) ([#2924](https://github.com/HankHuang0516/EClaw/issues/2924)) ([17c4899](https://github.com/HankHuang0516/EClaw/commit/17c48996489b1444d6ed589027acfa7986178fe1)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** fill backend runtime locale gaps ([#2921](https://github.com/HankHuang0516/EClaw/issues/2921)) ([00d96ff](https://github.com/HankHuang0516/EClaw/commit/00d96ff261b8134b49292623e1f786fd544144cc))
* **i18n:** fill Spanish drift keys ([#2751](https://github.com/HankHuang0516/EClaw/issues/2751)) ([0ad0ee5](https://github.com/HankHuang0516/EClaw/commit/0ad0ee55f7fac3e6ac46d891539950dab4d553cc))
* **portal:** fit embedded org chart to mobile viewport ([#2674](https://github.com/HankHuang0516/EClaw/issues/2674)) ([1c4e1b4](https://github.com/HankHuang0516/EClaw/commit/1c4e1b413ea7027b4cd4b8ecda981b0d0e12e66b))
* **i18n:** fix 6 trailing-comma syntax errors in 10-locale batch ([#2771](https://github.com/HankHuang0516/EClaw/issues/2771)) ([b27c6ca](https://github.com/HankHuang0516/EClaw/commit/b27c6ca204bf813e406c54ce3a2532a5f1f031b3))
* **kanban:** GET card returns latest 50 comments + comments endpoint exposes total ([#2816](https://github.com/HankHuang0516/EClaw/issues/2816)) ([c4d83f7](https://github.com/HankHuang0516/EClaw/commit/c4d83f777a1cd26aea0936e4316aa35c52822eef))
* **sharechat:** guest verify-email modal + disabled Send for unverified ([#2865](https://github.com/HankHuang0516/EClaw/issues/2865)) ([cb3b061](https://github.com/HankHuang0516/EClaw/commit/cb3b0614e0f6160417d907753e66eceb2d666802))
* **uiux:** harden chat previews and roster preview ([#2769](https://github.com/HankHuang0516/EClaw/issues/2769)) ([466d4d3](https://github.com/HankHuang0516/EClaw/commit/466d4d3ef81c628d3f58db64323946053d7bf61c))
* **mention-parser:** ignore @-mentions inside markdown code spans ([#2645](https://github.com/HankHuang0516/EClaw/issues/2645)) ([8da19d4](https://github.com/HankHuang0516/EClaw/commit/8da19d4a79ceb4152bf2144ee0847c61ce3e1def)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **kanban:** lazy-load dependency chips via IntersectionObserver ([#2632](https://github.com/HankHuang0516/EClaw/issues/2632)) ([20586b4](https://github.com/HankHuang0516/EClaw/commit/20586b43357335f9eb6a190c02d58c8e36b58aba)), closes [#2631](https://github.com/HankHuang0516/EClaw/issues/2631)
* **i18n:** localize FCM NotificationChannel labels (card_ec8d3a22) ([#2918](https://github.com/HankHuang0516/EClaw/issues/2918)) ([591cd20](https://github.com/HankHuang0516/EClaw/commit/591cd206704693650a53d19d94c4cc75daf84ffd))
* **kanban:** make card sorting deterministic ([#2756](https://github.com/HankHuang0516/EClaw/issues/2756)) ([48e2117](https://github.com/HankHuang0516/EClaw/commit/48e2117b64e37f05dc635e0a3b67bfd43cbe48f5))
* **portal/nagoya-trip:** map-link invisible on dark hero/day-banner ([#2897](https://github.com/HankHuang0516/EClaw/issues/2897)) ([cc33df6](https://github.com/HankHuang0516/EClaw/commit/cc33df686673455c20beaee60871412a5d486e66)), closes [#1f4030](https://github.com/HankHuang0516/EClaw/issues/1f4030) [#8b8579](https://github.com/HankHuang0516/EClaw/issues/8b8579) [#6e6859](https://github.com/HankHuang0516/EClaw/issues/6e6859) [#7a5614](https://github.com/HankHuang0516/EClaw/issues/7a5614)
* **org-chart:** notify affected bots on hierarchy change ([#2812](https://github.com/HankHuang0516/EClaw/issues/2812)) ([55675fd](https://github.com/HankHuang0516/EClaw/commit/55675fdf4487494d729a29524b32bd81b756a00c)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** notify reviewer on manual /move → review ([#2753](https://github.com/HankHuang0516/EClaw/issues/2753)) ([6cbbb4e](https://github.com/HankHuang0516/EClaw/commit/6cbbb4ee8c0d4d8ad54df2e9b5faaa3699bd530f))
* **wallpaper:** off-load spritesheet fetch to IO so per-petdx sprites actually render ([#2618](https://github.com/HankHuang0516/EClaw/issues/2618)) ([61b832c](https://github.com/HankHuang0516/EClaw/commit/61b832c9fa8a1d0caab810ccc942d85c63349267)), closes [#2615](https://github.com/HankHuang0516/EClaw/issues/2615) [#2577](https://github.com/HankHuang0516/EClaw/issues/2577)
* **security:** patch P0 sanitize-html XSS + P1 protobufjs + exam.html XSS ([#2829](https://github.com/HankHuang0516/EClaw/issues/2829)) ([c71b871](https://github.com/HankHuang0516/EClaw/commit/c71b871a045887375dd0d26d1a3280a0891a89ad))
* **security:** patch ws uninitialized memory disclosure (GHSA-58qx-3vcg-4xpx) ([#2872](https://github.com/HankHuang0516/EClaw/issues/2872)) ([2523d15](https://github.com/HankHuang0516/EClaw/commit/2523d154bbe501a7cc086340f7a07ece3abfa69b))
* **portal:** petdx-browser cookie-session fallback for device-login ([#2757](https://github.com/HankHuang0516/EClaw/issues/2757)) ([ca275f4](https://github.com/HankHuang0516/EClaw/commit/ca275f4519835da0c7ad71c588908a18f6f138d8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **api:** platform-stats 500 + entity/lookup publicCode alias ([#2809](https://github.com/HankHuang0516/EClaw/issues/2809), [#2810](https://github.com/HankHuang0516/EClaw/issues/2810)) ([#2818](https://github.com/HankHuang0516/EClaw/issues/2818)) ([f99fd17](https://github.com/HankHuang0516/EClaw/commit/f99fd17b2b1c32d88daa2510ff66d714c1a53edc))
* **i18n:** positional format specifiers for feedback_result_logs (7 locales) ([#2597](https://github.com/HankHuang0516/EClaw/issues/2597)) ([21aedc7](https://github.com/HankHuang0516/EClaw/commit/21aedc7eebc7a2839e340136f38dfdfd4dabb9dc))
* **avatar-petdx:** preserve descriptor across transient API failures (flicker) ([#2625](https://github.com/HankHuang0516/EClaw/issues/2625)) ([7b1c606](https://github.com/HankHuang0516/EClaw/commit/7b1c606514f7698d72ec95cf6c556e4043966186))
* **chat:** preserve recipient selection across rental-health refresh (P0 #card_eb1cba76) ([#2906](https://github.com/HankHuang0516/EClaw/issues/2906)) ([9cc0301](https://github.com/HankHuang0516/EClaw/commit/9cc0301cc26a0f49af4b7f53486f5c1a7cdd7902)), closes [#card_eb1cba76](https://github.com/HankHuang0516/EClaw/issues/card_eb1cba76) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **chat:** preserve scroll anchor while reading history ([#2693](https://github.com/HankHuang0516/EClaw/issues/2693)) ([945fdb7](https://github.com/HankHuang0516/EClaw/commit/945fdb7192b791b31882e1e75568dd8b11e4686f))
* **promo:** pull video embed from /promo-chat-avatar.html ([#2724](https://github.com/HankHuang0516/EClaw/issues/2724)) ([2afabc8](https://github.com/HankHuang0516/EClaw/commit/2afabc8c5ff8b25218a7cb857e8adfa572c8e9d5))
* **dashboard:** read live.rate_limits.{five_hour,seven_day}.used_percentage ([#2895](https://github.com/HankHuang0516/EClaw/issues/2895)) ([8223303](https://github.com/HankHuang0516/EClaw/commit/822330312bccb1c76675ad2c3b26e78d10dd1298))
* **kanban:** realign stale recurring schedules ([#2785](https://github.com/HankHuang0516/EClaw/issues/2785)) ([ab8ee25](https://github.com/HankHuang0516/EClaw/commit/ab8ee250a9b37f3d3e838bb01d8866c8d2b78231))
* **i18n:** reapply de6970 locale gap translations ([#2925](https://github.com/HankHuang0516/EClaw/issues/2925)) ([d994dc1](https://github.com/HankHuang0516/EClaw/commit/d994dc1d240fef72326db2599262375ccbf29175))
* **portal:** reduce QA-discovered request fanout ([#2656](https://github.com/HankHuang0516/EClaw/issues/2656)) ([1e46d6b](https://github.com/HankHuang0516/EClaw/commit/1e46d6bab61e58c65b452b6503d953f8dddeee75))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **portal:** remove org chart fit scale floor ([#2676](https://github.com/HankHuang0516/EClaw/issues/2676)) ([0f01606](https://github.com/HankHuang0516/EClaw/commit/0f016068b963bb5f800a02f28817c7174979d913))
* **rental:** remove phantom 'webhook test push' step from BIND_COMPLETE ([#2864](https://github.com/HankHuang0516/EClaw/issues/2864)) ([47f4a3e](https://github.com/HankHuang0516/EClaw/commit/47f4a3edf76aa95ebd06d8713cd44fda6eef9b5d))
* **i18n:** rename mm_empty_title → mm_state_empty_title in mindmap.html ([#2683](https://github.com/HankHuang0516/EClaw/issues/2683)) ([c79c109](https://github.com/HankHuang0516/EClaw/commit/c79c109bea23142e8a6d9ace976d105af1280ec9))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **chat:** render mention avatars with companion renderer ([#2633](https://github.com/HankHuang0516/EClaw/issues/2633)) ([03e205f](https://github.com/HankHuang0516/EClaw/commit/03e205f663ecd2c2f443d4009dd5af0093f0bbbb))
* **kanban:** reserve mobile comments panel height ([#2782](https://github.com/HankHuang0516/EClaw/issues/2782)) ([ce8662d](https://github.com/HankHuang0516/EClaw/commit/ce8662d362422fdd25037f1deb61dbed9425e2f9))
* **channel:** restore handshake fallback to discovered sessions ([#2915](https://github.com/HankHuang0516/EClaw/issues/2915)) ([#2917](https://github.com/HankHuang0516/EClaw/issues/2917)) ([9d7d3a2](https://github.com/HankHuang0516/EClaw/commit/9d7d3a25654289998314dd5ca152cefdb8a4d64e)), closes [#2912](https://github.com/HankHuang0516/EClaw/issues/2912)
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* scheduled audit 2026-05-13 — 6 bugs, XSS, i18n ([#2668](https://github.com/HankHuang0516/EClaw/issues/2668)) ([21dd513](https://github.com/HankHuang0516/EClaw/commit/21dd513b4464738de29164265437435ba6cc4817)), closes [#2605](https://github.com/HankHuang0516/EClaw/issues/2605) [#2608](https://github.com/HankHuang0516/EClaw/issues/2608) [#2600](https://github.com/HankHuang0516/EClaw/issues/2600) [#2599](https://github.com/HankHuang0516/EClaw/issues/2599) [#2598](https://github.com/HankHuang0516/EClaw/issues/2598)
* **channel:** scope official bot sessions ([#2912](https://github.com/HankHuang0516/EClaw/issues/2912)) ([5c56b62](https://github.com/HankHuang0516/EClaw/commit/5c56b62c13b739b76f39e168a26bd4e5de2644fb))
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **dashboard:** show Claude weekly bar reset countdown ([#2896](https://github.com/HankHuang0516/EClaw/issues/2896)) ([3b87845](https://github.com/HankHuang0516/EClaw/commit/3b87845d713e980fec69f6b8007549338a326713)), closes [#2895](https://github.com/HankHuang0516/EClaw/issues/2895)
* **chat:** smart-chip preview falls back to inline c.comments when /comments fails (PR [#2677](https://github.com/HankHuang0516/EClaw/issues/2677)) ([7f4dffd](https://github.com/HankHuang0516/EClaw/commit/7f4dffd2c83ea86f296b8fa0610f0e67c9f1af11))
* **kanban:** stabilize comment detail viewport ([#2796](https://github.com/HankHuang0516/EClaw/issues/2796)) ([0a10aad](https://github.com/HankHuang0516/EClaw/commit/0a10aadb5a5b12ff23454c16d5c88183b94ad7d7))
* **wallpaper:** stop Android live wallpaper flashing default lobster on companion change ([#2629](https://github.com/HankHuang0516/EClaw/issues/2629)) ([8b4f66f](https://github.com/HankHuang0516/EClaw/commit/8b4f66fcb335bf43128f924b761b6337c817095b)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **chat:** stop chat.html bouncing to dashboard via /api/rental/health-status 401 race ([#2833](https://github.com/HankHuang0516/EClaw/issues/2833)) ([c422406](https://github.com/HankHuang0516/EClaw/commit/c4224067cdcfe7f3e22ab95007c7563dac4196ac))
* **openclaw-channel:** support OpenClaw 2026.5.20 ([8045de6](https://github.com/HankHuang0516/EClaw/commit/8045de6bebecfc05f9bd57453b99c098ca35681b))
* **mentions:** support same-device CJK display-name tags ([#2874](https://github.com/HankHuang0516/EClaw/issues/2874)) ([b8f61be](https://github.com/HankHuang0516/EClaw/commit/b8f61be9a3962fef75dd32ea34e8900880dafaf9))
* **channel:** suppress operational A2A loop messages (rebase of [#2288](https://github.com/HankHuang0516/EClaw/issues/2288)) ([#2930](https://github.com/HankHuang0516/EClaw/issues/2930)) ([7ceabc9](https://github.com/HankHuang0516/EClaw/commit/7ceabc915df22123cb46ae1500e2eb2e279250af))
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **dashboard:** use sessions[].project for widget Projects list (was .project_id) ([#2894](https://github.com/HankHuang0516/EClaw/issues/2894)) ([0fd1334](https://github.com/HankHuang0516/EClaw/commit/0fd1334897d4a603cc6eb74f34b48606547e09cf))
* **app:** WebView pages honor app-selected locale via ?lang= URL param ([#2672](https://github.com/HankHuang0516/EClaw/issues/2672)) ([8ed8757](https://github.com/HankHuang0516/EClaw/commit/8ed8757aec5bf214e837cc0d81bf2b23f1993a91)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **share-chat:** wire rich CTA actions to msgInput ([#2867](https://github.com/HankHuang0516/EClaw/issues/2867)) ([df23b11](https://github.com/HankHuang0516/EClaw/commit/df23b1147d34c59a644a145bbd87c18b96400acc))


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* **usage-api:** /api/usage/{snapshot,timeline} + usage_snapshots table (Plan B Phase 1) ([#2889](https://github.com/HankHuang0516/EClaw/issues/2889)) ([a0d859c](https://github.com/HankHuang0516/EClaw/commit/a0d859c63f0220909dadb2b1952174861ccdce14))
* **community:** 1-click chat button on bot cards + utm tagging ([#2610](https://github.com/HankHuang0516/EClaw/issues/2610)) ([eee97b0](https://github.com/HankHuang0516/EClaw/commit/eee97b0e2e4e74945ec24f218a69a52800b97a66))
* **chat:** accept ?messageId= as deep-link alias ([#2838](https://github.com/HankHuang0516/EClaw/issues/2838)) ([1785a87](https://github.com/HankHuang0516/EClaw/commit/1785a87310426637fd10df83754fb9924c45207f))
* **chat:** add avatar size preference ([#2714](https://github.com/HankHuang0516/EClaw/issues/2714)) ([6fe164a](https://github.com/HankHuang0516/EClaw/commit/6fe164ad8b22fa576d2dd9ad37c0d9fc295b5a83))
* **dashboard:** add Claude and Codex channel guides ([#2640](https://github.com/HankHuang0516/EClaw/issues/2640)) ([c64e4c4](https://github.com/HankHuang0516/EClaw/commit/c64e4c4afc78db58c5cd578f00486dd7b2fd3311))
* **dashboard:** add Claude Code channel guide card ([#2667](https://github.com/HankHuang0516/EClaw/issues/2667)) ([d70d75c](https://github.com/HankHuang0516/EClaw/commit/d70d75c0c8caa8a540358a9aab4556b8c1927a5c))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* **kanban:** add device-scoped card tags ([#2773](https://github.com/HankHuang0516/EClaw/issues/2773)) ([53a387e](https://github.com/HankHuang0516/EClaw/commit/53a387e67ba7bb4f6bed1c427000c4ae8666577a))
* **portal:** add entity selector to petdx-browser ([#2602](https://github.com/HankHuang0516/EClaw/issues/2602)) ([3fa067e](https://github.com/HankHuang0516/EClaw/commit/3fa067e00b38829b48a37cecd33ee81a9a1122d9))
* **kanban:** add explicit card links ([#2721](https://github.com/HankHuang0516/EClaw/issues/2721)) ([ef9f812](https://github.com/HankHuang0516/EClaw/commit/ef9f812a3fcf39efd07fd158ce90951bdd045ac7))
* **kanban:** add explicit done-card reopen flow ([#2801](https://github.com/HankHuang0516/EClaw/issues/2801)) ([5080aac](https://github.com/HankHuang0516/EClaw/commit/5080aacb75047c0deaa379ee708ec85465afd57c))
* **mindmap:** add GET /api/mindmap/graph force-graph projection ([#2680](https://github.com/HankHuang0516/EClaw/issues/2680)) ([a00b2e7](https://github.com/HankHuang0516/EClaw/commit/a00b2e775af2c4c98cd157f760ad87aeeee469f0)), closes [#2679](https://github.com/HankHuang0516/EClaw/issues/2679) [#2679](https://github.com/HankHuang0516/EClaw/issues/2679)
* **dashboard:** add Hermes channel promo card ([#2708](https://github.com/HankHuang0516/EClaw/issues/2708)) ([337aca1](https://github.com/HankHuang0516/EClaw/commit/337aca153d5a1cd7e888c065f00ae54db7872d91))
* **rental:** add listing soft pause ([#2781](https://github.com/HankHuang0516/EClaw/issues/2781)) ([6586b72](https://github.com/HankHuang0516/EClaw/commit/6586b72717ddb1637d91cd3242c8d2ff554f62b4))
* **portal:** add Nagoya 5D4N trip static cross-ref page ([#2689](https://github.com/HankHuang0516/EClaw/issues/2689)) ([2e0efb6](https://github.com/HankHuang0516/EClaw/commit/2e0efb6dcdaff52226cc8854a96747000b12bdff))
* **portal:** add Nagoya image atlas static page ([#2743](https://github.com/HankHuang0516/EClaw/issues/2743)) ([ac026e9](https://github.com/HankHuang0516/EClaw/commit/ac026e9fd2c92ac9437d01edddffc9adf972f6ba))
* **portal:** add Nagoya trip map links and image lightbox ([#2821](https://github.com/HankHuang0516/EClaw/issues/2821)) ([3e40955](https://github.com/HankHuang0516/EClaw/commit/3e40955650a05f45a6b9f7e39e73847705424a03))
* **portal/nagoya:** add parking shortcut buttons next to itinerary places ([#2826](https://github.com/HankHuang0516/EClaw/issues/2826)) ([63968c5](https://github.com/HankHuang0516/EClaw/commit/63968c554d046afc8d978de74e3aacbf7700500d))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **settings:** add rental roster management preview ([#2758](https://github.com/HankHuang0516/EClaw/issues/2758)) ([9706e59](https://github.com/HankHuang0516/EClaw/commit/9706e59ded140a90a6e02348124282bc69d89001))
* **rental:** add renter health chat indicator ([#2690](https://github.com/HankHuang0516/EClaw/issues/2690)) ([36cd2e9](https://github.com/HankHuang0516/EClaw/commit/36cd2e9802be4c7ebb03d3024617fa74aca48ffd))
* **ios:** add Tutorial & Intro entry in Settings ([#2800](https://github.com/HankHuang0516/EClaw/issues/2800)) ([ed83e51](https://github.com/HankHuang0516/EClaw/commit/ed83e51d043bf4cd5865f38dc95a91ed54820d6c))
* **landing:** add Watch Full Demo CTA below hero video ([#2799](https://github.com/HankHuang0516/EClaw/issues/2799)) ([66107c9](https://github.com/HankHuang0516/EClaw/commit/66107c954727551fd34d989a4674daaad9b63968))
* **footer:** add Watch Intro Video link in Info column ([#2798](https://github.com/HankHuang0516/EClaw/issues/2798)) ([d7c6d59](https://github.com/HankHuang0516/EClaw/commit/d7c6d596b69c6a5b257bf1f7a792a407ef9712ad))
* **i18n:** ar iter-2 — fill 623 missing keys against en source ([#2847](https://github.com/HankHuang0516/EClaw/issues/2847)) ([ee94a7a](https://github.com/HankHuang0516/EClaw/commit/ee94a7ae6812b5163efe4284ee4907ca32302f5c))
* **kanban:** backlog launch-gate flag to suppress L1/L2/L3 escalation ([#2855](https://github.com/HankHuang0516/EClaw/issues/2855)) ([cb8bf1b](https://github.com/HankHuang0516/EClaw/commit/cb8bf1bb6421f25214f65e129a8cadccc49cc266)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#4](https://github.com/HankHuang0516/EClaw/issues/4) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **companion:** bridge crafter-station/petdex gallery (1784 pets) ([#2601](https://github.com/HankHuang0516/EClaw/issues/2601)) ([2e245be](https://github.com/HankHuang0516/EClaw/commit/2e245bea6dd47ea7361b927d389188a3c23b6bb3))
* **promo:** chat avatar size feature landing page (self-hosted MP4) ([#2722](https://github.com/HankHuang0516/EClaw/issues/2722)) ([3852210](https://github.com/HankHuang0516/EClaw/commit/3852210d355704d018e3daca6b5f9512a011b210)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **kanban:** cron-spawn jitter + lane backpressure to prevent same-tick wedge ([#2791](https://github.com/HankHuang0516/EClaw/issues/2791)) ([9f414a7](https://github.com/HankHuang0516/EClaw/commit/9f414a731d6393672a0a4189c7b408c529ae5e12)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **portal:** dashboard usage widget — Claude/Codex 5h gauges + 24h chart (Plan B Phase 3) ([#2891](https://github.com/HankHuang0516/EClaw/issues/2891)) ([d18f373](https://github.com/HankHuang0516/EClaw/commit/d18f373857e4bd302437d6bda2a1e01871fbb1db))
* **portal:** dashboard usage widget v2 — Session/Weekly % bars + projects, no cost (Plan B Phase 3.1) ([#2893](https://github.com/HankHuang0516/EClaw/issues/2893)) ([4bc0dc7](https://github.com/HankHuang0516/EClaw/commit/4bc0dc744ed9d54dfd532ebac4b705c7f84ec0a6))
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **info:** embed 75s promo video on Quick Start tab ([#2795](https://github.com/HankHuang0516/EClaw/issues/2795)) ([86c3f70](https://github.com/HankHuang0516/EClaw/commit/86c3f709a95eebbee1241077b807880463f804b6))
* **promo:** embed daily eclaw video 2026-05-14 ([#2786](https://github.com/HankHuang0516/EClaw/issues/2786)) ([718a814](https://github.com/HankHuang0516/EClaw/commit/718a814ab16850bc2b33a1b303841e2c4378ecfa)), closes [#2782](https://github.com/HankHuang0516/EClaw/issues/2782) [#2693](https://github.com/HankHuang0516/EClaw/issues/2693)
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **info:** embed promo video at top of Quick Start tab ([#2797](https://github.com/HankHuang0516/EClaw/issues/2797)) ([047679f](https://github.com/HankHuang0516/EClaw/commit/047679fd57ab9949eaeacea414d5611e71afe041))
* **rental:** enforce strict rebind refunds ([#2703](https://github.com/HankHuang0516/EClaw/issues/2703)) ([a1859c5](https://github.com/HankHuang0516/EClaw/commit/a1859c50e6fb3991d7a8051491502d824a14a116))
* **portal:** group task chip actions ([#2825](https://github.com/HankHuang0516/EClaw/issues/2825)) ([5db5c59](https://github.com/HankHuang0516/EClaw/commit/5db5c59b32b8635f1412205faf0c2f9164d3d5d4))
* **hermes:** H2 health-check cron + 7d SLA + commander alerts (card_07891ac) ([#2922](https://github.com/HankHuang0516/EClaw/issues/2922)) ([82b4315](https://github.com/HankHuang0516/EClaw/commit/82b4315aea234493e3d1889dc53958c2f1d842e0)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **portal:** info-guide-rules + info-guide-soul slide pair ([#2793](https://github.com/HankHuang0516/EClaw/issues/2793)) ([1c8bddc](https://github.com/HankHuang0516/EClaw/commit/1c8bddc4c185054b2b60088498e3d45509117127)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **chat:** link card previews to kanban ([#2754](https://github.com/HankHuang0516/EClaw/issues/2754)) ([2261240](https://github.com/HankHuang0516/EClaw/commit/22612402c2e95efb07246629e81a849be41ee9c7))
* **mission:** link notes to kanban cards ([#2723](https://github.com/HankHuang0516/EClaw/issues/2723)) ([b36dc18](https://github.com/HankHuang0516/EClaw/commit/b36dc18f3a8facf12e0b6046351c222f1e99dc55))
* **usage-daemon:** macOS launchd daemon polls Claude/Codex usage → POST /api/usage/snapshot (Plan B Phase 2) ([#2890](https://github.com/HankHuang0516/EClaw/issues/2890)) ([fd225e1](https://github.com/HankHuang0516/EClaw/commit/fd225e12d9491037be1a340bd63b54b5f3308c7f))
* **mindmap:** mission.html link to /portal/mindmap.html + deprecate /api/mission/mindmap ([#2685](https://github.com/HankHuang0516/EClaw/issues/2685)) ([11e297b](https://github.com/HankHuang0516/EClaw/commit/11e297bab1c9b56fcde3027d6500b7c58891bf18)), closes [#2680](https://github.com/HankHuang0516/EClaw/issues/2680) [#2684](https://github.com/HankHuang0516/EClaw/issues/2684)
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **portal:** nagoya trip interactive map (Leaflet + OSM, no API key) ([#2888](https://github.com/HankHuang0516/EClaw/issues/2888)) ([ecfdac0](https://github.com/HankHuang0516/EClaw/commit/ecfdac06348c12ee7c6872c6c28d5f82162e7aa9))
* **android:** native tab navigation bridge for portal pages ([#2832](https://github.com/HankHuang0516/EClaw/issues/2832)) ([7e02e6f](https://github.com/HankHuang0516/EClaw/commit/7e02e6f225014e64f08f55035d7b9e5727873343)), closes [#2824](https://github.com/HankHuang0516/EClaw/issues/2824) [#2743](https://github.com/HankHuang0516/EClaw/issues/2743) [#2821](https://github.com/HankHuang0516/EClaw/issues/2821) [#2826](https://github.com/HankHuang0516/EClaw/issues/2826) [#2797](https://github.com/HankHuang0516/EClaw/issues/2797) [#2798](https://github.com/HankHuang0516/EClaw/issues/2798) [#2799](https://github.com/HankHuang0516/EClaw/issues/2799) [#2800](https://github.com/HankHuang0516/EClaw/issues/2800) [#2801](https://github.com/HankHuang0516/EClaw/issues/2801) [#2816](https://github.com/HankHuang0516/EClaw/issues/2816) [#2796](https://github.com/HankHuang0516/EClaw/issues/2796) [#2825](https://github.com/HankHuang0516/EClaw/issues/2825) [#2812](https://github.com/HankHuang0516/EClaw/issues/2812) [#2813](https://github.com/HankHuang0516/EClaw/issues/2813) [#2814](https://github.com/HankHuang0516/EClaw/issues/2814) [#2815](https://github.com/HankHuang0516/EClaw/issues/2815) [#2811](https://github.com/HankHuang0516/EClaw/issues/2811) [#2807](https://github.com/HankHuang0516/EClaw/issues/2807) [#2808](https://github.com/HankHuang0516/EClaw/issues/2808) [#2818](https://github.com/HankHuang0516/EClaw/issues/2818) [#2819](https://github.com/HankHuang0516/EClaw/issues/2819) [#2824](https://github.com/HankHuang0516/EClaw/issues/2824)
* **channel:** outbound backpressure (30/min cap + 429 retry-after) ([#2911](https://github.com/HankHuang0516/EClaw/issues/2911)) ([36dc99c](https://github.com/HankHuang0516/EClaw/commit/36dc99ca78b0e1724a2aaefb5936669077b7a28f))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **settings:** per-entity nudge override UI (Phase 2) ([#2837](https://github.com/HankHuang0516/EClaw/issues/2837)) ([ea7662b](https://github.com/HankHuang0516/EClaw/commit/ea7662b0858882dae461e1387f711895924f9ab8)), closes [3/#4](https://github.com/HankHuang0516/EClaw/issues/4)
* **kanban:** per-entity nudge overrides (Phase 2 of card_e066cb6b) ([#2836](https://github.com/HankHuang0516/EClaw/issues/2836)) ([0425f80](https://github.com/HankHuang0516/EClaw/commit/0425f80bc1169c0d506b665659c8676695c45553))
* **avatar:** petdx render on card-holder my-cards (Phase 1b) ([#2621](https://github.com/HankHuang0516/EClaw/issues/2621)) ([f78ba8b](https://github.com/HankHuang0516/EClaw/commit/f78ba8b18acc426936ab6d8a82ca7541effea00d))
* **avatar:** petdx render on dashboard entity grid / org chart / bindings (Phase 1b) ([#2622](https://github.com/HankHuang0516/EClaw/issues/2622)) ([f417749](https://github.com/HankHuang0516/EClaw/commit/f41774914451048e8cd76e9ae30416a0642e173b)), closes [#2620](https://github.com/HankHuang0516/EClaw/issues/2620) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621)
* **avatar:** petdx render on kanban auto-assign / pulse / comment avatars (Phase 1b) ([#2624](https://github.com/HankHuang0516/EClaw/issues/2624)) ([6bff5f8](https://github.com/HankHuang0516/EClaw/commit/6bff5f80440d0bd91a6b1721cde9478d685c4d46))
* **avatar:** petdx render on mission skill/rule/soul entity dialogs (Phase 1b) ([#2623](https://github.com/HankHuang0516/EClaw/issues/2623)) ([129327b](https://github.com/HankHuang0516/EClaw/commit/129327bc7b91056659f1ab7e8d5e3f5260d951fb))
* **mindmap:** portal/mindmap.html force-graph prototype ([#129](https://github.com/HankHuang0516/EClaw/issues/129)) ([#2681](https://github.com/HankHuang0516/EClaw/issues/2681)) ([0f15e69](https://github.com/HankHuang0516/EClaw/commit/0f15e6930f0697c37fa08f3219edb8f9e499837f)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **channel:** record delivery receipts ([#2913](https://github.com/HankHuang0516/EClaw/issues/2913)) ([90c671b](https://github.com/HankHuang0516/EClaw/commit/90c671bd1970ab51584b90e2b634484ec10cc7ae))
* **portal:** redo nagoya trip page in professional tour-guide style ([#2691](https://github.com/HankHuang0516/EClaw/issues/2691)) ([b2378c0](https://github.com/HankHuang0516/EClaw/commit/b2378c06ee20fa9cccfdceceb1a4c9e0b3072f59))
* **i18n:** remove ms+hi orphan keys from i18n.js ([#2849](https://github.com/HankHuang0516/EClaw/issues/2849)) ([320176c](https://github.com/HankHuang0516/EClaw/commit/320176c06a3cfd8631e2a82ad02a6bd6a9af0389))
* **avatar:** render selected petdx companion in chat avatars ([#2620](https://github.com/HankHuang0516/EClaw/issues/2620)) ([0bdd046](https://github.com/HankHuang0516/EClaw/commit/0bdd046fe1b1c428e32edda366ff112c08927f4c))
* **home:** replace native home with WebView hosting dashboard.html ([#2634](https://github.com/HankHuang0516/EClaw/issues/2634)) ([e69ea81](https://github.com/HankHuang0516/EClaw/commit/e69ea8160c239b083a83d6dc83a4f1c3f901c863))
* **app:** route chat mission jumps through native tabs ([#2824](https://github.com/HankHuang0516/EClaw/issues/2824)) ([deb07b6](https://github.com/HankHuang0516/EClaw/commit/deb07b69a9ecca632fe27278de537f1d85234e94))
* **proxy:** scope private repo git auth ([#2926](https://github.com/HankHuang0516/EClaw/issues/2926)) ([246f7ff](https://github.com/HankHuang0516/EClaw/commit/246f7ff1dedaf7bece9e3cb9eb24d0ab32ebb393))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **chat:** support message deep links ([#2719](https://github.com/HankHuang0516/EClaw/issues/2719)) ([2dc0f1e](https://github.com/HankHuang0516/EClaw/commit/2dc0f1eeb259e1a0848db4a03186b989372cd91c))
* **mission:** support note deep links ([#2717](https://github.com/HankHuang0516/EClaw/issues/2717)) ([2efd3a5](https://github.com/HankHuang0516/EClaw/commit/2efd3a5e741217a07c0b0ac54a0ddd010e0ebe23))
* **share-chat:** twitter card + per-bot og:image/twitter:* in SSR ([#2609](https://github.com/HankHuang0516/EClaw/issues/2609)) ([6cdc853](https://github.com/HankHuang0516/EClaw/commit/6cdc853dc884cdb95bd47214942768981f218ae0))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))
* **settings:** wire petdx avatar into channel-account chips ([#2626](https://github.com/HankHuang0516/EClaw/issues/2626)) ([88aec77](https://github.com/HankHuang0516/EClaw/commit/88aec772628c240e97b336bb5820892ad632d1ae))
* **files:** wire petdx avatar into entity filter & per-file badges ([#2627](https://github.com/HankHuang0516/EClaw/issues/2627)) ([5b3e5cc](https://github.com/HankHuang0516/EClaw/commit/5b3e5cc542d9da69bb4e92500fd03a542ea33f00))
* **mindmap:** wrap hardcoded zh-TW UI strings with i18n t() ([#2607](https://github.com/HankHuang0516/EClaw/issues/2607)) ([166af87](https://github.com/HankHuang0516/EClaw/commit/166af8772b2121a24aaf34a83b3de970e9b3b571)), closes [#2606](https://github.com/HankHuang0516/EClaw/issues/2606)
* **i18n:** zh-TW backfill 8 keys (soft-pause + chat + invite + wallet) ([#2815](https://github.com/HankHuang0516/EClaw/issues/2815)) ([a2dd574](https://github.com/HankHuang0516/EClaw/commit/a2dd5743ce8d43a4b6ace9a2fd4b52568180d6c5))


### Performance Improvements

* **mindmap:** force-graph hardening for 1000/2000-node graphs ([#2684](https://github.com/HankHuang0516/EClaw/issues/2684)) ([da8b1c8](https://github.com/HankHuang0516/EClaw/commit/da8b1c8f947ab8bc8fa455c1962a91146623a1fc))


### Reverts

* Revert "feat(telegram): long-poll adapter PoC (card_406e612942ff062a06fc47be) ([#2238](https://github.com/HankHuang0516/EClaw/issues/2238))" ([#2239](https://github.com/HankHuang0516/EClaw/issues/2239)) ([eb7aa92](https://github.com/HankHuang0516/EClaw/commit/eb7aa92cce454b4a1a22654a2d133cdebe78c2bd))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-25)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **notifications:** add kanban_done + kanban_done_auto toggles to Android Settings ([#2636](https://github.com/HankHuang0516/EClaw/issues/2636)) ([a710909](https://github.com/HankHuang0516/EClaw/commit/a7109095e3393b8564e7ef1b23d382a4fbb944b8))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **api:** align /api/platform-stats skill-doc with device-auth contract (card_49b8190) ([#2916](https://github.com/HankHuang0516/EClaw/issues/2916)) ([ee55b2f](https://github.com/HankHuang0516/EClaw/commit/ee55b2fdbfbcd4bead5501d16ee66339056c32d7))
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **i18n:** ar block — fix 27 broken entries (CJK leaks + truncated HTML) ([#2851](https://github.com/HankHuang0516/EClaw/issues/2851)) ([5b19175](https://github.com/HankHuang0516/EClaw/commit/5b19175d712d00d16fcec00b749035c4beae7a5c))
* **chat:** atomic-load target bar (await contacts before first render) ([#2831](https://github.com/HankHuang0516/EClaw/issues/2831)) ([5f529e6](https://github.com/HankHuang0516/EClaw/commit/5f529e6b772eacc38ba1de69b44258a05f0d816a)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2](https://github.com/HankHuang0516/EClaw/issues/2)
* **channel:** await binding persistence ([712516d](https://github.com/HankHuang0516/EClaw/commit/712516decafb745035bd1434a28cc1973d433e19))
* **rental:** bump handshake timeout to 60s + timeout-aware discovery fallback ([#2863](https://github.com/HankHuang0516/EClaw/issues/2863)) ([fd4322f](https://github.com/HankHuang0516/EClaw/commit/fd4322f8890f3c2dfca3acdae6a4b95f19c381f9)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **i18n:** clear batch 1 residual missing keys ([#2790](https://github.com/HankHuang0516/EClaw/issues/2790)) ([211030e](https://github.com/HankHuang0516/EClaw/commit/211030e0b0b6a865c11f0c4ed60dc4e356d43b7a))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **kanban:** comment input no longer overlaps last comment in card detail (PR [#2678](https://github.com/HankHuang0516/EClaw/issues/2678)) ([fba91fc](https://github.com/HankHuang0516/EClaw/commit/fba91fca15402b453a0db5ee857c0b16e6087055))
* **chat:** compact 20px avatar in target bar (App WebView only shows [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2](https://github.com/HankHuang0516/EClaw/issues/2)) ([#2830](https://github.com/HankHuang0516/EClaw/issues/2830)) ([42c7543](https://github.com/HankHuang0516/EClaw/commit/42c7543b4a78a7abf3f5f7535eb9bc6142cd0fe2)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **portal:** complete 401 redirect sweep + mobile UIUX truncation ([#2842](https://github.com/HankHuang0516/EClaw/issues/2842)) ([f9799ba](https://github.com/HankHuang0516/EClaw/commit/f9799ba42498b109f0a8a70e80836aa6da51e216)), closes [#2833](https://github.com/HankHuang0516/EClaw/issues/2833) [#2845](https://github.com/HankHuang0516/EClaw/issues/2845) [#2844](https://github.com/HankHuang0516/EClaw/issues/2844) [#2843](https://github.com/HankHuang0516/EClaw/issues/2843)
* **uiux:** continue qa mobile readability sweep ([#2854](https://github.com/HankHuang0516/EClaw/issues/2854)) ([57606ff](https://github.com/HankHuang0516/EClaw/commit/57606ffe3e543b07a026aacc53c4b470c9a7825b))
* **i18n:** cover dynamic portal wrapper keys ([#2807](https://github.com/HankHuang0516/EClaw/issues/2807)) ([4c711cc](https://github.com/HankHuang0516/EClaw/commit/4c711cc4009300ffe4e8933a98ee01cd0fdd6aeb))
* **i18n:** dedup 20 dash_channel_card_* keys in es block ([#2876](https://github.com/HankHuang0516/EClaw/issues/2876)) ([807284c](https://github.com/HankHuang0516/EClaw/commit/807284ce363ef119ccdb0ae40e5ce99d3f0a27e0))
* **i18n:** dedupe backend locale keys via AST ([#2920](https://github.com/HankHuang0516/EClaw/issues/2920)) ([40ef114](https://github.com/HankHuang0516/EClaw/commit/40ef11414c8b836fe1ed93ec06c839df3a1bf7b9))
* **i18n:** dedupe zh locale keys ([#2919](https://github.com/HankHuang0516/EClaw/issues/2919)) ([afd2cca](https://github.com/HankHuang0516/EClaw/commit/afd2cca8086c2f2df0d04c9c5f8c58733652875e))
* **test:** delegate root test and remove invalid jest option ([#2292](https://github.com/HankHuang0516/EClaw/issues/2292)) ([65bf2f8](https://github.com/HankHuang0516/EClaw/commit/65bf2f83d26d925097cd380ab73b04ab2db49842))
* **kanban:** dep-aware nudge gating + roadmap dependency backfill ([#2904](https://github.com/HankHuang0516/EClaw/issues/2904)) ([2b76ac9](https://github.com/HankHuang0516/EClaw/commit/2b76ac9d3b7e4169b7bc3c6f6b0b0903b63cd9f7)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **rental:** don't pollute entity.message on push gateway timeout ([#2860](https://github.com/HankHuang0516/EClaw/issues/2860)) ([592ba44](https://github.com/HankHuang0516/EClaw/commit/592ba44f57536ee00011b6cbddaa6b129a7cbae9))
* **petdx:** drop dark-grey loading placeholder + preload sprite WEBP ([#2628](https://github.com/HankHuang0516/EClaw/issues/2628)) ([59cef38](https://github.com/HankHuang0516/EClaw/commit/59cef387bd69ca99d7d15c86a1364856d3849ad8)), closes [#1a1a1a](https://github.com/HankHuang0516/EClaw/issues/1a1a1a)
* **gateway-ws:** drop Origin header on server-to-server WS upgrade ([#2869](https://github.com/HankHuang0516/EClaw/issues/2869)) ([716dcf9](https://github.com/HankHuang0516/EClaw/commit/716dcf9d0834b17522bb9d894bad84bc142d1a19))
* **setup-scripts:** drop Origin header on server-to-server WS upgrade ([#2875](https://github.com/HankHuang0516/EClaw/issues/2875)) ([9d893b8](https://github.com/HankHuang0516/EClaw/commit/9d893b8e5eea4db275e450bf423903c156cd3e4b)), closes [#2869](https://github.com/HankHuang0516/EClaw/issues/2869)
* **security:** escape innerHTML in chat modal error messages ([#2819](https://github.com/HankHuang0516/EClaw/issues/2819)) ([dce07ad](https://github.com/HankHuang0516/EClaw/commit/dce07adde64795916dba977ae23e46f3371ce7ed)), closes [#2809](https://github.com/HankHuang0516/EClaw/issues/2809) [#2810](https://github.com/HankHuang0516/EClaw/issues/2810) [#2809](https://github.com/HankHuang0516/EClaw/issues/2809) [#2810](https://github.com/HankHuang0516/EClaw/issues/2810)
* **proxy:** export repo auth to CLI child ([#2928](https://github.com/HankHuang0516/EClaw/issues/2928)) ([336a8ca](https://github.com/HankHuang0516/EClaw/commit/336a8caff4e3663287bd2948cf9fe6e04125cbc8))
* **entities:** expose botSecret to owner so wallpaper service can poll companions ([#2615](https://github.com/HankHuang0516/EClaw/issues/2615)) ([04470fc](https://github.com/HankHuang0516/EClaw/commit/04470fce8f8c3fce2b1ba8b243e776606f107502))
* **rental:** expose owner_public_code in marketplace so plaza CTA can route ([#2616](https://github.com/HankHuang0516/EClaw/issues/2616)) ([4d1372f](https://github.com/HankHuang0516/EClaw/commit/4d1372f717d93cab65543e87c852e74e9fb67071)), closes [#2610](https://github.com/HankHuang0516/EClaw/issues/2610)
* **mindmap:** fallback to device scope when entityId is null ([#2728](https://github.com/HankHuang0516/EClaw/issues/2728)) ([7572312](https://github.com/HankHuang0516/EClaw/commit/7572312433d3d75fc245eda48a28919ce14bd927))
* **i18n:** fill 11 missing zh keys post-[#2920](https://github.com/HankHuang0516/EClaw/issues/2920)/[#2921](https://github.com/HankHuang0516/EClaw/issues/2921) (card_de6970) ([#2924](https://github.com/HankHuang0516/EClaw/issues/2924)) ([17c4899](https://github.com/HankHuang0516/EClaw/commit/17c48996489b1444d6ed589027acfa7986178fe1)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** fill backend runtime locale gaps ([#2921](https://github.com/HankHuang0516/EClaw/issues/2921)) ([00d96ff](https://github.com/HankHuang0516/EClaw/commit/00d96ff261b8134b49292623e1f786fd544144cc))
* **i18n:** fill Spanish drift keys ([#2751](https://github.com/HankHuang0516/EClaw/issues/2751)) ([0ad0ee5](https://github.com/HankHuang0516/EClaw/commit/0ad0ee55f7fac3e6ac46d891539950dab4d553cc))
* **portal:** fit embedded org chart to mobile viewport ([#2674](https://github.com/HankHuang0516/EClaw/issues/2674)) ([1c4e1b4](https://github.com/HankHuang0516/EClaw/commit/1c4e1b413ea7027b4cd4b8ecda981b0d0e12e66b))
* **i18n:** fix 6 trailing-comma syntax errors in 10-locale batch ([#2771](https://github.com/HankHuang0516/EClaw/issues/2771)) ([b27c6ca](https://github.com/HankHuang0516/EClaw/commit/b27c6ca204bf813e406c54ce3a2532a5f1f031b3))
* **kanban:** GET card returns latest 50 comments + comments endpoint exposes total ([#2816](https://github.com/HankHuang0516/EClaw/issues/2816)) ([c4d83f7](https://github.com/HankHuang0516/EClaw/commit/c4d83f777a1cd26aea0936e4316aa35c52822eef))
* **sharechat:** guest verify-email modal + disabled Send for unverified ([#2865](https://github.com/HankHuang0516/EClaw/issues/2865)) ([cb3b061](https://github.com/HankHuang0516/EClaw/commit/cb3b0614e0f6160417d907753e66eceb2d666802))
* **uiux:** harden chat previews and roster preview ([#2769](https://github.com/HankHuang0516/EClaw/issues/2769)) ([466d4d3](https://github.com/HankHuang0516/EClaw/commit/466d4d3ef81c628d3f58db64323946053d7bf61c))
* **mention-parser:** ignore @-mentions inside markdown code spans ([#2645](https://github.com/HankHuang0516/EClaw/issues/2645)) ([8da19d4](https://github.com/HankHuang0516/EClaw/commit/8da19d4a79ceb4152bf2144ee0847c61ce3e1def)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **kanban:** lazy-load dependency chips via IntersectionObserver ([#2632](https://github.com/HankHuang0516/EClaw/issues/2632)) ([20586b4](https://github.com/HankHuang0516/EClaw/commit/20586b43357335f9eb6a190c02d58c8e36b58aba)), closes [#2631](https://github.com/HankHuang0516/EClaw/issues/2631)
* **i18n:** localize FCM NotificationChannel labels (card_ec8d3a22) ([#2918](https://github.com/HankHuang0516/EClaw/issues/2918)) ([591cd20](https://github.com/HankHuang0516/EClaw/commit/591cd206704693650a53d19d94c4cc75daf84ffd))
* **kanban:** make card sorting deterministic ([#2756](https://github.com/HankHuang0516/EClaw/issues/2756)) ([48e2117](https://github.com/HankHuang0516/EClaw/commit/48e2117b64e37f05dc635e0a3b67bfd43cbe48f5))
* **portal/nagoya-trip:** map-link invisible on dark hero/day-banner ([#2897](https://github.com/HankHuang0516/EClaw/issues/2897)) ([cc33df6](https://github.com/HankHuang0516/EClaw/commit/cc33df686673455c20beaee60871412a5d486e66)), closes [#1f4030](https://github.com/HankHuang0516/EClaw/issues/1f4030) [#8b8579](https://github.com/HankHuang0516/EClaw/issues/8b8579) [#6e6859](https://github.com/HankHuang0516/EClaw/issues/6e6859) [#7a5614](https://github.com/HankHuang0516/EClaw/issues/7a5614)
* **org-chart:** notify affected bots on hierarchy change ([#2812](https://github.com/HankHuang0516/EClaw/issues/2812)) ([55675fd](https://github.com/HankHuang0516/EClaw/commit/55675fdf4487494d729a29524b32bd81b756a00c)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** notify reviewer on manual /move → review ([#2753](https://github.com/HankHuang0516/EClaw/issues/2753)) ([6cbbb4e](https://github.com/HankHuang0516/EClaw/commit/6cbbb4ee8c0d4d8ad54df2e9b5faaa3699bd530f))
* **wallpaper:** off-load spritesheet fetch to IO so per-petdx sprites actually render ([#2618](https://github.com/HankHuang0516/EClaw/issues/2618)) ([61b832c](https://github.com/HankHuang0516/EClaw/commit/61b832c9fa8a1d0caab810ccc942d85c63349267)), closes [#2615](https://github.com/HankHuang0516/EClaw/issues/2615) [#2577](https://github.com/HankHuang0516/EClaw/issues/2577)
* **security:** patch P0 sanitize-html XSS + P1 protobufjs + exam.html XSS ([#2829](https://github.com/HankHuang0516/EClaw/issues/2829)) ([c71b871](https://github.com/HankHuang0516/EClaw/commit/c71b871a045887375dd0d26d1a3280a0891a89ad))
* **security:** patch ws uninitialized memory disclosure (GHSA-58qx-3vcg-4xpx) ([#2872](https://github.com/HankHuang0516/EClaw/issues/2872)) ([2523d15](https://github.com/HankHuang0516/EClaw/commit/2523d154bbe501a7cc086340f7a07ece3abfa69b))
* **portal:** petdx-browser cookie-session fallback for device-login ([#2757](https://github.com/HankHuang0516/EClaw/issues/2757)) ([ca275f4](https://github.com/HankHuang0516/EClaw/commit/ca275f4519835da0c7ad71c588908a18f6f138d8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **api:** platform-stats 500 + entity/lookup publicCode alias ([#2809](https://github.com/HankHuang0516/EClaw/issues/2809), [#2810](https://github.com/HankHuang0516/EClaw/issues/2810)) ([#2818](https://github.com/HankHuang0516/EClaw/issues/2818)) ([f99fd17](https://github.com/HankHuang0516/EClaw/commit/f99fd17b2b1c32d88daa2510ff66d714c1a53edc))
* **i18n:** positional format specifiers for feedback_result_logs (7 locales) ([#2597](https://github.com/HankHuang0516/EClaw/issues/2597)) ([21aedc7](https://github.com/HankHuang0516/EClaw/commit/21aedc7eebc7a2839e340136f38dfdfd4dabb9dc))
* **avatar-petdx:** preserve descriptor across transient API failures (flicker) ([#2625](https://github.com/HankHuang0516/EClaw/issues/2625)) ([7b1c606](https://github.com/HankHuang0516/EClaw/commit/7b1c606514f7698d72ec95cf6c556e4043966186))
* **chat:** preserve recipient selection across rental-health refresh (P0 #card_eb1cba76) ([#2906](https://github.com/HankHuang0516/EClaw/issues/2906)) ([9cc0301](https://github.com/HankHuang0516/EClaw/commit/9cc0301cc26a0f49af4b7f53486f5c1a7cdd7902)), closes [#card_eb1cba76](https://github.com/HankHuang0516/EClaw/issues/card_eb1cba76) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **chat:** preserve scroll anchor while reading history ([#2693](https://github.com/HankHuang0516/EClaw/issues/2693)) ([945fdb7](https://github.com/HankHuang0516/EClaw/commit/945fdb7192b791b31882e1e75568dd8b11e4686f))
* **promo:** pull video embed from /promo-chat-avatar.html ([#2724](https://github.com/HankHuang0516/EClaw/issues/2724)) ([2afabc8](https://github.com/HankHuang0516/EClaw/commit/2afabc8c5ff8b25218a7cb857e8adfa572c8e9d5))
* **dashboard:** read live.rate_limits.{five_hour,seven_day}.used_percentage ([#2895](https://github.com/HankHuang0516/EClaw/issues/2895)) ([8223303](https://github.com/HankHuang0516/EClaw/commit/822330312bccb1c76675ad2c3b26e78d10dd1298))
* **kanban:** realign stale recurring schedules ([#2785](https://github.com/HankHuang0516/EClaw/issues/2785)) ([ab8ee25](https://github.com/HankHuang0516/EClaw/commit/ab8ee250a9b37f3d3e838bb01d8866c8d2b78231))
* **i18n:** reapply de6970 locale gap translations ([#2925](https://github.com/HankHuang0516/EClaw/issues/2925)) ([d994dc1](https://github.com/HankHuang0516/EClaw/commit/d994dc1d240fef72326db2599262375ccbf29175))
* **portal:** reduce QA-discovered request fanout ([#2656](https://github.com/HankHuang0516/EClaw/issues/2656)) ([1e46d6b](https://github.com/HankHuang0516/EClaw/commit/1e46d6bab61e58c65b452b6503d953f8dddeee75))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **portal:** remove org chart fit scale floor ([#2676](https://github.com/HankHuang0516/EClaw/issues/2676)) ([0f01606](https://github.com/HankHuang0516/EClaw/commit/0f016068b963bb5f800a02f28817c7174979d913))
* **rental:** remove phantom 'webhook test push' step from BIND_COMPLETE ([#2864](https://github.com/HankHuang0516/EClaw/issues/2864)) ([47f4a3e](https://github.com/HankHuang0516/EClaw/commit/47f4a3edf76aa95ebd06d8713cd44fda6eef9b5d))
* **i18n:** rename mm_empty_title → mm_state_empty_title in mindmap.html ([#2683](https://github.com/HankHuang0516/EClaw/issues/2683)) ([c79c109](https://github.com/HankHuang0516/EClaw/commit/c79c109bea23142e8a6d9ace976d105af1280ec9))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **chat:** render mention avatars with companion renderer ([#2633](https://github.com/HankHuang0516/EClaw/issues/2633)) ([03e205f](https://github.com/HankHuang0516/EClaw/commit/03e205f663ecd2c2f443d4009dd5af0093f0bbbb))
* **kanban:** reserve mobile comments panel height ([#2782](https://github.com/HankHuang0516/EClaw/issues/2782)) ([ce8662d](https://github.com/HankHuang0516/EClaw/commit/ce8662d362422fdd25037f1deb61dbed9425e2f9))
* **channel:** restore handshake fallback to discovered sessions ([#2915](https://github.com/HankHuang0516/EClaw/issues/2915)) ([#2917](https://github.com/HankHuang0516/EClaw/issues/2917)) ([9d7d3a2](https://github.com/HankHuang0516/EClaw/commit/9d7d3a25654289998314dd5ca152cefdb8a4d64e)), closes [#2912](https://github.com/HankHuang0516/EClaw/issues/2912)
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* scheduled audit 2026-05-13 — 6 bugs, XSS, i18n ([#2668](https://github.com/HankHuang0516/EClaw/issues/2668)) ([21dd513](https://github.com/HankHuang0516/EClaw/commit/21dd513b4464738de29164265437435ba6cc4817)), closes [#2605](https://github.com/HankHuang0516/EClaw/issues/2605) [#2608](https://github.com/HankHuang0516/EClaw/issues/2608) [#2600](https://github.com/HankHuang0516/EClaw/issues/2600) [#2599](https://github.com/HankHuang0516/EClaw/issues/2599) [#2598](https://github.com/HankHuang0516/EClaw/issues/2598)
* **channel:** scope official bot sessions ([#2912](https://github.com/HankHuang0516/EClaw/issues/2912)) ([5c56b62](https://github.com/HankHuang0516/EClaw/commit/5c56b62c13b739b76f39e168a26bd4e5de2644fb))
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **dashboard:** show Claude weekly bar reset countdown ([#2896](https://github.com/HankHuang0516/EClaw/issues/2896)) ([3b87845](https://github.com/HankHuang0516/EClaw/commit/3b87845d713e980fec69f6b8007549338a326713)), closes [#2895](https://github.com/HankHuang0516/EClaw/issues/2895)
* **chat:** smart-chip preview falls back to inline c.comments when /comments fails (PR [#2677](https://github.com/HankHuang0516/EClaw/issues/2677)) ([7f4dffd](https://github.com/HankHuang0516/EClaw/commit/7f4dffd2c83ea86f296b8fa0610f0e67c9f1af11))
* **kanban:** stabilize comment detail viewport ([#2796](https://github.com/HankHuang0516/EClaw/issues/2796)) ([0a10aad](https://github.com/HankHuang0516/EClaw/commit/0a10aadb5a5b12ff23454c16d5c88183b94ad7d7))
* **wallpaper:** stop Android live wallpaper flashing default lobster on companion change ([#2629](https://github.com/HankHuang0516/EClaw/issues/2629)) ([8b4f66f](https://github.com/HankHuang0516/EClaw/commit/8b4f66fcb335bf43128f924b761b6337c817095b)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **chat:** stop chat.html bouncing to dashboard via /api/rental/health-status 401 race ([#2833](https://github.com/HankHuang0516/EClaw/issues/2833)) ([c422406](https://github.com/HankHuang0516/EClaw/commit/c4224067cdcfe7f3e22ab95007c7563dac4196ac))
* **openclaw-channel:** support OpenClaw 2026.5.20 ([8045de6](https://github.com/HankHuang0516/EClaw/commit/8045de6bebecfc05f9bd57453b99c098ca35681b))
* **mentions:** support same-device CJK display-name tags ([#2874](https://github.com/HankHuang0516/EClaw/issues/2874)) ([b8f61be](https://github.com/HankHuang0516/EClaw/commit/b8f61be9a3962fef75dd32ea34e8900880dafaf9))
* **channel:** suppress operational A2A loop messages (rebase of [#2288](https://github.com/HankHuang0516/EClaw/issues/2288)) ([#2930](https://github.com/HankHuang0516/EClaw/issues/2930)) ([7ceabc9](https://github.com/HankHuang0516/EClaw/commit/7ceabc915df22123cb46ae1500e2eb2e279250af))
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **dashboard:** use sessions[].project for widget Projects list (was .project_id) ([#2894](https://github.com/HankHuang0516/EClaw/issues/2894)) ([0fd1334](https://github.com/HankHuang0516/EClaw/commit/0fd1334897d4a603cc6eb74f34b48606547e09cf))
* **app:** WebView pages honor app-selected locale via ?lang= URL param ([#2672](https://github.com/HankHuang0516/EClaw/issues/2672)) ([8ed8757](https://github.com/HankHuang0516/EClaw/commit/8ed8757aec5bf214e837cc0d81bf2b23f1993a91)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **share-chat:** wire rich CTA actions to msgInput ([#2867](https://github.com/HankHuang0516/EClaw/issues/2867)) ([df23b11](https://github.com/HankHuang0516/EClaw/commit/df23b1147d34c59a644a145bbd87c18b96400acc))


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* **usage-api:** /api/usage/{snapshot,timeline} + usage_snapshots table (Plan B Phase 1) ([#2889](https://github.com/HankHuang0516/EClaw/issues/2889)) ([a0d859c](https://github.com/HankHuang0516/EClaw/commit/a0d859c63f0220909dadb2b1952174861ccdce14))
* **community:** 1-click chat button on bot cards + utm tagging ([#2610](https://github.com/HankHuang0516/EClaw/issues/2610)) ([eee97b0](https://github.com/HankHuang0516/EClaw/commit/eee97b0e2e4e74945ec24f218a69a52800b97a66))
* **chat:** accept ?messageId= as deep-link alias ([#2838](https://github.com/HankHuang0516/EClaw/issues/2838)) ([1785a87](https://github.com/HankHuang0516/EClaw/commit/1785a87310426637fd10df83754fb9924c45207f))
* **chat:** add avatar size preference ([#2714](https://github.com/HankHuang0516/EClaw/issues/2714)) ([6fe164a](https://github.com/HankHuang0516/EClaw/commit/6fe164ad8b22fa576d2dd9ad37c0d9fc295b5a83))
* **dashboard:** add Claude and Codex channel guides ([#2640](https://github.com/HankHuang0516/EClaw/issues/2640)) ([c64e4c4](https://github.com/HankHuang0516/EClaw/commit/c64e4c4afc78db58c5cd578f00486dd7b2fd3311))
* **dashboard:** add Claude Code channel guide card ([#2667](https://github.com/HankHuang0516/EClaw/issues/2667)) ([d70d75c](https://github.com/HankHuang0516/EClaw/commit/d70d75c0c8caa8a540358a9aab4556b8c1927a5c))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* **kanban:** add device-scoped card tags ([#2773](https://github.com/HankHuang0516/EClaw/issues/2773)) ([53a387e](https://github.com/HankHuang0516/EClaw/commit/53a387e67ba7bb4f6bed1c427000c4ae8666577a))
* **portal:** add entity selector to petdx-browser ([#2602](https://github.com/HankHuang0516/EClaw/issues/2602)) ([3fa067e](https://github.com/HankHuang0516/EClaw/commit/3fa067e00b38829b48a37cecd33ee81a9a1122d9))
* **kanban:** add explicit card links ([#2721](https://github.com/HankHuang0516/EClaw/issues/2721)) ([ef9f812](https://github.com/HankHuang0516/EClaw/commit/ef9f812a3fcf39efd07fd158ce90951bdd045ac7))
* **kanban:** add explicit done-card reopen flow ([#2801](https://github.com/HankHuang0516/EClaw/issues/2801)) ([5080aac](https://github.com/HankHuang0516/EClaw/commit/5080aacb75047c0deaa379ee708ec85465afd57c))
* **mindmap:** add GET /api/mindmap/graph force-graph projection ([#2680](https://github.com/HankHuang0516/EClaw/issues/2680)) ([a00b2e7](https://github.com/HankHuang0516/EClaw/commit/a00b2e775af2c4c98cd157f760ad87aeeee469f0)), closes [#2679](https://github.com/HankHuang0516/EClaw/issues/2679) [#2679](https://github.com/HankHuang0516/EClaw/issues/2679)
* **dashboard:** add Hermes channel promo card ([#2708](https://github.com/HankHuang0516/EClaw/issues/2708)) ([337aca1](https://github.com/HankHuang0516/EClaw/commit/337aca153d5a1cd7e888c065f00ae54db7872d91))
* **rental:** add listing soft pause ([#2781](https://github.com/HankHuang0516/EClaw/issues/2781)) ([6586b72](https://github.com/HankHuang0516/EClaw/commit/6586b72717ddb1637d91cd3242c8d2ff554f62b4))
* **portal:** add Nagoya 5D4N trip static cross-ref page ([#2689](https://github.com/HankHuang0516/EClaw/issues/2689)) ([2e0efb6](https://github.com/HankHuang0516/EClaw/commit/2e0efb6dcdaff52226cc8854a96747000b12bdff))
* **portal:** add Nagoya image atlas static page ([#2743](https://github.com/HankHuang0516/EClaw/issues/2743)) ([ac026e9](https://github.com/HankHuang0516/EClaw/commit/ac026e9fd2c92ac9437d01edddffc9adf972f6ba))
* **portal:** add Nagoya trip map links and image lightbox ([#2821](https://github.com/HankHuang0516/EClaw/issues/2821)) ([3e40955](https://github.com/HankHuang0516/EClaw/commit/3e40955650a05f45a6b9f7e39e73847705424a03))
* **portal/nagoya:** add parking shortcut buttons next to itinerary places ([#2826](https://github.com/HankHuang0516/EClaw/issues/2826)) ([63968c5](https://github.com/HankHuang0516/EClaw/commit/63968c554d046afc8d978de74e3aacbf7700500d))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **settings:** add rental roster management preview ([#2758](https://github.com/HankHuang0516/EClaw/issues/2758)) ([9706e59](https://github.com/HankHuang0516/EClaw/commit/9706e59ded140a90a6e02348124282bc69d89001))
* **rental:** add renter health chat indicator ([#2690](https://github.com/HankHuang0516/EClaw/issues/2690)) ([36cd2e9](https://github.com/HankHuang0516/EClaw/commit/36cd2e9802be4c7ebb03d3024617fa74aca48ffd))
* **ios:** add Tutorial & Intro entry in Settings ([#2800](https://github.com/HankHuang0516/EClaw/issues/2800)) ([ed83e51](https://github.com/HankHuang0516/EClaw/commit/ed83e51d043bf4cd5865f38dc95a91ed54820d6c))
* **landing:** add Watch Full Demo CTA below hero video ([#2799](https://github.com/HankHuang0516/EClaw/issues/2799)) ([66107c9](https://github.com/HankHuang0516/EClaw/commit/66107c954727551fd34d989a4674daaad9b63968))
* **footer:** add Watch Intro Video link in Info column ([#2798](https://github.com/HankHuang0516/EClaw/issues/2798)) ([d7c6d59](https://github.com/HankHuang0516/EClaw/commit/d7c6d596b69c6a5b257bf1f7a792a407ef9712ad))
* **i18n:** ar iter-2 — fill 623 missing keys against en source ([#2847](https://github.com/HankHuang0516/EClaw/issues/2847)) ([ee94a7a](https://github.com/HankHuang0516/EClaw/commit/ee94a7ae6812b5163efe4284ee4907ca32302f5c))
* **kanban:** backlog launch-gate flag to suppress L1/L2/L3 escalation ([#2855](https://github.com/HankHuang0516/EClaw/issues/2855)) ([cb8bf1b](https://github.com/HankHuang0516/EClaw/commit/cb8bf1bb6421f25214f65e129a8cadccc49cc266)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#4](https://github.com/HankHuang0516/EClaw/issues/4) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **companion:** bridge crafter-station/petdex gallery (1784 pets) ([#2601](https://github.com/HankHuang0516/EClaw/issues/2601)) ([2e245be](https://github.com/HankHuang0516/EClaw/commit/2e245bea6dd47ea7361b927d389188a3c23b6bb3))
* **promo:** chat avatar size feature landing page (self-hosted MP4) ([#2722](https://github.com/HankHuang0516/EClaw/issues/2722)) ([3852210](https://github.com/HankHuang0516/EClaw/commit/3852210d355704d018e3daca6b5f9512a011b210)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **kanban:** cron-spawn jitter + lane backpressure to prevent same-tick wedge ([#2791](https://github.com/HankHuang0516/EClaw/issues/2791)) ([9f414a7](https://github.com/HankHuang0516/EClaw/commit/9f414a731d6393672a0a4189c7b408c529ae5e12)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **portal:** dashboard usage widget — Claude/Codex 5h gauges + 24h chart (Plan B Phase 3) ([#2891](https://github.com/HankHuang0516/EClaw/issues/2891)) ([d18f373](https://github.com/HankHuang0516/EClaw/commit/d18f373857e4bd302437d6bda2a1e01871fbb1db))
* **portal:** dashboard usage widget v2 — Session/Weekly % bars + projects, no cost (Plan B Phase 3.1) ([#2893](https://github.com/HankHuang0516/EClaw/issues/2893)) ([4bc0dc7](https://github.com/HankHuang0516/EClaw/commit/4bc0dc744ed9d54dfd532ebac4b705c7f84ec0a6))
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **info:** embed 75s promo video on Quick Start tab ([#2795](https://github.com/HankHuang0516/EClaw/issues/2795)) ([86c3f70](https://github.com/HankHuang0516/EClaw/commit/86c3f709a95eebbee1241077b807880463f804b6))
* **promo:** embed daily eclaw video 2026-05-14 ([#2786](https://github.com/HankHuang0516/EClaw/issues/2786)) ([718a814](https://github.com/HankHuang0516/EClaw/commit/718a814ab16850bc2b33a1b303841e2c4378ecfa)), closes [#2782](https://github.com/HankHuang0516/EClaw/issues/2782) [#2693](https://github.com/HankHuang0516/EClaw/issues/2693)
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **info:** embed promo video at top of Quick Start tab ([#2797](https://github.com/HankHuang0516/EClaw/issues/2797)) ([047679f](https://github.com/HankHuang0516/EClaw/commit/047679fd57ab9949eaeacea414d5611e71afe041))
* **rental:** enforce strict rebind refunds ([#2703](https://github.com/HankHuang0516/EClaw/issues/2703)) ([a1859c5](https://github.com/HankHuang0516/EClaw/commit/a1859c50e6fb3991d7a8051491502d824a14a116))
* **portal:** group task chip actions ([#2825](https://github.com/HankHuang0516/EClaw/issues/2825)) ([5db5c59](https://github.com/HankHuang0516/EClaw/commit/5db5c59b32b8635f1412205faf0c2f9164d3d5d4))
* **hermes:** H2 health-check cron + 7d SLA + commander alerts (card_07891ac) ([#2922](https://github.com/HankHuang0516/EClaw/issues/2922)) ([82b4315](https://github.com/HankHuang0516/EClaw/commit/82b4315aea234493e3d1889dc53958c2f1d842e0)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **portal:** info-guide-rules + info-guide-soul slide pair ([#2793](https://github.com/HankHuang0516/EClaw/issues/2793)) ([1c8bddc](https://github.com/HankHuang0516/EClaw/commit/1c8bddc4c185054b2b60088498e3d45509117127)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **chat:** link card previews to kanban ([#2754](https://github.com/HankHuang0516/EClaw/issues/2754)) ([2261240](https://github.com/HankHuang0516/EClaw/commit/22612402c2e95efb07246629e81a849be41ee9c7))
* **mission:** link notes to kanban cards ([#2723](https://github.com/HankHuang0516/EClaw/issues/2723)) ([b36dc18](https://github.com/HankHuang0516/EClaw/commit/b36dc18f3a8facf12e0b6046351c222f1e99dc55))
* **usage-daemon:** macOS launchd daemon polls Claude/Codex usage → POST /api/usage/snapshot (Plan B Phase 2) ([#2890](https://github.com/HankHuang0516/EClaw/issues/2890)) ([fd225e1](https://github.com/HankHuang0516/EClaw/commit/fd225e12d9491037be1a340bd63b54b5f3308c7f))
* **mindmap:** mission.html link to /portal/mindmap.html + deprecate /api/mission/mindmap ([#2685](https://github.com/HankHuang0516/EClaw/issues/2685)) ([11e297b](https://github.com/HankHuang0516/EClaw/commit/11e297bab1c9b56fcde3027d6500b7c58891bf18)), closes [#2680](https://github.com/HankHuang0516/EClaw/issues/2680) [#2684](https://github.com/HankHuang0516/EClaw/issues/2684)
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **portal:** nagoya trip interactive map (Leaflet + OSM, no API key) ([#2888](https://github.com/HankHuang0516/EClaw/issues/2888)) ([ecfdac0](https://github.com/HankHuang0516/EClaw/commit/ecfdac06348c12ee7c6872c6c28d5f82162e7aa9))
* **android:** native tab navigation bridge for portal pages ([#2832](https://github.com/HankHuang0516/EClaw/issues/2832)) ([7e02e6f](https://github.com/HankHuang0516/EClaw/commit/7e02e6f225014e64f08f55035d7b9e5727873343)), closes [#2824](https://github.com/HankHuang0516/EClaw/issues/2824) [#2743](https://github.com/HankHuang0516/EClaw/issues/2743) [#2821](https://github.com/HankHuang0516/EClaw/issues/2821) [#2826](https://github.com/HankHuang0516/EClaw/issues/2826) [#2797](https://github.com/HankHuang0516/EClaw/issues/2797) [#2798](https://github.com/HankHuang0516/EClaw/issues/2798) [#2799](https://github.com/HankHuang0516/EClaw/issues/2799) [#2800](https://github.com/HankHuang0516/EClaw/issues/2800) [#2801](https://github.com/HankHuang0516/EClaw/issues/2801) [#2816](https://github.com/HankHuang0516/EClaw/issues/2816) [#2796](https://github.com/HankHuang0516/EClaw/issues/2796) [#2825](https://github.com/HankHuang0516/EClaw/issues/2825) [#2812](https://github.com/HankHuang0516/EClaw/issues/2812) [#2813](https://github.com/HankHuang0516/EClaw/issues/2813) [#2814](https://github.com/HankHuang0516/EClaw/issues/2814) [#2815](https://github.com/HankHuang0516/EClaw/issues/2815) [#2811](https://github.com/HankHuang0516/EClaw/issues/2811) [#2807](https://github.com/HankHuang0516/EClaw/issues/2807) [#2808](https://github.com/HankHuang0516/EClaw/issues/2808) [#2818](https://github.com/HankHuang0516/EClaw/issues/2818) [#2819](https://github.com/HankHuang0516/EClaw/issues/2819) [#2824](https://github.com/HankHuang0516/EClaw/issues/2824)
* **channel:** outbound backpressure (30/min cap + 429 retry-after) ([#2911](https://github.com/HankHuang0516/EClaw/issues/2911)) ([36dc99c](https://github.com/HankHuang0516/EClaw/commit/36dc99ca78b0e1724a2aaefb5936669077b7a28f))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **settings:** per-entity nudge override UI (Phase 2) ([#2837](https://github.com/HankHuang0516/EClaw/issues/2837)) ([ea7662b](https://github.com/HankHuang0516/EClaw/commit/ea7662b0858882dae461e1387f711895924f9ab8)), closes [3/#4](https://github.com/HankHuang0516/EClaw/issues/4)
* **kanban:** per-entity nudge overrides (Phase 2 of card_e066cb6b) ([#2836](https://github.com/HankHuang0516/EClaw/issues/2836)) ([0425f80](https://github.com/HankHuang0516/EClaw/commit/0425f80bc1169c0d506b665659c8676695c45553))
* **avatar:** petdx render on card-holder my-cards (Phase 1b) ([#2621](https://github.com/HankHuang0516/EClaw/issues/2621)) ([f78ba8b](https://github.com/HankHuang0516/EClaw/commit/f78ba8b18acc426936ab6d8a82ca7541effea00d))
* **avatar:** petdx render on dashboard entity grid / org chart / bindings (Phase 1b) ([#2622](https://github.com/HankHuang0516/EClaw/issues/2622)) ([f417749](https://github.com/HankHuang0516/EClaw/commit/f41774914451048e8cd76e9ae30416a0642e173b)), closes [#2620](https://github.com/HankHuang0516/EClaw/issues/2620) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621)
* **avatar:** petdx render on kanban auto-assign / pulse / comment avatars (Phase 1b) ([#2624](https://github.com/HankHuang0516/EClaw/issues/2624)) ([6bff5f8](https://github.com/HankHuang0516/EClaw/commit/6bff5f80440d0bd91a6b1721cde9478d685c4d46))
* **avatar:** petdx render on mission skill/rule/soul entity dialogs (Phase 1b) ([#2623](https://github.com/HankHuang0516/EClaw/issues/2623)) ([129327b](https://github.com/HankHuang0516/EClaw/commit/129327bc7b91056659f1ab7e8d5e3f5260d951fb))
* **mindmap:** portal/mindmap.html force-graph prototype ([#129](https://github.com/HankHuang0516/EClaw/issues/129)) ([#2681](https://github.com/HankHuang0516/EClaw/issues/2681)) ([0f15e69](https://github.com/HankHuang0516/EClaw/commit/0f15e6930f0697c37fa08f3219edb8f9e499837f)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **channel:** record delivery receipts ([#2913](https://github.com/HankHuang0516/EClaw/issues/2913)) ([90c671b](https://github.com/HankHuang0516/EClaw/commit/90c671bd1970ab51584b90e2b634484ec10cc7ae))
* **portal:** redo nagoya trip page in professional tour-guide style ([#2691](https://github.com/HankHuang0516/EClaw/issues/2691)) ([b2378c0](https://github.com/HankHuang0516/EClaw/commit/b2378c06ee20fa9cccfdceceb1a4c9e0b3072f59))
* **i18n:** remove ms+hi orphan keys from i18n.js ([#2849](https://github.com/HankHuang0516/EClaw/issues/2849)) ([320176c](https://github.com/HankHuang0516/EClaw/commit/320176c06a3cfd8631e2a82ad02a6bd6a9af0389))
* **avatar:** render selected petdx companion in chat avatars ([#2620](https://github.com/HankHuang0516/EClaw/issues/2620)) ([0bdd046](https://github.com/HankHuang0516/EClaw/commit/0bdd046fe1b1c428e32edda366ff112c08927f4c))
* **home:** replace native home with WebView hosting dashboard.html ([#2634](https://github.com/HankHuang0516/EClaw/issues/2634)) ([e69ea81](https://github.com/HankHuang0516/EClaw/commit/e69ea8160c239b083a83d6dc83a4f1c3f901c863))
* **app:** route chat mission jumps through native tabs ([#2824](https://github.com/HankHuang0516/EClaw/issues/2824)) ([deb07b6](https://github.com/HankHuang0516/EClaw/commit/deb07b69a9ecca632fe27278de537f1d85234e94))
* **proxy:** scope private repo git auth ([#2926](https://github.com/HankHuang0516/EClaw/issues/2926)) ([246f7ff](https://github.com/HankHuang0516/EClaw/commit/246f7ff1dedaf7bece9e3cb9eb24d0ab32ebb393))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **chat:** support message deep links ([#2719](https://github.com/HankHuang0516/EClaw/issues/2719)) ([2dc0f1e](https://github.com/HankHuang0516/EClaw/commit/2dc0f1eeb259e1a0848db4a03186b989372cd91c))
* **mission:** support note deep links ([#2717](https://github.com/HankHuang0516/EClaw/issues/2717)) ([2efd3a5](https://github.com/HankHuang0516/EClaw/commit/2efd3a5e741217a07c0b0ac54a0ddd010e0ebe23))
* **share-chat:** twitter card + per-bot og:image/twitter:* in SSR ([#2609](https://github.com/HankHuang0516/EClaw/issues/2609)) ([6cdc853](https://github.com/HankHuang0516/EClaw/commit/6cdc853dc884cdb95bd47214942768981f218ae0))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))
* **settings:** wire petdx avatar into channel-account chips ([#2626](https://github.com/HankHuang0516/EClaw/issues/2626)) ([88aec77](https://github.com/HankHuang0516/EClaw/commit/88aec772628c240e97b336bb5820892ad632d1ae))
* **files:** wire petdx avatar into entity filter & per-file badges ([#2627](https://github.com/HankHuang0516/EClaw/issues/2627)) ([5b3e5cc](https://github.com/HankHuang0516/EClaw/commit/5b3e5cc542d9da69bb4e92500fd03a542ea33f00))
* **mindmap:** wrap hardcoded zh-TW UI strings with i18n t() ([#2607](https://github.com/HankHuang0516/EClaw/issues/2607)) ([166af87](https://github.com/HankHuang0516/EClaw/commit/166af8772b2121a24aaf34a83b3de970e9b3b571)), closes [#2606](https://github.com/HankHuang0516/EClaw/issues/2606)
* **i18n:** zh-TW backfill 8 keys (soft-pause + chat + invite + wallet) ([#2815](https://github.com/HankHuang0516/EClaw/issues/2815)) ([a2dd574](https://github.com/HankHuang0516/EClaw/commit/a2dd5743ce8d43a4b6ace9a2fd4b52568180d6c5))


### Performance Improvements

* **mindmap:** force-graph hardening for 1000/2000-node graphs ([#2684](https://github.com/HankHuang0516/EClaw/issues/2684)) ([da8b1c8](https://github.com/HankHuang0516/EClaw/commit/da8b1c8f947ab8bc8fa455c1962a91146623a1fc))


### Reverts

* Revert "feat(telegram): long-poll adapter PoC (card_406e612942ff062a06fc47be) ([#2238](https://github.com/HankHuang0516/EClaw/issues/2238))" ([#2239](https://github.com/HankHuang0516/EClaw/issues/2239)) ([eb7aa92](https://github.com/HankHuang0516/EClaw/commit/eb7aa92cce454b4a1a22654a2d133cdebe78c2bd))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-25)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **notifications:** add kanban_done + kanban_done_auto toggles to Android Settings ([#2636](https://github.com/HankHuang0516/EClaw/issues/2636)) ([a710909](https://github.com/HankHuang0516/EClaw/commit/a7109095e3393b8564e7ef1b23d382a4fbb944b8))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **api:** align /api/platform-stats skill-doc with device-auth contract (card_49b8190) ([#2916](https://github.com/HankHuang0516/EClaw/issues/2916)) ([ee55b2f](https://github.com/HankHuang0516/EClaw/commit/ee55b2fdbfbcd4bead5501d16ee66339056c32d7))
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **i18n:** ar block — fix 27 broken entries (CJK leaks + truncated HTML) ([#2851](https://github.com/HankHuang0516/EClaw/issues/2851)) ([5b19175](https://github.com/HankHuang0516/EClaw/commit/5b19175d712d00d16fcec00b749035c4beae7a5c))
* **chat:** atomic-load target bar (await contacts before first render) ([#2831](https://github.com/HankHuang0516/EClaw/issues/2831)) ([5f529e6](https://github.com/HankHuang0516/EClaw/commit/5f529e6b772eacc38ba1de69b44258a05f0d816a)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2](https://github.com/HankHuang0516/EClaw/issues/2)
* **channel:** await binding persistence ([712516d](https://github.com/HankHuang0516/EClaw/commit/712516decafb745035bd1434a28cc1973d433e19))
* **rental:** bump handshake timeout to 60s + timeout-aware discovery fallback ([#2863](https://github.com/HankHuang0516/EClaw/issues/2863)) ([fd4322f](https://github.com/HankHuang0516/EClaw/commit/fd4322f8890f3c2dfca3acdae6a4b95f19c381f9)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **i18n:** clear batch 1 residual missing keys ([#2790](https://github.com/HankHuang0516/EClaw/issues/2790)) ([211030e](https://github.com/HankHuang0516/EClaw/commit/211030e0b0b6a865c11f0c4ed60dc4e356d43b7a))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **kanban:** comment input no longer overlaps last comment in card detail (PR [#2678](https://github.com/HankHuang0516/EClaw/issues/2678)) ([fba91fc](https://github.com/HankHuang0516/EClaw/commit/fba91fca15402b453a0db5ee857c0b16e6087055))
* **chat:** compact 20px avatar in target bar (App WebView only shows [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2](https://github.com/HankHuang0516/EClaw/issues/2)) ([#2830](https://github.com/HankHuang0516/EClaw/issues/2830)) ([42c7543](https://github.com/HankHuang0516/EClaw/commit/42c7543b4a78a7abf3f5f7535eb9bc6142cd0fe2)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **portal:** complete 401 redirect sweep + mobile UIUX truncation ([#2842](https://github.com/HankHuang0516/EClaw/issues/2842)) ([f9799ba](https://github.com/HankHuang0516/EClaw/commit/f9799ba42498b109f0a8a70e80836aa6da51e216)), closes [#2833](https://github.com/HankHuang0516/EClaw/issues/2833) [#2845](https://github.com/HankHuang0516/EClaw/issues/2845) [#2844](https://github.com/HankHuang0516/EClaw/issues/2844) [#2843](https://github.com/HankHuang0516/EClaw/issues/2843)
* **uiux:** continue qa mobile readability sweep ([#2854](https://github.com/HankHuang0516/EClaw/issues/2854)) ([57606ff](https://github.com/HankHuang0516/EClaw/commit/57606ffe3e543b07a026aacc53c4b470c9a7825b))
* **i18n:** cover dynamic portal wrapper keys ([#2807](https://github.com/HankHuang0516/EClaw/issues/2807)) ([4c711cc](https://github.com/HankHuang0516/EClaw/commit/4c711cc4009300ffe4e8933a98ee01cd0fdd6aeb))
* **i18n:** dedup 20 dash_channel_card_* keys in es block ([#2876](https://github.com/HankHuang0516/EClaw/issues/2876)) ([807284c](https://github.com/HankHuang0516/EClaw/commit/807284ce363ef119ccdb0ae40e5ce99d3f0a27e0))
* **i18n:** dedupe backend locale keys via AST ([#2920](https://github.com/HankHuang0516/EClaw/issues/2920)) ([40ef114](https://github.com/HankHuang0516/EClaw/commit/40ef11414c8b836fe1ed93ec06c839df3a1bf7b9))
* **i18n:** dedupe zh locale keys ([#2919](https://github.com/HankHuang0516/EClaw/issues/2919)) ([afd2cca](https://github.com/HankHuang0516/EClaw/commit/afd2cca8086c2f2df0d04c9c5f8c58733652875e))
* **test:** delegate root test and remove invalid jest option ([#2292](https://github.com/HankHuang0516/EClaw/issues/2292)) ([65bf2f8](https://github.com/HankHuang0516/EClaw/commit/65bf2f83d26d925097cd380ab73b04ab2db49842))
* **kanban:** dep-aware nudge gating + roadmap dependency backfill ([#2904](https://github.com/HankHuang0516/EClaw/issues/2904)) ([2b76ac9](https://github.com/HankHuang0516/EClaw/commit/2b76ac9d3b7e4169b7bc3c6f6b0b0903b63cd9f7)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **rental:** don't pollute entity.message on push gateway timeout ([#2860](https://github.com/HankHuang0516/EClaw/issues/2860)) ([592ba44](https://github.com/HankHuang0516/EClaw/commit/592ba44f57536ee00011b6cbddaa6b129a7cbae9))
* **petdx:** drop dark-grey loading placeholder + preload sprite WEBP ([#2628](https://github.com/HankHuang0516/EClaw/issues/2628)) ([59cef38](https://github.com/HankHuang0516/EClaw/commit/59cef387bd69ca99d7d15c86a1364856d3849ad8)), closes [#1a1a1a](https://github.com/HankHuang0516/EClaw/issues/1a1a1a)
* **gateway-ws:** drop Origin header on server-to-server WS upgrade ([#2869](https://github.com/HankHuang0516/EClaw/issues/2869)) ([716dcf9](https://github.com/HankHuang0516/EClaw/commit/716dcf9d0834b17522bb9d894bad84bc142d1a19))
* **setup-scripts:** drop Origin header on server-to-server WS upgrade ([#2875](https://github.com/HankHuang0516/EClaw/issues/2875)) ([9d893b8](https://github.com/HankHuang0516/EClaw/commit/9d893b8e5eea4db275e450bf423903c156cd3e4b)), closes [#2869](https://github.com/HankHuang0516/EClaw/issues/2869)
* **security:** escape innerHTML in chat modal error messages ([#2819](https://github.com/HankHuang0516/EClaw/issues/2819)) ([dce07ad](https://github.com/HankHuang0516/EClaw/commit/dce07adde64795916dba977ae23e46f3371ce7ed)), closes [#2809](https://github.com/HankHuang0516/EClaw/issues/2809) [#2810](https://github.com/HankHuang0516/EClaw/issues/2810) [#2809](https://github.com/HankHuang0516/EClaw/issues/2809) [#2810](https://github.com/HankHuang0516/EClaw/issues/2810)
* **proxy:** export repo auth to CLI child ([#2928](https://github.com/HankHuang0516/EClaw/issues/2928)) ([336a8ca](https://github.com/HankHuang0516/EClaw/commit/336a8caff4e3663287bd2948cf9fe6e04125cbc8))
* **entities:** expose botSecret to owner so wallpaper service can poll companions ([#2615](https://github.com/HankHuang0516/EClaw/issues/2615)) ([04470fc](https://github.com/HankHuang0516/EClaw/commit/04470fce8f8c3fce2b1ba8b243e776606f107502))
* **rental:** expose owner_public_code in marketplace so plaza CTA can route ([#2616](https://github.com/HankHuang0516/EClaw/issues/2616)) ([4d1372f](https://github.com/HankHuang0516/EClaw/commit/4d1372f717d93cab65543e87c852e74e9fb67071)), closes [#2610](https://github.com/HankHuang0516/EClaw/issues/2610)
* **mindmap:** fallback to device scope when entityId is null ([#2728](https://github.com/HankHuang0516/EClaw/issues/2728)) ([7572312](https://github.com/HankHuang0516/EClaw/commit/7572312433d3d75fc245eda48a28919ce14bd927))
* **i18n:** fill 11 missing zh keys post-[#2920](https://github.com/HankHuang0516/EClaw/issues/2920)/[#2921](https://github.com/HankHuang0516/EClaw/issues/2921) (card_de6970) ([#2924](https://github.com/HankHuang0516/EClaw/issues/2924)) ([17c4899](https://github.com/HankHuang0516/EClaw/commit/17c48996489b1444d6ed589027acfa7986178fe1)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** fill backend runtime locale gaps ([#2921](https://github.com/HankHuang0516/EClaw/issues/2921)) ([00d96ff](https://github.com/HankHuang0516/EClaw/commit/00d96ff261b8134b49292623e1f786fd544144cc))
* **i18n:** fill Spanish drift keys ([#2751](https://github.com/HankHuang0516/EClaw/issues/2751)) ([0ad0ee5](https://github.com/HankHuang0516/EClaw/commit/0ad0ee55f7fac3e6ac46d891539950dab4d553cc))
* **portal:** fit embedded org chart to mobile viewport ([#2674](https://github.com/HankHuang0516/EClaw/issues/2674)) ([1c4e1b4](https://github.com/HankHuang0516/EClaw/commit/1c4e1b413ea7027b4cd4b8ecda981b0d0e12e66b))
* **i18n:** fix 6 trailing-comma syntax errors in 10-locale batch ([#2771](https://github.com/HankHuang0516/EClaw/issues/2771)) ([b27c6ca](https://github.com/HankHuang0516/EClaw/commit/b27c6ca204bf813e406c54ce3a2532a5f1f031b3))
* **kanban:** GET card returns latest 50 comments + comments endpoint exposes total ([#2816](https://github.com/HankHuang0516/EClaw/issues/2816)) ([c4d83f7](https://github.com/HankHuang0516/EClaw/commit/c4d83f777a1cd26aea0936e4316aa35c52822eef))
* **sharechat:** guest verify-email modal + disabled Send for unverified ([#2865](https://github.com/HankHuang0516/EClaw/issues/2865)) ([cb3b061](https://github.com/HankHuang0516/EClaw/commit/cb3b0614e0f6160417d907753e66eceb2d666802))
* **uiux:** harden chat previews and roster preview ([#2769](https://github.com/HankHuang0516/EClaw/issues/2769)) ([466d4d3](https://github.com/HankHuang0516/EClaw/commit/466d4d3ef81c628d3f58db64323946053d7bf61c))
* **mention-parser:** ignore @-mentions inside markdown code spans ([#2645](https://github.com/HankHuang0516/EClaw/issues/2645)) ([8da19d4](https://github.com/HankHuang0516/EClaw/commit/8da19d4a79ceb4152bf2144ee0847c61ce3e1def)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **kanban:** lazy-load dependency chips via IntersectionObserver ([#2632](https://github.com/HankHuang0516/EClaw/issues/2632)) ([20586b4](https://github.com/HankHuang0516/EClaw/commit/20586b43357335f9eb6a190c02d58c8e36b58aba)), closes [#2631](https://github.com/HankHuang0516/EClaw/issues/2631)
* **i18n:** localize FCM NotificationChannel labels (card_ec8d3a22) ([#2918](https://github.com/HankHuang0516/EClaw/issues/2918)) ([591cd20](https://github.com/HankHuang0516/EClaw/commit/591cd206704693650a53d19d94c4cc75daf84ffd))
* **kanban:** make card sorting deterministic ([#2756](https://github.com/HankHuang0516/EClaw/issues/2756)) ([48e2117](https://github.com/HankHuang0516/EClaw/commit/48e2117b64e37f05dc635e0a3b67bfd43cbe48f5))
* **portal/nagoya-trip:** map-link invisible on dark hero/day-banner ([#2897](https://github.com/HankHuang0516/EClaw/issues/2897)) ([cc33df6](https://github.com/HankHuang0516/EClaw/commit/cc33df686673455c20beaee60871412a5d486e66)), closes [#1f4030](https://github.com/HankHuang0516/EClaw/issues/1f4030) [#8b8579](https://github.com/HankHuang0516/EClaw/issues/8b8579) [#6e6859](https://github.com/HankHuang0516/EClaw/issues/6e6859) [#7a5614](https://github.com/HankHuang0516/EClaw/issues/7a5614)
* **org-chart:** notify affected bots on hierarchy change ([#2812](https://github.com/HankHuang0516/EClaw/issues/2812)) ([55675fd](https://github.com/HankHuang0516/EClaw/commit/55675fdf4487494d729a29524b32bd81b756a00c)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** notify reviewer on manual /move → review ([#2753](https://github.com/HankHuang0516/EClaw/issues/2753)) ([6cbbb4e](https://github.com/HankHuang0516/EClaw/commit/6cbbb4ee8c0d4d8ad54df2e9b5faaa3699bd530f))
* **wallpaper:** off-load spritesheet fetch to IO so per-petdx sprites actually render ([#2618](https://github.com/HankHuang0516/EClaw/issues/2618)) ([61b832c](https://github.com/HankHuang0516/EClaw/commit/61b832c9fa8a1d0caab810ccc942d85c63349267)), closes [#2615](https://github.com/HankHuang0516/EClaw/issues/2615) [#2577](https://github.com/HankHuang0516/EClaw/issues/2577)
* **security:** patch P0 sanitize-html XSS + P1 protobufjs + exam.html XSS ([#2829](https://github.com/HankHuang0516/EClaw/issues/2829)) ([c71b871](https://github.com/HankHuang0516/EClaw/commit/c71b871a045887375dd0d26d1a3280a0891a89ad))
* **security:** patch ws uninitialized memory disclosure (GHSA-58qx-3vcg-4xpx) ([#2872](https://github.com/HankHuang0516/EClaw/issues/2872)) ([2523d15](https://github.com/HankHuang0516/EClaw/commit/2523d154bbe501a7cc086340f7a07ece3abfa69b))
* **portal:** petdx-browser cookie-session fallback for device-login ([#2757](https://github.com/HankHuang0516/EClaw/issues/2757)) ([ca275f4](https://github.com/HankHuang0516/EClaw/commit/ca275f4519835da0c7ad71c588908a18f6f138d8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **api:** platform-stats 500 + entity/lookup publicCode alias ([#2809](https://github.com/HankHuang0516/EClaw/issues/2809), [#2810](https://github.com/HankHuang0516/EClaw/issues/2810)) ([#2818](https://github.com/HankHuang0516/EClaw/issues/2818)) ([f99fd17](https://github.com/HankHuang0516/EClaw/commit/f99fd17b2b1c32d88daa2510ff66d714c1a53edc))
* **i18n:** positional format specifiers for feedback_result_logs (7 locales) ([#2597](https://github.com/HankHuang0516/EClaw/issues/2597)) ([21aedc7](https://github.com/HankHuang0516/EClaw/commit/21aedc7eebc7a2839e340136f38dfdfd4dabb9dc))
* **avatar-petdx:** preserve descriptor across transient API failures (flicker) ([#2625](https://github.com/HankHuang0516/EClaw/issues/2625)) ([7b1c606](https://github.com/HankHuang0516/EClaw/commit/7b1c606514f7698d72ec95cf6c556e4043966186))
* **chat:** preserve recipient selection across rental-health refresh (P0 #card_eb1cba76) ([#2906](https://github.com/HankHuang0516/EClaw/issues/2906)) ([9cc0301](https://github.com/HankHuang0516/EClaw/commit/9cc0301cc26a0f49af4b7f53486f5c1a7cdd7902)), closes [#card_eb1cba76](https://github.com/HankHuang0516/EClaw/issues/card_eb1cba76) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **chat:** preserve scroll anchor while reading history ([#2693](https://github.com/HankHuang0516/EClaw/issues/2693)) ([945fdb7](https://github.com/HankHuang0516/EClaw/commit/945fdb7192b791b31882e1e75568dd8b11e4686f))
* **promo:** pull video embed from /promo-chat-avatar.html ([#2724](https://github.com/HankHuang0516/EClaw/issues/2724)) ([2afabc8](https://github.com/HankHuang0516/EClaw/commit/2afabc8c5ff8b25218a7cb857e8adfa572c8e9d5))
* **dashboard:** read live.rate_limits.{five_hour,seven_day}.used_percentage ([#2895](https://github.com/HankHuang0516/EClaw/issues/2895)) ([8223303](https://github.com/HankHuang0516/EClaw/commit/822330312bccb1c76675ad2c3b26e78d10dd1298))
* **kanban:** realign stale recurring schedules ([#2785](https://github.com/HankHuang0516/EClaw/issues/2785)) ([ab8ee25](https://github.com/HankHuang0516/EClaw/commit/ab8ee250a9b37f3d3e838bb01d8866c8d2b78231))
* **i18n:** reapply de6970 locale gap translations ([#2925](https://github.com/HankHuang0516/EClaw/issues/2925)) ([d994dc1](https://github.com/HankHuang0516/EClaw/commit/d994dc1d240fef72326db2599262375ccbf29175))
* **portal:** reduce QA-discovered request fanout ([#2656](https://github.com/HankHuang0516/EClaw/issues/2656)) ([1e46d6b](https://github.com/HankHuang0516/EClaw/commit/1e46d6bab61e58c65b452b6503d953f8dddeee75))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **portal:** remove org chart fit scale floor ([#2676](https://github.com/HankHuang0516/EClaw/issues/2676)) ([0f01606](https://github.com/HankHuang0516/EClaw/commit/0f016068b963bb5f800a02f28817c7174979d913))
* **rental:** remove phantom 'webhook test push' step from BIND_COMPLETE ([#2864](https://github.com/HankHuang0516/EClaw/issues/2864)) ([47f4a3e](https://github.com/HankHuang0516/EClaw/commit/47f4a3edf76aa95ebd06d8713cd44fda6eef9b5d))
* **i18n:** rename mm_empty_title → mm_state_empty_title in mindmap.html ([#2683](https://github.com/HankHuang0516/EClaw/issues/2683)) ([c79c109](https://github.com/HankHuang0516/EClaw/commit/c79c109bea23142e8a6d9ace976d105af1280ec9))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **chat:** render mention avatars with companion renderer ([#2633](https://github.com/HankHuang0516/EClaw/issues/2633)) ([03e205f](https://github.com/HankHuang0516/EClaw/commit/03e205f663ecd2c2f443d4009dd5af0093f0bbbb))
* **kanban:** reserve mobile comments panel height ([#2782](https://github.com/HankHuang0516/EClaw/issues/2782)) ([ce8662d](https://github.com/HankHuang0516/EClaw/commit/ce8662d362422fdd25037f1deb61dbed9425e2f9))
* **channel:** restore handshake fallback to discovered sessions ([#2915](https://github.com/HankHuang0516/EClaw/issues/2915)) ([#2917](https://github.com/HankHuang0516/EClaw/issues/2917)) ([9d7d3a2](https://github.com/HankHuang0516/EClaw/commit/9d7d3a25654289998314dd5ca152cefdb8a4d64e)), closes [#2912](https://github.com/HankHuang0516/EClaw/issues/2912)
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* scheduled audit 2026-05-13 — 6 bugs, XSS, i18n ([#2668](https://github.com/HankHuang0516/EClaw/issues/2668)) ([21dd513](https://github.com/HankHuang0516/EClaw/commit/21dd513b4464738de29164265437435ba6cc4817)), closes [#2605](https://github.com/HankHuang0516/EClaw/issues/2605) [#2608](https://github.com/HankHuang0516/EClaw/issues/2608) [#2600](https://github.com/HankHuang0516/EClaw/issues/2600) [#2599](https://github.com/HankHuang0516/EClaw/issues/2599) [#2598](https://github.com/HankHuang0516/EClaw/issues/2598)
* **channel:** scope official bot sessions ([#2912](https://github.com/HankHuang0516/EClaw/issues/2912)) ([5c56b62](https://github.com/HankHuang0516/EClaw/commit/5c56b62c13b739b76f39e168a26bd4e5de2644fb))
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **dashboard:** show Claude weekly bar reset countdown ([#2896](https://github.com/HankHuang0516/EClaw/issues/2896)) ([3b87845](https://github.com/HankHuang0516/EClaw/commit/3b87845d713e980fec69f6b8007549338a326713)), closes [#2895](https://github.com/HankHuang0516/EClaw/issues/2895)
* **chat:** smart-chip preview falls back to inline c.comments when /comments fails (PR [#2677](https://github.com/HankHuang0516/EClaw/issues/2677)) ([7f4dffd](https://github.com/HankHuang0516/EClaw/commit/7f4dffd2c83ea86f296b8fa0610f0e67c9f1af11))
* **kanban:** stabilize comment detail viewport ([#2796](https://github.com/HankHuang0516/EClaw/issues/2796)) ([0a10aad](https://github.com/HankHuang0516/EClaw/commit/0a10aadb5a5b12ff23454c16d5c88183b94ad7d7))
* **wallpaper:** stop Android live wallpaper flashing default lobster on companion change ([#2629](https://github.com/HankHuang0516/EClaw/issues/2629)) ([8b4f66f](https://github.com/HankHuang0516/EClaw/commit/8b4f66fcb335bf43128f924b761b6337c817095b)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **chat:** stop chat.html bouncing to dashboard via /api/rental/health-status 401 race ([#2833](https://github.com/HankHuang0516/EClaw/issues/2833)) ([c422406](https://github.com/HankHuang0516/EClaw/commit/c4224067cdcfe7f3e22ab95007c7563dac4196ac))
* **openclaw-channel:** support OpenClaw 2026.5.20 ([8045de6](https://github.com/HankHuang0516/EClaw/commit/8045de6bebecfc05f9bd57453b99c098ca35681b))
* **mentions:** support same-device CJK display-name tags ([#2874](https://github.com/HankHuang0516/EClaw/issues/2874)) ([b8f61be](https://github.com/HankHuang0516/EClaw/commit/b8f61be9a3962fef75dd32ea34e8900880dafaf9))
* **channel:** suppress operational A2A loop messages (rebase of [#2288](https://github.com/HankHuang0516/EClaw/issues/2288)) ([#2930](https://github.com/HankHuang0516/EClaw/issues/2930)) ([7ceabc9](https://github.com/HankHuang0516/EClaw/commit/7ceabc915df22123cb46ae1500e2eb2e279250af))
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **dashboard:** use sessions[].project for widget Projects list (was .project_id) ([#2894](https://github.com/HankHuang0516/EClaw/issues/2894)) ([0fd1334](https://github.com/HankHuang0516/EClaw/commit/0fd1334897d4a603cc6eb74f34b48606547e09cf))
* **app:** WebView pages honor app-selected locale via ?lang= URL param ([#2672](https://github.com/HankHuang0516/EClaw/issues/2672)) ([8ed8757](https://github.com/HankHuang0516/EClaw/commit/8ed8757aec5bf214e837cc0d81bf2b23f1993a91)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **share-chat:** wire rich CTA actions to msgInput ([#2867](https://github.com/HankHuang0516/EClaw/issues/2867)) ([df23b11](https://github.com/HankHuang0516/EClaw/commit/df23b1147d34c59a644a145bbd87c18b96400acc))


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* **usage-api:** /api/usage/{snapshot,timeline} + usage_snapshots table (Plan B Phase 1) ([#2889](https://github.com/HankHuang0516/EClaw/issues/2889)) ([a0d859c](https://github.com/HankHuang0516/EClaw/commit/a0d859c63f0220909dadb2b1952174861ccdce14))
* **community:** 1-click chat button on bot cards + utm tagging ([#2610](https://github.com/HankHuang0516/EClaw/issues/2610)) ([eee97b0](https://github.com/HankHuang0516/EClaw/commit/eee97b0e2e4e74945ec24f218a69a52800b97a66))
* **chat:** accept ?messageId= as deep-link alias ([#2838](https://github.com/HankHuang0516/EClaw/issues/2838)) ([1785a87](https://github.com/HankHuang0516/EClaw/commit/1785a87310426637fd10df83754fb9924c45207f))
* **chat:** add avatar size preference ([#2714](https://github.com/HankHuang0516/EClaw/issues/2714)) ([6fe164a](https://github.com/HankHuang0516/EClaw/commit/6fe164ad8b22fa576d2dd9ad37c0d9fc295b5a83))
* **dashboard:** add Claude and Codex channel guides ([#2640](https://github.com/HankHuang0516/EClaw/issues/2640)) ([c64e4c4](https://github.com/HankHuang0516/EClaw/commit/c64e4c4afc78db58c5cd578f00486dd7b2fd3311))
* **dashboard:** add Claude Code channel guide card ([#2667](https://github.com/HankHuang0516/EClaw/issues/2667)) ([d70d75c](https://github.com/HankHuang0516/EClaw/commit/d70d75c0c8caa8a540358a9aab4556b8c1927a5c))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* **kanban:** add device-scoped card tags ([#2773](https://github.com/HankHuang0516/EClaw/issues/2773)) ([53a387e](https://github.com/HankHuang0516/EClaw/commit/53a387e67ba7bb4f6bed1c427000c4ae8666577a))
* **portal:** add entity selector to petdx-browser ([#2602](https://github.com/HankHuang0516/EClaw/issues/2602)) ([3fa067e](https://github.com/HankHuang0516/EClaw/commit/3fa067e00b38829b48a37cecd33ee81a9a1122d9))
* **kanban:** add explicit card links ([#2721](https://github.com/HankHuang0516/EClaw/issues/2721)) ([ef9f812](https://github.com/HankHuang0516/EClaw/commit/ef9f812a3fcf39efd07fd158ce90951bdd045ac7))
* **kanban:** add explicit done-card reopen flow ([#2801](https://github.com/HankHuang0516/EClaw/issues/2801)) ([5080aac](https://github.com/HankHuang0516/EClaw/commit/5080aacb75047c0deaa379ee708ec85465afd57c))
* **mindmap:** add GET /api/mindmap/graph force-graph projection ([#2680](https://github.com/HankHuang0516/EClaw/issues/2680)) ([a00b2e7](https://github.com/HankHuang0516/EClaw/commit/a00b2e775af2c4c98cd157f760ad87aeeee469f0)), closes [#2679](https://github.com/HankHuang0516/EClaw/issues/2679) [#2679](https://github.com/HankHuang0516/EClaw/issues/2679)
* **dashboard:** add Hermes channel promo card ([#2708](https://github.com/HankHuang0516/EClaw/issues/2708)) ([337aca1](https://github.com/HankHuang0516/EClaw/commit/337aca153d5a1cd7e888c065f00ae54db7872d91))
* **rental:** add listing soft pause ([#2781](https://github.com/HankHuang0516/EClaw/issues/2781)) ([6586b72](https://github.com/HankHuang0516/EClaw/commit/6586b72717ddb1637d91cd3242c8d2ff554f62b4))
* **portal:** add Nagoya 5D4N trip static cross-ref page ([#2689](https://github.com/HankHuang0516/EClaw/issues/2689)) ([2e0efb6](https://github.com/HankHuang0516/EClaw/commit/2e0efb6dcdaff52226cc8854a96747000b12bdff))
* **portal:** add Nagoya image atlas static page ([#2743](https://github.com/HankHuang0516/EClaw/issues/2743)) ([ac026e9](https://github.com/HankHuang0516/EClaw/commit/ac026e9fd2c92ac9437d01edddffc9adf972f6ba))
* **portal:** add Nagoya trip map links and image lightbox ([#2821](https://github.com/HankHuang0516/EClaw/issues/2821)) ([3e40955](https://github.com/HankHuang0516/EClaw/commit/3e40955650a05f45a6b9f7e39e73847705424a03))
* **portal/nagoya:** add parking shortcut buttons next to itinerary places ([#2826](https://github.com/HankHuang0516/EClaw/issues/2826)) ([63968c5](https://github.com/HankHuang0516/EClaw/commit/63968c554d046afc8d978de74e3aacbf7700500d))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **settings:** add rental roster management preview ([#2758](https://github.com/HankHuang0516/EClaw/issues/2758)) ([9706e59](https://github.com/HankHuang0516/EClaw/commit/9706e59ded140a90a6e02348124282bc69d89001))
* **rental:** add renter health chat indicator ([#2690](https://github.com/HankHuang0516/EClaw/issues/2690)) ([36cd2e9](https://github.com/HankHuang0516/EClaw/commit/36cd2e9802be4c7ebb03d3024617fa74aca48ffd))
* **ios:** add Tutorial & Intro entry in Settings ([#2800](https://github.com/HankHuang0516/EClaw/issues/2800)) ([ed83e51](https://github.com/HankHuang0516/EClaw/commit/ed83e51d043bf4cd5865f38dc95a91ed54820d6c))
* **landing:** add Watch Full Demo CTA below hero video ([#2799](https://github.com/HankHuang0516/EClaw/issues/2799)) ([66107c9](https://github.com/HankHuang0516/EClaw/commit/66107c954727551fd34d989a4674daaad9b63968))
* **footer:** add Watch Intro Video link in Info column ([#2798](https://github.com/HankHuang0516/EClaw/issues/2798)) ([d7c6d59](https://github.com/HankHuang0516/EClaw/commit/d7c6d596b69c6a5b257bf1f7a792a407ef9712ad))
* **i18n:** ar iter-2 — fill 623 missing keys against en source ([#2847](https://github.com/HankHuang0516/EClaw/issues/2847)) ([ee94a7a](https://github.com/HankHuang0516/EClaw/commit/ee94a7ae6812b5163efe4284ee4907ca32302f5c))
* **kanban:** backlog launch-gate flag to suppress L1/L2/L3 escalation ([#2855](https://github.com/HankHuang0516/EClaw/issues/2855)) ([cb8bf1b](https://github.com/HankHuang0516/EClaw/commit/cb8bf1bb6421f25214f65e129a8cadccc49cc266)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#4](https://github.com/HankHuang0516/EClaw/issues/4) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **companion:** bridge crafter-station/petdex gallery (1784 pets) ([#2601](https://github.com/HankHuang0516/EClaw/issues/2601)) ([2e245be](https://github.com/HankHuang0516/EClaw/commit/2e245bea6dd47ea7361b927d389188a3c23b6bb3))
* **promo:** chat avatar size feature landing page (self-hosted MP4) ([#2722](https://github.com/HankHuang0516/EClaw/issues/2722)) ([3852210](https://github.com/HankHuang0516/EClaw/commit/3852210d355704d018e3daca6b5f9512a011b210)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **kanban:** cron-spawn jitter + lane backpressure to prevent same-tick wedge ([#2791](https://github.com/HankHuang0516/EClaw/issues/2791)) ([9f414a7](https://github.com/HankHuang0516/EClaw/commit/9f414a731d6393672a0a4189c7b408c529ae5e12)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **portal:** dashboard usage widget — Claude/Codex 5h gauges + 24h chart (Plan B Phase 3) ([#2891](https://github.com/HankHuang0516/EClaw/issues/2891)) ([d18f373](https://github.com/HankHuang0516/EClaw/commit/d18f373857e4bd302437d6bda2a1e01871fbb1db))
* **portal:** dashboard usage widget v2 — Session/Weekly % bars + projects, no cost (Plan B Phase 3.1) ([#2893](https://github.com/HankHuang0516/EClaw/issues/2893)) ([4bc0dc7](https://github.com/HankHuang0516/EClaw/commit/4bc0dc744ed9d54dfd532ebac4b705c7f84ec0a6))
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **info:** embed 75s promo video on Quick Start tab ([#2795](https://github.com/HankHuang0516/EClaw/issues/2795)) ([86c3f70](https://github.com/HankHuang0516/EClaw/commit/86c3f709a95eebbee1241077b807880463f804b6))
* **promo:** embed daily eclaw video 2026-05-14 ([#2786](https://github.com/HankHuang0516/EClaw/issues/2786)) ([718a814](https://github.com/HankHuang0516/EClaw/commit/718a814ab16850bc2b33a1b303841e2c4378ecfa)), closes [#2782](https://github.com/HankHuang0516/EClaw/issues/2782) [#2693](https://github.com/HankHuang0516/EClaw/issues/2693)
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **info:** embed promo video at top of Quick Start tab ([#2797](https://github.com/HankHuang0516/EClaw/issues/2797)) ([047679f](https://github.com/HankHuang0516/EClaw/commit/047679fd57ab9949eaeacea414d5611e71afe041))
* **rental:** enforce strict rebind refunds ([#2703](https://github.com/HankHuang0516/EClaw/issues/2703)) ([a1859c5](https://github.com/HankHuang0516/EClaw/commit/a1859c50e6fb3991d7a8051491502d824a14a116))
* **portal:** group task chip actions ([#2825](https://github.com/HankHuang0516/EClaw/issues/2825)) ([5db5c59](https://github.com/HankHuang0516/EClaw/commit/5db5c59b32b8635f1412205faf0c2f9164d3d5d4))
* **hermes:** H2 health-check cron + 7d SLA + commander alerts (card_07891ac) ([#2922](https://github.com/HankHuang0516/EClaw/issues/2922)) ([82b4315](https://github.com/HankHuang0516/EClaw/commit/82b4315aea234493e3d1889dc53958c2f1d842e0)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **portal:** info-guide-rules + info-guide-soul slide pair ([#2793](https://github.com/HankHuang0516/EClaw/issues/2793)) ([1c8bddc](https://github.com/HankHuang0516/EClaw/commit/1c8bddc4c185054b2b60088498e3d45509117127)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **chat:** link card previews to kanban ([#2754](https://github.com/HankHuang0516/EClaw/issues/2754)) ([2261240](https://github.com/HankHuang0516/EClaw/commit/22612402c2e95efb07246629e81a849be41ee9c7))
* **mission:** link notes to kanban cards ([#2723](https://github.com/HankHuang0516/EClaw/issues/2723)) ([b36dc18](https://github.com/HankHuang0516/EClaw/commit/b36dc18f3a8facf12e0b6046351c222f1e99dc55))
* **usage-daemon:** macOS launchd daemon polls Claude/Codex usage → POST /api/usage/snapshot (Plan B Phase 2) ([#2890](https://github.com/HankHuang0516/EClaw/issues/2890)) ([fd225e1](https://github.com/HankHuang0516/EClaw/commit/fd225e12d9491037be1a340bd63b54b5f3308c7f))
* **mindmap:** mission.html link to /portal/mindmap.html + deprecate /api/mission/mindmap ([#2685](https://github.com/HankHuang0516/EClaw/issues/2685)) ([11e297b](https://github.com/HankHuang0516/EClaw/commit/11e297bab1c9b56fcde3027d6500b7c58891bf18)), closes [#2680](https://github.com/HankHuang0516/EClaw/issues/2680) [#2684](https://github.com/HankHuang0516/EClaw/issues/2684)
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **portal:** nagoya trip interactive map (Leaflet + OSM, no API key) ([#2888](https://github.com/HankHuang0516/EClaw/issues/2888)) ([ecfdac0](https://github.com/HankHuang0516/EClaw/commit/ecfdac06348c12ee7c6872c6c28d5f82162e7aa9))
* **channel:** outbound backpressure (30/min cap + 429 retry-after) ([#2911](https://github.com/HankHuang0516/EClaw/issues/2911)) ([36dc99c](https://github.com/HankHuang0516/EClaw/commit/36dc99ca78b0e1724a2aaefb5936669077b7a28f))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **settings:** per-entity nudge override UI (Phase 2) ([#2837](https://github.com/HankHuang0516/EClaw/issues/2837)) ([ea7662b](https://github.com/HankHuang0516/EClaw/commit/ea7662b0858882dae461e1387f711895924f9ab8)), closes [3/#4](https://github.com/HankHuang0516/EClaw/issues/4)
* **kanban:** per-entity nudge overrides (Phase 2 of card_e066cb6b) ([#2836](https://github.com/HankHuang0516/EClaw/issues/2836)) ([0425f80](https://github.com/HankHuang0516/EClaw/commit/0425f80bc1169c0d506b665659c8676695c45553))
* **avatar:** petdx render on card-holder my-cards (Phase 1b) ([#2621](https://github.com/HankHuang0516/EClaw/issues/2621)) ([f78ba8b](https://github.com/HankHuang0516/EClaw/commit/f78ba8b18acc426936ab6d8a82ca7541effea00d))
* **avatar:** petdx render on dashboard entity grid / org chart / bindings (Phase 1b) ([#2622](https://github.com/HankHuang0516/EClaw/issues/2622)) ([f417749](https://github.com/HankHuang0516/EClaw/commit/f41774914451048e8cd76e9ae30416a0642e173b)), closes [#2620](https://github.com/HankHuang0516/EClaw/issues/2620) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621)
* **avatar:** petdx render on kanban auto-assign / pulse / comment avatars (Phase 1b) ([#2624](https://github.com/HankHuang0516/EClaw/issues/2624)) ([6bff5f8](https://github.com/HankHuang0516/EClaw/commit/6bff5f80440d0bd91a6b1721cde9478d685c4d46))
* **avatar:** petdx render on mission skill/rule/soul entity dialogs (Phase 1b) ([#2623](https://github.com/HankHuang0516/EClaw/issues/2623)) ([129327b](https://github.com/HankHuang0516/EClaw/commit/129327bc7b91056659f1ab7e8d5e3f5260d951fb))
* **mindmap:** portal/mindmap.html force-graph prototype ([#129](https://github.com/HankHuang0516/EClaw/issues/129)) ([#2681](https://github.com/HankHuang0516/EClaw/issues/2681)) ([0f15e69](https://github.com/HankHuang0516/EClaw/commit/0f15e6930f0697c37fa08f3219edb8f9e499837f)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **channel:** record delivery receipts ([#2913](https://github.com/HankHuang0516/EClaw/issues/2913)) ([90c671b](https://github.com/HankHuang0516/EClaw/commit/90c671bd1970ab51584b90e2b634484ec10cc7ae))
* **portal:** redo nagoya trip page in professional tour-guide style ([#2691](https://github.com/HankHuang0516/EClaw/issues/2691)) ([b2378c0](https://github.com/HankHuang0516/EClaw/commit/b2378c06ee20fa9cccfdceceb1a4c9e0b3072f59))
* **i18n:** remove ms+hi orphan keys from i18n.js ([#2849](https://github.com/HankHuang0516/EClaw/issues/2849)) ([320176c](https://github.com/HankHuang0516/EClaw/commit/320176c06a3cfd8631e2a82ad02a6bd6a9af0389))
* **avatar:** render selected petdx companion in chat avatars ([#2620](https://github.com/HankHuang0516/EClaw/issues/2620)) ([0bdd046](https://github.com/HankHuang0516/EClaw/commit/0bdd046fe1b1c428e32edda366ff112c08927f4c))
* **home:** replace native home with WebView hosting dashboard.html ([#2634](https://github.com/HankHuang0516/EClaw/issues/2634)) ([e69ea81](https://github.com/HankHuang0516/EClaw/commit/e69ea8160c239b083a83d6dc83a4f1c3f901c863))
* **app:** route chat mission jumps through native tabs ([#2824](https://github.com/HankHuang0516/EClaw/issues/2824)) ([deb07b6](https://github.com/HankHuang0516/EClaw/commit/deb07b69a9ecca632fe27278de537f1d85234e94))
* **proxy:** scope private repo git auth ([#2926](https://github.com/HankHuang0516/EClaw/issues/2926)) ([246f7ff](https://github.com/HankHuang0516/EClaw/commit/246f7ff1dedaf7bece9e3cb9eb24d0ab32ebb393))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **chat:** support message deep links ([#2719](https://github.com/HankHuang0516/EClaw/issues/2719)) ([2dc0f1e](https://github.com/HankHuang0516/EClaw/commit/2dc0f1eeb259e1a0848db4a03186b989372cd91c))
* **mission:** support note deep links ([#2717](https://github.com/HankHuang0516/EClaw/issues/2717)) ([2efd3a5](https://github.com/HankHuang0516/EClaw/commit/2efd3a5e741217a07c0b0ac54a0ddd010e0ebe23))
* **share-chat:** twitter card + per-bot og:image/twitter:* in SSR ([#2609](https://github.com/HankHuang0516/EClaw/issues/2609)) ([6cdc853](https://github.com/HankHuang0516/EClaw/commit/6cdc853dc884cdb95bd47214942768981f218ae0))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))
* **settings:** wire petdx avatar into channel-account chips ([#2626](https://github.com/HankHuang0516/EClaw/issues/2626)) ([88aec77](https://github.com/HankHuang0516/EClaw/commit/88aec772628c240e97b336bb5820892ad632d1ae))
* **files:** wire petdx avatar into entity filter & per-file badges ([#2627](https://github.com/HankHuang0516/EClaw/issues/2627)) ([5b3e5cc](https://github.com/HankHuang0516/EClaw/commit/5b3e5cc542d9da69bb4e92500fd03a542ea33f00))
* **mindmap:** wrap hardcoded zh-TW UI strings with i18n t() ([#2607](https://github.com/HankHuang0516/EClaw/issues/2607)) ([166af87](https://github.com/HankHuang0516/EClaw/commit/166af8772b2121a24aaf34a83b3de970e9b3b571)), closes [#2606](https://github.com/HankHuang0516/EClaw/issues/2606)
* **i18n:** zh-TW backfill 8 keys (soft-pause + chat + invite + wallet) ([#2815](https://github.com/HankHuang0516/EClaw/issues/2815)) ([a2dd574](https://github.com/HankHuang0516/EClaw/commit/a2dd5743ce8d43a4b6ace9a2fd4b52568180d6c5))


### Performance Improvements

* **mindmap:** force-graph hardening for 1000/2000-node graphs ([#2684](https://github.com/HankHuang0516/EClaw/issues/2684)) ([da8b1c8](https://github.com/HankHuang0516/EClaw/commit/da8b1c8f947ab8bc8fa455c1962a91146623a1fc))


### Reverts

* Revert "feat(telegram): long-poll adapter PoC (card_406e612942ff062a06fc47be) ([#2238](https://github.com/HankHuang0516/EClaw/issues/2238))" ([#2239](https://github.com/HankHuang0516/EClaw/issues/2239)) ([eb7aa92](https://github.com/HankHuang0516/EClaw/commit/eb7aa92cce454b4a1a22654a2d133cdebe78c2bd))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-25)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **notifications:** add kanban_done + kanban_done_auto toggles to Android Settings ([#2636](https://github.com/HankHuang0516/EClaw/issues/2636)) ([a710909](https://github.com/HankHuang0516/EClaw/commit/a7109095e3393b8564e7ef1b23d382a4fbb944b8))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **api:** align /api/platform-stats skill-doc with device-auth contract (card_49b8190) ([#2916](https://github.com/HankHuang0516/EClaw/issues/2916)) ([ee55b2f](https://github.com/HankHuang0516/EClaw/commit/ee55b2fdbfbcd4bead5501d16ee66339056c32d7))
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **i18n:** ar block — fix 27 broken entries (CJK leaks + truncated HTML) ([#2851](https://github.com/HankHuang0516/EClaw/issues/2851)) ([5b19175](https://github.com/HankHuang0516/EClaw/commit/5b19175d712d00d16fcec00b749035c4beae7a5c))
* **chat:** atomic-load target bar (await contacts before first render) ([#2831](https://github.com/HankHuang0516/EClaw/issues/2831)) ([5f529e6](https://github.com/HankHuang0516/EClaw/commit/5f529e6b772eacc38ba1de69b44258a05f0d816a)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2](https://github.com/HankHuang0516/EClaw/issues/2)
* **channel:** await binding persistence ([712516d](https://github.com/HankHuang0516/EClaw/commit/712516decafb745035bd1434a28cc1973d433e19))
* **rental:** bump handshake timeout to 60s + timeout-aware discovery fallback ([#2863](https://github.com/HankHuang0516/EClaw/issues/2863)) ([fd4322f](https://github.com/HankHuang0516/EClaw/commit/fd4322f8890f3c2dfca3acdae6a4b95f19c381f9)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **i18n:** clear batch 1 residual missing keys ([#2790](https://github.com/HankHuang0516/EClaw/issues/2790)) ([211030e](https://github.com/HankHuang0516/EClaw/commit/211030e0b0b6a865c11f0c4ed60dc4e356d43b7a))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **kanban:** comment input no longer overlaps last comment in card detail (PR [#2678](https://github.com/HankHuang0516/EClaw/issues/2678)) ([fba91fc](https://github.com/HankHuang0516/EClaw/commit/fba91fca15402b453a0db5ee857c0b16e6087055))
* **chat:** compact 20px avatar in target bar (App WebView only shows [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2](https://github.com/HankHuang0516/EClaw/issues/2)) ([#2830](https://github.com/HankHuang0516/EClaw/issues/2830)) ([42c7543](https://github.com/HankHuang0516/EClaw/commit/42c7543b4a78a7abf3f5f7535eb9bc6142cd0fe2)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **portal:** complete 401 redirect sweep + mobile UIUX truncation ([#2842](https://github.com/HankHuang0516/EClaw/issues/2842)) ([f9799ba](https://github.com/HankHuang0516/EClaw/commit/f9799ba42498b109f0a8a70e80836aa6da51e216)), closes [#2833](https://github.com/HankHuang0516/EClaw/issues/2833) [#2845](https://github.com/HankHuang0516/EClaw/issues/2845) [#2844](https://github.com/HankHuang0516/EClaw/issues/2844) [#2843](https://github.com/HankHuang0516/EClaw/issues/2843)
* **uiux:** continue qa mobile readability sweep ([#2854](https://github.com/HankHuang0516/EClaw/issues/2854)) ([57606ff](https://github.com/HankHuang0516/EClaw/commit/57606ffe3e543b07a026aacc53c4b470c9a7825b))
* **i18n:** cover dynamic portal wrapper keys ([#2807](https://github.com/HankHuang0516/EClaw/issues/2807)) ([4c711cc](https://github.com/HankHuang0516/EClaw/commit/4c711cc4009300ffe4e8933a98ee01cd0fdd6aeb))
* **i18n:** dedup 20 dash_channel_card_* keys in es block ([#2876](https://github.com/HankHuang0516/EClaw/issues/2876)) ([807284c](https://github.com/HankHuang0516/EClaw/commit/807284ce363ef119ccdb0ae40e5ce99d3f0a27e0))
* **i18n:** dedupe backend locale keys via AST ([#2920](https://github.com/HankHuang0516/EClaw/issues/2920)) ([40ef114](https://github.com/HankHuang0516/EClaw/commit/40ef11414c8b836fe1ed93ec06c839df3a1bf7b9))
* **i18n:** dedupe zh locale keys ([#2919](https://github.com/HankHuang0516/EClaw/issues/2919)) ([afd2cca](https://github.com/HankHuang0516/EClaw/commit/afd2cca8086c2f2df0d04c9c5f8c58733652875e))
* **test:** delegate root test and remove invalid jest option ([#2292](https://github.com/HankHuang0516/EClaw/issues/2292)) ([65bf2f8](https://github.com/HankHuang0516/EClaw/commit/65bf2f83d26d925097cd380ab73b04ab2db49842))
* **kanban:** dep-aware nudge gating + roadmap dependency backfill ([#2904](https://github.com/HankHuang0516/EClaw/issues/2904)) ([2b76ac9](https://github.com/HankHuang0516/EClaw/commit/2b76ac9d3b7e4169b7bc3c6f6b0b0903b63cd9f7)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **rental:** don't pollute entity.message on push gateway timeout ([#2860](https://github.com/HankHuang0516/EClaw/issues/2860)) ([592ba44](https://github.com/HankHuang0516/EClaw/commit/592ba44f57536ee00011b6cbddaa6b129a7cbae9))
* **petdx:** drop dark-grey loading placeholder + preload sprite WEBP ([#2628](https://github.com/HankHuang0516/EClaw/issues/2628)) ([59cef38](https://github.com/HankHuang0516/EClaw/commit/59cef387bd69ca99d7d15c86a1364856d3849ad8)), closes [#1a1a1a](https://github.com/HankHuang0516/EClaw/issues/1a1a1a)
* **gateway-ws:** drop Origin header on server-to-server WS upgrade ([#2869](https://github.com/HankHuang0516/EClaw/issues/2869)) ([716dcf9](https://github.com/HankHuang0516/EClaw/commit/716dcf9d0834b17522bb9d894bad84bc142d1a19))
* **setup-scripts:** drop Origin header on server-to-server WS upgrade ([#2875](https://github.com/HankHuang0516/EClaw/issues/2875)) ([9d893b8](https://github.com/HankHuang0516/EClaw/commit/9d893b8e5eea4db275e450bf423903c156cd3e4b)), closes [#2869](https://github.com/HankHuang0516/EClaw/issues/2869)
* **security:** escape innerHTML in chat modal error messages ([#2819](https://github.com/HankHuang0516/EClaw/issues/2819)) ([dce07ad](https://github.com/HankHuang0516/EClaw/commit/dce07adde64795916dba977ae23e46f3371ce7ed)), closes [#2809](https://github.com/HankHuang0516/EClaw/issues/2809) [#2810](https://github.com/HankHuang0516/EClaw/issues/2810) [#2809](https://github.com/HankHuang0516/EClaw/issues/2809) [#2810](https://github.com/HankHuang0516/EClaw/issues/2810)
* **proxy:** export repo auth to CLI child ([#2928](https://github.com/HankHuang0516/EClaw/issues/2928)) ([336a8ca](https://github.com/HankHuang0516/EClaw/commit/336a8caff4e3663287bd2948cf9fe6e04125cbc8))
* **entities:** expose botSecret to owner so wallpaper service can poll companions ([#2615](https://github.com/HankHuang0516/EClaw/issues/2615)) ([04470fc](https://github.com/HankHuang0516/EClaw/commit/04470fce8f8c3fce2b1ba8b243e776606f107502))
* **rental:** expose owner_public_code in marketplace so plaza CTA can route ([#2616](https://github.com/HankHuang0516/EClaw/issues/2616)) ([4d1372f](https://github.com/HankHuang0516/EClaw/commit/4d1372f717d93cab65543e87c852e74e9fb67071)), closes [#2610](https://github.com/HankHuang0516/EClaw/issues/2610)
* **mindmap:** fallback to device scope when entityId is null ([#2728](https://github.com/HankHuang0516/EClaw/issues/2728)) ([7572312](https://github.com/HankHuang0516/EClaw/commit/7572312433d3d75fc245eda48a28919ce14bd927))
* **i18n:** fill 11 missing zh keys post-[#2920](https://github.com/HankHuang0516/EClaw/issues/2920)/[#2921](https://github.com/HankHuang0516/EClaw/issues/2921) (card_de6970) ([#2924](https://github.com/HankHuang0516/EClaw/issues/2924)) ([17c4899](https://github.com/HankHuang0516/EClaw/commit/17c48996489b1444d6ed589027acfa7986178fe1)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** fill backend runtime locale gaps ([#2921](https://github.com/HankHuang0516/EClaw/issues/2921)) ([00d96ff](https://github.com/HankHuang0516/EClaw/commit/00d96ff261b8134b49292623e1f786fd544144cc))
* **i18n:** fill Spanish drift keys ([#2751](https://github.com/HankHuang0516/EClaw/issues/2751)) ([0ad0ee5](https://github.com/HankHuang0516/EClaw/commit/0ad0ee55f7fac3e6ac46d891539950dab4d553cc))
* **portal:** fit embedded org chart to mobile viewport ([#2674](https://github.com/HankHuang0516/EClaw/issues/2674)) ([1c4e1b4](https://github.com/HankHuang0516/EClaw/commit/1c4e1b413ea7027b4cd4b8ecda981b0d0e12e66b))
* **i18n:** fix 6 trailing-comma syntax errors in 10-locale batch ([#2771](https://github.com/HankHuang0516/EClaw/issues/2771)) ([b27c6ca](https://github.com/HankHuang0516/EClaw/commit/b27c6ca204bf813e406c54ce3a2532a5f1f031b3))
* **kanban:** GET card returns latest 50 comments + comments endpoint exposes total ([#2816](https://github.com/HankHuang0516/EClaw/issues/2816)) ([c4d83f7](https://github.com/HankHuang0516/EClaw/commit/c4d83f777a1cd26aea0936e4316aa35c52822eef))
* **sharechat:** guest verify-email modal + disabled Send for unverified ([#2865](https://github.com/HankHuang0516/EClaw/issues/2865)) ([cb3b061](https://github.com/HankHuang0516/EClaw/commit/cb3b0614e0f6160417d907753e66eceb2d666802))
* **uiux:** harden chat previews and roster preview ([#2769](https://github.com/HankHuang0516/EClaw/issues/2769)) ([466d4d3](https://github.com/HankHuang0516/EClaw/commit/466d4d3ef81c628d3f58db64323946053d7bf61c))
* **mention-parser:** ignore @-mentions inside markdown code spans ([#2645](https://github.com/HankHuang0516/EClaw/issues/2645)) ([8da19d4](https://github.com/HankHuang0516/EClaw/commit/8da19d4a79ceb4152bf2144ee0847c61ce3e1def)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **kanban:** lazy-load dependency chips via IntersectionObserver ([#2632](https://github.com/HankHuang0516/EClaw/issues/2632)) ([20586b4](https://github.com/HankHuang0516/EClaw/commit/20586b43357335f9eb6a190c02d58c8e36b58aba)), closes [#2631](https://github.com/HankHuang0516/EClaw/issues/2631)
* **i18n:** localize FCM NotificationChannel labels (card_ec8d3a22) ([#2918](https://github.com/HankHuang0516/EClaw/issues/2918)) ([591cd20](https://github.com/HankHuang0516/EClaw/commit/591cd206704693650a53d19d94c4cc75daf84ffd))
* **kanban:** make card sorting deterministic ([#2756](https://github.com/HankHuang0516/EClaw/issues/2756)) ([48e2117](https://github.com/HankHuang0516/EClaw/commit/48e2117b64e37f05dc635e0a3b67bfd43cbe48f5))
* **portal/nagoya-trip:** map-link invisible on dark hero/day-banner ([#2897](https://github.com/HankHuang0516/EClaw/issues/2897)) ([cc33df6](https://github.com/HankHuang0516/EClaw/commit/cc33df686673455c20beaee60871412a5d486e66)), closes [#1f4030](https://github.com/HankHuang0516/EClaw/issues/1f4030) [#8b8579](https://github.com/HankHuang0516/EClaw/issues/8b8579) [#6e6859](https://github.com/HankHuang0516/EClaw/issues/6e6859) [#7a5614](https://github.com/HankHuang0516/EClaw/issues/7a5614)
* **org-chart:** notify affected bots on hierarchy change ([#2812](https://github.com/HankHuang0516/EClaw/issues/2812)) ([55675fd](https://github.com/HankHuang0516/EClaw/commit/55675fdf4487494d729a29524b32bd81b756a00c)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** notify reviewer on manual /move → review ([#2753](https://github.com/HankHuang0516/EClaw/issues/2753)) ([6cbbb4e](https://github.com/HankHuang0516/EClaw/commit/6cbbb4ee8c0d4d8ad54df2e9b5faaa3699bd530f))
* **wallpaper:** off-load spritesheet fetch to IO so per-petdx sprites actually render ([#2618](https://github.com/HankHuang0516/EClaw/issues/2618)) ([61b832c](https://github.com/HankHuang0516/EClaw/commit/61b832c9fa8a1d0caab810ccc942d85c63349267)), closes [#2615](https://github.com/HankHuang0516/EClaw/issues/2615) [#2577](https://github.com/HankHuang0516/EClaw/issues/2577)
* **security:** patch P0 sanitize-html XSS + P1 protobufjs + exam.html XSS ([#2829](https://github.com/HankHuang0516/EClaw/issues/2829)) ([c71b871](https://github.com/HankHuang0516/EClaw/commit/c71b871a045887375dd0d26d1a3280a0891a89ad))
* **security:** patch ws uninitialized memory disclosure (GHSA-58qx-3vcg-4xpx) ([#2872](https://github.com/HankHuang0516/EClaw/issues/2872)) ([2523d15](https://github.com/HankHuang0516/EClaw/commit/2523d154bbe501a7cc086340f7a07ece3abfa69b))
* **portal:** petdx-browser cookie-session fallback for device-login ([#2757](https://github.com/HankHuang0516/EClaw/issues/2757)) ([ca275f4](https://github.com/HankHuang0516/EClaw/commit/ca275f4519835da0c7ad71c588908a18f6f138d8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **api:** platform-stats 500 + entity/lookup publicCode alias ([#2809](https://github.com/HankHuang0516/EClaw/issues/2809), [#2810](https://github.com/HankHuang0516/EClaw/issues/2810)) ([#2818](https://github.com/HankHuang0516/EClaw/issues/2818)) ([f99fd17](https://github.com/HankHuang0516/EClaw/commit/f99fd17b2b1c32d88daa2510ff66d714c1a53edc))
* **i18n:** positional format specifiers for feedback_result_logs (7 locales) ([#2597](https://github.com/HankHuang0516/EClaw/issues/2597)) ([21aedc7](https://github.com/HankHuang0516/EClaw/commit/21aedc7eebc7a2839e340136f38dfdfd4dabb9dc))
* **avatar-petdx:** preserve descriptor across transient API failures (flicker) ([#2625](https://github.com/HankHuang0516/EClaw/issues/2625)) ([7b1c606](https://github.com/HankHuang0516/EClaw/commit/7b1c606514f7698d72ec95cf6c556e4043966186))
* **chat:** preserve recipient selection across rental-health refresh (P0 #card_eb1cba76) ([#2906](https://github.com/HankHuang0516/EClaw/issues/2906)) ([9cc0301](https://github.com/HankHuang0516/EClaw/commit/9cc0301cc26a0f49af4b7f53486f5c1a7cdd7902)), closes [#card_eb1cba76](https://github.com/HankHuang0516/EClaw/issues/card_eb1cba76) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **chat:** preserve scroll anchor while reading history ([#2693](https://github.com/HankHuang0516/EClaw/issues/2693)) ([945fdb7](https://github.com/HankHuang0516/EClaw/commit/945fdb7192b791b31882e1e75568dd8b11e4686f))
* **promo:** pull video embed from /promo-chat-avatar.html ([#2724](https://github.com/HankHuang0516/EClaw/issues/2724)) ([2afabc8](https://github.com/HankHuang0516/EClaw/commit/2afabc8c5ff8b25218a7cb857e8adfa572c8e9d5))
* **dashboard:** read live.rate_limits.{five_hour,seven_day}.used_percentage ([#2895](https://github.com/HankHuang0516/EClaw/issues/2895)) ([8223303](https://github.com/HankHuang0516/EClaw/commit/822330312bccb1c76675ad2c3b26e78d10dd1298))
* **kanban:** realign stale recurring schedules ([#2785](https://github.com/HankHuang0516/EClaw/issues/2785)) ([ab8ee25](https://github.com/HankHuang0516/EClaw/commit/ab8ee250a9b37f3d3e838bb01d8866c8d2b78231))
* **i18n:** reapply de6970 locale gap translations ([#2925](https://github.com/HankHuang0516/EClaw/issues/2925)) ([d994dc1](https://github.com/HankHuang0516/EClaw/commit/d994dc1d240fef72326db2599262375ccbf29175))
* **portal:** reduce QA-discovered request fanout ([#2656](https://github.com/HankHuang0516/EClaw/issues/2656)) ([1e46d6b](https://github.com/HankHuang0516/EClaw/commit/1e46d6bab61e58c65b452b6503d953f8dddeee75))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **portal:** remove org chart fit scale floor ([#2676](https://github.com/HankHuang0516/EClaw/issues/2676)) ([0f01606](https://github.com/HankHuang0516/EClaw/commit/0f016068b963bb5f800a02f28817c7174979d913))
* **rental:** remove phantom 'webhook test push' step from BIND_COMPLETE ([#2864](https://github.com/HankHuang0516/EClaw/issues/2864)) ([47f4a3e](https://github.com/HankHuang0516/EClaw/commit/47f4a3edf76aa95ebd06d8713cd44fda6eef9b5d))
* **i18n:** rename mm_empty_title → mm_state_empty_title in mindmap.html ([#2683](https://github.com/HankHuang0516/EClaw/issues/2683)) ([c79c109](https://github.com/HankHuang0516/EClaw/commit/c79c109bea23142e8a6d9ace976d105af1280ec9))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **chat:** render mention avatars with companion renderer ([#2633](https://github.com/HankHuang0516/EClaw/issues/2633)) ([03e205f](https://github.com/HankHuang0516/EClaw/commit/03e205f663ecd2c2f443d4009dd5af0093f0bbbb))
* **kanban:** reserve mobile comments panel height ([#2782](https://github.com/HankHuang0516/EClaw/issues/2782)) ([ce8662d](https://github.com/HankHuang0516/EClaw/commit/ce8662d362422fdd25037f1deb61dbed9425e2f9))
* **channel:** restore handshake fallback to discovered sessions ([#2915](https://github.com/HankHuang0516/EClaw/issues/2915)) ([#2917](https://github.com/HankHuang0516/EClaw/issues/2917)) ([9d7d3a2](https://github.com/HankHuang0516/EClaw/commit/9d7d3a25654289998314dd5ca152cefdb8a4d64e)), closes [#2912](https://github.com/HankHuang0516/EClaw/issues/2912)
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* scheduled audit 2026-05-13 — 6 bugs, XSS, i18n ([#2668](https://github.com/HankHuang0516/EClaw/issues/2668)) ([21dd513](https://github.com/HankHuang0516/EClaw/commit/21dd513b4464738de29164265437435ba6cc4817)), closes [#2605](https://github.com/HankHuang0516/EClaw/issues/2605) [#2608](https://github.com/HankHuang0516/EClaw/issues/2608) [#2600](https://github.com/HankHuang0516/EClaw/issues/2600) [#2599](https://github.com/HankHuang0516/EClaw/issues/2599) [#2598](https://github.com/HankHuang0516/EClaw/issues/2598)
* **channel:** scope official bot sessions ([#2912](https://github.com/HankHuang0516/EClaw/issues/2912)) ([5c56b62](https://github.com/HankHuang0516/EClaw/commit/5c56b62c13b739b76f39e168a26bd4e5de2644fb))
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **dashboard:** show Claude weekly bar reset countdown ([#2896](https://github.com/HankHuang0516/EClaw/issues/2896)) ([3b87845](https://github.com/HankHuang0516/EClaw/commit/3b87845d713e980fec69f6b8007549338a326713)), closes [#2895](https://github.com/HankHuang0516/EClaw/issues/2895)
* **chat:** smart-chip preview falls back to inline c.comments when /comments fails (PR [#2677](https://github.com/HankHuang0516/EClaw/issues/2677)) ([7f4dffd](https://github.com/HankHuang0516/EClaw/commit/7f4dffd2c83ea86f296b8fa0610f0e67c9f1af11))
* **kanban:** stabilize comment detail viewport ([#2796](https://github.com/HankHuang0516/EClaw/issues/2796)) ([0a10aad](https://github.com/HankHuang0516/EClaw/commit/0a10aadb5a5b12ff23454c16d5c88183b94ad7d7))
* **wallpaper:** stop Android live wallpaper flashing default lobster on companion change ([#2629](https://github.com/HankHuang0516/EClaw/issues/2629)) ([8b4f66f](https://github.com/HankHuang0516/EClaw/commit/8b4f66fcb335bf43128f924b761b6337c817095b)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **chat:** stop chat.html bouncing to dashboard via /api/rental/health-status 401 race ([#2833](https://github.com/HankHuang0516/EClaw/issues/2833)) ([c422406](https://github.com/HankHuang0516/EClaw/commit/c4224067cdcfe7f3e22ab95007c7563dac4196ac))
* **openclaw-channel:** support OpenClaw 2026.5.20 ([8045de6](https://github.com/HankHuang0516/EClaw/commit/8045de6bebecfc05f9bd57453b99c098ca35681b))
* **mentions:** support same-device CJK display-name tags ([#2874](https://github.com/HankHuang0516/EClaw/issues/2874)) ([b8f61be](https://github.com/HankHuang0516/EClaw/commit/b8f61be9a3962fef75dd32ea34e8900880dafaf9))
* **channel:** suppress operational A2A loop messages (rebase of [#2288](https://github.com/HankHuang0516/EClaw/issues/2288)) ([#2930](https://github.com/HankHuang0516/EClaw/issues/2930)) ([7ceabc9](https://github.com/HankHuang0516/EClaw/commit/7ceabc915df22123cb46ae1500e2eb2e279250af))
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **dashboard:** use sessions[].project for widget Projects list (was .project_id) ([#2894](https://github.com/HankHuang0516/EClaw/issues/2894)) ([0fd1334](https://github.com/HankHuang0516/EClaw/commit/0fd1334897d4a603cc6eb74f34b48606547e09cf))
* **app:** WebView pages honor app-selected locale via ?lang= URL param ([#2672](https://github.com/HankHuang0516/EClaw/issues/2672)) ([8ed8757](https://github.com/HankHuang0516/EClaw/commit/8ed8757aec5bf214e837cc0d81bf2b23f1993a91)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **share-chat:** wire rich CTA actions to msgInput ([#2867](https://github.com/HankHuang0516/EClaw/issues/2867)) ([df23b11](https://github.com/HankHuang0516/EClaw/commit/df23b1147d34c59a644a145bbd87c18b96400acc))


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* **usage-api:** /api/usage/{snapshot,timeline} + usage_snapshots table (Plan B Phase 1) ([#2889](https://github.com/HankHuang0516/EClaw/issues/2889)) ([a0d859c](https://github.com/HankHuang0516/EClaw/commit/a0d859c63f0220909dadb2b1952174861ccdce14))
* **community:** 1-click chat button on bot cards + utm tagging ([#2610](https://github.com/HankHuang0516/EClaw/issues/2610)) ([eee97b0](https://github.com/HankHuang0516/EClaw/commit/eee97b0e2e4e74945ec24f218a69a52800b97a66))
* **chat:** accept ?messageId= as deep-link alias ([#2838](https://github.com/HankHuang0516/EClaw/issues/2838)) ([1785a87](https://github.com/HankHuang0516/EClaw/commit/1785a87310426637fd10df83754fb9924c45207f))
* **chat:** add avatar size preference ([#2714](https://github.com/HankHuang0516/EClaw/issues/2714)) ([6fe164a](https://github.com/HankHuang0516/EClaw/commit/6fe164ad8b22fa576d2dd9ad37c0d9fc295b5a83))
* **dashboard:** add Claude and Codex channel guides ([#2640](https://github.com/HankHuang0516/EClaw/issues/2640)) ([c64e4c4](https://github.com/HankHuang0516/EClaw/commit/c64e4c4afc78db58c5cd578f00486dd7b2fd3311))
* **dashboard:** add Claude Code channel guide card ([#2667](https://github.com/HankHuang0516/EClaw/issues/2667)) ([d70d75c](https://github.com/HankHuang0516/EClaw/commit/d70d75c0c8caa8a540358a9aab4556b8c1927a5c))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* **kanban:** add device-scoped card tags ([#2773](https://github.com/HankHuang0516/EClaw/issues/2773)) ([53a387e](https://github.com/HankHuang0516/EClaw/commit/53a387e67ba7bb4f6bed1c427000c4ae8666577a))
* **portal:** add entity selector to petdx-browser ([#2602](https://github.com/HankHuang0516/EClaw/issues/2602)) ([3fa067e](https://github.com/HankHuang0516/EClaw/commit/3fa067e00b38829b48a37cecd33ee81a9a1122d9))
* **kanban:** add explicit card links ([#2721](https://github.com/HankHuang0516/EClaw/issues/2721)) ([ef9f812](https://github.com/HankHuang0516/EClaw/commit/ef9f812a3fcf39efd07fd158ce90951bdd045ac7))
* **kanban:** add explicit done-card reopen flow ([#2801](https://github.com/HankHuang0516/EClaw/issues/2801)) ([5080aac](https://github.com/HankHuang0516/EClaw/commit/5080aacb75047c0deaa379ee708ec85465afd57c))
* **mindmap:** add GET /api/mindmap/graph force-graph projection ([#2680](https://github.com/HankHuang0516/EClaw/issues/2680)) ([a00b2e7](https://github.com/HankHuang0516/EClaw/commit/a00b2e775af2c4c98cd157f760ad87aeeee469f0)), closes [#2679](https://github.com/HankHuang0516/EClaw/issues/2679) [#2679](https://github.com/HankHuang0516/EClaw/issues/2679)
* **dashboard:** add Hermes channel promo card ([#2708](https://github.com/HankHuang0516/EClaw/issues/2708)) ([337aca1](https://github.com/HankHuang0516/EClaw/commit/337aca153d5a1cd7e888c065f00ae54db7872d91))
* **rental:** add listing soft pause ([#2781](https://github.com/HankHuang0516/EClaw/issues/2781)) ([6586b72](https://github.com/HankHuang0516/EClaw/commit/6586b72717ddb1637d91cd3242c8d2ff554f62b4))
* **portal:** add Nagoya 5D4N trip static cross-ref page ([#2689](https://github.com/HankHuang0516/EClaw/issues/2689)) ([2e0efb6](https://github.com/HankHuang0516/EClaw/commit/2e0efb6dcdaff52226cc8854a96747000b12bdff))
* **portal:** add Nagoya image atlas static page ([#2743](https://github.com/HankHuang0516/EClaw/issues/2743)) ([ac026e9](https://github.com/HankHuang0516/EClaw/commit/ac026e9fd2c92ac9437d01edddffc9adf972f6ba))
* **portal:** add Nagoya trip map links and image lightbox ([#2821](https://github.com/HankHuang0516/EClaw/issues/2821)) ([3e40955](https://github.com/HankHuang0516/EClaw/commit/3e40955650a05f45a6b9f7e39e73847705424a03))
* **portal/nagoya:** add parking shortcut buttons next to itinerary places ([#2826](https://github.com/HankHuang0516/EClaw/issues/2826)) ([63968c5](https://github.com/HankHuang0516/EClaw/commit/63968c554d046afc8d978de74e3aacbf7700500d))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **settings:** add rental roster management preview ([#2758](https://github.com/HankHuang0516/EClaw/issues/2758)) ([9706e59](https://github.com/HankHuang0516/EClaw/commit/9706e59ded140a90a6e02348124282bc69d89001))
* **rental:** add renter health chat indicator ([#2690](https://github.com/HankHuang0516/EClaw/issues/2690)) ([36cd2e9](https://github.com/HankHuang0516/EClaw/commit/36cd2e9802be4c7ebb03d3024617fa74aca48ffd))
* **ios:** add Tutorial & Intro entry in Settings ([#2800](https://github.com/HankHuang0516/EClaw/issues/2800)) ([ed83e51](https://github.com/HankHuang0516/EClaw/commit/ed83e51d043bf4cd5865f38dc95a91ed54820d6c))
* **landing:** add Watch Full Demo CTA below hero video ([#2799](https://github.com/HankHuang0516/EClaw/issues/2799)) ([66107c9](https://github.com/HankHuang0516/EClaw/commit/66107c954727551fd34d989a4674daaad9b63968))
* **footer:** add Watch Intro Video link in Info column ([#2798](https://github.com/HankHuang0516/EClaw/issues/2798)) ([d7c6d59](https://github.com/HankHuang0516/EClaw/commit/d7c6d596b69c6a5b257bf1f7a792a407ef9712ad))
* **i18n:** ar iter-2 — fill 623 missing keys against en source ([#2847](https://github.com/HankHuang0516/EClaw/issues/2847)) ([ee94a7a](https://github.com/HankHuang0516/EClaw/commit/ee94a7ae6812b5163efe4284ee4907ca32302f5c))
* **kanban:** backlog launch-gate flag to suppress L1/L2/L3 escalation ([#2855](https://github.com/HankHuang0516/EClaw/issues/2855)) ([cb8bf1b](https://github.com/HankHuang0516/EClaw/commit/cb8bf1bb6421f25214f65e129a8cadccc49cc266)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#4](https://github.com/HankHuang0516/EClaw/issues/4) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **companion:** bridge crafter-station/petdex gallery (1784 pets) ([#2601](https://github.com/HankHuang0516/EClaw/issues/2601)) ([2e245be](https://github.com/HankHuang0516/EClaw/commit/2e245bea6dd47ea7361b927d389188a3c23b6bb3))
* **promo:** chat avatar size feature landing page (self-hosted MP4) ([#2722](https://github.com/HankHuang0516/EClaw/issues/2722)) ([3852210](https://github.com/HankHuang0516/EClaw/commit/3852210d355704d018e3daca6b5f9512a011b210)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **kanban:** cron-spawn jitter + lane backpressure to prevent same-tick wedge ([#2791](https://github.com/HankHuang0516/EClaw/issues/2791)) ([9f414a7](https://github.com/HankHuang0516/EClaw/commit/9f414a731d6393672a0a4189c7b408c529ae5e12)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **portal:** dashboard usage widget — Claude/Codex 5h gauges + 24h chart (Plan B Phase 3) ([#2891](https://github.com/HankHuang0516/EClaw/issues/2891)) ([d18f373](https://github.com/HankHuang0516/EClaw/commit/d18f373857e4bd302437d6bda2a1e01871fbb1db))
* **portal:** dashboard usage widget v2 — Session/Weekly % bars + projects, no cost (Plan B Phase 3.1) ([#2893](https://github.com/HankHuang0516/EClaw/issues/2893)) ([4bc0dc7](https://github.com/HankHuang0516/EClaw/commit/4bc0dc744ed9d54dfd532ebac4b705c7f84ec0a6))
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **info:** embed 75s promo video on Quick Start tab ([#2795](https://github.com/HankHuang0516/EClaw/issues/2795)) ([86c3f70](https://github.com/HankHuang0516/EClaw/commit/86c3f709a95eebbee1241077b807880463f804b6))
* **promo:** embed daily eclaw video 2026-05-14 ([#2786](https://github.com/HankHuang0516/EClaw/issues/2786)) ([718a814](https://github.com/HankHuang0516/EClaw/commit/718a814ab16850bc2b33a1b303841e2c4378ecfa)), closes [#2782](https://github.com/HankHuang0516/EClaw/issues/2782) [#2693](https://github.com/HankHuang0516/EClaw/issues/2693)
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **info:** embed promo video at top of Quick Start tab ([#2797](https://github.com/HankHuang0516/EClaw/issues/2797)) ([047679f](https://github.com/HankHuang0516/EClaw/commit/047679fd57ab9949eaeacea414d5611e71afe041))
* **rental:** enforce strict rebind refunds ([#2703](https://github.com/HankHuang0516/EClaw/issues/2703)) ([a1859c5](https://github.com/HankHuang0516/EClaw/commit/a1859c50e6fb3991d7a8051491502d824a14a116))
* **portal:** group task chip actions ([#2825](https://github.com/HankHuang0516/EClaw/issues/2825)) ([5db5c59](https://github.com/HankHuang0516/EClaw/commit/5db5c59b32b8635f1412205faf0c2f9164d3d5d4))
* **hermes:** H2 health-check cron + 7d SLA + commander alerts (card_07891ac) ([#2922](https://github.com/HankHuang0516/EClaw/issues/2922)) ([82b4315](https://github.com/HankHuang0516/EClaw/commit/82b4315aea234493e3d1889dc53958c2f1d842e0)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **portal:** info-guide-rules + info-guide-soul slide pair ([#2793](https://github.com/HankHuang0516/EClaw/issues/2793)) ([1c8bddc](https://github.com/HankHuang0516/EClaw/commit/1c8bddc4c185054b2b60088498e3d45509117127)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **chat:** link card previews to kanban ([#2754](https://github.com/HankHuang0516/EClaw/issues/2754)) ([2261240](https://github.com/HankHuang0516/EClaw/commit/22612402c2e95efb07246629e81a849be41ee9c7))
* **mission:** link notes to kanban cards ([#2723](https://github.com/HankHuang0516/EClaw/issues/2723)) ([b36dc18](https://github.com/HankHuang0516/EClaw/commit/b36dc18f3a8facf12e0b6046351c222f1e99dc55))
* **usage-daemon:** macOS launchd daemon polls Claude/Codex usage → POST /api/usage/snapshot (Plan B Phase 2) ([#2890](https://github.com/HankHuang0516/EClaw/issues/2890)) ([fd225e1](https://github.com/HankHuang0516/EClaw/commit/fd225e12d9491037be1a340bd63b54b5f3308c7f))
* **mindmap:** mission.html link to /portal/mindmap.html + deprecate /api/mission/mindmap ([#2685](https://github.com/HankHuang0516/EClaw/issues/2685)) ([11e297b](https://github.com/HankHuang0516/EClaw/commit/11e297bab1c9b56fcde3027d6500b7c58891bf18)), closes [#2680](https://github.com/HankHuang0516/EClaw/issues/2680) [#2684](https://github.com/HankHuang0516/EClaw/issues/2684)
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **portal:** nagoya trip interactive map (Leaflet + OSM, no API key) ([#2888](https://github.com/HankHuang0516/EClaw/issues/2888)) ([ecfdac0](https://github.com/HankHuang0516/EClaw/commit/ecfdac06348c12ee7c6872c6c28d5f82162e7aa9))
* **channel:** outbound backpressure (30/min cap + 429 retry-after) ([#2911](https://github.com/HankHuang0516/EClaw/issues/2911)) ([36dc99c](https://github.com/HankHuang0516/EClaw/commit/36dc99ca78b0e1724a2aaefb5936669077b7a28f))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **settings:** per-entity nudge override UI (Phase 2) ([#2837](https://github.com/HankHuang0516/EClaw/issues/2837)) ([ea7662b](https://github.com/HankHuang0516/EClaw/commit/ea7662b0858882dae461e1387f711895924f9ab8)), closes [3/#4](https://github.com/HankHuang0516/EClaw/issues/4)
* **kanban:** per-entity nudge overrides (Phase 2 of card_e066cb6b) ([#2836](https://github.com/HankHuang0516/EClaw/issues/2836)) ([0425f80](https://github.com/HankHuang0516/EClaw/commit/0425f80bc1169c0d506b665659c8676695c45553))
* **avatar:** petdx render on card-holder my-cards (Phase 1b) ([#2621](https://github.com/HankHuang0516/EClaw/issues/2621)) ([f78ba8b](https://github.com/HankHuang0516/EClaw/commit/f78ba8b18acc426936ab6d8a82ca7541effea00d))
* **avatar:** petdx render on dashboard entity grid / org chart / bindings (Phase 1b) ([#2622](https://github.com/HankHuang0516/EClaw/issues/2622)) ([f417749](https://github.com/HankHuang0516/EClaw/commit/f41774914451048e8cd76e9ae30416a0642e173b)), closes [#2620](https://github.com/HankHuang0516/EClaw/issues/2620) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621)
* **avatar:** petdx render on kanban auto-assign / pulse / comment avatars (Phase 1b) ([#2624](https://github.com/HankHuang0516/EClaw/issues/2624)) ([6bff5f8](https://github.com/HankHuang0516/EClaw/commit/6bff5f80440d0bd91a6b1721cde9478d685c4d46))
* **avatar:** petdx render on mission skill/rule/soul entity dialogs (Phase 1b) ([#2623](https://github.com/HankHuang0516/EClaw/issues/2623)) ([129327b](https://github.com/HankHuang0516/EClaw/commit/129327bc7b91056659f1ab7e8d5e3f5260d951fb))
* **mindmap:** portal/mindmap.html force-graph prototype ([#129](https://github.com/HankHuang0516/EClaw/issues/129)) ([#2681](https://github.com/HankHuang0516/EClaw/issues/2681)) ([0f15e69](https://github.com/HankHuang0516/EClaw/commit/0f15e6930f0697c37fa08f3219edb8f9e499837f)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **channel:** record delivery receipts ([#2913](https://github.com/HankHuang0516/EClaw/issues/2913)) ([90c671b](https://github.com/HankHuang0516/EClaw/commit/90c671bd1970ab51584b90e2b634484ec10cc7ae))
* **portal:** redo nagoya trip page in professional tour-guide style ([#2691](https://github.com/HankHuang0516/EClaw/issues/2691)) ([b2378c0](https://github.com/HankHuang0516/EClaw/commit/b2378c06ee20fa9cccfdceceb1a4c9e0b3072f59))
* **i18n:** remove ms+hi orphan keys from i18n.js ([#2849](https://github.com/HankHuang0516/EClaw/issues/2849)) ([320176c](https://github.com/HankHuang0516/EClaw/commit/320176c06a3cfd8631e2a82ad02a6bd6a9af0389))
* **avatar:** render selected petdx companion in chat avatars ([#2620](https://github.com/HankHuang0516/EClaw/issues/2620)) ([0bdd046](https://github.com/HankHuang0516/EClaw/commit/0bdd046fe1b1c428e32edda366ff112c08927f4c))
* **home:** replace native home with WebView hosting dashboard.html ([#2634](https://github.com/HankHuang0516/EClaw/issues/2634)) ([e69ea81](https://github.com/HankHuang0516/EClaw/commit/e69ea8160c239b083a83d6dc83a4f1c3f901c863))
* **app:** route chat mission jumps through native tabs ([#2824](https://github.com/HankHuang0516/EClaw/issues/2824)) ([deb07b6](https://github.com/HankHuang0516/EClaw/commit/deb07b69a9ecca632fe27278de537f1d85234e94))
* **proxy:** scope private repo git auth ([#2926](https://github.com/HankHuang0516/EClaw/issues/2926)) ([246f7ff](https://github.com/HankHuang0516/EClaw/commit/246f7ff1dedaf7bece9e3cb9eb24d0ab32ebb393))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **chat:** support message deep links ([#2719](https://github.com/HankHuang0516/EClaw/issues/2719)) ([2dc0f1e](https://github.com/HankHuang0516/EClaw/commit/2dc0f1eeb259e1a0848db4a03186b989372cd91c))
* **mission:** support note deep links ([#2717](https://github.com/HankHuang0516/EClaw/issues/2717)) ([2efd3a5](https://github.com/HankHuang0516/EClaw/commit/2efd3a5e741217a07c0b0ac54a0ddd010e0ebe23))
* **share-chat:** twitter card + per-bot og:image/twitter:* in SSR ([#2609](https://github.com/HankHuang0516/EClaw/issues/2609)) ([6cdc853](https://github.com/HankHuang0516/EClaw/commit/6cdc853dc884cdb95bd47214942768981f218ae0))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))
* **settings:** wire petdx avatar into channel-account chips ([#2626](https://github.com/HankHuang0516/EClaw/issues/2626)) ([88aec77](https://github.com/HankHuang0516/EClaw/commit/88aec772628c240e97b336bb5820892ad632d1ae))
* **files:** wire petdx avatar into entity filter & per-file badges ([#2627](https://github.com/HankHuang0516/EClaw/issues/2627)) ([5b3e5cc](https://github.com/HankHuang0516/EClaw/commit/5b3e5cc542d9da69bb4e92500fd03a542ea33f00))
* **mindmap:** wrap hardcoded zh-TW UI strings with i18n t() ([#2607](https://github.com/HankHuang0516/EClaw/issues/2607)) ([166af87](https://github.com/HankHuang0516/EClaw/commit/166af8772b2121a24aaf34a83b3de970e9b3b571)), closes [#2606](https://github.com/HankHuang0516/EClaw/issues/2606)
* **i18n:** zh-TW backfill 8 keys (soft-pause + chat + invite + wallet) ([#2815](https://github.com/HankHuang0516/EClaw/issues/2815)) ([a2dd574](https://github.com/HankHuang0516/EClaw/commit/a2dd5743ce8d43a4b6ace9a2fd4b52568180d6c5))


### Performance Improvements

* **mindmap:** force-graph hardening for 1000/2000-node graphs ([#2684](https://github.com/HankHuang0516/EClaw/issues/2684)) ([da8b1c8](https://github.com/HankHuang0516/EClaw/commit/da8b1c8f947ab8bc8fa455c1962a91146623a1fc))


### Reverts

* Revert "feat(telegram): long-poll adapter PoC (card_406e612942ff062a06fc47be) ([#2238](https://github.com/HankHuang0516/EClaw/issues/2238))" ([#2239](https://github.com/HankHuang0516/EClaw/issues/2239)) ([eb7aa92](https://github.com/HankHuang0516/EClaw/commit/eb7aa92cce454b4a1a22654a2d133cdebe78c2bd))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-25)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **notifications:** add kanban_done + kanban_done_auto toggles to Android Settings ([#2636](https://github.com/HankHuang0516/EClaw/issues/2636)) ([a710909](https://github.com/HankHuang0516/EClaw/commit/a7109095e3393b8564e7ef1b23d382a4fbb944b8))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **api:** align /api/platform-stats skill-doc with device-auth contract (card_49b8190) ([#2916](https://github.com/HankHuang0516/EClaw/issues/2916)) ([ee55b2f](https://github.com/HankHuang0516/EClaw/commit/ee55b2fdbfbcd4bead5501d16ee66339056c32d7))
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **i18n:** ar block — fix 27 broken entries (CJK leaks + truncated HTML) ([#2851](https://github.com/HankHuang0516/EClaw/issues/2851)) ([5b19175](https://github.com/HankHuang0516/EClaw/commit/5b19175d712d00d16fcec00b749035c4beae7a5c))
* **chat:** atomic-load target bar (await contacts before first render) ([#2831](https://github.com/HankHuang0516/EClaw/issues/2831)) ([5f529e6](https://github.com/HankHuang0516/EClaw/commit/5f529e6b772eacc38ba1de69b44258a05f0d816a)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2](https://github.com/HankHuang0516/EClaw/issues/2)
* **channel:** await binding persistence ([712516d](https://github.com/HankHuang0516/EClaw/commit/712516decafb745035bd1434a28cc1973d433e19))
* **rental:** bump handshake timeout to 60s + timeout-aware discovery fallback ([#2863](https://github.com/HankHuang0516/EClaw/issues/2863)) ([fd4322f](https://github.com/HankHuang0516/EClaw/commit/fd4322f8890f3c2dfca3acdae6a4b95f19c381f9)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **i18n:** clear batch 1 residual missing keys ([#2790](https://github.com/HankHuang0516/EClaw/issues/2790)) ([211030e](https://github.com/HankHuang0516/EClaw/commit/211030e0b0b6a865c11f0c4ed60dc4e356d43b7a))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **kanban:** comment input no longer overlaps last comment in card detail (PR [#2678](https://github.com/HankHuang0516/EClaw/issues/2678)) ([fba91fc](https://github.com/HankHuang0516/EClaw/commit/fba91fca15402b453a0db5ee857c0b16e6087055))
* **chat:** compact 20px avatar in target bar (App WebView only shows [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2](https://github.com/HankHuang0516/EClaw/issues/2)) ([#2830](https://github.com/HankHuang0516/EClaw/issues/2830)) ([42c7543](https://github.com/HankHuang0516/EClaw/commit/42c7543b4a78a7abf3f5f7535eb9bc6142cd0fe2)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **portal:** complete 401 redirect sweep + mobile UIUX truncation ([#2842](https://github.com/HankHuang0516/EClaw/issues/2842)) ([f9799ba](https://github.com/HankHuang0516/EClaw/commit/f9799ba42498b109f0a8a70e80836aa6da51e216)), closes [#2833](https://github.com/HankHuang0516/EClaw/issues/2833) [#2845](https://github.com/HankHuang0516/EClaw/issues/2845) [#2844](https://github.com/HankHuang0516/EClaw/issues/2844) [#2843](https://github.com/HankHuang0516/EClaw/issues/2843)
* **uiux:** continue qa mobile readability sweep ([#2854](https://github.com/HankHuang0516/EClaw/issues/2854)) ([57606ff](https://github.com/HankHuang0516/EClaw/commit/57606ffe3e543b07a026aacc53c4b470c9a7825b))
* **i18n:** cover dynamic portal wrapper keys ([#2807](https://github.com/HankHuang0516/EClaw/issues/2807)) ([4c711cc](https://github.com/HankHuang0516/EClaw/commit/4c711cc4009300ffe4e8933a98ee01cd0fdd6aeb))
* **i18n:** dedup 20 dash_channel_card_* keys in es block ([#2876](https://github.com/HankHuang0516/EClaw/issues/2876)) ([807284c](https://github.com/HankHuang0516/EClaw/commit/807284ce363ef119ccdb0ae40e5ce99d3f0a27e0))
* **i18n:** dedupe backend locale keys via AST ([#2920](https://github.com/HankHuang0516/EClaw/issues/2920)) ([40ef114](https://github.com/HankHuang0516/EClaw/commit/40ef11414c8b836fe1ed93ec06c839df3a1bf7b9))
* **i18n:** dedupe zh locale keys ([#2919](https://github.com/HankHuang0516/EClaw/issues/2919)) ([afd2cca](https://github.com/HankHuang0516/EClaw/commit/afd2cca8086c2f2df0d04c9c5f8c58733652875e))
* **test:** delegate root test and remove invalid jest option ([#2292](https://github.com/HankHuang0516/EClaw/issues/2292)) ([65bf2f8](https://github.com/HankHuang0516/EClaw/commit/65bf2f83d26d925097cd380ab73b04ab2db49842))
* **kanban:** dep-aware nudge gating + roadmap dependency backfill ([#2904](https://github.com/HankHuang0516/EClaw/issues/2904)) ([2b76ac9](https://github.com/HankHuang0516/EClaw/commit/2b76ac9d3b7e4169b7bc3c6f6b0b0903b63cd9f7)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **rental:** don't pollute entity.message on push gateway timeout ([#2860](https://github.com/HankHuang0516/EClaw/issues/2860)) ([592ba44](https://github.com/HankHuang0516/EClaw/commit/592ba44f57536ee00011b6cbddaa6b129a7cbae9))
* **petdx:** drop dark-grey loading placeholder + preload sprite WEBP ([#2628](https://github.com/HankHuang0516/EClaw/issues/2628)) ([59cef38](https://github.com/HankHuang0516/EClaw/commit/59cef387bd69ca99d7d15c86a1364856d3849ad8)), closes [#1a1a1a](https://github.com/HankHuang0516/EClaw/issues/1a1a1a)
* **gateway-ws:** drop Origin header on server-to-server WS upgrade ([#2869](https://github.com/HankHuang0516/EClaw/issues/2869)) ([716dcf9](https://github.com/HankHuang0516/EClaw/commit/716dcf9d0834b17522bb9d894bad84bc142d1a19))
* **setup-scripts:** drop Origin header on server-to-server WS upgrade ([#2875](https://github.com/HankHuang0516/EClaw/issues/2875)) ([9d893b8](https://github.com/HankHuang0516/EClaw/commit/9d893b8e5eea4db275e450bf423903c156cd3e4b)), closes [#2869](https://github.com/HankHuang0516/EClaw/issues/2869)
* **security:** escape innerHTML in chat modal error messages ([#2819](https://github.com/HankHuang0516/EClaw/issues/2819)) ([dce07ad](https://github.com/HankHuang0516/EClaw/commit/dce07adde64795916dba977ae23e46f3371ce7ed)), closes [#2809](https://github.com/HankHuang0516/EClaw/issues/2809) [#2810](https://github.com/HankHuang0516/EClaw/issues/2810) [#2809](https://github.com/HankHuang0516/EClaw/issues/2809) [#2810](https://github.com/HankHuang0516/EClaw/issues/2810)
* **proxy:** export repo auth to CLI child ([#2928](https://github.com/HankHuang0516/EClaw/issues/2928)) ([336a8ca](https://github.com/HankHuang0516/EClaw/commit/336a8caff4e3663287bd2948cf9fe6e04125cbc8))
* **entities:** expose botSecret to owner so wallpaper service can poll companions ([#2615](https://github.com/HankHuang0516/EClaw/issues/2615)) ([04470fc](https://github.com/HankHuang0516/EClaw/commit/04470fce8f8c3fce2b1ba8b243e776606f107502))
* **rental:** expose owner_public_code in marketplace so plaza CTA can route ([#2616](https://github.com/HankHuang0516/EClaw/issues/2616)) ([4d1372f](https://github.com/HankHuang0516/EClaw/commit/4d1372f717d93cab65543e87c852e74e9fb67071)), closes [#2610](https://github.com/HankHuang0516/EClaw/issues/2610)
* **mindmap:** fallback to device scope when entityId is null ([#2728](https://github.com/HankHuang0516/EClaw/issues/2728)) ([7572312](https://github.com/HankHuang0516/EClaw/commit/7572312433d3d75fc245eda48a28919ce14bd927))
* **i18n:** fill 11 missing zh keys post-[#2920](https://github.com/HankHuang0516/EClaw/issues/2920)/[#2921](https://github.com/HankHuang0516/EClaw/issues/2921) (card_de6970) ([#2924](https://github.com/HankHuang0516/EClaw/issues/2924)) ([17c4899](https://github.com/HankHuang0516/EClaw/commit/17c48996489b1444d6ed589027acfa7986178fe1)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** fill backend runtime locale gaps ([#2921](https://github.com/HankHuang0516/EClaw/issues/2921)) ([00d96ff](https://github.com/HankHuang0516/EClaw/commit/00d96ff261b8134b49292623e1f786fd544144cc))
* **i18n:** fill Spanish drift keys ([#2751](https://github.com/HankHuang0516/EClaw/issues/2751)) ([0ad0ee5](https://github.com/HankHuang0516/EClaw/commit/0ad0ee55f7fac3e6ac46d891539950dab4d553cc))
* **portal:** fit embedded org chart to mobile viewport ([#2674](https://github.com/HankHuang0516/EClaw/issues/2674)) ([1c4e1b4](https://github.com/HankHuang0516/EClaw/commit/1c4e1b413ea7027b4cd4b8ecda981b0d0e12e66b))
* **i18n:** fix 6 trailing-comma syntax errors in 10-locale batch ([#2771](https://github.com/HankHuang0516/EClaw/issues/2771)) ([b27c6ca](https://github.com/HankHuang0516/EClaw/commit/b27c6ca204bf813e406c54ce3a2532a5f1f031b3))
* **kanban:** GET card returns latest 50 comments + comments endpoint exposes total ([#2816](https://github.com/HankHuang0516/EClaw/issues/2816)) ([c4d83f7](https://github.com/HankHuang0516/EClaw/commit/c4d83f777a1cd26aea0936e4316aa35c52822eef))
* **sharechat:** guest verify-email modal + disabled Send for unverified ([#2865](https://github.com/HankHuang0516/EClaw/issues/2865)) ([cb3b061](https://github.com/HankHuang0516/EClaw/commit/cb3b0614e0f6160417d907753e66eceb2d666802))
* **uiux:** harden chat previews and roster preview ([#2769](https://github.com/HankHuang0516/EClaw/issues/2769)) ([466d4d3](https://github.com/HankHuang0516/EClaw/commit/466d4d3ef81c628d3f58db64323946053d7bf61c))
* **mention-parser:** ignore @-mentions inside markdown code spans ([#2645](https://github.com/HankHuang0516/EClaw/issues/2645)) ([8da19d4](https://github.com/HankHuang0516/EClaw/commit/8da19d4a79ceb4152bf2144ee0847c61ce3e1def)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **kanban:** lazy-load dependency chips via IntersectionObserver ([#2632](https://github.com/HankHuang0516/EClaw/issues/2632)) ([20586b4](https://github.com/HankHuang0516/EClaw/commit/20586b43357335f9eb6a190c02d58c8e36b58aba)), closes [#2631](https://github.com/HankHuang0516/EClaw/issues/2631)
* **i18n:** localize FCM NotificationChannel labels (card_ec8d3a22) ([#2918](https://github.com/HankHuang0516/EClaw/issues/2918)) ([591cd20](https://github.com/HankHuang0516/EClaw/commit/591cd206704693650a53d19d94c4cc75daf84ffd))
* **kanban:** make card sorting deterministic ([#2756](https://github.com/HankHuang0516/EClaw/issues/2756)) ([48e2117](https://github.com/HankHuang0516/EClaw/commit/48e2117b64e37f05dc635e0a3b67bfd43cbe48f5))
* **portal/nagoya-trip:** map-link invisible on dark hero/day-banner ([#2897](https://github.com/HankHuang0516/EClaw/issues/2897)) ([cc33df6](https://github.com/HankHuang0516/EClaw/commit/cc33df686673455c20beaee60871412a5d486e66)), closes [#1f4030](https://github.com/HankHuang0516/EClaw/issues/1f4030) [#8b8579](https://github.com/HankHuang0516/EClaw/issues/8b8579) [#6e6859](https://github.com/HankHuang0516/EClaw/issues/6e6859) [#7a5614](https://github.com/HankHuang0516/EClaw/issues/7a5614)
* **org-chart:** notify affected bots on hierarchy change ([#2812](https://github.com/HankHuang0516/EClaw/issues/2812)) ([55675fd](https://github.com/HankHuang0516/EClaw/commit/55675fdf4487494d729a29524b32bd81b756a00c)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** notify reviewer on manual /move → review ([#2753](https://github.com/HankHuang0516/EClaw/issues/2753)) ([6cbbb4e](https://github.com/HankHuang0516/EClaw/commit/6cbbb4ee8c0d4d8ad54df2e9b5faaa3699bd530f))
* **wallpaper:** off-load spritesheet fetch to IO so per-petdx sprites actually render ([#2618](https://github.com/HankHuang0516/EClaw/issues/2618)) ([61b832c](https://github.com/HankHuang0516/EClaw/commit/61b832c9fa8a1d0caab810ccc942d85c63349267)), closes [#2615](https://github.com/HankHuang0516/EClaw/issues/2615) [#2577](https://github.com/HankHuang0516/EClaw/issues/2577)
* **security:** patch P0 sanitize-html XSS + P1 protobufjs + exam.html XSS ([#2829](https://github.com/HankHuang0516/EClaw/issues/2829)) ([c71b871](https://github.com/HankHuang0516/EClaw/commit/c71b871a045887375dd0d26d1a3280a0891a89ad))
* **security:** patch ws uninitialized memory disclosure (GHSA-58qx-3vcg-4xpx) ([#2872](https://github.com/HankHuang0516/EClaw/issues/2872)) ([2523d15](https://github.com/HankHuang0516/EClaw/commit/2523d154bbe501a7cc086340f7a07ece3abfa69b))
* **portal:** petdx-browser cookie-session fallback for device-login ([#2757](https://github.com/HankHuang0516/EClaw/issues/2757)) ([ca275f4](https://github.com/HankHuang0516/EClaw/commit/ca275f4519835da0c7ad71c588908a18f6f138d8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **api:** platform-stats 500 + entity/lookup publicCode alias ([#2809](https://github.com/HankHuang0516/EClaw/issues/2809), [#2810](https://github.com/HankHuang0516/EClaw/issues/2810)) ([#2818](https://github.com/HankHuang0516/EClaw/issues/2818)) ([f99fd17](https://github.com/HankHuang0516/EClaw/commit/f99fd17b2b1c32d88daa2510ff66d714c1a53edc))
* **i18n:** positional format specifiers for feedback_result_logs (7 locales) ([#2597](https://github.com/HankHuang0516/EClaw/issues/2597)) ([21aedc7](https://github.com/HankHuang0516/EClaw/commit/21aedc7eebc7a2839e340136f38dfdfd4dabb9dc))
* **avatar-petdx:** preserve descriptor across transient API failures (flicker) ([#2625](https://github.com/HankHuang0516/EClaw/issues/2625)) ([7b1c606](https://github.com/HankHuang0516/EClaw/commit/7b1c606514f7698d72ec95cf6c556e4043966186))
* **chat:** preserve recipient selection across rental-health refresh (P0 #card_eb1cba76) ([#2906](https://github.com/HankHuang0516/EClaw/issues/2906)) ([9cc0301](https://github.com/HankHuang0516/EClaw/commit/9cc0301cc26a0f49af4b7f53486f5c1a7cdd7902)), closes [#card_eb1cba76](https://github.com/HankHuang0516/EClaw/issues/card_eb1cba76) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **chat:** preserve scroll anchor while reading history ([#2693](https://github.com/HankHuang0516/EClaw/issues/2693)) ([945fdb7](https://github.com/HankHuang0516/EClaw/commit/945fdb7192b791b31882e1e75568dd8b11e4686f))
* **promo:** pull video embed from /promo-chat-avatar.html ([#2724](https://github.com/HankHuang0516/EClaw/issues/2724)) ([2afabc8](https://github.com/HankHuang0516/EClaw/commit/2afabc8c5ff8b25218a7cb857e8adfa572c8e9d5))
* **dashboard:** read live.rate_limits.{five_hour,seven_day}.used_percentage ([#2895](https://github.com/HankHuang0516/EClaw/issues/2895)) ([8223303](https://github.com/HankHuang0516/EClaw/commit/822330312bccb1c76675ad2c3b26e78d10dd1298))
* **kanban:** realign stale recurring schedules ([#2785](https://github.com/HankHuang0516/EClaw/issues/2785)) ([ab8ee25](https://github.com/HankHuang0516/EClaw/commit/ab8ee250a9b37f3d3e838bb01d8866c8d2b78231))
* **i18n:** reapply de6970 locale gap translations ([#2925](https://github.com/HankHuang0516/EClaw/issues/2925)) ([d994dc1](https://github.com/HankHuang0516/EClaw/commit/d994dc1d240fef72326db2599262375ccbf29175))
* **portal:** reduce QA-discovered request fanout ([#2656](https://github.com/HankHuang0516/EClaw/issues/2656)) ([1e46d6b](https://github.com/HankHuang0516/EClaw/commit/1e46d6bab61e58c65b452b6503d953f8dddeee75))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **portal:** remove org chart fit scale floor ([#2676](https://github.com/HankHuang0516/EClaw/issues/2676)) ([0f01606](https://github.com/HankHuang0516/EClaw/commit/0f016068b963bb5f800a02f28817c7174979d913))
* **rental:** remove phantom 'webhook test push' step from BIND_COMPLETE ([#2864](https://github.com/HankHuang0516/EClaw/issues/2864)) ([47f4a3e](https://github.com/HankHuang0516/EClaw/commit/47f4a3edf76aa95ebd06d8713cd44fda6eef9b5d))
* **i18n:** rename mm_empty_title → mm_state_empty_title in mindmap.html ([#2683](https://github.com/HankHuang0516/EClaw/issues/2683)) ([c79c109](https://github.com/HankHuang0516/EClaw/commit/c79c109bea23142e8a6d9ace976d105af1280ec9))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **chat:** render mention avatars with companion renderer ([#2633](https://github.com/HankHuang0516/EClaw/issues/2633)) ([03e205f](https://github.com/HankHuang0516/EClaw/commit/03e205f663ecd2c2f443d4009dd5af0093f0bbbb))
* **kanban:** reserve mobile comments panel height ([#2782](https://github.com/HankHuang0516/EClaw/issues/2782)) ([ce8662d](https://github.com/HankHuang0516/EClaw/commit/ce8662d362422fdd25037f1deb61dbed9425e2f9))
* **channel:** restore handshake fallback to discovered sessions ([#2915](https://github.com/HankHuang0516/EClaw/issues/2915)) ([#2917](https://github.com/HankHuang0516/EClaw/issues/2917)) ([9d7d3a2](https://github.com/HankHuang0516/EClaw/commit/9d7d3a25654289998314dd5ca152cefdb8a4d64e)), closes [#2912](https://github.com/HankHuang0516/EClaw/issues/2912)
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* scheduled audit 2026-05-13 — 6 bugs, XSS, i18n ([#2668](https://github.com/HankHuang0516/EClaw/issues/2668)) ([21dd513](https://github.com/HankHuang0516/EClaw/commit/21dd513b4464738de29164265437435ba6cc4817)), closes [#2605](https://github.com/HankHuang0516/EClaw/issues/2605) [#2608](https://github.com/HankHuang0516/EClaw/issues/2608) [#2600](https://github.com/HankHuang0516/EClaw/issues/2600) [#2599](https://github.com/HankHuang0516/EClaw/issues/2599) [#2598](https://github.com/HankHuang0516/EClaw/issues/2598)
* **channel:** scope official bot sessions ([#2912](https://github.com/HankHuang0516/EClaw/issues/2912)) ([5c56b62](https://github.com/HankHuang0516/EClaw/commit/5c56b62c13b739b76f39e168a26bd4e5de2644fb))
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **dashboard:** show Claude weekly bar reset countdown ([#2896](https://github.com/HankHuang0516/EClaw/issues/2896)) ([3b87845](https://github.com/HankHuang0516/EClaw/commit/3b87845d713e980fec69f6b8007549338a326713)), closes [#2895](https://github.com/HankHuang0516/EClaw/issues/2895)
* **chat:** smart-chip preview falls back to inline c.comments when /comments fails (PR [#2677](https://github.com/HankHuang0516/EClaw/issues/2677)) ([7f4dffd](https://github.com/HankHuang0516/EClaw/commit/7f4dffd2c83ea86f296b8fa0610f0e67c9f1af11))
* **kanban:** stabilize comment detail viewport ([#2796](https://github.com/HankHuang0516/EClaw/issues/2796)) ([0a10aad](https://github.com/HankHuang0516/EClaw/commit/0a10aadb5a5b12ff23454c16d5c88183b94ad7d7))
* **wallpaper:** stop Android live wallpaper flashing default lobster on companion change ([#2629](https://github.com/HankHuang0516/EClaw/issues/2629)) ([8b4f66f](https://github.com/HankHuang0516/EClaw/commit/8b4f66fcb335bf43128f924b761b6337c817095b)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **chat:** stop chat.html bouncing to dashboard via /api/rental/health-status 401 race ([#2833](https://github.com/HankHuang0516/EClaw/issues/2833)) ([c422406](https://github.com/HankHuang0516/EClaw/commit/c4224067cdcfe7f3e22ab95007c7563dac4196ac))
* **openclaw-channel:** support OpenClaw 2026.5.20 ([8045de6](https://github.com/HankHuang0516/EClaw/commit/8045de6bebecfc05f9bd57453b99c098ca35681b))
* **mentions:** support same-device CJK display-name tags ([#2874](https://github.com/HankHuang0516/EClaw/issues/2874)) ([b8f61be](https://github.com/HankHuang0516/EClaw/commit/b8f61be9a3962fef75dd32ea34e8900880dafaf9))
* **channel:** suppress operational A2A loop messages (rebase of [#2288](https://github.com/HankHuang0516/EClaw/issues/2288)) ([#2930](https://github.com/HankHuang0516/EClaw/issues/2930)) ([7ceabc9](https://github.com/HankHuang0516/EClaw/commit/7ceabc915df22123cb46ae1500e2eb2e279250af))
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **dashboard:** use sessions[].project for widget Projects list (was .project_id) ([#2894](https://github.com/HankHuang0516/EClaw/issues/2894)) ([0fd1334](https://github.com/HankHuang0516/EClaw/commit/0fd1334897d4a603cc6eb74f34b48606547e09cf))
* **app:** WebView pages honor app-selected locale via ?lang= URL param ([#2672](https://github.com/HankHuang0516/EClaw/issues/2672)) ([8ed8757](https://github.com/HankHuang0516/EClaw/commit/8ed8757aec5bf214e837cc0d81bf2b23f1993a91)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **share-chat:** wire rich CTA actions to msgInput ([#2867](https://github.com/HankHuang0516/EClaw/issues/2867)) ([df23b11](https://github.com/HankHuang0516/EClaw/commit/df23b1147d34c59a644a145bbd87c18b96400acc))


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* **usage-api:** /api/usage/{snapshot,timeline} + usage_snapshots table (Plan B Phase 1) ([#2889](https://github.com/HankHuang0516/EClaw/issues/2889)) ([a0d859c](https://github.com/HankHuang0516/EClaw/commit/a0d859c63f0220909dadb2b1952174861ccdce14))
* **community:** 1-click chat button on bot cards + utm tagging ([#2610](https://github.com/HankHuang0516/EClaw/issues/2610)) ([eee97b0](https://github.com/HankHuang0516/EClaw/commit/eee97b0e2e4e74945ec24f218a69a52800b97a66))
* **chat:** accept ?messageId= as deep-link alias ([#2838](https://github.com/HankHuang0516/EClaw/issues/2838)) ([1785a87](https://github.com/HankHuang0516/EClaw/commit/1785a87310426637fd10df83754fb9924c45207f))
* **chat:** add avatar size preference ([#2714](https://github.com/HankHuang0516/EClaw/issues/2714)) ([6fe164a](https://github.com/HankHuang0516/EClaw/commit/6fe164ad8b22fa576d2dd9ad37c0d9fc295b5a83))
* **dashboard:** add Claude and Codex channel guides ([#2640](https://github.com/HankHuang0516/EClaw/issues/2640)) ([c64e4c4](https://github.com/HankHuang0516/EClaw/commit/c64e4c4afc78db58c5cd578f00486dd7b2fd3311))
* **dashboard:** add Claude Code channel guide card ([#2667](https://github.com/HankHuang0516/EClaw/issues/2667)) ([d70d75c](https://github.com/HankHuang0516/EClaw/commit/d70d75c0c8caa8a540358a9aab4556b8c1927a5c))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* **kanban:** add device-scoped card tags ([#2773](https://github.com/HankHuang0516/EClaw/issues/2773)) ([53a387e](https://github.com/HankHuang0516/EClaw/commit/53a387e67ba7bb4f6bed1c427000c4ae8666577a))
* **portal:** add entity selector to petdx-browser ([#2602](https://github.com/HankHuang0516/EClaw/issues/2602)) ([3fa067e](https://github.com/HankHuang0516/EClaw/commit/3fa067e00b38829b48a37cecd33ee81a9a1122d9))
* **kanban:** add explicit card links ([#2721](https://github.com/HankHuang0516/EClaw/issues/2721)) ([ef9f812](https://github.com/HankHuang0516/EClaw/commit/ef9f812a3fcf39efd07fd158ce90951bdd045ac7))
* **kanban:** add explicit done-card reopen flow ([#2801](https://github.com/HankHuang0516/EClaw/issues/2801)) ([5080aac](https://github.com/HankHuang0516/EClaw/commit/5080aacb75047c0deaa379ee708ec85465afd57c))
* **mindmap:** add GET /api/mindmap/graph force-graph projection ([#2680](https://github.com/HankHuang0516/EClaw/issues/2680)) ([a00b2e7](https://github.com/HankHuang0516/EClaw/commit/a00b2e775af2c4c98cd157f760ad87aeeee469f0)), closes [#2679](https://github.com/HankHuang0516/EClaw/issues/2679) [#2679](https://github.com/HankHuang0516/EClaw/issues/2679)
* **dashboard:** add Hermes channel promo card ([#2708](https://github.com/HankHuang0516/EClaw/issues/2708)) ([337aca1](https://github.com/HankHuang0516/EClaw/commit/337aca153d5a1cd7e888c065f00ae54db7872d91))
* **rental:** add listing soft pause ([#2781](https://github.com/HankHuang0516/EClaw/issues/2781)) ([6586b72](https://github.com/HankHuang0516/EClaw/commit/6586b72717ddb1637d91cd3242c8d2ff554f62b4))
* **portal:** add Nagoya 5D4N trip static cross-ref page ([#2689](https://github.com/HankHuang0516/EClaw/issues/2689)) ([2e0efb6](https://github.com/HankHuang0516/EClaw/commit/2e0efb6dcdaff52226cc8854a96747000b12bdff))
* **portal:** add Nagoya image atlas static page ([#2743](https://github.com/HankHuang0516/EClaw/issues/2743)) ([ac026e9](https://github.com/HankHuang0516/EClaw/commit/ac026e9fd2c92ac9437d01edddffc9adf972f6ba))
* **portal:** add Nagoya trip map links and image lightbox ([#2821](https://github.com/HankHuang0516/EClaw/issues/2821)) ([3e40955](https://github.com/HankHuang0516/EClaw/commit/3e40955650a05f45a6b9f7e39e73847705424a03))
* **portal/nagoya:** add parking shortcut buttons next to itinerary places ([#2826](https://github.com/HankHuang0516/EClaw/issues/2826)) ([63968c5](https://github.com/HankHuang0516/EClaw/commit/63968c554d046afc8d978de74e3aacbf7700500d))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **settings:** add rental roster management preview ([#2758](https://github.com/HankHuang0516/EClaw/issues/2758)) ([9706e59](https://github.com/HankHuang0516/EClaw/commit/9706e59ded140a90a6e02348124282bc69d89001))
* **rental:** add renter health chat indicator ([#2690](https://github.com/HankHuang0516/EClaw/issues/2690)) ([36cd2e9](https://github.com/HankHuang0516/EClaw/commit/36cd2e9802be4c7ebb03d3024617fa74aca48ffd))
* **ios:** add Tutorial & Intro entry in Settings ([#2800](https://github.com/HankHuang0516/EClaw/issues/2800)) ([ed83e51](https://github.com/HankHuang0516/EClaw/commit/ed83e51d043bf4cd5865f38dc95a91ed54820d6c))
* **landing:** add Watch Full Demo CTA below hero video ([#2799](https://github.com/HankHuang0516/EClaw/issues/2799)) ([66107c9](https://github.com/HankHuang0516/EClaw/commit/66107c954727551fd34d989a4674daaad9b63968))
* **footer:** add Watch Intro Video link in Info column ([#2798](https://github.com/HankHuang0516/EClaw/issues/2798)) ([d7c6d59](https://github.com/HankHuang0516/EClaw/commit/d7c6d596b69c6a5b257bf1f7a792a407ef9712ad))
* **i18n:** ar iter-2 — fill 623 missing keys against en source ([#2847](https://github.com/HankHuang0516/EClaw/issues/2847)) ([ee94a7a](https://github.com/HankHuang0516/EClaw/commit/ee94a7ae6812b5163efe4284ee4907ca32302f5c))
* **kanban:** backlog launch-gate flag to suppress L1/L2/L3 escalation ([#2855](https://github.com/HankHuang0516/EClaw/issues/2855)) ([cb8bf1b](https://github.com/HankHuang0516/EClaw/commit/cb8bf1bb6421f25214f65e129a8cadccc49cc266)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#4](https://github.com/HankHuang0516/EClaw/issues/4) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **companion:** bridge crafter-station/petdex gallery (1784 pets) ([#2601](https://github.com/HankHuang0516/EClaw/issues/2601)) ([2e245be](https://github.com/HankHuang0516/EClaw/commit/2e245bea6dd47ea7361b927d389188a3c23b6bb3))
* **promo:** chat avatar size feature landing page (self-hosted MP4) ([#2722](https://github.com/HankHuang0516/EClaw/issues/2722)) ([3852210](https://github.com/HankHuang0516/EClaw/commit/3852210d355704d018e3daca6b5f9512a011b210)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **kanban:** cron-spawn jitter + lane backpressure to prevent same-tick wedge ([#2791](https://github.com/HankHuang0516/EClaw/issues/2791)) ([9f414a7](https://github.com/HankHuang0516/EClaw/commit/9f414a731d6393672a0a4189c7b408c529ae5e12)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **portal:** dashboard usage widget — Claude/Codex 5h gauges + 24h chart (Plan B Phase 3) ([#2891](https://github.com/HankHuang0516/EClaw/issues/2891)) ([d18f373](https://github.com/HankHuang0516/EClaw/commit/d18f373857e4bd302437d6bda2a1e01871fbb1db))
* **portal:** dashboard usage widget v2 — Session/Weekly % bars + projects, no cost (Plan B Phase 3.1) ([#2893](https://github.com/HankHuang0516/EClaw/issues/2893)) ([4bc0dc7](https://github.com/HankHuang0516/EClaw/commit/4bc0dc744ed9d54dfd532ebac4b705c7f84ec0a6))
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **promo:** embed daily eclaw video 2026-05-14 ([#2786](https://github.com/HankHuang0516/EClaw/issues/2786)) ([718a814](https://github.com/HankHuang0516/EClaw/commit/718a814ab16850bc2b33a1b303841e2c4378ecfa)), closes [#2782](https://github.com/HankHuang0516/EClaw/issues/2782) [#2693](https://github.com/HankHuang0516/EClaw/issues/2693)
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **info:** embed promo video at top of Quick Start tab ([#2797](https://github.com/HankHuang0516/EClaw/issues/2797)) ([047679f](https://github.com/HankHuang0516/EClaw/commit/047679fd57ab9949eaeacea414d5611e71afe041))
* **rental:** enforce strict rebind refunds ([#2703](https://github.com/HankHuang0516/EClaw/issues/2703)) ([a1859c5](https://github.com/HankHuang0516/EClaw/commit/a1859c50e6fb3991d7a8051491502d824a14a116))
* **portal:** group task chip actions ([#2825](https://github.com/HankHuang0516/EClaw/issues/2825)) ([5db5c59](https://github.com/HankHuang0516/EClaw/commit/5db5c59b32b8635f1412205faf0c2f9164d3d5d4))
* **hermes:** H2 health-check cron + 7d SLA + commander alerts (card_07891ac) ([#2922](https://github.com/HankHuang0516/EClaw/issues/2922)) ([82b4315](https://github.com/HankHuang0516/EClaw/commit/82b4315aea234493e3d1889dc53958c2f1d842e0)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **portal:** info-guide-rules + info-guide-soul slide pair ([#2793](https://github.com/HankHuang0516/EClaw/issues/2793)) ([1c8bddc](https://github.com/HankHuang0516/EClaw/commit/1c8bddc4c185054b2b60088498e3d45509117127)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **chat:** link card previews to kanban ([#2754](https://github.com/HankHuang0516/EClaw/issues/2754)) ([2261240](https://github.com/HankHuang0516/EClaw/commit/22612402c2e95efb07246629e81a849be41ee9c7))
* **mission:** link notes to kanban cards ([#2723](https://github.com/HankHuang0516/EClaw/issues/2723)) ([b36dc18](https://github.com/HankHuang0516/EClaw/commit/b36dc18f3a8facf12e0b6046351c222f1e99dc55))
* **usage-daemon:** macOS launchd daemon polls Claude/Codex usage → POST /api/usage/snapshot (Plan B Phase 2) ([#2890](https://github.com/HankHuang0516/EClaw/issues/2890)) ([fd225e1](https://github.com/HankHuang0516/EClaw/commit/fd225e12d9491037be1a340bd63b54b5f3308c7f))
* **mindmap:** mission.html link to /portal/mindmap.html + deprecate /api/mission/mindmap ([#2685](https://github.com/HankHuang0516/EClaw/issues/2685)) ([11e297b](https://github.com/HankHuang0516/EClaw/commit/11e297bab1c9b56fcde3027d6500b7c58891bf18)), closes [#2680](https://github.com/HankHuang0516/EClaw/issues/2680) [#2684](https://github.com/HankHuang0516/EClaw/issues/2684)
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **portal:** nagoya trip interactive map (Leaflet + OSM, no API key) ([#2888](https://github.com/HankHuang0516/EClaw/issues/2888)) ([ecfdac0](https://github.com/HankHuang0516/EClaw/commit/ecfdac06348c12ee7c6872c6c28d5f82162e7aa9))
* **channel:** outbound backpressure (30/min cap + 429 retry-after) ([#2911](https://github.com/HankHuang0516/EClaw/issues/2911)) ([36dc99c](https://github.com/HankHuang0516/EClaw/commit/36dc99ca78b0e1724a2aaefb5936669077b7a28f))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **settings:** per-entity nudge override UI (Phase 2) ([#2837](https://github.com/HankHuang0516/EClaw/issues/2837)) ([ea7662b](https://github.com/HankHuang0516/EClaw/commit/ea7662b0858882dae461e1387f711895924f9ab8)), closes [3/#4](https://github.com/HankHuang0516/EClaw/issues/4)
* **kanban:** per-entity nudge overrides (Phase 2 of card_e066cb6b) ([#2836](https://github.com/HankHuang0516/EClaw/issues/2836)) ([0425f80](https://github.com/HankHuang0516/EClaw/commit/0425f80bc1169c0d506b665659c8676695c45553))
* **avatar:** petdx render on card-holder my-cards (Phase 1b) ([#2621](https://github.com/HankHuang0516/EClaw/issues/2621)) ([f78ba8b](https://github.com/HankHuang0516/EClaw/commit/f78ba8b18acc426936ab6d8a82ca7541effea00d))
* **avatar:** petdx render on dashboard entity grid / org chart / bindings (Phase 1b) ([#2622](https://github.com/HankHuang0516/EClaw/issues/2622)) ([f417749](https://github.com/HankHuang0516/EClaw/commit/f41774914451048e8cd76e9ae30416a0642e173b)), closes [#2620](https://github.com/HankHuang0516/EClaw/issues/2620) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621)
* **avatar:** petdx render on kanban auto-assign / pulse / comment avatars (Phase 1b) ([#2624](https://github.com/HankHuang0516/EClaw/issues/2624)) ([6bff5f8](https://github.com/HankHuang0516/EClaw/commit/6bff5f80440d0bd91a6b1721cde9478d685c4d46))
* **avatar:** petdx render on mission skill/rule/soul entity dialogs (Phase 1b) ([#2623](https://github.com/HankHuang0516/EClaw/issues/2623)) ([129327b](https://github.com/HankHuang0516/EClaw/commit/129327bc7b91056659f1ab7e8d5e3f5260d951fb))
* **mindmap:** portal/mindmap.html force-graph prototype ([#129](https://github.com/HankHuang0516/EClaw/issues/129)) ([#2681](https://github.com/HankHuang0516/EClaw/issues/2681)) ([0f15e69](https://github.com/HankHuang0516/EClaw/commit/0f15e6930f0697c37fa08f3219edb8f9e499837f)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **channel:** record delivery receipts ([#2913](https://github.com/HankHuang0516/EClaw/issues/2913)) ([90c671b](https://github.com/HankHuang0516/EClaw/commit/90c671bd1970ab51584b90e2b634484ec10cc7ae))
* **portal:** redo nagoya trip page in professional tour-guide style ([#2691](https://github.com/HankHuang0516/EClaw/issues/2691)) ([b2378c0](https://github.com/HankHuang0516/EClaw/commit/b2378c06ee20fa9cccfdceceb1a4c9e0b3072f59))
* **i18n:** remove ms+hi orphan keys from i18n.js ([#2849](https://github.com/HankHuang0516/EClaw/issues/2849)) ([320176c](https://github.com/HankHuang0516/EClaw/commit/320176c06a3cfd8631e2a82ad02a6bd6a9af0389))
* **avatar:** render selected petdx companion in chat avatars ([#2620](https://github.com/HankHuang0516/EClaw/issues/2620)) ([0bdd046](https://github.com/HankHuang0516/EClaw/commit/0bdd046fe1b1c428e32edda366ff112c08927f4c))
* **home:** replace native home with WebView hosting dashboard.html ([#2634](https://github.com/HankHuang0516/EClaw/issues/2634)) ([e69ea81](https://github.com/HankHuang0516/EClaw/commit/e69ea8160c239b083a83d6dc83a4f1c3f901c863))
* **app:** route chat mission jumps through native tabs ([#2824](https://github.com/HankHuang0516/EClaw/issues/2824)) ([deb07b6](https://github.com/HankHuang0516/EClaw/commit/deb07b69a9ecca632fe27278de537f1d85234e94))
* **proxy:** scope private repo git auth ([#2926](https://github.com/HankHuang0516/EClaw/issues/2926)) ([246f7ff](https://github.com/HankHuang0516/EClaw/commit/246f7ff1dedaf7bece9e3cb9eb24d0ab32ebb393))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **chat:** support message deep links ([#2719](https://github.com/HankHuang0516/EClaw/issues/2719)) ([2dc0f1e](https://github.com/HankHuang0516/EClaw/commit/2dc0f1eeb259e1a0848db4a03186b989372cd91c))
* **mission:** support note deep links ([#2717](https://github.com/HankHuang0516/EClaw/issues/2717)) ([2efd3a5](https://github.com/HankHuang0516/EClaw/commit/2efd3a5e741217a07c0b0ac54a0ddd010e0ebe23))
* **share-chat:** twitter card + per-bot og:image/twitter:* in SSR ([#2609](https://github.com/HankHuang0516/EClaw/issues/2609)) ([6cdc853](https://github.com/HankHuang0516/EClaw/commit/6cdc853dc884cdb95bd47214942768981f218ae0))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))
* **settings:** wire petdx avatar into channel-account chips ([#2626](https://github.com/HankHuang0516/EClaw/issues/2626)) ([88aec77](https://github.com/HankHuang0516/EClaw/commit/88aec772628c240e97b336bb5820892ad632d1ae))
* **files:** wire petdx avatar into entity filter & per-file badges ([#2627](https://github.com/HankHuang0516/EClaw/issues/2627)) ([5b3e5cc](https://github.com/HankHuang0516/EClaw/commit/5b3e5cc542d9da69bb4e92500fd03a542ea33f00))
* **mindmap:** wrap hardcoded zh-TW UI strings with i18n t() ([#2607](https://github.com/HankHuang0516/EClaw/issues/2607)) ([166af87](https://github.com/HankHuang0516/EClaw/commit/166af8772b2121a24aaf34a83b3de970e9b3b571)), closes [#2606](https://github.com/HankHuang0516/EClaw/issues/2606)
* **i18n:** zh-TW backfill 8 keys (soft-pause + chat + invite + wallet) ([#2815](https://github.com/HankHuang0516/EClaw/issues/2815)) ([a2dd574](https://github.com/HankHuang0516/EClaw/commit/a2dd5743ce8d43a4b6ace9a2fd4b52568180d6c5))


### Performance Improvements

* **mindmap:** force-graph hardening for 1000/2000-node graphs ([#2684](https://github.com/HankHuang0516/EClaw/issues/2684)) ([da8b1c8](https://github.com/HankHuang0516/EClaw/commit/da8b1c8f947ab8bc8fa455c1962a91146623a1fc))


### Reverts

* Revert "feat(telegram): long-poll adapter PoC (card_406e612942ff062a06fc47be) ([#2238](https://github.com/HankHuang0516/EClaw/issues/2238))" ([#2239](https://github.com/HankHuang0516/EClaw/issues/2239)) ([eb7aa92](https://github.com/HankHuang0516/EClaw/commit/eb7aa92cce454b4a1a22654a2d133cdebe78c2bd))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-25)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **notifications:** add kanban_done + kanban_done_auto toggles to Android Settings ([#2636](https://github.com/HankHuang0516/EClaw/issues/2636)) ([a710909](https://github.com/HankHuang0516/EClaw/commit/a7109095e3393b8564e7ef1b23d382a4fbb944b8))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **api:** align /api/platform-stats skill-doc with device-auth contract (card_49b8190) ([#2916](https://github.com/HankHuang0516/EClaw/issues/2916)) ([ee55b2f](https://github.com/HankHuang0516/EClaw/commit/ee55b2fdbfbcd4bead5501d16ee66339056c32d7))
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **i18n:** ar block — fix 27 broken entries (CJK leaks + truncated HTML) ([#2851](https://github.com/HankHuang0516/EClaw/issues/2851)) ([5b19175](https://github.com/HankHuang0516/EClaw/commit/5b19175d712d00d16fcec00b749035c4beae7a5c))
* **chat:** atomic-load target bar (await contacts before first render) ([#2831](https://github.com/HankHuang0516/EClaw/issues/2831)) ([5f529e6](https://github.com/HankHuang0516/EClaw/commit/5f529e6b772eacc38ba1de69b44258a05f0d816a)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2](https://github.com/HankHuang0516/EClaw/issues/2)
* **channel:** await binding persistence ([712516d](https://github.com/HankHuang0516/EClaw/commit/712516decafb745035bd1434a28cc1973d433e19))
* **rental:** bump handshake timeout to 60s + timeout-aware discovery fallback ([#2863](https://github.com/HankHuang0516/EClaw/issues/2863)) ([fd4322f](https://github.com/HankHuang0516/EClaw/commit/fd4322f8890f3c2dfca3acdae6a4b95f19c381f9)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **i18n:** clear batch 1 residual missing keys ([#2790](https://github.com/HankHuang0516/EClaw/issues/2790)) ([211030e](https://github.com/HankHuang0516/EClaw/commit/211030e0b0b6a865c11f0c4ed60dc4e356d43b7a))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **kanban:** comment input no longer overlaps last comment in card detail (PR [#2678](https://github.com/HankHuang0516/EClaw/issues/2678)) ([fba91fc](https://github.com/HankHuang0516/EClaw/commit/fba91fca15402b453a0db5ee857c0b16e6087055))
* **chat:** compact 20px avatar in target bar (App WebView only shows [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2](https://github.com/HankHuang0516/EClaw/issues/2)) ([#2830](https://github.com/HankHuang0516/EClaw/issues/2830)) ([42c7543](https://github.com/HankHuang0516/EClaw/commit/42c7543b4a78a7abf3f5f7535eb9bc6142cd0fe2)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **portal:** complete 401 redirect sweep + mobile UIUX truncation ([#2842](https://github.com/HankHuang0516/EClaw/issues/2842)) ([f9799ba](https://github.com/HankHuang0516/EClaw/commit/f9799ba42498b109f0a8a70e80836aa6da51e216)), closes [#2833](https://github.com/HankHuang0516/EClaw/issues/2833) [#2845](https://github.com/HankHuang0516/EClaw/issues/2845) [#2844](https://github.com/HankHuang0516/EClaw/issues/2844) [#2843](https://github.com/HankHuang0516/EClaw/issues/2843)
* **uiux:** continue qa mobile readability sweep ([#2854](https://github.com/HankHuang0516/EClaw/issues/2854)) ([57606ff](https://github.com/HankHuang0516/EClaw/commit/57606ffe3e543b07a026aacc53c4b470c9a7825b))
* **i18n:** cover dynamic portal wrapper keys ([#2807](https://github.com/HankHuang0516/EClaw/issues/2807)) ([4c711cc](https://github.com/HankHuang0516/EClaw/commit/4c711cc4009300ffe4e8933a98ee01cd0fdd6aeb))
* **i18n:** dedup 20 dash_channel_card_* keys in es block ([#2876](https://github.com/HankHuang0516/EClaw/issues/2876)) ([807284c](https://github.com/HankHuang0516/EClaw/commit/807284ce363ef119ccdb0ae40e5ce99d3f0a27e0))
* **i18n:** dedupe backend locale keys via AST ([#2920](https://github.com/HankHuang0516/EClaw/issues/2920)) ([40ef114](https://github.com/HankHuang0516/EClaw/commit/40ef11414c8b836fe1ed93ec06c839df3a1bf7b9))
* **i18n:** dedupe zh locale keys ([#2919](https://github.com/HankHuang0516/EClaw/issues/2919)) ([afd2cca](https://github.com/HankHuang0516/EClaw/commit/afd2cca8086c2f2df0d04c9c5f8c58733652875e))
* **test:** delegate root test and remove invalid jest option ([#2292](https://github.com/HankHuang0516/EClaw/issues/2292)) ([65bf2f8](https://github.com/HankHuang0516/EClaw/commit/65bf2f83d26d925097cd380ab73b04ab2db49842))
* **kanban:** dep-aware nudge gating + roadmap dependency backfill ([#2904](https://github.com/HankHuang0516/EClaw/issues/2904)) ([2b76ac9](https://github.com/HankHuang0516/EClaw/commit/2b76ac9d3b7e4169b7bc3c6f6b0b0903b63cd9f7)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **rental:** don't pollute entity.message on push gateway timeout ([#2860](https://github.com/HankHuang0516/EClaw/issues/2860)) ([592ba44](https://github.com/HankHuang0516/EClaw/commit/592ba44f57536ee00011b6cbddaa6b129a7cbae9))
* **petdx:** drop dark-grey loading placeholder + preload sprite WEBP ([#2628](https://github.com/HankHuang0516/EClaw/issues/2628)) ([59cef38](https://github.com/HankHuang0516/EClaw/commit/59cef387bd69ca99d7d15c86a1364856d3849ad8)), closes [#1a1a1a](https://github.com/HankHuang0516/EClaw/issues/1a1a1a)
* **gateway-ws:** drop Origin header on server-to-server WS upgrade ([#2869](https://github.com/HankHuang0516/EClaw/issues/2869)) ([716dcf9](https://github.com/HankHuang0516/EClaw/commit/716dcf9d0834b17522bb9d894bad84bc142d1a19))
* **setup-scripts:** drop Origin header on server-to-server WS upgrade ([#2875](https://github.com/HankHuang0516/EClaw/issues/2875)) ([9d893b8](https://github.com/HankHuang0516/EClaw/commit/9d893b8e5eea4db275e450bf423903c156cd3e4b)), closes [#2869](https://github.com/HankHuang0516/EClaw/issues/2869)
* **security:** escape innerHTML in chat modal error messages ([#2819](https://github.com/HankHuang0516/EClaw/issues/2819)) ([dce07ad](https://github.com/HankHuang0516/EClaw/commit/dce07adde64795916dba977ae23e46f3371ce7ed)), closes [#2809](https://github.com/HankHuang0516/EClaw/issues/2809) [#2810](https://github.com/HankHuang0516/EClaw/issues/2810) [#2809](https://github.com/HankHuang0516/EClaw/issues/2809) [#2810](https://github.com/HankHuang0516/EClaw/issues/2810)
* **proxy:** export repo auth to CLI child ([#2928](https://github.com/HankHuang0516/EClaw/issues/2928)) ([336a8ca](https://github.com/HankHuang0516/EClaw/commit/336a8caff4e3663287bd2948cf9fe6e04125cbc8))
* **entities:** expose botSecret to owner so wallpaper service can poll companions ([#2615](https://github.com/HankHuang0516/EClaw/issues/2615)) ([04470fc](https://github.com/HankHuang0516/EClaw/commit/04470fce8f8c3fce2b1ba8b243e776606f107502))
* **rental:** expose owner_public_code in marketplace so plaza CTA can route ([#2616](https://github.com/HankHuang0516/EClaw/issues/2616)) ([4d1372f](https://github.com/HankHuang0516/EClaw/commit/4d1372f717d93cab65543e87c852e74e9fb67071)), closes [#2610](https://github.com/HankHuang0516/EClaw/issues/2610)
* **mindmap:** fallback to device scope when entityId is null ([#2728](https://github.com/HankHuang0516/EClaw/issues/2728)) ([7572312](https://github.com/HankHuang0516/EClaw/commit/7572312433d3d75fc245eda48a28919ce14bd927))
* **i18n:** fill 11 missing zh keys post-[#2920](https://github.com/HankHuang0516/EClaw/issues/2920)/[#2921](https://github.com/HankHuang0516/EClaw/issues/2921) (card_de6970) ([#2924](https://github.com/HankHuang0516/EClaw/issues/2924)) ([17c4899](https://github.com/HankHuang0516/EClaw/commit/17c48996489b1444d6ed589027acfa7986178fe1)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** fill backend runtime locale gaps ([#2921](https://github.com/HankHuang0516/EClaw/issues/2921)) ([00d96ff](https://github.com/HankHuang0516/EClaw/commit/00d96ff261b8134b49292623e1f786fd544144cc))
* **i18n:** fill Spanish drift keys ([#2751](https://github.com/HankHuang0516/EClaw/issues/2751)) ([0ad0ee5](https://github.com/HankHuang0516/EClaw/commit/0ad0ee55f7fac3e6ac46d891539950dab4d553cc))
* **portal:** fit embedded org chart to mobile viewport ([#2674](https://github.com/HankHuang0516/EClaw/issues/2674)) ([1c4e1b4](https://github.com/HankHuang0516/EClaw/commit/1c4e1b413ea7027b4cd4b8ecda981b0d0e12e66b))
* **i18n:** fix 6 trailing-comma syntax errors in 10-locale batch ([#2771](https://github.com/HankHuang0516/EClaw/issues/2771)) ([b27c6ca](https://github.com/HankHuang0516/EClaw/commit/b27c6ca204bf813e406c54ce3a2532a5f1f031b3))
* **kanban:** GET card returns latest 50 comments + comments endpoint exposes total ([#2816](https://github.com/HankHuang0516/EClaw/issues/2816)) ([c4d83f7](https://github.com/HankHuang0516/EClaw/commit/c4d83f777a1cd26aea0936e4316aa35c52822eef))
* **sharechat:** guest verify-email modal + disabled Send for unverified ([#2865](https://github.com/HankHuang0516/EClaw/issues/2865)) ([cb3b061](https://github.com/HankHuang0516/EClaw/commit/cb3b0614e0f6160417d907753e66eceb2d666802))
* **uiux:** harden chat previews and roster preview ([#2769](https://github.com/HankHuang0516/EClaw/issues/2769)) ([466d4d3](https://github.com/HankHuang0516/EClaw/commit/466d4d3ef81c628d3f58db64323946053d7bf61c))
* **mention-parser:** ignore @-mentions inside markdown code spans ([#2645](https://github.com/HankHuang0516/EClaw/issues/2645)) ([8da19d4](https://github.com/HankHuang0516/EClaw/commit/8da19d4a79ceb4152bf2144ee0847c61ce3e1def)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **kanban:** lazy-load dependency chips via IntersectionObserver ([#2632](https://github.com/HankHuang0516/EClaw/issues/2632)) ([20586b4](https://github.com/HankHuang0516/EClaw/commit/20586b43357335f9eb6a190c02d58c8e36b58aba)), closes [#2631](https://github.com/HankHuang0516/EClaw/issues/2631)
* **i18n:** localize FCM NotificationChannel labels (card_ec8d3a22) ([#2918](https://github.com/HankHuang0516/EClaw/issues/2918)) ([591cd20](https://github.com/HankHuang0516/EClaw/commit/591cd206704693650a53d19d94c4cc75daf84ffd))
* **kanban:** make card sorting deterministic ([#2756](https://github.com/HankHuang0516/EClaw/issues/2756)) ([48e2117](https://github.com/HankHuang0516/EClaw/commit/48e2117b64e37f05dc635e0a3b67bfd43cbe48f5))
* **portal/nagoya-trip:** map-link invisible on dark hero/day-banner ([#2897](https://github.com/HankHuang0516/EClaw/issues/2897)) ([cc33df6](https://github.com/HankHuang0516/EClaw/commit/cc33df686673455c20beaee60871412a5d486e66)), closes [#1f4030](https://github.com/HankHuang0516/EClaw/issues/1f4030) [#8b8579](https://github.com/HankHuang0516/EClaw/issues/8b8579) [#6e6859](https://github.com/HankHuang0516/EClaw/issues/6e6859) [#7a5614](https://github.com/HankHuang0516/EClaw/issues/7a5614)
* **org-chart:** notify affected bots on hierarchy change ([#2812](https://github.com/HankHuang0516/EClaw/issues/2812)) ([55675fd](https://github.com/HankHuang0516/EClaw/commit/55675fdf4487494d729a29524b32bd81b756a00c)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** notify reviewer on manual /move → review ([#2753](https://github.com/HankHuang0516/EClaw/issues/2753)) ([6cbbb4e](https://github.com/HankHuang0516/EClaw/commit/6cbbb4ee8c0d4d8ad54df2e9b5faaa3699bd530f))
* **wallpaper:** off-load spritesheet fetch to IO so per-petdx sprites actually render ([#2618](https://github.com/HankHuang0516/EClaw/issues/2618)) ([61b832c](https://github.com/HankHuang0516/EClaw/commit/61b832c9fa8a1d0caab810ccc942d85c63349267)), closes [#2615](https://github.com/HankHuang0516/EClaw/issues/2615) [#2577](https://github.com/HankHuang0516/EClaw/issues/2577)
* **security:** patch P0 sanitize-html XSS + P1 protobufjs + exam.html XSS ([#2829](https://github.com/HankHuang0516/EClaw/issues/2829)) ([c71b871](https://github.com/HankHuang0516/EClaw/commit/c71b871a045887375dd0d26d1a3280a0891a89ad))
* **security:** patch ws uninitialized memory disclosure (GHSA-58qx-3vcg-4xpx) ([#2872](https://github.com/HankHuang0516/EClaw/issues/2872)) ([2523d15](https://github.com/HankHuang0516/EClaw/commit/2523d154bbe501a7cc086340f7a07ece3abfa69b))
* **portal:** petdx-browser cookie-session fallback for device-login ([#2757](https://github.com/HankHuang0516/EClaw/issues/2757)) ([ca275f4](https://github.com/HankHuang0516/EClaw/commit/ca275f4519835da0c7ad71c588908a18f6f138d8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **api:** platform-stats 500 + entity/lookup publicCode alias ([#2809](https://github.com/HankHuang0516/EClaw/issues/2809), [#2810](https://github.com/HankHuang0516/EClaw/issues/2810)) ([#2818](https://github.com/HankHuang0516/EClaw/issues/2818)) ([f99fd17](https://github.com/HankHuang0516/EClaw/commit/f99fd17b2b1c32d88daa2510ff66d714c1a53edc))
* **i18n:** positional format specifiers for feedback_result_logs (7 locales) ([#2597](https://github.com/HankHuang0516/EClaw/issues/2597)) ([21aedc7](https://github.com/HankHuang0516/EClaw/commit/21aedc7eebc7a2839e340136f38dfdfd4dabb9dc))
* **avatar-petdx:** preserve descriptor across transient API failures (flicker) ([#2625](https://github.com/HankHuang0516/EClaw/issues/2625)) ([7b1c606](https://github.com/HankHuang0516/EClaw/commit/7b1c606514f7698d72ec95cf6c556e4043966186))
* **chat:** preserve recipient selection across rental-health refresh (P0 #card_eb1cba76) ([#2906](https://github.com/HankHuang0516/EClaw/issues/2906)) ([9cc0301](https://github.com/HankHuang0516/EClaw/commit/9cc0301cc26a0f49af4b7f53486f5c1a7cdd7902)), closes [#card_eb1cba76](https://github.com/HankHuang0516/EClaw/issues/card_eb1cba76) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **chat:** preserve scroll anchor while reading history ([#2693](https://github.com/HankHuang0516/EClaw/issues/2693)) ([945fdb7](https://github.com/HankHuang0516/EClaw/commit/945fdb7192b791b31882e1e75568dd8b11e4686f))
* **promo:** pull video embed from /promo-chat-avatar.html ([#2724](https://github.com/HankHuang0516/EClaw/issues/2724)) ([2afabc8](https://github.com/HankHuang0516/EClaw/commit/2afabc8c5ff8b25218a7cb857e8adfa572c8e9d5))
* **dashboard:** read live.rate_limits.{five_hour,seven_day}.used_percentage ([#2895](https://github.com/HankHuang0516/EClaw/issues/2895)) ([8223303](https://github.com/HankHuang0516/EClaw/commit/822330312bccb1c76675ad2c3b26e78d10dd1298))
* **kanban:** realign stale recurring schedules ([#2785](https://github.com/HankHuang0516/EClaw/issues/2785)) ([ab8ee25](https://github.com/HankHuang0516/EClaw/commit/ab8ee250a9b37f3d3e838bb01d8866c8d2b78231))
* **i18n:** reapply de6970 locale gap translations ([#2925](https://github.com/HankHuang0516/EClaw/issues/2925)) ([d994dc1](https://github.com/HankHuang0516/EClaw/commit/d994dc1d240fef72326db2599262375ccbf29175))
* **portal:** reduce QA-discovered request fanout ([#2656](https://github.com/HankHuang0516/EClaw/issues/2656)) ([1e46d6b](https://github.com/HankHuang0516/EClaw/commit/1e46d6bab61e58c65b452b6503d953f8dddeee75))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **portal:** remove org chart fit scale floor ([#2676](https://github.com/HankHuang0516/EClaw/issues/2676)) ([0f01606](https://github.com/HankHuang0516/EClaw/commit/0f016068b963bb5f800a02f28817c7174979d913))
* **rental:** remove phantom 'webhook test push' step from BIND_COMPLETE ([#2864](https://github.com/HankHuang0516/EClaw/issues/2864)) ([47f4a3e](https://github.com/HankHuang0516/EClaw/commit/47f4a3edf76aa95ebd06d8713cd44fda6eef9b5d))
* **i18n:** rename mm_empty_title → mm_state_empty_title in mindmap.html ([#2683](https://github.com/HankHuang0516/EClaw/issues/2683)) ([c79c109](https://github.com/HankHuang0516/EClaw/commit/c79c109bea23142e8a6d9ace976d105af1280ec9))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **chat:** render mention avatars with companion renderer ([#2633](https://github.com/HankHuang0516/EClaw/issues/2633)) ([03e205f](https://github.com/HankHuang0516/EClaw/commit/03e205f663ecd2c2f443d4009dd5af0093f0bbbb))
* **kanban:** reserve mobile comments panel height ([#2782](https://github.com/HankHuang0516/EClaw/issues/2782)) ([ce8662d](https://github.com/HankHuang0516/EClaw/commit/ce8662d362422fdd25037f1deb61dbed9425e2f9))
* **channel:** restore handshake fallback to discovered sessions ([#2915](https://github.com/HankHuang0516/EClaw/issues/2915)) ([#2917](https://github.com/HankHuang0516/EClaw/issues/2917)) ([9d7d3a2](https://github.com/HankHuang0516/EClaw/commit/9d7d3a25654289998314dd5ca152cefdb8a4d64e)), closes [#2912](https://github.com/HankHuang0516/EClaw/issues/2912)
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* scheduled audit 2026-05-13 — 6 bugs, XSS, i18n ([#2668](https://github.com/HankHuang0516/EClaw/issues/2668)) ([21dd513](https://github.com/HankHuang0516/EClaw/commit/21dd513b4464738de29164265437435ba6cc4817)), closes [#2605](https://github.com/HankHuang0516/EClaw/issues/2605) [#2608](https://github.com/HankHuang0516/EClaw/issues/2608) [#2600](https://github.com/HankHuang0516/EClaw/issues/2600) [#2599](https://github.com/HankHuang0516/EClaw/issues/2599) [#2598](https://github.com/HankHuang0516/EClaw/issues/2598)
* **channel:** scope official bot sessions ([#2912](https://github.com/HankHuang0516/EClaw/issues/2912)) ([5c56b62](https://github.com/HankHuang0516/EClaw/commit/5c56b62c13b739b76f39e168a26bd4e5de2644fb))
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **dashboard:** show Claude weekly bar reset countdown ([#2896](https://github.com/HankHuang0516/EClaw/issues/2896)) ([3b87845](https://github.com/HankHuang0516/EClaw/commit/3b87845d713e980fec69f6b8007549338a326713)), closes [#2895](https://github.com/HankHuang0516/EClaw/issues/2895)
* **chat:** smart-chip preview falls back to inline c.comments when /comments fails (PR [#2677](https://github.com/HankHuang0516/EClaw/issues/2677)) ([7f4dffd](https://github.com/HankHuang0516/EClaw/commit/7f4dffd2c83ea86f296b8fa0610f0e67c9f1af11))
* **kanban:** stabilize comment detail viewport ([#2796](https://github.com/HankHuang0516/EClaw/issues/2796)) ([0a10aad](https://github.com/HankHuang0516/EClaw/commit/0a10aadb5a5b12ff23454c16d5c88183b94ad7d7))
* **wallpaper:** stop Android live wallpaper flashing default lobster on companion change ([#2629](https://github.com/HankHuang0516/EClaw/issues/2629)) ([8b4f66f](https://github.com/HankHuang0516/EClaw/commit/8b4f66fcb335bf43128f924b761b6337c817095b)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **chat:** stop chat.html bouncing to dashboard via /api/rental/health-status 401 race ([#2833](https://github.com/HankHuang0516/EClaw/issues/2833)) ([c422406](https://github.com/HankHuang0516/EClaw/commit/c4224067cdcfe7f3e22ab95007c7563dac4196ac))
* **openclaw-channel:** support OpenClaw 2026.5.20 ([8045de6](https://github.com/HankHuang0516/EClaw/commit/8045de6bebecfc05f9bd57453b99c098ca35681b))
* **mentions:** support same-device CJK display-name tags ([#2874](https://github.com/HankHuang0516/EClaw/issues/2874)) ([b8f61be](https://github.com/HankHuang0516/EClaw/commit/b8f61be9a3962fef75dd32ea34e8900880dafaf9))
* **channel:** suppress operational A2A loop messages (rebase of [#2288](https://github.com/HankHuang0516/EClaw/issues/2288)) ([#2930](https://github.com/HankHuang0516/EClaw/issues/2930)) ([7ceabc9](https://github.com/HankHuang0516/EClaw/commit/7ceabc915df22123cb46ae1500e2eb2e279250af))
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **dashboard:** use sessions[].project for widget Projects list (was .project_id) ([#2894](https://github.com/HankHuang0516/EClaw/issues/2894)) ([0fd1334](https://github.com/HankHuang0516/EClaw/commit/0fd1334897d4a603cc6eb74f34b48606547e09cf))
* **app:** WebView pages honor app-selected locale via ?lang= URL param ([#2672](https://github.com/HankHuang0516/EClaw/issues/2672)) ([8ed8757](https://github.com/HankHuang0516/EClaw/commit/8ed8757aec5bf214e837cc0d81bf2b23f1993a91)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **share-chat:** wire rich CTA actions to msgInput ([#2867](https://github.com/HankHuang0516/EClaw/issues/2867)) ([df23b11](https://github.com/HankHuang0516/EClaw/commit/df23b1147d34c59a644a145bbd87c18b96400acc))


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* **usage-api:** /api/usage/{snapshot,timeline} + usage_snapshots table (Plan B Phase 1) ([#2889](https://github.com/HankHuang0516/EClaw/issues/2889)) ([a0d859c](https://github.com/HankHuang0516/EClaw/commit/a0d859c63f0220909dadb2b1952174861ccdce14))
* **community:** 1-click chat button on bot cards + utm tagging ([#2610](https://github.com/HankHuang0516/EClaw/issues/2610)) ([eee97b0](https://github.com/HankHuang0516/EClaw/commit/eee97b0e2e4e74945ec24f218a69a52800b97a66))
* **chat:** accept ?messageId= as deep-link alias ([#2838](https://github.com/HankHuang0516/EClaw/issues/2838)) ([1785a87](https://github.com/HankHuang0516/EClaw/commit/1785a87310426637fd10df83754fb9924c45207f))
* **chat:** add avatar size preference ([#2714](https://github.com/HankHuang0516/EClaw/issues/2714)) ([6fe164a](https://github.com/HankHuang0516/EClaw/commit/6fe164ad8b22fa576d2dd9ad37c0d9fc295b5a83))
* **dashboard:** add Claude and Codex channel guides ([#2640](https://github.com/HankHuang0516/EClaw/issues/2640)) ([c64e4c4](https://github.com/HankHuang0516/EClaw/commit/c64e4c4afc78db58c5cd578f00486dd7b2fd3311))
* **dashboard:** add Claude Code channel guide card ([#2667](https://github.com/HankHuang0516/EClaw/issues/2667)) ([d70d75c](https://github.com/HankHuang0516/EClaw/commit/d70d75c0c8caa8a540358a9aab4556b8c1927a5c))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* **kanban:** add device-scoped card tags ([#2773](https://github.com/HankHuang0516/EClaw/issues/2773)) ([53a387e](https://github.com/HankHuang0516/EClaw/commit/53a387e67ba7bb4f6bed1c427000c4ae8666577a))
* **portal:** add entity selector to petdx-browser ([#2602](https://github.com/HankHuang0516/EClaw/issues/2602)) ([3fa067e](https://github.com/HankHuang0516/EClaw/commit/3fa067e00b38829b48a37cecd33ee81a9a1122d9))
* **kanban:** add explicit card links ([#2721](https://github.com/HankHuang0516/EClaw/issues/2721)) ([ef9f812](https://github.com/HankHuang0516/EClaw/commit/ef9f812a3fcf39efd07fd158ce90951bdd045ac7))
* **kanban:** add explicit done-card reopen flow ([#2801](https://github.com/HankHuang0516/EClaw/issues/2801)) ([5080aac](https://github.com/HankHuang0516/EClaw/commit/5080aacb75047c0deaa379ee708ec85465afd57c))
* **mindmap:** add GET /api/mindmap/graph force-graph projection ([#2680](https://github.com/HankHuang0516/EClaw/issues/2680)) ([a00b2e7](https://github.com/HankHuang0516/EClaw/commit/a00b2e775af2c4c98cd157f760ad87aeeee469f0)), closes [#2679](https://github.com/HankHuang0516/EClaw/issues/2679) [#2679](https://github.com/HankHuang0516/EClaw/issues/2679)
* **dashboard:** add Hermes channel promo card ([#2708](https://github.com/HankHuang0516/EClaw/issues/2708)) ([337aca1](https://github.com/HankHuang0516/EClaw/commit/337aca153d5a1cd7e888c065f00ae54db7872d91))
* **rental:** add listing soft pause ([#2781](https://github.com/HankHuang0516/EClaw/issues/2781)) ([6586b72](https://github.com/HankHuang0516/EClaw/commit/6586b72717ddb1637d91cd3242c8d2ff554f62b4))
* **portal:** add Nagoya 5D4N trip static cross-ref page ([#2689](https://github.com/HankHuang0516/EClaw/issues/2689)) ([2e0efb6](https://github.com/HankHuang0516/EClaw/commit/2e0efb6dcdaff52226cc8854a96747000b12bdff))
* **portal:** add Nagoya trip map links and image lightbox ([#2821](https://github.com/HankHuang0516/EClaw/issues/2821)) ([3e40955](https://github.com/HankHuang0516/EClaw/commit/3e40955650a05f45a6b9f7e39e73847705424a03))
* **portal/nagoya:** add parking shortcut buttons next to itinerary places ([#2826](https://github.com/HankHuang0516/EClaw/issues/2826)) ([63968c5](https://github.com/HankHuang0516/EClaw/commit/63968c554d046afc8d978de74e3aacbf7700500d))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **settings:** add rental roster management preview ([#2758](https://github.com/HankHuang0516/EClaw/issues/2758)) ([9706e59](https://github.com/HankHuang0516/EClaw/commit/9706e59ded140a90a6e02348124282bc69d89001))
* **rental:** add renter health chat indicator ([#2690](https://github.com/HankHuang0516/EClaw/issues/2690)) ([36cd2e9](https://github.com/HankHuang0516/EClaw/commit/36cd2e9802be4c7ebb03d3024617fa74aca48ffd))
* **ios:** add Tutorial & Intro entry in Settings ([#2800](https://github.com/HankHuang0516/EClaw/issues/2800)) ([ed83e51](https://github.com/HankHuang0516/EClaw/commit/ed83e51d043bf4cd5865f38dc95a91ed54820d6c))
* **landing:** add Watch Full Demo CTA below hero video ([#2799](https://github.com/HankHuang0516/EClaw/issues/2799)) ([66107c9](https://github.com/HankHuang0516/EClaw/commit/66107c954727551fd34d989a4674daaad9b63968))
* **footer:** add Watch Intro Video link in Info column ([#2798](https://github.com/HankHuang0516/EClaw/issues/2798)) ([d7c6d59](https://github.com/HankHuang0516/EClaw/commit/d7c6d596b69c6a5b257bf1f7a792a407ef9712ad))
* **i18n:** ar iter-2 — fill 623 missing keys against en source ([#2847](https://github.com/HankHuang0516/EClaw/issues/2847)) ([ee94a7a](https://github.com/HankHuang0516/EClaw/commit/ee94a7ae6812b5163efe4284ee4907ca32302f5c))
* **kanban:** backlog launch-gate flag to suppress L1/L2/L3 escalation ([#2855](https://github.com/HankHuang0516/EClaw/issues/2855)) ([cb8bf1b](https://github.com/HankHuang0516/EClaw/commit/cb8bf1bb6421f25214f65e129a8cadccc49cc266)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#4](https://github.com/HankHuang0516/EClaw/issues/4) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **companion:** bridge crafter-station/petdex gallery (1784 pets) ([#2601](https://github.com/HankHuang0516/EClaw/issues/2601)) ([2e245be](https://github.com/HankHuang0516/EClaw/commit/2e245bea6dd47ea7361b927d389188a3c23b6bb3))
* **promo:** chat avatar size feature landing page (self-hosted MP4) ([#2722](https://github.com/HankHuang0516/EClaw/issues/2722)) ([3852210](https://github.com/HankHuang0516/EClaw/commit/3852210d355704d018e3daca6b5f9512a011b210)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **kanban:** cron-spawn jitter + lane backpressure to prevent same-tick wedge ([#2791](https://github.com/HankHuang0516/EClaw/issues/2791)) ([9f414a7](https://github.com/HankHuang0516/EClaw/commit/9f414a731d6393672a0a4189c7b408c529ae5e12)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **portal:** dashboard usage widget — Claude/Codex 5h gauges + 24h chart (Plan B Phase 3) ([#2891](https://github.com/HankHuang0516/EClaw/issues/2891)) ([d18f373](https://github.com/HankHuang0516/EClaw/commit/d18f373857e4bd302437d6bda2a1e01871fbb1db))
* **portal:** dashboard usage widget v2 — Session/Weekly % bars + projects, no cost (Plan B Phase 3.1) ([#2893](https://github.com/HankHuang0516/EClaw/issues/2893)) ([4bc0dc7](https://github.com/HankHuang0516/EClaw/commit/4bc0dc744ed9d54dfd532ebac4b705c7f84ec0a6))
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **promo:** embed daily eclaw video 2026-05-14 ([#2786](https://github.com/HankHuang0516/EClaw/issues/2786)) ([718a814](https://github.com/HankHuang0516/EClaw/commit/718a814ab16850bc2b33a1b303841e2c4378ecfa)), closes [#2782](https://github.com/HankHuang0516/EClaw/issues/2782) [#2693](https://github.com/HankHuang0516/EClaw/issues/2693)
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **info:** embed promo video at top of Quick Start tab ([#2797](https://github.com/HankHuang0516/EClaw/issues/2797)) ([047679f](https://github.com/HankHuang0516/EClaw/commit/047679fd57ab9949eaeacea414d5611e71afe041))
* **rental:** enforce strict rebind refunds ([#2703](https://github.com/HankHuang0516/EClaw/issues/2703)) ([a1859c5](https://github.com/HankHuang0516/EClaw/commit/a1859c50e6fb3991d7a8051491502d824a14a116))
* **portal:** group task chip actions ([#2825](https://github.com/HankHuang0516/EClaw/issues/2825)) ([5db5c59](https://github.com/HankHuang0516/EClaw/commit/5db5c59b32b8635f1412205faf0c2f9164d3d5d4))
* **hermes:** H2 health-check cron + 7d SLA + commander alerts (card_07891ac) ([#2922](https://github.com/HankHuang0516/EClaw/issues/2922)) ([82b4315](https://github.com/HankHuang0516/EClaw/commit/82b4315aea234493e3d1889dc53958c2f1d842e0)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **portal:** info-guide-rules + info-guide-soul slide pair ([#2793](https://github.com/HankHuang0516/EClaw/issues/2793)) ([1c8bddc](https://github.com/HankHuang0516/EClaw/commit/1c8bddc4c185054b2b60088498e3d45509117127)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **chat:** link card previews to kanban ([#2754](https://github.com/HankHuang0516/EClaw/issues/2754)) ([2261240](https://github.com/HankHuang0516/EClaw/commit/22612402c2e95efb07246629e81a849be41ee9c7))
* **mission:** link notes to kanban cards ([#2723](https://github.com/HankHuang0516/EClaw/issues/2723)) ([b36dc18](https://github.com/HankHuang0516/EClaw/commit/b36dc18f3a8facf12e0b6046351c222f1e99dc55))
* **usage-daemon:** macOS launchd daemon polls Claude/Codex usage → POST /api/usage/snapshot (Plan B Phase 2) ([#2890](https://github.com/HankHuang0516/EClaw/issues/2890)) ([fd225e1](https://github.com/HankHuang0516/EClaw/commit/fd225e12d9491037be1a340bd63b54b5f3308c7f))
* **mindmap:** mission.html link to /portal/mindmap.html + deprecate /api/mission/mindmap ([#2685](https://github.com/HankHuang0516/EClaw/issues/2685)) ([11e297b](https://github.com/HankHuang0516/EClaw/commit/11e297bab1c9b56fcde3027d6500b7c58891bf18)), closes [#2680](https://github.com/HankHuang0516/EClaw/issues/2680) [#2684](https://github.com/HankHuang0516/EClaw/issues/2684)
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **portal:** nagoya trip interactive map (Leaflet + OSM, no API key) ([#2888](https://github.com/HankHuang0516/EClaw/issues/2888)) ([ecfdac0](https://github.com/HankHuang0516/EClaw/commit/ecfdac06348c12ee7c6872c6c28d5f82162e7aa9))
* **channel:** outbound backpressure (30/min cap + 429 retry-after) ([#2911](https://github.com/HankHuang0516/EClaw/issues/2911)) ([36dc99c](https://github.com/HankHuang0516/EClaw/commit/36dc99ca78b0e1724a2aaefb5936669077b7a28f))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **settings:** per-entity nudge override UI (Phase 2) ([#2837](https://github.com/HankHuang0516/EClaw/issues/2837)) ([ea7662b](https://github.com/HankHuang0516/EClaw/commit/ea7662b0858882dae461e1387f711895924f9ab8)), closes [3/#4](https://github.com/HankHuang0516/EClaw/issues/4)
* **kanban:** per-entity nudge overrides (Phase 2 of card_e066cb6b) ([#2836](https://github.com/HankHuang0516/EClaw/issues/2836)) ([0425f80](https://github.com/HankHuang0516/EClaw/commit/0425f80bc1169c0d506b665659c8676695c45553))
* **avatar:** petdx render on card-holder my-cards (Phase 1b) ([#2621](https://github.com/HankHuang0516/EClaw/issues/2621)) ([f78ba8b](https://github.com/HankHuang0516/EClaw/commit/f78ba8b18acc426936ab6d8a82ca7541effea00d))
* **avatar:** petdx render on dashboard entity grid / org chart / bindings (Phase 1b) ([#2622](https://github.com/HankHuang0516/EClaw/issues/2622)) ([f417749](https://github.com/HankHuang0516/EClaw/commit/f41774914451048e8cd76e9ae30416a0642e173b)), closes [#2620](https://github.com/HankHuang0516/EClaw/issues/2620) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621)
* **avatar:** petdx render on kanban auto-assign / pulse / comment avatars (Phase 1b) ([#2624](https://github.com/HankHuang0516/EClaw/issues/2624)) ([6bff5f8](https://github.com/HankHuang0516/EClaw/commit/6bff5f80440d0bd91a6b1721cde9478d685c4d46))
* **avatar:** petdx render on mission skill/rule/soul entity dialogs (Phase 1b) ([#2623](https://github.com/HankHuang0516/EClaw/issues/2623)) ([129327b](https://github.com/HankHuang0516/EClaw/commit/129327bc7b91056659f1ab7e8d5e3f5260d951fb))
* **mindmap:** portal/mindmap.html force-graph prototype ([#129](https://github.com/HankHuang0516/EClaw/issues/129)) ([#2681](https://github.com/HankHuang0516/EClaw/issues/2681)) ([0f15e69](https://github.com/HankHuang0516/EClaw/commit/0f15e6930f0697c37fa08f3219edb8f9e499837f)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **channel:** record delivery receipts ([#2913](https://github.com/HankHuang0516/EClaw/issues/2913)) ([90c671b](https://github.com/HankHuang0516/EClaw/commit/90c671bd1970ab51584b90e2b634484ec10cc7ae))
* **portal:** redo nagoya trip page in professional tour-guide style ([#2691](https://github.com/HankHuang0516/EClaw/issues/2691)) ([b2378c0](https://github.com/HankHuang0516/EClaw/commit/b2378c06ee20fa9cccfdceceb1a4c9e0b3072f59))
* **i18n:** remove ms+hi orphan keys from i18n.js ([#2849](https://github.com/HankHuang0516/EClaw/issues/2849)) ([320176c](https://github.com/HankHuang0516/EClaw/commit/320176c06a3cfd8631e2a82ad02a6bd6a9af0389))
* **avatar:** render selected petdx companion in chat avatars ([#2620](https://github.com/HankHuang0516/EClaw/issues/2620)) ([0bdd046](https://github.com/HankHuang0516/EClaw/commit/0bdd046fe1b1c428e32edda366ff112c08927f4c))
* **home:** replace native home with WebView hosting dashboard.html ([#2634](https://github.com/HankHuang0516/EClaw/issues/2634)) ([e69ea81](https://github.com/HankHuang0516/EClaw/commit/e69ea8160c239b083a83d6dc83a4f1c3f901c863))
* **app:** route chat mission jumps through native tabs ([#2824](https://github.com/HankHuang0516/EClaw/issues/2824)) ([deb07b6](https://github.com/HankHuang0516/EClaw/commit/deb07b69a9ecca632fe27278de537f1d85234e94))
* **proxy:** scope private repo git auth ([#2926](https://github.com/HankHuang0516/EClaw/issues/2926)) ([246f7ff](https://github.com/HankHuang0516/EClaw/commit/246f7ff1dedaf7bece9e3cb9eb24d0ab32ebb393))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **chat:** support message deep links ([#2719](https://github.com/HankHuang0516/EClaw/issues/2719)) ([2dc0f1e](https://github.com/HankHuang0516/EClaw/commit/2dc0f1eeb259e1a0848db4a03186b989372cd91c))
* **mission:** support note deep links ([#2717](https://github.com/HankHuang0516/EClaw/issues/2717)) ([2efd3a5](https://github.com/HankHuang0516/EClaw/commit/2efd3a5e741217a07c0b0ac54a0ddd010e0ebe23))
* **share-chat:** twitter card + per-bot og:image/twitter:* in SSR ([#2609](https://github.com/HankHuang0516/EClaw/issues/2609)) ([6cdc853](https://github.com/HankHuang0516/EClaw/commit/6cdc853dc884cdb95bd47214942768981f218ae0))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))
* **settings:** wire petdx avatar into channel-account chips ([#2626](https://github.com/HankHuang0516/EClaw/issues/2626)) ([88aec77](https://github.com/HankHuang0516/EClaw/commit/88aec772628c240e97b336bb5820892ad632d1ae))
* **files:** wire petdx avatar into entity filter & per-file badges ([#2627](https://github.com/HankHuang0516/EClaw/issues/2627)) ([5b3e5cc](https://github.com/HankHuang0516/EClaw/commit/5b3e5cc542d9da69bb4e92500fd03a542ea33f00))
* **mindmap:** wrap hardcoded zh-TW UI strings with i18n t() ([#2607](https://github.com/HankHuang0516/EClaw/issues/2607)) ([166af87](https://github.com/HankHuang0516/EClaw/commit/166af8772b2121a24aaf34a83b3de970e9b3b571)), closes [#2606](https://github.com/HankHuang0516/EClaw/issues/2606)
* **i18n:** zh-TW backfill 8 keys (soft-pause + chat + invite + wallet) ([#2815](https://github.com/HankHuang0516/EClaw/issues/2815)) ([a2dd574](https://github.com/HankHuang0516/EClaw/commit/a2dd5743ce8d43a4b6ace9a2fd4b52568180d6c5))


### Performance Improvements

* **mindmap:** force-graph hardening for 1000/2000-node graphs ([#2684](https://github.com/HankHuang0516/EClaw/issues/2684)) ([da8b1c8](https://github.com/HankHuang0516/EClaw/commit/da8b1c8f947ab8bc8fa455c1962a91146623a1fc))


### Reverts

* Revert "feat(telegram): long-poll adapter PoC (card_406e612942ff062a06fc47be) ([#2238](https://github.com/HankHuang0516/EClaw/issues/2238))" ([#2239](https://github.com/HankHuang0516/EClaw/issues/2239)) ([eb7aa92](https://github.com/HankHuang0516/EClaw/commit/eb7aa92cce454b4a1a22654a2d133cdebe78c2bd))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-25)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **notifications:** add kanban_done + kanban_done_auto toggles to Android Settings ([#2636](https://github.com/HankHuang0516/EClaw/issues/2636)) ([a710909](https://github.com/HankHuang0516/EClaw/commit/a7109095e3393b8564e7ef1b23d382a4fbb944b8))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **api:** align /api/platform-stats skill-doc with device-auth contract (card_49b8190) ([#2916](https://github.com/HankHuang0516/EClaw/issues/2916)) ([ee55b2f](https://github.com/HankHuang0516/EClaw/commit/ee55b2fdbfbcd4bead5501d16ee66339056c32d7))
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **i18n:** ar block — fix 27 broken entries (CJK leaks + truncated HTML) ([#2851](https://github.com/HankHuang0516/EClaw/issues/2851)) ([5b19175](https://github.com/HankHuang0516/EClaw/commit/5b19175d712d00d16fcec00b749035c4beae7a5c))
* **chat:** atomic-load target bar (await contacts before first render) ([#2831](https://github.com/HankHuang0516/EClaw/issues/2831)) ([5f529e6](https://github.com/HankHuang0516/EClaw/commit/5f529e6b772eacc38ba1de69b44258a05f0d816a)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2](https://github.com/HankHuang0516/EClaw/issues/2)
* **channel:** await binding persistence ([712516d](https://github.com/HankHuang0516/EClaw/commit/712516decafb745035bd1434a28cc1973d433e19))
* **rental:** bump handshake timeout to 60s + timeout-aware discovery fallback ([#2863](https://github.com/HankHuang0516/EClaw/issues/2863)) ([fd4322f](https://github.com/HankHuang0516/EClaw/commit/fd4322f8890f3c2dfca3acdae6a4b95f19c381f9)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **i18n:** clear batch 1 residual missing keys ([#2790](https://github.com/HankHuang0516/EClaw/issues/2790)) ([211030e](https://github.com/HankHuang0516/EClaw/commit/211030e0b0b6a865c11f0c4ed60dc4e356d43b7a))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **kanban:** comment input no longer overlaps last comment in card detail (PR [#2678](https://github.com/HankHuang0516/EClaw/issues/2678)) ([fba91fc](https://github.com/HankHuang0516/EClaw/commit/fba91fca15402b453a0db5ee857c0b16e6087055))
* **chat:** compact 20px avatar in target bar (App WebView only shows [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2](https://github.com/HankHuang0516/EClaw/issues/2)) ([#2830](https://github.com/HankHuang0516/EClaw/issues/2830)) ([42c7543](https://github.com/HankHuang0516/EClaw/commit/42c7543b4a78a7abf3f5f7535eb9bc6142cd0fe2)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **portal:** complete 401 redirect sweep + mobile UIUX truncation ([#2842](https://github.com/HankHuang0516/EClaw/issues/2842)) ([f9799ba](https://github.com/HankHuang0516/EClaw/commit/f9799ba42498b109f0a8a70e80836aa6da51e216)), closes [#2833](https://github.com/HankHuang0516/EClaw/issues/2833) [#2845](https://github.com/HankHuang0516/EClaw/issues/2845) [#2844](https://github.com/HankHuang0516/EClaw/issues/2844) [#2843](https://github.com/HankHuang0516/EClaw/issues/2843)
* **uiux:** continue qa mobile readability sweep ([#2854](https://github.com/HankHuang0516/EClaw/issues/2854)) ([57606ff](https://github.com/HankHuang0516/EClaw/commit/57606ffe3e543b07a026aacc53c4b470c9a7825b))
* **i18n:** cover dynamic portal wrapper keys ([#2807](https://github.com/HankHuang0516/EClaw/issues/2807)) ([4c711cc](https://github.com/HankHuang0516/EClaw/commit/4c711cc4009300ffe4e8933a98ee01cd0fdd6aeb))
* **i18n:** dedup 20 dash_channel_card_* keys in es block ([#2876](https://github.com/HankHuang0516/EClaw/issues/2876)) ([807284c](https://github.com/HankHuang0516/EClaw/commit/807284ce363ef119ccdb0ae40e5ce99d3f0a27e0))
* **i18n:** dedupe backend locale keys via AST ([#2920](https://github.com/HankHuang0516/EClaw/issues/2920)) ([40ef114](https://github.com/HankHuang0516/EClaw/commit/40ef11414c8b836fe1ed93ec06c839df3a1bf7b9))
* **i18n:** dedupe zh locale keys ([#2919](https://github.com/HankHuang0516/EClaw/issues/2919)) ([afd2cca](https://github.com/HankHuang0516/EClaw/commit/afd2cca8086c2f2df0d04c9c5f8c58733652875e))
* **kanban:** dep-aware nudge gating + roadmap dependency backfill ([#2904](https://github.com/HankHuang0516/EClaw/issues/2904)) ([2b76ac9](https://github.com/HankHuang0516/EClaw/commit/2b76ac9d3b7e4169b7bc3c6f6b0b0903b63cd9f7)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **rental:** don't pollute entity.message on push gateway timeout ([#2860](https://github.com/HankHuang0516/EClaw/issues/2860)) ([592ba44](https://github.com/HankHuang0516/EClaw/commit/592ba44f57536ee00011b6cbddaa6b129a7cbae9))
* **petdx:** drop dark-grey loading placeholder + preload sprite WEBP ([#2628](https://github.com/HankHuang0516/EClaw/issues/2628)) ([59cef38](https://github.com/HankHuang0516/EClaw/commit/59cef387bd69ca99d7d15c86a1364856d3849ad8)), closes [#1a1a1a](https://github.com/HankHuang0516/EClaw/issues/1a1a1a)
* **gateway-ws:** drop Origin header on server-to-server WS upgrade ([#2869](https://github.com/HankHuang0516/EClaw/issues/2869)) ([716dcf9](https://github.com/HankHuang0516/EClaw/commit/716dcf9d0834b17522bb9d894bad84bc142d1a19))
* **setup-scripts:** drop Origin header on server-to-server WS upgrade ([#2875](https://github.com/HankHuang0516/EClaw/issues/2875)) ([9d893b8](https://github.com/HankHuang0516/EClaw/commit/9d893b8e5eea4db275e450bf423903c156cd3e4b)), closes [#2869](https://github.com/HankHuang0516/EClaw/issues/2869)
* **security:** escape innerHTML in chat modal error messages ([#2819](https://github.com/HankHuang0516/EClaw/issues/2819)) ([dce07ad](https://github.com/HankHuang0516/EClaw/commit/dce07adde64795916dba977ae23e46f3371ce7ed)), closes [#2809](https://github.com/HankHuang0516/EClaw/issues/2809) [#2810](https://github.com/HankHuang0516/EClaw/issues/2810) [#2809](https://github.com/HankHuang0516/EClaw/issues/2809) [#2810](https://github.com/HankHuang0516/EClaw/issues/2810)
* **proxy:** export repo auth to CLI child ([#2928](https://github.com/HankHuang0516/EClaw/issues/2928)) ([336a8ca](https://github.com/HankHuang0516/EClaw/commit/336a8caff4e3663287bd2948cf9fe6e04125cbc8))
* **entities:** expose botSecret to owner so wallpaper service can poll companions ([#2615](https://github.com/HankHuang0516/EClaw/issues/2615)) ([04470fc](https://github.com/HankHuang0516/EClaw/commit/04470fce8f8c3fce2b1ba8b243e776606f107502))
* **rental:** expose owner_public_code in marketplace so plaza CTA can route ([#2616](https://github.com/HankHuang0516/EClaw/issues/2616)) ([4d1372f](https://github.com/HankHuang0516/EClaw/commit/4d1372f717d93cab65543e87c852e74e9fb67071)), closes [#2610](https://github.com/HankHuang0516/EClaw/issues/2610)
* **mindmap:** fallback to device scope when entityId is null ([#2728](https://github.com/HankHuang0516/EClaw/issues/2728)) ([7572312](https://github.com/HankHuang0516/EClaw/commit/7572312433d3d75fc245eda48a28919ce14bd927))
* **i18n:** fill 11 missing zh keys post-[#2920](https://github.com/HankHuang0516/EClaw/issues/2920)/[#2921](https://github.com/HankHuang0516/EClaw/issues/2921) (card_de6970) ([#2924](https://github.com/HankHuang0516/EClaw/issues/2924)) ([17c4899](https://github.com/HankHuang0516/EClaw/commit/17c48996489b1444d6ed589027acfa7986178fe1)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** fill backend runtime locale gaps ([#2921](https://github.com/HankHuang0516/EClaw/issues/2921)) ([00d96ff](https://github.com/HankHuang0516/EClaw/commit/00d96ff261b8134b49292623e1f786fd544144cc))
* **i18n:** fill Spanish drift keys ([#2751](https://github.com/HankHuang0516/EClaw/issues/2751)) ([0ad0ee5](https://github.com/HankHuang0516/EClaw/commit/0ad0ee55f7fac3e6ac46d891539950dab4d553cc))
* **portal:** fit embedded org chart to mobile viewport ([#2674](https://github.com/HankHuang0516/EClaw/issues/2674)) ([1c4e1b4](https://github.com/HankHuang0516/EClaw/commit/1c4e1b413ea7027b4cd4b8ecda981b0d0e12e66b))
* **i18n:** fix 6 trailing-comma syntax errors in 10-locale batch ([#2771](https://github.com/HankHuang0516/EClaw/issues/2771)) ([b27c6ca](https://github.com/HankHuang0516/EClaw/commit/b27c6ca204bf813e406c54ce3a2532a5f1f031b3))
* **kanban:** GET card returns latest 50 comments + comments endpoint exposes total ([#2816](https://github.com/HankHuang0516/EClaw/issues/2816)) ([c4d83f7](https://github.com/HankHuang0516/EClaw/commit/c4d83f777a1cd26aea0936e4316aa35c52822eef))
* **sharechat:** guest verify-email modal + disabled Send for unverified ([#2865](https://github.com/HankHuang0516/EClaw/issues/2865)) ([cb3b061](https://github.com/HankHuang0516/EClaw/commit/cb3b0614e0f6160417d907753e66eceb2d666802))
* **uiux:** harden chat previews and roster preview ([#2769](https://github.com/HankHuang0516/EClaw/issues/2769)) ([466d4d3](https://github.com/HankHuang0516/EClaw/commit/466d4d3ef81c628d3f58db64323946053d7bf61c))
* **mention-parser:** ignore @-mentions inside markdown code spans ([#2645](https://github.com/HankHuang0516/EClaw/issues/2645)) ([8da19d4](https://github.com/HankHuang0516/EClaw/commit/8da19d4a79ceb4152bf2144ee0847c61ce3e1def)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **kanban:** lazy-load dependency chips via IntersectionObserver ([#2632](https://github.com/HankHuang0516/EClaw/issues/2632)) ([20586b4](https://github.com/HankHuang0516/EClaw/commit/20586b43357335f9eb6a190c02d58c8e36b58aba)), closes [#2631](https://github.com/HankHuang0516/EClaw/issues/2631)
* **i18n:** localize FCM NotificationChannel labels (card_ec8d3a22) ([#2918](https://github.com/HankHuang0516/EClaw/issues/2918)) ([591cd20](https://github.com/HankHuang0516/EClaw/commit/591cd206704693650a53d19d94c4cc75daf84ffd))
* **kanban:** make card sorting deterministic ([#2756](https://github.com/HankHuang0516/EClaw/issues/2756)) ([48e2117](https://github.com/HankHuang0516/EClaw/commit/48e2117b64e37f05dc635e0a3b67bfd43cbe48f5))
* **portal/nagoya-trip:** map-link invisible on dark hero/day-banner ([#2897](https://github.com/HankHuang0516/EClaw/issues/2897)) ([cc33df6](https://github.com/HankHuang0516/EClaw/commit/cc33df686673455c20beaee60871412a5d486e66)), closes [#1f4030](https://github.com/HankHuang0516/EClaw/issues/1f4030) [#8b8579](https://github.com/HankHuang0516/EClaw/issues/8b8579) [#6e6859](https://github.com/HankHuang0516/EClaw/issues/6e6859) [#7a5614](https://github.com/HankHuang0516/EClaw/issues/7a5614)
* **org-chart:** notify affected bots on hierarchy change ([#2812](https://github.com/HankHuang0516/EClaw/issues/2812)) ([55675fd](https://github.com/HankHuang0516/EClaw/commit/55675fdf4487494d729a29524b32bd81b756a00c)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** notify reviewer on manual /move → review ([#2753](https://github.com/HankHuang0516/EClaw/issues/2753)) ([6cbbb4e](https://github.com/HankHuang0516/EClaw/commit/6cbbb4ee8c0d4d8ad54df2e9b5faaa3699bd530f))
* **wallpaper:** off-load spritesheet fetch to IO so per-petdx sprites actually render ([#2618](https://github.com/HankHuang0516/EClaw/issues/2618)) ([61b832c](https://github.com/HankHuang0516/EClaw/commit/61b832c9fa8a1d0caab810ccc942d85c63349267)), closes [#2615](https://github.com/HankHuang0516/EClaw/issues/2615) [#2577](https://github.com/HankHuang0516/EClaw/issues/2577)
* **security:** patch P0 sanitize-html XSS + P1 protobufjs + exam.html XSS ([#2829](https://github.com/HankHuang0516/EClaw/issues/2829)) ([c71b871](https://github.com/HankHuang0516/EClaw/commit/c71b871a045887375dd0d26d1a3280a0891a89ad))
* **security:** patch ws uninitialized memory disclosure (GHSA-58qx-3vcg-4xpx) ([#2872](https://github.com/HankHuang0516/EClaw/issues/2872)) ([2523d15](https://github.com/HankHuang0516/EClaw/commit/2523d154bbe501a7cc086340f7a07ece3abfa69b))
* **portal:** petdx-browser cookie-session fallback for device-login ([#2757](https://github.com/HankHuang0516/EClaw/issues/2757)) ([ca275f4](https://github.com/HankHuang0516/EClaw/commit/ca275f4519835da0c7ad71c588908a18f6f138d8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **api:** platform-stats 500 + entity/lookup publicCode alias ([#2809](https://github.com/HankHuang0516/EClaw/issues/2809), [#2810](https://github.com/HankHuang0516/EClaw/issues/2810)) ([#2818](https://github.com/HankHuang0516/EClaw/issues/2818)) ([f99fd17](https://github.com/HankHuang0516/EClaw/commit/f99fd17b2b1c32d88daa2510ff66d714c1a53edc))
* **i18n:** positional format specifiers for feedback_result_logs (7 locales) ([#2597](https://github.com/HankHuang0516/EClaw/issues/2597)) ([21aedc7](https://github.com/HankHuang0516/EClaw/commit/21aedc7eebc7a2839e340136f38dfdfd4dabb9dc))
* **avatar-petdx:** preserve descriptor across transient API failures (flicker) ([#2625](https://github.com/HankHuang0516/EClaw/issues/2625)) ([7b1c606](https://github.com/HankHuang0516/EClaw/commit/7b1c606514f7698d72ec95cf6c556e4043966186))
* **chat:** preserve recipient selection across rental-health refresh (P0 #card_eb1cba76) ([#2906](https://github.com/HankHuang0516/EClaw/issues/2906)) ([9cc0301](https://github.com/HankHuang0516/EClaw/commit/9cc0301cc26a0f49af4b7f53486f5c1a7cdd7902)), closes [#card_eb1cba76](https://github.com/HankHuang0516/EClaw/issues/card_eb1cba76) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **chat:** preserve scroll anchor while reading history ([#2693](https://github.com/HankHuang0516/EClaw/issues/2693)) ([945fdb7](https://github.com/HankHuang0516/EClaw/commit/945fdb7192b791b31882e1e75568dd8b11e4686f))
* **promo:** pull video embed from /promo-chat-avatar.html ([#2724](https://github.com/HankHuang0516/EClaw/issues/2724)) ([2afabc8](https://github.com/HankHuang0516/EClaw/commit/2afabc8c5ff8b25218a7cb857e8adfa572c8e9d5))
* **dashboard:** read live.rate_limits.{five_hour,seven_day}.used_percentage ([#2895](https://github.com/HankHuang0516/EClaw/issues/2895)) ([8223303](https://github.com/HankHuang0516/EClaw/commit/822330312bccb1c76675ad2c3b26e78d10dd1298))
* **kanban:** realign stale recurring schedules ([#2785](https://github.com/HankHuang0516/EClaw/issues/2785)) ([ab8ee25](https://github.com/HankHuang0516/EClaw/commit/ab8ee250a9b37f3d3e838bb01d8866c8d2b78231))
* **i18n:** reapply de6970 locale gap translations ([#2925](https://github.com/HankHuang0516/EClaw/issues/2925)) ([d994dc1](https://github.com/HankHuang0516/EClaw/commit/d994dc1d240fef72326db2599262375ccbf29175))
* **portal:** reduce QA-discovered request fanout ([#2656](https://github.com/HankHuang0516/EClaw/issues/2656)) ([1e46d6b](https://github.com/HankHuang0516/EClaw/commit/1e46d6bab61e58c65b452b6503d953f8dddeee75))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **portal:** remove org chart fit scale floor ([#2676](https://github.com/HankHuang0516/EClaw/issues/2676)) ([0f01606](https://github.com/HankHuang0516/EClaw/commit/0f016068b963bb5f800a02f28817c7174979d913))
* **rental:** remove phantom 'webhook test push' step from BIND_COMPLETE ([#2864](https://github.com/HankHuang0516/EClaw/issues/2864)) ([47f4a3e](https://github.com/HankHuang0516/EClaw/commit/47f4a3edf76aa95ebd06d8713cd44fda6eef9b5d))
* **i18n:** rename mm_empty_title → mm_state_empty_title in mindmap.html ([#2683](https://github.com/HankHuang0516/EClaw/issues/2683)) ([c79c109](https://github.com/HankHuang0516/EClaw/commit/c79c109bea23142e8a6d9ace976d105af1280ec9))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **chat:** render mention avatars with companion renderer ([#2633](https://github.com/HankHuang0516/EClaw/issues/2633)) ([03e205f](https://github.com/HankHuang0516/EClaw/commit/03e205f663ecd2c2f443d4009dd5af0093f0bbbb))
* **kanban:** reserve mobile comments panel height ([#2782](https://github.com/HankHuang0516/EClaw/issues/2782)) ([ce8662d](https://github.com/HankHuang0516/EClaw/commit/ce8662d362422fdd25037f1deb61dbed9425e2f9))
* **channel:** restore handshake fallback to discovered sessions ([#2915](https://github.com/HankHuang0516/EClaw/issues/2915)) ([#2917](https://github.com/HankHuang0516/EClaw/issues/2917)) ([9d7d3a2](https://github.com/HankHuang0516/EClaw/commit/9d7d3a25654289998314dd5ca152cefdb8a4d64e)), closes [#2912](https://github.com/HankHuang0516/EClaw/issues/2912)
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* scheduled audit 2026-05-13 — 6 bugs, XSS, i18n ([#2668](https://github.com/HankHuang0516/EClaw/issues/2668)) ([21dd513](https://github.com/HankHuang0516/EClaw/commit/21dd513b4464738de29164265437435ba6cc4817)), closes [#2605](https://github.com/HankHuang0516/EClaw/issues/2605) [#2608](https://github.com/HankHuang0516/EClaw/issues/2608) [#2600](https://github.com/HankHuang0516/EClaw/issues/2600) [#2599](https://github.com/HankHuang0516/EClaw/issues/2599) [#2598](https://github.com/HankHuang0516/EClaw/issues/2598)
* **channel:** scope official bot sessions ([#2912](https://github.com/HankHuang0516/EClaw/issues/2912)) ([5c56b62](https://github.com/HankHuang0516/EClaw/commit/5c56b62c13b739b76f39e168a26bd4e5de2644fb))
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **dashboard:** show Claude weekly bar reset countdown ([#2896](https://github.com/HankHuang0516/EClaw/issues/2896)) ([3b87845](https://github.com/HankHuang0516/EClaw/commit/3b87845d713e980fec69f6b8007549338a326713)), closes [#2895](https://github.com/HankHuang0516/EClaw/issues/2895)
* **chat:** smart-chip preview falls back to inline c.comments when /comments fails (PR [#2677](https://github.com/HankHuang0516/EClaw/issues/2677)) ([7f4dffd](https://github.com/HankHuang0516/EClaw/commit/7f4dffd2c83ea86f296b8fa0610f0e67c9f1af11))
* **kanban:** stabilize comment detail viewport ([#2796](https://github.com/HankHuang0516/EClaw/issues/2796)) ([0a10aad](https://github.com/HankHuang0516/EClaw/commit/0a10aadb5a5b12ff23454c16d5c88183b94ad7d7))
* **wallpaper:** stop Android live wallpaper flashing default lobster on companion change ([#2629](https://github.com/HankHuang0516/EClaw/issues/2629)) ([8b4f66f](https://github.com/HankHuang0516/EClaw/commit/8b4f66fcb335bf43128f924b761b6337c817095b)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **chat:** stop chat.html bouncing to dashboard via /api/rental/health-status 401 race ([#2833](https://github.com/HankHuang0516/EClaw/issues/2833)) ([c422406](https://github.com/HankHuang0516/EClaw/commit/c4224067cdcfe7f3e22ab95007c7563dac4196ac))
* **openclaw-channel:** support OpenClaw 2026.5.20 ([8045de6](https://github.com/HankHuang0516/EClaw/commit/8045de6bebecfc05f9bd57453b99c098ca35681b))
* **mentions:** support same-device CJK display-name tags ([#2874](https://github.com/HankHuang0516/EClaw/issues/2874)) ([b8f61be](https://github.com/HankHuang0516/EClaw/commit/b8f61be9a3962fef75dd32ea34e8900880dafaf9))
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **dashboard:** use sessions[].project for widget Projects list (was .project_id) ([#2894](https://github.com/HankHuang0516/EClaw/issues/2894)) ([0fd1334](https://github.com/HankHuang0516/EClaw/commit/0fd1334897d4a603cc6eb74f34b48606547e09cf))
* **app:** WebView pages honor app-selected locale via ?lang= URL param ([#2672](https://github.com/HankHuang0516/EClaw/issues/2672)) ([8ed8757](https://github.com/HankHuang0516/EClaw/commit/8ed8757aec5bf214e837cc0d81bf2b23f1993a91)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **share-chat:** wire rich CTA actions to msgInput ([#2867](https://github.com/HankHuang0516/EClaw/issues/2867)) ([df23b11](https://github.com/HankHuang0516/EClaw/commit/df23b1147d34c59a644a145bbd87c18b96400acc))


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* **usage-api:** /api/usage/{snapshot,timeline} + usage_snapshots table (Plan B Phase 1) ([#2889](https://github.com/HankHuang0516/EClaw/issues/2889)) ([a0d859c](https://github.com/HankHuang0516/EClaw/commit/a0d859c63f0220909dadb2b1952174861ccdce14))
* **community:** 1-click chat button on bot cards + utm tagging ([#2610](https://github.com/HankHuang0516/EClaw/issues/2610)) ([eee97b0](https://github.com/HankHuang0516/EClaw/commit/eee97b0e2e4e74945ec24f218a69a52800b97a66))
* **chat:** accept ?messageId= as deep-link alias ([#2838](https://github.com/HankHuang0516/EClaw/issues/2838)) ([1785a87](https://github.com/HankHuang0516/EClaw/commit/1785a87310426637fd10df83754fb9924c45207f))
* **chat:** add avatar size preference ([#2714](https://github.com/HankHuang0516/EClaw/issues/2714)) ([6fe164a](https://github.com/HankHuang0516/EClaw/commit/6fe164ad8b22fa576d2dd9ad37c0d9fc295b5a83))
* **dashboard:** add Claude and Codex channel guides ([#2640](https://github.com/HankHuang0516/EClaw/issues/2640)) ([c64e4c4](https://github.com/HankHuang0516/EClaw/commit/c64e4c4afc78db58c5cd578f00486dd7b2fd3311))
* **dashboard:** add Claude Code channel guide card ([#2667](https://github.com/HankHuang0516/EClaw/issues/2667)) ([d70d75c](https://github.com/HankHuang0516/EClaw/commit/d70d75c0c8caa8a540358a9aab4556b8c1927a5c))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* **kanban:** add device-scoped card tags ([#2773](https://github.com/HankHuang0516/EClaw/issues/2773)) ([53a387e](https://github.com/HankHuang0516/EClaw/commit/53a387e67ba7bb4f6bed1c427000c4ae8666577a))
* **portal:** add entity selector to petdx-browser ([#2602](https://github.com/HankHuang0516/EClaw/issues/2602)) ([3fa067e](https://github.com/HankHuang0516/EClaw/commit/3fa067e00b38829b48a37cecd33ee81a9a1122d9))
* **kanban:** add explicit card links ([#2721](https://github.com/HankHuang0516/EClaw/issues/2721)) ([ef9f812](https://github.com/HankHuang0516/EClaw/commit/ef9f812a3fcf39efd07fd158ce90951bdd045ac7))
* **kanban:** add explicit done-card reopen flow ([#2801](https://github.com/HankHuang0516/EClaw/issues/2801)) ([5080aac](https://github.com/HankHuang0516/EClaw/commit/5080aacb75047c0deaa379ee708ec85465afd57c))
* **mindmap:** add GET /api/mindmap/graph force-graph projection ([#2680](https://github.com/HankHuang0516/EClaw/issues/2680)) ([a00b2e7](https://github.com/HankHuang0516/EClaw/commit/a00b2e775af2c4c98cd157f760ad87aeeee469f0)), closes [#2679](https://github.com/HankHuang0516/EClaw/issues/2679) [#2679](https://github.com/HankHuang0516/EClaw/issues/2679)
* **dashboard:** add Hermes channel promo card ([#2708](https://github.com/HankHuang0516/EClaw/issues/2708)) ([337aca1](https://github.com/HankHuang0516/EClaw/commit/337aca153d5a1cd7e888c065f00ae54db7872d91))
* **rental:** add listing soft pause ([#2781](https://github.com/HankHuang0516/EClaw/issues/2781)) ([6586b72](https://github.com/HankHuang0516/EClaw/commit/6586b72717ddb1637d91cd3242c8d2ff554f62b4))
* **portal:** add Nagoya 5D4N trip static cross-ref page ([#2689](https://github.com/HankHuang0516/EClaw/issues/2689)) ([2e0efb6](https://github.com/HankHuang0516/EClaw/commit/2e0efb6dcdaff52226cc8854a96747000b12bdff))
* **portal:** add Nagoya trip map links and image lightbox ([#2821](https://github.com/HankHuang0516/EClaw/issues/2821)) ([3e40955](https://github.com/HankHuang0516/EClaw/commit/3e40955650a05f45a6b9f7e39e73847705424a03))
* **portal/nagoya:** add parking shortcut buttons next to itinerary places ([#2826](https://github.com/HankHuang0516/EClaw/issues/2826)) ([63968c5](https://github.com/HankHuang0516/EClaw/commit/63968c554d046afc8d978de74e3aacbf7700500d))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **settings:** add rental roster management preview ([#2758](https://github.com/HankHuang0516/EClaw/issues/2758)) ([9706e59](https://github.com/HankHuang0516/EClaw/commit/9706e59ded140a90a6e02348124282bc69d89001))
* **rental:** add renter health chat indicator ([#2690](https://github.com/HankHuang0516/EClaw/issues/2690)) ([36cd2e9](https://github.com/HankHuang0516/EClaw/commit/36cd2e9802be4c7ebb03d3024617fa74aca48ffd))
* **ios:** add Tutorial & Intro entry in Settings ([#2800](https://github.com/HankHuang0516/EClaw/issues/2800)) ([ed83e51](https://github.com/HankHuang0516/EClaw/commit/ed83e51d043bf4cd5865f38dc95a91ed54820d6c))
* **landing:** add Watch Full Demo CTA below hero video ([#2799](https://github.com/HankHuang0516/EClaw/issues/2799)) ([66107c9](https://github.com/HankHuang0516/EClaw/commit/66107c954727551fd34d989a4674daaad9b63968))
* **footer:** add Watch Intro Video link in Info column ([#2798](https://github.com/HankHuang0516/EClaw/issues/2798)) ([d7c6d59](https://github.com/HankHuang0516/EClaw/commit/d7c6d596b69c6a5b257bf1f7a792a407ef9712ad))
* **i18n:** ar iter-2 — fill 623 missing keys against en source ([#2847](https://github.com/HankHuang0516/EClaw/issues/2847)) ([ee94a7a](https://github.com/HankHuang0516/EClaw/commit/ee94a7ae6812b5163efe4284ee4907ca32302f5c))
* **kanban:** backlog launch-gate flag to suppress L1/L2/L3 escalation ([#2855](https://github.com/HankHuang0516/EClaw/issues/2855)) ([cb8bf1b](https://github.com/HankHuang0516/EClaw/commit/cb8bf1bb6421f25214f65e129a8cadccc49cc266)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#4](https://github.com/HankHuang0516/EClaw/issues/4) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **companion:** bridge crafter-station/petdex gallery (1784 pets) ([#2601](https://github.com/HankHuang0516/EClaw/issues/2601)) ([2e245be](https://github.com/HankHuang0516/EClaw/commit/2e245bea6dd47ea7361b927d389188a3c23b6bb3))
* **promo:** chat avatar size feature landing page (self-hosted MP4) ([#2722](https://github.com/HankHuang0516/EClaw/issues/2722)) ([3852210](https://github.com/HankHuang0516/EClaw/commit/3852210d355704d018e3daca6b5f9512a011b210)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **kanban:** cron-spawn jitter + lane backpressure to prevent same-tick wedge ([#2791](https://github.com/HankHuang0516/EClaw/issues/2791)) ([9f414a7](https://github.com/HankHuang0516/EClaw/commit/9f414a731d6393672a0a4189c7b408c529ae5e12)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **portal:** dashboard usage widget — Claude/Codex 5h gauges + 24h chart (Plan B Phase 3) ([#2891](https://github.com/HankHuang0516/EClaw/issues/2891)) ([d18f373](https://github.com/HankHuang0516/EClaw/commit/d18f373857e4bd302437d6bda2a1e01871fbb1db))
* **portal:** dashboard usage widget v2 — Session/Weekly % bars + projects, no cost (Plan B Phase 3.1) ([#2893](https://github.com/HankHuang0516/EClaw/issues/2893)) ([4bc0dc7](https://github.com/HankHuang0516/EClaw/commit/4bc0dc744ed9d54dfd532ebac4b705c7f84ec0a6))
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **promo:** embed daily eclaw video 2026-05-14 ([#2786](https://github.com/HankHuang0516/EClaw/issues/2786)) ([718a814](https://github.com/HankHuang0516/EClaw/commit/718a814ab16850bc2b33a1b303841e2c4378ecfa)), closes [#2782](https://github.com/HankHuang0516/EClaw/issues/2782) [#2693](https://github.com/HankHuang0516/EClaw/issues/2693)
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **info:** embed promo video at top of Quick Start tab ([#2797](https://github.com/HankHuang0516/EClaw/issues/2797)) ([047679f](https://github.com/HankHuang0516/EClaw/commit/047679fd57ab9949eaeacea414d5611e71afe041))
* **rental:** enforce strict rebind refunds ([#2703](https://github.com/HankHuang0516/EClaw/issues/2703)) ([a1859c5](https://github.com/HankHuang0516/EClaw/commit/a1859c50e6fb3991d7a8051491502d824a14a116))
* **portal:** group task chip actions ([#2825](https://github.com/HankHuang0516/EClaw/issues/2825)) ([5db5c59](https://github.com/HankHuang0516/EClaw/commit/5db5c59b32b8635f1412205faf0c2f9164d3d5d4))
* **hermes:** H2 health-check cron + 7d SLA + commander alerts (card_07891ac) ([#2922](https://github.com/HankHuang0516/EClaw/issues/2922)) ([82b4315](https://github.com/HankHuang0516/EClaw/commit/82b4315aea234493e3d1889dc53958c2f1d842e0)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **portal:** info-guide-rules + info-guide-soul slide pair ([#2793](https://github.com/HankHuang0516/EClaw/issues/2793)) ([1c8bddc](https://github.com/HankHuang0516/EClaw/commit/1c8bddc4c185054b2b60088498e3d45509117127)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **chat:** link card previews to kanban ([#2754](https://github.com/HankHuang0516/EClaw/issues/2754)) ([2261240](https://github.com/HankHuang0516/EClaw/commit/22612402c2e95efb07246629e81a849be41ee9c7))
* **mission:** link notes to kanban cards ([#2723](https://github.com/HankHuang0516/EClaw/issues/2723)) ([b36dc18](https://github.com/HankHuang0516/EClaw/commit/b36dc18f3a8facf12e0b6046351c222f1e99dc55))
* **usage-daemon:** macOS launchd daemon polls Claude/Codex usage → POST /api/usage/snapshot (Plan B Phase 2) ([#2890](https://github.com/HankHuang0516/EClaw/issues/2890)) ([fd225e1](https://github.com/HankHuang0516/EClaw/commit/fd225e12d9491037be1a340bd63b54b5f3308c7f))
* **mindmap:** mission.html link to /portal/mindmap.html + deprecate /api/mission/mindmap ([#2685](https://github.com/HankHuang0516/EClaw/issues/2685)) ([11e297b](https://github.com/HankHuang0516/EClaw/commit/11e297bab1c9b56fcde3027d6500b7c58891bf18)), closes [#2680](https://github.com/HankHuang0516/EClaw/issues/2680) [#2684](https://github.com/HankHuang0516/EClaw/issues/2684)
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **portal:** nagoya trip interactive map (Leaflet + OSM, no API key) ([#2888](https://github.com/HankHuang0516/EClaw/issues/2888)) ([ecfdac0](https://github.com/HankHuang0516/EClaw/commit/ecfdac06348c12ee7c6872c6c28d5f82162e7aa9))
* **channel:** outbound backpressure (30/min cap + 429 retry-after) ([#2911](https://github.com/HankHuang0516/EClaw/issues/2911)) ([36dc99c](https://github.com/HankHuang0516/EClaw/commit/36dc99ca78b0e1724a2aaefb5936669077b7a28f))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **settings:** per-entity nudge override UI (Phase 2) ([#2837](https://github.com/HankHuang0516/EClaw/issues/2837)) ([ea7662b](https://github.com/HankHuang0516/EClaw/commit/ea7662b0858882dae461e1387f711895924f9ab8)), closes [3/#4](https://github.com/HankHuang0516/EClaw/issues/4)
* **kanban:** per-entity nudge overrides (Phase 2 of card_e066cb6b) ([#2836](https://github.com/HankHuang0516/EClaw/issues/2836)) ([0425f80](https://github.com/HankHuang0516/EClaw/commit/0425f80bc1169c0d506b665659c8676695c45553))
* **avatar:** petdx render on card-holder my-cards (Phase 1b) ([#2621](https://github.com/HankHuang0516/EClaw/issues/2621)) ([f78ba8b](https://github.com/HankHuang0516/EClaw/commit/f78ba8b18acc426936ab6d8a82ca7541effea00d))
* **avatar:** petdx render on dashboard entity grid / org chart / bindings (Phase 1b) ([#2622](https://github.com/HankHuang0516/EClaw/issues/2622)) ([f417749](https://github.com/HankHuang0516/EClaw/commit/f41774914451048e8cd76e9ae30416a0642e173b)), closes [#2620](https://github.com/HankHuang0516/EClaw/issues/2620) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621)
* **avatar:** petdx render on kanban auto-assign / pulse / comment avatars (Phase 1b) ([#2624](https://github.com/HankHuang0516/EClaw/issues/2624)) ([6bff5f8](https://github.com/HankHuang0516/EClaw/commit/6bff5f80440d0bd91a6b1721cde9478d685c4d46))
* **avatar:** petdx render on mission skill/rule/soul entity dialogs (Phase 1b) ([#2623](https://github.com/HankHuang0516/EClaw/issues/2623)) ([129327b](https://github.com/HankHuang0516/EClaw/commit/129327bc7b91056659f1ab7e8d5e3f5260d951fb))
* **mindmap:** portal/mindmap.html force-graph prototype ([#129](https://github.com/HankHuang0516/EClaw/issues/129)) ([#2681](https://github.com/HankHuang0516/EClaw/issues/2681)) ([0f15e69](https://github.com/HankHuang0516/EClaw/commit/0f15e6930f0697c37fa08f3219edb8f9e499837f)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **channel:** record delivery receipts ([#2913](https://github.com/HankHuang0516/EClaw/issues/2913)) ([90c671b](https://github.com/HankHuang0516/EClaw/commit/90c671bd1970ab51584b90e2b634484ec10cc7ae))
* **portal:** redo nagoya trip page in professional tour-guide style ([#2691](https://github.com/HankHuang0516/EClaw/issues/2691)) ([b2378c0](https://github.com/HankHuang0516/EClaw/commit/b2378c06ee20fa9cccfdceceb1a4c9e0b3072f59))
* **i18n:** remove ms+hi orphan keys from i18n.js ([#2849](https://github.com/HankHuang0516/EClaw/issues/2849)) ([320176c](https://github.com/HankHuang0516/EClaw/commit/320176c06a3cfd8631e2a82ad02a6bd6a9af0389))
* **avatar:** render selected petdx companion in chat avatars ([#2620](https://github.com/HankHuang0516/EClaw/issues/2620)) ([0bdd046](https://github.com/HankHuang0516/EClaw/commit/0bdd046fe1b1c428e32edda366ff112c08927f4c))
* **home:** replace native home with WebView hosting dashboard.html ([#2634](https://github.com/HankHuang0516/EClaw/issues/2634)) ([e69ea81](https://github.com/HankHuang0516/EClaw/commit/e69ea8160c239b083a83d6dc83a4f1c3f901c863))
* **app:** route chat mission jumps through native tabs ([#2824](https://github.com/HankHuang0516/EClaw/issues/2824)) ([deb07b6](https://github.com/HankHuang0516/EClaw/commit/deb07b69a9ecca632fe27278de537f1d85234e94))
* **proxy:** scope private repo git auth ([#2926](https://github.com/HankHuang0516/EClaw/issues/2926)) ([246f7ff](https://github.com/HankHuang0516/EClaw/commit/246f7ff1dedaf7bece9e3cb9eb24d0ab32ebb393))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **chat:** support message deep links ([#2719](https://github.com/HankHuang0516/EClaw/issues/2719)) ([2dc0f1e](https://github.com/HankHuang0516/EClaw/commit/2dc0f1eeb259e1a0848db4a03186b989372cd91c))
* **mission:** support note deep links ([#2717](https://github.com/HankHuang0516/EClaw/issues/2717)) ([2efd3a5](https://github.com/HankHuang0516/EClaw/commit/2efd3a5e741217a07c0b0ac54a0ddd010e0ebe23))
* **share-chat:** twitter card + per-bot og:image/twitter:* in SSR ([#2609](https://github.com/HankHuang0516/EClaw/issues/2609)) ([6cdc853](https://github.com/HankHuang0516/EClaw/commit/6cdc853dc884cdb95bd47214942768981f218ae0))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))
* **settings:** wire petdx avatar into channel-account chips ([#2626](https://github.com/HankHuang0516/EClaw/issues/2626)) ([88aec77](https://github.com/HankHuang0516/EClaw/commit/88aec772628c240e97b336bb5820892ad632d1ae))
* **files:** wire petdx avatar into entity filter & per-file badges ([#2627](https://github.com/HankHuang0516/EClaw/issues/2627)) ([5b3e5cc](https://github.com/HankHuang0516/EClaw/commit/5b3e5cc542d9da69bb4e92500fd03a542ea33f00))
* **mindmap:** wrap hardcoded zh-TW UI strings with i18n t() ([#2607](https://github.com/HankHuang0516/EClaw/issues/2607)) ([166af87](https://github.com/HankHuang0516/EClaw/commit/166af8772b2121a24aaf34a83b3de970e9b3b571)), closes [#2606](https://github.com/HankHuang0516/EClaw/issues/2606)
* **i18n:** zh-TW backfill 8 keys (soft-pause + chat + invite + wallet) ([#2815](https://github.com/HankHuang0516/EClaw/issues/2815)) ([a2dd574](https://github.com/HankHuang0516/EClaw/commit/a2dd5743ce8d43a4b6ace9a2fd4b52568180d6c5))


### Performance Improvements

* **mindmap:** force-graph hardening for 1000/2000-node graphs ([#2684](https://github.com/HankHuang0516/EClaw/issues/2684)) ([da8b1c8](https://github.com/HankHuang0516/EClaw/commit/da8b1c8f947ab8bc8fa455c1962a91146623a1fc))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-25)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **notifications:** add kanban_done + kanban_done_auto toggles to Android Settings ([#2636](https://github.com/HankHuang0516/EClaw/issues/2636)) ([a710909](https://github.com/HankHuang0516/EClaw/commit/a7109095e3393b8564e7ef1b23d382a4fbb944b8))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **api:** align /api/platform-stats skill-doc with device-auth contract (card_49b8190) ([#2916](https://github.com/HankHuang0516/EClaw/issues/2916)) ([ee55b2f](https://github.com/HankHuang0516/EClaw/commit/ee55b2fdbfbcd4bead5501d16ee66339056c32d7))
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **i18n:** ar block — fix 27 broken entries (CJK leaks + truncated HTML) ([#2851](https://github.com/HankHuang0516/EClaw/issues/2851)) ([5b19175](https://github.com/HankHuang0516/EClaw/commit/5b19175d712d00d16fcec00b749035c4beae7a5c))
* **chat:** atomic-load target bar (await contacts before first render) ([#2831](https://github.com/HankHuang0516/EClaw/issues/2831)) ([5f529e6](https://github.com/HankHuang0516/EClaw/commit/5f529e6b772eacc38ba1de69b44258a05f0d816a)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2](https://github.com/HankHuang0516/EClaw/issues/2)
* **channel:** await binding persistence ([712516d](https://github.com/HankHuang0516/EClaw/commit/712516decafb745035bd1434a28cc1973d433e19))
* **rental:** bump handshake timeout to 60s + timeout-aware discovery fallback ([#2863](https://github.com/HankHuang0516/EClaw/issues/2863)) ([fd4322f](https://github.com/HankHuang0516/EClaw/commit/fd4322f8890f3c2dfca3acdae6a4b95f19c381f9)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **i18n:** clear batch 1 residual missing keys ([#2790](https://github.com/HankHuang0516/EClaw/issues/2790)) ([211030e](https://github.com/HankHuang0516/EClaw/commit/211030e0b0b6a865c11f0c4ed60dc4e356d43b7a))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **kanban:** comment input no longer overlaps last comment in card detail (PR [#2678](https://github.com/HankHuang0516/EClaw/issues/2678)) ([fba91fc](https://github.com/HankHuang0516/EClaw/commit/fba91fca15402b453a0db5ee857c0b16e6087055))
* **chat:** compact 20px avatar in target bar (App WebView only shows [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2](https://github.com/HankHuang0516/EClaw/issues/2)) ([#2830](https://github.com/HankHuang0516/EClaw/issues/2830)) ([42c7543](https://github.com/HankHuang0516/EClaw/commit/42c7543b4a78a7abf3f5f7535eb9bc6142cd0fe2)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **portal:** complete 401 redirect sweep + mobile UIUX truncation ([#2842](https://github.com/HankHuang0516/EClaw/issues/2842)) ([f9799ba](https://github.com/HankHuang0516/EClaw/commit/f9799ba42498b109f0a8a70e80836aa6da51e216)), closes [#2833](https://github.com/HankHuang0516/EClaw/issues/2833) [#2845](https://github.com/HankHuang0516/EClaw/issues/2845) [#2844](https://github.com/HankHuang0516/EClaw/issues/2844) [#2843](https://github.com/HankHuang0516/EClaw/issues/2843)
* **uiux:** continue qa mobile readability sweep ([#2854](https://github.com/HankHuang0516/EClaw/issues/2854)) ([57606ff](https://github.com/HankHuang0516/EClaw/commit/57606ffe3e543b07a026aacc53c4b470c9a7825b))
* **i18n:** cover dynamic portal wrapper keys ([#2807](https://github.com/HankHuang0516/EClaw/issues/2807)) ([4c711cc](https://github.com/HankHuang0516/EClaw/commit/4c711cc4009300ffe4e8933a98ee01cd0fdd6aeb))
* **i18n:** dedup 20 dash_channel_card_* keys in es block ([#2876](https://github.com/HankHuang0516/EClaw/issues/2876)) ([807284c](https://github.com/HankHuang0516/EClaw/commit/807284ce363ef119ccdb0ae40e5ce99d3f0a27e0))
* **i18n:** dedupe backend locale keys via AST ([#2920](https://github.com/HankHuang0516/EClaw/issues/2920)) ([40ef114](https://github.com/HankHuang0516/EClaw/commit/40ef11414c8b836fe1ed93ec06c839df3a1bf7b9))
* **i18n:** dedupe zh locale keys ([#2919](https://github.com/HankHuang0516/EClaw/issues/2919)) ([afd2cca](https://github.com/HankHuang0516/EClaw/commit/afd2cca8086c2f2df0d04c9c5f8c58733652875e))
* **kanban:** dep-aware nudge gating + roadmap dependency backfill ([#2904](https://github.com/HankHuang0516/EClaw/issues/2904)) ([2b76ac9](https://github.com/HankHuang0516/EClaw/commit/2b76ac9d3b7e4169b7bc3c6f6b0b0903b63cd9f7)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **rental:** don't pollute entity.message on push gateway timeout ([#2860](https://github.com/HankHuang0516/EClaw/issues/2860)) ([592ba44](https://github.com/HankHuang0516/EClaw/commit/592ba44f57536ee00011b6cbddaa6b129a7cbae9))
* **petdx:** drop dark-grey loading placeholder + preload sprite WEBP ([#2628](https://github.com/HankHuang0516/EClaw/issues/2628)) ([59cef38](https://github.com/HankHuang0516/EClaw/commit/59cef387bd69ca99d7d15c86a1364856d3849ad8)), closes [#1a1a1a](https://github.com/HankHuang0516/EClaw/issues/1a1a1a)
* **gateway-ws:** drop Origin header on server-to-server WS upgrade ([#2869](https://github.com/HankHuang0516/EClaw/issues/2869)) ([716dcf9](https://github.com/HankHuang0516/EClaw/commit/716dcf9d0834b17522bb9d894bad84bc142d1a19))
* **setup-scripts:** drop Origin header on server-to-server WS upgrade ([#2875](https://github.com/HankHuang0516/EClaw/issues/2875)) ([9d893b8](https://github.com/HankHuang0516/EClaw/commit/9d893b8e5eea4db275e450bf423903c156cd3e4b)), closes [#2869](https://github.com/HankHuang0516/EClaw/issues/2869)
* **security:** escape innerHTML in chat modal error messages ([#2819](https://github.com/HankHuang0516/EClaw/issues/2819)) ([dce07ad](https://github.com/HankHuang0516/EClaw/commit/dce07adde64795916dba977ae23e46f3371ce7ed)), closes [#2809](https://github.com/HankHuang0516/EClaw/issues/2809) [#2810](https://github.com/HankHuang0516/EClaw/issues/2810) [#2809](https://github.com/HankHuang0516/EClaw/issues/2809) [#2810](https://github.com/HankHuang0516/EClaw/issues/2810)
* **proxy:** export repo auth to CLI child ([#2928](https://github.com/HankHuang0516/EClaw/issues/2928)) ([336a8ca](https://github.com/HankHuang0516/EClaw/commit/336a8caff4e3663287bd2948cf9fe6e04125cbc8))
* **entities:** expose botSecret to owner so wallpaper service can poll companions ([#2615](https://github.com/HankHuang0516/EClaw/issues/2615)) ([04470fc](https://github.com/HankHuang0516/EClaw/commit/04470fce8f8c3fce2b1ba8b243e776606f107502))
* **rental:** expose owner_public_code in marketplace so plaza CTA can route ([#2616](https://github.com/HankHuang0516/EClaw/issues/2616)) ([4d1372f](https://github.com/HankHuang0516/EClaw/commit/4d1372f717d93cab65543e87c852e74e9fb67071)), closes [#2610](https://github.com/HankHuang0516/EClaw/issues/2610)
* **mindmap:** fallback to device scope when entityId is null ([#2728](https://github.com/HankHuang0516/EClaw/issues/2728)) ([7572312](https://github.com/HankHuang0516/EClaw/commit/7572312433d3d75fc245eda48a28919ce14bd927))
* **i18n:** fill 11 missing zh keys post-[#2920](https://github.com/HankHuang0516/EClaw/issues/2920)/[#2921](https://github.com/HankHuang0516/EClaw/issues/2921) (card_de6970) ([#2924](https://github.com/HankHuang0516/EClaw/issues/2924)) ([17c4899](https://github.com/HankHuang0516/EClaw/commit/17c48996489b1444d6ed589027acfa7986178fe1)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** fill backend runtime locale gaps ([#2921](https://github.com/HankHuang0516/EClaw/issues/2921)) ([00d96ff](https://github.com/HankHuang0516/EClaw/commit/00d96ff261b8134b49292623e1f786fd544144cc))
* **i18n:** fill Spanish drift keys ([#2751](https://github.com/HankHuang0516/EClaw/issues/2751)) ([0ad0ee5](https://github.com/HankHuang0516/EClaw/commit/0ad0ee55f7fac3e6ac46d891539950dab4d553cc))
* **portal:** fit embedded org chart to mobile viewport ([#2674](https://github.com/HankHuang0516/EClaw/issues/2674)) ([1c4e1b4](https://github.com/HankHuang0516/EClaw/commit/1c4e1b413ea7027b4cd4b8ecda981b0d0e12e66b))
* **i18n:** fix 6 trailing-comma syntax errors in 10-locale batch ([#2771](https://github.com/HankHuang0516/EClaw/issues/2771)) ([b27c6ca](https://github.com/HankHuang0516/EClaw/commit/b27c6ca204bf813e406c54ce3a2532a5f1f031b3))
* **kanban:** GET card returns latest 50 comments + comments endpoint exposes total ([#2816](https://github.com/HankHuang0516/EClaw/issues/2816)) ([c4d83f7](https://github.com/HankHuang0516/EClaw/commit/c4d83f777a1cd26aea0936e4316aa35c52822eef))
* **sharechat:** guest verify-email modal + disabled Send for unverified ([#2865](https://github.com/HankHuang0516/EClaw/issues/2865)) ([cb3b061](https://github.com/HankHuang0516/EClaw/commit/cb3b0614e0f6160417d907753e66eceb2d666802))
* **uiux:** harden chat previews and roster preview ([#2769](https://github.com/HankHuang0516/EClaw/issues/2769)) ([466d4d3](https://github.com/HankHuang0516/EClaw/commit/466d4d3ef81c628d3f58db64323946053d7bf61c))
* **mention-parser:** ignore @-mentions inside markdown code spans ([#2645](https://github.com/HankHuang0516/EClaw/issues/2645)) ([8da19d4](https://github.com/HankHuang0516/EClaw/commit/8da19d4a79ceb4152bf2144ee0847c61ce3e1def)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **kanban:** lazy-load dependency chips via IntersectionObserver ([#2632](https://github.com/HankHuang0516/EClaw/issues/2632)) ([20586b4](https://github.com/HankHuang0516/EClaw/commit/20586b43357335f9eb6a190c02d58c8e36b58aba)), closes [#2631](https://github.com/HankHuang0516/EClaw/issues/2631)
* **i18n:** localize FCM NotificationChannel labels (card_ec8d3a22) ([#2918](https://github.com/HankHuang0516/EClaw/issues/2918)) ([591cd20](https://github.com/HankHuang0516/EClaw/commit/591cd206704693650a53d19d94c4cc75daf84ffd))
* **kanban:** make card sorting deterministic ([#2756](https://github.com/HankHuang0516/EClaw/issues/2756)) ([48e2117](https://github.com/HankHuang0516/EClaw/commit/48e2117b64e37f05dc635e0a3b67bfd43cbe48f5))
* **portal/nagoya-trip:** map-link invisible on dark hero/day-banner ([#2897](https://github.com/HankHuang0516/EClaw/issues/2897)) ([cc33df6](https://github.com/HankHuang0516/EClaw/commit/cc33df686673455c20beaee60871412a5d486e66)), closes [#1f4030](https://github.com/HankHuang0516/EClaw/issues/1f4030) [#8b8579](https://github.com/HankHuang0516/EClaw/issues/8b8579) [#6e6859](https://github.com/HankHuang0516/EClaw/issues/6e6859) [#7a5614](https://github.com/HankHuang0516/EClaw/issues/7a5614)
* **org-chart:** notify affected bots on hierarchy change ([#2812](https://github.com/HankHuang0516/EClaw/issues/2812)) ([55675fd](https://github.com/HankHuang0516/EClaw/commit/55675fdf4487494d729a29524b32bd81b756a00c)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** notify reviewer on manual /move → review ([#2753](https://github.com/HankHuang0516/EClaw/issues/2753)) ([6cbbb4e](https://github.com/HankHuang0516/EClaw/commit/6cbbb4ee8c0d4d8ad54df2e9b5faaa3699bd530f))
* **wallpaper:** off-load spritesheet fetch to IO so per-petdx sprites actually render ([#2618](https://github.com/HankHuang0516/EClaw/issues/2618)) ([61b832c](https://github.com/HankHuang0516/EClaw/commit/61b832c9fa8a1d0caab810ccc942d85c63349267)), closes [#2615](https://github.com/HankHuang0516/EClaw/issues/2615) [#2577](https://github.com/HankHuang0516/EClaw/issues/2577)
* **security:** patch P0 sanitize-html XSS + P1 protobufjs + exam.html XSS ([#2829](https://github.com/HankHuang0516/EClaw/issues/2829)) ([c71b871](https://github.com/HankHuang0516/EClaw/commit/c71b871a045887375dd0d26d1a3280a0891a89ad))
* **security:** patch ws uninitialized memory disclosure (GHSA-58qx-3vcg-4xpx) ([#2872](https://github.com/HankHuang0516/EClaw/issues/2872)) ([2523d15](https://github.com/HankHuang0516/EClaw/commit/2523d154bbe501a7cc086340f7a07ece3abfa69b))
* **portal:** petdx-browser cookie-session fallback for device-login ([#2757](https://github.com/HankHuang0516/EClaw/issues/2757)) ([ca275f4](https://github.com/HankHuang0516/EClaw/commit/ca275f4519835da0c7ad71c588908a18f6f138d8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **api:** platform-stats 500 + entity/lookup publicCode alias ([#2809](https://github.com/HankHuang0516/EClaw/issues/2809), [#2810](https://github.com/HankHuang0516/EClaw/issues/2810)) ([#2818](https://github.com/HankHuang0516/EClaw/issues/2818)) ([f99fd17](https://github.com/HankHuang0516/EClaw/commit/f99fd17b2b1c32d88daa2510ff66d714c1a53edc))
* **i18n:** positional format specifiers for feedback_result_logs (7 locales) ([#2597](https://github.com/HankHuang0516/EClaw/issues/2597)) ([21aedc7](https://github.com/HankHuang0516/EClaw/commit/21aedc7eebc7a2839e340136f38dfdfd4dabb9dc))
* **avatar-petdx:** preserve descriptor across transient API failures (flicker) ([#2625](https://github.com/HankHuang0516/EClaw/issues/2625)) ([7b1c606](https://github.com/HankHuang0516/EClaw/commit/7b1c606514f7698d72ec95cf6c556e4043966186))
* **chat:** preserve recipient selection across rental-health refresh (P0 #card_eb1cba76) ([#2906](https://github.com/HankHuang0516/EClaw/issues/2906)) ([9cc0301](https://github.com/HankHuang0516/EClaw/commit/9cc0301cc26a0f49af4b7f53486f5c1a7cdd7902)), closes [#card_eb1cba76](https://github.com/HankHuang0516/EClaw/issues/card_eb1cba76) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **chat:** preserve scroll anchor while reading history ([#2693](https://github.com/HankHuang0516/EClaw/issues/2693)) ([945fdb7](https://github.com/HankHuang0516/EClaw/commit/945fdb7192b791b31882e1e75568dd8b11e4686f))
* **promo:** pull video embed from /promo-chat-avatar.html ([#2724](https://github.com/HankHuang0516/EClaw/issues/2724)) ([2afabc8](https://github.com/HankHuang0516/EClaw/commit/2afabc8c5ff8b25218a7cb857e8adfa572c8e9d5))
* **dashboard:** read live.rate_limits.{five_hour,seven_day}.used_percentage ([#2895](https://github.com/HankHuang0516/EClaw/issues/2895)) ([8223303](https://github.com/HankHuang0516/EClaw/commit/822330312bccb1c76675ad2c3b26e78d10dd1298))
* **kanban:** realign stale recurring schedules ([#2785](https://github.com/HankHuang0516/EClaw/issues/2785)) ([ab8ee25](https://github.com/HankHuang0516/EClaw/commit/ab8ee250a9b37f3d3e838bb01d8866c8d2b78231))
* **i18n:** reapply de6970 locale gap translations ([#2925](https://github.com/HankHuang0516/EClaw/issues/2925)) ([d994dc1](https://github.com/HankHuang0516/EClaw/commit/d994dc1d240fef72326db2599262375ccbf29175))
* **portal:** reduce QA-discovered request fanout ([#2656](https://github.com/HankHuang0516/EClaw/issues/2656)) ([1e46d6b](https://github.com/HankHuang0516/EClaw/commit/1e46d6bab61e58c65b452b6503d953f8dddeee75))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **portal:** remove org chart fit scale floor ([#2676](https://github.com/HankHuang0516/EClaw/issues/2676)) ([0f01606](https://github.com/HankHuang0516/EClaw/commit/0f016068b963bb5f800a02f28817c7174979d913))
* **rental:** remove phantom 'webhook test push' step from BIND_COMPLETE ([#2864](https://github.com/HankHuang0516/EClaw/issues/2864)) ([47f4a3e](https://github.com/HankHuang0516/EClaw/commit/47f4a3edf76aa95ebd06d8713cd44fda6eef9b5d))
* **i18n:** rename mm_empty_title → mm_state_empty_title in mindmap.html ([#2683](https://github.com/HankHuang0516/EClaw/issues/2683)) ([c79c109](https://github.com/HankHuang0516/EClaw/commit/c79c109bea23142e8a6d9ace976d105af1280ec9))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **chat:** render mention avatars with companion renderer ([#2633](https://github.com/HankHuang0516/EClaw/issues/2633)) ([03e205f](https://github.com/HankHuang0516/EClaw/commit/03e205f663ecd2c2f443d4009dd5af0093f0bbbb))
* **kanban:** reserve mobile comments panel height ([#2782](https://github.com/HankHuang0516/EClaw/issues/2782)) ([ce8662d](https://github.com/HankHuang0516/EClaw/commit/ce8662d362422fdd25037f1deb61dbed9425e2f9))
* **channel:** restore handshake fallback to discovered sessions ([#2915](https://github.com/HankHuang0516/EClaw/issues/2915)) ([#2917](https://github.com/HankHuang0516/EClaw/issues/2917)) ([9d7d3a2](https://github.com/HankHuang0516/EClaw/commit/9d7d3a25654289998314dd5ca152cefdb8a4d64e)), closes [#2912](https://github.com/HankHuang0516/EClaw/issues/2912)
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* scheduled audit 2026-05-13 — 6 bugs, XSS, i18n ([#2668](https://github.com/HankHuang0516/EClaw/issues/2668)) ([21dd513](https://github.com/HankHuang0516/EClaw/commit/21dd513b4464738de29164265437435ba6cc4817)), closes [#2605](https://github.com/HankHuang0516/EClaw/issues/2605) [#2608](https://github.com/HankHuang0516/EClaw/issues/2608) [#2600](https://github.com/HankHuang0516/EClaw/issues/2600) [#2599](https://github.com/HankHuang0516/EClaw/issues/2599) [#2598](https://github.com/HankHuang0516/EClaw/issues/2598)
* **channel:** scope official bot sessions ([#2912](https://github.com/HankHuang0516/EClaw/issues/2912)) ([5c56b62](https://github.com/HankHuang0516/EClaw/commit/5c56b62c13b739b76f39e168a26bd4e5de2644fb))
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **dashboard:** show Claude weekly bar reset countdown ([#2896](https://github.com/HankHuang0516/EClaw/issues/2896)) ([3b87845](https://github.com/HankHuang0516/EClaw/commit/3b87845d713e980fec69f6b8007549338a326713)), closes [#2895](https://github.com/HankHuang0516/EClaw/issues/2895)
* **chat:** smart-chip preview falls back to inline c.comments when /comments fails (PR [#2677](https://github.com/HankHuang0516/EClaw/issues/2677)) ([7f4dffd](https://github.com/HankHuang0516/EClaw/commit/7f4dffd2c83ea86f296b8fa0610f0e67c9f1af11))
* **kanban:** stabilize comment detail viewport ([#2796](https://github.com/HankHuang0516/EClaw/issues/2796)) ([0a10aad](https://github.com/HankHuang0516/EClaw/commit/0a10aadb5a5b12ff23454c16d5c88183b94ad7d7))
* **wallpaper:** stop Android live wallpaper flashing default lobster on companion change ([#2629](https://github.com/HankHuang0516/EClaw/issues/2629)) ([8b4f66f](https://github.com/HankHuang0516/EClaw/commit/8b4f66fcb335bf43128f924b761b6337c817095b)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **chat:** stop chat.html bouncing to dashboard via /api/rental/health-status 401 race ([#2833](https://github.com/HankHuang0516/EClaw/issues/2833)) ([c422406](https://github.com/HankHuang0516/EClaw/commit/c4224067cdcfe7f3e22ab95007c7563dac4196ac))
* **openclaw-channel:** support OpenClaw 2026.5.20 ([8045de6](https://github.com/HankHuang0516/EClaw/commit/8045de6bebecfc05f9bd57453b99c098ca35681b))
* **mentions:** support same-device CJK display-name tags ([#2874](https://github.com/HankHuang0516/EClaw/issues/2874)) ([b8f61be](https://github.com/HankHuang0516/EClaw/commit/b8f61be9a3962fef75dd32ea34e8900880dafaf9))
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **dashboard:** use sessions[].project for widget Projects list (was .project_id) ([#2894](https://github.com/HankHuang0516/EClaw/issues/2894)) ([0fd1334](https://github.com/HankHuang0516/EClaw/commit/0fd1334897d4a603cc6eb74f34b48606547e09cf))
* **app:** WebView pages honor app-selected locale via ?lang= URL param ([#2672](https://github.com/HankHuang0516/EClaw/issues/2672)) ([8ed8757](https://github.com/HankHuang0516/EClaw/commit/8ed8757aec5bf214e837cc0d81bf2b23f1993a91)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **share-chat:** wire rich CTA actions to msgInput ([#2867](https://github.com/HankHuang0516/EClaw/issues/2867)) ([df23b11](https://github.com/HankHuang0516/EClaw/commit/df23b1147d34c59a644a145bbd87c18b96400acc))


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* **usage-api:** /api/usage/{snapshot,timeline} + usage_snapshots table (Plan B Phase 1) ([#2889](https://github.com/HankHuang0516/EClaw/issues/2889)) ([a0d859c](https://github.com/HankHuang0516/EClaw/commit/a0d859c63f0220909dadb2b1952174861ccdce14))
* **community:** 1-click chat button on bot cards + utm tagging ([#2610](https://github.com/HankHuang0516/EClaw/issues/2610)) ([eee97b0](https://github.com/HankHuang0516/EClaw/commit/eee97b0e2e4e74945ec24f218a69a52800b97a66))
* **chat:** accept ?messageId= as deep-link alias ([#2838](https://github.com/HankHuang0516/EClaw/issues/2838)) ([1785a87](https://github.com/HankHuang0516/EClaw/commit/1785a87310426637fd10df83754fb9924c45207f))
* **chat:** add avatar size preference ([#2714](https://github.com/HankHuang0516/EClaw/issues/2714)) ([6fe164a](https://github.com/HankHuang0516/EClaw/commit/6fe164ad8b22fa576d2dd9ad37c0d9fc295b5a83))
* **dashboard:** add Claude and Codex channel guides ([#2640](https://github.com/HankHuang0516/EClaw/issues/2640)) ([c64e4c4](https://github.com/HankHuang0516/EClaw/commit/c64e4c4afc78db58c5cd578f00486dd7b2fd3311))
* **dashboard:** add Claude Code channel guide card ([#2667](https://github.com/HankHuang0516/EClaw/issues/2667)) ([d70d75c](https://github.com/HankHuang0516/EClaw/commit/d70d75c0c8caa8a540358a9aab4556b8c1927a5c))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* **kanban:** add device-scoped card tags ([#2773](https://github.com/HankHuang0516/EClaw/issues/2773)) ([53a387e](https://github.com/HankHuang0516/EClaw/commit/53a387e67ba7bb4f6bed1c427000c4ae8666577a))
* **portal:** add entity selector to petdx-browser ([#2602](https://github.com/HankHuang0516/EClaw/issues/2602)) ([3fa067e](https://github.com/HankHuang0516/EClaw/commit/3fa067e00b38829b48a37cecd33ee81a9a1122d9))
* **kanban:** add explicit card links ([#2721](https://github.com/HankHuang0516/EClaw/issues/2721)) ([ef9f812](https://github.com/HankHuang0516/EClaw/commit/ef9f812a3fcf39efd07fd158ce90951bdd045ac7))
* **kanban:** add explicit done-card reopen flow ([#2801](https://github.com/HankHuang0516/EClaw/issues/2801)) ([5080aac](https://github.com/HankHuang0516/EClaw/commit/5080aacb75047c0deaa379ee708ec85465afd57c))
* **mindmap:** add GET /api/mindmap/graph force-graph projection ([#2680](https://github.com/HankHuang0516/EClaw/issues/2680)) ([a00b2e7](https://github.com/HankHuang0516/EClaw/commit/a00b2e775af2c4c98cd157f760ad87aeeee469f0)), closes [#2679](https://github.com/HankHuang0516/EClaw/issues/2679) [#2679](https://github.com/HankHuang0516/EClaw/issues/2679)
* **dashboard:** add Hermes channel promo card ([#2708](https://github.com/HankHuang0516/EClaw/issues/2708)) ([337aca1](https://github.com/HankHuang0516/EClaw/commit/337aca153d5a1cd7e888c065f00ae54db7872d91))
* **rental:** add listing soft pause ([#2781](https://github.com/HankHuang0516/EClaw/issues/2781)) ([6586b72](https://github.com/HankHuang0516/EClaw/commit/6586b72717ddb1637d91cd3242c8d2ff554f62b4))
* **portal:** add Nagoya 5D4N trip static cross-ref page ([#2689](https://github.com/HankHuang0516/EClaw/issues/2689)) ([2e0efb6](https://github.com/HankHuang0516/EClaw/commit/2e0efb6dcdaff52226cc8854a96747000b12bdff))
* **portal:** add Nagoya trip map links and image lightbox ([#2821](https://github.com/HankHuang0516/EClaw/issues/2821)) ([3e40955](https://github.com/HankHuang0516/EClaw/commit/3e40955650a05f45a6b9f7e39e73847705424a03))
* **portal/nagoya:** add parking shortcut buttons next to itinerary places ([#2826](https://github.com/HankHuang0516/EClaw/issues/2826)) ([63968c5](https://github.com/HankHuang0516/EClaw/commit/63968c554d046afc8d978de74e3aacbf7700500d))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **settings:** add rental roster management preview ([#2758](https://github.com/HankHuang0516/EClaw/issues/2758)) ([9706e59](https://github.com/HankHuang0516/EClaw/commit/9706e59ded140a90a6e02348124282bc69d89001))
* **rental:** add renter health chat indicator ([#2690](https://github.com/HankHuang0516/EClaw/issues/2690)) ([36cd2e9](https://github.com/HankHuang0516/EClaw/commit/36cd2e9802be4c7ebb03d3024617fa74aca48ffd))
* **ios:** add Tutorial & Intro entry in Settings ([#2800](https://github.com/HankHuang0516/EClaw/issues/2800)) ([ed83e51](https://github.com/HankHuang0516/EClaw/commit/ed83e51d043bf4cd5865f38dc95a91ed54820d6c))
* **landing:** add Watch Full Demo CTA below hero video ([#2799](https://github.com/HankHuang0516/EClaw/issues/2799)) ([66107c9](https://github.com/HankHuang0516/EClaw/commit/66107c954727551fd34d989a4674daaad9b63968))
* **footer:** add Watch Intro Video link in Info column ([#2798](https://github.com/HankHuang0516/EClaw/issues/2798)) ([d7c6d59](https://github.com/HankHuang0516/EClaw/commit/d7c6d596b69c6a5b257bf1f7a792a407ef9712ad))
* **i18n:** ar iter-2 — fill 623 missing keys against en source ([#2847](https://github.com/HankHuang0516/EClaw/issues/2847)) ([ee94a7a](https://github.com/HankHuang0516/EClaw/commit/ee94a7ae6812b5163efe4284ee4907ca32302f5c))
* **kanban:** backlog launch-gate flag to suppress L1/L2/L3 escalation ([#2855](https://github.com/HankHuang0516/EClaw/issues/2855)) ([cb8bf1b](https://github.com/HankHuang0516/EClaw/commit/cb8bf1bb6421f25214f65e129a8cadccc49cc266)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#4](https://github.com/HankHuang0516/EClaw/issues/4) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **companion:** bridge crafter-station/petdex gallery (1784 pets) ([#2601](https://github.com/HankHuang0516/EClaw/issues/2601)) ([2e245be](https://github.com/HankHuang0516/EClaw/commit/2e245bea6dd47ea7361b927d389188a3c23b6bb3))
* **promo:** chat avatar size feature landing page (self-hosted MP4) ([#2722](https://github.com/HankHuang0516/EClaw/issues/2722)) ([3852210](https://github.com/HankHuang0516/EClaw/commit/3852210d355704d018e3daca6b5f9512a011b210)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **kanban:** cron-spawn jitter + lane backpressure to prevent same-tick wedge ([#2791](https://github.com/HankHuang0516/EClaw/issues/2791)) ([9f414a7](https://github.com/HankHuang0516/EClaw/commit/9f414a731d6393672a0a4189c7b408c529ae5e12)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **portal:** dashboard usage widget — Claude/Codex 5h gauges + 24h chart (Plan B Phase 3) ([#2891](https://github.com/HankHuang0516/EClaw/issues/2891)) ([d18f373](https://github.com/HankHuang0516/EClaw/commit/d18f373857e4bd302437d6bda2a1e01871fbb1db))
* **portal:** dashboard usage widget v2 — Session/Weekly % bars + projects, no cost (Plan B Phase 3.1) ([#2893](https://github.com/HankHuang0516/EClaw/issues/2893)) ([4bc0dc7](https://github.com/HankHuang0516/EClaw/commit/4bc0dc744ed9d54dfd532ebac4b705c7f84ec0a6))
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **promo:** embed daily eclaw video 2026-05-14 ([#2786](https://github.com/HankHuang0516/EClaw/issues/2786)) ([718a814](https://github.com/HankHuang0516/EClaw/commit/718a814ab16850bc2b33a1b303841e2c4378ecfa)), closes [#2782](https://github.com/HankHuang0516/EClaw/issues/2782) [#2693](https://github.com/HankHuang0516/EClaw/issues/2693)
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **info:** embed promo video at top of Quick Start tab ([#2797](https://github.com/HankHuang0516/EClaw/issues/2797)) ([047679f](https://github.com/HankHuang0516/EClaw/commit/047679fd57ab9949eaeacea414d5611e71afe041))
* **rental:** enforce strict rebind refunds ([#2703](https://github.com/HankHuang0516/EClaw/issues/2703)) ([a1859c5](https://github.com/HankHuang0516/EClaw/commit/a1859c50e6fb3991d7a8051491502d824a14a116))
* **portal:** group task chip actions ([#2825](https://github.com/HankHuang0516/EClaw/issues/2825)) ([5db5c59](https://github.com/HankHuang0516/EClaw/commit/5db5c59b32b8635f1412205faf0c2f9164d3d5d4))
* **hermes:** H2 health-check cron + 7d SLA + commander alerts (card_07891ac) ([#2922](https://github.com/HankHuang0516/EClaw/issues/2922)) ([82b4315](https://github.com/HankHuang0516/EClaw/commit/82b4315aea234493e3d1889dc53958c2f1d842e0)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **portal:** info-guide-rules + info-guide-soul slide pair ([#2793](https://github.com/HankHuang0516/EClaw/issues/2793)) ([1c8bddc](https://github.com/HankHuang0516/EClaw/commit/1c8bddc4c185054b2b60088498e3d45509117127)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **chat:** link card previews to kanban ([#2754](https://github.com/HankHuang0516/EClaw/issues/2754)) ([2261240](https://github.com/HankHuang0516/EClaw/commit/22612402c2e95efb07246629e81a849be41ee9c7))
* **mission:** link notes to kanban cards ([#2723](https://github.com/HankHuang0516/EClaw/issues/2723)) ([b36dc18](https://github.com/HankHuang0516/EClaw/commit/b36dc18f3a8facf12e0b6046351c222f1e99dc55))
* **usage-daemon:** macOS launchd daemon polls Claude/Codex usage → POST /api/usage/snapshot (Plan B Phase 2) ([#2890](https://github.com/HankHuang0516/EClaw/issues/2890)) ([fd225e1](https://github.com/HankHuang0516/EClaw/commit/fd225e12d9491037be1a340bd63b54b5f3308c7f))
* **mindmap:** mission.html link to /portal/mindmap.html + deprecate /api/mission/mindmap ([#2685](https://github.com/HankHuang0516/EClaw/issues/2685)) ([11e297b](https://github.com/HankHuang0516/EClaw/commit/11e297bab1c9b56fcde3027d6500b7c58891bf18)), closes [#2680](https://github.com/HankHuang0516/EClaw/issues/2680) [#2684](https://github.com/HankHuang0516/EClaw/issues/2684)
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **portal:** nagoya trip interactive map (Leaflet + OSM, no API key) ([#2888](https://github.com/HankHuang0516/EClaw/issues/2888)) ([ecfdac0](https://github.com/HankHuang0516/EClaw/commit/ecfdac06348c12ee7c6872c6c28d5f82162e7aa9))
* **channel:** outbound backpressure (30/min cap + 429 retry-after) ([#2911](https://github.com/HankHuang0516/EClaw/issues/2911)) ([36dc99c](https://github.com/HankHuang0516/EClaw/commit/36dc99ca78b0e1724a2aaefb5936669077b7a28f))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **settings:** per-entity nudge override UI (Phase 2) ([#2837](https://github.com/HankHuang0516/EClaw/issues/2837)) ([ea7662b](https://github.com/HankHuang0516/EClaw/commit/ea7662b0858882dae461e1387f711895924f9ab8)), closes [3/#4](https://github.com/HankHuang0516/EClaw/issues/4)
* **kanban:** per-entity nudge overrides (Phase 2 of card_e066cb6b) ([#2836](https://github.com/HankHuang0516/EClaw/issues/2836)) ([0425f80](https://github.com/HankHuang0516/EClaw/commit/0425f80bc1169c0d506b665659c8676695c45553))
* **avatar:** petdx render on card-holder my-cards (Phase 1b) ([#2621](https://github.com/HankHuang0516/EClaw/issues/2621)) ([f78ba8b](https://github.com/HankHuang0516/EClaw/commit/f78ba8b18acc426936ab6d8a82ca7541effea00d))
* **avatar:** petdx render on dashboard entity grid / org chart / bindings (Phase 1b) ([#2622](https://github.com/HankHuang0516/EClaw/issues/2622)) ([f417749](https://github.com/HankHuang0516/EClaw/commit/f41774914451048e8cd76e9ae30416a0642e173b)), closes [#2620](https://github.com/HankHuang0516/EClaw/issues/2620) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621)
* **avatar:** petdx render on kanban auto-assign / pulse / comment avatars (Phase 1b) ([#2624](https://github.com/HankHuang0516/EClaw/issues/2624)) ([6bff5f8](https://github.com/HankHuang0516/EClaw/commit/6bff5f80440d0bd91a6b1721cde9478d685c4d46))
* **avatar:** petdx render on mission skill/rule/soul entity dialogs (Phase 1b) ([#2623](https://github.com/HankHuang0516/EClaw/issues/2623)) ([129327b](https://github.com/HankHuang0516/EClaw/commit/129327bc7b91056659f1ab7e8d5e3f5260d951fb))
* **mindmap:** portal/mindmap.html force-graph prototype ([#129](https://github.com/HankHuang0516/EClaw/issues/129)) ([#2681](https://github.com/HankHuang0516/EClaw/issues/2681)) ([0f15e69](https://github.com/HankHuang0516/EClaw/commit/0f15e6930f0697c37fa08f3219edb8f9e499837f)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **channel:** record delivery receipts ([#2913](https://github.com/HankHuang0516/EClaw/issues/2913)) ([90c671b](https://github.com/HankHuang0516/EClaw/commit/90c671bd1970ab51584b90e2b634484ec10cc7ae))
* **portal:** redo nagoya trip page in professional tour-guide style ([#2691](https://github.com/HankHuang0516/EClaw/issues/2691)) ([b2378c0](https://github.com/HankHuang0516/EClaw/commit/b2378c06ee20fa9cccfdceceb1a4c9e0b3072f59))
* **i18n:** remove ms+hi orphan keys from i18n.js ([#2849](https://github.com/HankHuang0516/EClaw/issues/2849)) ([320176c](https://github.com/HankHuang0516/EClaw/commit/320176c06a3cfd8631e2a82ad02a6bd6a9af0389))
* **avatar:** render selected petdx companion in chat avatars ([#2620](https://github.com/HankHuang0516/EClaw/issues/2620)) ([0bdd046](https://github.com/HankHuang0516/EClaw/commit/0bdd046fe1b1c428e32edda366ff112c08927f4c))
* **home:** replace native home with WebView hosting dashboard.html ([#2634](https://github.com/HankHuang0516/EClaw/issues/2634)) ([e69ea81](https://github.com/HankHuang0516/EClaw/commit/e69ea8160c239b083a83d6dc83a4f1c3f901c863))
* **app:** route chat mission jumps through native tabs ([#2824](https://github.com/HankHuang0516/EClaw/issues/2824)) ([deb07b6](https://github.com/HankHuang0516/EClaw/commit/deb07b69a9ecca632fe27278de537f1d85234e94))
* **proxy:** scope private repo git auth ([#2926](https://github.com/HankHuang0516/EClaw/issues/2926)) ([246f7ff](https://github.com/HankHuang0516/EClaw/commit/246f7ff1dedaf7bece9e3cb9eb24d0ab32ebb393))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **chat:** support message deep links ([#2719](https://github.com/HankHuang0516/EClaw/issues/2719)) ([2dc0f1e](https://github.com/HankHuang0516/EClaw/commit/2dc0f1eeb259e1a0848db4a03186b989372cd91c))
* **mission:** support note deep links ([#2717](https://github.com/HankHuang0516/EClaw/issues/2717)) ([2efd3a5](https://github.com/HankHuang0516/EClaw/commit/2efd3a5e741217a07c0b0ac54a0ddd010e0ebe23))
* **share-chat:** twitter card + per-bot og:image/twitter:* in SSR ([#2609](https://github.com/HankHuang0516/EClaw/issues/2609)) ([6cdc853](https://github.com/HankHuang0516/EClaw/commit/6cdc853dc884cdb95bd47214942768981f218ae0))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))
* **settings:** wire petdx avatar into channel-account chips ([#2626](https://github.com/HankHuang0516/EClaw/issues/2626)) ([88aec77](https://github.com/HankHuang0516/EClaw/commit/88aec772628c240e97b336bb5820892ad632d1ae))
* **files:** wire petdx avatar into entity filter & per-file badges ([#2627](https://github.com/HankHuang0516/EClaw/issues/2627)) ([5b3e5cc](https://github.com/HankHuang0516/EClaw/commit/5b3e5cc542d9da69bb4e92500fd03a542ea33f00))
* **mindmap:** wrap hardcoded zh-TW UI strings with i18n t() ([#2607](https://github.com/HankHuang0516/EClaw/issues/2607)) ([166af87](https://github.com/HankHuang0516/EClaw/commit/166af8772b2121a24aaf34a83b3de970e9b3b571)), closes [#2606](https://github.com/HankHuang0516/EClaw/issues/2606)
* **i18n:** zh-TW backfill 8 keys (soft-pause + chat + invite + wallet) ([#2815](https://github.com/HankHuang0516/EClaw/issues/2815)) ([a2dd574](https://github.com/HankHuang0516/EClaw/commit/a2dd5743ce8d43a4b6ace9a2fd4b52568180d6c5))


### Performance Improvements

* **mindmap:** force-graph hardening for 1000/2000-node graphs ([#2684](https://github.com/HankHuang0516/EClaw/issues/2684)) ([da8b1c8](https://github.com/HankHuang0516/EClaw/commit/da8b1c8f947ab8bc8fa455c1962a91146623a1fc))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-25)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **notifications:** add kanban_done + kanban_done_auto toggles to Android Settings ([#2636](https://github.com/HankHuang0516/EClaw/issues/2636)) ([a710909](https://github.com/HankHuang0516/EClaw/commit/a7109095e3393b8564e7ef1b23d382a4fbb944b8))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **api:** align /api/platform-stats skill-doc with device-auth contract (card_49b8190) ([#2916](https://github.com/HankHuang0516/EClaw/issues/2916)) ([ee55b2f](https://github.com/HankHuang0516/EClaw/commit/ee55b2fdbfbcd4bead5501d16ee66339056c32d7))
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **i18n:** ar block — fix 27 broken entries (CJK leaks + truncated HTML) ([#2851](https://github.com/HankHuang0516/EClaw/issues/2851)) ([5b19175](https://github.com/HankHuang0516/EClaw/commit/5b19175d712d00d16fcec00b749035c4beae7a5c))
* **chat:** atomic-load target bar (await contacts before first render) ([#2831](https://github.com/HankHuang0516/EClaw/issues/2831)) ([5f529e6](https://github.com/HankHuang0516/EClaw/commit/5f529e6b772eacc38ba1de69b44258a05f0d816a)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2](https://github.com/HankHuang0516/EClaw/issues/2)
* **channel:** await binding persistence ([712516d](https://github.com/HankHuang0516/EClaw/commit/712516decafb745035bd1434a28cc1973d433e19))
* **rental:** bump handshake timeout to 60s + timeout-aware discovery fallback ([#2863](https://github.com/HankHuang0516/EClaw/issues/2863)) ([fd4322f](https://github.com/HankHuang0516/EClaw/commit/fd4322f8890f3c2dfca3acdae6a4b95f19c381f9)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **i18n:** clear batch 1 residual missing keys ([#2790](https://github.com/HankHuang0516/EClaw/issues/2790)) ([211030e](https://github.com/HankHuang0516/EClaw/commit/211030e0b0b6a865c11f0c4ed60dc4e356d43b7a))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **kanban:** comment input no longer overlaps last comment in card detail (PR [#2678](https://github.com/HankHuang0516/EClaw/issues/2678)) ([fba91fc](https://github.com/HankHuang0516/EClaw/commit/fba91fca15402b453a0db5ee857c0b16e6087055))
* **chat:** compact 20px avatar in target bar (App WebView only shows [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2](https://github.com/HankHuang0516/EClaw/issues/2)) ([#2830](https://github.com/HankHuang0516/EClaw/issues/2830)) ([42c7543](https://github.com/HankHuang0516/EClaw/commit/42c7543b4a78a7abf3f5f7535eb9bc6142cd0fe2)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **portal:** complete 401 redirect sweep + mobile UIUX truncation ([#2842](https://github.com/HankHuang0516/EClaw/issues/2842)) ([f9799ba](https://github.com/HankHuang0516/EClaw/commit/f9799ba42498b109f0a8a70e80836aa6da51e216)), closes [#2833](https://github.com/HankHuang0516/EClaw/issues/2833) [#2845](https://github.com/HankHuang0516/EClaw/issues/2845) [#2844](https://github.com/HankHuang0516/EClaw/issues/2844) [#2843](https://github.com/HankHuang0516/EClaw/issues/2843)
* **uiux:** continue qa mobile readability sweep ([#2854](https://github.com/HankHuang0516/EClaw/issues/2854)) ([57606ff](https://github.com/HankHuang0516/EClaw/commit/57606ffe3e543b07a026aacc53c4b470c9a7825b))
* **i18n:** cover dynamic portal wrapper keys ([#2807](https://github.com/HankHuang0516/EClaw/issues/2807)) ([4c711cc](https://github.com/HankHuang0516/EClaw/commit/4c711cc4009300ffe4e8933a98ee01cd0fdd6aeb))
* **i18n:** dedup 20 dash_channel_card_* keys in es block ([#2876](https://github.com/HankHuang0516/EClaw/issues/2876)) ([807284c](https://github.com/HankHuang0516/EClaw/commit/807284ce363ef119ccdb0ae40e5ce99d3f0a27e0))
* **i18n:** dedupe backend locale keys via AST ([#2920](https://github.com/HankHuang0516/EClaw/issues/2920)) ([40ef114](https://github.com/HankHuang0516/EClaw/commit/40ef11414c8b836fe1ed93ec06c839df3a1bf7b9))
* **i18n:** dedupe zh locale keys ([#2919](https://github.com/HankHuang0516/EClaw/issues/2919)) ([afd2cca](https://github.com/HankHuang0516/EClaw/commit/afd2cca8086c2f2df0d04c9c5f8c58733652875e))
* **kanban:** dep-aware nudge gating + roadmap dependency backfill ([#2904](https://github.com/HankHuang0516/EClaw/issues/2904)) ([2b76ac9](https://github.com/HankHuang0516/EClaw/commit/2b76ac9d3b7e4169b7bc3c6f6b0b0903b63cd9f7)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **rental:** don't pollute entity.message on push gateway timeout ([#2860](https://github.com/HankHuang0516/EClaw/issues/2860)) ([592ba44](https://github.com/HankHuang0516/EClaw/commit/592ba44f57536ee00011b6cbddaa6b129a7cbae9))
* **petdx:** drop dark-grey loading placeholder + preload sprite WEBP ([#2628](https://github.com/HankHuang0516/EClaw/issues/2628)) ([59cef38](https://github.com/HankHuang0516/EClaw/commit/59cef387bd69ca99d7d15c86a1364856d3849ad8)), closes [#1a1a1a](https://github.com/HankHuang0516/EClaw/issues/1a1a1a)
* **gateway-ws:** drop Origin header on server-to-server WS upgrade ([#2869](https://github.com/HankHuang0516/EClaw/issues/2869)) ([716dcf9](https://github.com/HankHuang0516/EClaw/commit/716dcf9d0834b17522bb9d894bad84bc142d1a19))
* **setup-scripts:** drop Origin header on server-to-server WS upgrade ([#2875](https://github.com/HankHuang0516/EClaw/issues/2875)) ([9d893b8](https://github.com/HankHuang0516/EClaw/commit/9d893b8e5eea4db275e450bf423903c156cd3e4b)), closes [#2869](https://github.com/HankHuang0516/EClaw/issues/2869)
* **security:** escape innerHTML in chat modal error messages ([#2819](https://github.com/HankHuang0516/EClaw/issues/2819)) ([dce07ad](https://github.com/HankHuang0516/EClaw/commit/dce07adde64795916dba977ae23e46f3371ce7ed)), closes [#2809](https://github.com/HankHuang0516/EClaw/issues/2809) [#2810](https://github.com/HankHuang0516/EClaw/issues/2810) [#2809](https://github.com/HankHuang0516/EClaw/issues/2809) [#2810](https://github.com/HankHuang0516/EClaw/issues/2810)
* **entities:** expose botSecret to owner so wallpaper service can poll companions ([#2615](https://github.com/HankHuang0516/EClaw/issues/2615)) ([04470fc](https://github.com/HankHuang0516/EClaw/commit/04470fce8f8c3fce2b1ba8b243e776606f107502))
* **rental:** expose owner_public_code in marketplace so plaza CTA can route ([#2616](https://github.com/HankHuang0516/EClaw/issues/2616)) ([4d1372f](https://github.com/HankHuang0516/EClaw/commit/4d1372f717d93cab65543e87c852e74e9fb67071)), closes [#2610](https://github.com/HankHuang0516/EClaw/issues/2610)
* **mindmap:** fallback to device scope when entityId is null ([#2728](https://github.com/HankHuang0516/EClaw/issues/2728)) ([7572312](https://github.com/HankHuang0516/EClaw/commit/7572312433d3d75fc245eda48a28919ce14bd927))
* **i18n:** fill 11 missing zh keys post-[#2920](https://github.com/HankHuang0516/EClaw/issues/2920)/[#2921](https://github.com/HankHuang0516/EClaw/issues/2921) (card_de6970) ([#2924](https://github.com/HankHuang0516/EClaw/issues/2924)) ([17c4899](https://github.com/HankHuang0516/EClaw/commit/17c48996489b1444d6ed589027acfa7986178fe1)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** fill backend runtime locale gaps ([#2921](https://github.com/HankHuang0516/EClaw/issues/2921)) ([00d96ff](https://github.com/HankHuang0516/EClaw/commit/00d96ff261b8134b49292623e1f786fd544144cc))
* **i18n:** fill Spanish drift keys ([#2751](https://github.com/HankHuang0516/EClaw/issues/2751)) ([0ad0ee5](https://github.com/HankHuang0516/EClaw/commit/0ad0ee55f7fac3e6ac46d891539950dab4d553cc))
* **portal:** fit embedded org chart to mobile viewport ([#2674](https://github.com/HankHuang0516/EClaw/issues/2674)) ([1c4e1b4](https://github.com/HankHuang0516/EClaw/commit/1c4e1b413ea7027b4cd4b8ecda981b0d0e12e66b))
* **i18n:** fix 6 trailing-comma syntax errors in 10-locale batch ([#2771](https://github.com/HankHuang0516/EClaw/issues/2771)) ([b27c6ca](https://github.com/HankHuang0516/EClaw/commit/b27c6ca204bf813e406c54ce3a2532a5f1f031b3))
* **kanban:** GET card returns latest 50 comments + comments endpoint exposes total ([#2816](https://github.com/HankHuang0516/EClaw/issues/2816)) ([c4d83f7](https://github.com/HankHuang0516/EClaw/commit/c4d83f777a1cd26aea0936e4316aa35c52822eef))
* **sharechat:** guest verify-email modal + disabled Send for unverified ([#2865](https://github.com/HankHuang0516/EClaw/issues/2865)) ([cb3b061](https://github.com/HankHuang0516/EClaw/commit/cb3b0614e0f6160417d907753e66eceb2d666802))
* **uiux:** harden chat previews and roster preview ([#2769](https://github.com/HankHuang0516/EClaw/issues/2769)) ([466d4d3](https://github.com/HankHuang0516/EClaw/commit/466d4d3ef81c628d3f58db64323946053d7bf61c))
* **mention-parser:** ignore @-mentions inside markdown code spans ([#2645](https://github.com/HankHuang0516/EClaw/issues/2645)) ([8da19d4](https://github.com/HankHuang0516/EClaw/commit/8da19d4a79ceb4152bf2144ee0847c61ce3e1def)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **kanban:** lazy-load dependency chips via IntersectionObserver ([#2632](https://github.com/HankHuang0516/EClaw/issues/2632)) ([20586b4](https://github.com/HankHuang0516/EClaw/commit/20586b43357335f9eb6a190c02d58c8e36b58aba)), closes [#2631](https://github.com/HankHuang0516/EClaw/issues/2631)
* **i18n:** localize FCM NotificationChannel labels (card_ec8d3a22) ([#2918](https://github.com/HankHuang0516/EClaw/issues/2918)) ([591cd20](https://github.com/HankHuang0516/EClaw/commit/591cd206704693650a53d19d94c4cc75daf84ffd))
* **kanban:** make card sorting deterministic ([#2756](https://github.com/HankHuang0516/EClaw/issues/2756)) ([48e2117](https://github.com/HankHuang0516/EClaw/commit/48e2117b64e37f05dc635e0a3b67bfd43cbe48f5))
* **portal/nagoya-trip:** map-link invisible on dark hero/day-banner ([#2897](https://github.com/HankHuang0516/EClaw/issues/2897)) ([cc33df6](https://github.com/HankHuang0516/EClaw/commit/cc33df686673455c20beaee60871412a5d486e66)), closes [#1f4030](https://github.com/HankHuang0516/EClaw/issues/1f4030) [#8b8579](https://github.com/HankHuang0516/EClaw/issues/8b8579) [#6e6859](https://github.com/HankHuang0516/EClaw/issues/6e6859) [#7a5614](https://github.com/HankHuang0516/EClaw/issues/7a5614)
* **org-chart:** notify affected bots on hierarchy change ([#2812](https://github.com/HankHuang0516/EClaw/issues/2812)) ([55675fd](https://github.com/HankHuang0516/EClaw/commit/55675fdf4487494d729a29524b32bd81b756a00c)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** notify reviewer on manual /move → review ([#2753](https://github.com/HankHuang0516/EClaw/issues/2753)) ([6cbbb4e](https://github.com/HankHuang0516/EClaw/commit/6cbbb4ee8c0d4d8ad54df2e9b5faaa3699bd530f))
* **wallpaper:** off-load spritesheet fetch to IO so per-petdx sprites actually render ([#2618](https://github.com/HankHuang0516/EClaw/issues/2618)) ([61b832c](https://github.com/HankHuang0516/EClaw/commit/61b832c9fa8a1d0caab810ccc942d85c63349267)), closes [#2615](https://github.com/HankHuang0516/EClaw/issues/2615) [#2577](https://github.com/HankHuang0516/EClaw/issues/2577)
* **security:** patch P0 sanitize-html XSS + P1 protobufjs + exam.html XSS ([#2829](https://github.com/HankHuang0516/EClaw/issues/2829)) ([c71b871](https://github.com/HankHuang0516/EClaw/commit/c71b871a045887375dd0d26d1a3280a0891a89ad))
* **security:** patch ws uninitialized memory disclosure (GHSA-58qx-3vcg-4xpx) ([#2872](https://github.com/HankHuang0516/EClaw/issues/2872)) ([2523d15](https://github.com/HankHuang0516/EClaw/commit/2523d154bbe501a7cc086340f7a07ece3abfa69b))
* **portal:** petdx-browser cookie-session fallback for device-login ([#2757](https://github.com/HankHuang0516/EClaw/issues/2757)) ([ca275f4](https://github.com/HankHuang0516/EClaw/commit/ca275f4519835da0c7ad71c588908a18f6f138d8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **api:** platform-stats 500 + entity/lookup publicCode alias ([#2809](https://github.com/HankHuang0516/EClaw/issues/2809), [#2810](https://github.com/HankHuang0516/EClaw/issues/2810)) ([#2818](https://github.com/HankHuang0516/EClaw/issues/2818)) ([f99fd17](https://github.com/HankHuang0516/EClaw/commit/f99fd17b2b1c32d88daa2510ff66d714c1a53edc))
* **i18n:** positional format specifiers for feedback_result_logs (7 locales) ([#2597](https://github.com/HankHuang0516/EClaw/issues/2597)) ([21aedc7](https://github.com/HankHuang0516/EClaw/commit/21aedc7eebc7a2839e340136f38dfdfd4dabb9dc))
* **avatar-petdx:** preserve descriptor across transient API failures (flicker) ([#2625](https://github.com/HankHuang0516/EClaw/issues/2625)) ([7b1c606](https://github.com/HankHuang0516/EClaw/commit/7b1c606514f7698d72ec95cf6c556e4043966186))
* **chat:** preserve recipient selection across rental-health refresh (P0 #card_eb1cba76) ([#2906](https://github.com/HankHuang0516/EClaw/issues/2906)) ([9cc0301](https://github.com/HankHuang0516/EClaw/commit/9cc0301cc26a0f49af4b7f53486f5c1a7cdd7902)), closes [#card_eb1cba76](https://github.com/HankHuang0516/EClaw/issues/card_eb1cba76) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **chat:** preserve scroll anchor while reading history ([#2693](https://github.com/HankHuang0516/EClaw/issues/2693)) ([945fdb7](https://github.com/HankHuang0516/EClaw/commit/945fdb7192b791b31882e1e75568dd8b11e4686f))
* **promo:** pull video embed from /promo-chat-avatar.html ([#2724](https://github.com/HankHuang0516/EClaw/issues/2724)) ([2afabc8](https://github.com/HankHuang0516/EClaw/commit/2afabc8c5ff8b25218a7cb857e8adfa572c8e9d5))
* **dashboard:** read live.rate_limits.{five_hour,seven_day}.used_percentage ([#2895](https://github.com/HankHuang0516/EClaw/issues/2895)) ([8223303](https://github.com/HankHuang0516/EClaw/commit/822330312bccb1c76675ad2c3b26e78d10dd1298))
* **kanban:** realign stale recurring schedules ([#2785](https://github.com/HankHuang0516/EClaw/issues/2785)) ([ab8ee25](https://github.com/HankHuang0516/EClaw/commit/ab8ee250a9b37f3d3e838bb01d8866c8d2b78231))
* **i18n:** reapply de6970 locale gap translations ([#2925](https://github.com/HankHuang0516/EClaw/issues/2925)) ([d994dc1](https://github.com/HankHuang0516/EClaw/commit/d994dc1d240fef72326db2599262375ccbf29175))
* **portal:** reduce QA-discovered request fanout ([#2656](https://github.com/HankHuang0516/EClaw/issues/2656)) ([1e46d6b](https://github.com/HankHuang0516/EClaw/commit/1e46d6bab61e58c65b452b6503d953f8dddeee75))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **portal:** remove org chart fit scale floor ([#2676](https://github.com/HankHuang0516/EClaw/issues/2676)) ([0f01606](https://github.com/HankHuang0516/EClaw/commit/0f016068b963bb5f800a02f28817c7174979d913))
* **rental:** remove phantom 'webhook test push' step from BIND_COMPLETE ([#2864](https://github.com/HankHuang0516/EClaw/issues/2864)) ([47f4a3e](https://github.com/HankHuang0516/EClaw/commit/47f4a3edf76aa95ebd06d8713cd44fda6eef9b5d))
* **i18n:** rename mm_empty_title → mm_state_empty_title in mindmap.html ([#2683](https://github.com/HankHuang0516/EClaw/issues/2683)) ([c79c109](https://github.com/HankHuang0516/EClaw/commit/c79c109bea23142e8a6d9ace976d105af1280ec9))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **chat:** render mention avatars with companion renderer ([#2633](https://github.com/HankHuang0516/EClaw/issues/2633)) ([03e205f](https://github.com/HankHuang0516/EClaw/commit/03e205f663ecd2c2f443d4009dd5af0093f0bbbb))
* **kanban:** reserve mobile comments panel height ([#2782](https://github.com/HankHuang0516/EClaw/issues/2782)) ([ce8662d](https://github.com/HankHuang0516/EClaw/commit/ce8662d362422fdd25037f1deb61dbed9425e2f9))
* **channel:** restore handshake fallback to discovered sessions ([#2915](https://github.com/HankHuang0516/EClaw/issues/2915)) ([#2917](https://github.com/HankHuang0516/EClaw/issues/2917)) ([9d7d3a2](https://github.com/HankHuang0516/EClaw/commit/9d7d3a25654289998314dd5ca152cefdb8a4d64e)), closes [#2912](https://github.com/HankHuang0516/EClaw/issues/2912)
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* scheduled audit 2026-05-13 — 6 bugs, XSS, i18n ([#2668](https://github.com/HankHuang0516/EClaw/issues/2668)) ([21dd513](https://github.com/HankHuang0516/EClaw/commit/21dd513b4464738de29164265437435ba6cc4817)), closes [#2605](https://github.com/HankHuang0516/EClaw/issues/2605) [#2608](https://github.com/HankHuang0516/EClaw/issues/2608) [#2600](https://github.com/HankHuang0516/EClaw/issues/2600) [#2599](https://github.com/HankHuang0516/EClaw/issues/2599) [#2598](https://github.com/HankHuang0516/EClaw/issues/2598)
* **channel:** scope official bot sessions ([#2912](https://github.com/HankHuang0516/EClaw/issues/2912)) ([5c56b62](https://github.com/HankHuang0516/EClaw/commit/5c56b62c13b739b76f39e168a26bd4e5de2644fb))
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **dashboard:** show Claude weekly bar reset countdown ([#2896](https://github.com/HankHuang0516/EClaw/issues/2896)) ([3b87845](https://github.com/HankHuang0516/EClaw/commit/3b87845d713e980fec69f6b8007549338a326713)), closes [#2895](https://github.com/HankHuang0516/EClaw/issues/2895)
* **chat:** smart-chip preview falls back to inline c.comments when /comments fails (PR [#2677](https://github.com/HankHuang0516/EClaw/issues/2677)) ([7f4dffd](https://github.com/HankHuang0516/EClaw/commit/7f4dffd2c83ea86f296b8fa0610f0e67c9f1af11))
* **kanban:** stabilize comment detail viewport ([#2796](https://github.com/HankHuang0516/EClaw/issues/2796)) ([0a10aad](https://github.com/HankHuang0516/EClaw/commit/0a10aadb5a5b12ff23454c16d5c88183b94ad7d7))
* **wallpaper:** stop Android live wallpaper flashing default lobster on companion change ([#2629](https://github.com/HankHuang0516/EClaw/issues/2629)) ([8b4f66f](https://github.com/HankHuang0516/EClaw/commit/8b4f66fcb335bf43128f924b761b6337c817095b)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **chat:** stop chat.html bouncing to dashboard via /api/rental/health-status 401 race ([#2833](https://github.com/HankHuang0516/EClaw/issues/2833)) ([c422406](https://github.com/HankHuang0516/EClaw/commit/c4224067cdcfe7f3e22ab95007c7563dac4196ac))
* **openclaw-channel:** support OpenClaw 2026.5.20 ([8045de6](https://github.com/HankHuang0516/EClaw/commit/8045de6bebecfc05f9bd57453b99c098ca35681b))
* **mentions:** support same-device CJK display-name tags ([#2874](https://github.com/HankHuang0516/EClaw/issues/2874)) ([b8f61be](https://github.com/HankHuang0516/EClaw/commit/b8f61be9a3962fef75dd32ea34e8900880dafaf9))
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **dashboard:** use sessions[].project for widget Projects list (was .project_id) ([#2894](https://github.com/HankHuang0516/EClaw/issues/2894)) ([0fd1334](https://github.com/HankHuang0516/EClaw/commit/0fd1334897d4a603cc6eb74f34b48606547e09cf))
* **app:** WebView pages honor app-selected locale via ?lang= URL param ([#2672](https://github.com/HankHuang0516/EClaw/issues/2672)) ([8ed8757](https://github.com/HankHuang0516/EClaw/commit/8ed8757aec5bf214e837cc0d81bf2b23f1993a91)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **share-chat:** wire rich CTA actions to msgInput ([#2867](https://github.com/HankHuang0516/EClaw/issues/2867)) ([df23b11](https://github.com/HankHuang0516/EClaw/commit/df23b1147d34c59a644a145bbd87c18b96400acc))


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* **usage-api:** /api/usage/{snapshot,timeline} + usage_snapshots table (Plan B Phase 1) ([#2889](https://github.com/HankHuang0516/EClaw/issues/2889)) ([a0d859c](https://github.com/HankHuang0516/EClaw/commit/a0d859c63f0220909dadb2b1952174861ccdce14))
* **community:** 1-click chat button on bot cards + utm tagging ([#2610](https://github.com/HankHuang0516/EClaw/issues/2610)) ([eee97b0](https://github.com/HankHuang0516/EClaw/commit/eee97b0e2e4e74945ec24f218a69a52800b97a66))
* **chat:** accept ?messageId= as deep-link alias ([#2838](https://github.com/HankHuang0516/EClaw/issues/2838)) ([1785a87](https://github.com/HankHuang0516/EClaw/commit/1785a87310426637fd10df83754fb9924c45207f))
* **chat:** add avatar size preference ([#2714](https://github.com/HankHuang0516/EClaw/issues/2714)) ([6fe164a](https://github.com/HankHuang0516/EClaw/commit/6fe164ad8b22fa576d2dd9ad37c0d9fc295b5a83))
* **dashboard:** add Claude and Codex channel guides ([#2640](https://github.com/HankHuang0516/EClaw/issues/2640)) ([c64e4c4](https://github.com/HankHuang0516/EClaw/commit/c64e4c4afc78db58c5cd578f00486dd7b2fd3311))
* **dashboard:** add Claude Code channel guide card ([#2667](https://github.com/HankHuang0516/EClaw/issues/2667)) ([d70d75c](https://github.com/HankHuang0516/EClaw/commit/d70d75c0c8caa8a540358a9aab4556b8c1927a5c))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* **kanban:** add device-scoped card tags ([#2773](https://github.com/HankHuang0516/EClaw/issues/2773)) ([53a387e](https://github.com/HankHuang0516/EClaw/commit/53a387e67ba7bb4f6bed1c427000c4ae8666577a))
* **portal:** add entity selector to petdx-browser ([#2602](https://github.com/HankHuang0516/EClaw/issues/2602)) ([3fa067e](https://github.com/HankHuang0516/EClaw/commit/3fa067e00b38829b48a37cecd33ee81a9a1122d9))
* **kanban:** add explicit card links ([#2721](https://github.com/HankHuang0516/EClaw/issues/2721)) ([ef9f812](https://github.com/HankHuang0516/EClaw/commit/ef9f812a3fcf39efd07fd158ce90951bdd045ac7))
* **kanban:** add explicit done-card reopen flow ([#2801](https://github.com/HankHuang0516/EClaw/issues/2801)) ([5080aac](https://github.com/HankHuang0516/EClaw/commit/5080aacb75047c0deaa379ee708ec85465afd57c))
* **mindmap:** add GET /api/mindmap/graph force-graph projection ([#2680](https://github.com/HankHuang0516/EClaw/issues/2680)) ([a00b2e7](https://github.com/HankHuang0516/EClaw/commit/a00b2e775af2c4c98cd157f760ad87aeeee469f0)), closes [#2679](https://github.com/HankHuang0516/EClaw/issues/2679) [#2679](https://github.com/HankHuang0516/EClaw/issues/2679)
* **dashboard:** add Hermes channel promo card ([#2708](https://github.com/HankHuang0516/EClaw/issues/2708)) ([337aca1](https://github.com/HankHuang0516/EClaw/commit/337aca153d5a1cd7e888c065f00ae54db7872d91))
* **rental:** add listing soft pause ([#2781](https://github.com/HankHuang0516/EClaw/issues/2781)) ([6586b72](https://github.com/HankHuang0516/EClaw/commit/6586b72717ddb1637d91cd3242c8d2ff554f62b4))
* **portal:** add Nagoya 5D4N trip static cross-ref page ([#2689](https://github.com/HankHuang0516/EClaw/issues/2689)) ([2e0efb6](https://github.com/HankHuang0516/EClaw/commit/2e0efb6dcdaff52226cc8854a96747000b12bdff))
* **portal:** add Nagoya trip map links and image lightbox ([#2821](https://github.com/HankHuang0516/EClaw/issues/2821)) ([3e40955](https://github.com/HankHuang0516/EClaw/commit/3e40955650a05f45a6b9f7e39e73847705424a03))
* **portal/nagoya:** add parking shortcut buttons next to itinerary places ([#2826](https://github.com/HankHuang0516/EClaw/issues/2826)) ([63968c5](https://github.com/HankHuang0516/EClaw/commit/63968c554d046afc8d978de74e3aacbf7700500d))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **settings:** add rental roster management preview ([#2758](https://github.com/HankHuang0516/EClaw/issues/2758)) ([9706e59](https://github.com/HankHuang0516/EClaw/commit/9706e59ded140a90a6e02348124282bc69d89001))
* **rental:** add renter health chat indicator ([#2690](https://github.com/HankHuang0516/EClaw/issues/2690)) ([36cd2e9](https://github.com/HankHuang0516/EClaw/commit/36cd2e9802be4c7ebb03d3024617fa74aca48ffd))
* **ios:** add Tutorial & Intro entry in Settings ([#2800](https://github.com/HankHuang0516/EClaw/issues/2800)) ([ed83e51](https://github.com/HankHuang0516/EClaw/commit/ed83e51d043bf4cd5865f38dc95a91ed54820d6c))
* **landing:** add Watch Full Demo CTA below hero video ([#2799](https://github.com/HankHuang0516/EClaw/issues/2799)) ([66107c9](https://github.com/HankHuang0516/EClaw/commit/66107c954727551fd34d989a4674daaad9b63968))
* **footer:** add Watch Intro Video link in Info column ([#2798](https://github.com/HankHuang0516/EClaw/issues/2798)) ([d7c6d59](https://github.com/HankHuang0516/EClaw/commit/d7c6d596b69c6a5b257bf1f7a792a407ef9712ad))
* **i18n:** ar iter-2 — fill 623 missing keys against en source ([#2847](https://github.com/HankHuang0516/EClaw/issues/2847)) ([ee94a7a](https://github.com/HankHuang0516/EClaw/commit/ee94a7ae6812b5163efe4284ee4907ca32302f5c))
* **kanban:** backlog launch-gate flag to suppress L1/L2/L3 escalation ([#2855](https://github.com/HankHuang0516/EClaw/issues/2855)) ([cb8bf1b](https://github.com/HankHuang0516/EClaw/commit/cb8bf1bb6421f25214f65e129a8cadccc49cc266)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#4](https://github.com/HankHuang0516/EClaw/issues/4) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **companion:** bridge crafter-station/petdex gallery (1784 pets) ([#2601](https://github.com/HankHuang0516/EClaw/issues/2601)) ([2e245be](https://github.com/HankHuang0516/EClaw/commit/2e245bea6dd47ea7361b927d389188a3c23b6bb3))
* **promo:** chat avatar size feature landing page (self-hosted MP4) ([#2722](https://github.com/HankHuang0516/EClaw/issues/2722)) ([3852210](https://github.com/HankHuang0516/EClaw/commit/3852210d355704d018e3daca6b5f9512a011b210)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **kanban:** cron-spawn jitter + lane backpressure to prevent same-tick wedge ([#2791](https://github.com/HankHuang0516/EClaw/issues/2791)) ([9f414a7](https://github.com/HankHuang0516/EClaw/commit/9f414a731d6393672a0a4189c7b408c529ae5e12)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **portal:** dashboard usage widget — Claude/Codex 5h gauges + 24h chart (Plan B Phase 3) ([#2891](https://github.com/HankHuang0516/EClaw/issues/2891)) ([d18f373](https://github.com/HankHuang0516/EClaw/commit/d18f373857e4bd302437d6bda2a1e01871fbb1db))
* **portal:** dashboard usage widget v2 — Session/Weekly % bars + projects, no cost (Plan B Phase 3.1) ([#2893](https://github.com/HankHuang0516/EClaw/issues/2893)) ([4bc0dc7](https://github.com/HankHuang0516/EClaw/commit/4bc0dc744ed9d54dfd532ebac4b705c7f84ec0a6))
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **promo:** embed daily eclaw video 2026-05-14 ([#2786](https://github.com/HankHuang0516/EClaw/issues/2786)) ([718a814](https://github.com/HankHuang0516/EClaw/commit/718a814ab16850bc2b33a1b303841e2c4378ecfa)), closes [#2782](https://github.com/HankHuang0516/EClaw/issues/2782) [#2693](https://github.com/HankHuang0516/EClaw/issues/2693)
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **info:** embed promo video at top of Quick Start tab ([#2797](https://github.com/HankHuang0516/EClaw/issues/2797)) ([047679f](https://github.com/HankHuang0516/EClaw/commit/047679fd57ab9949eaeacea414d5611e71afe041))
* **rental:** enforce strict rebind refunds ([#2703](https://github.com/HankHuang0516/EClaw/issues/2703)) ([a1859c5](https://github.com/HankHuang0516/EClaw/commit/a1859c50e6fb3991d7a8051491502d824a14a116))
* **portal:** group task chip actions ([#2825](https://github.com/HankHuang0516/EClaw/issues/2825)) ([5db5c59](https://github.com/HankHuang0516/EClaw/commit/5db5c59b32b8635f1412205faf0c2f9164d3d5d4))
* **hermes:** H2 health-check cron + 7d SLA + commander alerts (card_07891ac) ([#2922](https://github.com/HankHuang0516/EClaw/issues/2922)) ([82b4315](https://github.com/HankHuang0516/EClaw/commit/82b4315aea234493e3d1889dc53958c2f1d842e0)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **portal:** info-guide-rules + info-guide-soul slide pair ([#2793](https://github.com/HankHuang0516/EClaw/issues/2793)) ([1c8bddc](https://github.com/HankHuang0516/EClaw/commit/1c8bddc4c185054b2b60088498e3d45509117127)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **chat:** link card previews to kanban ([#2754](https://github.com/HankHuang0516/EClaw/issues/2754)) ([2261240](https://github.com/HankHuang0516/EClaw/commit/22612402c2e95efb07246629e81a849be41ee9c7))
* **mission:** link notes to kanban cards ([#2723](https://github.com/HankHuang0516/EClaw/issues/2723)) ([b36dc18](https://github.com/HankHuang0516/EClaw/commit/b36dc18f3a8facf12e0b6046351c222f1e99dc55))
* **usage-daemon:** macOS launchd daemon polls Claude/Codex usage → POST /api/usage/snapshot (Plan B Phase 2) ([#2890](https://github.com/HankHuang0516/EClaw/issues/2890)) ([fd225e1](https://github.com/HankHuang0516/EClaw/commit/fd225e12d9491037be1a340bd63b54b5f3308c7f))
* **mindmap:** mission.html link to /portal/mindmap.html + deprecate /api/mission/mindmap ([#2685](https://github.com/HankHuang0516/EClaw/issues/2685)) ([11e297b](https://github.com/HankHuang0516/EClaw/commit/11e297bab1c9b56fcde3027d6500b7c58891bf18)), closes [#2680](https://github.com/HankHuang0516/EClaw/issues/2680) [#2684](https://github.com/HankHuang0516/EClaw/issues/2684)
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **portal:** nagoya trip interactive map (Leaflet + OSM, no API key) ([#2888](https://github.com/HankHuang0516/EClaw/issues/2888)) ([ecfdac0](https://github.com/HankHuang0516/EClaw/commit/ecfdac06348c12ee7c6872c6c28d5f82162e7aa9))
* **channel:** outbound backpressure (30/min cap + 429 retry-after) ([#2911](https://github.com/HankHuang0516/EClaw/issues/2911)) ([36dc99c](https://github.com/HankHuang0516/EClaw/commit/36dc99ca78b0e1724a2aaefb5936669077b7a28f))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **settings:** per-entity nudge override UI (Phase 2) ([#2837](https://github.com/HankHuang0516/EClaw/issues/2837)) ([ea7662b](https://github.com/HankHuang0516/EClaw/commit/ea7662b0858882dae461e1387f711895924f9ab8)), closes [3/#4](https://github.com/HankHuang0516/EClaw/issues/4)
* **kanban:** per-entity nudge overrides (Phase 2 of card_e066cb6b) ([#2836](https://github.com/HankHuang0516/EClaw/issues/2836)) ([0425f80](https://github.com/HankHuang0516/EClaw/commit/0425f80bc1169c0d506b665659c8676695c45553))
* **avatar:** petdx render on card-holder my-cards (Phase 1b) ([#2621](https://github.com/HankHuang0516/EClaw/issues/2621)) ([f78ba8b](https://github.com/HankHuang0516/EClaw/commit/f78ba8b18acc426936ab6d8a82ca7541effea00d))
* **avatar:** petdx render on dashboard entity grid / org chart / bindings (Phase 1b) ([#2622](https://github.com/HankHuang0516/EClaw/issues/2622)) ([f417749](https://github.com/HankHuang0516/EClaw/commit/f41774914451048e8cd76e9ae30416a0642e173b)), closes [#2620](https://github.com/HankHuang0516/EClaw/issues/2620) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621)
* **avatar:** petdx render on kanban auto-assign / pulse / comment avatars (Phase 1b) ([#2624](https://github.com/HankHuang0516/EClaw/issues/2624)) ([6bff5f8](https://github.com/HankHuang0516/EClaw/commit/6bff5f80440d0bd91a6b1721cde9478d685c4d46))
* **avatar:** petdx render on mission skill/rule/soul entity dialogs (Phase 1b) ([#2623](https://github.com/HankHuang0516/EClaw/issues/2623)) ([129327b](https://github.com/HankHuang0516/EClaw/commit/129327bc7b91056659f1ab7e8d5e3f5260d951fb))
* **mindmap:** portal/mindmap.html force-graph prototype ([#129](https://github.com/HankHuang0516/EClaw/issues/129)) ([#2681](https://github.com/HankHuang0516/EClaw/issues/2681)) ([0f15e69](https://github.com/HankHuang0516/EClaw/commit/0f15e6930f0697c37fa08f3219edb8f9e499837f)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **channel:** record delivery receipts ([#2913](https://github.com/HankHuang0516/EClaw/issues/2913)) ([90c671b](https://github.com/HankHuang0516/EClaw/commit/90c671bd1970ab51584b90e2b634484ec10cc7ae))
* **portal:** redo nagoya trip page in professional tour-guide style ([#2691](https://github.com/HankHuang0516/EClaw/issues/2691)) ([b2378c0](https://github.com/HankHuang0516/EClaw/commit/b2378c06ee20fa9cccfdceceb1a4c9e0b3072f59))
* **i18n:** remove ms+hi orphan keys from i18n.js ([#2849](https://github.com/HankHuang0516/EClaw/issues/2849)) ([320176c](https://github.com/HankHuang0516/EClaw/commit/320176c06a3cfd8631e2a82ad02a6bd6a9af0389))
* **avatar:** render selected petdx companion in chat avatars ([#2620](https://github.com/HankHuang0516/EClaw/issues/2620)) ([0bdd046](https://github.com/HankHuang0516/EClaw/commit/0bdd046fe1b1c428e32edda366ff112c08927f4c))
* **home:** replace native home with WebView hosting dashboard.html ([#2634](https://github.com/HankHuang0516/EClaw/issues/2634)) ([e69ea81](https://github.com/HankHuang0516/EClaw/commit/e69ea8160c239b083a83d6dc83a4f1c3f901c863))
* **app:** route chat mission jumps through native tabs ([#2824](https://github.com/HankHuang0516/EClaw/issues/2824)) ([deb07b6](https://github.com/HankHuang0516/EClaw/commit/deb07b69a9ecca632fe27278de537f1d85234e94))
* **proxy:** scope private repo git auth ([#2926](https://github.com/HankHuang0516/EClaw/issues/2926)) ([246f7ff](https://github.com/HankHuang0516/EClaw/commit/246f7ff1dedaf7bece9e3cb9eb24d0ab32ebb393))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **chat:** support message deep links ([#2719](https://github.com/HankHuang0516/EClaw/issues/2719)) ([2dc0f1e](https://github.com/HankHuang0516/EClaw/commit/2dc0f1eeb259e1a0848db4a03186b989372cd91c))
* **mission:** support note deep links ([#2717](https://github.com/HankHuang0516/EClaw/issues/2717)) ([2efd3a5](https://github.com/HankHuang0516/EClaw/commit/2efd3a5e741217a07c0b0ac54a0ddd010e0ebe23))
* **share-chat:** twitter card + per-bot og:image/twitter:* in SSR ([#2609](https://github.com/HankHuang0516/EClaw/issues/2609)) ([6cdc853](https://github.com/HankHuang0516/EClaw/commit/6cdc853dc884cdb95bd47214942768981f218ae0))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))
* **settings:** wire petdx avatar into channel-account chips ([#2626](https://github.com/HankHuang0516/EClaw/issues/2626)) ([88aec77](https://github.com/HankHuang0516/EClaw/commit/88aec772628c240e97b336bb5820892ad632d1ae))
* **files:** wire petdx avatar into entity filter & per-file badges ([#2627](https://github.com/HankHuang0516/EClaw/issues/2627)) ([5b3e5cc](https://github.com/HankHuang0516/EClaw/commit/5b3e5cc542d9da69bb4e92500fd03a542ea33f00))
* **mindmap:** wrap hardcoded zh-TW UI strings with i18n t() ([#2607](https://github.com/HankHuang0516/EClaw/issues/2607)) ([166af87](https://github.com/HankHuang0516/EClaw/commit/166af8772b2121a24aaf34a83b3de970e9b3b571)), closes [#2606](https://github.com/HankHuang0516/EClaw/issues/2606)
* **i18n:** zh-TW backfill 8 keys (soft-pause + chat + invite + wallet) ([#2815](https://github.com/HankHuang0516/EClaw/issues/2815)) ([a2dd574](https://github.com/HankHuang0516/EClaw/commit/a2dd5743ce8d43a4b6ace9a2fd4b52568180d6c5))


### Performance Improvements

* **mindmap:** force-graph hardening for 1000/2000-node graphs ([#2684](https://github.com/HankHuang0516/EClaw/issues/2684)) ([da8b1c8](https://github.com/HankHuang0516/EClaw/commit/da8b1c8f947ab8bc8fa455c1962a91146623a1fc))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-25)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **notifications:** add kanban_done + kanban_done_auto toggles to Android Settings ([#2636](https://github.com/HankHuang0516/EClaw/issues/2636)) ([a710909](https://github.com/HankHuang0516/EClaw/commit/a7109095e3393b8564e7ef1b23d382a4fbb944b8))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **api:** align /api/platform-stats skill-doc with device-auth contract (card_49b8190) ([#2916](https://github.com/HankHuang0516/EClaw/issues/2916)) ([ee55b2f](https://github.com/HankHuang0516/EClaw/commit/ee55b2fdbfbcd4bead5501d16ee66339056c32d7))
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **i18n:** ar block — fix 27 broken entries (CJK leaks + truncated HTML) ([#2851](https://github.com/HankHuang0516/EClaw/issues/2851)) ([5b19175](https://github.com/HankHuang0516/EClaw/commit/5b19175d712d00d16fcec00b749035c4beae7a5c))
* **chat:** atomic-load target bar (await contacts before first render) ([#2831](https://github.com/HankHuang0516/EClaw/issues/2831)) ([5f529e6](https://github.com/HankHuang0516/EClaw/commit/5f529e6b772eacc38ba1de69b44258a05f0d816a)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2](https://github.com/HankHuang0516/EClaw/issues/2)
* **channel:** await binding persistence ([712516d](https://github.com/HankHuang0516/EClaw/commit/712516decafb745035bd1434a28cc1973d433e19))
* **rental:** bump handshake timeout to 60s + timeout-aware discovery fallback ([#2863](https://github.com/HankHuang0516/EClaw/issues/2863)) ([fd4322f](https://github.com/HankHuang0516/EClaw/commit/fd4322f8890f3c2dfca3acdae6a4b95f19c381f9)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **i18n:** clear batch 1 residual missing keys ([#2790](https://github.com/HankHuang0516/EClaw/issues/2790)) ([211030e](https://github.com/HankHuang0516/EClaw/commit/211030e0b0b6a865c11f0c4ed60dc4e356d43b7a))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **kanban:** comment input no longer overlaps last comment in card detail (PR [#2678](https://github.com/HankHuang0516/EClaw/issues/2678)) ([fba91fc](https://github.com/HankHuang0516/EClaw/commit/fba91fca15402b453a0db5ee857c0b16e6087055))
* **chat:** compact 20px avatar in target bar (App WebView only shows [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2](https://github.com/HankHuang0516/EClaw/issues/2)) ([#2830](https://github.com/HankHuang0516/EClaw/issues/2830)) ([42c7543](https://github.com/HankHuang0516/EClaw/commit/42c7543b4a78a7abf3f5f7535eb9bc6142cd0fe2)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **portal:** complete 401 redirect sweep + mobile UIUX truncation ([#2842](https://github.com/HankHuang0516/EClaw/issues/2842)) ([f9799ba](https://github.com/HankHuang0516/EClaw/commit/f9799ba42498b109f0a8a70e80836aa6da51e216)), closes [#2833](https://github.com/HankHuang0516/EClaw/issues/2833) [#2845](https://github.com/HankHuang0516/EClaw/issues/2845) [#2844](https://github.com/HankHuang0516/EClaw/issues/2844) [#2843](https://github.com/HankHuang0516/EClaw/issues/2843)
* **uiux:** continue qa mobile readability sweep ([#2854](https://github.com/HankHuang0516/EClaw/issues/2854)) ([57606ff](https://github.com/HankHuang0516/EClaw/commit/57606ffe3e543b07a026aacc53c4b470c9a7825b))
* **i18n:** cover dynamic portal wrapper keys ([#2807](https://github.com/HankHuang0516/EClaw/issues/2807)) ([4c711cc](https://github.com/HankHuang0516/EClaw/commit/4c711cc4009300ffe4e8933a98ee01cd0fdd6aeb))
* **i18n:** dedup 20 dash_channel_card_* keys in es block ([#2876](https://github.com/HankHuang0516/EClaw/issues/2876)) ([807284c](https://github.com/HankHuang0516/EClaw/commit/807284ce363ef119ccdb0ae40e5ce99d3f0a27e0))
* **i18n:** dedupe backend locale keys via AST ([#2920](https://github.com/HankHuang0516/EClaw/issues/2920)) ([40ef114](https://github.com/HankHuang0516/EClaw/commit/40ef11414c8b836fe1ed93ec06c839df3a1bf7b9))
* **i18n:** dedupe zh locale keys ([#2919](https://github.com/HankHuang0516/EClaw/issues/2919)) ([afd2cca](https://github.com/HankHuang0516/EClaw/commit/afd2cca8086c2f2df0d04c9c5f8c58733652875e))
* **kanban:** dep-aware nudge gating + roadmap dependency backfill ([#2904](https://github.com/HankHuang0516/EClaw/issues/2904)) ([2b76ac9](https://github.com/HankHuang0516/EClaw/commit/2b76ac9d3b7e4169b7bc3c6f6b0b0903b63cd9f7)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **rental:** don't pollute entity.message on push gateway timeout ([#2860](https://github.com/HankHuang0516/EClaw/issues/2860)) ([592ba44](https://github.com/HankHuang0516/EClaw/commit/592ba44f57536ee00011b6cbddaa6b129a7cbae9))
* **petdx:** drop dark-grey loading placeholder + preload sprite WEBP ([#2628](https://github.com/HankHuang0516/EClaw/issues/2628)) ([59cef38](https://github.com/HankHuang0516/EClaw/commit/59cef387bd69ca99d7d15c86a1364856d3849ad8)), closes [#1a1a1a](https://github.com/HankHuang0516/EClaw/issues/1a1a1a)
* **gateway-ws:** drop Origin header on server-to-server WS upgrade ([#2869](https://github.com/HankHuang0516/EClaw/issues/2869)) ([716dcf9](https://github.com/HankHuang0516/EClaw/commit/716dcf9d0834b17522bb9d894bad84bc142d1a19))
* **setup-scripts:** drop Origin header on server-to-server WS upgrade ([#2875](https://github.com/HankHuang0516/EClaw/issues/2875)) ([9d893b8](https://github.com/HankHuang0516/EClaw/commit/9d893b8e5eea4db275e450bf423903c156cd3e4b)), closes [#2869](https://github.com/HankHuang0516/EClaw/issues/2869)
* **security:** escape innerHTML in chat modal error messages ([#2819](https://github.com/HankHuang0516/EClaw/issues/2819)) ([dce07ad](https://github.com/HankHuang0516/EClaw/commit/dce07adde64795916dba977ae23e46f3371ce7ed)), closes [#2809](https://github.com/HankHuang0516/EClaw/issues/2809) [#2810](https://github.com/HankHuang0516/EClaw/issues/2810) [#2809](https://github.com/HankHuang0516/EClaw/issues/2809) [#2810](https://github.com/HankHuang0516/EClaw/issues/2810)
* **entities:** expose botSecret to owner so wallpaper service can poll companions ([#2615](https://github.com/HankHuang0516/EClaw/issues/2615)) ([04470fc](https://github.com/HankHuang0516/EClaw/commit/04470fce8f8c3fce2b1ba8b243e776606f107502))
* **rental:** expose owner_public_code in marketplace so plaza CTA can route ([#2616](https://github.com/HankHuang0516/EClaw/issues/2616)) ([4d1372f](https://github.com/HankHuang0516/EClaw/commit/4d1372f717d93cab65543e87c852e74e9fb67071)), closes [#2610](https://github.com/HankHuang0516/EClaw/issues/2610)
* **mindmap:** fallback to device scope when entityId is null ([#2728](https://github.com/HankHuang0516/EClaw/issues/2728)) ([7572312](https://github.com/HankHuang0516/EClaw/commit/7572312433d3d75fc245eda48a28919ce14bd927))
* **i18n:** fill 11 missing zh keys post-[#2920](https://github.com/HankHuang0516/EClaw/issues/2920)/[#2921](https://github.com/HankHuang0516/EClaw/issues/2921) (card_de6970) ([#2924](https://github.com/HankHuang0516/EClaw/issues/2924)) ([17c4899](https://github.com/HankHuang0516/EClaw/commit/17c48996489b1444d6ed589027acfa7986178fe1)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** fill backend runtime locale gaps ([#2921](https://github.com/HankHuang0516/EClaw/issues/2921)) ([00d96ff](https://github.com/HankHuang0516/EClaw/commit/00d96ff261b8134b49292623e1f786fd544144cc))
* **i18n:** fill Spanish drift keys ([#2751](https://github.com/HankHuang0516/EClaw/issues/2751)) ([0ad0ee5](https://github.com/HankHuang0516/EClaw/commit/0ad0ee55f7fac3e6ac46d891539950dab4d553cc))
* **portal:** fit embedded org chart to mobile viewport ([#2674](https://github.com/HankHuang0516/EClaw/issues/2674)) ([1c4e1b4](https://github.com/HankHuang0516/EClaw/commit/1c4e1b413ea7027b4cd4b8ecda981b0d0e12e66b))
* **i18n:** fix 6 trailing-comma syntax errors in 10-locale batch ([#2771](https://github.com/HankHuang0516/EClaw/issues/2771)) ([b27c6ca](https://github.com/HankHuang0516/EClaw/commit/b27c6ca204bf813e406c54ce3a2532a5f1f031b3))
* **kanban:** GET card returns latest 50 comments + comments endpoint exposes total ([#2816](https://github.com/HankHuang0516/EClaw/issues/2816)) ([c4d83f7](https://github.com/HankHuang0516/EClaw/commit/c4d83f777a1cd26aea0936e4316aa35c52822eef))
* **sharechat:** guest verify-email modal + disabled Send for unverified ([#2865](https://github.com/HankHuang0516/EClaw/issues/2865)) ([cb3b061](https://github.com/HankHuang0516/EClaw/commit/cb3b0614e0f6160417d907753e66eceb2d666802))
* **uiux:** harden chat previews and roster preview ([#2769](https://github.com/HankHuang0516/EClaw/issues/2769)) ([466d4d3](https://github.com/HankHuang0516/EClaw/commit/466d4d3ef81c628d3f58db64323946053d7bf61c))
* **mention-parser:** ignore @-mentions inside markdown code spans ([#2645](https://github.com/HankHuang0516/EClaw/issues/2645)) ([8da19d4](https://github.com/HankHuang0516/EClaw/commit/8da19d4a79ceb4152bf2144ee0847c61ce3e1def)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **kanban:** lazy-load dependency chips via IntersectionObserver ([#2632](https://github.com/HankHuang0516/EClaw/issues/2632)) ([20586b4](https://github.com/HankHuang0516/EClaw/commit/20586b43357335f9eb6a190c02d58c8e36b58aba)), closes [#2631](https://github.com/HankHuang0516/EClaw/issues/2631)
* **i18n:** localize FCM NotificationChannel labels (card_ec8d3a22) ([#2918](https://github.com/HankHuang0516/EClaw/issues/2918)) ([591cd20](https://github.com/HankHuang0516/EClaw/commit/591cd206704693650a53d19d94c4cc75daf84ffd))
* **kanban:** make card sorting deterministic ([#2756](https://github.com/HankHuang0516/EClaw/issues/2756)) ([48e2117](https://github.com/HankHuang0516/EClaw/commit/48e2117b64e37f05dc635e0a3b67bfd43cbe48f5))
* **portal/nagoya-trip:** map-link invisible on dark hero/day-banner ([#2897](https://github.com/HankHuang0516/EClaw/issues/2897)) ([cc33df6](https://github.com/HankHuang0516/EClaw/commit/cc33df686673455c20beaee60871412a5d486e66)), closes [#1f4030](https://github.com/HankHuang0516/EClaw/issues/1f4030) [#8b8579](https://github.com/HankHuang0516/EClaw/issues/8b8579) [#6e6859](https://github.com/HankHuang0516/EClaw/issues/6e6859) [#7a5614](https://github.com/HankHuang0516/EClaw/issues/7a5614)
* **org-chart:** notify affected bots on hierarchy change ([#2812](https://github.com/HankHuang0516/EClaw/issues/2812)) ([55675fd](https://github.com/HankHuang0516/EClaw/commit/55675fdf4487494d729a29524b32bd81b756a00c)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** notify reviewer on manual /move → review ([#2753](https://github.com/HankHuang0516/EClaw/issues/2753)) ([6cbbb4e](https://github.com/HankHuang0516/EClaw/commit/6cbbb4ee8c0d4d8ad54df2e9b5faaa3699bd530f))
* **wallpaper:** off-load spritesheet fetch to IO so per-petdx sprites actually render ([#2618](https://github.com/HankHuang0516/EClaw/issues/2618)) ([61b832c](https://github.com/HankHuang0516/EClaw/commit/61b832c9fa8a1d0caab810ccc942d85c63349267)), closes [#2615](https://github.com/HankHuang0516/EClaw/issues/2615) [#2577](https://github.com/HankHuang0516/EClaw/issues/2577)
* **security:** patch P0 sanitize-html XSS + P1 protobufjs + exam.html XSS ([#2829](https://github.com/HankHuang0516/EClaw/issues/2829)) ([c71b871](https://github.com/HankHuang0516/EClaw/commit/c71b871a045887375dd0d26d1a3280a0891a89ad))
* **security:** patch ws uninitialized memory disclosure (GHSA-58qx-3vcg-4xpx) ([#2872](https://github.com/HankHuang0516/EClaw/issues/2872)) ([2523d15](https://github.com/HankHuang0516/EClaw/commit/2523d154bbe501a7cc086340f7a07ece3abfa69b))
* **portal:** petdx-browser cookie-session fallback for device-login ([#2757](https://github.com/HankHuang0516/EClaw/issues/2757)) ([ca275f4](https://github.com/HankHuang0516/EClaw/commit/ca275f4519835da0c7ad71c588908a18f6f138d8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **api:** platform-stats 500 + entity/lookup publicCode alias ([#2809](https://github.com/HankHuang0516/EClaw/issues/2809), [#2810](https://github.com/HankHuang0516/EClaw/issues/2810)) ([#2818](https://github.com/HankHuang0516/EClaw/issues/2818)) ([f99fd17](https://github.com/HankHuang0516/EClaw/commit/f99fd17b2b1c32d88daa2510ff66d714c1a53edc))
* **i18n:** positional format specifiers for feedback_result_logs (7 locales) ([#2597](https://github.com/HankHuang0516/EClaw/issues/2597)) ([21aedc7](https://github.com/HankHuang0516/EClaw/commit/21aedc7eebc7a2839e340136f38dfdfd4dabb9dc))
* **avatar-petdx:** preserve descriptor across transient API failures (flicker) ([#2625](https://github.com/HankHuang0516/EClaw/issues/2625)) ([7b1c606](https://github.com/HankHuang0516/EClaw/commit/7b1c606514f7698d72ec95cf6c556e4043966186))
* **chat:** preserve recipient selection across rental-health refresh (P0 #card_eb1cba76) ([#2906](https://github.com/HankHuang0516/EClaw/issues/2906)) ([9cc0301](https://github.com/HankHuang0516/EClaw/commit/9cc0301cc26a0f49af4b7f53486f5c1a7cdd7902)), closes [#card_eb1cba76](https://github.com/HankHuang0516/EClaw/issues/card_eb1cba76) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **chat:** preserve scroll anchor while reading history ([#2693](https://github.com/HankHuang0516/EClaw/issues/2693)) ([945fdb7](https://github.com/HankHuang0516/EClaw/commit/945fdb7192b791b31882e1e75568dd8b11e4686f))
* **promo:** pull video embed from /promo-chat-avatar.html ([#2724](https://github.com/HankHuang0516/EClaw/issues/2724)) ([2afabc8](https://github.com/HankHuang0516/EClaw/commit/2afabc8c5ff8b25218a7cb857e8adfa572c8e9d5))
* **dashboard:** read live.rate_limits.{five_hour,seven_day}.used_percentage ([#2895](https://github.com/HankHuang0516/EClaw/issues/2895)) ([8223303](https://github.com/HankHuang0516/EClaw/commit/822330312bccb1c76675ad2c3b26e78d10dd1298))
* **kanban:** realign stale recurring schedules ([#2785](https://github.com/HankHuang0516/EClaw/issues/2785)) ([ab8ee25](https://github.com/HankHuang0516/EClaw/commit/ab8ee250a9b37f3d3e838bb01d8866c8d2b78231))
* **i18n:** reapply de6970 locale gap translations ([#2925](https://github.com/HankHuang0516/EClaw/issues/2925)) ([d994dc1](https://github.com/HankHuang0516/EClaw/commit/d994dc1d240fef72326db2599262375ccbf29175))
* **portal:** reduce QA-discovered request fanout ([#2656](https://github.com/HankHuang0516/EClaw/issues/2656)) ([1e46d6b](https://github.com/HankHuang0516/EClaw/commit/1e46d6bab61e58c65b452b6503d953f8dddeee75))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **portal:** remove org chart fit scale floor ([#2676](https://github.com/HankHuang0516/EClaw/issues/2676)) ([0f01606](https://github.com/HankHuang0516/EClaw/commit/0f016068b963bb5f800a02f28817c7174979d913))
* **rental:** remove phantom 'webhook test push' step from BIND_COMPLETE ([#2864](https://github.com/HankHuang0516/EClaw/issues/2864)) ([47f4a3e](https://github.com/HankHuang0516/EClaw/commit/47f4a3edf76aa95ebd06d8713cd44fda6eef9b5d))
* **i18n:** rename mm_empty_title → mm_state_empty_title in mindmap.html ([#2683](https://github.com/HankHuang0516/EClaw/issues/2683)) ([c79c109](https://github.com/HankHuang0516/EClaw/commit/c79c109bea23142e8a6d9ace976d105af1280ec9))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **chat:** render mention avatars with companion renderer ([#2633](https://github.com/HankHuang0516/EClaw/issues/2633)) ([03e205f](https://github.com/HankHuang0516/EClaw/commit/03e205f663ecd2c2f443d4009dd5af0093f0bbbb))
* **kanban:** reserve mobile comments panel height ([#2782](https://github.com/HankHuang0516/EClaw/issues/2782)) ([ce8662d](https://github.com/HankHuang0516/EClaw/commit/ce8662d362422fdd25037f1deb61dbed9425e2f9))
* **channel:** restore handshake fallback to discovered sessions ([#2915](https://github.com/HankHuang0516/EClaw/issues/2915)) ([#2917](https://github.com/HankHuang0516/EClaw/issues/2917)) ([9d7d3a2](https://github.com/HankHuang0516/EClaw/commit/9d7d3a25654289998314dd5ca152cefdb8a4d64e)), closes [#2912](https://github.com/HankHuang0516/EClaw/issues/2912)
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* scheduled audit 2026-05-13 — 6 bugs, XSS, i18n ([#2668](https://github.com/HankHuang0516/EClaw/issues/2668)) ([21dd513](https://github.com/HankHuang0516/EClaw/commit/21dd513b4464738de29164265437435ba6cc4817)), closes [#2605](https://github.com/HankHuang0516/EClaw/issues/2605) [#2608](https://github.com/HankHuang0516/EClaw/issues/2608) [#2600](https://github.com/HankHuang0516/EClaw/issues/2600) [#2599](https://github.com/HankHuang0516/EClaw/issues/2599) [#2598](https://github.com/HankHuang0516/EClaw/issues/2598)
* **channel:** scope official bot sessions ([#2912](https://github.com/HankHuang0516/EClaw/issues/2912)) ([5c56b62](https://github.com/HankHuang0516/EClaw/commit/5c56b62c13b739b76f39e168a26bd4e5de2644fb))
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **dashboard:** show Claude weekly bar reset countdown ([#2896](https://github.com/HankHuang0516/EClaw/issues/2896)) ([3b87845](https://github.com/HankHuang0516/EClaw/commit/3b87845d713e980fec69f6b8007549338a326713)), closes [#2895](https://github.com/HankHuang0516/EClaw/issues/2895)
* **chat:** smart-chip preview falls back to inline c.comments when /comments fails (PR [#2677](https://github.com/HankHuang0516/EClaw/issues/2677)) ([7f4dffd](https://github.com/HankHuang0516/EClaw/commit/7f4dffd2c83ea86f296b8fa0610f0e67c9f1af11))
* **kanban:** stabilize comment detail viewport ([#2796](https://github.com/HankHuang0516/EClaw/issues/2796)) ([0a10aad](https://github.com/HankHuang0516/EClaw/commit/0a10aadb5a5b12ff23454c16d5c88183b94ad7d7))
* **wallpaper:** stop Android live wallpaper flashing default lobster on companion change ([#2629](https://github.com/HankHuang0516/EClaw/issues/2629)) ([8b4f66f](https://github.com/HankHuang0516/EClaw/commit/8b4f66fcb335bf43128f924b761b6337c817095b)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **chat:** stop chat.html bouncing to dashboard via /api/rental/health-status 401 race ([#2833](https://github.com/HankHuang0516/EClaw/issues/2833)) ([c422406](https://github.com/HankHuang0516/EClaw/commit/c4224067cdcfe7f3e22ab95007c7563dac4196ac))
* **openclaw-channel:** support OpenClaw 2026.5.20 ([8045de6](https://github.com/HankHuang0516/EClaw/commit/8045de6bebecfc05f9bd57453b99c098ca35681b))
* **mentions:** support same-device CJK display-name tags ([#2874](https://github.com/HankHuang0516/EClaw/issues/2874)) ([b8f61be](https://github.com/HankHuang0516/EClaw/commit/b8f61be9a3962fef75dd32ea34e8900880dafaf9))
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **dashboard:** use sessions[].project for widget Projects list (was .project_id) ([#2894](https://github.com/HankHuang0516/EClaw/issues/2894)) ([0fd1334](https://github.com/HankHuang0516/EClaw/commit/0fd1334897d4a603cc6eb74f34b48606547e09cf))
* **app:** WebView pages honor app-selected locale via ?lang= URL param ([#2672](https://github.com/HankHuang0516/EClaw/issues/2672)) ([8ed8757](https://github.com/HankHuang0516/EClaw/commit/8ed8757aec5bf214e837cc0d81bf2b23f1993a91)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **share-chat:** wire rich CTA actions to msgInput ([#2867](https://github.com/HankHuang0516/EClaw/issues/2867)) ([df23b11](https://github.com/HankHuang0516/EClaw/commit/df23b1147d34c59a644a145bbd87c18b96400acc))


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* **usage-api:** /api/usage/{snapshot,timeline} + usage_snapshots table (Plan B Phase 1) ([#2889](https://github.com/HankHuang0516/EClaw/issues/2889)) ([a0d859c](https://github.com/HankHuang0516/EClaw/commit/a0d859c63f0220909dadb2b1952174861ccdce14))
* **community:** 1-click chat button on bot cards + utm tagging ([#2610](https://github.com/HankHuang0516/EClaw/issues/2610)) ([eee97b0](https://github.com/HankHuang0516/EClaw/commit/eee97b0e2e4e74945ec24f218a69a52800b97a66))
* **chat:** accept ?messageId= as deep-link alias ([#2838](https://github.com/HankHuang0516/EClaw/issues/2838)) ([1785a87](https://github.com/HankHuang0516/EClaw/commit/1785a87310426637fd10df83754fb9924c45207f))
* **chat:** add avatar size preference ([#2714](https://github.com/HankHuang0516/EClaw/issues/2714)) ([6fe164a](https://github.com/HankHuang0516/EClaw/commit/6fe164ad8b22fa576d2dd9ad37c0d9fc295b5a83))
* **dashboard:** add Claude and Codex channel guides ([#2640](https://github.com/HankHuang0516/EClaw/issues/2640)) ([c64e4c4](https://github.com/HankHuang0516/EClaw/commit/c64e4c4afc78db58c5cd578f00486dd7b2fd3311))
* **dashboard:** add Claude Code channel guide card ([#2667](https://github.com/HankHuang0516/EClaw/issues/2667)) ([d70d75c](https://github.com/HankHuang0516/EClaw/commit/d70d75c0c8caa8a540358a9aab4556b8c1927a5c))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* **kanban:** add device-scoped card tags ([#2773](https://github.com/HankHuang0516/EClaw/issues/2773)) ([53a387e](https://github.com/HankHuang0516/EClaw/commit/53a387e67ba7bb4f6bed1c427000c4ae8666577a))
* **portal:** add entity selector to petdx-browser ([#2602](https://github.com/HankHuang0516/EClaw/issues/2602)) ([3fa067e](https://github.com/HankHuang0516/EClaw/commit/3fa067e00b38829b48a37cecd33ee81a9a1122d9))
* **kanban:** add explicit card links ([#2721](https://github.com/HankHuang0516/EClaw/issues/2721)) ([ef9f812](https://github.com/HankHuang0516/EClaw/commit/ef9f812a3fcf39efd07fd158ce90951bdd045ac7))
* **kanban:** add explicit done-card reopen flow ([#2801](https://github.com/HankHuang0516/EClaw/issues/2801)) ([5080aac](https://github.com/HankHuang0516/EClaw/commit/5080aacb75047c0deaa379ee708ec85465afd57c))
* **mindmap:** add GET /api/mindmap/graph force-graph projection ([#2680](https://github.com/HankHuang0516/EClaw/issues/2680)) ([a00b2e7](https://github.com/HankHuang0516/EClaw/commit/a00b2e775af2c4c98cd157f760ad87aeeee469f0)), closes [#2679](https://github.com/HankHuang0516/EClaw/issues/2679) [#2679](https://github.com/HankHuang0516/EClaw/issues/2679)
* **dashboard:** add Hermes channel promo card ([#2708](https://github.com/HankHuang0516/EClaw/issues/2708)) ([337aca1](https://github.com/HankHuang0516/EClaw/commit/337aca153d5a1cd7e888c065f00ae54db7872d91))
* **rental:** add listing soft pause ([#2781](https://github.com/HankHuang0516/EClaw/issues/2781)) ([6586b72](https://github.com/HankHuang0516/EClaw/commit/6586b72717ddb1637d91cd3242c8d2ff554f62b4))
* **portal:** add Nagoya 5D4N trip static cross-ref page ([#2689](https://github.com/HankHuang0516/EClaw/issues/2689)) ([2e0efb6](https://github.com/HankHuang0516/EClaw/commit/2e0efb6dcdaff52226cc8854a96747000b12bdff))
* **portal:** add Nagoya trip map links and image lightbox ([#2821](https://github.com/HankHuang0516/EClaw/issues/2821)) ([3e40955](https://github.com/HankHuang0516/EClaw/commit/3e40955650a05f45a6b9f7e39e73847705424a03))
* **portal/nagoya:** add parking shortcut buttons next to itinerary places ([#2826](https://github.com/HankHuang0516/EClaw/issues/2826)) ([63968c5](https://github.com/HankHuang0516/EClaw/commit/63968c554d046afc8d978de74e3aacbf7700500d))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **settings:** add rental roster management preview ([#2758](https://github.com/HankHuang0516/EClaw/issues/2758)) ([9706e59](https://github.com/HankHuang0516/EClaw/commit/9706e59ded140a90a6e02348124282bc69d89001))
* **rental:** add renter health chat indicator ([#2690](https://github.com/HankHuang0516/EClaw/issues/2690)) ([36cd2e9](https://github.com/HankHuang0516/EClaw/commit/36cd2e9802be4c7ebb03d3024617fa74aca48ffd))
* **ios:** add Tutorial & Intro entry in Settings ([#2800](https://github.com/HankHuang0516/EClaw/issues/2800)) ([ed83e51](https://github.com/HankHuang0516/EClaw/commit/ed83e51d043bf4cd5865f38dc95a91ed54820d6c))
* **landing:** add Watch Full Demo CTA below hero video ([#2799](https://github.com/HankHuang0516/EClaw/issues/2799)) ([66107c9](https://github.com/HankHuang0516/EClaw/commit/66107c954727551fd34d989a4674daaad9b63968))
* **footer:** add Watch Intro Video link in Info column ([#2798](https://github.com/HankHuang0516/EClaw/issues/2798)) ([d7c6d59](https://github.com/HankHuang0516/EClaw/commit/d7c6d596b69c6a5b257bf1f7a792a407ef9712ad))
* **i18n:** ar iter-2 — fill 623 missing keys against en source ([#2847](https://github.com/HankHuang0516/EClaw/issues/2847)) ([ee94a7a](https://github.com/HankHuang0516/EClaw/commit/ee94a7ae6812b5163efe4284ee4907ca32302f5c))
* **kanban:** backlog launch-gate flag to suppress L1/L2/L3 escalation ([#2855](https://github.com/HankHuang0516/EClaw/issues/2855)) ([cb8bf1b](https://github.com/HankHuang0516/EClaw/commit/cb8bf1bb6421f25214f65e129a8cadccc49cc266)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#4](https://github.com/HankHuang0516/EClaw/issues/4) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **companion:** bridge crafter-station/petdex gallery (1784 pets) ([#2601](https://github.com/HankHuang0516/EClaw/issues/2601)) ([2e245be](https://github.com/HankHuang0516/EClaw/commit/2e245bea6dd47ea7361b927d389188a3c23b6bb3))
* **promo:** chat avatar size feature landing page (self-hosted MP4) ([#2722](https://github.com/HankHuang0516/EClaw/issues/2722)) ([3852210](https://github.com/HankHuang0516/EClaw/commit/3852210d355704d018e3daca6b5f9512a011b210)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **kanban:** cron-spawn jitter + lane backpressure to prevent same-tick wedge ([#2791](https://github.com/HankHuang0516/EClaw/issues/2791)) ([9f414a7](https://github.com/HankHuang0516/EClaw/commit/9f414a731d6393672a0a4189c7b408c529ae5e12)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **portal:** dashboard usage widget — Claude/Codex 5h gauges + 24h chart (Plan B Phase 3) ([#2891](https://github.com/HankHuang0516/EClaw/issues/2891)) ([d18f373](https://github.com/HankHuang0516/EClaw/commit/d18f373857e4bd302437d6bda2a1e01871fbb1db))
* **portal:** dashboard usage widget v2 — Session/Weekly % bars + projects, no cost (Plan B Phase 3.1) ([#2893](https://github.com/HankHuang0516/EClaw/issues/2893)) ([4bc0dc7](https://github.com/HankHuang0516/EClaw/commit/4bc0dc744ed9d54dfd532ebac4b705c7f84ec0a6))
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **promo:** embed daily eclaw video 2026-05-14 ([#2786](https://github.com/HankHuang0516/EClaw/issues/2786)) ([718a814](https://github.com/HankHuang0516/EClaw/commit/718a814ab16850bc2b33a1b303841e2c4378ecfa)), closes [#2782](https://github.com/HankHuang0516/EClaw/issues/2782) [#2693](https://github.com/HankHuang0516/EClaw/issues/2693)
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **info:** embed promo video at top of Quick Start tab ([#2797](https://github.com/HankHuang0516/EClaw/issues/2797)) ([047679f](https://github.com/HankHuang0516/EClaw/commit/047679fd57ab9949eaeacea414d5611e71afe041))
* **rental:** enforce strict rebind refunds ([#2703](https://github.com/HankHuang0516/EClaw/issues/2703)) ([a1859c5](https://github.com/HankHuang0516/EClaw/commit/a1859c50e6fb3991d7a8051491502d824a14a116))
* **portal:** group task chip actions ([#2825](https://github.com/HankHuang0516/EClaw/issues/2825)) ([5db5c59](https://github.com/HankHuang0516/EClaw/commit/5db5c59b32b8635f1412205faf0c2f9164d3d5d4))
* **hermes:** H2 health-check cron + 7d SLA + commander alerts (card_07891ac) ([#2922](https://github.com/HankHuang0516/EClaw/issues/2922)) ([82b4315](https://github.com/HankHuang0516/EClaw/commit/82b4315aea234493e3d1889dc53958c2f1d842e0)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **portal:** info-guide-rules + info-guide-soul slide pair ([#2793](https://github.com/HankHuang0516/EClaw/issues/2793)) ([1c8bddc](https://github.com/HankHuang0516/EClaw/commit/1c8bddc4c185054b2b60088498e3d45509117127)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **chat:** link card previews to kanban ([#2754](https://github.com/HankHuang0516/EClaw/issues/2754)) ([2261240](https://github.com/HankHuang0516/EClaw/commit/22612402c2e95efb07246629e81a849be41ee9c7))
* **mission:** link notes to kanban cards ([#2723](https://github.com/HankHuang0516/EClaw/issues/2723)) ([b36dc18](https://github.com/HankHuang0516/EClaw/commit/b36dc18f3a8facf12e0b6046351c222f1e99dc55))
* **usage-daemon:** macOS launchd daemon polls Claude/Codex usage → POST /api/usage/snapshot (Plan B Phase 2) ([#2890](https://github.com/HankHuang0516/EClaw/issues/2890)) ([fd225e1](https://github.com/HankHuang0516/EClaw/commit/fd225e12d9491037be1a340bd63b54b5f3308c7f))
* **mindmap:** mission.html link to /portal/mindmap.html + deprecate /api/mission/mindmap ([#2685](https://github.com/HankHuang0516/EClaw/issues/2685)) ([11e297b](https://github.com/HankHuang0516/EClaw/commit/11e297bab1c9b56fcde3027d6500b7c58891bf18)), closes [#2680](https://github.com/HankHuang0516/EClaw/issues/2680) [#2684](https://github.com/HankHuang0516/EClaw/issues/2684)
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **portal:** nagoya trip interactive map (Leaflet + OSM, no API key) ([#2888](https://github.com/HankHuang0516/EClaw/issues/2888)) ([ecfdac0](https://github.com/HankHuang0516/EClaw/commit/ecfdac06348c12ee7c6872c6c28d5f82162e7aa9))
* **channel:** outbound backpressure (30/min cap + 429 retry-after) ([#2911](https://github.com/HankHuang0516/EClaw/issues/2911)) ([36dc99c](https://github.com/HankHuang0516/EClaw/commit/36dc99ca78b0e1724a2aaefb5936669077b7a28f))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **settings:** per-entity nudge override UI (Phase 2) ([#2837](https://github.com/HankHuang0516/EClaw/issues/2837)) ([ea7662b](https://github.com/HankHuang0516/EClaw/commit/ea7662b0858882dae461e1387f711895924f9ab8)), closes [3/#4](https://github.com/HankHuang0516/EClaw/issues/4)
* **kanban:** per-entity nudge overrides (Phase 2 of card_e066cb6b) ([#2836](https://github.com/HankHuang0516/EClaw/issues/2836)) ([0425f80](https://github.com/HankHuang0516/EClaw/commit/0425f80bc1169c0d506b665659c8676695c45553))
* **avatar:** petdx render on card-holder my-cards (Phase 1b) ([#2621](https://github.com/HankHuang0516/EClaw/issues/2621)) ([f78ba8b](https://github.com/HankHuang0516/EClaw/commit/f78ba8b18acc426936ab6d8a82ca7541effea00d))
* **avatar:** petdx render on dashboard entity grid / org chart / bindings (Phase 1b) ([#2622](https://github.com/HankHuang0516/EClaw/issues/2622)) ([f417749](https://github.com/HankHuang0516/EClaw/commit/f41774914451048e8cd76e9ae30416a0642e173b)), closes [#2620](https://github.com/HankHuang0516/EClaw/issues/2620) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621)
* **avatar:** petdx render on kanban auto-assign / pulse / comment avatars (Phase 1b) ([#2624](https://github.com/HankHuang0516/EClaw/issues/2624)) ([6bff5f8](https://github.com/HankHuang0516/EClaw/commit/6bff5f80440d0bd91a6b1721cde9478d685c4d46))
* **avatar:** petdx render on mission skill/rule/soul entity dialogs (Phase 1b) ([#2623](https://github.com/HankHuang0516/EClaw/issues/2623)) ([129327b](https://github.com/HankHuang0516/EClaw/commit/129327bc7b91056659f1ab7e8d5e3f5260d951fb))
* **mindmap:** portal/mindmap.html force-graph prototype ([#129](https://github.com/HankHuang0516/EClaw/issues/129)) ([#2681](https://github.com/HankHuang0516/EClaw/issues/2681)) ([0f15e69](https://github.com/HankHuang0516/EClaw/commit/0f15e6930f0697c37fa08f3219edb8f9e499837f)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **channel:** record delivery receipts ([#2913](https://github.com/HankHuang0516/EClaw/issues/2913)) ([90c671b](https://github.com/HankHuang0516/EClaw/commit/90c671bd1970ab51584b90e2b634484ec10cc7ae))
* **portal:** redo nagoya trip page in professional tour-guide style ([#2691](https://github.com/HankHuang0516/EClaw/issues/2691)) ([b2378c0](https://github.com/HankHuang0516/EClaw/commit/b2378c06ee20fa9cccfdceceb1a4c9e0b3072f59))
* **i18n:** remove ms+hi orphan keys from i18n.js ([#2849](https://github.com/HankHuang0516/EClaw/issues/2849)) ([320176c](https://github.com/HankHuang0516/EClaw/commit/320176c06a3cfd8631e2a82ad02a6bd6a9af0389))
* **avatar:** render selected petdx companion in chat avatars ([#2620](https://github.com/HankHuang0516/EClaw/issues/2620)) ([0bdd046](https://github.com/HankHuang0516/EClaw/commit/0bdd046fe1b1c428e32edda366ff112c08927f4c))
* **home:** replace native home with WebView hosting dashboard.html ([#2634](https://github.com/HankHuang0516/EClaw/issues/2634)) ([e69ea81](https://github.com/HankHuang0516/EClaw/commit/e69ea8160c239b083a83d6dc83a4f1c3f901c863))
* **app:** route chat mission jumps through native tabs ([#2824](https://github.com/HankHuang0516/EClaw/issues/2824)) ([deb07b6](https://github.com/HankHuang0516/EClaw/commit/deb07b69a9ecca632fe27278de537f1d85234e94))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **chat:** support message deep links ([#2719](https://github.com/HankHuang0516/EClaw/issues/2719)) ([2dc0f1e](https://github.com/HankHuang0516/EClaw/commit/2dc0f1eeb259e1a0848db4a03186b989372cd91c))
* **mission:** support note deep links ([#2717](https://github.com/HankHuang0516/EClaw/issues/2717)) ([2efd3a5](https://github.com/HankHuang0516/EClaw/commit/2efd3a5e741217a07c0b0ac54a0ddd010e0ebe23))
* **share-chat:** twitter card + per-bot og:image/twitter:* in SSR ([#2609](https://github.com/HankHuang0516/EClaw/issues/2609)) ([6cdc853](https://github.com/HankHuang0516/EClaw/commit/6cdc853dc884cdb95bd47214942768981f218ae0))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))
* **settings:** wire petdx avatar into channel-account chips ([#2626](https://github.com/HankHuang0516/EClaw/issues/2626)) ([88aec77](https://github.com/HankHuang0516/EClaw/commit/88aec772628c240e97b336bb5820892ad632d1ae))
* **files:** wire petdx avatar into entity filter & per-file badges ([#2627](https://github.com/HankHuang0516/EClaw/issues/2627)) ([5b3e5cc](https://github.com/HankHuang0516/EClaw/commit/5b3e5cc542d9da69bb4e92500fd03a542ea33f00))
* **mindmap:** wrap hardcoded zh-TW UI strings with i18n t() ([#2607](https://github.com/HankHuang0516/EClaw/issues/2607)) ([166af87](https://github.com/HankHuang0516/EClaw/commit/166af8772b2121a24aaf34a83b3de970e9b3b571)), closes [#2606](https://github.com/HankHuang0516/EClaw/issues/2606)
* **i18n:** zh-TW backfill 8 keys (soft-pause + chat + invite + wallet) ([#2815](https://github.com/HankHuang0516/EClaw/issues/2815)) ([a2dd574](https://github.com/HankHuang0516/EClaw/commit/a2dd5743ce8d43a4b6ace9a2fd4b52568180d6c5))


### Performance Improvements

* **mindmap:** force-graph hardening for 1000/2000-node graphs ([#2684](https://github.com/HankHuang0516/EClaw/issues/2684)) ([da8b1c8](https://github.com/HankHuang0516/EClaw/commit/da8b1c8f947ab8bc8fa455c1962a91146623a1fc))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-25)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **notifications:** add kanban_done + kanban_done_auto toggles to Android Settings ([#2636](https://github.com/HankHuang0516/EClaw/issues/2636)) ([a710909](https://github.com/HankHuang0516/EClaw/commit/a7109095e3393b8564e7ef1b23d382a4fbb944b8))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **api:** align /api/platform-stats skill-doc with device-auth contract (card_49b8190) ([#2916](https://github.com/HankHuang0516/EClaw/issues/2916)) ([ee55b2f](https://github.com/HankHuang0516/EClaw/commit/ee55b2fdbfbcd4bead5501d16ee66339056c32d7))
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **i18n:** ar block — fix 27 broken entries (CJK leaks + truncated HTML) ([#2851](https://github.com/HankHuang0516/EClaw/issues/2851)) ([5b19175](https://github.com/HankHuang0516/EClaw/commit/5b19175d712d00d16fcec00b749035c4beae7a5c))
* **chat:** atomic-load target bar (await contacts before first render) ([#2831](https://github.com/HankHuang0516/EClaw/issues/2831)) ([5f529e6](https://github.com/HankHuang0516/EClaw/commit/5f529e6b772eacc38ba1de69b44258a05f0d816a)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2](https://github.com/HankHuang0516/EClaw/issues/2)
* **channel:** await binding persistence ([712516d](https://github.com/HankHuang0516/EClaw/commit/712516decafb745035bd1434a28cc1973d433e19))
* **rental:** bump handshake timeout to 60s + timeout-aware discovery fallback ([#2863](https://github.com/HankHuang0516/EClaw/issues/2863)) ([fd4322f](https://github.com/HankHuang0516/EClaw/commit/fd4322f8890f3c2dfca3acdae6a4b95f19c381f9)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **i18n:** clear batch 1 residual missing keys ([#2790](https://github.com/HankHuang0516/EClaw/issues/2790)) ([211030e](https://github.com/HankHuang0516/EClaw/commit/211030e0b0b6a865c11f0c4ed60dc4e356d43b7a))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **kanban:** comment input no longer overlaps last comment in card detail (PR [#2678](https://github.com/HankHuang0516/EClaw/issues/2678)) ([fba91fc](https://github.com/HankHuang0516/EClaw/commit/fba91fca15402b453a0db5ee857c0b16e6087055))
* **chat:** compact 20px avatar in target bar (App WebView only shows [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2](https://github.com/HankHuang0516/EClaw/issues/2)) ([#2830](https://github.com/HankHuang0516/EClaw/issues/2830)) ([42c7543](https://github.com/HankHuang0516/EClaw/commit/42c7543b4a78a7abf3f5f7535eb9bc6142cd0fe2)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **portal:** complete 401 redirect sweep + mobile UIUX truncation ([#2842](https://github.com/HankHuang0516/EClaw/issues/2842)) ([f9799ba](https://github.com/HankHuang0516/EClaw/commit/f9799ba42498b109f0a8a70e80836aa6da51e216)), closes [#2833](https://github.com/HankHuang0516/EClaw/issues/2833) [#2845](https://github.com/HankHuang0516/EClaw/issues/2845) [#2844](https://github.com/HankHuang0516/EClaw/issues/2844) [#2843](https://github.com/HankHuang0516/EClaw/issues/2843)
* **uiux:** continue qa mobile readability sweep ([#2854](https://github.com/HankHuang0516/EClaw/issues/2854)) ([57606ff](https://github.com/HankHuang0516/EClaw/commit/57606ffe3e543b07a026aacc53c4b470c9a7825b))
* **i18n:** cover dynamic portal wrapper keys ([#2807](https://github.com/HankHuang0516/EClaw/issues/2807)) ([4c711cc](https://github.com/HankHuang0516/EClaw/commit/4c711cc4009300ffe4e8933a98ee01cd0fdd6aeb))
* **i18n:** dedup 20 dash_channel_card_* keys in es block ([#2876](https://github.com/HankHuang0516/EClaw/issues/2876)) ([807284c](https://github.com/HankHuang0516/EClaw/commit/807284ce363ef119ccdb0ae40e5ce99d3f0a27e0))
* **i18n:** dedupe backend locale keys via AST ([#2920](https://github.com/HankHuang0516/EClaw/issues/2920)) ([40ef114](https://github.com/HankHuang0516/EClaw/commit/40ef11414c8b836fe1ed93ec06c839df3a1bf7b9))
* **i18n:** dedupe zh locale keys ([#2919](https://github.com/HankHuang0516/EClaw/issues/2919)) ([afd2cca](https://github.com/HankHuang0516/EClaw/commit/afd2cca8086c2f2df0d04c9c5f8c58733652875e))
* **kanban:** dep-aware nudge gating + roadmap dependency backfill ([#2904](https://github.com/HankHuang0516/EClaw/issues/2904)) ([2b76ac9](https://github.com/HankHuang0516/EClaw/commit/2b76ac9d3b7e4169b7bc3c6f6b0b0903b63cd9f7)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **rental:** don't pollute entity.message on push gateway timeout ([#2860](https://github.com/HankHuang0516/EClaw/issues/2860)) ([592ba44](https://github.com/HankHuang0516/EClaw/commit/592ba44f57536ee00011b6cbddaa6b129a7cbae9))
* **petdx:** drop dark-grey loading placeholder + preload sprite WEBP ([#2628](https://github.com/HankHuang0516/EClaw/issues/2628)) ([59cef38](https://github.com/HankHuang0516/EClaw/commit/59cef387bd69ca99d7d15c86a1364856d3849ad8)), closes [#1a1a1a](https://github.com/HankHuang0516/EClaw/issues/1a1a1a)
* **gateway-ws:** drop Origin header on server-to-server WS upgrade ([#2869](https://github.com/HankHuang0516/EClaw/issues/2869)) ([716dcf9](https://github.com/HankHuang0516/EClaw/commit/716dcf9d0834b17522bb9d894bad84bc142d1a19))
* **setup-scripts:** drop Origin header on server-to-server WS upgrade ([#2875](https://github.com/HankHuang0516/EClaw/issues/2875)) ([9d893b8](https://github.com/HankHuang0516/EClaw/commit/9d893b8e5eea4db275e450bf423903c156cd3e4b)), closes [#2869](https://github.com/HankHuang0516/EClaw/issues/2869)
* **security:** escape innerHTML in chat modal error messages ([#2819](https://github.com/HankHuang0516/EClaw/issues/2819)) ([dce07ad](https://github.com/HankHuang0516/EClaw/commit/dce07adde64795916dba977ae23e46f3371ce7ed)), closes [#2809](https://github.com/HankHuang0516/EClaw/issues/2809) [#2810](https://github.com/HankHuang0516/EClaw/issues/2810) [#2809](https://github.com/HankHuang0516/EClaw/issues/2809) [#2810](https://github.com/HankHuang0516/EClaw/issues/2810)
* **entities:** expose botSecret to owner so wallpaper service can poll companions ([#2615](https://github.com/HankHuang0516/EClaw/issues/2615)) ([04470fc](https://github.com/HankHuang0516/EClaw/commit/04470fce8f8c3fce2b1ba8b243e776606f107502))
* **rental:** expose owner_public_code in marketplace so plaza CTA can route ([#2616](https://github.com/HankHuang0516/EClaw/issues/2616)) ([4d1372f](https://github.com/HankHuang0516/EClaw/commit/4d1372f717d93cab65543e87c852e74e9fb67071)), closes [#2610](https://github.com/HankHuang0516/EClaw/issues/2610)
* **mindmap:** fallback to device scope when entityId is null ([#2728](https://github.com/HankHuang0516/EClaw/issues/2728)) ([7572312](https://github.com/HankHuang0516/EClaw/commit/7572312433d3d75fc245eda48a28919ce14bd927))
* **i18n:** fill 11 missing zh keys post-[#2920](https://github.com/HankHuang0516/EClaw/issues/2920)/[#2921](https://github.com/HankHuang0516/EClaw/issues/2921) (card_de6970) ([#2924](https://github.com/HankHuang0516/EClaw/issues/2924)) ([17c4899](https://github.com/HankHuang0516/EClaw/commit/17c48996489b1444d6ed589027acfa7986178fe1)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** fill backend runtime locale gaps ([#2921](https://github.com/HankHuang0516/EClaw/issues/2921)) ([00d96ff](https://github.com/HankHuang0516/EClaw/commit/00d96ff261b8134b49292623e1f786fd544144cc))
* **i18n:** fill Spanish drift keys ([#2751](https://github.com/HankHuang0516/EClaw/issues/2751)) ([0ad0ee5](https://github.com/HankHuang0516/EClaw/commit/0ad0ee55f7fac3e6ac46d891539950dab4d553cc))
* **portal:** fit embedded org chart to mobile viewport ([#2674](https://github.com/HankHuang0516/EClaw/issues/2674)) ([1c4e1b4](https://github.com/HankHuang0516/EClaw/commit/1c4e1b413ea7027b4cd4b8ecda981b0d0e12e66b))
* **i18n:** fix 6 trailing-comma syntax errors in 10-locale batch ([#2771](https://github.com/HankHuang0516/EClaw/issues/2771)) ([b27c6ca](https://github.com/HankHuang0516/EClaw/commit/b27c6ca204bf813e406c54ce3a2532a5f1f031b3))
* **kanban:** GET card returns latest 50 comments + comments endpoint exposes total ([#2816](https://github.com/HankHuang0516/EClaw/issues/2816)) ([c4d83f7](https://github.com/HankHuang0516/EClaw/commit/c4d83f777a1cd26aea0936e4316aa35c52822eef))
* **sharechat:** guest verify-email modal + disabled Send for unverified ([#2865](https://github.com/HankHuang0516/EClaw/issues/2865)) ([cb3b061](https://github.com/HankHuang0516/EClaw/commit/cb3b0614e0f6160417d907753e66eceb2d666802))
* **uiux:** harden chat previews and roster preview ([#2769](https://github.com/HankHuang0516/EClaw/issues/2769)) ([466d4d3](https://github.com/HankHuang0516/EClaw/commit/466d4d3ef81c628d3f58db64323946053d7bf61c))
* **mention-parser:** ignore @-mentions inside markdown code spans ([#2645](https://github.com/HankHuang0516/EClaw/issues/2645)) ([8da19d4](https://github.com/HankHuang0516/EClaw/commit/8da19d4a79ceb4152bf2144ee0847c61ce3e1def)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **kanban:** lazy-load dependency chips via IntersectionObserver ([#2632](https://github.com/HankHuang0516/EClaw/issues/2632)) ([20586b4](https://github.com/HankHuang0516/EClaw/commit/20586b43357335f9eb6a190c02d58c8e36b58aba)), closes [#2631](https://github.com/HankHuang0516/EClaw/issues/2631)
* **i18n:** localize FCM NotificationChannel labels (card_ec8d3a22) ([#2918](https://github.com/HankHuang0516/EClaw/issues/2918)) ([591cd20](https://github.com/HankHuang0516/EClaw/commit/591cd206704693650a53d19d94c4cc75daf84ffd))
* **kanban:** make card sorting deterministic ([#2756](https://github.com/HankHuang0516/EClaw/issues/2756)) ([48e2117](https://github.com/HankHuang0516/EClaw/commit/48e2117b64e37f05dc635e0a3b67bfd43cbe48f5))
* **portal/nagoya-trip:** map-link invisible on dark hero/day-banner ([#2897](https://github.com/HankHuang0516/EClaw/issues/2897)) ([cc33df6](https://github.com/HankHuang0516/EClaw/commit/cc33df686673455c20beaee60871412a5d486e66)), closes [#1f4030](https://github.com/HankHuang0516/EClaw/issues/1f4030) [#8b8579](https://github.com/HankHuang0516/EClaw/issues/8b8579) [#6e6859](https://github.com/HankHuang0516/EClaw/issues/6e6859) [#7a5614](https://github.com/HankHuang0516/EClaw/issues/7a5614)
* **org-chart:** notify affected bots on hierarchy change ([#2812](https://github.com/HankHuang0516/EClaw/issues/2812)) ([55675fd](https://github.com/HankHuang0516/EClaw/commit/55675fdf4487494d729a29524b32bd81b756a00c)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** notify reviewer on manual /move → review ([#2753](https://github.com/HankHuang0516/EClaw/issues/2753)) ([6cbbb4e](https://github.com/HankHuang0516/EClaw/commit/6cbbb4ee8c0d4d8ad54df2e9b5faaa3699bd530f))
* **wallpaper:** off-load spritesheet fetch to IO so per-petdx sprites actually render ([#2618](https://github.com/HankHuang0516/EClaw/issues/2618)) ([61b832c](https://github.com/HankHuang0516/EClaw/commit/61b832c9fa8a1d0caab810ccc942d85c63349267)), closes [#2615](https://github.com/HankHuang0516/EClaw/issues/2615) [#2577](https://github.com/HankHuang0516/EClaw/issues/2577)
* **security:** patch P0 sanitize-html XSS + P1 protobufjs + exam.html XSS ([#2829](https://github.com/HankHuang0516/EClaw/issues/2829)) ([c71b871](https://github.com/HankHuang0516/EClaw/commit/c71b871a045887375dd0d26d1a3280a0891a89ad))
* **security:** patch ws uninitialized memory disclosure (GHSA-58qx-3vcg-4xpx) ([#2872](https://github.com/HankHuang0516/EClaw/issues/2872)) ([2523d15](https://github.com/HankHuang0516/EClaw/commit/2523d154bbe501a7cc086340f7a07ece3abfa69b))
* **portal:** petdx-browser cookie-session fallback for device-login ([#2757](https://github.com/HankHuang0516/EClaw/issues/2757)) ([ca275f4](https://github.com/HankHuang0516/EClaw/commit/ca275f4519835da0c7ad71c588908a18f6f138d8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **api:** platform-stats 500 + entity/lookup publicCode alias ([#2809](https://github.com/HankHuang0516/EClaw/issues/2809), [#2810](https://github.com/HankHuang0516/EClaw/issues/2810)) ([#2818](https://github.com/HankHuang0516/EClaw/issues/2818)) ([f99fd17](https://github.com/HankHuang0516/EClaw/commit/f99fd17b2b1c32d88daa2510ff66d714c1a53edc))
* **i18n:** positional format specifiers for feedback_result_logs (7 locales) ([#2597](https://github.com/HankHuang0516/EClaw/issues/2597)) ([21aedc7](https://github.com/HankHuang0516/EClaw/commit/21aedc7eebc7a2839e340136f38dfdfd4dabb9dc))
* **avatar-petdx:** preserve descriptor across transient API failures (flicker) ([#2625](https://github.com/HankHuang0516/EClaw/issues/2625)) ([7b1c606](https://github.com/HankHuang0516/EClaw/commit/7b1c606514f7698d72ec95cf6c556e4043966186))
* **chat:** preserve recipient selection across rental-health refresh (P0 #card_eb1cba76) ([#2906](https://github.com/HankHuang0516/EClaw/issues/2906)) ([9cc0301](https://github.com/HankHuang0516/EClaw/commit/9cc0301cc26a0f49af4b7f53486f5c1a7cdd7902)), closes [#card_eb1cba76](https://github.com/HankHuang0516/EClaw/issues/card_eb1cba76) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **chat:** preserve scroll anchor while reading history ([#2693](https://github.com/HankHuang0516/EClaw/issues/2693)) ([945fdb7](https://github.com/HankHuang0516/EClaw/commit/945fdb7192b791b31882e1e75568dd8b11e4686f))
* **promo:** pull video embed from /promo-chat-avatar.html ([#2724](https://github.com/HankHuang0516/EClaw/issues/2724)) ([2afabc8](https://github.com/HankHuang0516/EClaw/commit/2afabc8c5ff8b25218a7cb857e8adfa572c8e9d5))
* **dashboard:** read live.rate_limits.{five_hour,seven_day}.used_percentage ([#2895](https://github.com/HankHuang0516/EClaw/issues/2895)) ([8223303](https://github.com/HankHuang0516/EClaw/commit/822330312bccb1c76675ad2c3b26e78d10dd1298))
* **kanban:** realign stale recurring schedules ([#2785](https://github.com/HankHuang0516/EClaw/issues/2785)) ([ab8ee25](https://github.com/HankHuang0516/EClaw/commit/ab8ee250a9b37f3d3e838bb01d8866c8d2b78231))
* **portal:** reduce QA-discovered request fanout ([#2656](https://github.com/HankHuang0516/EClaw/issues/2656)) ([1e46d6b](https://github.com/HankHuang0516/EClaw/commit/1e46d6bab61e58c65b452b6503d953f8dddeee75))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **portal:** remove org chart fit scale floor ([#2676](https://github.com/HankHuang0516/EClaw/issues/2676)) ([0f01606](https://github.com/HankHuang0516/EClaw/commit/0f016068b963bb5f800a02f28817c7174979d913))
* **rental:** remove phantom 'webhook test push' step from BIND_COMPLETE ([#2864](https://github.com/HankHuang0516/EClaw/issues/2864)) ([47f4a3e](https://github.com/HankHuang0516/EClaw/commit/47f4a3edf76aa95ebd06d8713cd44fda6eef9b5d))
* **i18n:** rename mm_empty_title → mm_state_empty_title in mindmap.html ([#2683](https://github.com/HankHuang0516/EClaw/issues/2683)) ([c79c109](https://github.com/HankHuang0516/EClaw/commit/c79c109bea23142e8a6d9ace976d105af1280ec9))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **chat:** render mention avatars with companion renderer ([#2633](https://github.com/HankHuang0516/EClaw/issues/2633)) ([03e205f](https://github.com/HankHuang0516/EClaw/commit/03e205f663ecd2c2f443d4009dd5af0093f0bbbb))
* **kanban:** reserve mobile comments panel height ([#2782](https://github.com/HankHuang0516/EClaw/issues/2782)) ([ce8662d](https://github.com/HankHuang0516/EClaw/commit/ce8662d362422fdd25037f1deb61dbed9425e2f9))
* **channel:** restore handshake fallback to discovered sessions ([#2915](https://github.com/HankHuang0516/EClaw/issues/2915)) ([#2917](https://github.com/HankHuang0516/EClaw/issues/2917)) ([9d7d3a2](https://github.com/HankHuang0516/EClaw/commit/9d7d3a25654289998314dd5ca152cefdb8a4d64e)), closes [#2912](https://github.com/HankHuang0516/EClaw/issues/2912)
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* scheduled audit 2026-05-13 — 6 bugs, XSS, i18n ([#2668](https://github.com/HankHuang0516/EClaw/issues/2668)) ([21dd513](https://github.com/HankHuang0516/EClaw/commit/21dd513b4464738de29164265437435ba6cc4817)), closes [#2605](https://github.com/HankHuang0516/EClaw/issues/2605) [#2608](https://github.com/HankHuang0516/EClaw/issues/2608) [#2600](https://github.com/HankHuang0516/EClaw/issues/2600) [#2599](https://github.com/HankHuang0516/EClaw/issues/2599) [#2598](https://github.com/HankHuang0516/EClaw/issues/2598)
* **channel:** scope official bot sessions ([#2912](https://github.com/HankHuang0516/EClaw/issues/2912)) ([5c56b62](https://github.com/HankHuang0516/EClaw/commit/5c56b62c13b739b76f39e168a26bd4e5de2644fb))
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **dashboard:** show Claude weekly bar reset countdown ([#2896](https://github.com/HankHuang0516/EClaw/issues/2896)) ([3b87845](https://github.com/HankHuang0516/EClaw/commit/3b87845d713e980fec69f6b8007549338a326713)), closes [#2895](https://github.com/HankHuang0516/EClaw/issues/2895)
* **chat:** smart-chip preview falls back to inline c.comments when /comments fails (PR [#2677](https://github.com/HankHuang0516/EClaw/issues/2677)) ([7f4dffd](https://github.com/HankHuang0516/EClaw/commit/7f4dffd2c83ea86f296b8fa0610f0e67c9f1af11))
* **kanban:** stabilize comment detail viewport ([#2796](https://github.com/HankHuang0516/EClaw/issues/2796)) ([0a10aad](https://github.com/HankHuang0516/EClaw/commit/0a10aadb5a5b12ff23454c16d5c88183b94ad7d7))
* **wallpaper:** stop Android live wallpaper flashing default lobster on companion change ([#2629](https://github.com/HankHuang0516/EClaw/issues/2629)) ([8b4f66f](https://github.com/HankHuang0516/EClaw/commit/8b4f66fcb335bf43128f924b761b6337c817095b)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **chat:** stop chat.html bouncing to dashboard via /api/rental/health-status 401 race ([#2833](https://github.com/HankHuang0516/EClaw/issues/2833)) ([c422406](https://github.com/HankHuang0516/EClaw/commit/c4224067cdcfe7f3e22ab95007c7563dac4196ac))
* **openclaw-channel:** support OpenClaw 2026.5.20 ([8045de6](https://github.com/HankHuang0516/EClaw/commit/8045de6bebecfc05f9bd57453b99c098ca35681b))
* **mentions:** support same-device CJK display-name tags ([#2874](https://github.com/HankHuang0516/EClaw/issues/2874)) ([b8f61be](https://github.com/HankHuang0516/EClaw/commit/b8f61be9a3962fef75dd32ea34e8900880dafaf9))
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **dashboard:** use sessions[].project for widget Projects list (was .project_id) ([#2894](https://github.com/HankHuang0516/EClaw/issues/2894)) ([0fd1334](https://github.com/HankHuang0516/EClaw/commit/0fd1334897d4a603cc6eb74f34b48606547e09cf))
* **app:** WebView pages honor app-selected locale via ?lang= URL param ([#2672](https://github.com/HankHuang0516/EClaw/issues/2672)) ([8ed8757](https://github.com/HankHuang0516/EClaw/commit/8ed8757aec5bf214e837cc0d81bf2b23f1993a91)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **share-chat:** wire rich CTA actions to msgInput ([#2867](https://github.com/HankHuang0516/EClaw/issues/2867)) ([df23b11](https://github.com/HankHuang0516/EClaw/commit/df23b1147d34c59a644a145bbd87c18b96400acc))


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* **usage-api:** /api/usage/{snapshot,timeline} + usage_snapshots table (Plan B Phase 1) ([#2889](https://github.com/HankHuang0516/EClaw/issues/2889)) ([a0d859c](https://github.com/HankHuang0516/EClaw/commit/a0d859c63f0220909dadb2b1952174861ccdce14))
* **community:** 1-click chat button on bot cards + utm tagging ([#2610](https://github.com/HankHuang0516/EClaw/issues/2610)) ([eee97b0](https://github.com/HankHuang0516/EClaw/commit/eee97b0e2e4e74945ec24f218a69a52800b97a66))
* **chat:** accept ?messageId= as deep-link alias ([#2838](https://github.com/HankHuang0516/EClaw/issues/2838)) ([1785a87](https://github.com/HankHuang0516/EClaw/commit/1785a87310426637fd10df83754fb9924c45207f))
* **chat:** add avatar size preference ([#2714](https://github.com/HankHuang0516/EClaw/issues/2714)) ([6fe164a](https://github.com/HankHuang0516/EClaw/commit/6fe164ad8b22fa576d2dd9ad37c0d9fc295b5a83))
* **dashboard:** add Claude and Codex channel guides ([#2640](https://github.com/HankHuang0516/EClaw/issues/2640)) ([c64e4c4](https://github.com/HankHuang0516/EClaw/commit/c64e4c4afc78db58c5cd578f00486dd7b2fd3311))
* **dashboard:** add Claude Code channel guide card ([#2667](https://github.com/HankHuang0516/EClaw/issues/2667)) ([d70d75c](https://github.com/HankHuang0516/EClaw/commit/d70d75c0c8caa8a540358a9aab4556b8c1927a5c))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* **kanban:** add device-scoped card tags ([#2773](https://github.com/HankHuang0516/EClaw/issues/2773)) ([53a387e](https://github.com/HankHuang0516/EClaw/commit/53a387e67ba7bb4f6bed1c427000c4ae8666577a))
* **portal:** add entity selector to petdx-browser ([#2602](https://github.com/HankHuang0516/EClaw/issues/2602)) ([3fa067e](https://github.com/HankHuang0516/EClaw/commit/3fa067e00b38829b48a37cecd33ee81a9a1122d9))
* **kanban:** add explicit card links ([#2721](https://github.com/HankHuang0516/EClaw/issues/2721)) ([ef9f812](https://github.com/HankHuang0516/EClaw/commit/ef9f812a3fcf39efd07fd158ce90951bdd045ac7))
* **kanban:** add explicit done-card reopen flow ([#2801](https://github.com/HankHuang0516/EClaw/issues/2801)) ([5080aac](https://github.com/HankHuang0516/EClaw/commit/5080aacb75047c0deaa379ee708ec85465afd57c))
* **mindmap:** add GET /api/mindmap/graph force-graph projection ([#2680](https://github.com/HankHuang0516/EClaw/issues/2680)) ([a00b2e7](https://github.com/HankHuang0516/EClaw/commit/a00b2e775af2c4c98cd157f760ad87aeeee469f0)), closes [#2679](https://github.com/HankHuang0516/EClaw/issues/2679) [#2679](https://github.com/HankHuang0516/EClaw/issues/2679)
* **dashboard:** add Hermes channel promo card ([#2708](https://github.com/HankHuang0516/EClaw/issues/2708)) ([337aca1](https://github.com/HankHuang0516/EClaw/commit/337aca153d5a1cd7e888c065f00ae54db7872d91))
* **rental:** add listing soft pause ([#2781](https://github.com/HankHuang0516/EClaw/issues/2781)) ([6586b72](https://github.com/HankHuang0516/EClaw/commit/6586b72717ddb1637d91cd3242c8d2ff554f62b4))
* **portal:** add Nagoya 5D4N trip static cross-ref page ([#2689](https://github.com/HankHuang0516/EClaw/issues/2689)) ([2e0efb6](https://github.com/HankHuang0516/EClaw/commit/2e0efb6dcdaff52226cc8854a96747000b12bdff))
* **portal:** add Nagoya trip map links and image lightbox ([#2821](https://github.com/HankHuang0516/EClaw/issues/2821)) ([3e40955](https://github.com/HankHuang0516/EClaw/commit/3e40955650a05f45a6b9f7e39e73847705424a03))
* **portal/nagoya:** add parking shortcut buttons next to itinerary places ([#2826](https://github.com/HankHuang0516/EClaw/issues/2826)) ([63968c5](https://github.com/HankHuang0516/EClaw/commit/63968c554d046afc8d978de74e3aacbf7700500d))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **settings:** add rental roster management preview ([#2758](https://github.com/HankHuang0516/EClaw/issues/2758)) ([9706e59](https://github.com/HankHuang0516/EClaw/commit/9706e59ded140a90a6e02348124282bc69d89001))
* **rental:** add renter health chat indicator ([#2690](https://github.com/HankHuang0516/EClaw/issues/2690)) ([36cd2e9](https://github.com/HankHuang0516/EClaw/commit/36cd2e9802be4c7ebb03d3024617fa74aca48ffd))
* **ios:** add Tutorial & Intro entry in Settings ([#2800](https://github.com/HankHuang0516/EClaw/issues/2800)) ([ed83e51](https://github.com/HankHuang0516/EClaw/commit/ed83e51d043bf4cd5865f38dc95a91ed54820d6c))
* **landing:** add Watch Full Demo CTA below hero video ([#2799](https://github.com/HankHuang0516/EClaw/issues/2799)) ([66107c9](https://github.com/HankHuang0516/EClaw/commit/66107c954727551fd34d989a4674daaad9b63968))
* **footer:** add Watch Intro Video link in Info column ([#2798](https://github.com/HankHuang0516/EClaw/issues/2798)) ([d7c6d59](https://github.com/HankHuang0516/EClaw/commit/d7c6d596b69c6a5b257bf1f7a792a407ef9712ad))
* **i18n:** ar iter-2 — fill 623 missing keys against en source ([#2847](https://github.com/HankHuang0516/EClaw/issues/2847)) ([ee94a7a](https://github.com/HankHuang0516/EClaw/commit/ee94a7ae6812b5163efe4284ee4907ca32302f5c))
* **kanban:** backlog launch-gate flag to suppress L1/L2/L3 escalation ([#2855](https://github.com/HankHuang0516/EClaw/issues/2855)) ([cb8bf1b](https://github.com/HankHuang0516/EClaw/commit/cb8bf1bb6421f25214f65e129a8cadccc49cc266)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#4](https://github.com/HankHuang0516/EClaw/issues/4) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **companion:** bridge crafter-station/petdex gallery (1784 pets) ([#2601](https://github.com/HankHuang0516/EClaw/issues/2601)) ([2e245be](https://github.com/HankHuang0516/EClaw/commit/2e245bea6dd47ea7361b927d389188a3c23b6bb3))
* **promo:** chat avatar size feature landing page (self-hosted MP4) ([#2722](https://github.com/HankHuang0516/EClaw/issues/2722)) ([3852210](https://github.com/HankHuang0516/EClaw/commit/3852210d355704d018e3daca6b5f9512a011b210)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **kanban:** cron-spawn jitter + lane backpressure to prevent same-tick wedge ([#2791](https://github.com/HankHuang0516/EClaw/issues/2791)) ([9f414a7](https://github.com/HankHuang0516/EClaw/commit/9f414a731d6393672a0a4189c7b408c529ae5e12)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **portal:** dashboard usage widget — Claude/Codex 5h gauges + 24h chart (Plan B Phase 3) ([#2891](https://github.com/HankHuang0516/EClaw/issues/2891)) ([d18f373](https://github.com/HankHuang0516/EClaw/commit/d18f373857e4bd302437d6bda2a1e01871fbb1db))
* **portal:** dashboard usage widget v2 — Session/Weekly % bars + projects, no cost (Plan B Phase 3.1) ([#2893](https://github.com/HankHuang0516/EClaw/issues/2893)) ([4bc0dc7](https://github.com/HankHuang0516/EClaw/commit/4bc0dc744ed9d54dfd532ebac4b705c7f84ec0a6))
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **promo:** embed daily eclaw video 2026-05-14 ([#2786](https://github.com/HankHuang0516/EClaw/issues/2786)) ([718a814](https://github.com/HankHuang0516/EClaw/commit/718a814ab16850bc2b33a1b303841e2c4378ecfa)), closes [#2782](https://github.com/HankHuang0516/EClaw/issues/2782) [#2693](https://github.com/HankHuang0516/EClaw/issues/2693)
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **info:** embed promo video at top of Quick Start tab ([#2797](https://github.com/HankHuang0516/EClaw/issues/2797)) ([047679f](https://github.com/HankHuang0516/EClaw/commit/047679fd57ab9949eaeacea414d5611e71afe041))
* **rental:** enforce strict rebind refunds ([#2703](https://github.com/HankHuang0516/EClaw/issues/2703)) ([a1859c5](https://github.com/HankHuang0516/EClaw/commit/a1859c50e6fb3991d7a8051491502d824a14a116))
* **portal:** group task chip actions ([#2825](https://github.com/HankHuang0516/EClaw/issues/2825)) ([5db5c59](https://github.com/HankHuang0516/EClaw/commit/5db5c59b32b8635f1412205faf0c2f9164d3d5d4))
* **hermes:** H2 health-check cron + 7d SLA + commander alerts (card_07891ac) ([#2922](https://github.com/HankHuang0516/EClaw/issues/2922)) ([82b4315](https://github.com/HankHuang0516/EClaw/commit/82b4315aea234493e3d1889dc53958c2f1d842e0)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **portal:** info-guide-rules + info-guide-soul slide pair ([#2793](https://github.com/HankHuang0516/EClaw/issues/2793)) ([1c8bddc](https://github.com/HankHuang0516/EClaw/commit/1c8bddc4c185054b2b60088498e3d45509117127)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **chat:** link card previews to kanban ([#2754](https://github.com/HankHuang0516/EClaw/issues/2754)) ([2261240](https://github.com/HankHuang0516/EClaw/commit/22612402c2e95efb07246629e81a849be41ee9c7))
* **mission:** link notes to kanban cards ([#2723](https://github.com/HankHuang0516/EClaw/issues/2723)) ([b36dc18](https://github.com/HankHuang0516/EClaw/commit/b36dc18f3a8facf12e0b6046351c222f1e99dc55))
* **usage-daemon:** macOS launchd daemon polls Claude/Codex usage → POST /api/usage/snapshot (Plan B Phase 2) ([#2890](https://github.com/HankHuang0516/EClaw/issues/2890)) ([fd225e1](https://github.com/HankHuang0516/EClaw/commit/fd225e12d9491037be1a340bd63b54b5f3308c7f))
* **mindmap:** mission.html link to /portal/mindmap.html + deprecate /api/mission/mindmap ([#2685](https://github.com/HankHuang0516/EClaw/issues/2685)) ([11e297b](https://github.com/HankHuang0516/EClaw/commit/11e297bab1c9b56fcde3027d6500b7c58891bf18)), closes [#2680](https://github.com/HankHuang0516/EClaw/issues/2680) [#2684](https://github.com/HankHuang0516/EClaw/issues/2684)
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **portal:** nagoya trip interactive map (Leaflet + OSM, no API key) ([#2888](https://github.com/HankHuang0516/EClaw/issues/2888)) ([ecfdac0](https://github.com/HankHuang0516/EClaw/commit/ecfdac06348c12ee7c6872c6c28d5f82162e7aa9))
* **channel:** outbound backpressure (30/min cap + 429 retry-after) ([#2911](https://github.com/HankHuang0516/EClaw/issues/2911)) ([36dc99c](https://github.com/HankHuang0516/EClaw/commit/36dc99ca78b0e1724a2aaefb5936669077b7a28f))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **settings:** per-entity nudge override UI (Phase 2) ([#2837](https://github.com/HankHuang0516/EClaw/issues/2837)) ([ea7662b](https://github.com/HankHuang0516/EClaw/commit/ea7662b0858882dae461e1387f711895924f9ab8)), closes [3/#4](https://github.com/HankHuang0516/EClaw/issues/4)
* **kanban:** per-entity nudge overrides (Phase 2 of card_e066cb6b) ([#2836](https://github.com/HankHuang0516/EClaw/issues/2836)) ([0425f80](https://github.com/HankHuang0516/EClaw/commit/0425f80bc1169c0d506b665659c8676695c45553))
* **avatar:** petdx render on card-holder my-cards (Phase 1b) ([#2621](https://github.com/HankHuang0516/EClaw/issues/2621)) ([f78ba8b](https://github.com/HankHuang0516/EClaw/commit/f78ba8b18acc426936ab6d8a82ca7541effea00d))
* **avatar:** petdx render on dashboard entity grid / org chart / bindings (Phase 1b) ([#2622](https://github.com/HankHuang0516/EClaw/issues/2622)) ([f417749](https://github.com/HankHuang0516/EClaw/commit/f41774914451048e8cd76e9ae30416a0642e173b)), closes [#2620](https://github.com/HankHuang0516/EClaw/issues/2620) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621)
* **avatar:** petdx render on kanban auto-assign / pulse / comment avatars (Phase 1b) ([#2624](https://github.com/HankHuang0516/EClaw/issues/2624)) ([6bff5f8](https://github.com/HankHuang0516/EClaw/commit/6bff5f80440d0bd91a6b1721cde9478d685c4d46))
* **avatar:** petdx render on mission skill/rule/soul entity dialogs (Phase 1b) ([#2623](https://github.com/HankHuang0516/EClaw/issues/2623)) ([129327b](https://github.com/HankHuang0516/EClaw/commit/129327bc7b91056659f1ab7e8d5e3f5260d951fb))
* **mindmap:** portal/mindmap.html force-graph prototype ([#129](https://github.com/HankHuang0516/EClaw/issues/129)) ([#2681](https://github.com/HankHuang0516/EClaw/issues/2681)) ([0f15e69](https://github.com/HankHuang0516/EClaw/commit/0f15e6930f0697c37fa08f3219edb8f9e499837f)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **channel:** record delivery receipts ([#2913](https://github.com/HankHuang0516/EClaw/issues/2913)) ([90c671b](https://github.com/HankHuang0516/EClaw/commit/90c671bd1970ab51584b90e2b634484ec10cc7ae))
* **portal:** redo nagoya trip page in professional tour-guide style ([#2691](https://github.com/HankHuang0516/EClaw/issues/2691)) ([b2378c0](https://github.com/HankHuang0516/EClaw/commit/b2378c06ee20fa9cccfdceceb1a4c9e0b3072f59))
* **i18n:** remove ms+hi orphan keys from i18n.js ([#2849](https://github.com/HankHuang0516/EClaw/issues/2849)) ([320176c](https://github.com/HankHuang0516/EClaw/commit/320176c06a3cfd8631e2a82ad02a6bd6a9af0389))
* **avatar:** render selected petdx companion in chat avatars ([#2620](https://github.com/HankHuang0516/EClaw/issues/2620)) ([0bdd046](https://github.com/HankHuang0516/EClaw/commit/0bdd046fe1b1c428e32edda366ff112c08927f4c))
* **home:** replace native home with WebView hosting dashboard.html ([#2634](https://github.com/HankHuang0516/EClaw/issues/2634)) ([e69ea81](https://github.com/HankHuang0516/EClaw/commit/e69ea8160c239b083a83d6dc83a4f1c3f901c863))
* **app:** route chat mission jumps through native tabs ([#2824](https://github.com/HankHuang0516/EClaw/issues/2824)) ([deb07b6](https://github.com/HankHuang0516/EClaw/commit/deb07b69a9ecca632fe27278de537f1d85234e94))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **chat:** support message deep links ([#2719](https://github.com/HankHuang0516/EClaw/issues/2719)) ([2dc0f1e](https://github.com/HankHuang0516/EClaw/commit/2dc0f1eeb259e1a0848db4a03186b989372cd91c))
* **mission:** support note deep links ([#2717](https://github.com/HankHuang0516/EClaw/issues/2717)) ([2efd3a5](https://github.com/HankHuang0516/EClaw/commit/2efd3a5e741217a07c0b0ac54a0ddd010e0ebe23))
* **share-chat:** twitter card + per-bot og:image/twitter:* in SSR ([#2609](https://github.com/HankHuang0516/EClaw/issues/2609)) ([6cdc853](https://github.com/HankHuang0516/EClaw/commit/6cdc853dc884cdb95bd47214942768981f218ae0))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))
* **settings:** wire petdx avatar into channel-account chips ([#2626](https://github.com/HankHuang0516/EClaw/issues/2626)) ([88aec77](https://github.com/HankHuang0516/EClaw/commit/88aec772628c240e97b336bb5820892ad632d1ae))
* **files:** wire petdx avatar into entity filter & per-file badges ([#2627](https://github.com/HankHuang0516/EClaw/issues/2627)) ([5b3e5cc](https://github.com/HankHuang0516/EClaw/commit/5b3e5cc542d9da69bb4e92500fd03a542ea33f00))
* **mindmap:** wrap hardcoded zh-TW UI strings with i18n t() ([#2607](https://github.com/HankHuang0516/EClaw/issues/2607)) ([166af87](https://github.com/HankHuang0516/EClaw/commit/166af8772b2121a24aaf34a83b3de970e9b3b571)), closes [#2606](https://github.com/HankHuang0516/EClaw/issues/2606)
* **i18n:** zh-TW backfill 8 keys (soft-pause + chat + invite + wallet) ([#2815](https://github.com/HankHuang0516/EClaw/issues/2815)) ([a2dd574](https://github.com/HankHuang0516/EClaw/commit/a2dd5743ce8d43a4b6ace9a2fd4b52568180d6c5))


### Performance Improvements

* **mindmap:** force-graph hardening for 1000/2000-node graphs ([#2684](https://github.com/HankHuang0516/EClaw/issues/2684)) ([da8b1c8](https://github.com/HankHuang0516/EClaw/commit/da8b1c8f947ab8bc8fa455c1962a91146623a1fc))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-25)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **notifications:** add kanban_done + kanban_done_auto toggles to Android Settings ([#2636](https://github.com/HankHuang0516/EClaw/issues/2636)) ([a710909](https://github.com/HankHuang0516/EClaw/commit/a7109095e3393b8564e7ef1b23d382a4fbb944b8))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **api:** align /api/platform-stats skill-doc with device-auth contract (card_49b8190) ([#2916](https://github.com/HankHuang0516/EClaw/issues/2916)) ([ee55b2f](https://github.com/HankHuang0516/EClaw/commit/ee55b2fdbfbcd4bead5501d16ee66339056c32d7))
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **i18n:** ar block — fix 27 broken entries (CJK leaks + truncated HTML) ([#2851](https://github.com/HankHuang0516/EClaw/issues/2851)) ([5b19175](https://github.com/HankHuang0516/EClaw/commit/5b19175d712d00d16fcec00b749035c4beae7a5c))
* **chat:** atomic-load target bar (await contacts before first render) ([#2831](https://github.com/HankHuang0516/EClaw/issues/2831)) ([5f529e6](https://github.com/HankHuang0516/EClaw/commit/5f529e6b772eacc38ba1de69b44258a05f0d816a)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2](https://github.com/HankHuang0516/EClaw/issues/2)
* **channel:** await binding persistence ([712516d](https://github.com/HankHuang0516/EClaw/commit/712516decafb745035bd1434a28cc1973d433e19))
* **rental:** bump handshake timeout to 60s + timeout-aware discovery fallback ([#2863](https://github.com/HankHuang0516/EClaw/issues/2863)) ([fd4322f](https://github.com/HankHuang0516/EClaw/commit/fd4322f8890f3c2dfca3acdae6a4b95f19c381f9)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **i18n:** clear batch 1 residual missing keys ([#2790](https://github.com/HankHuang0516/EClaw/issues/2790)) ([211030e](https://github.com/HankHuang0516/EClaw/commit/211030e0b0b6a865c11f0c4ed60dc4e356d43b7a))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **kanban:** comment input no longer overlaps last comment in card detail (PR [#2678](https://github.com/HankHuang0516/EClaw/issues/2678)) ([fba91fc](https://github.com/HankHuang0516/EClaw/commit/fba91fca15402b453a0db5ee857c0b16e6087055))
* **chat:** compact 20px avatar in target bar (App WebView only shows [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2](https://github.com/HankHuang0516/EClaw/issues/2)) ([#2830](https://github.com/HankHuang0516/EClaw/issues/2830)) ([42c7543](https://github.com/HankHuang0516/EClaw/commit/42c7543b4a78a7abf3f5f7535eb9bc6142cd0fe2)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **portal:** complete 401 redirect sweep + mobile UIUX truncation ([#2842](https://github.com/HankHuang0516/EClaw/issues/2842)) ([f9799ba](https://github.com/HankHuang0516/EClaw/commit/f9799ba42498b109f0a8a70e80836aa6da51e216)), closes [#2833](https://github.com/HankHuang0516/EClaw/issues/2833) [#2845](https://github.com/HankHuang0516/EClaw/issues/2845) [#2844](https://github.com/HankHuang0516/EClaw/issues/2844) [#2843](https://github.com/HankHuang0516/EClaw/issues/2843)
* **uiux:** continue qa mobile readability sweep ([#2854](https://github.com/HankHuang0516/EClaw/issues/2854)) ([57606ff](https://github.com/HankHuang0516/EClaw/commit/57606ffe3e543b07a026aacc53c4b470c9a7825b))
* **i18n:** cover dynamic portal wrapper keys ([#2807](https://github.com/HankHuang0516/EClaw/issues/2807)) ([4c711cc](https://github.com/HankHuang0516/EClaw/commit/4c711cc4009300ffe4e8933a98ee01cd0fdd6aeb))
* **i18n:** dedup 20 dash_channel_card_* keys in es block ([#2876](https://github.com/HankHuang0516/EClaw/issues/2876)) ([807284c](https://github.com/HankHuang0516/EClaw/commit/807284ce363ef119ccdb0ae40e5ce99d3f0a27e0))
* **i18n:** dedupe backend locale keys via AST ([#2920](https://github.com/HankHuang0516/EClaw/issues/2920)) ([40ef114](https://github.com/HankHuang0516/EClaw/commit/40ef11414c8b836fe1ed93ec06c839df3a1bf7b9))
* **i18n:** dedupe zh locale keys ([#2919](https://github.com/HankHuang0516/EClaw/issues/2919)) ([afd2cca](https://github.com/HankHuang0516/EClaw/commit/afd2cca8086c2f2df0d04c9c5f8c58733652875e))
* **kanban:** dep-aware nudge gating + roadmap dependency backfill ([#2904](https://github.com/HankHuang0516/EClaw/issues/2904)) ([2b76ac9](https://github.com/HankHuang0516/EClaw/commit/2b76ac9d3b7e4169b7bc3c6f6b0b0903b63cd9f7)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **rental:** don't pollute entity.message on push gateway timeout ([#2860](https://github.com/HankHuang0516/EClaw/issues/2860)) ([592ba44](https://github.com/HankHuang0516/EClaw/commit/592ba44f57536ee00011b6cbddaa6b129a7cbae9))
* **petdx:** drop dark-grey loading placeholder + preload sprite WEBP ([#2628](https://github.com/HankHuang0516/EClaw/issues/2628)) ([59cef38](https://github.com/HankHuang0516/EClaw/commit/59cef387bd69ca99d7d15c86a1364856d3849ad8)), closes [#1a1a1a](https://github.com/HankHuang0516/EClaw/issues/1a1a1a)
* **gateway-ws:** drop Origin header on server-to-server WS upgrade ([#2869](https://github.com/HankHuang0516/EClaw/issues/2869)) ([716dcf9](https://github.com/HankHuang0516/EClaw/commit/716dcf9d0834b17522bb9d894bad84bc142d1a19))
* **setup-scripts:** drop Origin header on server-to-server WS upgrade ([#2875](https://github.com/HankHuang0516/EClaw/issues/2875)) ([9d893b8](https://github.com/HankHuang0516/EClaw/commit/9d893b8e5eea4db275e450bf423903c156cd3e4b)), closes [#2869](https://github.com/HankHuang0516/EClaw/issues/2869)
* **security:** escape innerHTML in chat modal error messages ([#2819](https://github.com/HankHuang0516/EClaw/issues/2819)) ([dce07ad](https://github.com/HankHuang0516/EClaw/commit/dce07adde64795916dba977ae23e46f3371ce7ed)), closes [#2809](https://github.com/HankHuang0516/EClaw/issues/2809) [#2810](https://github.com/HankHuang0516/EClaw/issues/2810) [#2809](https://github.com/HankHuang0516/EClaw/issues/2809) [#2810](https://github.com/HankHuang0516/EClaw/issues/2810)
* **entities:** expose botSecret to owner so wallpaper service can poll companions ([#2615](https://github.com/HankHuang0516/EClaw/issues/2615)) ([04470fc](https://github.com/HankHuang0516/EClaw/commit/04470fce8f8c3fce2b1ba8b243e776606f107502))
* **rental:** expose owner_public_code in marketplace so plaza CTA can route ([#2616](https://github.com/HankHuang0516/EClaw/issues/2616)) ([4d1372f](https://github.com/HankHuang0516/EClaw/commit/4d1372f717d93cab65543e87c852e74e9fb67071)), closes [#2610](https://github.com/HankHuang0516/EClaw/issues/2610)
* **mindmap:** fallback to device scope when entityId is null ([#2728](https://github.com/HankHuang0516/EClaw/issues/2728)) ([7572312](https://github.com/HankHuang0516/EClaw/commit/7572312433d3d75fc245eda48a28919ce14bd927))
* **i18n:** fill 11 missing zh keys post-[#2920](https://github.com/HankHuang0516/EClaw/issues/2920)/[#2921](https://github.com/HankHuang0516/EClaw/issues/2921) (card_de6970) ([#2924](https://github.com/HankHuang0516/EClaw/issues/2924)) ([17c4899](https://github.com/HankHuang0516/EClaw/commit/17c48996489b1444d6ed589027acfa7986178fe1)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** fill backend runtime locale gaps ([#2921](https://github.com/HankHuang0516/EClaw/issues/2921)) ([00d96ff](https://github.com/HankHuang0516/EClaw/commit/00d96ff261b8134b49292623e1f786fd544144cc))
* **i18n:** fill Spanish drift keys ([#2751](https://github.com/HankHuang0516/EClaw/issues/2751)) ([0ad0ee5](https://github.com/HankHuang0516/EClaw/commit/0ad0ee55f7fac3e6ac46d891539950dab4d553cc))
* **portal:** fit embedded org chart to mobile viewport ([#2674](https://github.com/HankHuang0516/EClaw/issues/2674)) ([1c4e1b4](https://github.com/HankHuang0516/EClaw/commit/1c4e1b413ea7027b4cd4b8ecda981b0d0e12e66b))
* **i18n:** fix 6 trailing-comma syntax errors in 10-locale batch ([#2771](https://github.com/HankHuang0516/EClaw/issues/2771)) ([b27c6ca](https://github.com/HankHuang0516/EClaw/commit/b27c6ca204bf813e406c54ce3a2532a5f1f031b3))
* **kanban:** GET card returns latest 50 comments + comments endpoint exposes total ([#2816](https://github.com/HankHuang0516/EClaw/issues/2816)) ([c4d83f7](https://github.com/HankHuang0516/EClaw/commit/c4d83f777a1cd26aea0936e4316aa35c52822eef))
* **sharechat:** guest verify-email modal + disabled Send for unverified ([#2865](https://github.com/HankHuang0516/EClaw/issues/2865)) ([cb3b061](https://github.com/HankHuang0516/EClaw/commit/cb3b0614e0f6160417d907753e66eceb2d666802))
* **uiux:** harden chat previews and roster preview ([#2769](https://github.com/HankHuang0516/EClaw/issues/2769)) ([466d4d3](https://github.com/HankHuang0516/EClaw/commit/466d4d3ef81c628d3f58db64323946053d7bf61c))
* **mention-parser:** ignore @-mentions inside markdown code spans ([#2645](https://github.com/HankHuang0516/EClaw/issues/2645)) ([8da19d4](https://github.com/HankHuang0516/EClaw/commit/8da19d4a79ceb4152bf2144ee0847c61ce3e1def)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **kanban:** lazy-load dependency chips via IntersectionObserver ([#2632](https://github.com/HankHuang0516/EClaw/issues/2632)) ([20586b4](https://github.com/HankHuang0516/EClaw/commit/20586b43357335f9eb6a190c02d58c8e36b58aba)), closes [#2631](https://github.com/HankHuang0516/EClaw/issues/2631)
* **i18n:** localize FCM NotificationChannel labels (card_ec8d3a22) ([#2918](https://github.com/HankHuang0516/EClaw/issues/2918)) ([591cd20](https://github.com/HankHuang0516/EClaw/commit/591cd206704693650a53d19d94c4cc75daf84ffd))
* **kanban:** make card sorting deterministic ([#2756](https://github.com/HankHuang0516/EClaw/issues/2756)) ([48e2117](https://github.com/HankHuang0516/EClaw/commit/48e2117b64e37f05dc635e0a3b67bfd43cbe48f5))
* **portal/nagoya-trip:** map-link invisible on dark hero/day-banner ([#2897](https://github.com/HankHuang0516/EClaw/issues/2897)) ([cc33df6](https://github.com/HankHuang0516/EClaw/commit/cc33df686673455c20beaee60871412a5d486e66)), closes [#1f4030](https://github.com/HankHuang0516/EClaw/issues/1f4030) [#8b8579](https://github.com/HankHuang0516/EClaw/issues/8b8579) [#6e6859](https://github.com/HankHuang0516/EClaw/issues/6e6859) [#7a5614](https://github.com/HankHuang0516/EClaw/issues/7a5614)
* **org-chart:** notify affected bots on hierarchy change ([#2812](https://github.com/HankHuang0516/EClaw/issues/2812)) ([55675fd](https://github.com/HankHuang0516/EClaw/commit/55675fdf4487494d729a29524b32bd81b756a00c)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** notify reviewer on manual /move → review ([#2753](https://github.com/HankHuang0516/EClaw/issues/2753)) ([6cbbb4e](https://github.com/HankHuang0516/EClaw/commit/6cbbb4ee8c0d4d8ad54df2e9b5faaa3699bd530f))
* **wallpaper:** off-load spritesheet fetch to IO so per-petdx sprites actually render ([#2618](https://github.com/HankHuang0516/EClaw/issues/2618)) ([61b832c](https://github.com/HankHuang0516/EClaw/commit/61b832c9fa8a1d0caab810ccc942d85c63349267)), closes [#2615](https://github.com/HankHuang0516/EClaw/issues/2615) [#2577](https://github.com/HankHuang0516/EClaw/issues/2577)
* **security:** patch P0 sanitize-html XSS + P1 protobufjs + exam.html XSS ([#2829](https://github.com/HankHuang0516/EClaw/issues/2829)) ([c71b871](https://github.com/HankHuang0516/EClaw/commit/c71b871a045887375dd0d26d1a3280a0891a89ad))
* **security:** patch ws uninitialized memory disclosure (GHSA-58qx-3vcg-4xpx) ([#2872](https://github.com/HankHuang0516/EClaw/issues/2872)) ([2523d15](https://github.com/HankHuang0516/EClaw/commit/2523d154bbe501a7cc086340f7a07ece3abfa69b))
* **portal:** petdx-browser cookie-session fallback for device-login ([#2757](https://github.com/HankHuang0516/EClaw/issues/2757)) ([ca275f4](https://github.com/HankHuang0516/EClaw/commit/ca275f4519835da0c7ad71c588908a18f6f138d8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **api:** platform-stats 500 + entity/lookup publicCode alias ([#2809](https://github.com/HankHuang0516/EClaw/issues/2809), [#2810](https://github.com/HankHuang0516/EClaw/issues/2810)) ([#2818](https://github.com/HankHuang0516/EClaw/issues/2818)) ([f99fd17](https://github.com/HankHuang0516/EClaw/commit/f99fd17b2b1c32d88daa2510ff66d714c1a53edc))
* **i18n:** positional format specifiers for feedback_result_logs (7 locales) ([#2597](https://github.com/HankHuang0516/EClaw/issues/2597)) ([21aedc7](https://github.com/HankHuang0516/EClaw/commit/21aedc7eebc7a2839e340136f38dfdfd4dabb9dc))
* **avatar-petdx:** preserve descriptor across transient API failures (flicker) ([#2625](https://github.com/HankHuang0516/EClaw/issues/2625)) ([7b1c606](https://github.com/HankHuang0516/EClaw/commit/7b1c606514f7698d72ec95cf6c556e4043966186))
* **chat:** preserve recipient selection across rental-health refresh (P0 #card_eb1cba76) ([#2906](https://github.com/HankHuang0516/EClaw/issues/2906)) ([9cc0301](https://github.com/HankHuang0516/EClaw/commit/9cc0301cc26a0f49af4b7f53486f5c1a7cdd7902)), closes [#card_eb1cba76](https://github.com/HankHuang0516/EClaw/issues/card_eb1cba76) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **chat:** preserve scroll anchor while reading history ([#2693](https://github.com/HankHuang0516/EClaw/issues/2693)) ([945fdb7](https://github.com/HankHuang0516/EClaw/commit/945fdb7192b791b31882e1e75568dd8b11e4686f))
* **promo:** pull video embed from /promo-chat-avatar.html ([#2724](https://github.com/HankHuang0516/EClaw/issues/2724)) ([2afabc8](https://github.com/HankHuang0516/EClaw/commit/2afabc8c5ff8b25218a7cb857e8adfa572c8e9d5))
* **dashboard:** read live.rate_limits.{five_hour,seven_day}.used_percentage ([#2895](https://github.com/HankHuang0516/EClaw/issues/2895)) ([8223303](https://github.com/HankHuang0516/EClaw/commit/822330312bccb1c76675ad2c3b26e78d10dd1298))
* **kanban:** realign stale recurring schedules ([#2785](https://github.com/HankHuang0516/EClaw/issues/2785)) ([ab8ee25](https://github.com/HankHuang0516/EClaw/commit/ab8ee250a9b37f3d3e838bb01d8866c8d2b78231))
* **portal:** reduce QA-discovered request fanout ([#2656](https://github.com/HankHuang0516/EClaw/issues/2656)) ([1e46d6b](https://github.com/HankHuang0516/EClaw/commit/1e46d6bab61e58c65b452b6503d953f8dddeee75))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **portal:** remove org chart fit scale floor ([#2676](https://github.com/HankHuang0516/EClaw/issues/2676)) ([0f01606](https://github.com/HankHuang0516/EClaw/commit/0f016068b963bb5f800a02f28817c7174979d913))
* **rental:** remove phantom 'webhook test push' step from BIND_COMPLETE ([#2864](https://github.com/HankHuang0516/EClaw/issues/2864)) ([47f4a3e](https://github.com/HankHuang0516/EClaw/commit/47f4a3edf76aa95ebd06d8713cd44fda6eef9b5d))
* **i18n:** rename mm_empty_title → mm_state_empty_title in mindmap.html ([#2683](https://github.com/HankHuang0516/EClaw/issues/2683)) ([c79c109](https://github.com/HankHuang0516/EClaw/commit/c79c109bea23142e8a6d9ace976d105af1280ec9))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **chat:** render mention avatars with companion renderer ([#2633](https://github.com/HankHuang0516/EClaw/issues/2633)) ([03e205f](https://github.com/HankHuang0516/EClaw/commit/03e205f663ecd2c2f443d4009dd5af0093f0bbbb))
* **kanban:** reserve mobile comments panel height ([#2782](https://github.com/HankHuang0516/EClaw/issues/2782)) ([ce8662d](https://github.com/HankHuang0516/EClaw/commit/ce8662d362422fdd25037f1deb61dbed9425e2f9))
* **channel:** restore handshake fallback to discovered sessions ([#2915](https://github.com/HankHuang0516/EClaw/issues/2915)) ([#2917](https://github.com/HankHuang0516/EClaw/issues/2917)) ([9d7d3a2](https://github.com/HankHuang0516/EClaw/commit/9d7d3a25654289998314dd5ca152cefdb8a4d64e)), closes [#2912](https://github.com/HankHuang0516/EClaw/issues/2912)
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* scheduled audit 2026-05-13 — 6 bugs, XSS, i18n ([#2668](https://github.com/HankHuang0516/EClaw/issues/2668)) ([21dd513](https://github.com/HankHuang0516/EClaw/commit/21dd513b4464738de29164265437435ba6cc4817)), closes [#2605](https://github.com/HankHuang0516/EClaw/issues/2605) [#2608](https://github.com/HankHuang0516/EClaw/issues/2608) [#2600](https://github.com/HankHuang0516/EClaw/issues/2600) [#2599](https://github.com/HankHuang0516/EClaw/issues/2599) [#2598](https://github.com/HankHuang0516/EClaw/issues/2598)
* **channel:** scope official bot sessions ([#2912](https://github.com/HankHuang0516/EClaw/issues/2912)) ([5c56b62](https://github.com/HankHuang0516/EClaw/commit/5c56b62c13b739b76f39e168a26bd4e5de2644fb))
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **dashboard:** show Claude weekly bar reset countdown ([#2896](https://github.com/HankHuang0516/EClaw/issues/2896)) ([3b87845](https://github.com/HankHuang0516/EClaw/commit/3b87845d713e980fec69f6b8007549338a326713)), closes [#2895](https://github.com/HankHuang0516/EClaw/issues/2895)
* **chat:** smart-chip preview falls back to inline c.comments when /comments fails (PR [#2677](https://github.com/HankHuang0516/EClaw/issues/2677)) ([7f4dffd](https://github.com/HankHuang0516/EClaw/commit/7f4dffd2c83ea86f296b8fa0610f0e67c9f1af11))
* **kanban:** stabilize comment detail viewport ([#2796](https://github.com/HankHuang0516/EClaw/issues/2796)) ([0a10aad](https://github.com/HankHuang0516/EClaw/commit/0a10aadb5a5b12ff23454c16d5c88183b94ad7d7))
* **wallpaper:** stop Android live wallpaper flashing default lobster on companion change ([#2629](https://github.com/HankHuang0516/EClaw/issues/2629)) ([8b4f66f](https://github.com/HankHuang0516/EClaw/commit/8b4f66fcb335bf43128f924b761b6337c817095b)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **chat:** stop chat.html bouncing to dashboard via /api/rental/health-status 401 race ([#2833](https://github.com/HankHuang0516/EClaw/issues/2833)) ([c422406](https://github.com/HankHuang0516/EClaw/commit/c4224067cdcfe7f3e22ab95007c7563dac4196ac))
* **openclaw-channel:** support OpenClaw 2026.5.20 ([8045de6](https://github.com/HankHuang0516/EClaw/commit/8045de6bebecfc05f9bd57453b99c098ca35681b))
* **mentions:** support same-device CJK display-name tags ([#2874](https://github.com/HankHuang0516/EClaw/issues/2874)) ([b8f61be](https://github.com/HankHuang0516/EClaw/commit/b8f61be9a3962fef75dd32ea34e8900880dafaf9))
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **dashboard:** use sessions[].project for widget Projects list (was .project_id) ([#2894](https://github.com/HankHuang0516/EClaw/issues/2894)) ([0fd1334](https://github.com/HankHuang0516/EClaw/commit/0fd1334897d4a603cc6eb74f34b48606547e09cf))
* **app:** WebView pages honor app-selected locale via ?lang= URL param ([#2672](https://github.com/HankHuang0516/EClaw/issues/2672)) ([8ed8757](https://github.com/HankHuang0516/EClaw/commit/8ed8757aec5bf214e837cc0d81bf2b23f1993a91)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **share-chat:** wire rich CTA actions to msgInput ([#2867](https://github.com/HankHuang0516/EClaw/issues/2867)) ([df23b11](https://github.com/HankHuang0516/EClaw/commit/df23b1147d34c59a644a145bbd87c18b96400acc))


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* **usage-api:** /api/usage/{snapshot,timeline} + usage_snapshots table (Plan B Phase 1) ([#2889](https://github.com/HankHuang0516/EClaw/issues/2889)) ([a0d859c](https://github.com/HankHuang0516/EClaw/commit/a0d859c63f0220909dadb2b1952174861ccdce14))
* **community:** 1-click chat button on bot cards + utm tagging ([#2610](https://github.com/HankHuang0516/EClaw/issues/2610)) ([eee97b0](https://github.com/HankHuang0516/EClaw/commit/eee97b0e2e4e74945ec24f218a69a52800b97a66))
* **chat:** accept ?messageId= as deep-link alias ([#2838](https://github.com/HankHuang0516/EClaw/issues/2838)) ([1785a87](https://github.com/HankHuang0516/EClaw/commit/1785a87310426637fd10df83754fb9924c45207f))
* **chat:** add avatar size preference ([#2714](https://github.com/HankHuang0516/EClaw/issues/2714)) ([6fe164a](https://github.com/HankHuang0516/EClaw/commit/6fe164ad8b22fa576d2dd9ad37c0d9fc295b5a83))
* **dashboard:** add Claude and Codex channel guides ([#2640](https://github.com/HankHuang0516/EClaw/issues/2640)) ([c64e4c4](https://github.com/HankHuang0516/EClaw/commit/c64e4c4afc78db58c5cd578f00486dd7b2fd3311))
* **dashboard:** add Claude Code channel guide card ([#2667](https://github.com/HankHuang0516/EClaw/issues/2667)) ([d70d75c](https://github.com/HankHuang0516/EClaw/commit/d70d75c0c8caa8a540358a9aab4556b8c1927a5c))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* **kanban:** add device-scoped card tags ([#2773](https://github.com/HankHuang0516/EClaw/issues/2773)) ([53a387e](https://github.com/HankHuang0516/EClaw/commit/53a387e67ba7bb4f6bed1c427000c4ae8666577a))
* **portal:** add entity selector to petdx-browser ([#2602](https://github.com/HankHuang0516/EClaw/issues/2602)) ([3fa067e](https://github.com/HankHuang0516/EClaw/commit/3fa067e00b38829b48a37cecd33ee81a9a1122d9))
* **kanban:** add explicit card links ([#2721](https://github.com/HankHuang0516/EClaw/issues/2721)) ([ef9f812](https://github.com/HankHuang0516/EClaw/commit/ef9f812a3fcf39efd07fd158ce90951bdd045ac7))
* **kanban:** add explicit done-card reopen flow ([#2801](https://github.com/HankHuang0516/EClaw/issues/2801)) ([5080aac](https://github.com/HankHuang0516/EClaw/commit/5080aacb75047c0deaa379ee708ec85465afd57c))
* **mindmap:** add GET /api/mindmap/graph force-graph projection ([#2680](https://github.com/HankHuang0516/EClaw/issues/2680)) ([a00b2e7](https://github.com/HankHuang0516/EClaw/commit/a00b2e775af2c4c98cd157f760ad87aeeee469f0)), closes [#2679](https://github.com/HankHuang0516/EClaw/issues/2679) [#2679](https://github.com/HankHuang0516/EClaw/issues/2679)
* **dashboard:** add Hermes channel promo card ([#2708](https://github.com/HankHuang0516/EClaw/issues/2708)) ([337aca1](https://github.com/HankHuang0516/EClaw/commit/337aca153d5a1cd7e888c065f00ae54db7872d91))
* **rental:** add listing soft pause ([#2781](https://github.com/HankHuang0516/EClaw/issues/2781)) ([6586b72](https://github.com/HankHuang0516/EClaw/commit/6586b72717ddb1637d91cd3242c8d2ff554f62b4))
* **portal:** add Nagoya 5D4N trip static cross-ref page ([#2689](https://github.com/HankHuang0516/EClaw/issues/2689)) ([2e0efb6](https://github.com/HankHuang0516/EClaw/commit/2e0efb6dcdaff52226cc8854a96747000b12bdff))
* **portal:** add Nagoya trip map links and image lightbox ([#2821](https://github.com/HankHuang0516/EClaw/issues/2821)) ([3e40955](https://github.com/HankHuang0516/EClaw/commit/3e40955650a05f45a6b9f7e39e73847705424a03))
* **portal/nagoya:** add parking shortcut buttons next to itinerary places ([#2826](https://github.com/HankHuang0516/EClaw/issues/2826)) ([63968c5](https://github.com/HankHuang0516/EClaw/commit/63968c554d046afc8d978de74e3aacbf7700500d))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **settings:** add rental roster management preview ([#2758](https://github.com/HankHuang0516/EClaw/issues/2758)) ([9706e59](https://github.com/HankHuang0516/EClaw/commit/9706e59ded140a90a6e02348124282bc69d89001))
* **rental:** add renter health chat indicator ([#2690](https://github.com/HankHuang0516/EClaw/issues/2690)) ([36cd2e9](https://github.com/HankHuang0516/EClaw/commit/36cd2e9802be4c7ebb03d3024617fa74aca48ffd))
* **ios:** add Tutorial & Intro entry in Settings ([#2800](https://github.com/HankHuang0516/EClaw/issues/2800)) ([ed83e51](https://github.com/HankHuang0516/EClaw/commit/ed83e51d043bf4cd5865f38dc95a91ed54820d6c))
* **landing:** add Watch Full Demo CTA below hero video ([#2799](https://github.com/HankHuang0516/EClaw/issues/2799)) ([66107c9](https://github.com/HankHuang0516/EClaw/commit/66107c954727551fd34d989a4674daaad9b63968))
* **footer:** add Watch Intro Video link in Info column ([#2798](https://github.com/HankHuang0516/EClaw/issues/2798)) ([d7c6d59](https://github.com/HankHuang0516/EClaw/commit/d7c6d596b69c6a5b257bf1f7a792a407ef9712ad))
* **i18n:** ar iter-2 — fill 623 missing keys against en source ([#2847](https://github.com/HankHuang0516/EClaw/issues/2847)) ([ee94a7a](https://github.com/HankHuang0516/EClaw/commit/ee94a7ae6812b5163efe4284ee4907ca32302f5c))
* **kanban:** backlog launch-gate flag to suppress L1/L2/L3 escalation ([#2855](https://github.com/HankHuang0516/EClaw/issues/2855)) ([cb8bf1b](https://github.com/HankHuang0516/EClaw/commit/cb8bf1bb6421f25214f65e129a8cadccc49cc266)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#4](https://github.com/HankHuang0516/EClaw/issues/4) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **companion:** bridge crafter-station/petdex gallery (1784 pets) ([#2601](https://github.com/HankHuang0516/EClaw/issues/2601)) ([2e245be](https://github.com/HankHuang0516/EClaw/commit/2e245bea6dd47ea7361b927d389188a3c23b6bb3))
* **promo:** chat avatar size feature landing page (self-hosted MP4) ([#2722](https://github.com/HankHuang0516/EClaw/issues/2722)) ([3852210](https://github.com/HankHuang0516/EClaw/commit/3852210d355704d018e3daca6b5f9512a011b210)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **kanban:** cron-spawn jitter + lane backpressure to prevent same-tick wedge ([#2791](https://github.com/HankHuang0516/EClaw/issues/2791)) ([9f414a7](https://github.com/HankHuang0516/EClaw/commit/9f414a731d6393672a0a4189c7b408c529ae5e12)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **portal:** dashboard usage widget — Claude/Codex 5h gauges + 24h chart (Plan B Phase 3) ([#2891](https://github.com/HankHuang0516/EClaw/issues/2891)) ([d18f373](https://github.com/HankHuang0516/EClaw/commit/d18f373857e4bd302437d6bda2a1e01871fbb1db))
* **portal:** dashboard usage widget v2 — Session/Weekly % bars + projects, no cost (Plan B Phase 3.1) ([#2893](https://github.com/HankHuang0516/EClaw/issues/2893)) ([4bc0dc7](https://github.com/HankHuang0516/EClaw/commit/4bc0dc744ed9d54dfd532ebac4b705c7f84ec0a6))
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **promo:** embed daily eclaw video 2026-05-14 ([#2786](https://github.com/HankHuang0516/EClaw/issues/2786)) ([718a814](https://github.com/HankHuang0516/EClaw/commit/718a814ab16850bc2b33a1b303841e2c4378ecfa)), closes [#2782](https://github.com/HankHuang0516/EClaw/issues/2782) [#2693](https://github.com/HankHuang0516/EClaw/issues/2693)
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **info:** embed promo video at top of Quick Start tab ([#2797](https://github.com/HankHuang0516/EClaw/issues/2797)) ([047679f](https://github.com/HankHuang0516/EClaw/commit/047679fd57ab9949eaeacea414d5611e71afe041))
* **rental:** enforce strict rebind refunds ([#2703](https://github.com/HankHuang0516/EClaw/issues/2703)) ([a1859c5](https://github.com/HankHuang0516/EClaw/commit/a1859c50e6fb3991d7a8051491502d824a14a116))
* **portal:** group task chip actions ([#2825](https://github.com/HankHuang0516/EClaw/issues/2825)) ([5db5c59](https://github.com/HankHuang0516/EClaw/commit/5db5c59b32b8635f1412205faf0c2f9164d3d5d4))
* **portal:** info-guide-rules + info-guide-soul slide pair ([#2793](https://github.com/HankHuang0516/EClaw/issues/2793)) ([1c8bddc](https://github.com/HankHuang0516/EClaw/commit/1c8bddc4c185054b2b60088498e3d45509117127)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **chat:** link card previews to kanban ([#2754](https://github.com/HankHuang0516/EClaw/issues/2754)) ([2261240](https://github.com/HankHuang0516/EClaw/commit/22612402c2e95efb07246629e81a849be41ee9c7))
* **mission:** link notes to kanban cards ([#2723](https://github.com/HankHuang0516/EClaw/issues/2723)) ([b36dc18](https://github.com/HankHuang0516/EClaw/commit/b36dc18f3a8facf12e0b6046351c222f1e99dc55))
* **usage-daemon:** macOS launchd daemon polls Claude/Codex usage → POST /api/usage/snapshot (Plan B Phase 2) ([#2890](https://github.com/HankHuang0516/EClaw/issues/2890)) ([fd225e1](https://github.com/HankHuang0516/EClaw/commit/fd225e12d9491037be1a340bd63b54b5f3308c7f))
* **mindmap:** mission.html link to /portal/mindmap.html + deprecate /api/mission/mindmap ([#2685](https://github.com/HankHuang0516/EClaw/issues/2685)) ([11e297b](https://github.com/HankHuang0516/EClaw/commit/11e297bab1c9b56fcde3027d6500b7c58891bf18)), closes [#2680](https://github.com/HankHuang0516/EClaw/issues/2680) [#2684](https://github.com/HankHuang0516/EClaw/issues/2684)
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **portal:** nagoya trip interactive map (Leaflet + OSM, no API key) ([#2888](https://github.com/HankHuang0516/EClaw/issues/2888)) ([ecfdac0](https://github.com/HankHuang0516/EClaw/commit/ecfdac06348c12ee7c6872c6c28d5f82162e7aa9))
* **channel:** outbound backpressure (30/min cap + 429 retry-after) ([#2911](https://github.com/HankHuang0516/EClaw/issues/2911)) ([36dc99c](https://github.com/HankHuang0516/EClaw/commit/36dc99ca78b0e1724a2aaefb5936669077b7a28f))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **settings:** per-entity nudge override UI (Phase 2) ([#2837](https://github.com/HankHuang0516/EClaw/issues/2837)) ([ea7662b](https://github.com/HankHuang0516/EClaw/commit/ea7662b0858882dae461e1387f711895924f9ab8)), closes [3/#4](https://github.com/HankHuang0516/EClaw/issues/4)
* **kanban:** per-entity nudge overrides (Phase 2 of card_e066cb6b) ([#2836](https://github.com/HankHuang0516/EClaw/issues/2836)) ([0425f80](https://github.com/HankHuang0516/EClaw/commit/0425f80bc1169c0d506b665659c8676695c45553))
* **avatar:** petdx render on card-holder my-cards (Phase 1b) ([#2621](https://github.com/HankHuang0516/EClaw/issues/2621)) ([f78ba8b](https://github.com/HankHuang0516/EClaw/commit/f78ba8b18acc426936ab6d8a82ca7541effea00d))
* **avatar:** petdx render on dashboard entity grid / org chart / bindings (Phase 1b) ([#2622](https://github.com/HankHuang0516/EClaw/issues/2622)) ([f417749](https://github.com/HankHuang0516/EClaw/commit/f41774914451048e8cd76e9ae30416a0642e173b)), closes [#2620](https://github.com/HankHuang0516/EClaw/issues/2620) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621)
* **avatar:** petdx render on kanban auto-assign / pulse / comment avatars (Phase 1b) ([#2624](https://github.com/HankHuang0516/EClaw/issues/2624)) ([6bff5f8](https://github.com/HankHuang0516/EClaw/commit/6bff5f80440d0bd91a6b1721cde9478d685c4d46))
* **avatar:** petdx render on mission skill/rule/soul entity dialogs (Phase 1b) ([#2623](https://github.com/HankHuang0516/EClaw/issues/2623)) ([129327b](https://github.com/HankHuang0516/EClaw/commit/129327bc7b91056659f1ab7e8d5e3f5260d951fb))
* **mindmap:** portal/mindmap.html force-graph prototype ([#129](https://github.com/HankHuang0516/EClaw/issues/129)) ([#2681](https://github.com/HankHuang0516/EClaw/issues/2681)) ([0f15e69](https://github.com/HankHuang0516/EClaw/commit/0f15e6930f0697c37fa08f3219edb8f9e499837f)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **channel:** record delivery receipts ([#2913](https://github.com/HankHuang0516/EClaw/issues/2913)) ([90c671b](https://github.com/HankHuang0516/EClaw/commit/90c671bd1970ab51584b90e2b634484ec10cc7ae))
* **portal:** redo nagoya trip page in professional tour-guide style ([#2691](https://github.com/HankHuang0516/EClaw/issues/2691)) ([b2378c0](https://github.com/HankHuang0516/EClaw/commit/b2378c06ee20fa9cccfdceceb1a4c9e0b3072f59))
* **i18n:** remove ms+hi orphan keys from i18n.js ([#2849](https://github.com/HankHuang0516/EClaw/issues/2849)) ([320176c](https://github.com/HankHuang0516/EClaw/commit/320176c06a3cfd8631e2a82ad02a6bd6a9af0389))
* **avatar:** render selected petdx companion in chat avatars ([#2620](https://github.com/HankHuang0516/EClaw/issues/2620)) ([0bdd046](https://github.com/HankHuang0516/EClaw/commit/0bdd046fe1b1c428e32edda366ff112c08927f4c))
* **home:** replace native home with WebView hosting dashboard.html ([#2634](https://github.com/HankHuang0516/EClaw/issues/2634)) ([e69ea81](https://github.com/HankHuang0516/EClaw/commit/e69ea8160c239b083a83d6dc83a4f1c3f901c863))
* **app:** route chat mission jumps through native tabs ([#2824](https://github.com/HankHuang0516/EClaw/issues/2824)) ([deb07b6](https://github.com/HankHuang0516/EClaw/commit/deb07b69a9ecca632fe27278de537f1d85234e94))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **chat:** support message deep links ([#2719](https://github.com/HankHuang0516/EClaw/issues/2719)) ([2dc0f1e](https://github.com/HankHuang0516/EClaw/commit/2dc0f1eeb259e1a0848db4a03186b989372cd91c))
* **mission:** support note deep links ([#2717](https://github.com/HankHuang0516/EClaw/issues/2717)) ([2efd3a5](https://github.com/HankHuang0516/EClaw/commit/2efd3a5e741217a07c0b0ac54a0ddd010e0ebe23))
* **share-chat:** twitter card + per-bot og:image/twitter:* in SSR ([#2609](https://github.com/HankHuang0516/EClaw/issues/2609)) ([6cdc853](https://github.com/HankHuang0516/EClaw/commit/6cdc853dc884cdb95bd47214942768981f218ae0))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))
* **settings:** wire petdx avatar into channel-account chips ([#2626](https://github.com/HankHuang0516/EClaw/issues/2626)) ([88aec77](https://github.com/HankHuang0516/EClaw/commit/88aec772628c240e97b336bb5820892ad632d1ae))
* **files:** wire petdx avatar into entity filter & per-file badges ([#2627](https://github.com/HankHuang0516/EClaw/issues/2627)) ([5b3e5cc](https://github.com/HankHuang0516/EClaw/commit/5b3e5cc542d9da69bb4e92500fd03a542ea33f00))
* **mindmap:** wrap hardcoded zh-TW UI strings with i18n t() ([#2607](https://github.com/HankHuang0516/EClaw/issues/2607)) ([166af87](https://github.com/HankHuang0516/EClaw/commit/166af8772b2121a24aaf34a83b3de970e9b3b571)), closes [#2606](https://github.com/HankHuang0516/EClaw/issues/2606)
* **i18n:** zh-TW backfill 8 keys (soft-pause + chat + invite + wallet) ([#2815](https://github.com/HankHuang0516/EClaw/issues/2815)) ([a2dd574](https://github.com/HankHuang0516/EClaw/commit/a2dd5743ce8d43a4b6ace9a2fd4b52568180d6c5))


### Performance Improvements

* **mindmap:** force-graph hardening for 1000/2000-node graphs ([#2684](https://github.com/HankHuang0516/EClaw/issues/2684)) ([da8b1c8](https://github.com/HankHuang0516/EClaw/commit/da8b1c8f947ab8bc8fa455c1962a91146623a1fc))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-25)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **notifications:** add kanban_done + kanban_done_auto toggles to Android Settings ([#2636](https://github.com/HankHuang0516/EClaw/issues/2636)) ([a710909](https://github.com/HankHuang0516/EClaw/commit/a7109095e3393b8564e7ef1b23d382a4fbb944b8))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **api:** align /api/platform-stats skill-doc with device-auth contract (card_49b8190) ([#2916](https://github.com/HankHuang0516/EClaw/issues/2916)) ([ee55b2f](https://github.com/HankHuang0516/EClaw/commit/ee55b2fdbfbcd4bead5501d16ee66339056c32d7))
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **i18n:** ar block — fix 27 broken entries (CJK leaks + truncated HTML) ([#2851](https://github.com/HankHuang0516/EClaw/issues/2851)) ([5b19175](https://github.com/HankHuang0516/EClaw/commit/5b19175d712d00d16fcec00b749035c4beae7a5c))
* **chat:** atomic-load target bar (await contacts before first render) ([#2831](https://github.com/HankHuang0516/EClaw/issues/2831)) ([5f529e6](https://github.com/HankHuang0516/EClaw/commit/5f529e6b772eacc38ba1de69b44258a05f0d816a)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2](https://github.com/HankHuang0516/EClaw/issues/2)
* **channel:** await binding persistence ([712516d](https://github.com/HankHuang0516/EClaw/commit/712516decafb745035bd1434a28cc1973d433e19))
* **rental:** bump handshake timeout to 60s + timeout-aware discovery fallback ([#2863](https://github.com/HankHuang0516/EClaw/issues/2863)) ([fd4322f](https://github.com/HankHuang0516/EClaw/commit/fd4322f8890f3c2dfca3acdae6a4b95f19c381f9)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **i18n:** clear batch 1 residual missing keys ([#2790](https://github.com/HankHuang0516/EClaw/issues/2790)) ([211030e](https://github.com/HankHuang0516/EClaw/commit/211030e0b0b6a865c11f0c4ed60dc4e356d43b7a))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **kanban:** comment input no longer overlaps last comment in card detail (PR [#2678](https://github.com/HankHuang0516/EClaw/issues/2678)) ([fba91fc](https://github.com/HankHuang0516/EClaw/commit/fba91fca15402b453a0db5ee857c0b16e6087055))
* **chat:** compact 20px avatar in target bar (App WebView only shows [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2](https://github.com/HankHuang0516/EClaw/issues/2)) ([#2830](https://github.com/HankHuang0516/EClaw/issues/2830)) ([42c7543](https://github.com/HankHuang0516/EClaw/commit/42c7543b4a78a7abf3f5f7535eb9bc6142cd0fe2)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **portal:** complete 401 redirect sweep + mobile UIUX truncation ([#2842](https://github.com/HankHuang0516/EClaw/issues/2842)) ([f9799ba](https://github.com/HankHuang0516/EClaw/commit/f9799ba42498b109f0a8a70e80836aa6da51e216)), closes [#2833](https://github.com/HankHuang0516/EClaw/issues/2833) [#2845](https://github.com/HankHuang0516/EClaw/issues/2845) [#2844](https://github.com/HankHuang0516/EClaw/issues/2844) [#2843](https://github.com/HankHuang0516/EClaw/issues/2843)
* **uiux:** continue qa mobile readability sweep ([#2854](https://github.com/HankHuang0516/EClaw/issues/2854)) ([57606ff](https://github.com/HankHuang0516/EClaw/commit/57606ffe3e543b07a026aacc53c4b470c9a7825b))
* **i18n:** cover dynamic portal wrapper keys ([#2807](https://github.com/HankHuang0516/EClaw/issues/2807)) ([4c711cc](https://github.com/HankHuang0516/EClaw/commit/4c711cc4009300ffe4e8933a98ee01cd0fdd6aeb))
* **i18n:** dedup 20 dash_channel_card_* keys in es block ([#2876](https://github.com/HankHuang0516/EClaw/issues/2876)) ([807284c](https://github.com/HankHuang0516/EClaw/commit/807284ce363ef119ccdb0ae40e5ce99d3f0a27e0))
* **i18n:** dedupe backend locale keys via AST ([#2920](https://github.com/HankHuang0516/EClaw/issues/2920)) ([40ef114](https://github.com/HankHuang0516/EClaw/commit/40ef11414c8b836fe1ed93ec06c839df3a1bf7b9))
* **i18n:** dedupe zh locale keys ([#2919](https://github.com/HankHuang0516/EClaw/issues/2919)) ([afd2cca](https://github.com/HankHuang0516/EClaw/commit/afd2cca8086c2f2df0d04c9c5f8c58733652875e))
* **kanban:** dep-aware nudge gating + roadmap dependency backfill ([#2904](https://github.com/HankHuang0516/EClaw/issues/2904)) ([2b76ac9](https://github.com/HankHuang0516/EClaw/commit/2b76ac9d3b7e4169b7bc3c6f6b0b0903b63cd9f7)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **rental:** don't pollute entity.message on push gateway timeout ([#2860](https://github.com/HankHuang0516/EClaw/issues/2860)) ([592ba44](https://github.com/HankHuang0516/EClaw/commit/592ba44f57536ee00011b6cbddaa6b129a7cbae9))
* **petdx:** drop dark-grey loading placeholder + preload sprite WEBP ([#2628](https://github.com/HankHuang0516/EClaw/issues/2628)) ([59cef38](https://github.com/HankHuang0516/EClaw/commit/59cef387bd69ca99d7d15c86a1364856d3849ad8)), closes [#1a1a1a](https://github.com/HankHuang0516/EClaw/issues/1a1a1a)
* **gateway-ws:** drop Origin header on server-to-server WS upgrade ([#2869](https://github.com/HankHuang0516/EClaw/issues/2869)) ([716dcf9](https://github.com/HankHuang0516/EClaw/commit/716dcf9d0834b17522bb9d894bad84bc142d1a19))
* **setup-scripts:** drop Origin header on server-to-server WS upgrade ([#2875](https://github.com/HankHuang0516/EClaw/issues/2875)) ([9d893b8](https://github.com/HankHuang0516/EClaw/commit/9d893b8e5eea4db275e450bf423903c156cd3e4b)), closes [#2869](https://github.com/HankHuang0516/EClaw/issues/2869)
* **security:** escape innerHTML in chat modal error messages ([#2819](https://github.com/HankHuang0516/EClaw/issues/2819)) ([dce07ad](https://github.com/HankHuang0516/EClaw/commit/dce07adde64795916dba977ae23e46f3371ce7ed)), closes [#2809](https://github.com/HankHuang0516/EClaw/issues/2809) [#2810](https://github.com/HankHuang0516/EClaw/issues/2810) [#2809](https://github.com/HankHuang0516/EClaw/issues/2809) [#2810](https://github.com/HankHuang0516/EClaw/issues/2810)
* **entities:** expose botSecret to owner so wallpaper service can poll companions ([#2615](https://github.com/HankHuang0516/EClaw/issues/2615)) ([04470fc](https://github.com/HankHuang0516/EClaw/commit/04470fce8f8c3fce2b1ba8b243e776606f107502))
* **rental:** expose owner_public_code in marketplace so plaza CTA can route ([#2616](https://github.com/HankHuang0516/EClaw/issues/2616)) ([4d1372f](https://github.com/HankHuang0516/EClaw/commit/4d1372f717d93cab65543e87c852e74e9fb67071)), closes [#2610](https://github.com/HankHuang0516/EClaw/issues/2610)
* **mindmap:** fallback to device scope when entityId is null ([#2728](https://github.com/HankHuang0516/EClaw/issues/2728)) ([7572312](https://github.com/HankHuang0516/EClaw/commit/7572312433d3d75fc245eda48a28919ce14bd927))
* **i18n:** fill backend runtime locale gaps ([#2921](https://github.com/HankHuang0516/EClaw/issues/2921)) ([00d96ff](https://github.com/HankHuang0516/EClaw/commit/00d96ff261b8134b49292623e1f786fd544144cc))
* **i18n:** fill Spanish drift keys ([#2751](https://github.com/HankHuang0516/EClaw/issues/2751)) ([0ad0ee5](https://github.com/HankHuang0516/EClaw/commit/0ad0ee55f7fac3e6ac46d891539950dab4d553cc))
* **portal:** fit embedded org chart to mobile viewport ([#2674](https://github.com/HankHuang0516/EClaw/issues/2674)) ([1c4e1b4](https://github.com/HankHuang0516/EClaw/commit/1c4e1b413ea7027b4cd4b8ecda981b0d0e12e66b))
* **i18n:** fix 6 trailing-comma syntax errors in 10-locale batch ([#2771](https://github.com/HankHuang0516/EClaw/issues/2771)) ([b27c6ca](https://github.com/HankHuang0516/EClaw/commit/b27c6ca204bf813e406c54ce3a2532a5f1f031b3))
* **kanban:** GET card returns latest 50 comments + comments endpoint exposes total ([#2816](https://github.com/HankHuang0516/EClaw/issues/2816)) ([c4d83f7](https://github.com/HankHuang0516/EClaw/commit/c4d83f777a1cd26aea0936e4316aa35c52822eef))
* **sharechat:** guest verify-email modal + disabled Send for unverified ([#2865](https://github.com/HankHuang0516/EClaw/issues/2865)) ([cb3b061](https://github.com/HankHuang0516/EClaw/commit/cb3b0614e0f6160417d907753e66eceb2d666802))
* **uiux:** harden chat previews and roster preview ([#2769](https://github.com/HankHuang0516/EClaw/issues/2769)) ([466d4d3](https://github.com/HankHuang0516/EClaw/commit/466d4d3ef81c628d3f58db64323946053d7bf61c))
* **mention-parser:** ignore @-mentions inside markdown code spans ([#2645](https://github.com/HankHuang0516/EClaw/issues/2645)) ([8da19d4](https://github.com/HankHuang0516/EClaw/commit/8da19d4a79ceb4152bf2144ee0847c61ce3e1def)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **kanban:** lazy-load dependency chips via IntersectionObserver ([#2632](https://github.com/HankHuang0516/EClaw/issues/2632)) ([20586b4](https://github.com/HankHuang0516/EClaw/commit/20586b43357335f9eb6a190c02d58c8e36b58aba)), closes [#2631](https://github.com/HankHuang0516/EClaw/issues/2631)
* **i18n:** localize FCM NotificationChannel labels (card_ec8d3a22) ([#2918](https://github.com/HankHuang0516/EClaw/issues/2918)) ([591cd20](https://github.com/HankHuang0516/EClaw/commit/591cd206704693650a53d19d94c4cc75daf84ffd))
* **kanban:** make card sorting deterministic ([#2756](https://github.com/HankHuang0516/EClaw/issues/2756)) ([48e2117](https://github.com/HankHuang0516/EClaw/commit/48e2117b64e37f05dc635e0a3b67bfd43cbe48f5))
* **portal/nagoya-trip:** map-link invisible on dark hero/day-banner ([#2897](https://github.com/HankHuang0516/EClaw/issues/2897)) ([cc33df6](https://github.com/HankHuang0516/EClaw/commit/cc33df686673455c20beaee60871412a5d486e66)), closes [#1f4030](https://github.com/HankHuang0516/EClaw/issues/1f4030) [#8b8579](https://github.com/HankHuang0516/EClaw/issues/8b8579) [#6e6859](https://github.com/HankHuang0516/EClaw/issues/6e6859) [#7a5614](https://github.com/HankHuang0516/EClaw/issues/7a5614)
* **org-chart:** notify affected bots on hierarchy change ([#2812](https://github.com/HankHuang0516/EClaw/issues/2812)) ([55675fd](https://github.com/HankHuang0516/EClaw/commit/55675fdf4487494d729a29524b32bd81b756a00c)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** notify reviewer on manual /move → review ([#2753](https://github.com/HankHuang0516/EClaw/issues/2753)) ([6cbbb4e](https://github.com/HankHuang0516/EClaw/commit/6cbbb4ee8c0d4d8ad54df2e9b5faaa3699bd530f))
* **wallpaper:** off-load spritesheet fetch to IO so per-petdx sprites actually render ([#2618](https://github.com/HankHuang0516/EClaw/issues/2618)) ([61b832c](https://github.com/HankHuang0516/EClaw/commit/61b832c9fa8a1d0caab810ccc942d85c63349267)), closes [#2615](https://github.com/HankHuang0516/EClaw/issues/2615) [#2577](https://github.com/HankHuang0516/EClaw/issues/2577)
* **security:** patch P0 sanitize-html XSS + P1 protobufjs + exam.html XSS ([#2829](https://github.com/HankHuang0516/EClaw/issues/2829)) ([c71b871](https://github.com/HankHuang0516/EClaw/commit/c71b871a045887375dd0d26d1a3280a0891a89ad))
* **security:** patch ws uninitialized memory disclosure (GHSA-58qx-3vcg-4xpx) ([#2872](https://github.com/HankHuang0516/EClaw/issues/2872)) ([2523d15](https://github.com/HankHuang0516/EClaw/commit/2523d154bbe501a7cc086340f7a07ece3abfa69b))
* **portal:** petdx-browser cookie-session fallback for device-login ([#2757](https://github.com/HankHuang0516/EClaw/issues/2757)) ([ca275f4](https://github.com/HankHuang0516/EClaw/commit/ca275f4519835da0c7ad71c588908a18f6f138d8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **api:** platform-stats 500 + entity/lookup publicCode alias ([#2809](https://github.com/HankHuang0516/EClaw/issues/2809), [#2810](https://github.com/HankHuang0516/EClaw/issues/2810)) ([#2818](https://github.com/HankHuang0516/EClaw/issues/2818)) ([f99fd17](https://github.com/HankHuang0516/EClaw/commit/f99fd17b2b1c32d88daa2510ff66d714c1a53edc))
* **i18n:** positional format specifiers for feedback_result_logs (7 locales) ([#2597](https://github.com/HankHuang0516/EClaw/issues/2597)) ([21aedc7](https://github.com/HankHuang0516/EClaw/commit/21aedc7eebc7a2839e340136f38dfdfd4dabb9dc))
* **avatar-petdx:** preserve descriptor across transient API failures (flicker) ([#2625](https://github.com/HankHuang0516/EClaw/issues/2625)) ([7b1c606](https://github.com/HankHuang0516/EClaw/commit/7b1c606514f7698d72ec95cf6c556e4043966186))
* **chat:** preserve recipient selection across rental-health refresh (P0 #card_eb1cba76) ([#2906](https://github.com/HankHuang0516/EClaw/issues/2906)) ([9cc0301](https://github.com/HankHuang0516/EClaw/commit/9cc0301cc26a0f49af4b7f53486f5c1a7cdd7902)), closes [#card_eb1cba76](https://github.com/HankHuang0516/EClaw/issues/card_eb1cba76) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **chat:** preserve scroll anchor while reading history ([#2693](https://github.com/HankHuang0516/EClaw/issues/2693)) ([945fdb7](https://github.com/HankHuang0516/EClaw/commit/945fdb7192b791b31882e1e75568dd8b11e4686f))
* **promo:** pull video embed from /promo-chat-avatar.html ([#2724](https://github.com/HankHuang0516/EClaw/issues/2724)) ([2afabc8](https://github.com/HankHuang0516/EClaw/commit/2afabc8c5ff8b25218a7cb857e8adfa572c8e9d5))
* **dashboard:** read live.rate_limits.{five_hour,seven_day}.used_percentage ([#2895](https://github.com/HankHuang0516/EClaw/issues/2895)) ([8223303](https://github.com/HankHuang0516/EClaw/commit/822330312bccb1c76675ad2c3b26e78d10dd1298))
* **kanban:** realign stale recurring schedules ([#2785](https://github.com/HankHuang0516/EClaw/issues/2785)) ([ab8ee25](https://github.com/HankHuang0516/EClaw/commit/ab8ee250a9b37f3d3e838bb01d8866c8d2b78231))
* **portal:** reduce QA-discovered request fanout ([#2656](https://github.com/HankHuang0516/EClaw/issues/2656)) ([1e46d6b](https://github.com/HankHuang0516/EClaw/commit/1e46d6bab61e58c65b452b6503d953f8dddeee75))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **portal:** remove org chart fit scale floor ([#2676](https://github.com/HankHuang0516/EClaw/issues/2676)) ([0f01606](https://github.com/HankHuang0516/EClaw/commit/0f016068b963bb5f800a02f28817c7174979d913))
* **rental:** remove phantom 'webhook test push' step from BIND_COMPLETE ([#2864](https://github.com/HankHuang0516/EClaw/issues/2864)) ([47f4a3e](https://github.com/HankHuang0516/EClaw/commit/47f4a3edf76aa95ebd06d8713cd44fda6eef9b5d))
* **i18n:** rename mm_empty_title → mm_state_empty_title in mindmap.html ([#2683](https://github.com/HankHuang0516/EClaw/issues/2683)) ([c79c109](https://github.com/HankHuang0516/EClaw/commit/c79c109bea23142e8a6d9ace976d105af1280ec9))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **chat:** render mention avatars with companion renderer ([#2633](https://github.com/HankHuang0516/EClaw/issues/2633)) ([03e205f](https://github.com/HankHuang0516/EClaw/commit/03e205f663ecd2c2f443d4009dd5af0093f0bbbb))
* **kanban:** reserve mobile comments panel height ([#2782](https://github.com/HankHuang0516/EClaw/issues/2782)) ([ce8662d](https://github.com/HankHuang0516/EClaw/commit/ce8662d362422fdd25037f1deb61dbed9425e2f9))
* **channel:** restore handshake fallback to discovered sessions ([#2915](https://github.com/HankHuang0516/EClaw/issues/2915)) ([#2917](https://github.com/HankHuang0516/EClaw/issues/2917)) ([9d7d3a2](https://github.com/HankHuang0516/EClaw/commit/9d7d3a25654289998314dd5ca152cefdb8a4d64e)), closes [#2912](https://github.com/HankHuang0516/EClaw/issues/2912)
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* scheduled audit 2026-05-13 — 6 bugs, XSS, i18n ([#2668](https://github.com/HankHuang0516/EClaw/issues/2668)) ([21dd513](https://github.com/HankHuang0516/EClaw/commit/21dd513b4464738de29164265437435ba6cc4817)), closes [#2605](https://github.com/HankHuang0516/EClaw/issues/2605) [#2608](https://github.com/HankHuang0516/EClaw/issues/2608) [#2600](https://github.com/HankHuang0516/EClaw/issues/2600) [#2599](https://github.com/HankHuang0516/EClaw/issues/2599) [#2598](https://github.com/HankHuang0516/EClaw/issues/2598)
* **channel:** scope official bot sessions ([#2912](https://github.com/HankHuang0516/EClaw/issues/2912)) ([5c56b62](https://github.com/HankHuang0516/EClaw/commit/5c56b62c13b739b76f39e168a26bd4e5de2644fb))
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **dashboard:** show Claude weekly bar reset countdown ([#2896](https://github.com/HankHuang0516/EClaw/issues/2896)) ([3b87845](https://github.com/HankHuang0516/EClaw/commit/3b87845d713e980fec69f6b8007549338a326713)), closes [#2895](https://github.com/HankHuang0516/EClaw/issues/2895)
* **chat:** smart-chip preview falls back to inline c.comments when /comments fails (PR [#2677](https://github.com/HankHuang0516/EClaw/issues/2677)) ([7f4dffd](https://github.com/HankHuang0516/EClaw/commit/7f4dffd2c83ea86f296b8fa0610f0e67c9f1af11))
* **kanban:** stabilize comment detail viewport ([#2796](https://github.com/HankHuang0516/EClaw/issues/2796)) ([0a10aad](https://github.com/HankHuang0516/EClaw/commit/0a10aadb5a5b12ff23454c16d5c88183b94ad7d7))
* **wallpaper:** stop Android live wallpaper flashing default lobster on companion change ([#2629](https://github.com/HankHuang0516/EClaw/issues/2629)) ([8b4f66f](https://github.com/HankHuang0516/EClaw/commit/8b4f66fcb335bf43128f924b761b6337c817095b)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **chat:** stop chat.html bouncing to dashboard via /api/rental/health-status 401 race ([#2833](https://github.com/HankHuang0516/EClaw/issues/2833)) ([c422406](https://github.com/HankHuang0516/EClaw/commit/c4224067cdcfe7f3e22ab95007c7563dac4196ac))
* **openclaw-channel:** support OpenClaw 2026.5.20 ([8045de6](https://github.com/HankHuang0516/EClaw/commit/8045de6bebecfc05f9bd57453b99c098ca35681b))
* **mentions:** support same-device CJK display-name tags ([#2874](https://github.com/HankHuang0516/EClaw/issues/2874)) ([b8f61be](https://github.com/HankHuang0516/EClaw/commit/b8f61be9a3962fef75dd32ea34e8900880dafaf9))
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **dashboard:** use sessions[].project for widget Projects list (was .project_id) ([#2894](https://github.com/HankHuang0516/EClaw/issues/2894)) ([0fd1334](https://github.com/HankHuang0516/EClaw/commit/0fd1334897d4a603cc6eb74f34b48606547e09cf))
* **app:** WebView pages honor app-selected locale via ?lang= URL param ([#2672](https://github.com/HankHuang0516/EClaw/issues/2672)) ([8ed8757](https://github.com/HankHuang0516/EClaw/commit/8ed8757aec5bf214e837cc0d81bf2b23f1993a91)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **share-chat:** wire rich CTA actions to msgInput ([#2867](https://github.com/HankHuang0516/EClaw/issues/2867)) ([df23b11](https://github.com/HankHuang0516/EClaw/commit/df23b1147d34c59a644a145bbd87c18b96400acc))


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* **usage-api:** /api/usage/{snapshot,timeline} + usage_snapshots table (Plan B Phase 1) ([#2889](https://github.com/HankHuang0516/EClaw/issues/2889)) ([a0d859c](https://github.com/HankHuang0516/EClaw/commit/a0d859c63f0220909dadb2b1952174861ccdce14))
* **community:** 1-click chat button on bot cards + utm tagging ([#2610](https://github.com/HankHuang0516/EClaw/issues/2610)) ([eee97b0](https://github.com/HankHuang0516/EClaw/commit/eee97b0e2e4e74945ec24f218a69a52800b97a66))
* **chat:** accept ?messageId= as deep-link alias ([#2838](https://github.com/HankHuang0516/EClaw/issues/2838)) ([1785a87](https://github.com/HankHuang0516/EClaw/commit/1785a87310426637fd10df83754fb9924c45207f))
* **chat:** add avatar size preference ([#2714](https://github.com/HankHuang0516/EClaw/issues/2714)) ([6fe164a](https://github.com/HankHuang0516/EClaw/commit/6fe164ad8b22fa576d2dd9ad37c0d9fc295b5a83))
* **dashboard:** add Claude and Codex channel guides ([#2640](https://github.com/HankHuang0516/EClaw/issues/2640)) ([c64e4c4](https://github.com/HankHuang0516/EClaw/commit/c64e4c4afc78db58c5cd578f00486dd7b2fd3311))
* **dashboard:** add Claude Code channel guide card ([#2667](https://github.com/HankHuang0516/EClaw/issues/2667)) ([d70d75c](https://github.com/HankHuang0516/EClaw/commit/d70d75c0c8caa8a540358a9aab4556b8c1927a5c))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* **kanban:** add device-scoped card tags ([#2773](https://github.com/HankHuang0516/EClaw/issues/2773)) ([53a387e](https://github.com/HankHuang0516/EClaw/commit/53a387e67ba7bb4f6bed1c427000c4ae8666577a))
* **portal:** add entity selector to petdx-browser ([#2602](https://github.com/HankHuang0516/EClaw/issues/2602)) ([3fa067e](https://github.com/HankHuang0516/EClaw/commit/3fa067e00b38829b48a37cecd33ee81a9a1122d9))
* **kanban:** add explicit card links ([#2721](https://github.com/HankHuang0516/EClaw/issues/2721)) ([ef9f812](https://github.com/HankHuang0516/EClaw/commit/ef9f812a3fcf39efd07fd158ce90951bdd045ac7))
* **kanban:** add explicit done-card reopen flow ([#2801](https://github.com/HankHuang0516/EClaw/issues/2801)) ([5080aac](https://github.com/HankHuang0516/EClaw/commit/5080aacb75047c0deaa379ee708ec85465afd57c))
* **mindmap:** add GET /api/mindmap/graph force-graph projection ([#2680](https://github.com/HankHuang0516/EClaw/issues/2680)) ([a00b2e7](https://github.com/HankHuang0516/EClaw/commit/a00b2e775af2c4c98cd157f760ad87aeeee469f0)), closes [#2679](https://github.com/HankHuang0516/EClaw/issues/2679) [#2679](https://github.com/HankHuang0516/EClaw/issues/2679)
* **dashboard:** add Hermes channel promo card ([#2708](https://github.com/HankHuang0516/EClaw/issues/2708)) ([337aca1](https://github.com/HankHuang0516/EClaw/commit/337aca153d5a1cd7e888c065f00ae54db7872d91))
* **rental:** add listing soft pause ([#2781](https://github.com/HankHuang0516/EClaw/issues/2781)) ([6586b72](https://github.com/HankHuang0516/EClaw/commit/6586b72717ddb1637d91cd3242c8d2ff554f62b4))
* **portal:** add Nagoya 5D4N trip static cross-ref page ([#2689](https://github.com/HankHuang0516/EClaw/issues/2689)) ([2e0efb6](https://github.com/HankHuang0516/EClaw/commit/2e0efb6dcdaff52226cc8854a96747000b12bdff))
* **portal:** add Nagoya trip map links and image lightbox ([#2821](https://github.com/HankHuang0516/EClaw/issues/2821)) ([3e40955](https://github.com/HankHuang0516/EClaw/commit/3e40955650a05f45a6b9f7e39e73847705424a03))
* **portal/nagoya:** add parking shortcut buttons next to itinerary places ([#2826](https://github.com/HankHuang0516/EClaw/issues/2826)) ([63968c5](https://github.com/HankHuang0516/EClaw/commit/63968c554d046afc8d978de74e3aacbf7700500d))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **settings:** add rental roster management preview ([#2758](https://github.com/HankHuang0516/EClaw/issues/2758)) ([9706e59](https://github.com/HankHuang0516/EClaw/commit/9706e59ded140a90a6e02348124282bc69d89001))
* **rental:** add renter health chat indicator ([#2690](https://github.com/HankHuang0516/EClaw/issues/2690)) ([36cd2e9](https://github.com/HankHuang0516/EClaw/commit/36cd2e9802be4c7ebb03d3024617fa74aca48ffd))
* **ios:** add Tutorial & Intro entry in Settings ([#2800](https://github.com/HankHuang0516/EClaw/issues/2800)) ([ed83e51](https://github.com/HankHuang0516/EClaw/commit/ed83e51d043bf4cd5865f38dc95a91ed54820d6c))
* **landing:** add Watch Full Demo CTA below hero video ([#2799](https://github.com/HankHuang0516/EClaw/issues/2799)) ([66107c9](https://github.com/HankHuang0516/EClaw/commit/66107c954727551fd34d989a4674daaad9b63968))
* **footer:** add Watch Intro Video link in Info column ([#2798](https://github.com/HankHuang0516/EClaw/issues/2798)) ([d7c6d59](https://github.com/HankHuang0516/EClaw/commit/d7c6d596b69c6a5b257bf1f7a792a407ef9712ad))
* **i18n:** ar iter-2 — fill 623 missing keys against en source ([#2847](https://github.com/HankHuang0516/EClaw/issues/2847)) ([ee94a7a](https://github.com/HankHuang0516/EClaw/commit/ee94a7ae6812b5163efe4284ee4907ca32302f5c))
* **kanban:** backlog launch-gate flag to suppress L1/L2/L3 escalation ([#2855](https://github.com/HankHuang0516/EClaw/issues/2855)) ([cb8bf1b](https://github.com/HankHuang0516/EClaw/commit/cb8bf1bb6421f25214f65e129a8cadccc49cc266)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#4](https://github.com/HankHuang0516/EClaw/issues/4) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **companion:** bridge crafter-station/petdex gallery (1784 pets) ([#2601](https://github.com/HankHuang0516/EClaw/issues/2601)) ([2e245be](https://github.com/HankHuang0516/EClaw/commit/2e245bea6dd47ea7361b927d389188a3c23b6bb3))
* **promo:** chat avatar size feature landing page (self-hosted MP4) ([#2722](https://github.com/HankHuang0516/EClaw/issues/2722)) ([3852210](https://github.com/HankHuang0516/EClaw/commit/3852210d355704d018e3daca6b5f9512a011b210)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **kanban:** cron-spawn jitter + lane backpressure to prevent same-tick wedge ([#2791](https://github.com/HankHuang0516/EClaw/issues/2791)) ([9f414a7](https://github.com/HankHuang0516/EClaw/commit/9f414a731d6393672a0a4189c7b408c529ae5e12)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **portal:** dashboard usage widget — Claude/Codex 5h gauges + 24h chart (Plan B Phase 3) ([#2891](https://github.com/HankHuang0516/EClaw/issues/2891)) ([d18f373](https://github.com/HankHuang0516/EClaw/commit/d18f373857e4bd302437d6bda2a1e01871fbb1db))
* **portal:** dashboard usage widget v2 — Session/Weekly % bars + projects, no cost (Plan B Phase 3.1) ([#2893](https://github.com/HankHuang0516/EClaw/issues/2893)) ([4bc0dc7](https://github.com/HankHuang0516/EClaw/commit/4bc0dc744ed9d54dfd532ebac4b705c7f84ec0a6))
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **promo:** embed daily eclaw video 2026-05-14 ([#2786](https://github.com/HankHuang0516/EClaw/issues/2786)) ([718a814](https://github.com/HankHuang0516/EClaw/commit/718a814ab16850bc2b33a1b303841e2c4378ecfa)), closes [#2782](https://github.com/HankHuang0516/EClaw/issues/2782) [#2693](https://github.com/HankHuang0516/EClaw/issues/2693)
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **info:** embed promo video at top of Quick Start tab ([#2797](https://github.com/HankHuang0516/EClaw/issues/2797)) ([047679f](https://github.com/HankHuang0516/EClaw/commit/047679fd57ab9949eaeacea414d5611e71afe041))
* **rental:** enforce strict rebind refunds ([#2703](https://github.com/HankHuang0516/EClaw/issues/2703)) ([a1859c5](https://github.com/HankHuang0516/EClaw/commit/a1859c50e6fb3991d7a8051491502d824a14a116))
* **portal:** group task chip actions ([#2825](https://github.com/HankHuang0516/EClaw/issues/2825)) ([5db5c59](https://github.com/HankHuang0516/EClaw/commit/5db5c59b32b8635f1412205faf0c2f9164d3d5d4))
* **portal:** info-guide-rules + info-guide-soul slide pair ([#2793](https://github.com/HankHuang0516/EClaw/issues/2793)) ([1c8bddc](https://github.com/HankHuang0516/EClaw/commit/1c8bddc4c185054b2b60088498e3d45509117127)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **chat:** link card previews to kanban ([#2754](https://github.com/HankHuang0516/EClaw/issues/2754)) ([2261240](https://github.com/HankHuang0516/EClaw/commit/22612402c2e95efb07246629e81a849be41ee9c7))
* **mission:** link notes to kanban cards ([#2723](https://github.com/HankHuang0516/EClaw/issues/2723)) ([b36dc18](https://github.com/HankHuang0516/EClaw/commit/b36dc18f3a8facf12e0b6046351c222f1e99dc55))
* **usage-daemon:** macOS launchd daemon polls Claude/Codex usage → POST /api/usage/snapshot (Plan B Phase 2) ([#2890](https://github.com/HankHuang0516/EClaw/issues/2890)) ([fd225e1](https://github.com/HankHuang0516/EClaw/commit/fd225e12d9491037be1a340bd63b54b5f3308c7f))
* **mindmap:** mission.html link to /portal/mindmap.html + deprecate /api/mission/mindmap ([#2685](https://github.com/HankHuang0516/EClaw/issues/2685)) ([11e297b](https://github.com/HankHuang0516/EClaw/commit/11e297bab1c9b56fcde3027d6500b7c58891bf18)), closes [#2680](https://github.com/HankHuang0516/EClaw/issues/2680) [#2684](https://github.com/HankHuang0516/EClaw/issues/2684)
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **portal:** nagoya trip interactive map (Leaflet + OSM, no API key) ([#2888](https://github.com/HankHuang0516/EClaw/issues/2888)) ([ecfdac0](https://github.com/HankHuang0516/EClaw/commit/ecfdac06348c12ee7c6872c6c28d5f82162e7aa9))
* **channel:** outbound backpressure (30/min cap + 429 retry-after) ([#2911](https://github.com/HankHuang0516/EClaw/issues/2911)) ([36dc99c](https://github.com/HankHuang0516/EClaw/commit/36dc99ca78b0e1724a2aaefb5936669077b7a28f))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **settings:** per-entity nudge override UI (Phase 2) ([#2837](https://github.com/HankHuang0516/EClaw/issues/2837)) ([ea7662b](https://github.com/HankHuang0516/EClaw/commit/ea7662b0858882dae461e1387f711895924f9ab8)), closes [3/#4](https://github.com/HankHuang0516/EClaw/issues/4)
* **kanban:** per-entity nudge overrides (Phase 2 of card_e066cb6b) ([#2836](https://github.com/HankHuang0516/EClaw/issues/2836)) ([0425f80](https://github.com/HankHuang0516/EClaw/commit/0425f80bc1169c0d506b665659c8676695c45553))
* **avatar:** petdx render on card-holder my-cards (Phase 1b) ([#2621](https://github.com/HankHuang0516/EClaw/issues/2621)) ([f78ba8b](https://github.com/HankHuang0516/EClaw/commit/f78ba8b18acc426936ab6d8a82ca7541effea00d))
* **avatar:** petdx render on dashboard entity grid / org chart / bindings (Phase 1b) ([#2622](https://github.com/HankHuang0516/EClaw/issues/2622)) ([f417749](https://github.com/HankHuang0516/EClaw/commit/f41774914451048e8cd76e9ae30416a0642e173b)), closes [#2620](https://github.com/HankHuang0516/EClaw/issues/2620) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621)
* **avatar:** petdx render on kanban auto-assign / pulse / comment avatars (Phase 1b) ([#2624](https://github.com/HankHuang0516/EClaw/issues/2624)) ([6bff5f8](https://github.com/HankHuang0516/EClaw/commit/6bff5f80440d0bd91a6b1721cde9478d685c4d46))
* **avatar:** petdx render on mission skill/rule/soul entity dialogs (Phase 1b) ([#2623](https://github.com/HankHuang0516/EClaw/issues/2623)) ([129327b](https://github.com/HankHuang0516/EClaw/commit/129327bc7b91056659f1ab7e8d5e3f5260d951fb))
* **mindmap:** portal/mindmap.html force-graph prototype ([#129](https://github.com/HankHuang0516/EClaw/issues/129)) ([#2681](https://github.com/HankHuang0516/EClaw/issues/2681)) ([0f15e69](https://github.com/HankHuang0516/EClaw/commit/0f15e6930f0697c37fa08f3219edb8f9e499837f)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **channel:** record delivery receipts ([#2913](https://github.com/HankHuang0516/EClaw/issues/2913)) ([90c671b](https://github.com/HankHuang0516/EClaw/commit/90c671bd1970ab51584b90e2b634484ec10cc7ae))
* **portal:** redo nagoya trip page in professional tour-guide style ([#2691](https://github.com/HankHuang0516/EClaw/issues/2691)) ([b2378c0](https://github.com/HankHuang0516/EClaw/commit/b2378c06ee20fa9cccfdceceb1a4c9e0b3072f59))
* **i18n:** remove ms+hi orphan keys from i18n.js ([#2849](https://github.com/HankHuang0516/EClaw/issues/2849)) ([320176c](https://github.com/HankHuang0516/EClaw/commit/320176c06a3cfd8631e2a82ad02a6bd6a9af0389))
* **avatar:** render selected petdx companion in chat avatars ([#2620](https://github.com/HankHuang0516/EClaw/issues/2620)) ([0bdd046](https://github.com/HankHuang0516/EClaw/commit/0bdd046fe1b1c428e32edda366ff112c08927f4c))
* **home:** replace native home with WebView hosting dashboard.html ([#2634](https://github.com/HankHuang0516/EClaw/issues/2634)) ([e69ea81](https://github.com/HankHuang0516/EClaw/commit/e69ea8160c239b083a83d6dc83a4f1c3f901c863))
* **app:** route chat mission jumps through native tabs ([#2824](https://github.com/HankHuang0516/EClaw/issues/2824)) ([deb07b6](https://github.com/HankHuang0516/EClaw/commit/deb07b69a9ecca632fe27278de537f1d85234e94))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **chat:** support message deep links ([#2719](https://github.com/HankHuang0516/EClaw/issues/2719)) ([2dc0f1e](https://github.com/HankHuang0516/EClaw/commit/2dc0f1eeb259e1a0848db4a03186b989372cd91c))
* **mission:** support note deep links ([#2717](https://github.com/HankHuang0516/EClaw/issues/2717)) ([2efd3a5](https://github.com/HankHuang0516/EClaw/commit/2efd3a5e741217a07c0b0ac54a0ddd010e0ebe23))
* **share-chat:** twitter card + per-bot og:image/twitter:* in SSR ([#2609](https://github.com/HankHuang0516/EClaw/issues/2609)) ([6cdc853](https://github.com/HankHuang0516/EClaw/commit/6cdc853dc884cdb95bd47214942768981f218ae0))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))
* **settings:** wire petdx avatar into channel-account chips ([#2626](https://github.com/HankHuang0516/EClaw/issues/2626)) ([88aec77](https://github.com/HankHuang0516/EClaw/commit/88aec772628c240e97b336bb5820892ad632d1ae))
* **files:** wire petdx avatar into entity filter & per-file badges ([#2627](https://github.com/HankHuang0516/EClaw/issues/2627)) ([5b3e5cc](https://github.com/HankHuang0516/EClaw/commit/5b3e5cc542d9da69bb4e92500fd03a542ea33f00))
* **mindmap:** wrap hardcoded zh-TW UI strings with i18n t() ([#2607](https://github.com/HankHuang0516/EClaw/issues/2607)) ([166af87](https://github.com/HankHuang0516/EClaw/commit/166af8772b2121a24aaf34a83b3de970e9b3b571)), closes [#2606](https://github.com/HankHuang0516/EClaw/issues/2606)
* **i18n:** zh-TW backfill 8 keys (soft-pause + chat + invite + wallet) ([#2815](https://github.com/HankHuang0516/EClaw/issues/2815)) ([a2dd574](https://github.com/HankHuang0516/EClaw/commit/a2dd5743ce8d43a4b6ace9a2fd4b52568180d6c5))


### Performance Improvements

* **mindmap:** force-graph hardening for 1000/2000-node graphs ([#2684](https://github.com/HankHuang0516/EClaw/issues/2684)) ([da8b1c8](https://github.com/HankHuang0516/EClaw/commit/da8b1c8f947ab8bc8fa455c1962a91146623a1fc))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-25)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **notifications:** add kanban_done + kanban_done_auto toggles to Android Settings ([#2636](https://github.com/HankHuang0516/EClaw/issues/2636)) ([a710909](https://github.com/HankHuang0516/EClaw/commit/a7109095e3393b8564e7ef1b23d382a4fbb944b8))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **api:** align /api/platform-stats skill-doc with device-auth contract (card_49b8190) ([#2916](https://github.com/HankHuang0516/EClaw/issues/2916)) ([ee55b2f](https://github.com/HankHuang0516/EClaw/commit/ee55b2fdbfbcd4bead5501d16ee66339056c32d7))
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **i18n:** ar block — fix 27 broken entries (CJK leaks + truncated HTML) ([#2851](https://github.com/HankHuang0516/EClaw/issues/2851)) ([5b19175](https://github.com/HankHuang0516/EClaw/commit/5b19175d712d00d16fcec00b749035c4beae7a5c))
* **chat:** atomic-load target bar (await contacts before first render) ([#2831](https://github.com/HankHuang0516/EClaw/issues/2831)) ([5f529e6](https://github.com/HankHuang0516/EClaw/commit/5f529e6b772eacc38ba1de69b44258a05f0d816a)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2](https://github.com/HankHuang0516/EClaw/issues/2)
* **channel:** await binding persistence ([712516d](https://github.com/HankHuang0516/EClaw/commit/712516decafb745035bd1434a28cc1973d433e19))
* **rental:** bump handshake timeout to 60s + timeout-aware discovery fallback ([#2863](https://github.com/HankHuang0516/EClaw/issues/2863)) ([fd4322f](https://github.com/HankHuang0516/EClaw/commit/fd4322f8890f3c2dfca3acdae6a4b95f19c381f9)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **i18n:** clear batch 1 residual missing keys ([#2790](https://github.com/HankHuang0516/EClaw/issues/2790)) ([211030e](https://github.com/HankHuang0516/EClaw/commit/211030e0b0b6a865c11f0c4ed60dc4e356d43b7a))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **kanban:** comment input no longer overlaps last comment in card detail (PR [#2678](https://github.com/HankHuang0516/EClaw/issues/2678)) ([fba91fc](https://github.com/HankHuang0516/EClaw/commit/fba91fca15402b453a0db5ee857c0b16e6087055))
* **chat:** compact 20px avatar in target bar (App WebView only shows [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2](https://github.com/HankHuang0516/EClaw/issues/2)) ([#2830](https://github.com/HankHuang0516/EClaw/issues/2830)) ([42c7543](https://github.com/HankHuang0516/EClaw/commit/42c7543b4a78a7abf3f5f7535eb9bc6142cd0fe2)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **portal:** complete 401 redirect sweep + mobile UIUX truncation ([#2842](https://github.com/HankHuang0516/EClaw/issues/2842)) ([f9799ba](https://github.com/HankHuang0516/EClaw/commit/f9799ba42498b109f0a8a70e80836aa6da51e216)), closes [#2833](https://github.com/HankHuang0516/EClaw/issues/2833) [#2845](https://github.com/HankHuang0516/EClaw/issues/2845) [#2844](https://github.com/HankHuang0516/EClaw/issues/2844) [#2843](https://github.com/HankHuang0516/EClaw/issues/2843)
* **uiux:** continue qa mobile readability sweep ([#2854](https://github.com/HankHuang0516/EClaw/issues/2854)) ([57606ff](https://github.com/HankHuang0516/EClaw/commit/57606ffe3e543b07a026aacc53c4b470c9a7825b))
* **i18n:** cover dynamic portal wrapper keys ([#2807](https://github.com/HankHuang0516/EClaw/issues/2807)) ([4c711cc](https://github.com/HankHuang0516/EClaw/commit/4c711cc4009300ffe4e8933a98ee01cd0fdd6aeb))
* **i18n:** dedup 20 dash_channel_card_* keys in es block ([#2876](https://github.com/HankHuang0516/EClaw/issues/2876)) ([807284c](https://github.com/HankHuang0516/EClaw/commit/807284ce363ef119ccdb0ae40e5ce99d3f0a27e0))
* **i18n:** dedupe zh locale keys ([#2919](https://github.com/HankHuang0516/EClaw/issues/2919)) ([afd2cca](https://github.com/HankHuang0516/EClaw/commit/afd2cca8086c2f2df0d04c9c5f8c58733652875e))
* **kanban:** dep-aware nudge gating + roadmap dependency backfill ([#2904](https://github.com/HankHuang0516/EClaw/issues/2904)) ([2b76ac9](https://github.com/HankHuang0516/EClaw/commit/2b76ac9d3b7e4169b7bc3c6f6b0b0903b63cd9f7)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **rental:** don't pollute entity.message on push gateway timeout ([#2860](https://github.com/HankHuang0516/EClaw/issues/2860)) ([592ba44](https://github.com/HankHuang0516/EClaw/commit/592ba44f57536ee00011b6cbddaa6b129a7cbae9))
* **petdx:** drop dark-grey loading placeholder + preload sprite WEBP ([#2628](https://github.com/HankHuang0516/EClaw/issues/2628)) ([59cef38](https://github.com/HankHuang0516/EClaw/commit/59cef387bd69ca99d7d15c86a1364856d3849ad8)), closes [#1a1a1a](https://github.com/HankHuang0516/EClaw/issues/1a1a1a)
* **gateway-ws:** drop Origin header on server-to-server WS upgrade ([#2869](https://github.com/HankHuang0516/EClaw/issues/2869)) ([716dcf9](https://github.com/HankHuang0516/EClaw/commit/716dcf9d0834b17522bb9d894bad84bc142d1a19))
* **setup-scripts:** drop Origin header on server-to-server WS upgrade ([#2875](https://github.com/HankHuang0516/EClaw/issues/2875)) ([9d893b8](https://github.com/HankHuang0516/EClaw/commit/9d893b8e5eea4db275e450bf423903c156cd3e4b)), closes [#2869](https://github.com/HankHuang0516/EClaw/issues/2869)
* **security:** escape innerHTML in chat modal error messages ([#2819](https://github.com/HankHuang0516/EClaw/issues/2819)) ([dce07ad](https://github.com/HankHuang0516/EClaw/commit/dce07adde64795916dba977ae23e46f3371ce7ed)), closes [#2809](https://github.com/HankHuang0516/EClaw/issues/2809) [#2810](https://github.com/HankHuang0516/EClaw/issues/2810) [#2809](https://github.com/HankHuang0516/EClaw/issues/2809) [#2810](https://github.com/HankHuang0516/EClaw/issues/2810)
* **entities:** expose botSecret to owner so wallpaper service can poll companions ([#2615](https://github.com/HankHuang0516/EClaw/issues/2615)) ([04470fc](https://github.com/HankHuang0516/EClaw/commit/04470fce8f8c3fce2b1ba8b243e776606f107502))
* **rental:** expose owner_public_code in marketplace so plaza CTA can route ([#2616](https://github.com/HankHuang0516/EClaw/issues/2616)) ([4d1372f](https://github.com/HankHuang0516/EClaw/commit/4d1372f717d93cab65543e87c852e74e9fb67071)), closes [#2610](https://github.com/HankHuang0516/EClaw/issues/2610)
* **mindmap:** fallback to device scope when entityId is null ([#2728](https://github.com/HankHuang0516/EClaw/issues/2728)) ([7572312](https://github.com/HankHuang0516/EClaw/commit/7572312433d3d75fc245eda48a28919ce14bd927))
* **i18n:** fill backend runtime locale gaps ([#2921](https://github.com/HankHuang0516/EClaw/issues/2921)) ([00d96ff](https://github.com/HankHuang0516/EClaw/commit/00d96ff261b8134b49292623e1f786fd544144cc))
* **i18n:** fill Spanish drift keys ([#2751](https://github.com/HankHuang0516/EClaw/issues/2751)) ([0ad0ee5](https://github.com/HankHuang0516/EClaw/commit/0ad0ee55f7fac3e6ac46d891539950dab4d553cc))
* **portal:** fit embedded org chart to mobile viewport ([#2674](https://github.com/HankHuang0516/EClaw/issues/2674)) ([1c4e1b4](https://github.com/HankHuang0516/EClaw/commit/1c4e1b413ea7027b4cd4b8ecda981b0d0e12e66b))
* **i18n:** fix 6 trailing-comma syntax errors in 10-locale batch ([#2771](https://github.com/HankHuang0516/EClaw/issues/2771)) ([b27c6ca](https://github.com/HankHuang0516/EClaw/commit/b27c6ca204bf813e406c54ce3a2532a5f1f031b3))
* **kanban:** GET card returns latest 50 comments + comments endpoint exposes total ([#2816](https://github.com/HankHuang0516/EClaw/issues/2816)) ([c4d83f7](https://github.com/HankHuang0516/EClaw/commit/c4d83f777a1cd26aea0936e4316aa35c52822eef))
* **sharechat:** guest verify-email modal + disabled Send for unverified ([#2865](https://github.com/HankHuang0516/EClaw/issues/2865)) ([cb3b061](https://github.com/HankHuang0516/EClaw/commit/cb3b0614e0f6160417d907753e66eceb2d666802))
* **uiux:** harden chat previews and roster preview ([#2769](https://github.com/HankHuang0516/EClaw/issues/2769)) ([466d4d3](https://github.com/HankHuang0516/EClaw/commit/466d4d3ef81c628d3f58db64323946053d7bf61c))
* **mention-parser:** ignore @-mentions inside markdown code spans ([#2645](https://github.com/HankHuang0516/EClaw/issues/2645)) ([8da19d4](https://github.com/HankHuang0516/EClaw/commit/8da19d4a79ceb4152bf2144ee0847c61ce3e1def)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **kanban:** lazy-load dependency chips via IntersectionObserver ([#2632](https://github.com/HankHuang0516/EClaw/issues/2632)) ([20586b4](https://github.com/HankHuang0516/EClaw/commit/20586b43357335f9eb6a190c02d58c8e36b58aba)), closes [#2631](https://github.com/HankHuang0516/EClaw/issues/2631)
* **i18n:** localize FCM NotificationChannel labels (card_ec8d3a22) ([#2918](https://github.com/HankHuang0516/EClaw/issues/2918)) ([591cd20](https://github.com/HankHuang0516/EClaw/commit/591cd206704693650a53d19d94c4cc75daf84ffd))
* **kanban:** make card sorting deterministic ([#2756](https://github.com/HankHuang0516/EClaw/issues/2756)) ([48e2117](https://github.com/HankHuang0516/EClaw/commit/48e2117b64e37f05dc635e0a3b67bfd43cbe48f5))
* **portal/nagoya-trip:** map-link invisible on dark hero/day-banner ([#2897](https://github.com/HankHuang0516/EClaw/issues/2897)) ([cc33df6](https://github.com/HankHuang0516/EClaw/commit/cc33df686673455c20beaee60871412a5d486e66)), closes [#1f4030](https://github.com/HankHuang0516/EClaw/issues/1f4030) [#8b8579](https://github.com/HankHuang0516/EClaw/issues/8b8579) [#6e6859](https://github.com/HankHuang0516/EClaw/issues/6e6859) [#7a5614](https://github.com/HankHuang0516/EClaw/issues/7a5614)
* **org-chart:** notify affected bots on hierarchy change ([#2812](https://github.com/HankHuang0516/EClaw/issues/2812)) ([55675fd](https://github.com/HankHuang0516/EClaw/commit/55675fdf4487494d729a29524b32bd81b756a00c)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** notify reviewer on manual /move → review ([#2753](https://github.com/HankHuang0516/EClaw/issues/2753)) ([6cbbb4e](https://github.com/HankHuang0516/EClaw/commit/6cbbb4ee8c0d4d8ad54df2e9b5faaa3699bd530f))
* **wallpaper:** off-load spritesheet fetch to IO so per-petdx sprites actually render ([#2618](https://github.com/HankHuang0516/EClaw/issues/2618)) ([61b832c](https://github.com/HankHuang0516/EClaw/commit/61b832c9fa8a1d0caab810ccc942d85c63349267)), closes [#2615](https://github.com/HankHuang0516/EClaw/issues/2615) [#2577](https://github.com/HankHuang0516/EClaw/issues/2577)
* **security:** patch P0 sanitize-html XSS + P1 protobufjs + exam.html XSS ([#2829](https://github.com/HankHuang0516/EClaw/issues/2829)) ([c71b871](https://github.com/HankHuang0516/EClaw/commit/c71b871a045887375dd0d26d1a3280a0891a89ad))
* **security:** patch ws uninitialized memory disclosure (GHSA-58qx-3vcg-4xpx) ([#2872](https://github.com/HankHuang0516/EClaw/issues/2872)) ([2523d15](https://github.com/HankHuang0516/EClaw/commit/2523d154bbe501a7cc086340f7a07ece3abfa69b))
* **portal:** petdx-browser cookie-session fallback for device-login ([#2757](https://github.com/HankHuang0516/EClaw/issues/2757)) ([ca275f4](https://github.com/HankHuang0516/EClaw/commit/ca275f4519835da0c7ad71c588908a18f6f138d8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **api:** platform-stats 500 + entity/lookup publicCode alias ([#2809](https://github.com/HankHuang0516/EClaw/issues/2809), [#2810](https://github.com/HankHuang0516/EClaw/issues/2810)) ([#2818](https://github.com/HankHuang0516/EClaw/issues/2818)) ([f99fd17](https://github.com/HankHuang0516/EClaw/commit/f99fd17b2b1c32d88daa2510ff66d714c1a53edc))
* **i18n:** positional format specifiers for feedback_result_logs (7 locales) ([#2597](https://github.com/HankHuang0516/EClaw/issues/2597)) ([21aedc7](https://github.com/HankHuang0516/EClaw/commit/21aedc7eebc7a2839e340136f38dfdfd4dabb9dc))
* **avatar-petdx:** preserve descriptor across transient API failures (flicker) ([#2625](https://github.com/HankHuang0516/EClaw/issues/2625)) ([7b1c606](https://github.com/HankHuang0516/EClaw/commit/7b1c606514f7698d72ec95cf6c556e4043966186))
* **chat:** preserve recipient selection across rental-health refresh (P0 #card_eb1cba76) ([#2906](https://github.com/HankHuang0516/EClaw/issues/2906)) ([9cc0301](https://github.com/HankHuang0516/EClaw/commit/9cc0301cc26a0f49af4b7f53486f5c1a7cdd7902)), closes [#card_eb1cba76](https://github.com/HankHuang0516/EClaw/issues/card_eb1cba76) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **chat:** preserve scroll anchor while reading history ([#2693](https://github.com/HankHuang0516/EClaw/issues/2693)) ([945fdb7](https://github.com/HankHuang0516/EClaw/commit/945fdb7192b791b31882e1e75568dd8b11e4686f))
* **promo:** pull video embed from /promo-chat-avatar.html ([#2724](https://github.com/HankHuang0516/EClaw/issues/2724)) ([2afabc8](https://github.com/HankHuang0516/EClaw/commit/2afabc8c5ff8b25218a7cb857e8adfa572c8e9d5))
* **dashboard:** read live.rate_limits.{five_hour,seven_day}.used_percentage ([#2895](https://github.com/HankHuang0516/EClaw/issues/2895)) ([8223303](https://github.com/HankHuang0516/EClaw/commit/822330312bccb1c76675ad2c3b26e78d10dd1298))
* **kanban:** realign stale recurring schedules ([#2785](https://github.com/HankHuang0516/EClaw/issues/2785)) ([ab8ee25](https://github.com/HankHuang0516/EClaw/commit/ab8ee250a9b37f3d3e838bb01d8866c8d2b78231))
* **portal:** reduce QA-discovered request fanout ([#2656](https://github.com/HankHuang0516/EClaw/issues/2656)) ([1e46d6b](https://github.com/HankHuang0516/EClaw/commit/1e46d6bab61e58c65b452b6503d953f8dddeee75))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **portal:** remove org chart fit scale floor ([#2676](https://github.com/HankHuang0516/EClaw/issues/2676)) ([0f01606](https://github.com/HankHuang0516/EClaw/commit/0f016068b963bb5f800a02f28817c7174979d913))
* **rental:** remove phantom 'webhook test push' step from BIND_COMPLETE ([#2864](https://github.com/HankHuang0516/EClaw/issues/2864)) ([47f4a3e](https://github.com/HankHuang0516/EClaw/commit/47f4a3edf76aa95ebd06d8713cd44fda6eef9b5d))
* **i18n:** rename mm_empty_title → mm_state_empty_title in mindmap.html ([#2683](https://github.com/HankHuang0516/EClaw/issues/2683)) ([c79c109](https://github.com/HankHuang0516/EClaw/commit/c79c109bea23142e8a6d9ace976d105af1280ec9))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **chat:** render mention avatars with companion renderer ([#2633](https://github.com/HankHuang0516/EClaw/issues/2633)) ([03e205f](https://github.com/HankHuang0516/EClaw/commit/03e205f663ecd2c2f443d4009dd5af0093f0bbbb))
* **kanban:** reserve mobile comments panel height ([#2782](https://github.com/HankHuang0516/EClaw/issues/2782)) ([ce8662d](https://github.com/HankHuang0516/EClaw/commit/ce8662d362422fdd25037f1deb61dbed9425e2f9))
* **channel:** restore handshake fallback to discovered sessions ([#2915](https://github.com/HankHuang0516/EClaw/issues/2915)) ([#2917](https://github.com/HankHuang0516/EClaw/issues/2917)) ([9d7d3a2](https://github.com/HankHuang0516/EClaw/commit/9d7d3a25654289998314dd5ca152cefdb8a4d64e)), closes [#2912](https://github.com/HankHuang0516/EClaw/issues/2912)
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* scheduled audit 2026-05-13 — 6 bugs, XSS, i18n ([#2668](https://github.com/HankHuang0516/EClaw/issues/2668)) ([21dd513](https://github.com/HankHuang0516/EClaw/commit/21dd513b4464738de29164265437435ba6cc4817)), closes [#2605](https://github.com/HankHuang0516/EClaw/issues/2605) [#2608](https://github.com/HankHuang0516/EClaw/issues/2608) [#2600](https://github.com/HankHuang0516/EClaw/issues/2600) [#2599](https://github.com/HankHuang0516/EClaw/issues/2599) [#2598](https://github.com/HankHuang0516/EClaw/issues/2598)
* **channel:** scope official bot sessions ([#2912](https://github.com/HankHuang0516/EClaw/issues/2912)) ([5c56b62](https://github.com/HankHuang0516/EClaw/commit/5c56b62c13b739b76f39e168a26bd4e5de2644fb))
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **dashboard:** show Claude weekly bar reset countdown ([#2896](https://github.com/HankHuang0516/EClaw/issues/2896)) ([3b87845](https://github.com/HankHuang0516/EClaw/commit/3b87845d713e980fec69f6b8007549338a326713)), closes [#2895](https://github.com/HankHuang0516/EClaw/issues/2895)
* **chat:** smart-chip preview falls back to inline c.comments when /comments fails (PR [#2677](https://github.com/HankHuang0516/EClaw/issues/2677)) ([7f4dffd](https://github.com/HankHuang0516/EClaw/commit/7f4dffd2c83ea86f296b8fa0610f0e67c9f1af11))
* **kanban:** stabilize comment detail viewport ([#2796](https://github.com/HankHuang0516/EClaw/issues/2796)) ([0a10aad](https://github.com/HankHuang0516/EClaw/commit/0a10aadb5a5b12ff23454c16d5c88183b94ad7d7))
* **wallpaper:** stop Android live wallpaper flashing default lobster on companion change ([#2629](https://github.com/HankHuang0516/EClaw/issues/2629)) ([8b4f66f](https://github.com/HankHuang0516/EClaw/commit/8b4f66fcb335bf43128f924b761b6337c817095b)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **chat:** stop chat.html bouncing to dashboard via /api/rental/health-status 401 race ([#2833](https://github.com/HankHuang0516/EClaw/issues/2833)) ([c422406](https://github.com/HankHuang0516/EClaw/commit/c4224067cdcfe7f3e22ab95007c7563dac4196ac))
* **openclaw-channel:** support OpenClaw 2026.5.20 ([8045de6](https://github.com/HankHuang0516/EClaw/commit/8045de6bebecfc05f9bd57453b99c098ca35681b))
* **mentions:** support same-device CJK display-name tags ([#2874](https://github.com/HankHuang0516/EClaw/issues/2874)) ([b8f61be](https://github.com/HankHuang0516/EClaw/commit/b8f61be9a3962fef75dd32ea34e8900880dafaf9))
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **dashboard:** use sessions[].project for widget Projects list (was .project_id) ([#2894](https://github.com/HankHuang0516/EClaw/issues/2894)) ([0fd1334](https://github.com/HankHuang0516/EClaw/commit/0fd1334897d4a603cc6eb74f34b48606547e09cf))
* **app:** WebView pages honor app-selected locale via ?lang= URL param ([#2672](https://github.com/HankHuang0516/EClaw/issues/2672)) ([8ed8757](https://github.com/HankHuang0516/EClaw/commit/8ed8757aec5bf214e837cc0d81bf2b23f1993a91)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **share-chat:** wire rich CTA actions to msgInput ([#2867](https://github.com/HankHuang0516/EClaw/issues/2867)) ([df23b11](https://github.com/HankHuang0516/EClaw/commit/df23b1147d34c59a644a145bbd87c18b96400acc))


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* **usage-api:** /api/usage/{snapshot,timeline} + usage_snapshots table (Plan B Phase 1) ([#2889](https://github.com/HankHuang0516/EClaw/issues/2889)) ([a0d859c](https://github.com/HankHuang0516/EClaw/commit/a0d859c63f0220909dadb2b1952174861ccdce14))
* **community:** 1-click chat button on bot cards + utm tagging ([#2610](https://github.com/HankHuang0516/EClaw/issues/2610)) ([eee97b0](https://github.com/HankHuang0516/EClaw/commit/eee97b0e2e4e74945ec24f218a69a52800b97a66))
* **chat:** accept ?messageId= as deep-link alias ([#2838](https://github.com/HankHuang0516/EClaw/issues/2838)) ([1785a87](https://github.com/HankHuang0516/EClaw/commit/1785a87310426637fd10df83754fb9924c45207f))
* **chat:** add avatar size preference ([#2714](https://github.com/HankHuang0516/EClaw/issues/2714)) ([6fe164a](https://github.com/HankHuang0516/EClaw/commit/6fe164ad8b22fa576d2dd9ad37c0d9fc295b5a83))
* **dashboard:** add Claude and Codex channel guides ([#2640](https://github.com/HankHuang0516/EClaw/issues/2640)) ([c64e4c4](https://github.com/HankHuang0516/EClaw/commit/c64e4c4afc78db58c5cd578f00486dd7b2fd3311))
* **dashboard:** add Claude Code channel guide card ([#2667](https://github.com/HankHuang0516/EClaw/issues/2667)) ([d70d75c](https://github.com/HankHuang0516/EClaw/commit/d70d75c0c8caa8a540358a9aab4556b8c1927a5c))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* **kanban:** add device-scoped card tags ([#2773](https://github.com/HankHuang0516/EClaw/issues/2773)) ([53a387e](https://github.com/HankHuang0516/EClaw/commit/53a387e67ba7bb4f6bed1c427000c4ae8666577a))
* **portal:** add entity selector to petdx-browser ([#2602](https://github.com/HankHuang0516/EClaw/issues/2602)) ([3fa067e](https://github.com/HankHuang0516/EClaw/commit/3fa067e00b38829b48a37cecd33ee81a9a1122d9))
* **kanban:** add explicit card links ([#2721](https://github.com/HankHuang0516/EClaw/issues/2721)) ([ef9f812](https://github.com/HankHuang0516/EClaw/commit/ef9f812a3fcf39efd07fd158ce90951bdd045ac7))
* **kanban:** add explicit done-card reopen flow ([#2801](https://github.com/HankHuang0516/EClaw/issues/2801)) ([5080aac](https://github.com/HankHuang0516/EClaw/commit/5080aacb75047c0deaa379ee708ec85465afd57c))
* **mindmap:** add GET /api/mindmap/graph force-graph projection ([#2680](https://github.com/HankHuang0516/EClaw/issues/2680)) ([a00b2e7](https://github.com/HankHuang0516/EClaw/commit/a00b2e775af2c4c98cd157f760ad87aeeee469f0)), closes [#2679](https://github.com/HankHuang0516/EClaw/issues/2679) [#2679](https://github.com/HankHuang0516/EClaw/issues/2679)
* **dashboard:** add Hermes channel promo card ([#2708](https://github.com/HankHuang0516/EClaw/issues/2708)) ([337aca1](https://github.com/HankHuang0516/EClaw/commit/337aca153d5a1cd7e888c065f00ae54db7872d91))
* **rental:** add listing soft pause ([#2781](https://github.com/HankHuang0516/EClaw/issues/2781)) ([6586b72](https://github.com/HankHuang0516/EClaw/commit/6586b72717ddb1637d91cd3242c8d2ff554f62b4))
* **portal:** add Nagoya 5D4N trip static cross-ref page ([#2689](https://github.com/HankHuang0516/EClaw/issues/2689)) ([2e0efb6](https://github.com/HankHuang0516/EClaw/commit/2e0efb6dcdaff52226cc8854a96747000b12bdff))
* **portal:** add Nagoya trip map links and image lightbox ([#2821](https://github.com/HankHuang0516/EClaw/issues/2821)) ([3e40955](https://github.com/HankHuang0516/EClaw/commit/3e40955650a05f45a6b9f7e39e73847705424a03))
* **portal/nagoya:** add parking shortcut buttons next to itinerary places ([#2826](https://github.com/HankHuang0516/EClaw/issues/2826)) ([63968c5](https://github.com/HankHuang0516/EClaw/commit/63968c554d046afc8d978de74e3aacbf7700500d))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **settings:** add rental roster management preview ([#2758](https://github.com/HankHuang0516/EClaw/issues/2758)) ([9706e59](https://github.com/HankHuang0516/EClaw/commit/9706e59ded140a90a6e02348124282bc69d89001))
* **rental:** add renter health chat indicator ([#2690](https://github.com/HankHuang0516/EClaw/issues/2690)) ([36cd2e9](https://github.com/HankHuang0516/EClaw/commit/36cd2e9802be4c7ebb03d3024617fa74aca48ffd))
* **ios:** add Tutorial & Intro entry in Settings ([#2800](https://github.com/HankHuang0516/EClaw/issues/2800)) ([ed83e51](https://github.com/HankHuang0516/EClaw/commit/ed83e51d043bf4cd5865f38dc95a91ed54820d6c))
* **landing:** add Watch Full Demo CTA below hero video ([#2799](https://github.com/HankHuang0516/EClaw/issues/2799)) ([66107c9](https://github.com/HankHuang0516/EClaw/commit/66107c954727551fd34d989a4674daaad9b63968))
* **footer:** add Watch Intro Video link in Info column ([#2798](https://github.com/HankHuang0516/EClaw/issues/2798)) ([d7c6d59](https://github.com/HankHuang0516/EClaw/commit/d7c6d596b69c6a5b257bf1f7a792a407ef9712ad))
* **i18n:** ar iter-2 — fill 623 missing keys against en source ([#2847](https://github.com/HankHuang0516/EClaw/issues/2847)) ([ee94a7a](https://github.com/HankHuang0516/EClaw/commit/ee94a7ae6812b5163efe4284ee4907ca32302f5c))
* **kanban:** backlog launch-gate flag to suppress L1/L2/L3 escalation ([#2855](https://github.com/HankHuang0516/EClaw/issues/2855)) ([cb8bf1b](https://github.com/HankHuang0516/EClaw/commit/cb8bf1bb6421f25214f65e129a8cadccc49cc266)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#4](https://github.com/HankHuang0516/EClaw/issues/4) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **companion:** bridge crafter-station/petdex gallery (1784 pets) ([#2601](https://github.com/HankHuang0516/EClaw/issues/2601)) ([2e245be](https://github.com/HankHuang0516/EClaw/commit/2e245bea6dd47ea7361b927d389188a3c23b6bb3))
* **promo:** chat avatar size feature landing page (self-hosted MP4) ([#2722](https://github.com/HankHuang0516/EClaw/issues/2722)) ([3852210](https://github.com/HankHuang0516/EClaw/commit/3852210d355704d018e3daca6b5f9512a011b210)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **kanban:** cron-spawn jitter + lane backpressure to prevent same-tick wedge ([#2791](https://github.com/HankHuang0516/EClaw/issues/2791)) ([9f414a7](https://github.com/HankHuang0516/EClaw/commit/9f414a731d6393672a0a4189c7b408c529ae5e12)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **portal:** dashboard usage widget — Claude/Codex 5h gauges + 24h chart (Plan B Phase 3) ([#2891](https://github.com/HankHuang0516/EClaw/issues/2891)) ([d18f373](https://github.com/HankHuang0516/EClaw/commit/d18f373857e4bd302437d6bda2a1e01871fbb1db))
* **portal:** dashboard usage widget v2 — Session/Weekly % bars + projects, no cost (Plan B Phase 3.1) ([#2893](https://github.com/HankHuang0516/EClaw/issues/2893)) ([4bc0dc7](https://github.com/HankHuang0516/EClaw/commit/4bc0dc744ed9d54dfd532ebac4b705c7f84ec0a6))
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **promo:** embed daily eclaw video 2026-05-14 ([#2786](https://github.com/HankHuang0516/EClaw/issues/2786)) ([718a814](https://github.com/HankHuang0516/EClaw/commit/718a814ab16850bc2b33a1b303841e2c4378ecfa)), closes [#2782](https://github.com/HankHuang0516/EClaw/issues/2782) [#2693](https://github.com/HankHuang0516/EClaw/issues/2693)
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **info:** embed promo video at top of Quick Start tab ([#2797](https://github.com/HankHuang0516/EClaw/issues/2797)) ([047679f](https://github.com/HankHuang0516/EClaw/commit/047679fd57ab9949eaeacea414d5611e71afe041))
* **rental:** enforce strict rebind refunds ([#2703](https://github.com/HankHuang0516/EClaw/issues/2703)) ([a1859c5](https://github.com/HankHuang0516/EClaw/commit/a1859c50e6fb3991d7a8051491502d824a14a116))
* **portal:** group task chip actions ([#2825](https://github.com/HankHuang0516/EClaw/issues/2825)) ([5db5c59](https://github.com/HankHuang0516/EClaw/commit/5db5c59b32b8635f1412205faf0c2f9164d3d5d4))
* **portal:** info-guide-rules + info-guide-soul slide pair ([#2793](https://github.com/HankHuang0516/EClaw/issues/2793)) ([1c8bddc](https://github.com/HankHuang0516/EClaw/commit/1c8bddc4c185054b2b60088498e3d45509117127)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **chat:** link card previews to kanban ([#2754](https://github.com/HankHuang0516/EClaw/issues/2754)) ([2261240](https://github.com/HankHuang0516/EClaw/commit/22612402c2e95efb07246629e81a849be41ee9c7))
* **mission:** link notes to kanban cards ([#2723](https://github.com/HankHuang0516/EClaw/issues/2723)) ([b36dc18](https://github.com/HankHuang0516/EClaw/commit/b36dc18f3a8facf12e0b6046351c222f1e99dc55))
* **usage-daemon:** macOS launchd daemon polls Claude/Codex usage → POST /api/usage/snapshot (Plan B Phase 2) ([#2890](https://github.com/HankHuang0516/EClaw/issues/2890)) ([fd225e1](https://github.com/HankHuang0516/EClaw/commit/fd225e12d9491037be1a340bd63b54b5f3308c7f))
* **mindmap:** mission.html link to /portal/mindmap.html + deprecate /api/mission/mindmap ([#2685](https://github.com/HankHuang0516/EClaw/issues/2685)) ([11e297b](https://github.com/HankHuang0516/EClaw/commit/11e297bab1c9b56fcde3027d6500b7c58891bf18)), closes [#2680](https://github.com/HankHuang0516/EClaw/issues/2680) [#2684](https://github.com/HankHuang0516/EClaw/issues/2684)
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **portal:** nagoya trip interactive map (Leaflet + OSM, no API key) ([#2888](https://github.com/HankHuang0516/EClaw/issues/2888)) ([ecfdac0](https://github.com/HankHuang0516/EClaw/commit/ecfdac06348c12ee7c6872c6c28d5f82162e7aa9))
* **channel:** outbound backpressure (30/min cap + 429 retry-after) ([#2911](https://github.com/HankHuang0516/EClaw/issues/2911)) ([36dc99c](https://github.com/HankHuang0516/EClaw/commit/36dc99ca78b0e1724a2aaefb5936669077b7a28f))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **settings:** per-entity nudge override UI (Phase 2) ([#2837](https://github.com/HankHuang0516/EClaw/issues/2837)) ([ea7662b](https://github.com/HankHuang0516/EClaw/commit/ea7662b0858882dae461e1387f711895924f9ab8)), closes [3/#4](https://github.com/HankHuang0516/EClaw/issues/4)
* **kanban:** per-entity nudge overrides (Phase 2 of card_e066cb6b) ([#2836](https://github.com/HankHuang0516/EClaw/issues/2836)) ([0425f80](https://github.com/HankHuang0516/EClaw/commit/0425f80bc1169c0d506b665659c8676695c45553))
* **avatar:** petdx render on card-holder my-cards (Phase 1b) ([#2621](https://github.com/HankHuang0516/EClaw/issues/2621)) ([f78ba8b](https://github.com/HankHuang0516/EClaw/commit/f78ba8b18acc426936ab6d8a82ca7541effea00d))
* **avatar:** petdx render on dashboard entity grid / org chart / bindings (Phase 1b) ([#2622](https://github.com/HankHuang0516/EClaw/issues/2622)) ([f417749](https://github.com/HankHuang0516/EClaw/commit/f41774914451048e8cd76e9ae30416a0642e173b)), closes [#2620](https://github.com/HankHuang0516/EClaw/issues/2620) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621)
* **avatar:** petdx render on kanban auto-assign / pulse / comment avatars (Phase 1b) ([#2624](https://github.com/HankHuang0516/EClaw/issues/2624)) ([6bff5f8](https://github.com/HankHuang0516/EClaw/commit/6bff5f80440d0bd91a6b1721cde9478d685c4d46))
* **avatar:** petdx render on mission skill/rule/soul entity dialogs (Phase 1b) ([#2623](https://github.com/HankHuang0516/EClaw/issues/2623)) ([129327b](https://github.com/HankHuang0516/EClaw/commit/129327bc7b91056659f1ab7e8d5e3f5260d951fb))
* **mindmap:** portal/mindmap.html force-graph prototype ([#129](https://github.com/HankHuang0516/EClaw/issues/129)) ([#2681](https://github.com/HankHuang0516/EClaw/issues/2681)) ([0f15e69](https://github.com/HankHuang0516/EClaw/commit/0f15e6930f0697c37fa08f3219edb8f9e499837f)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **channel:** record delivery receipts ([#2913](https://github.com/HankHuang0516/EClaw/issues/2913)) ([90c671b](https://github.com/HankHuang0516/EClaw/commit/90c671bd1970ab51584b90e2b634484ec10cc7ae))
* **portal:** redo nagoya trip page in professional tour-guide style ([#2691](https://github.com/HankHuang0516/EClaw/issues/2691)) ([b2378c0](https://github.com/HankHuang0516/EClaw/commit/b2378c06ee20fa9cccfdceceb1a4c9e0b3072f59))
* **i18n:** remove ms+hi orphan keys from i18n.js ([#2849](https://github.com/HankHuang0516/EClaw/issues/2849)) ([320176c](https://github.com/HankHuang0516/EClaw/commit/320176c06a3cfd8631e2a82ad02a6bd6a9af0389))
* **avatar:** render selected petdx companion in chat avatars ([#2620](https://github.com/HankHuang0516/EClaw/issues/2620)) ([0bdd046](https://github.com/HankHuang0516/EClaw/commit/0bdd046fe1b1c428e32edda366ff112c08927f4c))
* **home:** replace native home with WebView hosting dashboard.html ([#2634](https://github.com/HankHuang0516/EClaw/issues/2634)) ([e69ea81](https://github.com/HankHuang0516/EClaw/commit/e69ea8160c239b083a83d6dc83a4f1c3f901c863))
* **app:** route chat mission jumps through native tabs ([#2824](https://github.com/HankHuang0516/EClaw/issues/2824)) ([deb07b6](https://github.com/HankHuang0516/EClaw/commit/deb07b69a9ecca632fe27278de537f1d85234e94))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **chat:** support message deep links ([#2719](https://github.com/HankHuang0516/EClaw/issues/2719)) ([2dc0f1e](https://github.com/HankHuang0516/EClaw/commit/2dc0f1eeb259e1a0848db4a03186b989372cd91c))
* **mission:** support note deep links ([#2717](https://github.com/HankHuang0516/EClaw/issues/2717)) ([2efd3a5](https://github.com/HankHuang0516/EClaw/commit/2efd3a5e741217a07c0b0ac54a0ddd010e0ebe23))
* **share-chat:** twitter card + per-bot og:image/twitter:* in SSR ([#2609](https://github.com/HankHuang0516/EClaw/issues/2609)) ([6cdc853](https://github.com/HankHuang0516/EClaw/commit/6cdc853dc884cdb95bd47214942768981f218ae0))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))
* **settings:** wire petdx avatar into channel-account chips ([#2626](https://github.com/HankHuang0516/EClaw/issues/2626)) ([88aec77](https://github.com/HankHuang0516/EClaw/commit/88aec772628c240e97b336bb5820892ad632d1ae))
* **files:** wire petdx avatar into entity filter & per-file badges ([#2627](https://github.com/HankHuang0516/EClaw/issues/2627)) ([5b3e5cc](https://github.com/HankHuang0516/EClaw/commit/5b3e5cc542d9da69bb4e92500fd03a542ea33f00))
* **mindmap:** wrap hardcoded zh-TW UI strings with i18n t() ([#2607](https://github.com/HankHuang0516/EClaw/issues/2607)) ([166af87](https://github.com/HankHuang0516/EClaw/commit/166af8772b2121a24aaf34a83b3de970e9b3b571)), closes [#2606](https://github.com/HankHuang0516/EClaw/issues/2606)
* **i18n:** zh-TW backfill 8 keys (soft-pause + chat + invite + wallet) ([#2815](https://github.com/HankHuang0516/EClaw/issues/2815)) ([a2dd574](https://github.com/HankHuang0516/EClaw/commit/a2dd5743ce8d43a4b6ace9a2fd4b52568180d6c5))


### Performance Improvements

* **mindmap:** force-graph hardening for 1000/2000-node graphs ([#2684](https://github.com/HankHuang0516/EClaw/issues/2684)) ([da8b1c8](https://github.com/HankHuang0516/EClaw/commit/da8b1c8f947ab8bc8fa455c1962a91146623a1fc))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-24)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **notifications:** add kanban_done + kanban_done_auto toggles to Android Settings ([#2636](https://github.com/HankHuang0516/EClaw/issues/2636)) ([a710909](https://github.com/HankHuang0516/EClaw/commit/a7109095e3393b8564e7ef1b23d382a4fbb944b8))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **api:** align /api/platform-stats skill-doc with device-auth contract (card_49b8190) ([#2916](https://github.com/HankHuang0516/EClaw/issues/2916)) ([ee55b2f](https://github.com/HankHuang0516/EClaw/commit/ee55b2fdbfbcd4bead5501d16ee66339056c32d7))
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **i18n:** ar block — fix 27 broken entries (CJK leaks + truncated HTML) ([#2851](https://github.com/HankHuang0516/EClaw/issues/2851)) ([5b19175](https://github.com/HankHuang0516/EClaw/commit/5b19175d712d00d16fcec00b749035c4beae7a5c))
* **chat:** atomic-load target bar (await contacts before first render) ([#2831](https://github.com/HankHuang0516/EClaw/issues/2831)) ([5f529e6](https://github.com/HankHuang0516/EClaw/commit/5f529e6b772eacc38ba1de69b44258a05f0d816a)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2](https://github.com/HankHuang0516/EClaw/issues/2)
* **channel:** await binding persistence ([712516d](https://github.com/HankHuang0516/EClaw/commit/712516decafb745035bd1434a28cc1973d433e19))
* **rental:** bump handshake timeout to 60s + timeout-aware discovery fallback ([#2863](https://github.com/HankHuang0516/EClaw/issues/2863)) ([fd4322f](https://github.com/HankHuang0516/EClaw/commit/fd4322f8890f3c2dfca3acdae6a4b95f19c381f9)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **i18n:** clear batch 1 residual missing keys ([#2790](https://github.com/HankHuang0516/EClaw/issues/2790)) ([211030e](https://github.com/HankHuang0516/EClaw/commit/211030e0b0b6a865c11f0c4ed60dc4e356d43b7a))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **kanban:** comment input no longer overlaps last comment in card detail (PR [#2678](https://github.com/HankHuang0516/EClaw/issues/2678)) ([fba91fc](https://github.com/HankHuang0516/EClaw/commit/fba91fca15402b453a0db5ee857c0b16e6087055))
* **chat:** compact 20px avatar in target bar (App WebView only shows [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2](https://github.com/HankHuang0516/EClaw/issues/2)) ([#2830](https://github.com/HankHuang0516/EClaw/issues/2830)) ([42c7543](https://github.com/HankHuang0516/EClaw/commit/42c7543b4a78a7abf3f5f7535eb9bc6142cd0fe2)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **portal:** complete 401 redirect sweep + mobile UIUX truncation ([#2842](https://github.com/HankHuang0516/EClaw/issues/2842)) ([f9799ba](https://github.com/HankHuang0516/EClaw/commit/f9799ba42498b109f0a8a70e80836aa6da51e216)), closes [#2833](https://github.com/HankHuang0516/EClaw/issues/2833) [#2845](https://github.com/HankHuang0516/EClaw/issues/2845) [#2844](https://github.com/HankHuang0516/EClaw/issues/2844) [#2843](https://github.com/HankHuang0516/EClaw/issues/2843)
* **uiux:** continue qa mobile readability sweep ([#2854](https://github.com/HankHuang0516/EClaw/issues/2854)) ([57606ff](https://github.com/HankHuang0516/EClaw/commit/57606ffe3e543b07a026aacc53c4b470c9a7825b))
* **i18n:** cover dynamic portal wrapper keys ([#2807](https://github.com/HankHuang0516/EClaw/issues/2807)) ([4c711cc](https://github.com/HankHuang0516/EClaw/commit/4c711cc4009300ffe4e8933a98ee01cd0fdd6aeb))
* **i18n:** dedup 20 dash_channel_card_* keys in es block ([#2876](https://github.com/HankHuang0516/EClaw/issues/2876)) ([807284c](https://github.com/HankHuang0516/EClaw/commit/807284ce363ef119ccdb0ae40e5ce99d3f0a27e0))
* **i18n:** dedupe zh locale keys ([#2919](https://github.com/HankHuang0516/EClaw/issues/2919)) ([afd2cca](https://github.com/HankHuang0516/EClaw/commit/afd2cca8086c2f2df0d04c9c5f8c58733652875e))
* **kanban:** dep-aware nudge gating + roadmap dependency backfill ([#2904](https://github.com/HankHuang0516/EClaw/issues/2904)) ([2b76ac9](https://github.com/HankHuang0516/EClaw/commit/2b76ac9d3b7e4169b7bc3c6f6b0b0903b63cd9f7)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **rental:** don't pollute entity.message on push gateway timeout ([#2860](https://github.com/HankHuang0516/EClaw/issues/2860)) ([592ba44](https://github.com/HankHuang0516/EClaw/commit/592ba44f57536ee00011b6cbddaa6b129a7cbae9))
* **petdx:** drop dark-grey loading placeholder + preload sprite WEBP ([#2628](https://github.com/HankHuang0516/EClaw/issues/2628)) ([59cef38](https://github.com/HankHuang0516/EClaw/commit/59cef387bd69ca99d7d15c86a1364856d3849ad8)), closes [#1a1a1a](https://github.com/HankHuang0516/EClaw/issues/1a1a1a)
* **gateway-ws:** drop Origin header on server-to-server WS upgrade ([#2869](https://github.com/HankHuang0516/EClaw/issues/2869)) ([716dcf9](https://github.com/HankHuang0516/EClaw/commit/716dcf9d0834b17522bb9d894bad84bc142d1a19))
* **setup-scripts:** drop Origin header on server-to-server WS upgrade ([#2875](https://github.com/HankHuang0516/EClaw/issues/2875)) ([9d893b8](https://github.com/HankHuang0516/EClaw/commit/9d893b8e5eea4db275e450bf423903c156cd3e4b)), closes [#2869](https://github.com/HankHuang0516/EClaw/issues/2869)
* **security:** escape innerHTML in chat modal error messages ([#2819](https://github.com/HankHuang0516/EClaw/issues/2819)) ([dce07ad](https://github.com/HankHuang0516/EClaw/commit/dce07adde64795916dba977ae23e46f3371ce7ed)), closes [#2809](https://github.com/HankHuang0516/EClaw/issues/2809) [#2810](https://github.com/HankHuang0516/EClaw/issues/2810) [#2809](https://github.com/HankHuang0516/EClaw/issues/2809) [#2810](https://github.com/HankHuang0516/EClaw/issues/2810)
* **entities:** expose botSecret to owner so wallpaper service can poll companions ([#2615](https://github.com/HankHuang0516/EClaw/issues/2615)) ([04470fc](https://github.com/HankHuang0516/EClaw/commit/04470fce8f8c3fce2b1ba8b243e776606f107502))
* **rental:** expose owner_public_code in marketplace so plaza CTA can route ([#2616](https://github.com/HankHuang0516/EClaw/issues/2616)) ([4d1372f](https://github.com/HankHuang0516/EClaw/commit/4d1372f717d93cab65543e87c852e74e9fb67071)), closes [#2610](https://github.com/HankHuang0516/EClaw/issues/2610)
* **mindmap:** fallback to device scope when entityId is null ([#2728](https://github.com/HankHuang0516/EClaw/issues/2728)) ([7572312](https://github.com/HankHuang0516/EClaw/commit/7572312433d3d75fc245eda48a28919ce14bd927))
* **i18n:** fill Spanish drift keys ([#2751](https://github.com/HankHuang0516/EClaw/issues/2751)) ([0ad0ee5](https://github.com/HankHuang0516/EClaw/commit/0ad0ee55f7fac3e6ac46d891539950dab4d553cc))
* **portal:** fit embedded org chart to mobile viewport ([#2674](https://github.com/HankHuang0516/EClaw/issues/2674)) ([1c4e1b4](https://github.com/HankHuang0516/EClaw/commit/1c4e1b413ea7027b4cd4b8ecda981b0d0e12e66b))
* **i18n:** fix 6 trailing-comma syntax errors in 10-locale batch ([#2771](https://github.com/HankHuang0516/EClaw/issues/2771)) ([b27c6ca](https://github.com/HankHuang0516/EClaw/commit/b27c6ca204bf813e406c54ce3a2532a5f1f031b3))
* **kanban:** GET card returns latest 50 comments + comments endpoint exposes total ([#2816](https://github.com/HankHuang0516/EClaw/issues/2816)) ([c4d83f7](https://github.com/HankHuang0516/EClaw/commit/c4d83f777a1cd26aea0936e4316aa35c52822eef))
* **sharechat:** guest verify-email modal + disabled Send for unverified ([#2865](https://github.com/HankHuang0516/EClaw/issues/2865)) ([cb3b061](https://github.com/HankHuang0516/EClaw/commit/cb3b0614e0f6160417d907753e66eceb2d666802))
* **uiux:** harden chat previews and roster preview ([#2769](https://github.com/HankHuang0516/EClaw/issues/2769)) ([466d4d3](https://github.com/HankHuang0516/EClaw/commit/466d4d3ef81c628d3f58db64323946053d7bf61c))
* **mention-parser:** ignore @-mentions inside markdown code spans ([#2645](https://github.com/HankHuang0516/EClaw/issues/2645)) ([8da19d4](https://github.com/HankHuang0516/EClaw/commit/8da19d4a79ceb4152bf2144ee0847c61ce3e1def)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **kanban:** lazy-load dependency chips via IntersectionObserver ([#2632](https://github.com/HankHuang0516/EClaw/issues/2632)) ([20586b4](https://github.com/HankHuang0516/EClaw/commit/20586b43357335f9eb6a190c02d58c8e36b58aba)), closes [#2631](https://github.com/HankHuang0516/EClaw/issues/2631)
* **i18n:** localize FCM NotificationChannel labels (card_ec8d3a22) ([#2918](https://github.com/HankHuang0516/EClaw/issues/2918)) ([591cd20](https://github.com/HankHuang0516/EClaw/commit/591cd206704693650a53d19d94c4cc75daf84ffd))
* **kanban:** make card sorting deterministic ([#2756](https://github.com/HankHuang0516/EClaw/issues/2756)) ([48e2117](https://github.com/HankHuang0516/EClaw/commit/48e2117b64e37f05dc635e0a3b67bfd43cbe48f5))
* **portal/nagoya-trip:** map-link invisible on dark hero/day-banner ([#2897](https://github.com/HankHuang0516/EClaw/issues/2897)) ([cc33df6](https://github.com/HankHuang0516/EClaw/commit/cc33df686673455c20beaee60871412a5d486e66)), closes [#1f4030](https://github.com/HankHuang0516/EClaw/issues/1f4030) [#8b8579](https://github.com/HankHuang0516/EClaw/issues/8b8579) [#6e6859](https://github.com/HankHuang0516/EClaw/issues/6e6859) [#7a5614](https://github.com/HankHuang0516/EClaw/issues/7a5614)
* **org-chart:** notify affected bots on hierarchy change ([#2812](https://github.com/HankHuang0516/EClaw/issues/2812)) ([55675fd](https://github.com/HankHuang0516/EClaw/commit/55675fdf4487494d729a29524b32bd81b756a00c)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** notify reviewer on manual /move → review ([#2753](https://github.com/HankHuang0516/EClaw/issues/2753)) ([6cbbb4e](https://github.com/HankHuang0516/EClaw/commit/6cbbb4ee8c0d4d8ad54df2e9b5faaa3699bd530f))
* **wallpaper:** off-load spritesheet fetch to IO so per-petdx sprites actually render ([#2618](https://github.com/HankHuang0516/EClaw/issues/2618)) ([61b832c](https://github.com/HankHuang0516/EClaw/commit/61b832c9fa8a1d0caab810ccc942d85c63349267)), closes [#2615](https://github.com/HankHuang0516/EClaw/issues/2615) [#2577](https://github.com/HankHuang0516/EClaw/issues/2577)
* **security:** patch P0 sanitize-html XSS + P1 protobufjs + exam.html XSS ([#2829](https://github.com/HankHuang0516/EClaw/issues/2829)) ([c71b871](https://github.com/HankHuang0516/EClaw/commit/c71b871a045887375dd0d26d1a3280a0891a89ad))
* **security:** patch ws uninitialized memory disclosure (GHSA-58qx-3vcg-4xpx) ([#2872](https://github.com/HankHuang0516/EClaw/issues/2872)) ([2523d15](https://github.com/HankHuang0516/EClaw/commit/2523d154bbe501a7cc086340f7a07ece3abfa69b))
* **portal:** petdx-browser cookie-session fallback for device-login ([#2757](https://github.com/HankHuang0516/EClaw/issues/2757)) ([ca275f4](https://github.com/HankHuang0516/EClaw/commit/ca275f4519835da0c7ad71c588908a18f6f138d8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **api:** platform-stats 500 + entity/lookup publicCode alias ([#2809](https://github.com/HankHuang0516/EClaw/issues/2809), [#2810](https://github.com/HankHuang0516/EClaw/issues/2810)) ([#2818](https://github.com/HankHuang0516/EClaw/issues/2818)) ([f99fd17](https://github.com/HankHuang0516/EClaw/commit/f99fd17b2b1c32d88daa2510ff66d714c1a53edc))
* **i18n:** positional format specifiers for feedback_result_logs (7 locales) ([#2597](https://github.com/HankHuang0516/EClaw/issues/2597)) ([21aedc7](https://github.com/HankHuang0516/EClaw/commit/21aedc7eebc7a2839e340136f38dfdfd4dabb9dc))
* **avatar-petdx:** preserve descriptor across transient API failures (flicker) ([#2625](https://github.com/HankHuang0516/EClaw/issues/2625)) ([7b1c606](https://github.com/HankHuang0516/EClaw/commit/7b1c606514f7698d72ec95cf6c556e4043966186))
* **chat:** preserve recipient selection across rental-health refresh (P0 #card_eb1cba76) ([#2906](https://github.com/HankHuang0516/EClaw/issues/2906)) ([9cc0301](https://github.com/HankHuang0516/EClaw/commit/9cc0301cc26a0f49af4b7f53486f5c1a7cdd7902)), closes [#card_eb1cba76](https://github.com/HankHuang0516/EClaw/issues/card_eb1cba76) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **chat:** preserve scroll anchor while reading history ([#2693](https://github.com/HankHuang0516/EClaw/issues/2693)) ([945fdb7](https://github.com/HankHuang0516/EClaw/commit/945fdb7192b791b31882e1e75568dd8b11e4686f))
* **promo:** pull video embed from /promo-chat-avatar.html ([#2724](https://github.com/HankHuang0516/EClaw/issues/2724)) ([2afabc8](https://github.com/HankHuang0516/EClaw/commit/2afabc8c5ff8b25218a7cb857e8adfa572c8e9d5))
* **dashboard:** read live.rate_limits.{five_hour,seven_day}.used_percentage ([#2895](https://github.com/HankHuang0516/EClaw/issues/2895)) ([8223303](https://github.com/HankHuang0516/EClaw/commit/822330312bccb1c76675ad2c3b26e78d10dd1298))
* **kanban:** realign stale recurring schedules ([#2785](https://github.com/HankHuang0516/EClaw/issues/2785)) ([ab8ee25](https://github.com/HankHuang0516/EClaw/commit/ab8ee250a9b37f3d3e838bb01d8866c8d2b78231))
* **portal:** reduce QA-discovered request fanout ([#2656](https://github.com/HankHuang0516/EClaw/issues/2656)) ([1e46d6b](https://github.com/HankHuang0516/EClaw/commit/1e46d6bab61e58c65b452b6503d953f8dddeee75))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **portal:** remove org chart fit scale floor ([#2676](https://github.com/HankHuang0516/EClaw/issues/2676)) ([0f01606](https://github.com/HankHuang0516/EClaw/commit/0f016068b963bb5f800a02f28817c7174979d913))
* **rental:** remove phantom 'webhook test push' step from BIND_COMPLETE ([#2864](https://github.com/HankHuang0516/EClaw/issues/2864)) ([47f4a3e](https://github.com/HankHuang0516/EClaw/commit/47f4a3edf76aa95ebd06d8713cd44fda6eef9b5d))
* **i18n:** rename mm_empty_title → mm_state_empty_title in mindmap.html ([#2683](https://github.com/HankHuang0516/EClaw/issues/2683)) ([c79c109](https://github.com/HankHuang0516/EClaw/commit/c79c109bea23142e8a6d9ace976d105af1280ec9))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **chat:** render mention avatars with companion renderer ([#2633](https://github.com/HankHuang0516/EClaw/issues/2633)) ([03e205f](https://github.com/HankHuang0516/EClaw/commit/03e205f663ecd2c2f443d4009dd5af0093f0bbbb))
* **kanban:** reserve mobile comments panel height ([#2782](https://github.com/HankHuang0516/EClaw/issues/2782)) ([ce8662d](https://github.com/HankHuang0516/EClaw/commit/ce8662d362422fdd25037f1deb61dbed9425e2f9))
* **channel:** restore handshake fallback to discovered sessions ([#2915](https://github.com/HankHuang0516/EClaw/issues/2915)) ([#2917](https://github.com/HankHuang0516/EClaw/issues/2917)) ([9d7d3a2](https://github.com/HankHuang0516/EClaw/commit/9d7d3a25654289998314dd5ca152cefdb8a4d64e)), closes [#2912](https://github.com/HankHuang0516/EClaw/issues/2912)
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* scheduled audit 2026-05-13 — 6 bugs, XSS, i18n ([#2668](https://github.com/HankHuang0516/EClaw/issues/2668)) ([21dd513](https://github.com/HankHuang0516/EClaw/commit/21dd513b4464738de29164265437435ba6cc4817)), closes [#2605](https://github.com/HankHuang0516/EClaw/issues/2605) [#2608](https://github.com/HankHuang0516/EClaw/issues/2608) [#2600](https://github.com/HankHuang0516/EClaw/issues/2600) [#2599](https://github.com/HankHuang0516/EClaw/issues/2599) [#2598](https://github.com/HankHuang0516/EClaw/issues/2598)
* **channel:** scope official bot sessions ([#2912](https://github.com/HankHuang0516/EClaw/issues/2912)) ([5c56b62](https://github.com/HankHuang0516/EClaw/commit/5c56b62c13b739b76f39e168a26bd4e5de2644fb))
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **dashboard:** show Claude weekly bar reset countdown ([#2896](https://github.com/HankHuang0516/EClaw/issues/2896)) ([3b87845](https://github.com/HankHuang0516/EClaw/commit/3b87845d713e980fec69f6b8007549338a326713)), closes [#2895](https://github.com/HankHuang0516/EClaw/issues/2895)
* **chat:** smart-chip preview falls back to inline c.comments when /comments fails (PR [#2677](https://github.com/HankHuang0516/EClaw/issues/2677)) ([7f4dffd](https://github.com/HankHuang0516/EClaw/commit/7f4dffd2c83ea86f296b8fa0610f0e67c9f1af11))
* **kanban:** stabilize comment detail viewport ([#2796](https://github.com/HankHuang0516/EClaw/issues/2796)) ([0a10aad](https://github.com/HankHuang0516/EClaw/commit/0a10aadb5a5b12ff23454c16d5c88183b94ad7d7))
* **wallpaper:** stop Android live wallpaper flashing default lobster on companion change ([#2629](https://github.com/HankHuang0516/EClaw/issues/2629)) ([8b4f66f](https://github.com/HankHuang0516/EClaw/commit/8b4f66fcb335bf43128f924b761b6337c817095b)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **chat:** stop chat.html bouncing to dashboard via /api/rental/health-status 401 race ([#2833](https://github.com/HankHuang0516/EClaw/issues/2833)) ([c422406](https://github.com/HankHuang0516/EClaw/commit/c4224067cdcfe7f3e22ab95007c7563dac4196ac))
* **openclaw-channel:** support OpenClaw 2026.5.20 ([8045de6](https://github.com/HankHuang0516/EClaw/commit/8045de6bebecfc05f9bd57453b99c098ca35681b))
* **mentions:** support same-device CJK display-name tags ([#2874](https://github.com/HankHuang0516/EClaw/issues/2874)) ([b8f61be](https://github.com/HankHuang0516/EClaw/commit/b8f61be9a3962fef75dd32ea34e8900880dafaf9))
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **dashboard:** use sessions[].project for widget Projects list (was .project_id) ([#2894](https://github.com/HankHuang0516/EClaw/issues/2894)) ([0fd1334](https://github.com/HankHuang0516/EClaw/commit/0fd1334897d4a603cc6eb74f34b48606547e09cf))
* **app:** WebView pages honor app-selected locale via ?lang= URL param ([#2672](https://github.com/HankHuang0516/EClaw/issues/2672)) ([8ed8757](https://github.com/HankHuang0516/EClaw/commit/8ed8757aec5bf214e837cc0d81bf2b23f1993a91)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **share-chat:** wire rich CTA actions to msgInput ([#2867](https://github.com/HankHuang0516/EClaw/issues/2867)) ([df23b11](https://github.com/HankHuang0516/EClaw/commit/df23b1147d34c59a644a145bbd87c18b96400acc))


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* **usage-api:** /api/usage/{snapshot,timeline} + usage_snapshots table (Plan B Phase 1) ([#2889](https://github.com/HankHuang0516/EClaw/issues/2889)) ([a0d859c](https://github.com/HankHuang0516/EClaw/commit/a0d859c63f0220909dadb2b1952174861ccdce14))
* **community:** 1-click chat button on bot cards + utm tagging ([#2610](https://github.com/HankHuang0516/EClaw/issues/2610)) ([eee97b0](https://github.com/HankHuang0516/EClaw/commit/eee97b0e2e4e74945ec24f218a69a52800b97a66))
* **chat:** accept ?messageId= as deep-link alias ([#2838](https://github.com/HankHuang0516/EClaw/issues/2838)) ([1785a87](https://github.com/HankHuang0516/EClaw/commit/1785a87310426637fd10df83754fb9924c45207f))
* **chat:** add avatar size preference ([#2714](https://github.com/HankHuang0516/EClaw/issues/2714)) ([6fe164a](https://github.com/HankHuang0516/EClaw/commit/6fe164ad8b22fa576d2dd9ad37c0d9fc295b5a83))
* **dashboard:** add Claude and Codex channel guides ([#2640](https://github.com/HankHuang0516/EClaw/issues/2640)) ([c64e4c4](https://github.com/HankHuang0516/EClaw/commit/c64e4c4afc78db58c5cd578f00486dd7b2fd3311))
* **dashboard:** add Claude Code channel guide card ([#2667](https://github.com/HankHuang0516/EClaw/issues/2667)) ([d70d75c](https://github.com/HankHuang0516/EClaw/commit/d70d75c0c8caa8a540358a9aab4556b8c1927a5c))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* **kanban:** add device-scoped card tags ([#2773](https://github.com/HankHuang0516/EClaw/issues/2773)) ([53a387e](https://github.com/HankHuang0516/EClaw/commit/53a387e67ba7bb4f6bed1c427000c4ae8666577a))
* **portal:** add entity selector to petdx-browser ([#2602](https://github.com/HankHuang0516/EClaw/issues/2602)) ([3fa067e](https://github.com/HankHuang0516/EClaw/commit/3fa067e00b38829b48a37cecd33ee81a9a1122d9))
* **kanban:** add explicit card links ([#2721](https://github.com/HankHuang0516/EClaw/issues/2721)) ([ef9f812](https://github.com/HankHuang0516/EClaw/commit/ef9f812a3fcf39efd07fd158ce90951bdd045ac7))
* **kanban:** add explicit done-card reopen flow ([#2801](https://github.com/HankHuang0516/EClaw/issues/2801)) ([5080aac](https://github.com/HankHuang0516/EClaw/commit/5080aacb75047c0deaa379ee708ec85465afd57c))
* **mindmap:** add GET /api/mindmap/graph force-graph projection ([#2680](https://github.com/HankHuang0516/EClaw/issues/2680)) ([a00b2e7](https://github.com/HankHuang0516/EClaw/commit/a00b2e775af2c4c98cd157f760ad87aeeee469f0)), closes [#2679](https://github.com/HankHuang0516/EClaw/issues/2679) [#2679](https://github.com/HankHuang0516/EClaw/issues/2679)
* **dashboard:** add Hermes channel promo card ([#2708](https://github.com/HankHuang0516/EClaw/issues/2708)) ([337aca1](https://github.com/HankHuang0516/EClaw/commit/337aca153d5a1cd7e888c065f00ae54db7872d91))
* **rental:** add listing soft pause ([#2781](https://github.com/HankHuang0516/EClaw/issues/2781)) ([6586b72](https://github.com/HankHuang0516/EClaw/commit/6586b72717ddb1637d91cd3242c8d2ff554f62b4))
* **portal:** add Nagoya 5D4N trip static cross-ref page ([#2689](https://github.com/HankHuang0516/EClaw/issues/2689)) ([2e0efb6](https://github.com/HankHuang0516/EClaw/commit/2e0efb6dcdaff52226cc8854a96747000b12bdff))
* **portal:** add Nagoya trip map links and image lightbox ([#2821](https://github.com/HankHuang0516/EClaw/issues/2821)) ([3e40955](https://github.com/HankHuang0516/EClaw/commit/3e40955650a05f45a6b9f7e39e73847705424a03))
* **portal/nagoya:** add parking shortcut buttons next to itinerary places ([#2826](https://github.com/HankHuang0516/EClaw/issues/2826)) ([63968c5](https://github.com/HankHuang0516/EClaw/commit/63968c554d046afc8d978de74e3aacbf7700500d))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **settings:** add rental roster management preview ([#2758](https://github.com/HankHuang0516/EClaw/issues/2758)) ([9706e59](https://github.com/HankHuang0516/EClaw/commit/9706e59ded140a90a6e02348124282bc69d89001))
* **rental:** add renter health chat indicator ([#2690](https://github.com/HankHuang0516/EClaw/issues/2690)) ([36cd2e9](https://github.com/HankHuang0516/EClaw/commit/36cd2e9802be4c7ebb03d3024617fa74aca48ffd))
* **ios:** add Tutorial & Intro entry in Settings ([#2800](https://github.com/HankHuang0516/EClaw/issues/2800)) ([ed83e51](https://github.com/HankHuang0516/EClaw/commit/ed83e51d043bf4cd5865f38dc95a91ed54820d6c))
* **landing:** add Watch Full Demo CTA below hero video ([#2799](https://github.com/HankHuang0516/EClaw/issues/2799)) ([66107c9](https://github.com/HankHuang0516/EClaw/commit/66107c954727551fd34d989a4674daaad9b63968))
* **footer:** add Watch Intro Video link in Info column ([#2798](https://github.com/HankHuang0516/EClaw/issues/2798)) ([d7c6d59](https://github.com/HankHuang0516/EClaw/commit/d7c6d596b69c6a5b257bf1f7a792a407ef9712ad))
* **i18n:** ar iter-2 — fill 623 missing keys against en source ([#2847](https://github.com/HankHuang0516/EClaw/issues/2847)) ([ee94a7a](https://github.com/HankHuang0516/EClaw/commit/ee94a7ae6812b5163efe4284ee4907ca32302f5c))
* **kanban:** backlog launch-gate flag to suppress L1/L2/L3 escalation ([#2855](https://github.com/HankHuang0516/EClaw/issues/2855)) ([cb8bf1b](https://github.com/HankHuang0516/EClaw/commit/cb8bf1bb6421f25214f65e129a8cadccc49cc266)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#4](https://github.com/HankHuang0516/EClaw/issues/4) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **companion:** bridge crafter-station/petdex gallery (1784 pets) ([#2601](https://github.com/HankHuang0516/EClaw/issues/2601)) ([2e245be](https://github.com/HankHuang0516/EClaw/commit/2e245bea6dd47ea7361b927d389188a3c23b6bb3))
* **promo:** chat avatar size feature landing page (self-hosted MP4) ([#2722](https://github.com/HankHuang0516/EClaw/issues/2722)) ([3852210](https://github.com/HankHuang0516/EClaw/commit/3852210d355704d018e3daca6b5f9512a011b210)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **kanban:** cron-spawn jitter + lane backpressure to prevent same-tick wedge ([#2791](https://github.com/HankHuang0516/EClaw/issues/2791)) ([9f414a7](https://github.com/HankHuang0516/EClaw/commit/9f414a731d6393672a0a4189c7b408c529ae5e12)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **portal:** dashboard usage widget — Claude/Codex 5h gauges + 24h chart (Plan B Phase 3) ([#2891](https://github.com/HankHuang0516/EClaw/issues/2891)) ([d18f373](https://github.com/HankHuang0516/EClaw/commit/d18f373857e4bd302437d6bda2a1e01871fbb1db))
* **portal:** dashboard usage widget v2 — Session/Weekly % bars + projects, no cost (Plan B Phase 3.1) ([#2893](https://github.com/HankHuang0516/EClaw/issues/2893)) ([4bc0dc7](https://github.com/HankHuang0516/EClaw/commit/4bc0dc744ed9d54dfd532ebac4b705c7f84ec0a6))
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **promo:** embed daily eclaw video 2026-05-14 ([#2786](https://github.com/HankHuang0516/EClaw/issues/2786)) ([718a814](https://github.com/HankHuang0516/EClaw/commit/718a814ab16850bc2b33a1b303841e2c4378ecfa)), closes [#2782](https://github.com/HankHuang0516/EClaw/issues/2782) [#2693](https://github.com/HankHuang0516/EClaw/issues/2693)
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **info:** embed promo video at top of Quick Start tab ([#2797](https://github.com/HankHuang0516/EClaw/issues/2797)) ([047679f](https://github.com/HankHuang0516/EClaw/commit/047679fd57ab9949eaeacea414d5611e71afe041))
* **rental:** enforce strict rebind refunds ([#2703](https://github.com/HankHuang0516/EClaw/issues/2703)) ([a1859c5](https://github.com/HankHuang0516/EClaw/commit/a1859c50e6fb3991d7a8051491502d824a14a116))
* **portal:** group task chip actions ([#2825](https://github.com/HankHuang0516/EClaw/issues/2825)) ([5db5c59](https://github.com/HankHuang0516/EClaw/commit/5db5c59b32b8635f1412205faf0c2f9164d3d5d4))
* **portal:** info-guide-rules + info-guide-soul slide pair ([#2793](https://github.com/HankHuang0516/EClaw/issues/2793)) ([1c8bddc](https://github.com/HankHuang0516/EClaw/commit/1c8bddc4c185054b2b60088498e3d45509117127)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **chat:** link card previews to kanban ([#2754](https://github.com/HankHuang0516/EClaw/issues/2754)) ([2261240](https://github.com/HankHuang0516/EClaw/commit/22612402c2e95efb07246629e81a849be41ee9c7))
* **mission:** link notes to kanban cards ([#2723](https://github.com/HankHuang0516/EClaw/issues/2723)) ([b36dc18](https://github.com/HankHuang0516/EClaw/commit/b36dc18f3a8facf12e0b6046351c222f1e99dc55))
* **usage-daemon:** macOS launchd daemon polls Claude/Codex usage → POST /api/usage/snapshot (Plan B Phase 2) ([#2890](https://github.com/HankHuang0516/EClaw/issues/2890)) ([fd225e1](https://github.com/HankHuang0516/EClaw/commit/fd225e12d9491037be1a340bd63b54b5f3308c7f))
* **mindmap:** mission.html link to /portal/mindmap.html + deprecate /api/mission/mindmap ([#2685](https://github.com/HankHuang0516/EClaw/issues/2685)) ([11e297b](https://github.com/HankHuang0516/EClaw/commit/11e297bab1c9b56fcde3027d6500b7c58891bf18)), closes [#2680](https://github.com/HankHuang0516/EClaw/issues/2680) [#2684](https://github.com/HankHuang0516/EClaw/issues/2684)
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **portal:** nagoya trip interactive map (Leaflet + OSM, no API key) ([#2888](https://github.com/HankHuang0516/EClaw/issues/2888)) ([ecfdac0](https://github.com/HankHuang0516/EClaw/commit/ecfdac06348c12ee7c6872c6c28d5f82162e7aa9))
* **channel:** outbound backpressure (30/min cap + 429 retry-after) ([#2911](https://github.com/HankHuang0516/EClaw/issues/2911)) ([36dc99c](https://github.com/HankHuang0516/EClaw/commit/36dc99ca78b0e1724a2aaefb5936669077b7a28f))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **settings:** per-entity nudge override UI (Phase 2) ([#2837](https://github.com/HankHuang0516/EClaw/issues/2837)) ([ea7662b](https://github.com/HankHuang0516/EClaw/commit/ea7662b0858882dae461e1387f711895924f9ab8)), closes [3/#4](https://github.com/HankHuang0516/EClaw/issues/4)
* **kanban:** per-entity nudge overrides (Phase 2 of card_e066cb6b) ([#2836](https://github.com/HankHuang0516/EClaw/issues/2836)) ([0425f80](https://github.com/HankHuang0516/EClaw/commit/0425f80bc1169c0d506b665659c8676695c45553))
* **avatar:** petdx render on card-holder my-cards (Phase 1b) ([#2621](https://github.com/HankHuang0516/EClaw/issues/2621)) ([f78ba8b](https://github.com/HankHuang0516/EClaw/commit/f78ba8b18acc426936ab6d8a82ca7541effea00d))
* **avatar:** petdx render on dashboard entity grid / org chart / bindings (Phase 1b) ([#2622](https://github.com/HankHuang0516/EClaw/issues/2622)) ([f417749](https://github.com/HankHuang0516/EClaw/commit/f41774914451048e8cd76e9ae30416a0642e173b)), closes [#2620](https://github.com/HankHuang0516/EClaw/issues/2620) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621)
* **avatar:** petdx render on kanban auto-assign / pulse / comment avatars (Phase 1b) ([#2624](https://github.com/HankHuang0516/EClaw/issues/2624)) ([6bff5f8](https://github.com/HankHuang0516/EClaw/commit/6bff5f80440d0bd91a6b1721cde9478d685c4d46))
* **avatar:** petdx render on mission skill/rule/soul entity dialogs (Phase 1b) ([#2623](https://github.com/HankHuang0516/EClaw/issues/2623)) ([129327b](https://github.com/HankHuang0516/EClaw/commit/129327bc7b91056659f1ab7e8d5e3f5260d951fb))
* **mindmap:** portal/mindmap.html force-graph prototype ([#129](https://github.com/HankHuang0516/EClaw/issues/129)) ([#2681](https://github.com/HankHuang0516/EClaw/issues/2681)) ([0f15e69](https://github.com/HankHuang0516/EClaw/commit/0f15e6930f0697c37fa08f3219edb8f9e499837f)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **channel:** record delivery receipts ([#2913](https://github.com/HankHuang0516/EClaw/issues/2913)) ([90c671b](https://github.com/HankHuang0516/EClaw/commit/90c671bd1970ab51584b90e2b634484ec10cc7ae))
* **portal:** redo nagoya trip page in professional tour-guide style ([#2691](https://github.com/HankHuang0516/EClaw/issues/2691)) ([b2378c0](https://github.com/HankHuang0516/EClaw/commit/b2378c06ee20fa9cccfdceceb1a4c9e0b3072f59))
* **i18n:** remove ms+hi orphan keys from i18n.js ([#2849](https://github.com/HankHuang0516/EClaw/issues/2849)) ([320176c](https://github.com/HankHuang0516/EClaw/commit/320176c06a3cfd8631e2a82ad02a6bd6a9af0389))
* **avatar:** render selected petdx companion in chat avatars ([#2620](https://github.com/HankHuang0516/EClaw/issues/2620)) ([0bdd046](https://github.com/HankHuang0516/EClaw/commit/0bdd046fe1b1c428e32edda366ff112c08927f4c))
* **home:** replace native home with WebView hosting dashboard.html ([#2634](https://github.com/HankHuang0516/EClaw/issues/2634)) ([e69ea81](https://github.com/HankHuang0516/EClaw/commit/e69ea8160c239b083a83d6dc83a4f1c3f901c863))
* **app:** route chat mission jumps through native tabs ([#2824](https://github.com/HankHuang0516/EClaw/issues/2824)) ([deb07b6](https://github.com/HankHuang0516/EClaw/commit/deb07b69a9ecca632fe27278de537f1d85234e94))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **chat:** support message deep links ([#2719](https://github.com/HankHuang0516/EClaw/issues/2719)) ([2dc0f1e](https://github.com/HankHuang0516/EClaw/commit/2dc0f1eeb259e1a0848db4a03186b989372cd91c))
* **mission:** support note deep links ([#2717](https://github.com/HankHuang0516/EClaw/issues/2717)) ([2efd3a5](https://github.com/HankHuang0516/EClaw/commit/2efd3a5e741217a07c0b0ac54a0ddd010e0ebe23))
* **share-chat:** twitter card + per-bot og:image/twitter:* in SSR ([#2609](https://github.com/HankHuang0516/EClaw/issues/2609)) ([6cdc853](https://github.com/HankHuang0516/EClaw/commit/6cdc853dc884cdb95bd47214942768981f218ae0))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))
* **settings:** wire petdx avatar into channel-account chips ([#2626](https://github.com/HankHuang0516/EClaw/issues/2626)) ([88aec77](https://github.com/HankHuang0516/EClaw/commit/88aec772628c240e97b336bb5820892ad632d1ae))
* **files:** wire petdx avatar into entity filter & per-file badges ([#2627](https://github.com/HankHuang0516/EClaw/issues/2627)) ([5b3e5cc](https://github.com/HankHuang0516/EClaw/commit/5b3e5cc542d9da69bb4e92500fd03a542ea33f00))
* **mindmap:** wrap hardcoded zh-TW UI strings with i18n t() ([#2607](https://github.com/HankHuang0516/EClaw/issues/2607)) ([166af87](https://github.com/HankHuang0516/EClaw/commit/166af8772b2121a24aaf34a83b3de970e9b3b571)), closes [#2606](https://github.com/HankHuang0516/EClaw/issues/2606)
* **i18n:** zh-TW backfill 8 keys (soft-pause + chat + invite + wallet) ([#2815](https://github.com/HankHuang0516/EClaw/issues/2815)) ([a2dd574](https://github.com/HankHuang0516/EClaw/commit/a2dd5743ce8d43a4b6ace9a2fd4b52568180d6c5))


### Performance Improvements

* **mindmap:** force-graph hardening for 1000/2000-node graphs ([#2684](https://github.com/HankHuang0516/EClaw/issues/2684)) ([da8b1c8](https://github.com/HankHuang0516/EClaw/commit/da8b1c8f947ab8bc8fa455c1962a91146623a1fc))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-24)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **notifications:** add kanban_done + kanban_done_auto toggles to Android Settings ([#2636](https://github.com/HankHuang0516/EClaw/issues/2636)) ([a710909](https://github.com/HankHuang0516/EClaw/commit/a7109095e3393b8564e7ef1b23d382a4fbb944b8))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **api:** align /api/platform-stats skill-doc with device-auth contract (card_49b8190) ([#2916](https://github.com/HankHuang0516/EClaw/issues/2916)) ([ee55b2f](https://github.com/HankHuang0516/EClaw/commit/ee55b2fdbfbcd4bead5501d16ee66339056c32d7))
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **i18n:** ar block — fix 27 broken entries (CJK leaks + truncated HTML) ([#2851](https://github.com/HankHuang0516/EClaw/issues/2851)) ([5b19175](https://github.com/HankHuang0516/EClaw/commit/5b19175d712d00d16fcec00b749035c4beae7a5c))
* **chat:** atomic-load target bar (await contacts before first render) ([#2831](https://github.com/HankHuang0516/EClaw/issues/2831)) ([5f529e6](https://github.com/HankHuang0516/EClaw/commit/5f529e6b772eacc38ba1de69b44258a05f0d816a)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2](https://github.com/HankHuang0516/EClaw/issues/2)
* **channel:** await binding persistence ([712516d](https://github.com/HankHuang0516/EClaw/commit/712516decafb745035bd1434a28cc1973d433e19))
* **rental:** bump handshake timeout to 60s + timeout-aware discovery fallback ([#2863](https://github.com/HankHuang0516/EClaw/issues/2863)) ([fd4322f](https://github.com/HankHuang0516/EClaw/commit/fd4322f8890f3c2dfca3acdae6a4b95f19c381f9)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **i18n:** clear batch 1 residual missing keys ([#2790](https://github.com/HankHuang0516/EClaw/issues/2790)) ([211030e](https://github.com/HankHuang0516/EClaw/commit/211030e0b0b6a865c11f0c4ed60dc4e356d43b7a))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **kanban:** comment input no longer overlaps last comment in card detail (PR [#2678](https://github.com/HankHuang0516/EClaw/issues/2678)) ([fba91fc](https://github.com/HankHuang0516/EClaw/commit/fba91fca15402b453a0db5ee857c0b16e6087055))
* **chat:** compact 20px avatar in target bar (App WebView only shows [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2](https://github.com/HankHuang0516/EClaw/issues/2)) ([#2830](https://github.com/HankHuang0516/EClaw/issues/2830)) ([42c7543](https://github.com/HankHuang0516/EClaw/commit/42c7543b4a78a7abf3f5f7535eb9bc6142cd0fe2)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **portal:** complete 401 redirect sweep + mobile UIUX truncation ([#2842](https://github.com/HankHuang0516/EClaw/issues/2842)) ([f9799ba](https://github.com/HankHuang0516/EClaw/commit/f9799ba42498b109f0a8a70e80836aa6da51e216)), closes [#2833](https://github.com/HankHuang0516/EClaw/issues/2833) [#2845](https://github.com/HankHuang0516/EClaw/issues/2845) [#2844](https://github.com/HankHuang0516/EClaw/issues/2844) [#2843](https://github.com/HankHuang0516/EClaw/issues/2843)
* **uiux:** continue qa mobile readability sweep ([#2854](https://github.com/HankHuang0516/EClaw/issues/2854)) ([57606ff](https://github.com/HankHuang0516/EClaw/commit/57606ffe3e543b07a026aacc53c4b470c9a7825b))
* **i18n:** cover dynamic portal wrapper keys ([#2807](https://github.com/HankHuang0516/EClaw/issues/2807)) ([4c711cc](https://github.com/HankHuang0516/EClaw/commit/4c711cc4009300ffe4e8933a98ee01cd0fdd6aeb))
* **i18n:** dedup 20 dash_channel_card_* keys in es block ([#2876](https://github.com/HankHuang0516/EClaw/issues/2876)) ([807284c](https://github.com/HankHuang0516/EClaw/commit/807284ce363ef119ccdb0ae40e5ce99d3f0a27e0))
* **kanban:** dep-aware nudge gating + roadmap dependency backfill ([#2904](https://github.com/HankHuang0516/EClaw/issues/2904)) ([2b76ac9](https://github.com/HankHuang0516/EClaw/commit/2b76ac9d3b7e4169b7bc3c6f6b0b0903b63cd9f7)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **rental:** don't pollute entity.message on push gateway timeout ([#2860](https://github.com/HankHuang0516/EClaw/issues/2860)) ([592ba44](https://github.com/HankHuang0516/EClaw/commit/592ba44f57536ee00011b6cbddaa6b129a7cbae9))
* **petdx:** drop dark-grey loading placeholder + preload sprite WEBP ([#2628](https://github.com/HankHuang0516/EClaw/issues/2628)) ([59cef38](https://github.com/HankHuang0516/EClaw/commit/59cef387bd69ca99d7d15c86a1364856d3849ad8)), closes [#1a1a1a](https://github.com/HankHuang0516/EClaw/issues/1a1a1a)
* **gateway-ws:** drop Origin header on server-to-server WS upgrade ([#2869](https://github.com/HankHuang0516/EClaw/issues/2869)) ([716dcf9](https://github.com/HankHuang0516/EClaw/commit/716dcf9d0834b17522bb9d894bad84bc142d1a19))
* **setup-scripts:** drop Origin header on server-to-server WS upgrade ([#2875](https://github.com/HankHuang0516/EClaw/issues/2875)) ([9d893b8](https://github.com/HankHuang0516/EClaw/commit/9d893b8e5eea4db275e450bf423903c156cd3e4b)), closes [#2869](https://github.com/HankHuang0516/EClaw/issues/2869)
* **security:** escape innerHTML in chat modal error messages ([#2819](https://github.com/HankHuang0516/EClaw/issues/2819)) ([dce07ad](https://github.com/HankHuang0516/EClaw/commit/dce07adde64795916dba977ae23e46f3371ce7ed)), closes [#2809](https://github.com/HankHuang0516/EClaw/issues/2809) [#2810](https://github.com/HankHuang0516/EClaw/issues/2810) [#2809](https://github.com/HankHuang0516/EClaw/issues/2809) [#2810](https://github.com/HankHuang0516/EClaw/issues/2810)
* **entities:** expose botSecret to owner so wallpaper service can poll companions ([#2615](https://github.com/HankHuang0516/EClaw/issues/2615)) ([04470fc](https://github.com/HankHuang0516/EClaw/commit/04470fce8f8c3fce2b1ba8b243e776606f107502))
* **rental:** expose owner_public_code in marketplace so plaza CTA can route ([#2616](https://github.com/HankHuang0516/EClaw/issues/2616)) ([4d1372f](https://github.com/HankHuang0516/EClaw/commit/4d1372f717d93cab65543e87c852e74e9fb67071)), closes [#2610](https://github.com/HankHuang0516/EClaw/issues/2610)
* **mindmap:** fallback to device scope when entityId is null ([#2728](https://github.com/HankHuang0516/EClaw/issues/2728)) ([7572312](https://github.com/HankHuang0516/EClaw/commit/7572312433d3d75fc245eda48a28919ce14bd927))
* **i18n:** fill Spanish drift keys ([#2751](https://github.com/HankHuang0516/EClaw/issues/2751)) ([0ad0ee5](https://github.com/HankHuang0516/EClaw/commit/0ad0ee55f7fac3e6ac46d891539950dab4d553cc))
* **portal:** fit embedded org chart to mobile viewport ([#2674](https://github.com/HankHuang0516/EClaw/issues/2674)) ([1c4e1b4](https://github.com/HankHuang0516/EClaw/commit/1c4e1b413ea7027b4cd4b8ecda981b0d0e12e66b))
* **i18n:** fix 6 trailing-comma syntax errors in 10-locale batch ([#2771](https://github.com/HankHuang0516/EClaw/issues/2771)) ([b27c6ca](https://github.com/HankHuang0516/EClaw/commit/b27c6ca204bf813e406c54ce3a2532a5f1f031b3))
* **kanban:** GET card returns latest 50 comments + comments endpoint exposes total ([#2816](https://github.com/HankHuang0516/EClaw/issues/2816)) ([c4d83f7](https://github.com/HankHuang0516/EClaw/commit/c4d83f777a1cd26aea0936e4316aa35c52822eef))
* **sharechat:** guest verify-email modal + disabled Send for unverified ([#2865](https://github.com/HankHuang0516/EClaw/issues/2865)) ([cb3b061](https://github.com/HankHuang0516/EClaw/commit/cb3b0614e0f6160417d907753e66eceb2d666802))
* **uiux:** harden chat previews and roster preview ([#2769](https://github.com/HankHuang0516/EClaw/issues/2769)) ([466d4d3](https://github.com/HankHuang0516/EClaw/commit/466d4d3ef81c628d3f58db64323946053d7bf61c))
* **mention-parser:** ignore @-mentions inside markdown code spans ([#2645](https://github.com/HankHuang0516/EClaw/issues/2645)) ([8da19d4](https://github.com/HankHuang0516/EClaw/commit/8da19d4a79ceb4152bf2144ee0847c61ce3e1def)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **kanban:** lazy-load dependency chips via IntersectionObserver ([#2632](https://github.com/HankHuang0516/EClaw/issues/2632)) ([20586b4](https://github.com/HankHuang0516/EClaw/commit/20586b43357335f9eb6a190c02d58c8e36b58aba)), closes [#2631](https://github.com/HankHuang0516/EClaw/issues/2631)
* **i18n:** localize FCM NotificationChannel labels (card_ec8d3a22) ([#2918](https://github.com/HankHuang0516/EClaw/issues/2918)) ([591cd20](https://github.com/HankHuang0516/EClaw/commit/591cd206704693650a53d19d94c4cc75daf84ffd))
* **kanban:** make card sorting deterministic ([#2756](https://github.com/HankHuang0516/EClaw/issues/2756)) ([48e2117](https://github.com/HankHuang0516/EClaw/commit/48e2117b64e37f05dc635e0a3b67bfd43cbe48f5))
* **portal/nagoya-trip:** map-link invisible on dark hero/day-banner ([#2897](https://github.com/HankHuang0516/EClaw/issues/2897)) ([cc33df6](https://github.com/HankHuang0516/EClaw/commit/cc33df686673455c20beaee60871412a5d486e66)), closes [#1f4030](https://github.com/HankHuang0516/EClaw/issues/1f4030) [#8b8579](https://github.com/HankHuang0516/EClaw/issues/8b8579) [#6e6859](https://github.com/HankHuang0516/EClaw/issues/6e6859) [#7a5614](https://github.com/HankHuang0516/EClaw/issues/7a5614)
* **org-chart:** notify affected bots on hierarchy change ([#2812](https://github.com/HankHuang0516/EClaw/issues/2812)) ([55675fd](https://github.com/HankHuang0516/EClaw/commit/55675fdf4487494d729a29524b32bd81b756a00c)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** notify reviewer on manual /move → review ([#2753](https://github.com/HankHuang0516/EClaw/issues/2753)) ([6cbbb4e](https://github.com/HankHuang0516/EClaw/commit/6cbbb4ee8c0d4d8ad54df2e9b5faaa3699bd530f))
* **wallpaper:** off-load spritesheet fetch to IO so per-petdx sprites actually render ([#2618](https://github.com/HankHuang0516/EClaw/issues/2618)) ([61b832c](https://github.com/HankHuang0516/EClaw/commit/61b832c9fa8a1d0caab810ccc942d85c63349267)), closes [#2615](https://github.com/HankHuang0516/EClaw/issues/2615) [#2577](https://github.com/HankHuang0516/EClaw/issues/2577)
* **security:** patch P0 sanitize-html XSS + P1 protobufjs + exam.html XSS ([#2829](https://github.com/HankHuang0516/EClaw/issues/2829)) ([c71b871](https://github.com/HankHuang0516/EClaw/commit/c71b871a045887375dd0d26d1a3280a0891a89ad))
* **security:** patch ws uninitialized memory disclosure (GHSA-58qx-3vcg-4xpx) ([#2872](https://github.com/HankHuang0516/EClaw/issues/2872)) ([2523d15](https://github.com/HankHuang0516/EClaw/commit/2523d154bbe501a7cc086340f7a07ece3abfa69b))
* **portal:** petdx-browser cookie-session fallback for device-login ([#2757](https://github.com/HankHuang0516/EClaw/issues/2757)) ([ca275f4](https://github.com/HankHuang0516/EClaw/commit/ca275f4519835da0c7ad71c588908a18f6f138d8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **api:** platform-stats 500 + entity/lookup publicCode alias ([#2809](https://github.com/HankHuang0516/EClaw/issues/2809), [#2810](https://github.com/HankHuang0516/EClaw/issues/2810)) ([#2818](https://github.com/HankHuang0516/EClaw/issues/2818)) ([f99fd17](https://github.com/HankHuang0516/EClaw/commit/f99fd17b2b1c32d88daa2510ff66d714c1a53edc))
* **i18n:** positional format specifiers for feedback_result_logs (7 locales) ([#2597](https://github.com/HankHuang0516/EClaw/issues/2597)) ([21aedc7](https://github.com/HankHuang0516/EClaw/commit/21aedc7eebc7a2839e340136f38dfdfd4dabb9dc))
* **avatar-petdx:** preserve descriptor across transient API failures (flicker) ([#2625](https://github.com/HankHuang0516/EClaw/issues/2625)) ([7b1c606](https://github.com/HankHuang0516/EClaw/commit/7b1c606514f7698d72ec95cf6c556e4043966186))
* **chat:** preserve recipient selection across rental-health refresh (P0 #card_eb1cba76) ([#2906](https://github.com/HankHuang0516/EClaw/issues/2906)) ([9cc0301](https://github.com/HankHuang0516/EClaw/commit/9cc0301cc26a0f49af4b7f53486f5c1a7cdd7902)), closes [#card_eb1cba76](https://github.com/HankHuang0516/EClaw/issues/card_eb1cba76) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **chat:** preserve scroll anchor while reading history ([#2693](https://github.com/HankHuang0516/EClaw/issues/2693)) ([945fdb7](https://github.com/HankHuang0516/EClaw/commit/945fdb7192b791b31882e1e75568dd8b11e4686f))
* **promo:** pull video embed from /promo-chat-avatar.html ([#2724](https://github.com/HankHuang0516/EClaw/issues/2724)) ([2afabc8](https://github.com/HankHuang0516/EClaw/commit/2afabc8c5ff8b25218a7cb857e8adfa572c8e9d5))
* **dashboard:** read live.rate_limits.{five_hour,seven_day}.used_percentage ([#2895](https://github.com/HankHuang0516/EClaw/issues/2895)) ([8223303](https://github.com/HankHuang0516/EClaw/commit/822330312bccb1c76675ad2c3b26e78d10dd1298))
* **kanban:** realign stale recurring schedules ([#2785](https://github.com/HankHuang0516/EClaw/issues/2785)) ([ab8ee25](https://github.com/HankHuang0516/EClaw/commit/ab8ee250a9b37f3d3e838bb01d8866c8d2b78231))
* **portal:** reduce QA-discovered request fanout ([#2656](https://github.com/HankHuang0516/EClaw/issues/2656)) ([1e46d6b](https://github.com/HankHuang0516/EClaw/commit/1e46d6bab61e58c65b452b6503d953f8dddeee75))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **portal:** remove org chart fit scale floor ([#2676](https://github.com/HankHuang0516/EClaw/issues/2676)) ([0f01606](https://github.com/HankHuang0516/EClaw/commit/0f016068b963bb5f800a02f28817c7174979d913))
* **rental:** remove phantom 'webhook test push' step from BIND_COMPLETE ([#2864](https://github.com/HankHuang0516/EClaw/issues/2864)) ([47f4a3e](https://github.com/HankHuang0516/EClaw/commit/47f4a3edf76aa95ebd06d8713cd44fda6eef9b5d))
* **i18n:** rename mm_empty_title → mm_state_empty_title in mindmap.html ([#2683](https://github.com/HankHuang0516/EClaw/issues/2683)) ([c79c109](https://github.com/HankHuang0516/EClaw/commit/c79c109bea23142e8a6d9ace976d105af1280ec9))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **chat:** render mention avatars with companion renderer ([#2633](https://github.com/HankHuang0516/EClaw/issues/2633)) ([03e205f](https://github.com/HankHuang0516/EClaw/commit/03e205f663ecd2c2f443d4009dd5af0093f0bbbb))
* **kanban:** reserve mobile comments panel height ([#2782](https://github.com/HankHuang0516/EClaw/issues/2782)) ([ce8662d](https://github.com/HankHuang0516/EClaw/commit/ce8662d362422fdd25037f1deb61dbed9425e2f9))
* **channel:** restore handshake fallback to discovered sessions ([#2915](https://github.com/HankHuang0516/EClaw/issues/2915)) ([#2917](https://github.com/HankHuang0516/EClaw/issues/2917)) ([9d7d3a2](https://github.com/HankHuang0516/EClaw/commit/9d7d3a25654289998314dd5ca152cefdb8a4d64e)), closes [#2912](https://github.com/HankHuang0516/EClaw/issues/2912)
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* scheduled audit 2026-05-13 — 6 bugs, XSS, i18n ([#2668](https://github.com/HankHuang0516/EClaw/issues/2668)) ([21dd513](https://github.com/HankHuang0516/EClaw/commit/21dd513b4464738de29164265437435ba6cc4817)), closes [#2605](https://github.com/HankHuang0516/EClaw/issues/2605) [#2608](https://github.com/HankHuang0516/EClaw/issues/2608) [#2600](https://github.com/HankHuang0516/EClaw/issues/2600) [#2599](https://github.com/HankHuang0516/EClaw/issues/2599) [#2598](https://github.com/HankHuang0516/EClaw/issues/2598)
* **channel:** scope official bot sessions ([#2912](https://github.com/HankHuang0516/EClaw/issues/2912)) ([5c56b62](https://github.com/HankHuang0516/EClaw/commit/5c56b62c13b739b76f39e168a26bd4e5de2644fb))
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **dashboard:** show Claude weekly bar reset countdown ([#2896](https://github.com/HankHuang0516/EClaw/issues/2896)) ([3b87845](https://github.com/HankHuang0516/EClaw/commit/3b87845d713e980fec69f6b8007549338a326713)), closes [#2895](https://github.com/HankHuang0516/EClaw/issues/2895)
* **chat:** smart-chip preview falls back to inline c.comments when /comments fails (PR [#2677](https://github.com/HankHuang0516/EClaw/issues/2677)) ([7f4dffd](https://github.com/HankHuang0516/EClaw/commit/7f4dffd2c83ea86f296b8fa0610f0e67c9f1af11))
* **kanban:** stabilize comment detail viewport ([#2796](https://github.com/HankHuang0516/EClaw/issues/2796)) ([0a10aad](https://github.com/HankHuang0516/EClaw/commit/0a10aadb5a5b12ff23454c16d5c88183b94ad7d7))
* **wallpaper:** stop Android live wallpaper flashing default lobster on companion change ([#2629](https://github.com/HankHuang0516/EClaw/issues/2629)) ([8b4f66f](https://github.com/HankHuang0516/EClaw/commit/8b4f66fcb335bf43128f924b761b6337c817095b)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **chat:** stop chat.html bouncing to dashboard via /api/rental/health-status 401 race ([#2833](https://github.com/HankHuang0516/EClaw/issues/2833)) ([c422406](https://github.com/HankHuang0516/EClaw/commit/c4224067cdcfe7f3e22ab95007c7563dac4196ac))
* **openclaw-channel:** support OpenClaw 2026.5.20 ([8045de6](https://github.com/HankHuang0516/EClaw/commit/8045de6bebecfc05f9bd57453b99c098ca35681b))
* **mentions:** support same-device CJK display-name tags ([#2874](https://github.com/HankHuang0516/EClaw/issues/2874)) ([b8f61be](https://github.com/HankHuang0516/EClaw/commit/b8f61be9a3962fef75dd32ea34e8900880dafaf9))
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **dashboard:** use sessions[].project for widget Projects list (was .project_id) ([#2894](https://github.com/HankHuang0516/EClaw/issues/2894)) ([0fd1334](https://github.com/HankHuang0516/EClaw/commit/0fd1334897d4a603cc6eb74f34b48606547e09cf))
* **app:** WebView pages honor app-selected locale via ?lang= URL param ([#2672](https://github.com/HankHuang0516/EClaw/issues/2672)) ([8ed8757](https://github.com/HankHuang0516/EClaw/commit/8ed8757aec5bf214e837cc0d81bf2b23f1993a91)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **share-chat:** wire rich CTA actions to msgInput ([#2867](https://github.com/HankHuang0516/EClaw/issues/2867)) ([df23b11](https://github.com/HankHuang0516/EClaw/commit/df23b1147d34c59a644a145bbd87c18b96400acc))


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* **usage-api:** /api/usage/{snapshot,timeline} + usage_snapshots table (Plan B Phase 1) ([#2889](https://github.com/HankHuang0516/EClaw/issues/2889)) ([a0d859c](https://github.com/HankHuang0516/EClaw/commit/a0d859c63f0220909dadb2b1952174861ccdce14))
* **community:** 1-click chat button on bot cards + utm tagging ([#2610](https://github.com/HankHuang0516/EClaw/issues/2610)) ([eee97b0](https://github.com/HankHuang0516/EClaw/commit/eee97b0e2e4e74945ec24f218a69a52800b97a66))
* **chat:** accept ?messageId= as deep-link alias ([#2838](https://github.com/HankHuang0516/EClaw/issues/2838)) ([1785a87](https://github.com/HankHuang0516/EClaw/commit/1785a87310426637fd10df83754fb9924c45207f))
* **chat:** add avatar size preference ([#2714](https://github.com/HankHuang0516/EClaw/issues/2714)) ([6fe164a](https://github.com/HankHuang0516/EClaw/commit/6fe164ad8b22fa576d2dd9ad37c0d9fc295b5a83))
* **dashboard:** add Claude and Codex channel guides ([#2640](https://github.com/HankHuang0516/EClaw/issues/2640)) ([c64e4c4](https://github.com/HankHuang0516/EClaw/commit/c64e4c4afc78db58c5cd578f00486dd7b2fd3311))
* **dashboard:** add Claude Code channel guide card ([#2667](https://github.com/HankHuang0516/EClaw/issues/2667)) ([d70d75c](https://github.com/HankHuang0516/EClaw/commit/d70d75c0c8caa8a540358a9aab4556b8c1927a5c))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* **kanban:** add device-scoped card tags ([#2773](https://github.com/HankHuang0516/EClaw/issues/2773)) ([53a387e](https://github.com/HankHuang0516/EClaw/commit/53a387e67ba7bb4f6bed1c427000c4ae8666577a))
* **portal:** add entity selector to petdx-browser ([#2602](https://github.com/HankHuang0516/EClaw/issues/2602)) ([3fa067e](https://github.com/HankHuang0516/EClaw/commit/3fa067e00b38829b48a37cecd33ee81a9a1122d9))
* **kanban:** add explicit card links ([#2721](https://github.com/HankHuang0516/EClaw/issues/2721)) ([ef9f812](https://github.com/HankHuang0516/EClaw/commit/ef9f812a3fcf39efd07fd158ce90951bdd045ac7))
* **kanban:** add explicit done-card reopen flow ([#2801](https://github.com/HankHuang0516/EClaw/issues/2801)) ([5080aac](https://github.com/HankHuang0516/EClaw/commit/5080aacb75047c0deaa379ee708ec85465afd57c))
* **mindmap:** add GET /api/mindmap/graph force-graph projection ([#2680](https://github.com/HankHuang0516/EClaw/issues/2680)) ([a00b2e7](https://github.com/HankHuang0516/EClaw/commit/a00b2e775af2c4c98cd157f760ad87aeeee469f0)), closes [#2679](https://github.com/HankHuang0516/EClaw/issues/2679) [#2679](https://github.com/HankHuang0516/EClaw/issues/2679)
* **dashboard:** add Hermes channel promo card ([#2708](https://github.com/HankHuang0516/EClaw/issues/2708)) ([337aca1](https://github.com/HankHuang0516/EClaw/commit/337aca153d5a1cd7e888c065f00ae54db7872d91))
* **rental:** add listing soft pause ([#2781](https://github.com/HankHuang0516/EClaw/issues/2781)) ([6586b72](https://github.com/HankHuang0516/EClaw/commit/6586b72717ddb1637d91cd3242c8d2ff554f62b4))
* **portal:** add Nagoya 5D4N trip static cross-ref page ([#2689](https://github.com/HankHuang0516/EClaw/issues/2689)) ([2e0efb6](https://github.com/HankHuang0516/EClaw/commit/2e0efb6dcdaff52226cc8854a96747000b12bdff))
* **portal:** add Nagoya trip map links and image lightbox ([#2821](https://github.com/HankHuang0516/EClaw/issues/2821)) ([3e40955](https://github.com/HankHuang0516/EClaw/commit/3e40955650a05f45a6b9f7e39e73847705424a03))
* **portal/nagoya:** add parking shortcut buttons next to itinerary places ([#2826](https://github.com/HankHuang0516/EClaw/issues/2826)) ([63968c5](https://github.com/HankHuang0516/EClaw/commit/63968c554d046afc8d978de74e3aacbf7700500d))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **settings:** add rental roster management preview ([#2758](https://github.com/HankHuang0516/EClaw/issues/2758)) ([9706e59](https://github.com/HankHuang0516/EClaw/commit/9706e59ded140a90a6e02348124282bc69d89001))
* **rental:** add renter health chat indicator ([#2690](https://github.com/HankHuang0516/EClaw/issues/2690)) ([36cd2e9](https://github.com/HankHuang0516/EClaw/commit/36cd2e9802be4c7ebb03d3024617fa74aca48ffd))
* **ios:** add Tutorial & Intro entry in Settings ([#2800](https://github.com/HankHuang0516/EClaw/issues/2800)) ([ed83e51](https://github.com/HankHuang0516/EClaw/commit/ed83e51d043bf4cd5865f38dc95a91ed54820d6c))
* **landing:** add Watch Full Demo CTA below hero video ([#2799](https://github.com/HankHuang0516/EClaw/issues/2799)) ([66107c9](https://github.com/HankHuang0516/EClaw/commit/66107c954727551fd34d989a4674daaad9b63968))
* **footer:** add Watch Intro Video link in Info column ([#2798](https://github.com/HankHuang0516/EClaw/issues/2798)) ([d7c6d59](https://github.com/HankHuang0516/EClaw/commit/d7c6d596b69c6a5b257bf1f7a792a407ef9712ad))
* **i18n:** ar iter-2 — fill 623 missing keys against en source ([#2847](https://github.com/HankHuang0516/EClaw/issues/2847)) ([ee94a7a](https://github.com/HankHuang0516/EClaw/commit/ee94a7ae6812b5163efe4284ee4907ca32302f5c))
* **kanban:** backlog launch-gate flag to suppress L1/L2/L3 escalation ([#2855](https://github.com/HankHuang0516/EClaw/issues/2855)) ([cb8bf1b](https://github.com/HankHuang0516/EClaw/commit/cb8bf1bb6421f25214f65e129a8cadccc49cc266)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#4](https://github.com/HankHuang0516/EClaw/issues/4) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **companion:** bridge crafter-station/petdex gallery (1784 pets) ([#2601](https://github.com/HankHuang0516/EClaw/issues/2601)) ([2e245be](https://github.com/HankHuang0516/EClaw/commit/2e245bea6dd47ea7361b927d389188a3c23b6bb3))
* **promo:** chat avatar size feature landing page (self-hosted MP4) ([#2722](https://github.com/HankHuang0516/EClaw/issues/2722)) ([3852210](https://github.com/HankHuang0516/EClaw/commit/3852210d355704d018e3daca6b5f9512a011b210)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **kanban:** cron-spawn jitter + lane backpressure to prevent same-tick wedge ([#2791](https://github.com/HankHuang0516/EClaw/issues/2791)) ([9f414a7](https://github.com/HankHuang0516/EClaw/commit/9f414a731d6393672a0a4189c7b408c529ae5e12)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **portal:** dashboard usage widget — Claude/Codex 5h gauges + 24h chart (Plan B Phase 3) ([#2891](https://github.com/HankHuang0516/EClaw/issues/2891)) ([d18f373](https://github.com/HankHuang0516/EClaw/commit/d18f373857e4bd302437d6bda2a1e01871fbb1db))
* **portal:** dashboard usage widget v2 — Session/Weekly % bars + projects, no cost (Plan B Phase 3.1) ([#2893](https://github.com/HankHuang0516/EClaw/issues/2893)) ([4bc0dc7](https://github.com/HankHuang0516/EClaw/commit/4bc0dc744ed9d54dfd532ebac4b705c7f84ec0a6))
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **promo:** embed daily eclaw video 2026-05-14 ([#2786](https://github.com/HankHuang0516/EClaw/issues/2786)) ([718a814](https://github.com/HankHuang0516/EClaw/commit/718a814ab16850bc2b33a1b303841e2c4378ecfa)), closes [#2782](https://github.com/HankHuang0516/EClaw/issues/2782) [#2693](https://github.com/HankHuang0516/EClaw/issues/2693)
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **info:** embed promo video at top of Quick Start tab ([#2797](https://github.com/HankHuang0516/EClaw/issues/2797)) ([047679f](https://github.com/HankHuang0516/EClaw/commit/047679fd57ab9949eaeacea414d5611e71afe041))
* **rental:** enforce strict rebind refunds ([#2703](https://github.com/HankHuang0516/EClaw/issues/2703)) ([a1859c5](https://github.com/HankHuang0516/EClaw/commit/a1859c50e6fb3991d7a8051491502d824a14a116))
* **portal:** group task chip actions ([#2825](https://github.com/HankHuang0516/EClaw/issues/2825)) ([5db5c59](https://github.com/HankHuang0516/EClaw/commit/5db5c59b32b8635f1412205faf0c2f9164d3d5d4))
* **portal:** info-guide-rules + info-guide-soul slide pair ([#2793](https://github.com/HankHuang0516/EClaw/issues/2793)) ([1c8bddc](https://github.com/HankHuang0516/EClaw/commit/1c8bddc4c185054b2b60088498e3d45509117127)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **chat:** link card previews to kanban ([#2754](https://github.com/HankHuang0516/EClaw/issues/2754)) ([2261240](https://github.com/HankHuang0516/EClaw/commit/22612402c2e95efb07246629e81a849be41ee9c7))
* **mission:** link notes to kanban cards ([#2723](https://github.com/HankHuang0516/EClaw/issues/2723)) ([b36dc18](https://github.com/HankHuang0516/EClaw/commit/b36dc18f3a8facf12e0b6046351c222f1e99dc55))
* **usage-daemon:** macOS launchd daemon polls Claude/Codex usage → POST /api/usage/snapshot (Plan B Phase 2) ([#2890](https://github.com/HankHuang0516/EClaw/issues/2890)) ([fd225e1](https://github.com/HankHuang0516/EClaw/commit/fd225e12d9491037be1a340bd63b54b5f3308c7f))
* **mindmap:** mission.html link to /portal/mindmap.html + deprecate /api/mission/mindmap ([#2685](https://github.com/HankHuang0516/EClaw/issues/2685)) ([11e297b](https://github.com/HankHuang0516/EClaw/commit/11e297bab1c9b56fcde3027d6500b7c58891bf18)), closes [#2680](https://github.com/HankHuang0516/EClaw/issues/2680) [#2684](https://github.com/HankHuang0516/EClaw/issues/2684)
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **portal:** nagoya trip interactive map (Leaflet + OSM, no API key) ([#2888](https://github.com/HankHuang0516/EClaw/issues/2888)) ([ecfdac0](https://github.com/HankHuang0516/EClaw/commit/ecfdac06348c12ee7c6872c6c28d5f82162e7aa9))
* **channel:** outbound backpressure (30/min cap + 429 retry-after) ([#2911](https://github.com/HankHuang0516/EClaw/issues/2911)) ([36dc99c](https://github.com/HankHuang0516/EClaw/commit/36dc99ca78b0e1724a2aaefb5936669077b7a28f))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **settings:** per-entity nudge override UI (Phase 2) ([#2837](https://github.com/HankHuang0516/EClaw/issues/2837)) ([ea7662b](https://github.com/HankHuang0516/EClaw/commit/ea7662b0858882dae461e1387f711895924f9ab8)), closes [3/#4](https://github.com/HankHuang0516/EClaw/issues/4)
* **kanban:** per-entity nudge overrides (Phase 2 of card_e066cb6b) ([#2836](https://github.com/HankHuang0516/EClaw/issues/2836)) ([0425f80](https://github.com/HankHuang0516/EClaw/commit/0425f80bc1169c0d506b665659c8676695c45553))
* **avatar:** petdx render on card-holder my-cards (Phase 1b) ([#2621](https://github.com/HankHuang0516/EClaw/issues/2621)) ([f78ba8b](https://github.com/HankHuang0516/EClaw/commit/f78ba8b18acc426936ab6d8a82ca7541effea00d))
* **avatar:** petdx render on dashboard entity grid / org chart / bindings (Phase 1b) ([#2622](https://github.com/HankHuang0516/EClaw/issues/2622)) ([f417749](https://github.com/HankHuang0516/EClaw/commit/f41774914451048e8cd76e9ae30416a0642e173b)), closes [#2620](https://github.com/HankHuang0516/EClaw/issues/2620) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621)
* **avatar:** petdx render on kanban auto-assign / pulse / comment avatars (Phase 1b) ([#2624](https://github.com/HankHuang0516/EClaw/issues/2624)) ([6bff5f8](https://github.com/HankHuang0516/EClaw/commit/6bff5f80440d0bd91a6b1721cde9478d685c4d46))
* **avatar:** petdx render on mission skill/rule/soul entity dialogs (Phase 1b) ([#2623](https://github.com/HankHuang0516/EClaw/issues/2623)) ([129327b](https://github.com/HankHuang0516/EClaw/commit/129327bc7b91056659f1ab7e8d5e3f5260d951fb))
* **mindmap:** portal/mindmap.html force-graph prototype ([#129](https://github.com/HankHuang0516/EClaw/issues/129)) ([#2681](https://github.com/HankHuang0516/EClaw/issues/2681)) ([0f15e69](https://github.com/HankHuang0516/EClaw/commit/0f15e6930f0697c37fa08f3219edb8f9e499837f)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **channel:** record delivery receipts ([#2913](https://github.com/HankHuang0516/EClaw/issues/2913)) ([90c671b](https://github.com/HankHuang0516/EClaw/commit/90c671bd1970ab51584b90e2b634484ec10cc7ae))
* **portal:** redo nagoya trip page in professional tour-guide style ([#2691](https://github.com/HankHuang0516/EClaw/issues/2691)) ([b2378c0](https://github.com/HankHuang0516/EClaw/commit/b2378c06ee20fa9cccfdceceb1a4c9e0b3072f59))
* **i18n:** remove ms+hi orphan keys from i18n.js ([#2849](https://github.com/HankHuang0516/EClaw/issues/2849)) ([320176c](https://github.com/HankHuang0516/EClaw/commit/320176c06a3cfd8631e2a82ad02a6bd6a9af0389))
* **avatar:** render selected petdx companion in chat avatars ([#2620](https://github.com/HankHuang0516/EClaw/issues/2620)) ([0bdd046](https://github.com/HankHuang0516/EClaw/commit/0bdd046fe1b1c428e32edda366ff112c08927f4c))
* **home:** replace native home with WebView hosting dashboard.html ([#2634](https://github.com/HankHuang0516/EClaw/issues/2634)) ([e69ea81](https://github.com/HankHuang0516/EClaw/commit/e69ea8160c239b083a83d6dc83a4f1c3f901c863))
* **app:** route chat mission jumps through native tabs ([#2824](https://github.com/HankHuang0516/EClaw/issues/2824)) ([deb07b6](https://github.com/HankHuang0516/EClaw/commit/deb07b69a9ecca632fe27278de537f1d85234e94))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **chat:** support message deep links ([#2719](https://github.com/HankHuang0516/EClaw/issues/2719)) ([2dc0f1e](https://github.com/HankHuang0516/EClaw/commit/2dc0f1eeb259e1a0848db4a03186b989372cd91c))
* **mission:** support note deep links ([#2717](https://github.com/HankHuang0516/EClaw/issues/2717)) ([2efd3a5](https://github.com/HankHuang0516/EClaw/commit/2efd3a5e741217a07c0b0ac54a0ddd010e0ebe23))
* **share-chat:** twitter card + per-bot og:image/twitter:* in SSR ([#2609](https://github.com/HankHuang0516/EClaw/issues/2609)) ([6cdc853](https://github.com/HankHuang0516/EClaw/commit/6cdc853dc884cdb95bd47214942768981f218ae0))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))
* **settings:** wire petdx avatar into channel-account chips ([#2626](https://github.com/HankHuang0516/EClaw/issues/2626)) ([88aec77](https://github.com/HankHuang0516/EClaw/commit/88aec772628c240e97b336bb5820892ad632d1ae))
* **files:** wire petdx avatar into entity filter & per-file badges ([#2627](https://github.com/HankHuang0516/EClaw/issues/2627)) ([5b3e5cc](https://github.com/HankHuang0516/EClaw/commit/5b3e5cc542d9da69bb4e92500fd03a542ea33f00))
* **mindmap:** wrap hardcoded zh-TW UI strings with i18n t() ([#2607](https://github.com/HankHuang0516/EClaw/issues/2607)) ([166af87](https://github.com/HankHuang0516/EClaw/commit/166af8772b2121a24aaf34a83b3de970e9b3b571)), closes [#2606](https://github.com/HankHuang0516/EClaw/issues/2606)
* **i18n:** zh-TW backfill 8 keys (soft-pause + chat + invite + wallet) ([#2815](https://github.com/HankHuang0516/EClaw/issues/2815)) ([a2dd574](https://github.com/HankHuang0516/EClaw/commit/a2dd5743ce8d43a4b6ace9a2fd4b52568180d6c5))


### Performance Improvements

* **mindmap:** force-graph hardening for 1000/2000-node graphs ([#2684](https://github.com/HankHuang0516/EClaw/issues/2684)) ([da8b1c8](https://github.com/HankHuang0516/EClaw/commit/da8b1c8f947ab8bc8fa455c1962a91146623a1fc))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-24)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **notifications:** add kanban_done + kanban_done_auto toggles to Android Settings ([#2636](https://github.com/HankHuang0516/EClaw/issues/2636)) ([a710909](https://github.com/HankHuang0516/EClaw/commit/a7109095e3393b8564e7ef1b23d382a4fbb944b8))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **api:** align /api/platform-stats skill-doc with device-auth contract (card_49b8190) ([#2916](https://github.com/HankHuang0516/EClaw/issues/2916)) ([ee55b2f](https://github.com/HankHuang0516/EClaw/commit/ee55b2fdbfbcd4bead5501d16ee66339056c32d7))
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **i18n:** ar block — fix 27 broken entries (CJK leaks + truncated HTML) ([#2851](https://github.com/HankHuang0516/EClaw/issues/2851)) ([5b19175](https://github.com/HankHuang0516/EClaw/commit/5b19175d712d00d16fcec00b749035c4beae7a5c))
* **chat:** atomic-load target bar (await contacts before first render) ([#2831](https://github.com/HankHuang0516/EClaw/issues/2831)) ([5f529e6](https://github.com/HankHuang0516/EClaw/commit/5f529e6b772eacc38ba1de69b44258a05f0d816a)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2](https://github.com/HankHuang0516/EClaw/issues/2)
* **channel:** await binding persistence ([712516d](https://github.com/HankHuang0516/EClaw/commit/712516decafb745035bd1434a28cc1973d433e19))
* **rental:** bump handshake timeout to 60s + timeout-aware discovery fallback ([#2863](https://github.com/HankHuang0516/EClaw/issues/2863)) ([fd4322f](https://github.com/HankHuang0516/EClaw/commit/fd4322f8890f3c2dfca3acdae6a4b95f19c381f9)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **i18n:** clear batch 1 residual missing keys ([#2790](https://github.com/HankHuang0516/EClaw/issues/2790)) ([211030e](https://github.com/HankHuang0516/EClaw/commit/211030e0b0b6a865c11f0c4ed60dc4e356d43b7a))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **kanban:** comment input no longer overlaps last comment in card detail (PR [#2678](https://github.com/HankHuang0516/EClaw/issues/2678)) ([fba91fc](https://github.com/HankHuang0516/EClaw/commit/fba91fca15402b453a0db5ee857c0b16e6087055))
* **chat:** compact 20px avatar in target bar (App WebView only shows [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2](https://github.com/HankHuang0516/EClaw/issues/2)) ([#2830](https://github.com/HankHuang0516/EClaw/issues/2830)) ([42c7543](https://github.com/HankHuang0516/EClaw/commit/42c7543b4a78a7abf3f5f7535eb9bc6142cd0fe2)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **portal:** complete 401 redirect sweep + mobile UIUX truncation ([#2842](https://github.com/HankHuang0516/EClaw/issues/2842)) ([f9799ba](https://github.com/HankHuang0516/EClaw/commit/f9799ba42498b109f0a8a70e80836aa6da51e216)), closes [#2833](https://github.com/HankHuang0516/EClaw/issues/2833) [#2845](https://github.com/HankHuang0516/EClaw/issues/2845) [#2844](https://github.com/HankHuang0516/EClaw/issues/2844) [#2843](https://github.com/HankHuang0516/EClaw/issues/2843)
* **uiux:** continue qa mobile readability sweep ([#2854](https://github.com/HankHuang0516/EClaw/issues/2854)) ([57606ff](https://github.com/HankHuang0516/EClaw/commit/57606ffe3e543b07a026aacc53c4b470c9a7825b))
* **i18n:** cover dynamic portal wrapper keys ([#2807](https://github.com/HankHuang0516/EClaw/issues/2807)) ([4c711cc](https://github.com/HankHuang0516/EClaw/commit/4c711cc4009300ffe4e8933a98ee01cd0fdd6aeb))
* **i18n:** dedup 20 dash_channel_card_* keys in es block ([#2876](https://github.com/HankHuang0516/EClaw/issues/2876)) ([807284c](https://github.com/HankHuang0516/EClaw/commit/807284ce363ef119ccdb0ae40e5ce99d3f0a27e0))
* **kanban:** dep-aware nudge gating + roadmap dependency backfill ([#2904](https://github.com/HankHuang0516/EClaw/issues/2904)) ([2b76ac9](https://github.com/HankHuang0516/EClaw/commit/2b76ac9d3b7e4169b7bc3c6f6b0b0903b63cd9f7)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **rental:** don't pollute entity.message on push gateway timeout ([#2860](https://github.com/HankHuang0516/EClaw/issues/2860)) ([592ba44](https://github.com/HankHuang0516/EClaw/commit/592ba44f57536ee00011b6cbddaa6b129a7cbae9))
* **petdx:** drop dark-grey loading placeholder + preload sprite WEBP ([#2628](https://github.com/HankHuang0516/EClaw/issues/2628)) ([59cef38](https://github.com/HankHuang0516/EClaw/commit/59cef387bd69ca99d7d15c86a1364856d3849ad8)), closes [#1a1a1a](https://github.com/HankHuang0516/EClaw/issues/1a1a1a)
* **gateway-ws:** drop Origin header on server-to-server WS upgrade ([#2869](https://github.com/HankHuang0516/EClaw/issues/2869)) ([716dcf9](https://github.com/HankHuang0516/EClaw/commit/716dcf9d0834b17522bb9d894bad84bc142d1a19))
* **setup-scripts:** drop Origin header on server-to-server WS upgrade ([#2875](https://github.com/HankHuang0516/EClaw/issues/2875)) ([9d893b8](https://github.com/HankHuang0516/EClaw/commit/9d893b8e5eea4db275e450bf423903c156cd3e4b)), closes [#2869](https://github.com/HankHuang0516/EClaw/issues/2869)
* **security:** escape innerHTML in chat modal error messages ([#2819](https://github.com/HankHuang0516/EClaw/issues/2819)) ([dce07ad](https://github.com/HankHuang0516/EClaw/commit/dce07adde64795916dba977ae23e46f3371ce7ed)), closes [#2809](https://github.com/HankHuang0516/EClaw/issues/2809) [#2810](https://github.com/HankHuang0516/EClaw/issues/2810) [#2809](https://github.com/HankHuang0516/EClaw/issues/2809) [#2810](https://github.com/HankHuang0516/EClaw/issues/2810)
* **entities:** expose botSecret to owner so wallpaper service can poll companions ([#2615](https://github.com/HankHuang0516/EClaw/issues/2615)) ([04470fc](https://github.com/HankHuang0516/EClaw/commit/04470fce8f8c3fce2b1ba8b243e776606f107502))
* **rental:** expose owner_public_code in marketplace so plaza CTA can route ([#2616](https://github.com/HankHuang0516/EClaw/issues/2616)) ([4d1372f](https://github.com/HankHuang0516/EClaw/commit/4d1372f717d93cab65543e87c852e74e9fb67071)), closes [#2610](https://github.com/HankHuang0516/EClaw/issues/2610)
* **mindmap:** fallback to device scope when entityId is null ([#2728](https://github.com/HankHuang0516/EClaw/issues/2728)) ([7572312](https://github.com/HankHuang0516/EClaw/commit/7572312433d3d75fc245eda48a28919ce14bd927))
* **i18n:** fill Spanish drift keys ([#2751](https://github.com/HankHuang0516/EClaw/issues/2751)) ([0ad0ee5](https://github.com/HankHuang0516/EClaw/commit/0ad0ee55f7fac3e6ac46d891539950dab4d553cc))
* **portal:** fit embedded org chart to mobile viewport ([#2674](https://github.com/HankHuang0516/EClaw/issues/2674)) ([1c4e1b4](https://github.com/HankHuang0516/EClaw/commit/1c4e1b413ea7027b4cd4b8ecda981b0d0e12e66b))
* **i18n:** fix 6 trailing-comma syntax errors in 10-locale batch ([#2771](https://github.com/HankHuang0516/EClaw/issues/2771)) ([b27c6ca](https://github.com/HankHuang0516/EClaw/commit/b27c6ca204bf813e406c54ce3a2532a5f1f031b3))
* **kanban:** GET card returns latest 50 comments + comments endpoint exposes total ([#2816](https://github.com/HankHuang0516/EClaw/issues/2816)) ([c4d83f7](https://github.com/HankHuang0516/EClaw/commit/c4d83f777a1cd26aea0936e4316aa35c52822eef))
* **sharechat:** guest verify-email modal + disabled Send for unverified ([#2865](https://github.com/HankHuang0516/EClaw/issues/2865)) ([cb3b061](https://github.com/HankHuang0516/EClaw/commit/cb3b0614e0f6160417d907753e66eceb2d666802))
* **uiux:** harden chat previews and roster preview ([#2769](https://github.com/HankHuang0516/EClaw/issues/2769)) ([466d4d3](https://github.com/HankHuang0516/EClaw/commit/466d4d3ef81c628d3f58db64323946053d7bf61c))
* **mention-parser:** ignore @-mentions inside markdown code spans ([#2645](https://github.com/HankHuang0516/EClaw/issues/2645)) ([8da19d4](https://github.com/HankHuang0516/EClaw/commit/8da19d4a79ceb4152bf2144ee0847c61ce3e1def)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **kanban:** lazy-load dependency chips via IntersectionObserver ([#2632](https://github.com/HankHuang0516/EClaw/issues/2632)) ([20586b4](https://github.com/HankHuang0516/EClaw/commit/20586b43357335f9eb6a190c02d58c8e36b58aba)), closes [#2631](https://github.com/HankHuang0516/EClaw/issues/2631)
* **kanban:** make card sorting deterministic ([#2756](https://github.com/HankHuang0516/EClaw/issues/2756)) ([48e2117](https://github.com/HankHuang0516/EClaw/commit/48e2117b64e37f05dc635e0a3b67bfd43cbe48f5))
* **portal/nagoya-trip:** map-link invisible on dark hero/day-banner ([#2897](https://github.com/HankHuang0516/EClaw/issues/2897)) ([cc33df6](https://github.com/HankHuang0516/EClaw/commit/cc33df686673455c20beaee60871412a5d486e66)), closes [#1f4030](https://github.com/HankHuang0516/EClaw/issues/1f4030) [#8b8579](https://github.com/HankHuang0516/EClaw/issues/8b8579) [#6e6859](https://github.com/HankHuang0516/EClaw/issues/6e6859) [#7a5614](https://github.com/HankHuang0516/EClaw/issues/7a5614)
* **org-chart:** notify affected bots on hierarchy change ([#2812](https://github.com/HankHuang0516/EClaw/issues/2812)) ([55675fd](https://github.com/HankHuang0516/EClaw/commit/55675fdf4487494d729a29524b32bd81b756a00c)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** notify reviewer on manual /move → review ([#2753](https://github.com/HankHuang0516/EClaw/issues/2753)) ([6cbbb4e](https://github.com/HankHuang0516/EClaw/commit/6cbbb4ee8c0d4d8ad54df2e9b5faaa3699bd530f))
* **wallpaper:** off-load spritesheet fetch to IO so per-petdx sprites actually render ([#2618](https://github.com/HankHuang0516/EClaw/issues/2618)) ([61b832c](https://github.com/HankHuang0516/EClaw/commit/61b832c9fa8a1d0caab810ccc942d85c63349267)), closes [#2615](https://github.com/HankHuang0516/EClaw/issues/2615) [#2577](https://github.com/HankHuang0516/EClaw/issues/2577)
* **security:** patch P0 sanitize-html XSS + P1 protobufjs + exam.html XSS ([#2829](https://github.com/HankHuang0516/EClaw/issues/2829)) ([c71b871](https://github.com/HankHuang0516/EClaw/commit/c71b871a045887375dd0d26d1a3280a0891a89ad))
* **security:** patch ws uninitialized memory disclosure (GHSA-58qx-3vcg-4xpx) ([#2872](https://github.com/HankHuang0516/EClaw/issues/2872)) ([2523d15](https://github.com/HankHuang0516/EClaw/commit/2523d154bbe501a7cc086340f7a07ece3abfa69b))
* **portal:** petdx-browser cookie-session fallback for device-login ([#2757](https://github.com/HankHuang0516/EClaw/issues/2757)) ([ca275f4](https://github.com/HankHuang0516/EClaw/commit/ca275f4519835da0c7ad71c588908a18f6f138d8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **api:** platform-stats 500 + entity/lookup publicCode alias ([#2809](https://github.com/HankHuang0516/EClaw/issues/2809), [#2810](https://github.com/HankHuang0516/EClaw/issues/2810)) ([#2818](https://github.com/HankHuang0516/EClaw/issues/2818)) ([f99fd17](https://github.com/HankHuang0516/EClaw/commit/f99fd17b2b1c32d88daa2510ff66d714c1a53edc))
* **i18n:** positional format specifiers for feedback_result_logs (7 locales) ([#2597](https://github.com/HankHuang0516/EClaw/issues/2597)) ([21aedc7](https://github.com/HankHuang0516/EClaw/commit/21aedc7eebc7a2839e340136f38dfdfd4dabb9dc))
* **avatar-petdx:** preserve descriptor across transient API failures (flicker) ([#2625](https://github.com/HankHuang0516/EClaw/issues/2625)) ([7b1c606](https://github.com/HankHuang0516/EClaw/commit/7b1c606514f7698d72ec95cf6c556e4043966186))
* **chat:** preserve recipient selection across rental-health refresh (P0 #card_eb1cba76) ([#2906](https://github.com/HankHuang0516/EClaw/issues/2906)) ([9cc0301](https://github.com/HankHuang0516/EClaw/commit/9cc0301cc26a0f49af4b7f53486f5c1a7cdd7902)), closes [#card_eb1cba76](https://github.com/HankHuang0516/EClaw/issues/card_eb1cba76) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **chat:** preserve scroll anchor while reading history ([#2693](https://github.com/HankHuang0516/EClaw/issues/2693)) ([945fdb7](https://github.com/HankHuang0516/EClaw/commit/945fdb7192b791b31882e1e75568dd8b11e4686f))
* **promo:** pull video embed from /promo-chat-avatar.html ([#2724](https://github.com/HankHuang0516/EClaw/issues/2724)) ([2afabc8](https://github.com/HankHuang0516/EClaw/commit/2afabc8c5ff8b25218a7cb857e8adfa572c8e9d5))
* **dashboard:** read live.rate_limits.{five_hour,seven_day}.used_percentage ([#2895](https://github.com/HankHuang0516/EClaw/issues/2895)) ([8223303](https://github.com/HankHuang0516/EClaw/commit/822330312bccb1c76675ad2c3b26e78d10dd1298))
* **kanban:** realign stale recurring schedules ([#2785](https://github.com/HankHuang0516/EClaw/issues/2785)) ([ab8ee25](https://github.com/HankHuang0516/EClaw/commit/ab8ee250a9b37f3d3e838bb01d8866c8d2b78231))
* **portal:** reduce QA-discovered request fanout ([#2656](https://github.com/HankHuang0516/EClaw/issues/2656)) ([1e46d6b](https://github.com/HankHuang0516/EClaw/commit/1e46d6bab61e58c65b452b6503d953f8dddeee75))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **portal:** remove org chart fit scale floor ([#2676](https://github.com/HankHuang0516/EClaw/issues/2676)) ([0f01606](https://github.com/HankHuang0516/EClaw/commit/0f016068b963bb5f800a02f28817c7174979d913))
* **rental:** remove phantom 'webhook test push' step from BIND_COMPLETE ([#2864](https://github.com/HankHuang0516/EClaw/issues/2864)) ([47f4a3e](https://github.com/HankHuang0516/EClaw/commit/47f4a3edf76aa95ebd06d8713cd44fda6eef9b5d))
* **i18n:** rename mm_empty_title → mm_state_empty_title in mindmap.html ([#2683](https://github.com/HankHuang0516/EClaw/issues/2683)) ([c79c109](https://github.com/HankHuang0516/EClaw/commit/c79c109bea23142e8a6d9ace976d105af1280ec9))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **chat:** render mention avatars with companion renderer ([#2633](https://github.com/HankHuang0516/EClaw/issues/2633)) ([03e205f](https://github.com/HankHuang0516/EClaw/commit/03e205f663ecd2c2f443d4009dd5af0093f0bbbb))
* **kanban:** reserve mobile comments panel height ([#2782](https://github.com/HankHuang0516/EClaw/issues/2782)) ([ce8662d](https://github.com/HankHuang0516/EClaw/commit/ce8662d362422fdd25037f1deb61dbed9425e2f9))
* **channel:** restore handshake fallback to discovered sessions ([#2915](https://github.com/HankHuang0516/EClaw/issues/2915)) ([#2917](https://github.com/HankHuang0516/EClaw/issues/2917)) ([9d7d3a2](https://github.com/HankHuang0516/EClaw/commit/9d7d3a25654289998314dd5ca152cefdb8a4d64e)), closes [#2912](https://github.com/HankHuang0516/EClaw/issues/2912)
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* scheduled audit 2026-05-13 — 6 bugs, XSS, i18n ([#2668](https://github.com/HankHuang0516/EClaw/issues/2668)) ([21dd513](https://github.com/HankHuang0516/EClaw/commit/21dd513b4464738de29164265437435ba6cc4817)), closes [#2605](https://github.com/HankHuang0516/EClaw/issues/2605) [#2608](https://github.com/HankHuang0516/EClaw/issues/2608) [#2600](https://github.com/HankHuang0516/EClaw/issues/2600) [#2599](https://github.com/HankHuang0516/EClaw/issues/2599) [#2598](https://github.com/HankHuang0516/EClaw/issues/2598)
* **channel:** scope official bot sessions ([#2912](https://github.com/HankHuang0516/EClaw/issues/2912)) ([5c56b62](https://github.com/HankHuang0516/EClaw/commit/5c56b62c13b739b76f39e168a26bd4e5de2644fb))
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **dashboard:** show Claude weekly bar reset countdown ([#2896](https://github.com/HankHuang0516/EClaw/issues/2896)) ([3b87845](https://github.com/HankHuang0516/EClaw/commit/3b87845d713e980fec69f6b8007549338a326713)), closes [#2895](https://github.com/HankHuang0516/EClaw/issues/2895)
* **chat:** smart-chip preview falls back to inline c.comments when /comments fails (PR [#2677](https://github.com/HankHuang0516/EClaw/issues/2677)) ([7f4dffd](https://github.com/HankHuang0516/EClaw/commit/7f4dffd2c83ea86f296b8fa0610f0e67c9f1af11))
* **kanban:** stabilize comment detail viewport ([#2796](https://github.com/HankHuang0516/EClaw/issues/2796)) ([0a10aad](https://github.com/HankHuang0516/EClaw/commit/0a10aadb5a5b12ff23454c16d5c88183b94ad7d7))
* **wallpaper:** stop Android live wallpaper flashing default lobster on companion change ([#2629](https://github.com/HankHuang0516/EClaw/issues/2629)) ([8b4f66f](https://github.com/HankHuang0516/EClaw/commit/8b4f66fcb335bf43128f924b761b6337c817095b)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **chat:** stop chat.html bouncing to dashboard via /api/rental/health-status 401 race ([#2833](https://github.com/HankHuang0516/EClaw/issues/2833)) ([c422406](https://github.com/HankHuang0516/EClaw/commit/c4224067cdcfe7f3e22ab95007c7563dac4196ac))
* **openclaw-channel:** support OpenClaw 2026.5.20 ([8045de6](https://github.com/HankHuang0516/EClaw/commit/8045de6bebecfc05f9bd57453b99c098ca35681b))
* **mentions:** support same-device CJK display-name tags ([#2874](https://github.com/HankHuang0516/EClaw/issues/2874)) ([b8f61be](https://github.com/HankHuang0516/EClaw/commit/b8f61be9a3962fef75dd32ea34e8900880dafaf9))
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **dashboard:** use sessions[].project for widget Projects list (was .project_id) ([#2894](https://github.com/HankHuang0516/EClaw/issues/2894)) ([0fd1334](https://github.com/HankHuang0516/EClaw/commit/0fd1334897d4a603cc6eb74f34b48606547e09cf))
* **app:** WebView pages honor app-selected locale via ?lang= URL param ([#2672](https://github.com/HankHuang0516/EClaw/issues/2672)) ([8ed8757](https://github.com/HankHuang0516/EClaw/commit/8ed8757aec5bf214e837cc0d81bf2b23f1993a91)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **share-chat:** wire rich CTA actions to msgInput ([#2867](https://github.com/HankHuang0516/EClaw/issues/2867)) ([df23b11](https://github.com/HankHuang0516/EClaw/commit/df23b1147d34c59a644a145bbd87c18b96400acc))


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* **usage-api:** /api/usage/{snapshot,timeline} + usage_snapshots table (Plan B Phase 1) ([#2889](https://github.com/HankHuang0516/EClaw/issues/2889)) ([a0d859c](https://github.com/HankHuang0516/EClaw/commit/a0d859c63f0220909dadb2b1952174861ccdce14))
* **community:** 1-click chat button on bot cards + utm tagging ([#2610](https://github.com/HankHuang0516/EClaw/issues/2610)) ([eee97b0](https://github.com/HankHuang0516/EClaw/commit/eee97b0e2e4e74945ec24f218a69a52800b97a66))
* **chat:** accept ?messageId= as deep-link alias ([#2838](https://github.com/HankHuang0516/EClaw/issues/2838)) ([1785a87](https://github.com/HankHuang0516/EClaw/commit/1785a87310426637fd10df83754fb9924c45207f))
* **chat:** add avatar size preference ([#2714](https://github.com/HankHuang0516/EClaw/issues/2714)) ([6fe164a](https://github.com/HankHuang0516/EClaw/commit/6fe164ad8b22fa576d2dd9ad37c0d9fc295b5a83))
* **dashboard:** add Claude and Codex channel guides ([#2640](https://github.com/HankHuang0516/EClaw/issues/2640)) ([c64e4c4](https://github.com/HankHuang0516/EClaw/commit/c64e4c4afc78db58c5cd578f00486dd7b2fd3311))
* **dashboard:** add Claude Code channel guide card ([#2667](https://github.com/HankHuang0516/EClaw/issues/2667)) ([d70d75c](https://github.com/HankHuang0516/EClaw/commit/d70d75c0c8caa8a540358a9aab4556b8c1927a5c))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* **kanban:** add device-scoped card tags ([#2773](https://github.com/HankHuang0516/EClaw/issues/2773)) ([53a387e](https://github.com/HankHuang0516/EClaw/commit/53a387e67ba7bb4f6bed1c427000c4ae8666577a))
* **portal:** add entity selector to petdx-browser ([#2602](https://github.com/HankHuang0516/EClaw/issues/2602)) ([3fa067e](https://github.com/HankHuang0516/EClaw/commit/3fa067e00b38829b48a37cecd33ee81a9a1122d9))
* **kanban:** add explicit card links ([#2721](https://github.com/HankHuang0516/EClaw/issues/2721)) ([ef9f812](https://github.com/HankHuang0516/EClaw/commit/ef9f812a3fcf39efd07fd158ce90951bdd045ac7))
* **kanban:** add explicit done-card reopen flow ([#2801](https://github.com/HankHuang0516/EClaw/issues/2801)) ([5080aac](https://github.com/HankHuang0516/EClaw/commit/5080aacb75047c0deaa379ee708ec85465afd57c))
* **mindmap:** add GET /api/mindmap/graph force-graph projection ([#2680](https://github.com/HankHuang0516/EClaw/issues/2680)) ([a00b2e7](https://github.com/HankHuang0516/EClaw/commit/a00b2e775af2c4c98cd157f760ad87aeeee469f0)), closes [#2679](https://github.com/HankHuang0516/EClaw/issues/2679) [#2679](https://github.com/HankHuang0516/EClaw/issues/2679)
* **dashboard:** add Hermes channel promo card ([#2708](https://github.com/HankHuang0516/EClaw/issues/2708)) ([337aca1](https://github.com/HankHuang0516/EClaw/commit/337aca153d5a1cd7e888c065f00ae54db7872d91))
* **rental:** add listing soft pause ([#2781](https://github.com/HankHuang0516/EClaw/issues/2781)) ([6586b72](https://github.com/HankHuang0516/EClaw/commit/6586b72717ddb1637d91cd3242c8d2ff554f62b4))
* **portal:** add Nagoya 5D4N trip static cross-ref page ([#2689](https://github.com/HankHuang0516/EClaw/issues/2689)) ([2e0efb6](https://github.com/HankHuang0516/EClaw/commit/2e0efb6dcdaff52226cc8854a96747000b12bdff))
* **portal:** add Nagoya trip map links and image lightbox ([#2821](https://github.com/HankHuang0516/EClaw/issues/2821)) ([3e40955](https://github.com/HankHuang0516/EClaw/commit/3e40955650a05f45a6b9f7e39e73847705424a03))
* **portal/nagoya:** add parking shortcut buttons next to itinerary places ([#2826](https://github.com/HankHuang0516/EClaw/issues/2826)) ([63968c5](https://github.com/HankHuang0516/EClaw/commit/63968c554d046afc8d978de74e3aacbf7700500d))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **settings:** add rental roster management preview ([#2758](https://github.com/HankHuang0516/EClaw/issues/2758)) ([9706e59](https://github.com/HankHuang0516/EClaw/commit/9706e59ded140a90a6e02348124282bc69d89001))
* **rental:** add renter health chat indicator ([#2690](https://github.com/HankHuang0516/EClaw/issues/2690)) ([36cd2e9](https://github.com/HankHuang0516/EClaw/commit/36cd2e9802be4c7ebb03d3024617fa74aca48ffd))
* **ios:** add Tutorial & Intro entry in Settings ([#2800](https://github.com/HankHuang0516/EClaw/issues/2800)) ([ed83e51](https://github.com/HankHuang0516/EClaw/commit/ed83e51d043bf4cd5865f38dc95a91ed54820d6c))
* **landing:** add Watch Full Demo CTA below hero video ([#2799](https://github.com/HankHuang0516/EClaw/issues/2799)) ([66107c9](https://github.com/HankHuang0516/EClaw/commit/66107c954727551fd34d989a4674daaad9b63968))
* **footer:** add Watch Intro Video link in Info column ([#2798](https://github.com/HankHuang0516/EClaw/issues/2798)) ([d7c6d59](https://github.com/HankHuang0516/EClaw/commit/d7c6d596b69c6a5b257bf1f7a792a407ef9712ad))
* **i18n:** ar iter-2 — fill 623 missing keys against en source ([#2847](https://github.com/HankHuang0516/EClaw/issues/2847)) ([ee94a7a](https://github.com/HankHuang0516/EClaw/commit/ee94a7ae6812b5163efe4284ee4907ca32302f5c))
* **kanban:** backlog launch-gate flag to suppress L1/L2/L3 escalation ([#2855](https://github.com/HankHuang0516/EClaw/issues/2855)) ([cb8bf1b](https://github.com/HankHuang0516/EClaw/commit/cb8bf1bb6421f25214f65e129a8cadccc49cc266)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#4](https://github.com/HankHuang0516/EClaw/issues/4) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **companion:** bridge crafter-station/petdex gallery (1784 pets) ([#2601](https://github.com/HankHuang0516/EClaw/issues/2601)) ([2e245be](https://github.com/HankHuang0516/EClaw/commit/2e245bea6dd47ea7361b927d389188a3c23b6bb3))
* **promo:** chat avatar size feature landing page (self-hosted MP4) ([#2722](https://github.com/HankHuang0516/EClaw/issues/2722)) ([3852210](https://github.com/HankHuang0516/EClaw/commit/3852210d355704d018e3daca6b5f9512a011b210)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **kanban:** cron-spawn jitter + lane backpressure to prevent same-tick wedge ([#2791](https://github.com/HankHuang0516/EClaw/issues/2791)) ([9f414a7](https://github.com/HankHuang0516/EClaw/commit/9f414a731d6393672a0a4189c7b408c529ae5e12)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **portal:** dashboard usage widget — Claude/Codex 5h gauges + 24h chart (Plan B Phase 3) ([#2891](https://github.com/HankHuang0516/EClaw/issues/2891)) ([d18f373](https://github.com/HankHuang0516/EClaw/commit/d18f373857e4bd302437d6bda2a1e01871fbb1db))
* **portal:** dashboard usage widget v2 — Session/Weekly % bars + projects, no cost (Plan B Phase 3.1) ([#2893](https://github.com/HankHuang0516/EClaw/issues/2893)) ([4bc0dc7](https://github.com/HankHuang0516/EClaw/commit/4bc0dc744ed9d54dfd532ebac4b705c7f84ec0a6))
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **promo:** embed daily eclaw video 2026-05-14 ([#2786](https://github.com/HankHuang0516/EClaw/issues/2786)) ([718a814](https://github.com/HankHuang0516/EClaw/commit/718a814ab16850bc2b33a1b303841e2c4378ecfa)), closes [#2782](https://github.com/HankHuang0516/EClaw/issues/2782) [#2693](https://github.com/HankHuang0516/EClaw/issues/2693)
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **info:** embed promo video at top of Quick Start tab ([#2797](https://github.com/HankHuang0516/EClaw/issues/2797)) ([047679f](https://github.com/HankHuang0516/EClaw/commit/047679fd57ab9949eaeacea414d5611e71afe041))
* **rental:** enforce strict rebind refunds ([#2703](https://github.com/HankHuang0516/EClaw/issues/2703)) ([a1859c5](https://github.com/HankHuang0516/EClaw/commit/a1859c50e6fb3991d7a8051491502d824a14a116))
* **portal:** group task chip actions ([#2825](https://github.com/HankHuang0516/EClaw/issues/2825)) ([5db5c59](https://github.com/HankHuang0516/EClaw/commit/5db5c59b32b8635f1412205faf0c2f9164d3d5d4))
* **portal:** info-guide-rules + info-guide-soul slide pair ([#2793](https://github.com/HankHuang0516/EClaw/issues/2793)) ([1c8bddc](https://github.com/HankHuang0516/EClaw/commit/1c8bddc4c185054b2b60088498e3d45509117127)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **chat:** link card previews to kanban ([#2754](https://github.com/HankHuang0516/EClaw/issues/2754)) ([2261240](https://github.com/HankHuang0516/EClaw/commit/22612402c2e95efb07246629e81a849be41ee9c7))
* **mission:** link notes to kanban cards ([#2723](https://github.com/HankHuang0516/EClaw/issues/2723)) ([b36dc18](https://github.com/HankHuang0516/EClaw/commit/b36dc18f3a8facf12e0b6046351c222f1e99dc55))
* **usage-daemon:** macOS launchd daemon polls Claude/Codex usage → POST /api/usage/snapshot (Plan B Phase 2) ([#2890](https://github.com/HankHuang0516/EClaw/issues/2890)) ([fd225e1](https://github.com/HankHuang0516/EClaw/commit/fd225e12d9491037be1a340bd63b54b5f3308c7f))
* **mindmap:** mission.html link to /portal/mindmap.html + deprecate /api/mission/mindmap ([#2685](https://github.com/HankHuang0516/EClaw/issues/2685)) ([11e297b](https://github.com/HankHuang0516/EClaw/commit/11e297bab1c9b56fcde3027d6500b7c58891bf18)), closes [#2680](https://github.com/HankHuang0516/EClaw/issues/2680) [#2684](https://github.com/HankHuang0516/EClaw/issues/2684)
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **portal:** nagoya trip interactive map (Leaflet + OSM, no API key) ([#2888](https://github.com/HankHuang0516/EClaw/issues/2888)) ([ecfdac0](https://github.com/HankHuang0516/EClaw/commit/ecfdac06348c12ee7c6872c6c28d5f82162e7aa9))
* **channel:** outbound backpressure (30/min cap + 429 retry-after) ([#2911](https://github.com/HankHuang0516/EClaw/issues/2911)) ([36dc99c](https://github.com/HankHuang0516/EClaw/commit/36dc99ca78b0e1724a2aaefb5936669077b7a28f))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **settings:** per-entity nudge override UI (Phase 2) ([#2837](https://github.com/HankHuang0516/EClaw/issues/2837)) ([ea7662b](https://github.com/HankHuang0516/EClaw/commit/ea7662b0858882dae461e1387f711895924f9ab8)), closes [3/#4](https://github.com/HankHuang0516/EClaw/issues/4)
* **kanban:** per-entity nudge overrides (Phase 2 of card_e066cb6b) ([#2836](https://github.com/HankHuang0516/EClaw/issues/2836)) ([0425f80](https://github.com/HankHuang0516/EClaw/commit/0425f80bc1169c0d506b665659c8676695c45553))
* **avatar:** petdx render on card-holder my-cards (Phase 1b) ([#2621](https://github.com/HankHuang0516/EClaw/issues/2621)) ([f78ba8b](https://github.com/HankHuang0516/EClaw/commit/f78ba8b18acc426936ab6d8a82ca7541effea00d))
* **avatar:** petdx render on dashboard entity grid / org chart / bindings (Phase 1b) ([#2622](https://github.com/HankHuang0516/EClaw/issues/2622)) ([f417749](https://github.com/HankHuang0516/EClaw/commit/f41774914451048e8cd76e9ae30416a0642e173b)), closes [#2620](https://github.com/HankHuang0516/EClaw/issues/2620) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621)
* **avatar:** petdx render on kanban auto-assign / pulse / comment avatars (Phase 1b) ([#2624](https://github.com/HankHuang0516/EClaw/issues/2624)) ([6bff5f8](https://github.com/HankHuang0516/EClaw/commit/6bff5f80440d0bd91a6b1721cde9478d685c4d46))
* **avatar:** petdx render on mission skill/rule/soul entity dialogs (Phase 1b) ([#2623](https://github.com/HankHuang0516/EClaw/issues/2623)) ([129327b](https://github.com/HankHuang0516/EClaw/commit/129327bc7b91056659f1ab7e8d5e3f5260d951fb))
* **mindmap:** portal/mindmap.html force-graph prototype ([#129](https://github.com/HankHuang0516/EClaw/issues/129)) ([#2681](https://github.com/HankHuang0516/EClaw/issues/2681)) ([0f15e69](https://github.com/HankHuang0516/EClaw/commit/0f15e6930f0697c37fa08f3219edb8f9e499837f)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **channel:** record delivery receipts ([#2913](https://github.com/HankHuang0516/EClaw/issues/2913)) ([90c671b](https://github.com/HankHuang0516/EClaw/commit/90c671bd1970ab51584b90e2b634484ec10cc7ae))
* **portal:** redo nagoya trip page in professional tour-guide style ([#2691](https://github.com/HankHuang0516/EClaw/issues/2691)) ([b2378c0](https://github.com/HankHuang0516/EClaw/commit/b2378c06ee20fa9cccfdceceb1a4c9e0b3072f59))
* **i18n:** remove ms+hi orphan keys from i18n.js ([#2849](https://github.com/HankHuang0516/EClaw/issues/2849)) ([320176c](https://github.com/HankHuang0516/EClaw/commit/320176c06a3cfd8631e2a82ad02a6bd6a9af0389))
* **avatar:** render selected petdx companion in chat avatars ([#2620](https://github.com/HankHuang0516/EClaw/issues/2620)) ([0bdd046](https://github.com/HankHuang0516/EClaw/commit/0bdd046fe1b1c428e32edda366ff112c08927f4c))
* **home:** replace native home with WebView hosting dashboard.html ([#2634](https://github.com/HankHuang0516/EClaw/issues/2634)) ([e69ea81](https://github.com/HankHuang0516/EClaw/commit/e69ea8160c239b083a83d6dc83a4f1c3f901c863))
* **app:** route chat mission jumps through native tabs ([#2824](https://github.com/HankHuang0516/EClaw/issues/2824)) ([deb07b6](https://github.com/HankHuang0516/EClaw/commit/deb07b69a9ecca632fe27278de537f1d85234e94))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **chat:** support message deep links ([#2719](https://github.com/HankHuang0516/EClaw/issues/2719)) ([2dc0f1e](https://github.com/HankHuang0516/EClaw/commit/2dc0f1eeb259e1a0848db4a03186b989372cd91c))
* **mission:** support note deep links ([#2717](https://github.com/HankHuang0516/EClaw/issues/2717)) ([2efd3a5](https://github.com/HankHuang0516/EClaw/commit/2efd3a5e741217a07c0b0ac54a0ddd010e0ebe23))
* **share-chat:** twitter card + per-bot og:image/twitter:* in SSR ([#2609](https://github.com/HankHuang0516/EClaw/issues/2609)) ([6cdc853](https://github.com/HankHuang0516/EClaw/commit/6cdc853dc884cdb95bd47214942768981f218ae0))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))
* **settings:** wire petdx avatar into channel-account chips ([#2626](https://github.com/HankHuang0516/EClaw/issues/2626)) ([88aec77](https://github.com/HankHuang0516/EClaw/commit/88aec772628c240e97b336bb5820892ad632d1ae))
* **files:** wire petdx avatar into entity filter & per-file badges ([#2627](https://github.com/HankHuang0516/EClaw/issues/2627)) ([5b3e5cc](https://github.com/HankHuang0516/EClaw/commit/5b3e5cc542d9da69bb4e92500fd03a542ea33f00))
* **mindmap:** wrap hardcoded zh-TW UI strings with i18n t() ([#2607](https://github.com/HankHuang0516/EClaw/issues/2607)) ([166af87](https://github.com/HankHuang0516/EClaw/commit/166af8772b2121a24aaf34a83b3de970e9b3b571)), closes [#2606](https://github.com/HankHuang0516/EClaw/issues/2606)
* **i18n:** zh-TW backfill 8 keys (soft-pause + chat + invite + wallet) ([#2815](https://github.com/HankHuang0516/EClaw/issues/2815)) ([a2dd574](https://github.com/HankHuang0516/EClaw/commit/a2dd5743ce8d43a4b6ace9a2fd4b52568180d6c5))


### Performance Improvements

* **mindmap:** force-graph hardening for 1000/2000-node graphs ([#2684](https://github.com/HankHuang0516/EClaw/issues/2684)) ([da8b1c8](https://github.com/HankHuang0516/EClaw/commit/da8b1c8f947ab8bc8fa455c1962a91146623a1fc))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-24)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **notifications:** add kanban_done + kanban_done_auto toggles to Android Settings ([#2636](https://github.com/HankHuang0516/EClaw/issues/2636)) ([a710909](https://github.com/HankHuang0516/EClaw/commit/a7109095e3393b8564e7ef1b23d382a4fbb944b8))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **i18n:** ar block — fix 27 broken entries (CJK leaks + truncated HTML) ([#2851](https://github.com/HankHuang0516/EClaw/issues/2851)) ([5b19175](https://github.com/HankHuang0516/EClaw/commit/5b19175d712d00d16fcec00b749035c4beae7a5c))
* **chat:** atomic-load target bar (await contacts before first render) ([#2831](https://github.com/HankHuang0516/EClaw/issues/2831)) ([5f529e6](https://github.com/HankHuang0516/EClaw/commit/5f529e6b772eacc38ba1de69b44258a05f0d816a)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2](https://github.com/HankHuang0516/EClaw/issues/2)
* **channel:** await binding persistence ([712516d](https://github.com/HankHuang0516/EClaw/commit/712516decafb745035bd1434a28cc1973d433e19))
* **rental:** bump handshake timeout to 60s + timeout-aware discovery fallback ([#2863](https://github.com/HankHuang0516/EClaw/issues/2863)) ([fd4322f](https://github.com/HankHuang0516/EClaw/commit/fd4322f8890f3c2dfca3acdae6a4b95f19c381f9)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **i18n:** clear batch 1 residual missing keys ([#2790](https://github.com/HankHuang0516/EClaw/issues/2790)) ([211030e](https://github.com/HankHuang0516/EClaw/commit/211030e0b0b6a865c11f0c4ed60dc4e356d43b7a))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **kanban:** comment input no longer overlaps last comment in card detail (PR [#2678](https://github.com/HankHuang0516/EClaw/issues/2678)) ([fba91fc](https://github.com/HankHuang0516/EClaw/commit/fba91fca15402b453a0db5ee857c0b16e6087055))
* **chat:** compact 20px avatar in target bar (App WebView only shows [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2](https://github.com/HankHuang0516/EClaw/issues/2)) ([#2830](https://github.com/HankHuang0516/EClaw/issues/2830)) ([42c7543](https://github.com/HankHuang0516/EClaw/commit/42c7543b4a78a7abf3f5f7535eb9bc6142cd0fe2)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **portal:** complete 401 redirect sweep + mobile UIUX truncation ([#2842](https://github.com/HankHuang0516/EClaw/issues/2842)) ([f9799ba](https://github.com/HankHuang0516/EClaw/commit/f9799ba42498b109f0a8a70e80836aa6da51e216)), closes [#2833](https://github.com/HankHuang0516/EClaw/issues/2833) [#2845](https://github.com/HankHuang0516/EClaw/issues/2845) [#2844](https://github.com/HankHuang0516/EClaw/issues/2844) [#2843](https://github.com/HankHuang0516/EClaw/issues/2843)
* **uiux:** continue qa mobile readability sweep ([#2854](https://github.com/HankHuang0516/EClaw/issues/2854)) ([57606ff](https://github.com/HankHuang0516/EClaw/commit/57606ffe3e543b07a026aacc53c4b470c9a7825b))
* **i18n:** cover dynamic portal wrapper keys ([#2807](https://github.com/HankHuang0516/EClaw/issues/2807)) ([4c711cc](https://github.com/HankHuang0516/EClaw/commit/4c711cc4009300ffe4e8933a98ee01cd0fdd6aeb))
* **i18n:** dedup 20 dash_channel_card_* keys in es block ([#2876](https://github.com/HankHuang0516/EClaw/issues/2876)) ([807284c](https://github.com/HankHuang0516/EClaw/commit/807284ce363ef119ccdb0ae40e5ce99d3f0a27e0))
* **kanban:** dep-aware nudge gating + roadmap dependency backfill ([#2904](https://github.com/HankHuang0516/EClaw/issues/2904)) ([2b76ac9](https://github.com/HankHuang0516/EClaw/commit/2b76ac9d3b7e4169b7bc3c6f6b0b0903b63cd9f7)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **rental:** don't pollute entity.message on push gateway timeout ([#2860](https://github.com/HankHuang0516/EClaw/issues/2860)) ([592ba44](https://github.com/HankHuang0516/EClaw/commit/592ba44f57536ee00011b6cbddaa6b129a7cbae9))
* **petdx:** drop dark-grey loading placeholder + preload sprite WEBP ([#2628](https://github.com/HankHuang0516/EClaw/issues/2628)) ([59cef38](https://github.com/HankHuang0516/EClaw/commit/59cef387bd69ca99d7d15c86a1364856d3849ad8)), closes [#1a1a1a](https://github.com/HankHuang0516/EClaw/issues/1a1a1a)
* **gateway-ws:** drop Origin header on server-to-server WS upgrade ([#2869](https://github.com/HankHuang0516/EClaw/issues/2869)) ([716dcf9](https://github.com/HankHuang0516/EClaw/commit/716dcf9d0834b17522bb9d894bad84bc142d1a19))
* **setup-scripts:** drop Origin header on server-to-server WS upgrade ([#2875](https://github.com/HankHuang0516/EClaw/issues/2875)) ([9d893b8](https://github.com/HankHuang0516/EClaw/commit/9d893b8e5eea4db275e450bf423903c156cd3e4b)), closes [#2869](https://github.com/HankHuang0516/EClaw/issues/2869)
* **security:** escape innerHTML in chat modal error messages ([#2819](https://github.com/HankHuang0516/EClaw/issues/2819)) ([dce07ad](https://github.com/HankHuang0516/EClaw/commit/dce07adde64795916dba977ae23e46f3371ce7ed)), closes [#2809](https://github.com/HankHuang0516/EClaw/issues/2809) [#2810](https://github.com/HankHuang0516/EClaw/issues/2810) [#2809](https://github.com/HankHuang0516/EClaw/issues/2809) [#2810](https://github.com/HankHuang0516/EClaw/issues/2810)
* **entities:** expose botSecret to owner so wallpaper service can poll companions ([#2615](https://github.com/HankHuang0516/EClaw/issues/2615)) ([04470fc](https://github.com/HankHuang0516/EClaw/commit/04470fce8f8c3fce2b1ba8b243e776606f107502))
* **rental:** expose owner_public_code in marketplace so plaza CTA can route ([#2616](https://github.com/HankHuang0516/EClaw/issues/2616)) ([4d1372f](https://github.com/HankHuang0516/EClaw/commit/4d1372f717d93cab65543e87c852e74e9fb67071)), closes [#2610](https://github.com/HankHuang0516/EClaw/issues/2610)
* **mindmap:** fallback to device scope when entityId is null ([#2728](https://github.com/HankHuang0516/EClaw/issues/2728)) ([7572312](https://github.com/HankHuang0516/EClaw/commit/7572312433d3d75fc245eda48a28919ce14bd927))
* **i18n:** fill Spanish drift keys ([#2751](https://github.com/HankHuang0516/EClaw/issues/2751)) ([0ad0ee5](https://github.com/HankHuang0516/EClaw/commit/0ad0ee55f7fac3e6ac46d891539950dab4d553cc))
* **portal:** fit embedded org chart to mobile viewport ([#2674](https://github.com/HankHuang0516/EClaw/issues/2674)) ([1c4e1b4](https://github.com/HankHuang0516/EClaw/commit/1c4e1b413ea7027b4cd4b8ecda981b0d0e12e66b))
* **i18n:** fix 6 trailing-comma syntax errors in 10-locale batch ([#2771](https://github.com/HankHuang0516/EClaw/issues/2771)) ([b27c6ca](https://github.com/HankHuang0516/EClaw/commit/b27c6ca204bf813e406c54ce3a2532a5f1f031b3))
* **kanban:** GET card returns latest 50 comments + comments endpoint exposes total ([#2816](https://github.com/HankHuang0516/EClaw/issues/2816)) ([c4d83f7](https://github.com/HankHuang0516/EClaw/commit/c4d83f777a1cd26aea0936e4316aa35c52822eef))
* **sharechat:** guest verify-email modal + disabled Send for unverified ([#2865](https://github.com/HankHuang0516/EClaw/issues/2865)) ([cb3b061](https://github.com/HankHuang0516/EClaw/commit/cb3b0614e0f6160417d907753e66eceb2d666802))
* **uiux:** harden chat previews and roster preview ([#2769](https://github.com/HankHuang0516/EClaw/issues/2769)) ([466d4d3](https://github.com/HankHuang0516/EClaw/commit/466d4d3ef81c628d3f58db64323946053d7bf61c))
* **mention-parser:** ignore @-mentions inside markdown code spans ([#2645](https://github.com/HankHuang0516/EClaw/issues/2645)) ([8da19d4](https://github.com/HankHuang0516/EClaw/commit/8da19d4a79ceb4152bf2144ee0847c61ce3e1def)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **kanban:** lazy-load dependency chips via IntersectionObserver ([#2632](https://github.com/HankHuang0516/EClaw/issues/2632)) ([20586b4](https://github.com/HankHuang0516/EClaw/commit/20586b43357335f9eb6a190c02d58c8e36b58aba)), closes [#2631](https://github.com/HankHuang0516/EClaw/issues/2631)
* **kanban:** make card sorting deterministic ([#2756](https://github.com/HankHuang0516/EClaw/issues/2756)) ([48e2117](https://github.com/HankHuang0516/EClaw/commit/48e2117b64e37f05dc635e0a3b67bfd43cbe48f5))
* **portal/nagoya-trip:** map-link invisible on dark hero/day-banner ([#2897](https://github.com/HankHuang0516/EClaw/issues/2897)) ([cc33df6](https://github.com/HankHuang0516/EClaw/commit/cc33df686673455c20beaee60871412a5d486e66)), closes [#1f4030](https://github.com/HankHuang0516/EClaw/issues/1f4030) [#8b8579](https://github.com/HankHuang0516/EClaw/issues/8b8579) [#6e6859](https://github.com/HankHuang0516/EClaw/issues/6e6859) [#7a5614](https://github.com/HankHuang0516/EClaw/issues/7a5614)
* **org-chart:** notify affected bots on hierarchy change ([#2812](https://github.com/HankHuang0516/EClaw/issues/2812)) ([55675fd](https://github.com/HankHuang0516/EClaw/commit/55675fdf4487494d729a29524b32bd81b756a00c)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** notify reviewer on manual /move → review ([#2753](https://github.com/HankHuang0516/EClaw/issues/2753)) ([6cbbb4e](https://github.com/HankHuang0516/EClaw/commit/6cbbb4ee8c0d4d8ad54df2e9b5faaa3699bd530f))
* **wallpaper:** off-load spritesheet fetch to IO so per-petdx sprites actually render ([#2618](https://github.com/HankHuang0516/EClaw/issues/2618)) ([61b832c](https://github.com/HankHuang0516/EClaw/commit/61b832c9fa8a1d0caab810ccc942d85c63349267)), closes [#2615](https://github.com/HankHuang0516/EClaw/issues/2615) [#2577](https://github.com/HankHuang0516/EClaw/issues/2577)
* **security:** patch P0 sanitize-html XSS + P1 protobufjs + exam.html XSS ([#2829](https://github.com/HankHuang0516/EClaw/issues/2829)) ([c71b871](https://github.com/HankHuang0516/EClaw/commit/c71b871a045887375dd0d26d1a3280a0891a89ad))
* **security:** patch ws uninitialized memory disclosure (GHSA-58qx-3vcg-4xpx) ([#2872](https://github.com/HankHuang0516/EClaw/issues/2872)) ([2523d15](https://github.com/HankHuang0516/EClaw/commit/2523d154bbe501a7cc086340f7a07ece3abfa69b))
* **portal:** petdx-browser cookie-session fallback for device-login ([#2757](https://github.com/HankHuang0516/EClaw/issues/2757)) ([ca275f4](https://github.com/HankHuang0516/EClaw/commit/ca275f4519835da0c7ad71c588908a18f6f138d8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **api:** platform-stats 500 + entity/lookup publicCode alias ([#2809](https://github.com/HankHuang0516/EClaw/issues/2809), [#2810](https://github.com/HankHuang0516/EClaw/issues/2810)) ([#2818](https://github.com/HankHuang0516/EClaw/issues/2818)) ([f99fd17](https://github.com/HankHuang0516/EClaw/commit/f99fd17b2b1c32d88daa2510ff66d714c1a53edc))
* **i18n:** positional format specifiers for feedback_result_logs (7 locales) ([#2597](https://github.com/HankHuang0516/EClaw/issues/2597)) ([21aedc7](https://github.com/HankHuang0516/EClaw/commit/21aedc7eebc7a2839e340136f38dfdfd4dabb9dc))
* **avatar-petdx:** preserve descriptor across transient API failures (flicker) ([#2625](https://github.com/HankHuang0516/EClaw/issues/2625)) ([7b1c606](https://github.com/HankHuang0516/EClaw/commit/7b1c606514f7698d72ec95cf6c556e4043966186))
* **chat:** preserve recipient selection across rental-health refresh (P0 #card_eb1cba76) ([#2906](https://github.com/HankHuang0516/EClaw/issues/2906)) ([9cc0301](https://github.com/HankHuang0516/EClaw/commit/9cc0301cc26a0f49af4b7f53486f5c1a7cdd7902)), closes [#card_eb1cba76](https://github.com/HankHuang0516/EClaw/issues/card_eb1cba76) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **chat:** preserve scroll anchor while reading history ([#2693](https://github.com/HankHuang0516/EClaw/issues/2693)) ([945fdb7](https://github.com/HankHuang0516/EClaw/commit/945fdb7192b791b31882e1e75568dd8b11e4686f))
* **promo:** pull video embed from /promo-chat-avatar.html ([#2724](https://github.com/HankHuang0516/EClaw/issues/2724)) ([2afabc8](https://github.com/HankHuang0516/EClaw/commit/2afabc8c5ff8b25218a7cb857e8adfa572c8e9d5))
* **dashboard:** read live.rate_limits.{five_hour,seven_day}.used_percentage ([#2895](https://github.com/HankHuang0516/EClaw/issues/2895)) ([8223303](https://github.com/HankHuang0516/EClaw/commit/822330312bccb1c76675ad2c3b26e78d10dd1298))
* **kanban:** realign stale recurring schedules ([#2785](https://github.com/HankHuang0516/EClaw/issues/2785)) ([ab8ee25](https://github.com/HankHuang0516/EClaw/commit/ab8ee250a9b37f3d3e838bb01d8866c8d2b78231))
* **portal:** reduce QA-discovered request fanout ([#2656](https://github.com/HankHuang0516/EClaw/issues/2656)) ([1e46d6b](https://github.com/HankHuang0516/EClaw/commit/1e46d6bab61e58c65b452b6503d953f8dddeee75))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **portal:** remove org chart fit scale floor ([#2676](https://github.com/HankHuang0516/EClaw/issues/2676)) ([0f01606](https://github.com/HankHuang0516/EClaw/commit/0f016068b963bb5f800a02f28817c7174979d913))
* **rental:** remove phantom 'webhook test push' step from BIND_COMPLETE ([#2864](https://github.com/HankHuang0516/EClaw/issues/2864)) ([47f4a3e](https://github.com/HankHuang0516/EClaw/commit/47f4a3edf76aa95ebd06d8713cd44fda6eef9b5d))
* **i18n:** rename mm_empty_title → mm_state_empty_title in mindmap.html ([#2683](https://github.com/HankHuang0516/EClaw/issues/2683)) ([c79c109](https://github.com/HankHuang0516/EClaw/commit/c79c109bea23142e8a6d9ace976d105af1280ec9))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **chat:** render mention avatars with companion renderer ([#2633](https://github.com/HankHuang0516/EClaw/issues/2633)) ([03e205f](https://github.com/HankHuang0516/EClaw/commit/03e205f663ecd2c2f443d4009dd5af0093f0bbbb))
* **kanban:** reserve mobile comments panel height ([#2782](https://github.com/HankHuang0516/EClaw/issues/2782)) ([ce8662d](https://github.com/HankHuang0516/EClaw/commit/ce8662d362422fdd25037f1deb61dbed9425e2f9))
* **channel:** restore handshake fallback to discovered sessions ([#2915](https://github.com/HankHuang0516/EClaw/issues/2915)) ([#2917](https://github.com/HankHuang0516/EClaw/issues/2917)) ([9d7d3a2](https://github.com/HankHuang0516/EClaw/commit/9d7d3a25654289998314dd5ca152cefdb8a4d64e)), closes [#2912](https://github.com/HankHuang0516/EClaw/issues/2912)
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* scheduled audit 2026-05-13 — 6 bugs, XSS, i18n ([#2668](https://github.com/HankHuang0516/EClaw/issues/2668)) ([21dd513](https://github.com/HankHuang0516/EClaw/commit/21dd513b4464738de29164265437435ba6cc4817)), closes [#2605](https://github.com/HankHuang0516/EClaw/issues/2605) [#2608](https://github.com/HankHuang0516/EClaw/issues/2608) [#2600](https://github.com/HankHuang0516/EClaw/issues/2600) [#2599](https://github.com/HankHuang0516/EClaw/issues/2599) [#2598](https://github.com/HankHuang0516/EClaw/issues/2598)
* **channel:** scope official bot sessions ([#2912](https://github.com/HankHuang0516/EClaw/issues/2912)) ([5c56b62](https://github.com/HankHuang0516/EClaw/commit/5c56b62c13b739b76f39e168a26bd4e5de2644fb))
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **dashboard:** show Claude weekly bar reset countdown ([#2896](https://github.com/HankHuang0516/EClaw/issues/2896)) ([3b87845](https://github.com/HankHuang0516/EClaw/commit/3b87845d713e980fec69f6b8007549338a326713)), closes [#2895](https://github.com/HankHuang0516/EClaw/issues/2895)
* **chat:** smart-chip preview falls back to inline c.comments when /comments fails (PR [#2677](https://github.com/HankHuang0516/EClaw/issues/2677)) ([7f4dffd](https://github.com/HankHuang0516/EClaw/commit/7f4dffd2c83ea86f296b8fa0610f0e67c9f1af11))
* **kanban:** stabilize comment detail viewport ([#2796](https://github.com/HankHuang0516/EClaw/issues/2796)) ([0a10aad](https://github.com/HankHuang0516/EClaw/commit/0a10aadb5a5b12ff23454c16d5c88183b94ad7d7))
* **wallpaper:** stop Android live wallpaper flashing default lobster on companion change ([#2629](https://github.com/HankHuang0516/EClaw/issues/2629)) ([8b4f66f](https://github.com/HankHuang0516/EClaw/commit/8b4f66fcb335bf43128f924b761b6337c817095b)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **chat:** stop chat.html bouncing to dashboard via /api/rental/health-status 401 race ([#2833](https://github.com/HankHuang0516/EClaw/issues/2833)) ([c422406](https://github.com/HankHuang0516/EClaw/commit/c4224067cdcfe7f3e22ab95007c7563dac4196ac))
* **openclaw-channel:** support OpenClaw 2026.5.20 ([8045de6](https://github.com/HankHuang0516/EClaw/commit/8045de6bebecfc05f9bd57453b99c098ca35681b))
* **mentions:** support same-device CJK display-name tags ([#2874](https://github.com/HankHuang0516/EClaw/issues/2874)) ([b8f61be](https://github.com/HankHuang0516/EClaw/commit/b8f61be9a3962fef75dd32ea34e8900880dafaf9))
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **dashboard:** use sessions[].project for widget Projects list (was .project_id) ([#2894](https://github.com/HankHuang0516/EClaw/issues/2894)) ([0fd1334](https://github.com/HankHuang0516/EClaw/commit/0fd1334897d4a603cc6eb74f34b48606547e09cf))
* **app:** WebView pages honor app-selected locale via ?lang= URL param ([#2672](https://github.com/HankHuang0516/EClaw/issues/2672)) ([8ed8757](https://github.com/HankHuang0516/EClaw/commit/8ed8757aec5bf214e837cc0d81bf2b23f1993a91)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **share-chat:** wire rich CTA actions to msgInput ([#2867](https://github.com/HankHuang0516/EClaw/issues/2867)) ([df23b11](https://github.com/HankHuang0516/EClaw/commit/df23b1147d34c59a644a145bbd87c18b96400acc))


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* **usage-api:** /api/usage/{snapshot,timeline} + usage_snapshots table (Plan B Phase 1) ([#2889](https://github.com/HankHuang0516/EClaw/issues/2889)) ([a0d859c](https://github.com/HankHuang0516/EClaw/commit/a0d859c63f0220909dadb2b1952174861ccdce14))
* **community:** 1-click chat button on bot cards + utm tagging ([#2610](https://github.com/HankHuang0516/EClaw/issues/2610)) ([eee97b0](https://github.com/HankHuang0516/EClaw/commit/eee97b0e2e4e74945ec24f218a69a52800b97a66))
* **chat:** accept ?messageId= as deep-link alias ([#2838](https://github.com/HankHuang0516/EClaw/issues/2838)) ([1785a87](https://github.com/HankHuang0516/EClaw/commit/1785a87310426637fd10df83754fb9924c45207f))
* **chat:** add avatar size preference ([#2714](https://github.com/HankHuang0516/EClaw/issues/2714)) ([6fe164a](https://github.com/HankHuang0516/EClaw/commit/6fe164ad8b22fa576d2dd9ad37c0d9fc295b5a83))
* **dashboard:** add Claude and Codex channel guides ([#2640](https://github.com/HankHuang0516/EClaw/issues/2640)) ([c64e4c4](https://github.com/HankHuang0516/EClaw/commit/c64e4c4afc78db58c5cd578f00486dd7b2fd3311))
* **dashboard:** add Claude Code channel guide card ([#2667](https://github.com/HankHuang0516/EClaw/issues/2667)) ([d70d75c](https://github.com/HankHuang0516/EClaw/commit/d70d75c0c8caa8a540358a9aab4556b8c1927a5c))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* **kanban:** add device-scoped card tags ([#2773](https://github.com/HankHuang0516/EClaw/issues/2773)) ([53a387e](https://github.com/HankHuang0516/EClaw/commit/53a387e67ba7bb4f6bed1c427000c4ae8666577a))
* **portal:** add entity selector to petdx-browser ([#2602](https://github.com/HankHuang0516/EClaw/issues/2602)) ([3fa067e](https://github.com/HankHuang0516/EClaw/commit/3fa067e00b38829b48a37cecd33ee81a9a1122d9))
* **kanban:** add explicit card links ([#2721](https://github.com/HankHuang0516/EClaw/issues/2721)) ([ef9f812](https://github.com/HankHuang0516/EClaw/commit/ef9f812a3fcf39efd07fd158ce90951bdd045ac7))
* **kanban:** add explicit done-card reopen flow ([#2801](https://github.com/HankHuang0516/EClaw/issues/2801)) ([5080aac](https://github.com/HankHuang0516/EClaw/commit/5080aacb75047c0deaa379ee708ec85465afd57c))
* **mindmap:** add GET /api/mindmap/graph force-graph projection ([#2680](https://github.com/HankHuang0516/EClaw/issues/2680)) ([a00b2e7](https://github.com/HankHuang0516/EClaw/commit/a00b2e775af2c4c98cd157f760ad87aeeee469f0)), closes [#2679](https://github.com/HankHuang0516/EClaw/issues/2679) [#2679](https://github.com/HankHuang0516/EClaw/issues/2679)
* **dashboard:** add Hermes channel promo card ([#2708](https://github.com/HankHuang0516/EClaw/issues/2708)) ([337aca1](https://github.com/HankHuang0516/EClaw/commit/337aca153d5a1cd7e888c065f00ae54db7872d91))
* **rental:** add listing soft pause ([#2781](https://github.com/HankHuang0516/EClaw/issues/2781)) ([6586b72](https://github.com/HankHuang0516/EClaw/commit/6586b72717ddb1637d91cd3242c8d2ff554f62b4))
* **portal:** add Nagoya 5D4N trip static cross-ref page ([#2689](https://github.com/HankHuang0516/EClaw/issues/2689)) ([2e0efb6](https://github.com/HankHuang0516/EClaw/commit/2e0efb6dcdaff52226cc8854a96747000b12bdff))
* **portal:** add Nagoya trip map links and image lightbox ([#2821](https://github.com/HankHuang0516/EClaw/issues/2821)) ([3e40955](https://github.com/HankHuang0516/EClaw/commit/3e40955650a05f45a6b9f7e39e73847705424a03))
* **portal/nagoya:** add parking shortcut buttons next to itinerary places ([#2826](https://github.com/HankHuang0516/EClaw/issues/2826)) ([63968c5](https://github.com/HankHuang0516/EClaw/commit/63968c554d046afc8d978de74e3aacbf7700500d))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **settings:** add rental roster management preview ([#2758](https://github.com/HankHuang0516/EClaw/issues/2758)) ([9706e59](https://github.com/HankHuang0516/EClaw/commit/9706e59ded140a90a6e02348124282bc69d89001))
* **rental:** add renter health chat indicator ([#2690](https://github.com/HankHuang0516/EClaw/issues/2690)) ([36cd2e9](https://github.com/HankHuang0516/EClaw/commit/36cd2e9802be4c7ebb03d3024617fa74aca48ffd))
* **ios:** add Tutorial & Intro entry in Settings ([#2800](https://github.com/HankHuang0516/EClaw/issues/2800)) ([ed83e51](https://github.com/HankHuang0516/EClaw/commit/ed83e51d043bf4cd5865f38dc95a91ed54820d6c))
* **landing:** add Watch Full Demo CTA below hero video ([#2799](https://github.com/HankHuang0516/EClaw/issues/2799)) ([66107c9](https://github.com/HankHuang0516/EClaw/commit/66107c954727551fd34d989a4674daaad9b63968))
* **footer:** add Watch Intro Video link in Info column ([#2798](https://github.com/HankHuang0516/EClaw/issues/2798)) ([d7c6d59](https://github.com/HankHuang0516/EClaw/commit/d7c6d596b69c6a5b257bf1f7a792a407ef9712ad))
* **i18n:** ar iter-2 — fill 623 missing keys against en source ([#2847](https://github.com/HankHuang0516/EClaw/issues/2847)) ([ee94a7a](https://github.com/HankHuang0516/EClaw/commit/ee94a7ae6812b5163efe4284ee4907ca32302f5c))
* **kanban:** backlog launch-gate flag to suppress L1/L2/L3 escalation ([#2855](https://github.com/HankHuang0516/EClaw/issues/2855)) ([cb8bf1b](https://github.com/HankHuang0516/EClaw/commit/cb8bf1bb6421f25214f65e129a8cadccc49cc266)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#4](https://github.com/HankHuang0516/EClaw/issues/4) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **companion:** bridge crafter-station/petdex gallery (1784 pets) ([#2601](https://github.com/HankHuang0516/EClaw/issues/2601)) ([2e245be](https://github.com/HankHuang0516/EClaw/commit/2e245bea6dd47ea7361b927d389188a3c23b6bb3))
* **promo:** chat avatar size feature landing page (self-hosted MP4) ([#2722](https://github.com/HankHuang0516/EClaw/issues/2722)) ([3852210](https://github.com/HankHuang0516/EClaw/commit/3852210d355704d018e3daca6b5f9512a011b210)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **kanban:** cron-spawn jitter + lane backpressure to prevent same-tick wedge ([#2791](https://github.com/HankHuang0516/EClaw/issues/2791)) ([9f414a7](https://github.com/HankHuang0516/EClaw/commit/9f414a731d6393672a0a4189c7b408c529ae5e12)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **portal:** dashboard usage widget — Claude/Codex 5h gauges + 24h chart (Plan B Phase 3) ([#2891](https://github.com/HankHuang0516/EClaw/issues/2891)) ([d18f373](https://github.com/HankHuang0516/EClaw/commit/d18f373857e4bd302437d6bda2a1e01871fbb1db))
* **portal:** dashboard usage widget v2 — Session/Weekly % bars + projects, no cost (Plan B Phase 3.1) ([#2893](https://github.com/HankHuang0516/EClaw/issues/2893)) ([4bc0dc7](https://github.com/HankHuang0516/EClaw/commit/4bc0dc744ed9d54dfd532ebac4b705c7f84ec0a6))
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **promo:** embed daily eclaw video 2026-05-14 ([#2786](https://github.com/HankHuang0516/EClaw/issues/2786)) ([718a814](https://github.com/HankHuang0516/EClaw/commit/718a814ab16850bc2b33a1b303841e2c4378ecfa)), closes [#2782](https://github.com/HankHuang0516/EClaw/issues/2782) [#2693](https://github.com/HankHuang0516/EClaw/issues/2693)
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **info:** embed promo video at top of Quick Start tab ([#2797](https://github.com/HankHuang0516/EClaw/issues/2797)) ([047679f](https://github.com/HankHuang0516/EClaw/commit/047679fd57ab9949eaeacea414d5611e71afe041))
* **rental:** enforce strict rebind refunds ([#2703](https://github.com/HankHuang0516/EClaw/issues/2703)) ([a1859c5](https://github.com/HankHuang0516/EClaw/commit/a1859c50e6fb3991d7a8051491502d824a14a116))
* **portal:** group task chip actions ([#2825](https://github.com/HankHuang0516/EClaw/issues/2825)) ([5db5c59](https://github.com/HankHuang0516/EClaw/commit/5db5c59b32b8635f1412205faf0c2f9164d3d5d4))
* **portal:** info-guide-rules + info-guide-soul slide pair ([#2793](https://github.com/HankHuang0516/EClaw/issues/2793)) ([1c8bddc](https://github.com/HankHuang0516/EClaw/commit/1c8bddc4c185054b2b60088498e3d45509117127)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **chat:** link card previews to kanban ([#2754](https://github.com/HankHuang0516/EClaw/issues/2754)) ([2261240](https://github.com/HankHuang0516/EClaw/commit/22612402c2e95efb07246629e81a849be41ee9c7))
* **mission:** link notes to kanban cards ([#2723](https://github.com/HankHuang0516/EClaw/issues/2723)) ([b36dc18](https://github.com/HankHuang0516/EClaw/commit/b36dc18f3a8facf12e0b6046351c222f1e99dc55))
* **usage-daemon:** macOS launchd daemon polls Claude/Codex usage → POST /api/usage/snapshot (Plan B Phase 2) ([#2890](https://github.com/HankHuang0516/EClaw/issues/2890)) ([fd225e1](https://github.com/HankHuang0516/EClaw/commit/fd225e12d9491037be1a340bd63b54b5f3308c7f))
* **mindmap:** mission.html link to /portal/mindmap.html + deprecate /api/mission/mindmap ([#2685](https://github.com/HankHuang0516/EClaw/issues/2685)) ([11e297b](https://github.com/HankHuang0516/EClaw/commit/11e297bab1c9b56fcde3027d6500b7c58891bf18)), closes [#2680](https://github.com/HankHuang0516/EClaw/issues/2680) [#2684](https://github.com/HankHuang0516/EClaw/issues/2684)
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **portal:** nagoya trip interactive map (Leaflet + OSM, no API key) ([#2888](https://github.com/HankHuang0516/EClaw/issues/2888)) ([ecfdac0](https://github.com/HankHuang0516/EClaw/commit/ecfdac06348c12ee7c6872c6c28d5f82162e7aa9))
* **channel:** outbound backpressure (30/min cap + 429 retry-after) ([#2911](https://github.com/HankHuang0516/EClaw/issues/2911)) ([36dc99c](https://github.com/HankHuang0516/EClaw/commit/36dc99ca78b0e1724a2aaefb5936669077b7a28f))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **settings:** per-entity nudge override UI (Phase 2) ([#2837](https://github.com/HankHuang0516/EClaw/issues/2837)) ([ea7662b](https://github.com/HankHuang0516/EClaw/commit/ea7662b0858882dae461e1387f711895924f9ab8)), closes [3/#4](https://github.com/HankHuang0516/EClaw/issues/4)
* **kanban:** per-entity nudge overrides (Phase 2 of card_e066cb6b) ([#2836](https://github.com/HankHuang0516/EClaw/issues/2836)) ([0425f80](https://github.com/HankHuang0516/EClaw/commit/0425f80bc1169c0d506b665659c8676695c45553))
* **avatar:** petdx render on card-holder my-cards (Phase 1b) ([#2621](https://github.com/HankHuang0516/EClaw/issues/2621)) ([f78ba8b](https://github.com/HankHuang0516/EClaw/commit/f78ba8b18acc426936ab6d8a82ca7541effea00d))
* **avatar:** petdx render on dashboard entity grid / org chart / bindings (Phase 1b) ([#2622](https://github.com/HankHuang0516/EClaw/issues/2622)) ([f417749](https://github.com/HankHuang0516/EClaw/commit/f41774914451048e8cd76e9ae30416a0642e173b)), closes [#2620](https://github.com/HankHuang0516/EClaw/issues/2620) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621)
* **avatar:** petdx render on kanban auto-assign / pulse / comment avatars (Phase 1b) ([#2624](https://github.com/HankHuang0516/EClaw/issues/2624)) ([6bff5f8](https://github.com/HankHuang0516/EClaw/commit/6bff5f80440d0bd91a6b1721cde9478d685c4d46))
* **avatar:** petdx render on mission skill/rule/soul entity dialogs (Phase 1b) ([#2623](https://github.com/HankHuang0516/EClaw/issues/2623)) ([129327b](https://github.com/HankHuang0516/EClaw/commit/129327bc7b91056659f1ab7e8d5e3f5260d951fb))
* **mindmap:** portal/mindmap.html force-graph prototype ([#129](https://github.com/HankHuang0516/EClaw/issues/129)) ([#2681](https://github.com/HankHuang0516/EClaw/issues/2681)) ([0f15e69](https://github.com/HankHuang0516/EClaw/commit/0f15e6930f0697c37fa08f3219edb8f9e499837f)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **channel:** record delivery receipts ([#2913](https://github.com/HankHuang0516/EClaw/issues/2913)) ([90c671b](https://github.com/HankHuang0516/EClaw/commit/90c671bd1970ab51584b90e2b634484ec10cc7ae))
* **portal:** redo nagoya trip page in professional tour-guide style ([#2691](https://github.com/HankHuang0516/EClaw/issues/2691)) ([b2378c0](https://github.com/HankHuang0516/EClaw/commit/b2378c06ee20fa9cccfdceceb1a4c9e0b3072f59))
* **i18n:** remove ms+hi orphan keys from i18n.js ([#2849](https://github.com/HankHuang0516/EClaw/issues/2849)) ([320176c](https://github.com/HankHuang0516/EClaw/commit/320176c06a3cfd8631e2a82ad02a6bd6a9af0389))
* **avatar:** render selected petdx companion in chat avatars ([#2620](https://github.com/HankHuang0516/EClaw/issues/2620)) ([0bdd046](https://github.com/HankHuang0516/EClaw/commit/0bdd046fe1b1c428e32edda366ff112c08927f4c))
* **home:** replace native home with WebView hosting dashboard.html ([#2634](https://github.com/HankHuang0516/EClaw/issues/2634)) ([e69ea81](https://github.com/HankHuang0516/EClaw/commit/e69ea8160c239b083a83d6dc83a4f1c3f901c863))
* **app:** route chat mission jumps through native tabs ([#2824](https://github.com/HankHuang0516/EClaw/issues/2824)) ([deb07b6](https://github.com/HankHuang0516/EClaw/commit/deb07b69a9ecca632fe27278de537f1d85234e94))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **chat:** support message deep links ([#2719](https://github.com/HankHuang0516/EClaw/issues/2719)) ([2dc0f1e](https://github.com/HankHuang0516/EClaw/commit/2dc0f1eeb259e1a0848db4a03186b989372cd91c))
* **mission:** support note deep links ([#2717](https://github.com/HankHuang0516/EClaw/issues/2717)) ([2efd3a5](https://github.com/HankHuang0516/EClaw/commit/2efd3a5e741217a07c0b0ac54a0ddd010e0ebe23))
* **share-chat:** twitter card + per-bot og:image/twitter:* in SSR ([#2609](https://github.com/HankHuang0516/EClaw/issues/2609)) ([6cdc853](https://github.com/HankHuang0516/EClaw/commit/6cdc853dc884cdb95bd47214942768981f218ae0))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))
* **settings:** wire petdx avatar into channel-account chips ([#2626](https://github.com/HankHuang0516/EClaw/issues/2626)) ([88aec77](https://github.com/HankHuang0516/EClaw/commit/88aec772628c240e97b336bb5820892ad632d1ae))
* **files:** wire petdx avatar into entity filter & per-file badges ([#2627](https://github.com/HankHuang0516/EClaw/issues/2627)) ([5b3e5cc](https://github.com/HankHuang0516/EClaw/commit/5b3e5cc542d9da69bb4e92500fd03a542ea33f00))
* **mindmap:** wrap hardcoded zh-TW UI strings with i18n t() ([#2607](https://github.com/HankHuang0516/EClaw/issues/2607)) ([166af87](https://github.com/HankHuang0516/EClaw/commit/166af8772b2121a24aaf34a83b3de970e9b3b571)), closes [#2606](https://github.com/HankHuang0516/EClaw/issues/2606)
* **i18n:** zh-TW backfill 8 keys (soft-pause + chat + invite + wallet) ([#2815](https://github.com/HankHuang0516/EClaw/issues/2815)) ([a2dd574](https://github.com/HankHuang0516/EClaw/commit/a2dd5743ce8d43a4b6ace9a2fd4b52568180d6c5))


### Performance Improvements

* **mindmap:** force-graph hardening for 1000/2000-node graphs ([#2684](https://github.com/HankHuang0516/EClaw/issues/2684)) ([da8b1c8](https://github.com/HankHuang0516/EClaw/commit/da8b1c8f947ab8bc8fa455c1962a91146623a1fc))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-24)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **notifications:** add kanban_done + kanban_done_auto toggles to Android Settings ([#2636](https://github.com/HankHuang0516/EClaw/issues/2636)) ([a710909](https://github.com/HankHuang0516/EClaw/commit/a7109095e3393b8564e7ef1b23d382a4fbb944b8))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **i18n:** ar block — fix 27 broken entries (CJK leaks + truncated HTML) ([#2851](https://github.com/HankHuang0516/EClaw/issues/2851)) ([5b19175](https://github.com/HankHuang0516/EClaw/commit/5b19175d712d00d16fcec00b749035c4beae7a5c))
* **chat:** atomic-load target bar (await contacts before first render) ([#2831](https://github.com/HankHuang0516/EClaw/issues/2831)) ([5f529e6](https://github.com/HankHuang0516/EClaw/commit/5f529e6b772eacc38ba1de69b44258a05f0d816a)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2](https://github.com/HankHuang0516/EClaw/issues/2)
* **channel:** await binding persistence ([712516d](https://github.com/HankHuang0516/EClaw/commit/712516decafb745035bd1434a28cc1973d433e19))
* **rental:** bump handshake timeout to 60s + timeout-aware discovery fallback ([#2863](https://github.com/HankHuang0516/EClaw/issues/2863)) ([fd4322f](https://github.com/HankHuang0516/EClaw/commit/fd4322f8890f3c2dfca3acdae6a4b95f19c381f9)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **i18n:** clear batch 1 residual missing keys ([#2790](https://github.com/HankHuang0516/EClaw/issues/2790)) ([211030e](https://github.com/HankHuang0516/EClaw/commit/211030e0b0b6a865c11f0c4ed60dc4e356d43b7a))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **kanban:** comment input no longer overlaps last comment in card detail (PR [#2678](https://github.com/HankHuang0516/EClaw/issues/2678)) ([fba91fc](https://github.com/HankHuang0516/EClaw/commit/fba91fca15402b453a0db5ee857c0b16e6087055))
* **chat:** compact 20px avatar in target bar (App WebView only shows [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2](https://github.com/HankHuang0516/EClaw/issues/2)) ([#2830](https://github.com/HankHuang0516/EClaw/issues/2830)) ([42c7543](https://github.com/HankHuang0516/EClaw/commit/42c7543b4a78a7abf3f5f7535eb9bc6142cd0fe2)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **portal:** complete 401 redirect sweep + mobile UIUX truncation ([#2842](https://github.com/HankHuang0516/EClaw/issues/2842)) ([f9799ba](https://github.com/HankHuang0516/EClaw/commit/f9799ba42498b109f0a8a70e80836aa6da51e216)), closes [#2833](https://github.com/HankHuang0516/EClaw/issues/2833) [#2845](https://github.com/HankHuang0516/EClaw/issues/2845) [#2844](https://github.com/HankHuang0516/EClaw/issues/2844) [#2843](https://github.com/HankHuang0516/EClaw/issues/2843)
* **uiux:** continue qa mobile readability sweep ([#2854](https://github.com/HankHuang0516/EClaw/issues/2854)) ([57606ff](https://github.com/HankHuang0516/EClaw/commit/57606ffe3e543b07a026aacc53c4b470c9a7825b))
* **i18n:** cover dynamic portal wrapper keys ([#2807](https://github.com/HankHuang0516/EClaw/issues/2807)) ([4c711cc](https://github.com/HankHuang0516/EClaw/commit/4c711cc4009300ffe4e8933a98ee01cd0fdd6aeb))
* **i18n:** dedup 20 dash_channel_card_* keys in es block ([#2876](https://github.com/HankHuang0516/EClaw/issues/2876)) ([807284c](https://github.com/HankHuang0516/EClaw/commit/807284ce363ef119ccdb0ae40e5ce99d3f0a27e0))
* **kanban:** dep-aware nudge gating + roadmap dependency backfill ([#2904](https://github.com/HankHuang0516/EClaw/issues/2904)) ([2b76ac9](https://github.com/HankHuang0516/EClaw/commit/2b76ac9d3b7e4169b7bc3c6f6b0b0903b63cd9f7)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **rental:** don't pollute entity.message on push gateway timeout ([#2860](https://github.com/HankHuang0516/EClaw/issues/2860)) ([592ba44](https://github.com/HankHuang0516/EClaw/commit/592ba44f57536ee00011b6cbddaa6b129a7cbae9))
* **petdx:** drop dark-grey loading placeholder + preload sprite WEBP ([#2628](https://github.com/HankHuang0516/EClaw/issues/2628)) ([59cef38](https://github.com/HankHuang0516/EClaw/commit/59cef387bd69ca99d7d15c86a1364856d3849ad8)), closes [#1a1a1a](https://github.com/HankHuang0516/EClaw/issues/1a1a1a)
* **gateway-ws:** drop Origin header on server-to-server WS upgrade ([#2869](https://github.com/HankHuang0516/EClaw/issues/2869)) ([716dcf9](https://github.com/HankHuang0516/EClaw/commit/716dcf9d0834b17522bb9d894bad84bc142d1a19))
* **setup-scripts:** drop Origin header on server-to-server WS upgrade ([#2875](https://github.com/HankHuang0516/EClaw/issues/2875)) ([9d893b8](https://github.com/HankHuang0516/EClaw/commit/9d893b8e5eea4db275e450bf423903c156cd3e4b)), closes [#2869](https://github.com/HankHuang0516/EClaw/issues/2869)
* **security:** escape innerHTML in chat modal error messages ([#2819](https://github.com/HankHuang0516/EClaw/issues/2819)) ([dce07ad](https://github.com/HankHuang0516/EClaw/commit/dce07adde64795916dba977ae23e46f3371ce7ed)), closes [#2809](https://github.com/HankHuang0516/EClaw/issues/2809) [#2810](https://github.com/HankHuang0516/EClaw/issues/2810) [#2809](https://github.com/HankHuang0516/EClaw/issues/2809) [#2810](https://github.com/HankHuang0516/EClaw/issues/2810)
* **entities:** expose botSecret to owner so wallpaper service can poll companions ([#2615](https://github.com/HankHuang0516/EClaw/issues/2615)) ([04470fc](https://github.com/HankHuang0516/EClaw/commit/04470fce8f8c3fce2b1ba8b243e776606f107502))
* **rental:** expose owner_public_code in marketplace so plaza CTA can route ([#2616](https://github.com/HankHuang0516/EClaw/issues/2616)) ([4d1372f](https://github.com/HankHuang0516/EClaw/commit/4d1372f717d93cab65543e87c852e74e9fb67071)), closes [#2610](https://github.com/HankHuang0516/EClaw/issues/2610)
* **mindmap:** fallback to device scope when entityId is null ([#2728](https://github.com/HankHuang0516/EClaw/issues/2728)) ([7572312](https://github.com/HankHuang0516/EClaw/commit/7572312433d3d75fc245eda48a28919ce14bd927))
* **i18n:** fill Spanish drift keys ([#2751](https://github.com/HankHuang0516/EClaw/issues/2751)) ([0ad0ee5](https://github.com/HankHuang0516/EClaw/commit/0ad0ee55f7fac3e6ac46d891539950dab4d553cc))
* **portal:** fit embedded org chart to mobile viewport ([#2674](https://github.com/HankHuang0516/EClaw/issues/2674)) ([1c4e1b4](https://github.com/HankHuang0516/EClaw/commit/1c4e1b413ea7027b4cd4b8ecda981b0d0e12e66b))
* **i18n:** fix 6 trailing-comma syntax errors in 10-locale batch ([#2771](https://github.com/HankHuang0516/EClaw/issues/2771)) ([b27c6ca](https://github.com/HankHuang0516/EClaw/commit/b27c6ca204bf813e406c54ce3a2532a5f1f031b3))
* **kanban:** GET card returns latest 50 comments + comments endpoint exposes total ([#2816](https://github.com/HankHuang0516/EClaw/issues/2816)) ([c4d83f7](https://github.com/HankHuang0516/EClaw/commit/c4d83f777a1cd26aea0936e4316aa35c52822eef))
* **sharechat:** guest verify-email modal + disabled Send for unverified ([#2865](https://github.com/HankHuang0516/EClaw/issues/2865)) ([cb3b061](https://github.com/HankHuang0516/EClaw/commit/cb3b0614e0f6160417d907753e66eceb2d666802))
* **uiux:** harden chat previews and roster preview ([#2769](https://github.com/HankHuang0516/EClaw/issues/2769)) ([466d4d3](https://github.com/HankHuang0516/EClaw/commit/466d4d3ef81c628d3f58db64323946053d7bf61c))
* **mention-parser:** ignore @-mentions inside markdown code spans ([#2645](https://github.com/HankHuang0516/EClaw/issues/2645)) ([8da19d4](https://github.com/HankHuang0516/EClaw/commit/8da19d4a79ceb4152bf2144ee0847c61ce3e1def)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **kanban:** lazy-load dependency chips via IntersectionObserver ([#2632](https://github.com/HankHuang0516/EClaw/issues/2632)) ([20586b4](https://github.com/HankHuang0516/EClaw/commit/20586b43357335f9eb6a190c02d58c8e36b58aba)), closes [#2631](https://github.com/HankHuang0516/EClaw/issues/2631)
* **kanban:** make card sorting deterministic ([#2756](https://github.com/HankHuang0516/EClaw/issues/2756)) ([48e2117](https://github.com/HankHuang0516/EClaw/commit/48e2117b64e37f05dc635e0a3b67bfd43cbe48f5))
* **portal/nagoya-trip:** map-link invisible on dark hero/day-banner ([#2897](https://github.com/HankHuang0516/EClaw/issues/2897)) ([cc33df6](https://github.com/HankHuang0516/EClaw/commit/cc33df686673455c20beaee60871412a5d486e66)), closes [#1f4030](https://github.com/HankHuang0516/EClaw/issues/1f4030) [#8b8579](https://github.com/HankHuang0516/EClaw/issues/8b8579) [#6e6859](https://github.com/HankHuang0516/EClaw/issues/6e6859) [#7a5614](https://github.com/HankHuang0516/EClaw/issues/7a5614)
* **org-chart:** notify affected bots on hierarchy change ([#2812](https://github.com/HankHuang0516/EClaw/issues/2812)) ([55675fd](https://github.com/HankHuang0516/EClaw/commit/55675fdf4487494d729a29524b32bd81b756a00c)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** notify reviewer on manual /move → review ([#2753](https://github.com/HankHuang0516/EClaw/issues/2753)) ([6cbbb4e](https://github.com/HankHuang0516/EClaw/commit/6cbbb4ee8c0d4d8ad54df2e9b5faaa3699bd530f))
* **wallpaper:** off-load spritesheet fetch to IO so per-petdx sprites actually render ([#2618](https://github.com/HankHuang0516/EClaw/issues/2618)) ([61b832c](https://github.com/HankHuang0516/EClaw/commit/61b832c9fa8a1d0caab810ccc942d85c63349267)), closes [#2615](https://github.com/HankHuang0516/EClaw/issues/2615) [#2577](https://github.com/HankHuang0516/EClaw/issues/2577)
* **security:** patch P0 sanitize-html XSS + P1 protobufjs + exam.html XSS ([#2829](https://github.com/HankHuang0516/EClaw/issues/2829)) ([c71b871](https://github.com/HankHuang0516/EClaw/commit/c71b871a045887375dd0d26d1a3280a0891a89ad))
* **security:** patch ws uninitialized memory disclosure (GHSA-58qx-3vcg-4xpx) ([#2872](https://github.com/HankHuang0516/EClaw/issues/2872)) ([2523d15](https://github.com/HankHuang0516/EClaw/commit/2523d154bbe501a7cc086340f7a07ece3abfa69b))
* **portal:** petdx-browser cookie-session fallback for device-login ([#2757](https://github.com/HankHuang0516/EClaw/issues/2757)) ([ca275f4](https://github.com/HankHuang0516/EClaw/commit/ca275f4519835da0c7ad71c588908a18f6f138d8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **api:** platform-stats 500 + entity/lookup publicCode alias ([#2809](https://github.com/HankHuang0516/EClaw/issues/2809), [#2810](https://github.com/HankHuang0516/EClaw/issues/2810)) ([#2818](https://github.com/HankHuang0516/EClaw/issues/2818)) ([f99fd17](https://github.com/HankHuang0516/EClaw/commit/f99fd17b2b1c32d88daa2510ff66d714c1a53edc))
* **i18n:** positional format specifiers for feedback_result_logs (7 locales) ([#2597](https://github.com/HankHuang0516/EClaw/issues/2597)) ([21aedc7](https://github.com/HankHuang0516/EClaw/commit/21aedc7eebc7a2839e340136f38dfdfd4dabb9dc))
* **avatar-petdx:** preserve descriptor across transient API failures (flicker) ([#2625](https://github.com/HankHuang0516/EClaw/issues/2625)) ([7b1c606](https://github.com/HankHuang0516/EClaw/commit/7b1c606514f7698d72ec95cf6c556e4043966186))
* **chat:** preserve recipient selection across rental-health refresh (P0 #card_eb1cba76) ([#2906](https://github.com/HankHuang0516/EClaw/issues/2906)) ([9cc0301](https://github.com/HankHuang0516/EClaw/commit/9cc0301cc26a0f49af4b7f53486f5c1a7cdd7902)), closes [#card_eb1cba76](https://github.com/HankHuang0516/EClaw/issues/card_eb1cba76) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **chat:** preserve scroll anchor while reading history ([#2693](https://github.com/HankHuang0516/EClaw/issues/2693)) ([945fdb7](https://github.com/HankHuang0516/EClaw/commit/945fdb7192b791b31882e1e75568dd8b11e4686f))
* **promo:** pull video embed from /promo-chat-avatar.html ([#2724](https://github.com/HankHuang0516/EClaw/issues/2724)) ([2afabc8](https://github.com/HankHuang0516/EClaw/commit/2afabc8c5ff8b25218a7cb857e8adfa572c8e9d5))
* **dashboard:** read live.rate_limits.{five_hour,seven_day}.used_percentage ([#2895](https://github.com/HankHuang0516/EClaw/issues/2895)) ([8223303](https://github.com/HankHuang0516/EClaw/commit/822330312bccb1c76675ad2c3b26e78d10dd1298))
* **kanban:** realign stale recurring schedules ([#2785](https://github.com/HankHuang0516/EClaw/issues/2785)) ([ab8ee25](https://github.com/HankHuang0516/EClaw/commit/ab8ee250a9b37f3d3e838bb01d8866c8d2b78231))
* **portal:** reduce QA-discovered request fanout ([#2656](https://github.com/HankHuang0516/EClaw/issues/2656)) ([1e46d6b](https://github.com/HankHuang0516/EClaw/commit/1e46d6bab61e58c65b452b6503d953f8dddeee75))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **portal:** remove org chart fit scale floor ([#2676](https://github.com/HankHuang0516/EClaw/issues/2676)) ([0f01606](https://github.com/HankHuang0516/EClaw/commit/0f016068b963bb5f800a02f28817c7174979d913))
* **rental:** remove phantom 'webhook test push' step from BIND_COMPLETE ([#2864](https://github.com/HankHuang0516/EClaw/issues/2864)) ([47f4a3e](https://github.com/HankHuang0516/EClaw/commit/47f4a3edf76aa95ebd06d8713cd44fda6eef9b5d))
* **i18n:** rename mm_empty_title → mm_state_empty_title in mindmap.html ([#2683](https://github.com/HankHuang0516/EClaw/issues/2683)) ([c79c109](https://github.com/HankHuang0516/EClaw/commit/c79c109bea23142e8a6d9ace976d105af1280ec9))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **chat:** render mention avatars with companion renderer ([#2633](https://github.com/HankHuang0516/EClaw/issues/2633)) ([03e205f](https://github.com/HankHuang0516/EClaw/commit/03e205f663ecd2c2f443d4009dd5af0093f0bbbb))
* **kanban:** reserve mobile comments panel height ([#2782](https://github.com/HankHuang0516/EClaw/issues/2782)) ([ce8662d](https://github.com/HankHuang0516/EClaw/commit/ce8662d362422fdd25037f1deb61dbed9425e2f9))
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* scheduled audit 2026-05-13 — 6 bugs, XSS, i18n ([#2668](https://github.com/HankHuang0516/EClaw/issues/2668)) ([21dd513](https://github.com/HankHuang0516/EClaw/commit/21dd513b4464738de29164265437435ba6cc4817)), closes [#2605](https://github.com/HankHuang0516/EClaw/issues/2605) [#2608](https://github.com/HankHuang0516/EClaw/issues/2608) [#2600](https://github.com/HankHuang0516/EClaw/issues/2600) [#2599](https://github.com/HankHuang0516/EClaw/issues/2599) [#2598](https://github.com/HankHuang0516/EClaw/issues/2598)
* **channel:** scope official bot sessions ([#2912](https://github.com/HankHuang0516/EClaw/issues/2912)) ([5c56b62](https://github.com/HankHuang0516/EClaw/commit/5c56b62c13b739b76f39e168a26bd4e5de2644fb))
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **dashboard:** show Claude weekly bar reset countdown ([#2896](https://github.com/HankHuang0516/EClaw/issues/2896)) ([3b87845](https://github.com/HankHuang0516/EClaw/commit/3b87845d713e980fec69f6b8007549338a326713)), closes [#2895](https://github.com/HankHuang0516/EClaw/issues/2895)
* **chat:** smart-chip preview falls back to inline c.comments when /comments fails (PR [#2677](https://github.com/HankHuang0516/EClaw/issues/2677)) ([7f4dffd](https://github.com/HankHuang0516/EClaw/commit/7f4dffd2c83ea86f296b8fa0610f0e67c9f1af11))
* **kanban:** stabilize comment detail viewport ([#2796](https://github.com/HankHuang0516/EClaw/issues/2796)) ([0a10aad](https://github.com/HankHuang0516/EClaw/commit/0a10aadb5a5b12ff23454c16d5c88183b94ad7d7))
* **wallpaper:** stop Android live wallpaper flashing default lobster on companion change ([#2629](https://github.com/HankHuang0516/EClaw/issues/2629)) ([8b4f66f](https://github.com/HankHuang0516/EClaw/commit/8b4f66fcb335bf43128f924b761b6337c817095b)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **chat:** stop chat.html bouncing to dashboard via /api/rental/health-status 401 race ([#2833](https://github.com/HankHuang0516/EClaw/issues/2833)) ([c422406](https://github.com/HankHuang0516/EClaw/commit/c4224067cdcfe7f3e22ab95007c7563dac4196ac))
* **openclaw-channel:** support OpenClaw 2026.5.20 ([8045de6](https://github.com/HankHuang0516/EClaw/commit/8045de6bebecfc05f9bd57453b99c098ca35681b))
* **mentions:** support same-device CJK display-name tags ([#2874](https://github.com/HankHuang0516/EClaw/issues/2874)) ([b8f61be](https://github.com/HankHuang0516/EClaw/commit/b8f61be9a3962fef75dd32ea34e8900880dafaf9))
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **dashboard:** use sessions[].project for widget Projects list (was .project_id) ([#2894](https://github.com/HankHuang0516/EClaw/issues/2894)) ([0fd1334](https://github.com/HankHuang0516/EClaw/commit/0fd1334897d4a603cc6eb74f34b48606547e09cf))
* **app:** WebView pages honor app-selected locale via ?lang= URL param ([#2672](https://github.com/HankHuang0516/EClaw/issues/2672)) ([8ed8757](https://github.com/HankHuang0516/EClaw/commit/8ed8757aec5bf214e837cc0d81bf2b23f1993a91)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **share-chat:** wire rich CTA actions to msgInput ([#2867](https://github.com/HankHuang0516/EClaw/issues/2867)) ([df23b11](https://github.com/HankHuang0516/EClaw/commit/df23b1147d34c59a644a145bbd87c18b96400acc))


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* **usage-api:** /api/usage/{snapshot,timeline} + usage_snapshots table (Plan B Phase 1) ([#2889](https://github.com/HankHuang0516/EClaw/issues/2889)) ([a0d859c](https://github.com/HankHuang0516/EClaw/commit/a0d859c63f0220909dadb2b1952174861ccdce14))
* **community:** 1-click chat button on bot cards + utm tagging ([#2610](https://github.com/HankHuang0516/EClaw/issues/2610)) ([eee97b0](https://github.com/HankHuang0516/EClaw/commit/eee97b0e2e4e74945ec24f218a69a52800b97a66))
* **chat:** accept ?messageId= as deep-link alias ([#2838](https://github.com/HankHuang0516/EClaw/issues/2838)) ([1785a87](https://github.com/HankHuang0516/EClaw/commit/1785a87310426637fd10df83754fb9924c45207f))
* **chat:** add avatar size preference ([#2714](https://github.com/HankHuang0516/EClaw/issues/2714)) ([6fe164a](https://github.com/HankHuang0516/EClaw/commit/6fe164ad8b22fa576d2dd9ad37c0d9fc295b5a83))
* **dashboard:** add Claude and Codex channel guides ([#2640](https://github.com/HankHuang0516/EClaw/issues/2640)) ([c64e4c4](https://github.com/HankHuang0516/EClaw/commit/c64e4c4afc78db58c5cd578f00486dd7b2fd3311))
* **dashboard:** add Claude Code channel guide card ([#2667](https://github.com/HankHuang0516/EClaw/issues/2667)) ([d70d75c](https://github.com/HankHuang0516/EClaw/commit/d70d75c0c8caa8a540358a9aab4556b8c1927a5c))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* **kanban:** add device-scoped card tags ([#2773](https://github.com/HankHuang0516/EClaw/issues/2773)) ([53a387e](https://github.com/HankHuang0516/EClaw/commit/53a387e67ba7bb4f6bed1c427000c4ae8666577a))
* **portal:** add entity selector to petdx-browser ([#2602](https://github.com/HankHuang0516/EClaw/issues/2602)) ([3fa067e](https://github.com/HankHuang0516/EClaw/commit/3fa067e00b38829b48a37cecd33ee81a9a1122d9))
* **kanban:** add explicit card links ([#2721](https://github.com/HankHuang0516/EClaw/issues/2721)) ([ef9f812](https://github.com/HankHuang0516/EClaw/commit/ef9f812a3fcf39efd07fd158ce90951bdd045ac7))
* **kanban:** add explicit done-card reopen flow ([#2801](https://github.com/HankHuang0516/EClaw/issues/2801)) ([5080aac](https://github.com/HankHuang0516/EClaw/commit/5080aacb75047c0deaa379ee708ec85465afd57c))
* **mindmap:** add GET /api/mindmap/graph force-graph projection ([#2680](https://github.com/HankHuang0516/EClaw/issues/2680)) ([a00b2e7](https://github.com/HankHuang0516/EClaw/commit/a00b2e775af2c4c98cd157f760ad87aeeee469f0)), closes [#2679](https://github.com/HankHuang0516/EClaw/issues/2679) [#2679](https://github.com/HankHuang0516/EClaw/issues/2679)
* **dashboard:** add Hermes channel promo card ([#2708](https://github.com/HankHuang0516/EClaw/issues/2708)) ([337aca1](https://github.com/HankHuang0516/EClaw/commit/337aca153d5a1cd7e888c065f00ae54db7872d91))
* **rental:** add listing soft pause ([#2781](https://github.com/HankHuang0516/EClaw/issues/2781)) ([6586b72](https://github.com/HankHuang0516/EClaw/commit/6586b72717ddb1637d91cd3242c8d2ff554f62b4))
* **portal:** add Nagoya 5D4N trip static cross-ref page ([#2689](https://github.com/HankHuang0516/EClaw/issues/2689)) ([2e0efb6](https://github.com/HankHuang0516/EClaw/commit/2e0efb6dcdaff52226cc8854a96747000b12bdff))
* **portal:** add Nagoya trip map links and image lightbox ([#2821](https://github.com/HankHuang0516/EClaw/issues/2821)) ([3e40955](https://github.com/HankHuang0516/EClaw/commit/3e40955650a05f45a6b9f7e39e73847705424a03))
* **portal/nagoya:** add parking shortcut buttons next to itinerary places ([#2826](https://github.com/HankHuang0516/EClaw/issues/2826)) ([63968c5](https://github.com/HankHuang0516/EClaw/commit/63968c554d046afc8d978de74e3aacbf7700500d))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **settings:** add rental roster management preview ([#2758](https://github.com/HankHuang0516/EClaw/issues/2758)) ([9706e59](https://github.com/HankHuang0516/EClaw/commit/9706e59ded140a90a6e02348124282bc69d89001))
* **rental:** add renter health chat indicator ([#2690](https://github.com/HankHuang0516/EClaw/issues/2690)) ([36cd2e9](https://github.com/HankHuang0516/EClaw/commit/36cd2e9802be4c7ebb03d3024617fa74aca48ffd))
* **ios:** add Tutorial & Intro entry in Settings ([#2800](https://github.com/HankHuang0516/EClaw/issues/2800)) ([ed83e51](https://github.com/HankHuang0516/EClaw/commit/ed83e51d043bf4cd5865f38dc95a91ed54820d6c))
* **landing:** add Watch Full Demo CTA below hero video ([#2799](https://github.com/HankHuang0516/EClaw/issues/2799)) ([66107c9](https://github.com/HankHuang0516/EClaw/commit/66107c954727551fd34d989a4674daaad9b63968))
* **footer:** add Watch Intro Video link in Info column ([#2798](https://github.com/HankHuang0516/EClaw/issues/2798)) ([d7c6d59](https://github.com/HankHuang0516/EClaw/commit/d7c6d596b69c6a5b257bf1f7a792a407ef9712ad))
* **i18n:** ar iter-2 — fill 623 missing keys against en source ([#2847](https://github.com/HankHuang0516/EClaw/issues/2847)) ([ee94a7a](https://github.com/HankHuang0516/EClaw/commit/ee94a7ae6812b5163efe4284ee4907ca32302f5c))
* **kanban:** backlog launch-gate flag to suppress L1/L2/L3 escalation ([#2855](https://github.com/HankHuang0516/EClaw/issues/2855)) ([cb8bf1b](https://github.com/HankHuang0516/EClaw/commit/cb8bf1bb6421f25214f65e129a8cadccc49cc266)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#4](https://github.com/HankHuang0516/EClaw/issues/4) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **companion:** bridge crafter-station/petdex gallery (1784 pets) ([#2601](https://github.com/HankHuang0516/EClaw/issues/2601)) ([2e245be](https://github.com/HankHuang0516/EClaw/commit/2e245bea6dd47ea7361b927d389188a3c23b6bb3))
* **promo:** chat avatar size feature landing page (self-hosted MP4) ([#2722](https://github.com/HankHuang0516/EClaw/issues/2722)) ([3852210](https://github.com/HankHuang0516/EClaw/commit/3852210d355704d018e3daca6b5f9512a011b210)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **kanban:** cron-spawn jitter + lane backpressure to prevent same-tick wedge ([#2791](https://github.com/HankHuang0516/EClaw/issues/2791)) ([9f414a7](https://github.com/HankHuang0516/EClaw/commit/9f414a731d6393672a0a4189c7b408c529ae5e12)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **portal:** dashboard usage widget — Claude/Codex 5h gauges + 24h chart (Plan B Phase 3) ([#2891](https://github.com/HankHuang0516/EClaw/issues/2891)) ([d18f373](https://github.com/HankHuang0516/EClaw/commit/d18f373857e4bd302437d6bda2a1e01871fbb1db))
* **portal:** dashboard usage widget v2 — Session/Weekly % bars + projects, no cost (Plan B Phase 3.1) ([#2893](https://github.com/HankHuang0516/EClaw/issues/2893)) ([4bc0dc7](https://github.com/HankHuang0516/EClaw/commit/4bc0dc744ed9d54dfd532ebac4b705c7f84ec0a6))
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **promo:** embed daily eclaw video 2026-05-14 ([#2786](https://github.com/HankHuang0516/EClaw/issues/2786)) ([718a814](https://github.com/HankHuang0516/EClaw/commit/718a814ab16850bc2b33a1b303841e2c4378ecfa)), closes [#2782](https://github.com/HankHuang0516/EClaw/issues/2782) [#2693](https://github.com/HankHuang0516/EClaw/issues/2693)
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **info:** embed promo video at top of Quick Start tab ([#2797](https://github.com/HankHuang0516/EClaw/issues/2797)) ([047679f](https://github.com/HankHuang0516/EClaw/commit/047679fd57ab9949eaeacea414d5611e71afe041))
* **rental:** enforce strict rebind refunds ([#2703](https://github.com/HankHuang0516/EClaw/issues/2703)) ([a1859c5](https://github.com/HankHuang0516/EClaw/commit/a1859c50e6fb3991d7a8051491502d824a14a116))
* **portal:** group task chip actions ([#2825](https://github.com/HankHuang0516/EClaw/issues/2825)) ([5db5c59](https://github.com/HankHuang0516/EClaw/commit/5db5c59b32b8635f1412205faf0c2f9164d3d5d4))
* **portal:** info-guide-rules + info-guide-soul slide pair ([#2793](https://github.com/HankHuang0516/EClaw/issues/2793)) ([1c8bddc](https://github.com/HankHuang0516/EClaw/commit/1c8bddc4c185054b2b60088498e3d45509117127)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **chat:** link card previews to kanban ([#2754](https://github.com/HankHuang0516/EClaw/issues/2754)) ([2261240](https://github.com/HankHuang0516/EClaw/commit/22612402c2e95efb07246629e81a849be41ee9c7))
* **mission:** link notes to kanban cards ([#2723](https://github.com/HankHuang0516/EClaw/issues/2723)) ([b36dc18](https://github.com/HankHuang0516/EClaw/commit/b36dc18f3a8facf12e0b6046351c222f1e99dc55))
* **usage-daemon:** macOS launchd daemon polls Claude/Codex usage → POST /api/usage/snapshot (Plan B Phase 2) ([#2890](https://github.com/HankHuang0516/EClaw/issues/2890)) ([fd225e1](https://github.com/HankHuang0516/EClaw/commit/fd225e12d9491037be1a340bd63b54b5f3308c7f))
* **mindmap:** mission.html link to /portal/mindmap.html + deprecate /api/mission/mindmap ([#2685](https://github.com/HankHuang0516/EClaw/issues/2685)) ([11e297b](https://github.com/HankHuang0516/EClaw/commit/11e297bab1c9b56fcde3027d6500b7c58891bf18)), closes [#2680](https://github.com/HankHuang0516/EClaw/issues/2680) [#2684](https://github.com/HankHuang0516/EClaw/issues/2684)
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **portal:** nagoya trip interactive map (Leaflet + OSM, no API key) ([#2888](https://github.com/HankHuang0516/EClaw/issues/2888)) ([ecfdac0](https://github.com/HankHuang0516/EClaw/commit/ecfdac06348c12ee7c6872c6c28d5f82162e7aa9))
* **channel:** outbound backpressure (30/min cap + 429 retry-after) ([#2911](https://github.com/HankHuang0516/EClaw/issues/2911)) ([36dc99c](https://github.com/HankHuang0516/EClaw/commit/36dc99ca78b0e1724a2aaefb5936669077b7a28f))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **settings:** per-entity nudge override UI (Phase 2) ([#2837](https://github.com/HankHuang0516/EClaw/issues/2837)) ([ea7662b](https://github.com/HankHuang0516/EClaw/commit/ea7662b0858882dae461e1387f711895924f9ab8)), closes [3/#4](https://github.com/HankHuang0516/EClaw/issues/4)
* **kanban:** per-entity nudge overrides (Phase 2 of card_e066cb6b) ([#2836](https://github.com/HankHuang0516/EClaw/issues/2836)) ([0425f80](https://github.com/HankHuang0516/EClaw/commit/0425f80bc1169c0d506b665659c8676695c45553))
* **avatar:** petdx render on card-holder my-cards (Phase 1b) ([#2621](https://github.com/HankHuang0516/EClaw/issues/2621)) ([f78ba8b](https://github.com/HankHuang0516/EClaw/commit/f78ba8b18acc426936ab6d8a82ca7541effea00d))
* **avatar:** petdx render on dashboard entity grid / org chart / bindings (Phase 1b) ([#2622](https://github.com/HankHuang0516/EClaw/issues/2622)) ([f417749](https://github.com/HankHuang0516/EClaw/commit/f41774914451048e8cd76e9ae30416a0642e173b)), closes [#2620](https://github.com/HankHuang0516/EClaw/issues/2620) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621)
* **avatar:** petdx render on kanban auto-assign / pulse / comment avatars (Phase 1b) ([#2624](https://github.com/HankHuang0516/EClaw/issues/2624)) ([6bff5f8](https://github.com/HankHuang0516/EClaw/commit/6bff5f80440d0bd91a6b1721cde9478d685c4d46))
* **avatar:** petdx render on mission skill/rule/soul entity dialogs (Phase 1b) ([#2623](https://github.com/HankHuang0516/EClaw/issues/2623)) ([129327b](https://github.com/HankHuang0516/EClaw/commit/129327bc7b91056659f1ab7e8d5e3f5260d951fb))
* **mindmap:** portal/mindmap.html force-graph prototype ([#129](https://github.com/HankHuang0516/EClaw/issues/129)) ([#2681](https://github.com/HankHuang0516/EClaw/issues/2681)) ([0f15e69](https://github.com/HankHuang0516/EClaw/commit/0f15e6930f0697c37fa08f3219edb8f9e499837f)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **channel:** record delivery receipts ([#2913](https://github.com/HankHuang0516/EClaw/issues/2913)) ([90c671b](https://github.com/HankHuang0516/EClaw/commit/90c671bd1970ab51584b90e2b634484ec10cc7ae))
* **portal:** redo nagoya trip page in professional tour-guide style ([#2691](https://github.com/HankHuang0516/EClaw/issues/2691)) ([b2378c0](https://github.com/HankHuang0516/EClaw/commit/b2378c06ee20fa9cccfdceceb1a4c9e0b3072f59))
* **i18n:** remove ms+hi orphan keys from i18n.js ([#2849](https://github.com/HankHuang0516/EClaw/issues/2849)) ([320176c](https://github.com/HankHuang0516/EClaw/commit/320176c06a3cfd8631e2a82ad02a6bd6a9af0389))
* **avatar:** render selected petdx companion in chat avatars ([#2620](https://github.com/HankHuang0516/EClaw/issues/2620)) ([0bdd046](https://github.com/HankHuang0516/EClaw/commit/0bdd046fe1b1c428e32edda366ff112c08927f4c))
* **home:** replace native home with WebView hosting dashboard.html ([#2634](https://github.com/HankHuang0516/EClaw/issues/2634)) ([e69ea81](https://github.com/HankHuang0516/EClaw/commit/e69ea8160c239b083a83d6dc83a4f1c3f901c863))
* **app:** route chat mission jumps through native tabs ([#2824](https://github.com/HankHuang0516/EClaw/issues/2824)) ([deb07b6](https://github.com/HankHuang0516/EClaw/commit/deb07b69a9ecca632fe27278de537f1d85234e94))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **chat:** support message deep links ([#2719](https://github.com/HankHuang0516/EClaw/issues/2719)) ([2dc0f1e](https://github.com/HankHuang0516/EClaw/commit/2dc0f1eeb259e1a0848db4a03186b989372cd91c))
* **mission:** support note deep links ([#2717](https://github.com/HankHuang0516/EClaw/issues/2717)) ([2efd3a5](https://github.com/HankHuang0516/EClaw/commit/2efd3a5e741217a07c0b0ac54a0ddd010e0ebe23))
* **share-chat:** twitter card + per-bot og:image/twitter:* in SSR ([#2609](https://github.com/HankHuang0516/EClaw/issues/2609)) ([6cdc853](https://github.com/HankHuang0516/EClaw/commit/6cdc853dc884cdb95bd47214942768981f218ae0))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))
* **settings:** wire petdx avatar into channel-account chips ([#2626](https://github.com/HankHuang0516/EClaw/issues/2626)) ([88aec77](https://github.com/HankHuang0516/EClaw/commit/88aec772628c240e97b336bb5820892ad632d1ae))
* **files:** wire petdx avatar into entity filter & per-file badges ([#2627](https://github.com/HankHuang0516/EClaw/issues/2627)) ([5b3e5cc](https://github.com/HankHuang0516/EClaw/commit/5b3e5cc542d9da69bb4e92500fd03a542ea33f00))
* **mindmap:** wrap hardcoded zh-TW UI strings with i18n t() ([#2607](https://github.com/HankHuang0516/EClaw/issues/2607)) ([166af87](https://github.com/HankHuang0516/EClaw/commit/166af8772b2121a24aaf34a83b3de970e9b3b571)), closes [#2606](https://github.com/HankHuang0516/EClaw/issues/2606)
* **i18n:** zh-TW backfill 8 keys (soft-pause + chat + invite + wallet) ([#2815](https://github.com/HankHuang0516/EClaw/issues/2815)) ([a2dd574](https://github.com/HankHuang0516/EClaw/commit/a2dd5743ce8d43a4b6ace9a2fd4b52568180d6c5))


### Performance Improvements

* **mindmap:** force-graph hardening for 1000/2000-node graphs ([#2684](https://github.com/HankHuang0516/EClaw/issues/2684)) ([da8b1c8](https://github.com/HankHuang0516/EClaw/commit/da8b1c8f947ab8bc8fa455c1962a91146623a1fc))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-24)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **notifications:** add kanban_done + kanban_done_auto toggles to Android Settings ([#2636](https://github.com/HankHuang0516/EClaw/issues/2636)) ([a710909](https://github.com/HankHuang0516/EClaw/commit/a7109095e3393b8564e7ef1b23d382a4fbb944b8))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **i18n:** ar block — fix 27 broken entries (CJK leaks + truncated HTML) ([#2851](https://github.com/HankHuang0516/EClaw/issues/2851)) ([5b19175](https://github.com/HankHuang0516/EClaw/commit/5b19175d712d00d16fcec00b749035c4beae7a5c))
* **chat:** atomic-load target bar (await contacts before first render) ([#2831](https://github.com/HankHuang0516/EClaw/issues/2831)) ([5f529e6](https://github.com/HankHuang0516/EClaw/commit/5f529e6b772eacc38ba1de69b44258a05f0d816a)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2](https://github.com/HankHuang0516/EClaw/issues/2)
* **channel:** await binding persistence ([712516d](https://github.com/HankHuang0516/EClaw/commit/712516decafb745035bd1434a28cc1973d433e19))
* **rental:** bump handshake timeout to 60s + timeout-aware discovery fallback ([#2863](https://github.com/HankHuang0516/EClaw/issues/2863)) ([fd4322f](https://github.com/HankHuang0516/EClaw/commit/fd4322f8890f3c2dfca3acdae6a4b95f19c381f9)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **i18n:** clear batch 1 residual missing keys ([#2790](https://github.com/HankHuang0516/EClaw/issues/2790)) ([211030e](https://github.com/HankHuang0516/EClaw/commit/211030e0b0b6a865c11f0c4ed60dc4e356d43b7a))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **kanban:** comment input no longer overlaps last comment in card detail (PR [#2678](https://github.com/HankHuang0516/EClaw/issues/2678)) ([fba91fc](https://github.com/HankHuang0516/EClaw/commit/fba91fca15402b453a0db5ee857c0b16e6087055))
* **chat:** compact 20px avatar in target bar (App WebView only shows [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2](https://github.com/HankHuang0516/EClaw/issues/2)) ([#2830](https://github.com/HankHuang0516/EClaw/issues/2830)) ([42c7543](https://github.com/HankHuang0516/EClaw/commit/42c7543b4a78a7abf3f5f7535eb9bc6142cd0fe2)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **portal:** complete 401 redirect sweep + mobile UIUX truncation ([#2842](https://github.com/HankHuang0516/EClaw/issues/2842)) ([f9799ba](https://github.com/HankHuang0516/EClaw/commit/f9799ba42498b109f0a8a70e80836aa6da51e216)), closes [#2833](https://github.com/HankHuang0516/EClaw/issues/2833) [#2845](https://github.com/HankHuang0516/EClaw/issues/2845) [#2844](https://github.com/HankHuang0516/EClaw/issues/2844) [#2843](https://github.com/HankHuang0516/EClaw/issues/2843)
* **uiux:** continue qa mobile readability sweep ([#2854](https://github.com/HankHuang0516/EClaw/issues/2854)) ([57606ff](https://github.com/HankHuang0516/EClaw/commit/57606ffe3e543b07a026aacc53c4b470c9a7825b))
* **i18n:** cover dynamic portal wrapper keys ([#2807](https://github.com/HankHuang0516/EClaw/issues/2807)) ([4c711cc](https://github.com/HankHuang0516/EClaw/commit/4c711cc4009300ffe4e8933a98ee01cd0fdd6aeb))
* **i18n:** dedup 20 dash_channel_card_* keys in es block ([#2876](https://github.com/HankHuang0516/EClaw/issues/2876)) ([807284c](https://github.com/HankHuang0516/EClaw/commit/807284ce363ef119ccdb0ae40e5ce99d3f0a27e0))
* **kanban:** dep-aware nudge gating + roadmap dependency backfill ([#2904](https://github.com/HankHuang0516/EClaw/issues/2904)) ([2b76ac9](https://github.com/HankHuang0516/EClaw/commit/2b76ac9d3b7e4169b7bc3c6f6b0b0903b63cd9f7)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **rental:** don't pollute entity.message on push gateway timeout ([#2860](https://github.com/HankHuang0516/EClaw/issues/2860)) ([592ba44](https://github.com/HankHuang0516/EClaw/commit/592ba44f57536ee00011b6cbddaa6b129a7cbae9))
* **petdx:** drop dark-grey loading placeholder + preload sprite WEBP ([#2628](https://github.com/HankHuang0516/EClaw/issues/2628)) ([59cef38](https://github.com/HankHuang0516/EClaw/commit/59cef387bd69ca99d7d15c86a1364856d3849ad8)), closes [#1a1a1a](https://github.com/HankHuang0516/EClaw/issues/1a1a1a)
* **gateway-ws:** drop Origin header on server-to-server WS upgrade ([#2869](https://github.com/HankHuang0516/EClaw/issues/2869)) ([716dcf9](https://github.com/HankHuang0516/EClaw/commit/716dcf9d0834b17522bb9d894bad84bc142d1a19))
* **setup-scripts:** drop Origin header on server-to-server WS upgrade ([#2875](https://github.com/HankHuang0516/EClaw/issues/2875)) ([9d893b8](https://github.com/HankHuang0516/EClaw/commit/9d893b8e5eea4db275e450bf423903c156cd3e4b)), closes [#2869](https://github.com/HankHuang0516/EClaw/issues/2869)
* **security:** escape innerHTML in chat modal error messages ([#2819](https://github.com/HankHuang0516/EClaw/issues/2819)) ([dce07ad](https://github.com/HankHuang0516/EClaw/commit/dce07adde64795916dba977ae23e46f3371ce7ed)), closes [#2809](https://github.com/HankHuang0516/EClaw/issues/2809) [#2810](https://github.com/HankHuang0516/EClaw/issues/2810) [#2809](https://github.com/HankHuang0516/EClaw/issues/2809) [#2810](https://github.com/HankHuang0516/EClaw/issues/2810)
* **entities:** expose botSecret to owner so wallpaper service can poll companions ([#2615](https://github.com/HankHuang0516/EClaw/issues/2615)) ([04470fc](https://github.com/HankHuang0516/EClaw/commit/04470fce8f8c3fce2b1ba8b243e776606f107502))
* **rental:** expose owner_public_code in marketplace so plaza CTA can route ([#2616](https://github.com/HankHuang0516/EClaw/issues/2616)) ([4d1372f](https://github.com/HankHuang0516/EClaw/commit/4d1372f717d93cab65543e87c852e74e9fb67071)), closes [#2610](https://github.com/HankHuang0516/EClaw/issues/2610)
* **mindmap:** fallback to device scope when entityId is null ([#2728](https://github.com/HankHuang0516/EClaw/issues/2728)) ([7572312](https://github.com/HankHuang0516/EClaw/commit/7572312433d3d75fc245eda48a28919ce14bd927))
* **i18n:** fill Spanish drift keys ([#2751](https://github.com/HankHuang0516/EClaw/issues/2751)) ([0ad0ee5](https://github.com/HankHuang0516/EClaw/commit/0ad0ee55f7fac3e6ac46d891539950dab4d553cc))
* **portal:** fit embedded org chart to mobile viewport ([#2674](https://github.com/HankHuang0516/EClaw/issues/2674)) ([1c4e1b4](https://github.com/HankHuang0516/EClaw/commit/1c4e1b413ea7027b4cd4b8ecda981b0d0e12e66b))
* **i18n:** fix 6 trailing-comma syntax errors in 10-locale batch ([#2771](https://github.com/HankHuang0516/EClaw/issues/2771)) ([b27c6ca](https://github.com/HankHuang0516/EClaw/commit/b27c6ca204bf813e406c54ce3a2532a5f1f031b3))
* **kanban:** GET card returns latest 50 comments + comments endpoint exposes total ([#2816](https://github.com/HankHuang0516/EClaw/issues/2816)) ([c4d83f7](https://github.com/HankHuang0516/EClaw/commit/c4d83f777a1cd26aea0936e4316aa35c52822eef))
* **sharechat:** guest verify-email modal + disabled Send for unverified ([#2865](https://github.com/HankHuang0516/EClaw/issues/2865)) ([cb3b061](https://github.com/HankHuang0516/EClaw/commit/cb3b0614e0f6160417d907753e66eceb2d666802))
* **uiux:** harden chat previews and roster preview ([#2769](https://github.com/HankHuang0516/EClaw/issues/2769)) ([466d4d3](https://github.com/HankHuang0516/EClaw/commit/466d4d3ef81c628d3f58db64323946053d7bf61c))
* **mention-parser:** ignore @-mentions inside markdown code spans ([#2645](https://github.com/HankHuang0516/EClaw/issues/2645)) ([8da19d4](https://github.com/HankHuang0516/EClaw/commit/8da19d4a79ceb4152bf2144ee0847c61ce3e1def)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **kanban:** lazy-load dependency chips via IntersectionObserver ([#2632](https://github.com/HankHuang0516/EClaw/issues/2632)) ([20586b4](https://github.com/HankHuang0516/EClaw/commit/20586b43357335f9eb6a190c02d58c8e36b58aba)), closes [#2631](https://github.com/HankHuang0516/EClaw/issues/2631)
* **kanban:** make card sorting deterministic ([#2756](https://github.com/HankHuang0516/EClaw/issues/2756)) ([48e2117](https://github.com/HankHuang0516/EClaw/commit/48e2117b64e37f05dc635e0a3b67bfd43cbe48f5))
* **portal/nagoya-trip:** map-link invisible on dark hero/day-banner ([#2897](https://github.com/HankHuang0516/EClaw/issues/2897)) ([cc33df6](https://github.com/HankHuang0516/EClaw/commit/cc33df686673455c20beaee60871412a5d486e66)), closes [#1f4030](https://github.com/HankHuang0516/EClaw/issues/1f4030) [#8b8579](https://github.com/HankHuang0516/EClaw/issues/8b8579) [#6e6859](https://github.com/HankHuang0516/EClaw/issues/6e6859) [#7a5614](https://github.com/HankHuang0516/EClaw/issues/7a5614)
* **org-chart:** notify affected bots on hierarchy change ([#2812](https://github.com/HankHuang0516/EClaw/issues/2812)) ([55675fd](https://github.com/HankHuang0516/EClaw/commit/55675fdf4487494d729a29524b32bd81b756a00c)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** notify reviewer on manual /move → review ([#2753](https://github.com/HankHuang0516/EClaw/issues/2753)) ([6cbbb4e](https://github.com/HankHuang0516/EClaw/commit/6cbbb4ee8c0d4d8ad54df2e9b5faaa3699bd530f))
* **wallpaper:** off-load spritesheet fetch to IO so per-petdx sprites actually render ([#2618](https://github.com/HankHuang0516/EClaw/issues/2618)) ([61b832c](https://github.com/HankHuang0516/EClaw/commit/61b832c9fa8a1d0caab810ccc942d85c63349267)), closes [#2615](https://github.com/HankHuang0516/EClaw/issues/2615) [#2577](https://github.com/HankHuang0516/EClaw/issues/2577)
* **security:** patch P0 sanitize-html XSS + P1 protobufjs + exam.html XSS ([#2829](https://github.com/HankHuang0516/EClaw/issues/2829)) ([c71b871](https://github.com/HankHuang0516/EClaw/commit/c71b871a045887375dd0d26d1a3280a0891a89ad))
* **security:** patch ws uninitialized memory disclosure (GHSA-58qx-3vcg-4xpx) ([#2872](https://github.com/HankHuang0516/EClaw/issues/2872)) ([2523d15](https://github.com/HankHuang0516/EClaw/commit/2523d154bbe501a7cc086340f7a07ece3abfa69b))
* **portal:** petdx-browser cookie-session fallback for device-login ([#2757](https://github.com/HankHuang0516/EClaw/issues/2757)) ([ca275f4](https://github.com/HankHuang0516/EClaw/commit/ca275f4519835da0c7ad71c588908a18f6f138d8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **api:** platform-stats 500 + entity/lookup publicCode alias ([#2809](https://github.com/HankHuang0516/EClaw/issues/2809), [#2810](https://github.com/HankHuang0516/EClaw/issues/2810)) ([#2818](https://github.com/HankHuang0516/EClaw/issues/2818)) ([f99fd17](https://github.com/HankHuang0516/EClaw/commit/f99fd17b2b1c32d88daa2510ff66d714c1a53edc))
* **i18n:** positional format specifiers for feedback_result_logs (7 locales) ([#2597](https://github.com/HankHuang0516/EClaw/issues/2597)) ([21aedc7](https://github.com/HankHuang0516/EClaw/commit/21aedc7eebc7a2839e340136f38dfdfd4dabb9dc))
* **avatar-petdx:** preserve descriptor across transient API failures (flicker) ([#2625](https://github.com/HankHuang0516/EClaw/issues/2625)) ([7b1c606](https://github.com/HankHuang0516/EClaw/commit/7b1c606514f7698d72ec95cf6c556e4043966186))
* **chat:** preserve recipient selection across rental-health refresh (P0 #card_eb1cba76) ([#2906](https://github.com/HankHuang0516/EClaw/issues/2906)) ([9cc0301](https://github.com/HankHuang0516/EClaw/commit/9cc0301cc26a0f49af4b7f53486f5c1a7cdd7902)), closes [#card_eb1cba76](https://github.com/HankHuang0516/EClaw/issues/card_eb1cba76) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **chat:** preserve scroll anchor while reading history ([#2693](https://github.com/HankHuang0516/EClaw/issues/2693)) ([945fdb7](https://github.com/HankHuang0516/EClaw/commit/945fdb7192b791b31882e1e75568dd8b11e4686f))
* **promo:** pull video embed from /promo-chat-avatar.html ([#2724](https://github.com/HankHuang0516/EClaw/issues/2724)) ([2afabc8](https://github.com/HankHuang0516/EClaw/commit/2afabc8c5ff8b25218a7cb857e8adfa572c8e9d5))
* **dashboard:** read live.rate_limits.{five_hour,seven_day}.used_percentage ([#2895](https://github.com/HankHuang0516/EClaw/issues/2895)) ([8223303](https://github.com/HankHuang0516/EClaw/commit/822330312bccb1c76675ad2c3b26e78d10dd1298))
* **kanban:** realign stale recurring schedules ([#2785](https://github.com/HankHuang0516/EClaw/issues/2785)) ([ab8ee25](https://github.com/HankHuang0516/EClaw/commit/ab8ee250a9b37f3d3e838bb01d8866c8d2b78231))
* **portal:** reduce QA-discovered request fanout ([#2656](https://github.com/HankHuang0516/EClaw/issues/2656)) ([1e46d6b](https://github.com/HankHuang0516/EClaw/commit/1e46d6bab61e58c65b452b6503d953f8dddeee75))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **portal:** remove org chart fit scale floor ([#2676](https://github.com/HankHuang0516/EClaw/issues/2676)) ([0f01606](https://github.com/HankHuang0516/EClaw/commit/0f016068b963bb5f800a02f28817c7174979d913))
* **rental:** remove phantom 'webhook test push' step from BIND_COMPLETE ([#2864](https://github.com/HankHuang0516/EClaw/issues/2864)) ([47f4a3e](https://github.com/HankHuang0516/EClaw/commit/47f4a3edf76aa95ebd06d8713cd44fda6eef9b5d))
* **i18n:** rename mm_empty_title → mm_state_empty_title in mindmap.html ([#2683](https://github.com/HankHuang0516/EClaw/issues/2683)) ([c79c109](https://github.com/HankHuang0516/EClaw/commit/c79c109bea23142e8a6d9ace976d105af1280ec9))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **chat:** render mention avatars with companion renderer ([#2633](https://github.com/HankHuang0516/EClaw/issues/2633)) ([03e205f](https://github.com/HankHuang0516/EClaw/commit/03e205f663ecd2c2f443d4009dd5af0093f0bbbb))
* **kanban:** reserve mobile comments panel height ([#2782](https://github.com/HankHuang0516/EClaw/issues/2782)) ([ce8662d](https://github.com/HankHuang0516/EClaw/commit/ce8662d362422fdd25037f1deb61dbed9425e2f9))
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* scheduled audit 2026-05-13 — 6 bugs, XSS, i18n ([#2668](https://github.com/HankHuang0516/EClaw/issues/2668)) ([21dd513](https://github.com/HankHuang0516/EClaw/commit/21dd513b4464738de29164265437435ba6cc4817)), closes [#2605](https://github.com/HankHuang0516/EClaw/issues/2605) [#2608](https://github.com/HankHuang0516/EClaw/issues/2608) [#2600](https://github.com/HankHuang0516/EClaw/issues/2600) [#2599](https://github.com/HankHuang0516/EClaw/issues/2599) [#2598](https://github.com/HankHuang0516/EClaw/issues/2598)
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **dashboard:** show Claude weekly bar reset countdown ([#2896](https://github.com/HankHuang0516/EClaw/issues/2896)) ([3b87845](https://github.com/HankHuang0516/EClaw/commit/3b87845d713e980fec69f6b8007549338a326713)), closes [#2895](https://github.com/HankHuang0516/EClaw/issues/2895)
* **chat:** smart-chip preview falls back to inline c.comments when /comments fails (PR [#2677](https://github.com/HankHuang0516/EClaw/issues/2677)) ([7f4dffd](https://github.com/HankHuang0516/EClaw/commit/7f4dffd2c83ea86f296b8fa0610f0e67c9f1af11))
* **kanban:** stabilize comment detail viewport ([#2796](https://github.com/HankHuang0516/EClaw/issues/2796)) ([0a10aad](https://github.com/HankHuang0516/EClaw/commit/0a10aadb5a5b12ff23454c16d5c88183b94ad7d7))
* **wallpaper:** stop Android live wallpaper flashing default lobster on companion change ([#2629](https://github.com/HankHuang0516/EClaw/issues/2629)) ([8b4f66f](https://github.com/HankHuang0516/EClaw/commit/8b4f66fcb335bf43128f924b761b6337c817095b)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **chat:** stop chat.html bouncing to dashboard via /api/rental/health-status 401 race ([#2833](https://github.com/HankHuang0516/EClaw/issues/2833)) ([c422406](https://github.com/HankHuang0516/EClaw/commit/c4224067cdcfe7f3e22ab95007c7563dac4196ac))
* **openclaw-channel:** support OpenClaw 2026.5.20 ([8045de6](https://github.com/HankHuang0516/EClaw/commit/8045de6bebecfc05f9bd57453b99c098ca35681b))
* **mentions:** support same-device CJK display-name tags ([#2874](https://github.com/HankHuang0516/EClaw/issues/2874)) ([b8f61be](https://github.com/HankHuang0516/EClaw/commit/b8f61be9a3962fef75dd32ea34e8900880dafaf9))
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **dashboard:** use sessions[].project for widget Projects list (was .project_id) ([#2894](https://github.com/HankHuang0516/EClaw/issues/2894)) ([0fd1334](https://github.com/HankHuang0516/EClaw/commit/0fd1334897d4a603cc6eb74f34b48606547e09cf))
* **app:** WebView pages honor app-selected locale via ?lang= URL param ([#2672](https://github.com/HankHuang0516/EClaw/issues/2672)) ([8ed8757](https://github.com/HankHuang0516/EClaw/commit/8ed8757aec5bf214e837cc0d81bf2b23f1993a91)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **share-chat:** wire rich CTA actions to msgInput ([#2867](https://github.com/HankHuang0516/EClaw/issues/2867)) ([df23b11](https://github.com/HankHuang0516/EClaw/commit/df23b1147d34c59a644a145bbd87c18b96400acc))


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* **usage-api:** /api/usage/{snapshot,timeline} + usage_snapshots table (Plan B Phase 1) ([#2889](https://github.com/HankHuang0516/EClaw/issues/2889)) ([a0d859c](https://github.com/HankHuang0516/EClaw/commit/a0d859c63f0220909dadb2b1952174861ccdce14))
* **community:** 1-click chat button on bot cards + utm tagging ([#2610](https://github.com/HankHuang0516/EClaw/issues/2610)) ([eee97b0](https://github.com/HankHuang0516/EClaw/commit/eee97b0e2e4e74945ec24f218a69a52800b97a66))
* **chat:** accept ?messageId= as deep-link alias ([#2838](https://github.com/HankHuang0516/EClaw/issues/2838)) ([1785a87](https://github.com/HankHuang0516/EClaw/commit/1785a87310426637fd10df83754fb9924c45207f))
* **chat:** add avatar size preference ([#2714](https://github.com/HankHuang0516/EClaw/issues/2714)) ([6fe164a](https://github.com/HankHuang0516/EClaw/commit/6fe164ad8b22fa576d2dd9ad37c0d9fc295b5a83))
* **dashboard:** add Claude and Codex channel guides ([#2640](https://github.com/HankHuang0516/EClaw/issues/2640)) ([c64e4c4](https://github.com/HankHuang0516/EClaw/commit/c64e4c4afc78db58c5cd578f00486dd7b2fd3311))
* **dashboard:** add Claude Code channel guide card ([#2667](https://github.com/HankHuang0516/EClaw/issues/2667)) ([d70d75c](https://github.com/HankHuang0516/EClaw/commit/d70d75c0c8caa8a540358a9aab4556b8c1927a5c))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* **kanban:** add device-scoped card tags ([#2773](https://github.com/HankHuang0516/EClaw/issues/2773)) ([53a387e](https://github.com/HankHuang0516/EClaw/commit/53a387e67ba7bb4f6bed1c427000c4ae8666577a))
* **portal:** add entity selector to petdx-browser ([#2602](https://github.com/HankHuang0516/EClaw/issues/2602)) ([3fa067e](https://github.com/HankHuang0516/EClaw/commit/3fa067e00b38829b48a37cecd33ee81a9a1122d9))
* **kanban:** add explicit card links ([#2721](https://github.com/HankHuang0516/EClaw/issues/2721)) ([ef9f812](https://github.com/HankHuang0516/EClaw/commit/ef9f812a3fcf39efd07fd158ce90951bdd045ac7))
* **kanban:** add explicit done-card reopen flow ([#2801](https://github.com/HankHuang0516/EClaw/issues/2801)) ([5080aac](https://github.com/HankHuang0516/EClaw/commit/5080aacb75047c0deaa379ee708ec85465afd57c))
* **mindmap:** add GET /api/mindmap/graph force-graph projection ([#2680](https://github.com/HankHuang0516/EClaw/issues/2680)) ([a00b2e7](https://github.com/HankHuang0516/EClaw/commit/a00b2e775af2c4c98cd157f760ad87aeeee469f0)), closes [#2679](https://github.com/HankHuang0516/EClaw/issues/2679) [#2679](https://github.com/HankHuang0516/EClaw/issues/2679)
* **dashboard:** add Hermes channel promo card ([#2708](https://github.com/HankHuang0516/EClaw/issues/2708)) ([337aca1](https://github.com/HankHuang0516/EClaw/commit/337aca153d5a1cd7e888c065f00ae54db7872d91))
* **rental:** add listing soft pause ([#2781](https://github.com/HankHuang0516/EClaw/issues/2781)) ([6586b72](https://github.com/HankHuang0516/EClaw/commit/6586b72717ddb1637d91cd3242c8d2ff554f62b4))
* **portal:** add Nagoya 5D4N trip static cross-ref page ([#2689](https://github.com/HankHuang0516/EClaw/issues/2689)) ([2e0efb6](https://github.com/HankHuang0516/EClaw/commit/2e0efb6dcdaff52226cc8854a96747000b12bdff))
* **portal:** add Nagoya trip map links and image lightbox ([#2821](https://github.com/HankHuang0516/EClaw/issues/2821)) ([3e40955](https://github.com/HankHuang0516/EClaw/commit/3e40955650a05f45a6b9f7e39e73847705424a03))
* **portal/nagoya:** add parking shortcut buttons next to itinerary places ([#2826](https://github.com/HankHuang0516/EClaw/issues/2826)) ([63968c5](https://github.com/HankHuang0516/EClaw/commit/63968c554d046afc8d978de74e3aacbf7700500d))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **settings:** add rental roster management preview ([#2758](https://github.com/HankHuang0516/EClaw/issues/2758)) ([9706e59](https://github.com/HankHuang0516/EClaw/commit/9706e59ded140a90a6e02348124282bc69d89001))
* **rental:** add renter health chat indicator ([#2690](https://github.com/HankHuang0516/EClaw/issues/2690)) ([36cd2e9](https://github.com/HankHuang0516/EClaw/commit/36cd2e9802be4c7ebb03d3024617fa74aca48ffd))
* **ios:** add Tutorial & Intro entry in Settings ([#2800](https://github.com/HankHuang0516/EClaw/issues/2800)) ([ed83e51](https://github.com/HankHuang0516/EClaw/commit/ed83e51d043bf4cd5865f38dc95a91ed54820d6c))
* **landing:** add Watch Full Demo CTA below hero video ([#2799](https://github.com/HankHuang0516/EClaw/issues/2799)) ([66107c9](https://github.com/HankHuang0516/EClaw/commit/66107c954727551fd34d989a4674daaad9b63968))
* **footer:** add Watch Intro Video link in Info column ([#2798](https://github.com/HankHuang0516/EClaw/issues/2798)) ([d7c6d59](https://github.com/HankHuang0516/EClaw/commit/d7c6d596b69c6a5b257bf1f7a792a407ef9712ad))
* **i18n:** ar iter-2 — fill 623 missing keys against en source ([#2847](https://github.com/HankHuang0516/EClaw/issues/2847)) ([ee94a7a](https://github.com/HankHuang0516/EClaw/commit/ee94a7ae6812b5163efe4284ee4907ca32302f5c))
* **kanban:** backlog launch-gate flag to suppress L1/L2/L3 escalation ([#2855](https://github.com/HankHuang0516/EClaw/issues/2855)) ([cb8bf1b](https://github.com/HankHuang0516/EClaw/commit/cb8bf1bb6421f25214f65e129a8cadccc49cc266)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#4](https://github.com/HankHuang0516/EClaw/issues/4) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **companion:** bridge crafter-station/petdex gallery (1784 pets) ([#2601](https://github.com/HankHuang0516/EClaw/issues/2601)) ([2e245be](https://github.com/HankHuang0516/EClaw/commit/2e245bea6dd47ea7361b927d389188a3c23b6bb3))
* **promo:** chat avatar size feature landing page (self-hosted MP4) ([#2722](https://github.com/HankHuang0516/EClaw/issues/2722)) ([3852210](https://github.com/HankHuang0516/EClaw/commit/3852210d355704d018e3daca6b5f9512a011b210)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **kanban:** cron-spawn jitter + lane backpressure to prevent same-tick wedge ([#2791](https://github.com/HankHuang0516/EClaw/issues/2791)) ([9f414a7](https://github.com/HankHuang0516/EClaw/commit/9f414a731d6393672a0a4189c7b408c529ae5e12)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **portal:** dashboard usage widget — Claude/Codex 5h gauges + 24h chart (Plan B Phase 3) ([#2891](https://github.com/HankHuang0516/EClaw/issues/2891)) ([d18f373](https://github.com/HankHuang0516/EClaw/commit/d18f373857e4bd302437d6bda2a1e01871fbb1db))
* **portal:** dashboard usage widget v2 — Session/Weekly % bars + projects, no cost (Plan B Phase 3.1) ([#2893](https://github.com/HankHuang0516/EClaw/issues/2893)) ([4bc0dc7](https://github.com/HankHuang0516/EClaw/commit/4bc0dc744ed9d54dfd532ebac4b705c7f84ec0a6))
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **promo:** embed daily eclaw video 2026-05-14 ([#2786](https://github.com/HankHuang0516/EClaw/issues/2786)) ([718a814](https://github.com/HankHuang0516/EClaw/commit/718a814ab16850bc2b33a1b303841e2c4378ecfa)), closes [#2782](https://github.com/HankHuang0516/EClaw/issues/2782) [#2693](https://github.com/HankHuang0516/EClaw/issues/2693)
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **info:** embed promo video at top of Quick Start tab ([#2797](https://github.com/HankHuang0516/EClaw/issues/2797)) ([047679f](https://github.com/HankHuang0516/EClaw/commit/047679fd57ab9949eaeacea414d5611e71afe041))
* **rental:** enforce strict rebind refunds ([#2703](https://github.com/HankHuang0516/EClaw/issues/2703)) ([a1859c5](https://github.com/HankHuang0516/EClaw/commit/a1859c50e6fb3991d7a8051491502d824a14a116))
* **portal:** group task chip actions ([#2825](https://github.com/HankHuang0516/EClaw/issues/2825)) ([5db5c59](https://github.com/HankHuang0516/EClaw/commit/5db5c59b32b8635f1412205faf0c2f9164d3d5d4))
* **portal:** info-guide-rules + info-guide-soul slide pair ([#2793](https://github.com/HankHuang0516/EClaw/issues/2793)) ([1c8bddc](https://github.com/HankHuang0516/EClaw/commit/1c8bddc4c185054b2b60088498e3d45509117127)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **chat:** link card previews to kanban ([#2754](https://github.com/HankHuang0516/EClaw/issues/2754)) ([2261240](https://github.com/HankHuang0516/EClaw/commit/22612402c2e95efb07246629e81a849be41ee9c7))
* **mission:** link notes to kanban cards ([#2723](https://github.com/HankHuang0516/EClaw/issues/2723)) ([b36dc18](https://github.com/HankHuang0516/EClaw/commit/b36dc18f3a8facf12e0b6046351c222f1e99dc55))
* **usage-daemon:** macOS launchd daemon polls Claude/Codex usage → POST /api/usage/snapshot (Plan B Phase 2) ([#2890](https://github.com/HankHuang0516/EClaw/issues/2890)) ([fd225e1](https://github.com/HankHuang0516/EClaw/commit/fd225e12d9491037be1a340bd63b54b5f3308c7f))
* **mindmap:** mission.html link to /portal/mindmap.html + deprecate /api/mission/mindmap ([#2685](https://github.com/HankHuang0516/EClaw/issues/2685)) ([11e297b](https://github.com/HankHuang0516/EClaw/commit/11e297bab1c9b56fcde3027d6500b7c58891bf18)), closes [#2680](https://github.com/HankHuang0516/EClaw/issues/2680) [#2684](https://github.com/HankHuang0516/EClaw/issues/2684)
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **portal:** nagoya trip interactive map (Leaflet + OSM, no API key) ([#2888](https://github.com/HankHuang0516/EClaw/issues/2888)) ([ecfdac0](https://github.com/HankHuang0516/EClaw/commit/ecfdac06348c12ee7c6872c6c28d5f82162e7aa9))
* **channel:** outbound backpressure (30/min cap + 429 retry-after) ([#2911](https://github.com/HankHuang0516/EClaw/issues/2911)) ([36dc99c](https://github.com/HankHuang0516/EClaw/commit/36dc99ca78b0e1724a2aaefb5936669077b7a28f))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **settings:** per-entity nudge override UI (Phase 2) ([#2837](https://github.com/HankHuang0516/EClaw/issues/2837)) ([ea7662b](https://github.com/HankHuang0516/EClaw/commit/ea7662b0858882dae461e1387f711895924f9ab8)), closes [3/#4](https://github.com/HankHuang0516/EClaw/issues/4)
* **kanban:** per-entity nudge overrides (Phase 2 of card_e066cb6b) ([#2836](https://github.com/HankHuang0516/EClaw/issues/2836)) ([0425f80](https://github.com/HankHuang0516/EClaw/commit/0425f80bc1169c0d506b665659c8676695c45553))
* **avatar:** petdx render on card-holder my-cards (Phase 1b) ([#2621](https://github.com/HankHuang0516/EClaw/issues/2621)) ([f78ba8b](https://github.com/HankHuang0516/EClaw/commit/f78ba8b18acc426936ab6d8a82ca7541effea00d))
* **avatar:** petdx render on dashboard entity grid / org chart / bindings (Phase 1b) ([#2622](https://github.com/HankHuang0516/EClaw/issues/2622)) ([f417749](https://github.com/HankHuang0516/EClaw/commit/f41774914451048e8cd76e9ae30416a0642e173b)), closes [#2620](https://github.com/HankHuang0516/EClaw/issues/2620) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621)
* **avatar:** petdx render on kanban auto-assign / pulse / comment avatars (Phase 1b) ([#2624](https://github.com/HankHuang0516/EClaw/issues/2624)) ([6bff5f8](https://github.com/HankHuang0516/EClaw/commit/6bff5f80440d0bd91a6b1721cde9478d685c4d46))
* **avatar:** petdx render on mission skill/rule/soul entity dialogs (Phase 1b) ([#2623](https://github.com/HankHuang0516/EClaw/issues/2623)) ([129327b](https://github.com/HankHuang0516/EClaw/commit/129327bc7b91056659f1ab7e8d5e3f5260d951fb))
* **mindmap:** portal/mindmap.html force-graph prototype ([#129](https://github.com/HankHuang0516/EClaw/issues/129)) ([#2681](https://github.com/HankHuang0516/EClaw/issues/2681)) ([0f15e69](https://github.com/HankHuang0516/EClaw/commit/0f15e6930f0697c37fa08f3219edb8f9e499837f)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **portal:** redo nagoya trip page in professional tour-guide style ([#2691](https://github.com/HankHuang0516/EClaw/issues/2691)) ([b2378c0](https://github.com/HankHuang0516/EClaw/commit/b2378c06ee20fa9cccfdceceb1a4c9e0b3072f59))
* **i18n:** remove ms+hi orphan keys from i18n.js ([#2849](https://github.com/HankHuang0516/EClaw/issues/2849)) ([320176c](https://github.com/HankHuang0516/EClaw/commit/320176c06a3cfd8631e2a82ad02a6bd6a9af0389))
* **avatar:** render selected petdx companion in chat avatars ([#2620](https://github.com/HankHuang0516/EClaw/issues/2620)) ([0bdd046](https://github.com/HankHuang0516/EClaw/commit/0bdd046fe1b1c428e32edda366ff112c08927f4c))
* **home:** replace native home with WebView hosting dashboard.html ([#2634](https://github.com/HankHuang0516/EClaw/issues/2634)) ([e69ea81](https://github.com/HankHuang0516/EClaw/commit/e69ea8160c239b083a83d6dc83a4f1c3f901c863))
* **app:** route chat mission jumps through native tabs ([#2824](https://github.com/HankHuang0516/EClaw/issues/2824)) ([deb07b6](https://github.com/HankHuang0516/EClaw/commit/deb07b69a9ecca632fe27278de537f1d85234e94))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **chat:** support message deep links ([#2719](https://github.com/HankHuang0516/EClaw/issues/2719)) ([2dc0f1e](https://github.com/HankHuang0516/EClaw/commit/2dc0f1eeb259e1a0848db4a03186b989372cd91c))
* **mission:** support note deep links ([#2717](https://github.com/HankHuang0516/EClaw/issues/2717)) ([2efd3a5](https://github.com/HankHuang0516/EClaw/commit/2efd3a5e741217a07c0b0ac54a0ddd010e0ebe23))
* **share-chat:** twitter card + per-bot og:image/twitter:* in SSR ([#2609](https://github.com/HankHuang0516/EClaw/issues/2609)) ([6cdc853](https://github.com/HankHuang0516/EClaw/commit/6cdc853dc884cdb95bd47214942768981f218ae0))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))
* **settings:** wire petdx avatar into channel-account chips ([#2626](https://github.com/HankHuang0516/EClaw/issues/2626)) ([88aec77](https://github.com/HankHuang0516/EClaw/commit/88aec772628c240e97b336bb5820892ad632d1ae))
* **files:** wire petdx avatar into entity filter & per-file badges ([#2627](https://github.com/HankHuang0516/EClaw/issues/2627)) ([5b3e5cc](https://github.com/HankHuang0516/EClaw/commit/5b3e5cc542d9da69bb4e92500fd03a542ea33f00))
* **mindmap:** wrap hardcoded zh-TW UI strings with i18n t() ([#2607](https://github.com/HankHuang0516/EClaw/issues/2607)) ([166af87](https://github.com/HankHuang0516/EClaw/commit/166af8772b2121a24aaf34a83b3de970e9b3b571)), closes [#2606](https://github.com/HankHuang0516/EClaw/issues/2606)
* **i18n:** zh-TW backfill 8 keys (soft-pause + chat + invite + wallet) ([#2815](https://github.com/HankHuang0516/EClaw/issues/2815)) ([a2dd574](https://github.com/HankHuang0516/EClaw/commit/a2dd5743ce8d43a4b6ace9a2fd4b52568180d6c5))


### Performance Improvements

* **mindmap:** force-graph hardening for 1000/2000-node graphs ([#2684](https://github.com/HankHuang0516/EClaw/issues/2684)) ([da8b1c8](https://github.com/HankHuang0516/EClaw/commit/da8b1c8f947ab8bc8fa455c1962a91146623a1fc))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-24)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **notifications:** add kanban_done + kanban_done_auto toggles to Android Settings ([#2636](https://github.com/HankHuang0516/EClaw/issues/2636)) ([a710909](https://github.com/HankHuang0516/EClaw/commit/a7109095e3393b8564e7ef1b23d382a4fbb944b8))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **i18n:** ar block — fix 27 broken entries (CJK leaks + truncated HTML) ([#2851](https://github.com/HankHuang0516/EClaw/issues/2851)) ([5b19175](https://github.com/HankHuang0516/EClaw/commit/5b19175d712d00d16fcec00b749035c4beae7a5c))
* **chat:** atomic-load target bar (await contacts before first render) ([#2831](https://github.com/HankHuang0516/EClaw/issues/2831)) ([5f529e6](https://github.com/HankHuang0516/EClaw/commit/5f529e6b772eacc38ba1de69b44258a05f0d816a)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2](https://github.com/HankHuang0516/EClaw/issues/2)
* **channel:** await binding persistence ([712516d](https://github.com/HankHuang0516/EClaw/commit/712516decafb745035bd1434a28cc1973d433e19))
* **rental:** bump handshake timeout to 60s + timeout-aware discovery fallback ([#2863](https://github.com/HankHuang0516/EClaw/issues/2863)) ([fd4322f](https://github.com/HankHuang0516/EClaw/commit/fd4322f8890f3c2dfca3acdae6a4b95f19c381f9)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **i18n:** clear batch 1 residual missing keys ([#2790](https://github.com/HankHuang0516/EClaw/issues/2790)) ([211030e](https://github.com/HankHuang0516/EClaw/commit/211030e0b0b6a865c11f0c4ed60dc4e356d43b7a))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **kanban:** comment input no longer overlaps last comment in card detail (PR [#2678](https://github.com/HankHuang0516/EClaw/issues/2678)) ([fba91fc](https://github.com/HankHuang0516/EClaw/commit/fba91fca15402b453a0db5ee857c0b16e6087055))
* **chat:** compact 20px avatar in target bar (App WebView only shows [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2](https://github.com/HankHuang0516/EClaw/issues/2)) ([#2830](https://github.com/HankHuang0516/EClaw/issues/2830)) ([42c7543](https://github.com/HankHuang0516/EClaw/commit/42c7543b4a78a7abf3f5f7535eb9bc6142cd0fe2)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **portal:** complete 401 redirect sweep + mobile UIUX truncation ([#2842](https://github.com/HankHuang0516/EClaw/issues/2842)) ([f9799ba](https://github.com/HankHuang0516/EClaw/commit/f9799ba42498b109f0a8a70e80836aa6da51e216)), closes [#2833](https://github.com/HankHuang0516/EClaw/issues/2833) [#2845](https://github.com/HankHuang0516/EClaw/issues/2845) [#2844](https://github.com/HankHuang0516/EClaw/issues/2844) [#2843](https://github.com/HankHuang0516/EClaw/issues/2843)
* **uiux:** continue qa mobile readability sweep ([#2854](https://github.com/HankHuang0516/EClaw/issues/2854)) ([57606ff](https://github.com/HankHuang0516/EClaw/commit/57606ffe3e543b07a026aacc53c4b470c9a7825b))
* **i18n:** cover dynamic portal wrapper keys ([#2807](https://github.com/HankHuang0516/EClaw/issues/2807)) ([4c711cc](https://github.com/HankHuang0516/EClaw/commit/4c711cc4009300ffe4e8933a98ee01cd0fdd6aeb))
* **i18n:** dedup 20 dash_channel_card_* keys in es block ([#2876](https://github.com/HankHuang0516/EClaw/issues/2876)) ([807284c](https://github.com/HankHuang0516/EClaw/commit/807284ce363ef119ccdb0ae40e5ce99d3f0a27e0))
* **kanban:** dep-aware nudge gating + roadmap dependency backfill ([#2904](https://github.com/HankHuang0516/EClaw/issues/2904)) ([2b76ac9](https://github.com/HankHuang0516/EClaw/commit/2b76ac9d3b7e4169b7bc3c6f6b0b0903b63cd9f7)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **rental:** don't pollute entity.message on push gateway timeout ([#2860](https://github.com/HankHuang0516/EClaw/issues/2860)) ([592ba44](https://github.com/HankHuang0516/EClaw/commit/592ba44f57536ee00011b6cbddaa6b129a7cbae9))
* **petdx:** drop dark-grey loading placeholder + preload sprite WEBP ([#2628](https://github.com/HankHuang0516/EClaw/issues/2628)) ([59cef38](https://github.com/HankHuang0516/EClaw/commit/59cef387bd69ca99d7d15c86a1364856d3849ad8)), closes [#1a1a1a](https://github.com/HankHuang0516/EClaw/issues/1a1a1a)
* **gateway-ws:** drop Origin header on server-to-server WS upgrade ([#2869](https://github.com/HankHuang0516/EClaw/issues/2869)) ([716dcf9](https://github.com/HankHuang0516/EClaw/commit/716dcf9d0834b17522bb9d894bad84bc142d1a19))
* **setup-scripts:** drop Origin header on server-to-server WS upgrade ([#2875](https://github.com/HankHuang0516/EClaw/issues/2875)) ([9d893b8](https://github.com/HankHuang0516/EClaw/commit/9d893b8e5eea4db275e450bf423903c156cd3e4b)), closes [#2869](https://github.com/HankHuang0516/EClaw/issues/2869)
* **security:** escape innerHTML in chat modal error messages ([#2819](https://github.com/HankHuang0516/EClaw/issues/2819)) ([dce07ad](https://github.com/HankHuang0516/EClaw/commit/dce07adde64795916dba977ae23e46f3371ce7ed)), closes [#2809](https://github.com/HankHuang0516/EClaw/issues/2809) [#2810](https://github.com/HankHuang0516/EClaw/issues/2810) [#2809](https://github.com/HankHuang0516/EClaw/issues/2809) [#2810](https://github.com/HankHuang0516/EClaw/issues/2810)
* **entities:** expose botSecret to owner so wallpaper service can poll companions ([#2615](https://github.com/HankHuang0516/EClaw/issues/2615)) ([04470fc](https://github.com/HankHuang0516/EClaw/commit/04470fce8f8c3fce2b1ba8b243e776606f107502))
* **rental:** expose owner_public_code in marketplace so plaza CTA can route ([#2616](https://github.com/HankHuang0516/EClaw/issues/2616)) ([4d1372f](https://github.com/HankHuang0516/EClaw/commit/4d1372f717d93cab65543e87c852e74e9fb67071)), closes [#2610](https://github.com/HankHuang0516/EClaw/issues/2610)
* **mindmap:** fallback to device scope when entityId is null ([#2728](https://github.com/HankHuang0516/EClaw/issues/2728)) ([7572312](https://github.com/HankHuang0516/EClaw/commit/7572312433d3d75fc245eda48a28919ce14bd927))
* **i18n:** fill Spanish drift keys ([#2751](https://github.com/HankHuang0516/EClaw/issues/2751)) ([0ad0ee5](https://github.com/HankHuang0516/EClaw/commit/0ad0ee55f7fac3e6ac46d891539950dab4d553cc))
* **portal:** fit embedded org chart to mobile viewport ([#2674](https://github.com/HankHuang0516/EClaw/issues/2674)) ([1c4e1b4](https://github.com/HankHuang0516/EClaw/commit/1c4e1b413ea7027b4cd4b8ecda981b0d0e12e66b))
* **i18n:** fix 6 trailing-comma syntax errors in 10-locale batch ([#2771](https://github.com/HankHuang0516/EClaw/issues/2771)) ([b27c6ca](https://github.com/HankHuang0516/EClaw/commit/b27c6ca204bf813e406c54ce3a2532a5f1f031b3))
* **kanban:** GET card returns latest 50 comments + comments endpoint exposes total ([#2816](https://github.com/HankHuang0516/EClaw/issues/2816)) ([c4d83f7](https://github.com/HankHuang0516/EClaw/commit/c4d83f777a1cd26aea0936e4316aa35c52822eef))
* **sharechat:** guest verify-email modal + disabled Send for unverified ([#2865](https://github.com/HankHuang0516/EClaw/issues/2865)) ([cb3b061](https://github.com/HankHuang0516/EClaw/commit/cb3b0614e0f6160417d907753e66eceb2d666802))
* **uiux:** harden chat previews and roster preview ([#2769](https://github.com/HankHuang0516/EClaw/issues/2769)) ([466d4d3](https://github.com/HankHuang0516/EClaw/commit/466d4d3ef81c628d3f58db64323946053d7bf61c))
* **mention-parser:** ignore @-mentions inside markdown code spans ([#2645](https://github.com/HankHuang0516/EClaw/issues/2645)) ([8da19d4](https://github.com/HankHuang0516/EClaw/commit/8da19d4a79ceb4152bf2144ee0847c61ce3e1def)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **kanban:** lazy-load dependency chips via IntersectionObserver ([#2632](https://github.com/HankHuang0516/EClaw/issues/2632)) ([20586b4](https://github.com/HankHuang0516/EClaw/commit/20586b43357335f9eb6a190c02d58c8e36b58aba)), closes [#2631](https://github.com/HankHuang0516/EClaw/issues/2631)
* **kanban:** make card sorting deterministic ([#2756](https://github.com/HankHuang0516/EClaw/issues/2756)) ([48e2117](https://github.com/HankHuang0516/EClaw/commit/48e2117b64e37f05dc635e0a3b67bfd43cbe48f5))
* **portal/nagoya-trip:** map-link invisible on dark hero/day-banner ([#2897](https://github.com/HankHuang0516/EClaw/issues/2897)) ([cc33df6](https://github.com/HankHuang0516/EClaw/commit/cc33df686673455c20beaee60871412a5d486e66)), closes [#1f4030](https://github.com/HankHuang0516/EClaw/issues/1f4030) [#8b8579](https://github.com/HankHuang0516/EClaw/issues/8b8579) [#6e6859](https://github.com/HankHuang0516/EClaw/issues/6e6859) [#7a5614](https://github.com/HankHuang0516/EClaw/issues/7a5614)
* **org-chart:** notify affected bots on hierarchy change ([#2812](https://github.com/HankHuang0516/EClaw/issues/2812)) ([55675fd](https://github.com/HankHuang0516/EClaw/commit/55675fdf4487494d729a29524b32bd81b756a00c)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** notify reviewer on manual /move → review ([#2753](https://github.com/HankHuang0516/EClaw/issues/2753)) ([6cbbb4e](https://github.com/HankHuang0516/EClaw/commit/6cbbb4ee8c0d4d8ad54df2e9b5faaa3699bd530f))
* **wallpaper:** off-load spritesheet fetch to IO so per-petdx sprites actually render ([#2618](https://github.com/HankHuang0516/EClaw/issues/2618)) ([61b832c](https://github.com/HankHuang0516/EClaw/commit/61b832c9fa8a1d0caab810ccc942d85c63349267)), closes [#2615](https://github.com/HankHuang0516/EClaw/issues/2615) [#2577](https://github.com/HankHuang0516/EClaw/issues/2577)
* **security:** patch P0 sanitize-html XSS + P1 protobufjs + exam.html XSS ([#2829](https://github.com/HankHuang0516/EClaw/issues/2829)) ([c71b871](https://github.com/HankHuang0516/EClaw/commit/c71b871a045887375dd0d26d1a3280a0891a89ad))
* **security:** patch ws uninitialized memory disclosure (GHSA-58qx-3vcg-4xpx) ([#2872](https://github.com/HankHuang0516/EClaw/issues/2872)) ([2523d15](https://github.com/HankHuang0516/EClaw/commit/2523d154bbe501a7cc086340f7a07ece3abfa69b))
* **portal:** petdx-browser cookie-session fallback for device-login ([#2757](https://github.com/HankHuang0516/EClaw/issues/2757)) ([ca275f4](https://github.com/HankHuang0516/EClaw/commit/ca275f4519835da0c7ad71c588908a18f6f138d8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **api:** platform-stats 500 + entity/lookup publicCode alias ([#2809](https://github.com/HankHuang0516/EClaw/issues/2809), [#2810](https://github.com/HankHuang0516/EClaw/issues/2810)) ([#2818](https://github.com/HankHuang0516/EClaw/issues/2818)) ([f99fd17](https://github.com/HankHuang0516/EClaw/commit/f99fd17b2b1c32d88daa2510ff66d714c1a53edc))
* **i18n:** positional format specifiers for feedback_result_logs (7 locales) ([#2597](https://github.com/HankHuang0516/EClaw/issues/2597)) ([21aedc7](https://github.com/HankHuang0516/EClaw/commit/21aedc7eebc7a2839e340136f38dfdfd4dabb9dc))
* **avatar-petdx:** preserve descriptor across transient API failures (flicker) ([#2625](https://github.com/HankHuang0516/EClaw/issues/2625)) ([7b1c606](https://github.com/HankHuang0516/EClaw/commit/7b1c606514f7698d72ec95cf6c556e4043966186))
* **chat:** preserve recipient selection across rental-health refresh (P0 #card_eb1cba76) ([#2906](https://github.com/HankHuang0516/EClaw/issues/2906)) ([9cc0301](https://github.com/HankHuang0516/EClaw/commit/9cc0301cc26a0f49af4b7f53486f5c1a7cdd7902)), closes [#card_eb1cba76](https://github.com/HankHuang0516/EClaw/issues/card_eb1cba76) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **chat:** preserve scroll anchor while reading history ([#2693](https://github.com/HankHuang0516/EClaw/issues/2693)) ([945fdb7](https://github.com/HankHuang0516/EClaw/commit/945fdb7192b791b31882e1e75568dd8b11e4686f))
* **promo:** pull video embed from /promo-chat-avatar.html ([#2724](https://github.com/HankHuang0516/EClaw/issues/2724)) ([2afabc8](https://github.com/HankHuang0516/EClaw/commit/2afabc8c5ff8b25218a7cb857e8adfa572c8e9d5))
* **dashboard:** read live.rate_limits.{five_hour,seven_day}.used_percentage ([#2895](https://github.com/HankHuang0516/EClaw/issues/2895)) ([8223303](https://github.com/HankHuang0516/EClaw/commit/822330312bccb1c76675ad2c3b26e78d10dd1298))
* **kanban:** realign stale recurring schedules ([#2785](https://github.com/HankHuang0516/EClaw/issues/2785)) ([ab8ee25](https://github.com/HankHuang0516/EClaw/commit/ab8ee250a9b37f3d3e838bb01d8866c8d2b78231))
* **portal:** reduce QA-discovered request fanout ([#2656](https://github.com/HankHuang0516/EClaw/issues/2656)) ([1e46d6b](https://github.com/HankHuang0516/EClaw/commit/1e46d6bab61e58c65b452b6503d953f8dddeee75))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **portal:** remove org chart fit scale floor ([#2676](https://github.com/HankHuang0516/EClaw/issues/2676)) ([0f01606](https://github.com/HankHuang0516/EClaw/commit/0f016068b963bb5f800a02f28817c7174979d913))
* **rental:** remove phantom 'webhook test push' step from BIND_COMPLETE ([#2864](https://github.com/HankHuang0516/EClaw/issues/2864)) ([47f4a3e](https://github.com/HankHuang0516/EClaw/commit/47f4a3edf76aa95ebd06d8713cd44fda6eef9b5d))
* **i18n:** rename mm_empty_title → mm_state_empty_title in mindmap.html ([#2683](https://github.com/HankHuang0516/EClaw/issues/2683)) ([c79c109](https://github.com/HankHuang0516/EClaw/commit/c79c109bea23142e8a6d9ace976d105af1280ec9))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **chat:** render mention avatars with companion renderer ([#2633](https://github.com/HankHuang0516/EClaw/issues/2633)) ([03e205f](https://github.com/HankHuang0516/EClaw/commit/03e205f663ecd2c2f443d4009dd5af0093f0bbbb))
* **kanban:** reserve mobile comments panel height ([#2782](https://github.com/HankHuang0516/EClaw/issues/2782)) ([ce8662d](https://github.com/HankHuang0516/EClaw/commit/ce8662d362422fdd25037f1deb61dbed9425e2f9))
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* scheduled audit 2026-05-13 — 6 bugs, XSS, i18n ([#2668](https://github.com/HankHuang0516/EClaw/issues/2668)) ([21dd513](https://github.com/HankHuang0516/EClaw/commit/21dd513b4464738de29164265437435ba6cc4817)), closes [#2605](https://github.com/HankHuang0516/EClaw/issues/2605) [#2608](https://github.com/HankHuang0516/EClaw/issues/2608) [#2600](https://github.com/HankHuang0516/EClaw/issues/2600) [#2599](https://github.com/HankHuang0516/EClaw/issues/2599) [#2598](https://github.com/HankHuang0516/EClaw/issues/2598)
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **dashboard:** show Claude weekly bar reset countdown ([#2896](https://github.com/HankHuang0516/EClaw/issues/2896)) ([3b87845](https://github.com/HankHuang0516/EClaw/commit/3b87845d713e980fec69f6b8007549338a326713)), closes [#2895](https://github.com/HankHuang0516/EClaw/issues/2895)
* **chat:** smart-chip preview falls back to inline c.comments when /comments fails (PR [#2677](https://github.com/HankHuang0516/EClaw/issues/2677)) ([7f4dffd](https://github.com/HankHuang0516/EClaw/commit/7f4dffd2c83ea86f296b8fa0610f0e67c9f1af11))
* **kanban:** stabilize comment detail viewport ([#2796](https://github.com/HankHuang0516/EClaw/issues/2796)) ([0a10aad](https://github.com/HankHuang0516/EClaw/commit/0a10aadb5a5b12ff23454c16d5c88183b94ad7d7))
* **wallpaper:** stop Android live wallpaper flashing default lobster on companion change ([#2629](https://github.com/HankHuang0516/EClaw/issues/2629)) ([8b4f66f](https://github.com/HankHuang0516/EClaw/commit/8b4f66fcb335bf43128f924b761b6337c817095b)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **chat:** stop chat.html bouncing to dashboard via /api/rental/health-status 401 race ([#2833](https://github.com/HankHuang0516/EClaw/issues/2833)) ([c422406](https://github.com/HankHuang0516/EClaw/commit/c4224067cdcfe7f3e22ab95007c7563dac4196ac))
* **openclaw-channel:** support OpenClaw 2026.5.20 ([8045de6](https://github.com/HankHuang0516/EClaw/commit/8045de6bebecfc05f9bd57453b99c098ca35681b))
* **mentions:** support same-device CJK display-name tags ([#2874](https://github.com/HankHuang0516/EClaw/issues/2874)) ([b8f61be](https://github.com/HankHuang0516/EClaw/commit/b8f61be9a3962fef75dd32ea34e8900880dafaf9))
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **dashboard:** use sessions[].project for widget Projects list (was .project_id) ([#2894](https://github.com/HankHuang0516/EClaw/issues/2894)) ([0fd1334](https://github.com/HankHuang0516/EClaw/commit/0fd1334897d4a603cc6eb74f34b48606547e09cf))
* **app:** WebView pages honor app-selected locale via ?lang= URL param ([#2672](https://github.com/HankHuang0516/EClaw/issues/2672)) ([8ed8757](https://github.com/HankHuang0516/EClaw/commit/8ed8757aec5bf214e837cc0d81bf2b23f1993a91)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **share-chat:** wire rich CTA actions to msgInput ([#2867](https://github.com/HankHuang0516/EClaw/issues/2867)) ([df23b11](https://github.com/HankHuang0516/EClaw/commit/df23b1147d34c59a644a145bbd87c18b96400acc))


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* **usage-api:** /api/usage/{snapshot,timeline} + usage_snapshots table (Plan B Phase 1) ([#2889](https://github.com/HankHuang0516/EClaw/issues/2889)) ([a0d859c](https://github.com/HankHuang0516/EClaw/commit/a0d859c63f0220909dadb2b1952174861ccdce14))
* **community:** 1-click chat button on bot cards + utm tagging ([#2610](https://github.com/HankHuang0516/EClaw/issues/2610)) ([eee97b0](https://github.com/HankHuang0516/EClaw/commit/eee97b0e2e4e74945ec24f218a69a52800b97a66))
* **chat:** accept ?messageId= as deep-link alias ([#2838](https://github.com/HankHuang0516/EClaw/issues/2838)) ([1785a87](https://github.com/HankHuang0516/EClaw/commit/1785a87310426637fd10df83754fb9924c45207f))
* **chat:** add avatar size preference ([#2714](https://github.com/HankHuang0516/EClaw/issues/2714)) ([6fe164a](https://github.com/HankHuang0516/EClaw/commit/6fe164ad8b22fa576d2dd9ad37c0d9fc295b5a83))
* **dashboard:** add Claude and Codex channel guides ([#2640](https://github.com/HankHuang0516/EClaw/issues/2640)) ([c64e4c4](https://github.com/HankHuang0516/EClaw/commit/c64e4c4afc78db58c5cd578f00486dd7b2fd3311))
* **dashboard:** add Claude Code channel guide card ([#2667](https://github.com/HankHuang0516/EClaw/issues/2667)) ([d70d75c](https://github.com/HankHuang0516/EClaw/commit/d70d75c0c8caa8a540358a9aab4556b8c1927a5c))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* **kanban:** add device-scoped card tags ([#2773](https://github.com/HankHuang0516/EClaw/issues/2773)) ([53a387e](https://github.com/HankHuang0516/EClaw/commit/53a387e67ba7bb4f6bed1c427000c4ae8666577a))
* **portal:** add entity selector to petdx-browser ([#2602](https://github.com/HankHuang0516/EClaw/issues/2602)) ([3fa067e](https://github.com/HankHuang0516/EClaw/commit/3fa067e00b38829b48a37cecd33ee81a9a1122d9))
* **kanban:** add explicit card links ([#2721](https://github.com/HankHuang0516/EClaw/issues/2721)) ([ef9f812](https://github.com/HankHuang0516/EClaw/commit/ef9f812a3fcf39efd07fd158ce90951bdd045ac7))
* **kanban:** add explicit done-card reopen flow ([#2801](https://github.com/HankHuang0516/EClaw/issues/2801)) ([5080aac](https://github.com/HankHuang0516/EClaw/commit/5080aacb75047c0deaa379ee708ec85465afd57c))
* **mindmap:** add GET /api/mindmap/graph force-graph projection ([#2680](https://github.com/HankHuang0516/EClaw/issues/2680)) ([a00b2e7](https://github.com/HankHuang0516/EClaw/commit/a00b2e775af2c4c98cd157f760ad87aeeee469f0)), closes [#2679](https://github.com/HankHuang0516/EClaw/issues/2679) [#2679](https://github.com/HankHuang0516/EClaw/issues/2679)
* **dashboard:** add Hermes channel promo card ([#2708](https://github.com/HankHuang0516/EClaw/issues/2708)) ([337aca1](https://github.com/HankHuang0516/EClaw/commit/337aca153d5a1cd7e888c065f00ae54db7872d91))
* **rental:** add listing soft pause ([#2781](https://github.com/HankHuang0516/EClaw/issues/2781)) ([6586b72](https://github.com/HankHuang0516/EClaw/commit/6586b72717ddb1637d91cd3242c8d2ff554f62b4))
* **portal:** add Nagoya 5D4N trip static cross-ref page ([#2689](https://github.com/HankHuang0516/EClaw/issues/2689)) ([2e0efb6](https://github.com/HankHuang0516/EClaw/commit/2e0efb6dcdaff52226cc8854a96747000b12bdff))
* **portal:** add Nagoya trip map links and image lightbox ([#2821](https://github.com/HankHuang0516/EClaw/issues/2821)) ([3e40955](https://github.com/HankHuang0516/EClaw/commit/3e40955650a05f45a6b9f7e39e73847705424a03))
* **portal/nagoya:** add parking shortcut buttons next to itinerary places ([#2826](https://github.com/HankHuang0516/EClaw/issues/2826)) ([63968c5](https://github.com/HankHuang0516/EClaw/commit/63968c554d046afc8d978de74e3aacbf7700500d))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **settings:** add rental roster management preview ([#2758](https://github.com/HankHuang0516/EClaw/issues/2758)) ([9706e59](https://github.com/HankHuang0516/EClaw/commit/9706e59ded140a90a6e02348124282bc69d89001))
* **rental:** add renter health chat indicator ([#2690](https://github.com/HankHuang0516/EClaw/issues/2690)) ([36cd2e9](https://github.com/HankHuang0516/EClaw/commit/36cd2e9802be4c7ebb03d3024617fa74aca48ffd))
* **ios:** add Tutorial & Intro entry in Settings ([#2800](https://github.com/HankHuang0516/EClaw/issues/2800)) ([ed83e51](https://github.com/HankHuang0516/EClaw/commit/ed83e51d043bf4cd5865f38dc95a91ed54820d6c))
* **landing:** add Watch Full Demo CTA below hero video ([#2799](https://github.com/HankHuang0516/EClaw/issues/2799)) ([66107c9](https://github.com/HankHuang0516/EClaw/commit/66107c954727551fd34d989a4674daaad9b63968))
* **footer:** add Watch Intro Video link in Info column ([#2798](https://github.com/HankHuang0516/EClaw/issues/2798)) ([d7c6d59](https://github.com/HankHuang0516/EClaw/commit/d7c6d596b69c6a5b257bf1f7a792a407ef9712ad))
* **i18n:** ar iter-2 — fill 623 missing keys against en source ([#2847](https://github.com/HankHuang0516/EClaw/issues/2847)) ([ee94a7a](https://github.com/HankHuang0516/EClaw/commit/ee94a7ae6812b5163efe4284ee4907ca32302f5c))
* **kanban:** backlog launch-gate flag to suppress L1/L2/L3 escalation ([#2855](https://github.com/HankHuang0516/EClaw/issues/2855)) ([cb8bf1b](https://github.com/HankHuang0516/EClaw/commit/cb8bf1bb6421f25214f65e129a8cadccc49cc266)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#4](https://github.com/HankHuang0516/EClaw/issues/4) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **companion:** bridge crafter-station/petdex gallery (1784 pets) ([#2601](https://github.com/HankHuang0516/EClaw/issues/2601)) ([2e245be](https://github.com/HankHuang0516/EClaw/commit/2e245bea6dd47ea7361b927d389188a3c23b6bb3))
* **promo:** chat avatar size feature landing page (self-hosted MP4) ([#2722](https://github.com/HankHuang0516/EClaw/issues/2722)) ([3852210](https://github.com/HankHuang0516/EClaw/commit/3852210d355704d018e3daca6b5f9512a011b210)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **kanban:** cron-spawn jitter + lane backpressure to prevent same-tick wedge ([#2791](https://github.com/HankHuang0516/EClaw/issues/2791)) ([9f414a7](https://github.com/HankHuang0516/EClaw/commit/9f414a731d6393672a0a4189c7b408c529ae5e12)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **portal:** dashboard usage widget — Claude/Codex 5h gauges + 24h chart (Plan B Phase 3) ([#2891](https://github.com/HankHuang0516/EClaw/issues/2891)) ([d18f373](https://github.com/HankHuang0516/EClaw/commit/d18f373857e4bd302437d6bda2a1e01871fbb1db))
* **portal:** dashboard usage widget v2 — Session/Weekly % bars + projects, no cost (Plan B Phase 3.1) ([#2893](https://github.com/HankHuang0516/EClaw/issues/2893)) ([4bc0dc7](https://github.com/HankHuang0516/EClaw/commit/4bc0dc744ed9d54dfd532ebac4b705c7f84ec0a6))
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **promo:** embed daily eclaw video 2026-05-14 ([#2786](https://github.com/HankHuang0516/EClaw/issues/2786)) ([718a814](https://github.com/HankHuang0516/EClaw/commit/718a814ab16850bc2b33a1b303841e2c4378ecfa)), closes [#2782](https://github.com/HankHuang0516/EClaw/issues/2782) [#2693](https://github.com/HankHuang0516/EClaw/issues/2693)
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **info:** embed promo video at top of Quick Start tab ([#2797](https://github.com/HankHuang0516/EClaw/issues/2797)) ([047679f](https://github.com/HankHuang0516/EClaw/commit/047679fd57ab9949eaeacea414d5611e71afe041))
* **rental:** enforce strict rebind refunds ([#2703](https://github.com/HankHuang0516/EClaw/issues/2703)) ([a1859c5](https://github.com/HankHuang0516/EClaw/commit/a1859c50e6fb3991d7a8051491502d824a14a116))
* **portal:** group task chip actions ([#2825](https://github.com/HankHuang0516/EClaw/issues/2825)) ([5db5c59](https://github.com/HankHuang0516/EClaw/commit/5db5c59b32b8635f1412205faf0c2f9164d3d5d4))
* **portal:** info-guide-rules + info-guide-soul slide pair ([#2793](https://github.com/HankHuang0516/EClaw/issues/2793)) ([1c8bddc](https://github.com/HankHuang0516/EClaw/commit/1c8bddc4c185054b2b60088498e3d45509117127)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **chat:** link card previews to kanban ([#2754](https://github.com/HankHuang0516/EClaw/issues/2754)) ([2261240](https://github.com/HankHuang0516/EClaw/commit/22612402c2e95efb07246629e81a849be41ee9c7))
* **mission:** link notes to kanban cards ([#2723](https://github.com/HankHuang0516/EClaw/issues/2723)) ([b36dc18](https://github.com/HankHuang0516/EClaw/commit/b36dc18f3a8facf12e0b6046351c222f1e99dc55))
* **usage-daemon:** macOS launchd daemon polls Claude/Codex usage → POST /api/usage/snapshot (Plan B Phase 2) ([#2890](https://github.com/HankHuang0516/EClaw/issues/2890)) ([fd225e1](https://github.com/HankHuang0516/EClaw/commit/fd225e12d9491037be1a340bd63b54b5f3308c7f))
* **mindmap:** mission.html link to /portal/mindmap.html + deprecate /api/mission/mindmap ([#2685](https://github.com/HankHuang0516/EClaw/issues/2685)) ([11e297b](https://github.com/HankHuang0516/EClaw/commit/11e297bab1c9b56fcde3027d6500b7c58891bf18)), closes [#2680](https://github.com/HankHuang0516/EClaw/issues/2680) [#2684](https://github.com/HankHuang0516/EClaw/issues/2684)
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **portal:** nagoya trip interactive map (Leaflet + OSM, no API key) ([#2888](https://github.com/HankHuang0516/EClaw/issues/2888)) ([ecfdac0](https://github.com/HankHuang0516/EClaw/commit/ecfdac06348c12ee7c6872c6c28d5f82162e7aa9))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **settings:** per-entity nudge override UI (Phase 2) ([#2837](https://github.com/HankHuang0516/EClaw/issues/2837)) ([ea7662b](https://github.com/HankHuang0516/EClaw/commit/ea7662b0858882dae461e1387f711895924f9ab8)), closes [3/#4](https://github.com/HankHuang0516/EClaw/issues/4)
* **kanban:** per-entity nudge overrides (Phase 2 of card_e066cb6b) ([#2836](https://github.com/HankHuang0516/EClaw/issues/2836)) ([0425f80](https://github.com/HankHuang0516/EClaw/commit/0425f80bc1169c0d506b665659c8676695c45553))
* **avatar:** petdx render on card-holder my-cards (Phase 1b) ([#2621](https://github.com/HankHuang0516/EClaw/issues/2621)) ([f78ba8b](https://github.com/HankHuang0516/EClaw/commit/f78ba8b18acc426936ab6d8a82ca7541effea00d))
* **avatar:** petdx render on dashboard entity grid / org chart / bindings (Phase 1b) ([#2622](https://github.com/HankHuang0516/EClaw/issues/2622)) ([f417749](https://github.com/HankHuang0516/EClaw/commit/f41774914451048e8cd76e9ae30416a0642e173b)), closes [#2620](https://github.com/HankHuang0516/EClaw/issues/2620) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621)
* **avatar:** petdx render on kanban auto-assign / pulse / comment avatars (Phase 1b) ([#2624](https://github.com/HankHuang0516/EClaw/issues/2624)) ([6bff5f8](https://github.com/HankHuang0516/EClaw/commit/6bff5f80440d0bd91a6b1721cde9478d685c4d46))
* **avatar:** petdx render on mission skill/rule/soul entity dialogs (Phase 1b) ([#2623](https://github.com/HankHuang0516/EClaw/issues/2623)) ([129327b](https://github.com/HankHuang0516/EClaw/commit/129327bc7b91056659f1ab7e8d5e3f5260d951fb))
* **mindmap:** portal/mindmap.html force-graph prototype ([#129](https://github.com/HankHuang0516/EClaw/issues/129)) ([#2681](https://github.com/HankHuang0516/EClaw/issues/2681)) ([0f15e69](https://github.com/HankHuang0516/EClaw/commit/0f15e6930f0697c37fa08f3219edb8f9e499837f)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **portal:** redo nagoya trip page in professional tour-guide style ([#2691](https://github.com/HankHuang0516/EClaw/issues/2691)) ([b2378c0](https://github.com/HankHuang0516/EClaw/commit/b2378c06ee20fa9cccfdceceb1a4c9e0b3072f59))
* **i18n:** remove ms+hi orphan keys from i18n.js ([#2849](https://github.com/HankHuang0516/EClaw/issues/2849)) ([320176c](https://github.com/HankHuang0516/EClaw/commit/320176c06a3cfd8631e2a82ad02a6bd6a9af0389))
* **avatar:** render selected petdx companion in chat avatars ([#2620](https://github.com/HankHuang0516/EClaw/issues/2620)) ([0bdd046](https://github.com/HankHuang0516/EClaw/commit/0bdd046fe1b1c428e32edda366ff112c08927f4c))
* **home:** replace native home with WebView hosting dashboard.html ([#2634](https://github.com/HankHuang0516/EClaw/issues/2634)) ([e69ea81](https://github.com/HankHuang0516/EClaw/commit/e69ea8160c239b083a83d6dc83a4f1c3f901c863))
* **app:** route chat mission jumps through native tabs ([#2824](https://github.com/HankHuang0516/EClaw/issues/2824)) ([deb07b6](https://github.com/HankHuang0516/EClaw/commit/deb07b69a9ecca632fe27278de537f1d85234e94))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **chat:** support message deep links ([#2719](https://github.com/HankHuang0516/EClaw/issues/2719)) ([2dc0f1e](https://github.com/HankHuang0516/EClaw/commit/2dc0f1eeb259e1a0848db4a03186b989372cd91c))
* **mission:** support note deep links ([#2717](https://github.com/HankHuang0516/EClaw/issues/2717)) ([2efd3a5](https://github.com/HankHuang0516/EClaw/commit/2efd3a5e741217a07c0b0ac54a0ddd010e0ebe23))
* **share-chat:** twitter card + per-bot og:image/twitter:* in SSR ([#2609](https://github.com/HankHuang0516/EClaw/issues/2609)) ([6cdc853](https://github.com/HankHuang0516/EClaw/commit/6cdc853dc884cdb95bd47214942768981f218ae0))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))
* **settings:** wire petdx avatar into channel-account chips ([#2626](https://github.com/HankHuang0516/EClaw/issues/2626)) ([88aec77](https://github.com/HankHuang0516/EClaw/commit/88aec772628c240e97b336bb5820892ad632d1ae))
* **files:** wire petdx avatar into entity filter & per-file badges ([#2627](https://github.com/HankHuang0516/EClaw/issues/2627)) ([5b3e5cc](https://github.com/HankHuang0516/EClaw/commit/5b3e5cc542d9da69bb4e92500fd03a542ea33f00))
* **mindmap:** wrap hardcoded zh-TW UI strings with i18n t() ([#2607](https://github.com/HankHuang0516/EClaw/issues/2607)) ([166af87](https://github.com/HankHuang0516/EClaw/commit/166af8772b2121a24aaf34a83b3de970e9b3b571)), closes [#2606](https://github.com/HankHuang0516/EClaw/issues/2606)
* **i18n:** zh-TW backfill 8 keys (soft-pause + chat + invite + wallet) ([#2815](https://github.com/HankHuang0516/EClaw/issues/2815)) ([a2dd574](https://github.com/HankHuang0516/EClaw/commit/a2dd5743ce8d43a4b6ace9a2fd4b52568180d6c5))


### Performance Improvements

* **mindmap:** force-graph hardening for 1000/2000-node graphs ([#2684](https://github.com/HankHuang0516/EClaw/issues/2684)) ([da8b1c8](https://github.com/HankHuang0516/EClaw/commit/da8b1c8f947ab8bc8fa455c1962a91146623a1fc))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-24)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **notifications:** add kanban_done + kanban_done_auto toggles to Android Settings ([#2636](https://github.com/HankHuang0516/EClaw/issues/2636)) ([a710909](https://github.com/HankHuang0516/EClaw/commit/a7109095e3393b8564e7ef1b23d382a4fbb944b8))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **i18n:** ar block — fix 27 broken entries (CJK leaks + truncated HTML) ([#2851](https://github.com/HankHuang0516/EClaw/issues/2851)) ([5b19175](https://github.com/HankHuang0516/EClaw/commit/5b19175d712d00d16fcec00b749035c4beae7a5c))
* **chat:** atomic-load target bar (await contacts before first render) ([#2831](https://github.com/HankHuang0516/EClaw/issues/2831)) ([5f529e6](https://github.com/HankHuang0516/EClaw/commit/5f529e6b772eacc38ba1de69b44258a05f0d816a)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2](https://github.com/HankHuang0516/EClaw/issues/2)
* **channel:** await binding persistence ([712516d](https://github.com/HankHuang0516/EClaw/commit/712516decafb745035bd1434a28cc1973d433e19))
* **rental:** bump handshake timeout to 60s + timeout-aware discovery fallback ([#2863](https://github.com/HankHuang0516/EClaw/issues/2863)) ([fd4322f](https://github.com/HankHuang0516/EClaw/commit/fd4322f8890f3c2dfca3acdae6a4b95f19c381f9)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **i18n:** clear batch 1 residual missing keys ([#2790](https://github.com/HankHuang0516/EClaw/issues/2790)) ([211030e](https://github.com/HankHuang0516/EClaw/commit/211030e0b0b6a865c11f0c4ed60dc4e356d43b7a))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **kanban:** comment input no longer overlaps last comment in card detail (PR [#2678](https://github.com/HankHuang0516/EClaw/issues/2678)) ([fba91fc](https://github.com/HankHuang0516/EClaw/commit/fba91fca15402b453a0db5ee857c0b16e6087055))
* **chat:** compact 20px avatar in target bar (App WebView only shows [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2](https://github.com/HankHuang0516/EClaw/issues/2)) ([#2830](https://github.com/HankHuang0516/EClaw/issues/2830)) ([42c7543](https://github.com/HankHuang0516/EClaw/commit/42c7543b4a78a7abf3f5f7535eb9bc6142cd0fe2)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **portal:** complete 401 redirect sweep + mobile UIUX truncation ([#2842](https://github.com/HankHuang0516/EClaw/issues/2842)) ([f9799ba](https://github.com/HankHuang0516/EClaw/commit/f9799ba42498b109f0a8a70e80836aa6da51e216)), closes [#2833](https://github.com/HankHuang0516/EClaw/issues/2833) [#2845](https://github.com/HankHuang0516/EClaw/issues/2845) [#2844](https://github.com/HankHuang0516/EClaw/issues/2844) [#2843](https://github.com/HankHuang0516/EClaw/issues/2843)
* **uiux:** continue qa mobile readability sweep ([#2854](https://github.com/HankHuang0516/EClaw/issues/2854)) ([57606ff](https://github.com/HankHuang0516/EClaw/commit/57606ffe3e543b07a026aacc53c4b470c9a7825b))
* **i18n:** cover dynamic portal wrapper keys ([#2807](https://github.com/HankHuang0516/EClaw/issues/2807)) ([4c711cc](https://github.com/HankHuang0516/EClaw/commit/4c711cc4009300ffe4e8933a98ee01cd0fdd6aeb))
* **i18n:** dedup 20 dash_channel_card_* keys in es block ([#2876](https://github.com/HankHuang0516/EClaw/issues/2876)) ([807284c](https://github.com/HankHuang0516/EClaw/commit/807284ce363ef119ccdb0ae40e5ce99d3f0a27e0))
* **kanban:** dep-aware nudge gating + roadmap dependency backfill ([#2904](https://github.com/HankHuang0516/EClaw/issues/2904)) ([2b76ac9](https://github.com/HankHuang0516/EClaw/commit/2b76ac9d3b7e4169b7bc3c6f6b0b0903b63cd9f7)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **rental:** don't pollute entity.message on push gateway timeout ([#2860](https://github.com/HankHuang0516/EClaw/issues/2860)) ([592ba44](https://github.com/HankHuang0516/EClaw/commit/592ba44f57536ee00011b6cbddaa6b129a7cbae9))
* **petdx:** drop dark-grey loading placeholder + preload sprite WEBP ([#2628](https://github.com/HankHuang0516/EClaw/issues/2628)) ([59cef38](https://github.com/HankHuang0516/EClaw/commit/59cef387bd69ca99d7d15c86a1364856d3849ad8)), closes [#1a1a1a](https://github.com/HankHuang0516/EClaw/issues/1a1a1a)
* **gateway-ws:** drop Origin header on server-to-server WS upgrade ([#2869](https://github.com/HankHuang0516/EClaw/issues/2869)) ([716dcf9](https://github.com/HankHuang0516/EClaw/commit/716dcf9d0834b17522bb9d894bad84bc142d1a19))
* **setup-scripts:** drop Origin header on server-to-server WS upgrade ([#2875](https://github.com/HankHuang0516/EClaw/issues/2875)) ([9d893b8](https://github.com/HankHuang0516/EClaw/commit/9d893b8e5eea4db275e450bf423903c156cd3e4b)), closes [#2869](https://github.com/HankHuang0516/EClaw/issues/2869)
* **security:** escape innerHTML in chat modal error messages ([#2819](https://github.com/HankHuang0516/EClaw/issues/2819)) ([dce07ad](https://github.com/HankHuang0516/EClaw/commit/dce07adde64795916dba977ae23e46f3371ce7ed)), closes [#2809](https://github.com/HankHuang0516/EClaw/issues/2809) [#2810](https://github.com/HankHuang0516/EClaw/issues/2810) [#2809](https://github.com/HankHuang0516/EClaw/issues/2809) [#2810](https://github.com/HankHuang0516/EClaw/issues/2810)
* **entities:** expose botSecret to owner so wallpaper service can poll companions ([#2615](https://github.com/HankHuang0516/EClaw/issues/2615)) ([04470fc](https://github.com/HankHuang0516/EClaw/commit/04470fce8f8c3fce2b1ba8b243e776606f107502))
* **rental:** expose owner_public_code in marketplace so plaza CTA can route ([#2616](https://github.com/HankHuang0516/EClaw/issues/2616)) ([4d1372f](https://github.com/HankHuang0516/EClaw/commit/4d1372f717d93cab65543e87c852e74e9fb67071)), closes [#2610](https://github.com/HankHuang0516/EClaw/issues/2610)
* **mindmap:** fallback to device scope when entityId is null ([#2728](https://github.com/HankHuang0516/EClaw/issues/2728)) ([7572312](https://github.com/HankHuang0516/EClaw/commit/7572312433d3d75fc245eda48a28919ce14bd927))
* **i18n:** fill Spanish drift keys ([#2751](https://github.com/HankHuang0516/EClaw/issues/2751)) ([0ad0ee5](https://github.com/HankHuang0516/EClaw/commit/0ad0ee55f7fac3e6ac46d891539950dab4d553cc))
* **portal:** fit embedded org chart to mobile viewport ([#2674](https://github.com/HankHuang0516/EClaw/issues/2674)) ([1c4e1b4](https://github.com/HankHuang0516/EClaw/commit/1c4e1b413ea7027b4cd4b8ecda981b0d0e12e66b))
* **i18n:** fix 6 trailing-comma syntax errors in 10-locale batch ([#2771](https://github.com/HankHuang0516/EClaw/issues/2771)) ([b27c6ca](https://github.com/HankHuang0516/EClaw/commit/b27c6ca204bf813e406c54ce3a2532a5f1f031b3))
* **kanban:** GET card returns latest 50 comments + comments endpoint exposes total ([#2816](https://github.com/HankHuang0516/EClaw/issues/2816)) ([c4d83f7](https://github.com/HankHuang0516/EClaw/commit/c4d83f777a1cd26aea0936e4316aa35c52822eef))
* **sharechat:** guest verify-email modal + disabled Send for unverified ([#2865](https://github.com/HankHuang0516/EClaw/issues/2865)) ([cb3b061](https://github.com/HankHuang0516/EClaw/commit/cb3b0614e0f6160417d907753e66eceb2d666802))
* **uiux:** harden chat previews and roster preview ([#2769](https://github.com/HankHuang0516/EClaw/issues/2769)) ([466d4d3](https://github.com/HankHuang0516/EClaw/commit/466d4d3ef81c628d3f58db64323946053d7bf61c))
* **mention-parser:** ignore @-mentions inside markdown code spans ([#2645](https://github.com/HankHuang0516/EClaw/issues/2645)) ([8da19d4](https://github.com/HankHuang0516/EClaw/commit/8da19d4a79ceb4152bf2144ee0847c61ce3e1def)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **kanban:** lazy-load dependency chips via IntersectionObserver ([#2632](https://github.com/HankHuang0516/EClaw/issues/2632)) ([20586b4](https://github.com/HankHuang0516/EClaw/commit/20586b43357335f9eb6a190c02d58c8e36b58aba)), closes [#2631](https://github.com/HankHuang0516/EClaw/issues/2631)
* **kanban:** make card sorting deterministic ([#2756](https://github.com/HankHuang0516/EClaw/issues/2756)) ([48e2117](https://github.com/HankHuang0516/EClaw/commit/48e2117b64e37f05dc635e0a3b67bfd43cbe48f5))
* **portal/nagoya-trip:** map-link invisible on dark hero/day-banner ([#2897](https://github.com/HankHuang0516/EClaw/issues/2897)) ([cc33df6](https://github.com/HankHuang0516/EClaw/commit/cc33df686673455c20beaee60871412a5d486e66)), closes [#1f4030](https://github.com/HankHuang0516/EClaw/issues/1f4030) [#8b8579](https://github.com/HankHuang0516/EClaw/issues/8b8579) [#6e6859](https://github.com/HankHuang0516/EClaw/issues/6e6859) [#7a5614](https://github.com/HankHuang0516/EClaw/issues/7a5614)
* **org-chart:** notify affected bots on hierarchy change ([#2812](https://github.com/HankHuang0516/EClaw/issues/2812)) ([55675fd](https://github.com/HankHuang0516/EClaw/commit/55675fdf4487494d729a29524b32bd81b756a00c)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** notify reviewer on manual /move → review ([#2753](https://github.com/HankHuang0516/EClaw/issues/2753)) ([6cbbb4e](https://github.com/HankHuang0516/EClaw/commit/6cbbb4ee8c0d4d8ad54df2e9b5faaa3699bd530f))
* **wallpaper:** off-load spritesheet fetch to IO so per-petdx sprites actually render ([#2618](https://github.com/HankHuang0516/EClaw/issues/2618)) ([61b832c](https://github.com/HankHuang0516/EClaw/commit/61b832c9fa8a1d0caab810ccc942d85c63349267)), closes [#2615](https://github.com/HankHuang0516/EClaw/issues/2615) [#2577](https://github.com/HankHuang0516/EClaw/issues/2577)
* **security:** patch P0 sanitize-html XSS + P1 protobufjs + exam.html XSS ([#2829](https://github.com/HankHuang0516/EClaw/issues/2829)) ([c71b871](https://github.com/HankHuang0516/EClaw/commit/c71b871a045887375dd0d26d1a3280a0891a89ad))
* **security:** patch ws uninitialized memory disclosure (GHSA-58qx-3vcg-4xpx) ([#2872](https://github.com/HankHuang0516/EClaw/issues/2872)) ([2523d15](https://github.com/HankHuang0516/EClaw/commit/2523d154bbe501a7cc086340f7a07ece3abfa69b))
* **portal:** petdx-browser cookie-session fallback for device-login ([#2757](https://github.com/HankHuang0516/EClaw/issues/2757)) ([ca275f4](https://github.com/HankHuang0516/EClaw/commit/ca275f4519835da0c7ad71c588908a18f6f138d8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **api:** platform-stats 500 + entity/lookup publicCode alias ([#2809](https://github.com/HankHuang0516/EClaw/issues/2809), [#2810](https://github.com/HankHuang0516/EClaw/issues/2810)) ([#2818](https://github.com/HankHuang0516/EClaw/issues/2818)) ([f99fd17](https://github.com/HankHuang0516/EClaw/commit/f99fd17b2b1c32d88daa2510ff66d714c1a53edc))
* **i18n:** positional format specifiers for feedback_result_logs (7 locales) ([#2597](https://github.com/HankHuang0516/EClaw/issues/2597)) ([21aedc7](https://github.com/HankHuang0516/EClaw/commit/21aedc7eebc7a2839e340136f38dfdfd4dabb9dc))
* **avatar-petdx:** preserve descriptor across transient API failures (flicker) ([#2625](https://github.com/HankHuang0516/EClaw/issues/2625)) ([7b1c606](https://github.com/HankHuang0516/EClaw/commit/7b1c606514f7698d72ec95cf6c556e4043966186))
* **chat:** preserve recipient selection across rental-health refresh (P0 #card_eb1cba76) ([#2906](https://github.com/HankHuang0516/EClaw/issues/2906)) ([9cc0301](https://github.com/HankHuang0516/EClaw/commit/9cc0301cc26a0f49af4b7f53486f5c1a7cdd7902)), closes [#card_eb1cba76](https://github.com/HankHuang0516/EClaw/issues/card_eb1cba76) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **chat:** preserve scroll anchor while reading history ([#2693](https://github.com/HankHuang0516/EClaw/issues/2693)) ([945fdb7](https://github.com/HankHuang0516/EClaw/commit/945fdb7192b791b31882e1e75568dd8b11e4686f))
* **promo:** pull video embed from /promo-chat-avatar.html ([#2724](https://github.com/HankHuang0516/EClaw/issues/2724)) ([2afabc8](https://github.com/HankHuang0516/EClaw/commit/2afabc8c5ff8b25218a7cb857e8adfa572c8e9d5))
* **dashboard:** read live.rate_limits.{five_hour,seven_day}.used_percentage ([#2895](https://github.com/HankHuang0516/EClaw/issues/2895)) ([8223303](https://github.com/HankHuang0516/EClaw/commit/822330312bccb1c76675ad2c3b26e78d10dd1298))
* **kanban:** realign stale recurring schedules ([#2785](https://github.com/HankHuang0516/EClaw/issues/2785)) ([ab8ee25](https://github.com/HankHuang0516/EClaw/commit/ab8ee250a9b37f3d3e838bb01d8866c8d2b78231))
* **portal:** reduce QA-discovered request fanout ([#2656](https://github.com/HankHuang0516/EClaw/issues/2656)) ([1e46d6b](https://github.com/HankHuang0516/EClaw/commit/1e46d6bab61e58c65b452b6503d953f8dddeee75))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **portal:** remove org chart fit scale floor ([#2676](https://github.com/HankHuang0516/EClaw/issues/2676)) ([0f01606](https://github.com/HankHuang0516/EClaw/commit/0f016068b963bb5f800a02f28817c7174979d913))
* **rental:** remove phantom 'webhook test push' step from BIND_COMPLETE ([#2864](https://github.com/HankHuang0516/EClaw/issues/2864)) ([47f4a3e](https://github.com/HankHuang0516/EClaw/commit/47f4a3edf76aa95ebd06d8713cd44fda6eef9b5d))
* **i18n:** rename mm_empty_title → mm_state_empty_title in mindmap.html ([#2683](https://github.com/HankHuang0516/EClaw/issues/2683)) ([c79c109](https://github.com/HankHuang0516/EClaw/commit/c79c109bea23142e8a6d9ace976d105af1280ec9))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **chat:** render mention avatars with companion renderer ([#2633](https://github.com/HankHuang0516/EClaw/issues/2633)) ([03e205f](https://github.com/HankHuang0516/EClaw/commit/03e205f663ecd2c2f443d4009dd5af0093f0bbbb))
* **kanban:** reserve mobile comments panel height ([#2782](https://github.com/HankHuang0516/EClaw/issues/2782)) ([ce8662d](https://github.com/HankHuang0516/EClaw/commit/ce8662d362422fdd25037f1deb61dbed9425e2f9))
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* scheduled audit 2026-05-13 — 6 bugs, XSS, i18n ([#2668](https://github.com/HankHuang0516/EClaw/issues/2668)) ([21dd513](https://github.com/HankHuang0516/EClaw/commit/21dd513b4464738de29164265437435ba6cc4817)), closes [#2605](https://github.com/HankHuang0516/EClaw/issues/2605) [#2608](https://github.com/HankHuang0516/EClaw/issues/2608) [#2600](https://github.com/HankHuang0516/EClaw/issues/2600) [#2599](https://github.com/HankHuang0516/EClaw/issues/2599) [#2598](https://github.com/HankHuang0516/EClaw/issues/2598)
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **dashboard:** show Claude weekly bar reset countdown ([#2896](https://github.com/HankHuang0516/EClaw/issues/2896)) ([3b87845](https://github.com/HankHuang0516/EClaw/commit/3b87845d713e980fec69f6b8007549338a326713)), closes [#2895](https://github.com/HankHuang0516/EClaw/issues/2895)
* **chat:** smart-chip preview falls back to inline c.comments when /comments fails (PR [#2677](https://github.com/HankHuang0516/EClaw/issues/2677)) ([7f4dffd](https://github.com/HankHuang0516/EClaw/commit/7f4dffd2c83ea86f296b8fa0610f0e67c9f1af11))
* **kanban:** stabilize comment detail viewport ([#2796](https://github.com/HankHuang0516/EClaw/issues/2796)) ([0a10aad](https://github.com/HankHuang0516/EClaw/commit/0a10aadb5a5b12ff23454c16d5c88183b94ad7d7))
* **wallpaper:** stop Android live wallpaper flashing default lobster on companion change ([#2629](https://github.com/HankHuang0516/EClaw/issues/2629)) ([8b4f66f](https://github.com/HankHuang0516/EClaw/commit/8b4f66fcb335bf43128f924b761b6337c817095b)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **chat:** stop chat.html bouncing to dashboard via /api/rental/health-status 401 race ([#2833](https://github.com/HankHuang0516/EClaw/issues/2833)) ([c422406](https://github.com/HankHuang0516/EClaw/commit/c4224067cdcfe7f3e22ab95007c7563dac4196ac))
* **openclaw-channel:** support OpenClaw 2026.5.20 ([8045de6](https://github.com/HankHuang0516/EClaw/commit/8045de6bebecfc05f9bd57453b99c098ca35681b))
* **mentions:** support same-device CJK display-name tags ([#2874](https://github.com/HankHuang0516/EClaw/issues/2874)) ([b8f61be](https://github.com/HankHuang0516/EClaw/commit/b8f61be9a3962fef75dd32ea34e8900880dafaf9))
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **dashboard:** use sessions[].project for widget Projects list (was .project_id) ([#2894](https://github.com/HankHuang0516/EClaw/issues/2894)) ([0fd1334](https://github.com/HankHuang0516/EClaw/commit/0fd1334897d4a603cc6eb74f34b48606547e09cf))
* **app:** WebView pages honor app-selected locale via ?lang= URL param ([#2672](https://github.com/HankHuang0516/EClaw/issues/2672)) ([8ed8757](https://github.com/HankHuang0516/EClaw/commit/8ed8757aec5bf214e837cc0d81bf2b23f1993a91)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **share-chat:** wire rich CTA actions to msgInput ([#2867](https://github.com/HankHuang0516/EClaw/issues/2867)) ([df23b11](https://github.com/HankHuang0516/EClaw/commit/df23b1147d34c59a644a145bbd87c18b96400acc))


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* **usage-api:** /api/usage/{snapshot,timeline} + usage_snapshots table (Plan B Phase 1) ([#2889](https://github.com/HankHuang0516/EClaw/issues/2889)) ([a0d859c](https://github.com/HankHuang0516/EClaw/commit/a0d859c63f0220909dadb2b1952174861ccdce14))
* **community:** 1-click chat button on bot cards + utm tagging ([#2610](https://github.com/HankHuang0516/EClaw/issues/2610)) ([eee97b0](https://github.com/HankHuang0516/EClaw/commit/eee97b0e2e4e74945ec24f218a69a52800b97a66))
* **chat:** accept ?messageId= as deep-link alias ([#2838](https://github.com/HankHuang0516/EClaw/issues/2838)) ([1785a87](https://github.com/HankHuang0516/EClaw/commit/1785a87310426637fd10df83754fb9924c45207f))
* **chat:** add avatar size preference ([#2714](https://github.com/HankHuang0516/EClaw/issues/2714)) ([6fe164a](https://github.com/HankHuang0516/EClaw/commit/6fe164ad8b22fa576d2dd9ad37c0d9fc295b5a83))
* **dashboard:** add Claude and Codex channel guides ([#2640](https://github.com/HankHuang0516/EClaw/issues/2640)) ([c64e4c4](https://github.com/HankHuang0516/EClaw/commit/c64e4c4afc78db58c5cd578f00486dd7b2fd3311))
* **dashboard:** add Claude Code channel guide card ([#2667](https://github.com/HankHuang0516/EClaw/issues/2667)) ([d70d75c](https://github.com/HankHuang0516/EClaw/commit/d70d75c0c8caa8a540358a9aab4556b8c1927a5c))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* **kanban:** add device-scoped card tags ([#2773](https://github.com/HankHuang0516/EClaw/issues/2773)) ([53a387e](https://github.com/HankHuang0516/EClaw/commit/53a387e67ba7bb4f6bed1c427000c4ae8666577a))
* **portal:** add entity selector to petdx-browser ([#2602](https://github.com/HankHuang0516/EClaw/issues/2602)) ([3fa067e](https://github.com/HankHuang0516/EClaw/commit/3fa067e00b38829b48a37cecd33ee81a9a1122d9))
* **kanban:** add explicit card links ([#2721](https://github.com/HankHuang0516/EClaw/issues/2721)) ([ef9f812](https://github.com/HankHuang0516/EClaw/commit/ef9f812a3fcf39efd07fd158ce90951bdd045ac7))
* **kanban:** add explicit done-card reopen flow ([#2801](https://github.com/HankHuang0516/EClaw/issues/2801)) ([5080aac](https://github.com/HankHuang0516/EClaw/commit/5080aacb75047c0deaa379ee708ec85465afd57c))
* **mindmap:** add GET /api/mindmap/graph force-graph projection ([#2680](https://github.com/HankHuang0516/EClaw/issues/2680)) ([a00b2e7](https://github.com/HankHuang0516/EClaw/commit/a00b2e775af2c4c98cd157f760ad87aeeee469f0)), closes [#2679](https://github.com/HankHuang0516/EClaw/issues/2679) [#2679](https://github.com/HankHuang0516/EClaw/issues/2679)
* **dashboard:** add Hermes channel promo card ([#2708](https://github.com/HankHuang0516/EClaw/issues/2708)) ([337aca1](https://github.com/HankHuang0516/EClaw/commit/337aca153d5a1cd7e888c065f00ae54db7872d91))
* **rental:** add listing soft pause ([#2781](https://github.com/HankHuang0516/EClaw/issues/2781)) ([6586b72](https://github.com/HankHuang0516/EClaw/commit/6586b72717ddb1637d91cd3242c8d2ff554f62b4))
* **portal:** add Nagoya 5D4N trip static cross-ref page ([#2689](https://github.com/HankHuang0516/EClaw/issues/2689)) ([2e0efb6](https://github.com/HankHuang0516/EClaw/commit/2e0efb6dcdaff52226cc8854a96747000b12bdff))
* **portal:** add Nagoya trip map links and image lightbox ([#2821](https://github.com/HankHuang0516/EClaw/issues/2821)) ([3e40955](https://github.com/HankHuang0516/EClaw/commit/3e40955650a05f45a6b9f7e39e73847705424a03))
* **portal/nagoya:** add parking shortcut buttons next to itinerary places ([#2826](https://github.com/HankHuang0516/EClaw/issues/2826)) ([63968c5](https://github.com/HankHuang0516/EClaw/commit/63968c554d046afc8d978de74e3aacbf7700500d))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **settings:** add rental roster management preview ([#2758](https://github.com/HankHuang0516/EClaw/issues/2758)) ([9706e59](https://github.com/HankHuang0516/EClaw/commit/9706e59ded140a90a6e02348124282bc69d89001))
* **rental:** add renter health chat indicator ([#2690](https://github.com/HankHuang0516/EClaw/issues/2690)) ([36cd2e9](https://github.com/HankHuang0516/EClaw/commit/36cd2e9802be4c7ebb03d3024617fa74aca48ffd))
* **ios:** add Tutorial & Intro entry in Settings ([#2800](https://github.com/HankHuang0516/EClaw/issues/2800)) ([ed83e51](https://github.com/HankHuang0516/EClaw/commit/ed83e51d043bf4cd5865f38dc95a91ed54820d6c))
* **landing:** add Watch Full Demo CTA below hero video ([#2799](https://github.com/HankHuang0516/EClaw/issues/2799)) ([66107c9](https://github.com/HankHuang0516/EClaw/commit/66107c954727551fd34d989a4674daaad9b63968))
* **footer:** add Watch Intro Video link in Info column ([#2798](https://github.com/HankHuang0516/EClaw/issues/2798)) ([d7c6d59](https://github.com/HankHuang0516/EClaw/commit/d7c6d596b69c6a5b257bf1f7a792a407ef9712ad))
* **i18n:** ar iter-2 — fill 623 missing keys against en source ([#2847](https://github.com/HankHuang0516/EClaw/issues/2847)) ([ee94a7a](https://github.com/HankHuang0516/EClaw/commit/ee94a7ae6812b5163efe4284ee4907ca32302f5c))
* **kanban:** backlog launch-gate flag to suppress L1/L2/L3 escalation ([#2855](https://github.com/HankHuang0516/EClaw/issues/2855)) ([cb8bf1b](https://github.com/HankHuang0516/EClaw/commit/cb8bf1bb6421f25214f65e129a8cadccc49cc266)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#4](https://github.com/HankHuang0516/EClaw/issues/4) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **companion:** bridge crafter-station/petdex gallery (1784 pets) ([#2601](https://github.com/HankHuang0516/EClaw/issues/2601)) ([2e245be](https://github.com/HankHuang0516/EClaw/commit/2e245bea6dd47ea7361b927d389188a3c23b6bb3))
* **promo:** chat avatar size feature landing page (self-hosted MP4) ([#2722](https://github.com/HankHuang0516/EClaw/issues/2722)) ([3852210](https://github.com/HankHuang0516/EClaw/commit/3852210d355704d018e3daca6b5f9512a011b210)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **kanban:** cron-spawn jitter + lane backpressure to prevent same-tick wedge ([#2791](https://github.com/HankHuang0516/EClaw/issues/2791)) ([9f414a7](https://github.com/HankHuang0516/EClaw/commit/9f414a731d6393672a0a4189c7b408c529ae5e12)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **portal:** dashboard usage widget — Claude/Codex 5h gauges + 24h chart (Plan B Phase 3) ([#2891](https://github.com/HankHuang0516/EClaw/issues/2891)) ([d18f373](https://github.com/HankHuang0516/EClaw/commit/d18f373857e4bd302437d6bda2a1e01871fbb1db))
* **portal:** dashboard usage widget v2 — Session/Weekly % bars + projects, no cost (Plan B Phase 3.1) ([#2893](https://github.com/HankHuang0516/EClaw/issues/2893)) ([4bc0dc7](https://github.com/HankHuang0516/EClaw/commit/4bc0dc744ed9d54dfd532ebac4b705c7f84ec0a6))
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **promo:** embed daily eclaw video 2026-05-14 ([#2786](https://github.com/HankHuang0516/EClaw/issues/2786)) ([718a814](https://github.com/HankHuang0516/EClaw/commit/718a814ab16850bc2b33a1b303841e2c4378ecfa)), closes [#2782](https://github.com/HankHuang0516/EClaw/issues/2782) [#2693](https://github.com/HankHuang0516/EClaw/issues/2693)
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **info:** embed promo video at top of Quick Start tab ([#2797](https://github.com/HankHuang0516/EClaw/issues/2797)) ([047679f](https://github.com/HankHuang0516/EClaw/commit/047679fd57ab9949eaeacea414d5611e71afe041))
* **rental:** enforce strict rebind refunds ([#2703](https://github.com/HankHuang0516/EClaw/issues/2703)) ([a1859c5](https://github.com/HankHuang0516/EClaw/commit/a1859c50e6fb3991d7a8051491502d824a14a116))
* **portal:** group task chip actions ([#2825](https://github.com/HankHuang0516/EClaw/issues/2825)) ([5db5c59](https://github.com/HankHuang0516/EClaw/commit/5db5c59b32b8635f1412205faf0c2f9164d3d5d4))
* **portal:** info-guide-rules + info-guide-soul slide pair ([#2793](https://github.com/HankHuang0516/EClaw/issues/2793)) ([1c8bddc](https://github.com/HankHuang0516/EClaw/commit/1c8bddc4c185054b2b60088498e3d45509117127)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **chat:** link card previews to kanban ([#2754](https://github.com/HankHuang0516/EClaw/issues/2754)) ([2261240](https://github.com/HankHuang0516/EClaw/commit/22612402c2e95efb07246629e81a849be41ee9c7))
* **mission:** link notes to kanban cards ([#2723](https://github.com/HankHuang0516/EClaw/issues/2723)) ([b36dc18](https://github.com/HankHuang0516/EClaw/commit/b36dc18f3a8facf12e0b6046351c222f1e99dc55))
* **usage-daemon:** macOS launchd daemon polls Claude/Codex usage → POST /api/usage/snapshot (Plan B Phase 2) ([#2890](https://github.com/HankHuang0516/EClaw/issues/2890)) ([fd225e1](https://github.com/HankHuang0516/EClaw/commit/fd225e12d9491037be1a340bd63b54b5f3308c7f))
* **mindmap:** mission.html link to /portal/mindmap.html + deprecate /api/mission/mindmap ([#2685](https://github.com/HankHuang0516/EClaw/issues/2685)) ([11e297b](https://github.com/HankHuang0516/EClaw/commit/11e297bab1c9b56fcde3027d6500b7c58891bf18)), closes [#2680](https://github.com/HankHuang0516/EClaw/issues/2680) [#2684](https://github.com/HankHuang0516/EClaw/issues/2684)
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **portal:** nagoya trip interactive map (Leaflet + OSM, no API key) ([#2888](https://github.com/HankHuang0516/EClaw/issues/2888)) ([ecfdac0](https://github.com/HankHuang0516/EClaw/commit/ecfdac06348c12ee7c6872c6c28d5f82162e7aa9))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **settings:** per-entity nudge override UI (Phase 2) ([#2837](https://github.com/HankHuang0516/EClaw/issues/2837)) ([ea7662b](https://github.com/HankHuang0516/EClaw/commit/ea7662b0858882dae461e1387f711895924f9ab8)), closes [3/#4](https://github.com/HankHuang0516/EClaw/issues/4)
* **kanban:** per-entity nudge overrides (Phase 2 of card_e066cb6b) ([#2836](https://github.com/HankHuang0516/EClaw/issues/2836)) ([0425f80](https://github.com/HankHuang0516/EClaw/commit/0425f80bc1169c0d506b665659c8676695c45553))
* **avatar:** petdx render on card-holder my-cards (Phase 1b) ([#2621](https://github.com/HankHuang0516/EClaw/issues/2621)) ([f78ba8b](https://github.com/HankHuang0516/EClaw/commit/f78ba8b18acc426936ab6d8a82ca7541effea00d))
* **avatar:** petdx render on dashboard entity grid / org chart / bindings (Phase 1b) ([#2622](https://github.com/HankHuang0516/EClaw/issues/2622)) ([f417749](https://github.com/HankHuang0516/EClaw/commit/f41774914451048e8cd76e9ae30416a0642e173b)), closes [#2620](https://github.com/HankHuang0516/EClaw/issues/2620) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621)
* **avatar:** petdx render on kanban auto-assign / pulse / comment avatars (Phase 1b) ([#2624](https://github.com/HankHuang0516/EClaw/issues/2624)) ([6bff5f8](https://github.com/HankHuang0516/EClaw/commit/6bff5f80440d0bd91a6b1721cde9478d685c4d46))
* **avatar:** petdx render on mission skill/rule/soul entity dialogs (Phase 1b) ([#2623](https://github.com/HankHuang0516/EClaw/issues/2623)) ([129327b](https://github.com/HankHuang0516/EClaw/commit/129327bc7b91056659f1ab7e8d5e3f5260d951fb))
* **mindmap:** portal/mindmap.html force-graph prototype ([#129](https://github.com/HankHuang0516/EClaw/issues/129)) ([#2681](https://github.com/HankHuang0516/EClaw/issues/2681)) ([0f15e69](https://github.com/HankHuang0516/EClaw/commit/0f15e6930f0697c37fa08f3219edb8f9e499837f)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **portal:** redo nagoya trip page in professional tour-guide style ([#2691](https://github.com/HankHuang0516/EClaw/issues/2691)) ([b2378c0](https://github.com/HankHuang0516/EClaw/commit/b2378c06ee20fa9cccfdceceb1a4c9e0b3072f59))
* **i18n:** remove ms+hi orphan keys from i18n.js ([#2849](https://github.com/HankHuang0516/EClaw/issues/2849)) ([320176c](https://github.com/HankHuang0516/EClaw/commit/320176c06a3cfd8631e2a82ad02a6bd6a9af0389))
* **avatar:** render selected petdx companion in chat avatars ([#2620](https://github.com/HankHuang0516/EClaw/issues/2620)) ([0bdd046](https://github.com/HankHuang0516/EClaw/commit/0bdd046fe1b1c428e32edda366ff112c08927f4c))
* **home:** replace native home with WebView hosting dashboard.html ([#2634](https://github.com/HankHuang0516/EClaw/issues/2634)) ([e69ea81](https://github.com/HankHuang0516/EClaw/commit/e69ea8160c239b083a83d6dc83a4f1c3f901c863))
* **app:** route chat mission jumps through native tabs ([#2824](https://github.com/HankHuang0516/EClaw/issues/2824)) ([deb07b6](https://github.com/HankHuang0516/EClaw/commit/deb07b69a9ecca632fe27278de537f1d85234e94))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **chat:** support message deep links ([#2719](https://github.com/HankHuang0516/EClaw/issues/2719)) ([2dc0f1e](https://github.com/HankHuang0516/EClaw/commit/2dc0f1eeb259e1a0848db4a03186b989372cd91c))
* **mission:** support note deep links ([#2717](https://github.com/HankHuang0516/EClaw/issues/2717)) ([2efd3a5](https://github.com/HankHuang0516/EClaw/commit/2efd3a5e741217a07c0b0ac54a0ddd010e0ebe23))
* **share-chat:** twitter card + per-bot og:image/twitter:* in SSR ([#2609](https://github.com/HankHuang0516/EClaw/issues/2609)) ([6cdc853](https://github.com/HankHuang0516/EClaw/commit/6cdc853dc884cdb95bd47214942768981f218ae0))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))
* **settings:** wire petdx avatar into channel-account chips ([#2626](https://github.com/HankHuang0516/EClaw/issues/2626)) ([88aec77](https://github.com/HankHuang0516/EClaw/commit/88aec772628c240e97b336bb5820892ad632d1ae))
* **files:** wire petdx avatar into entity filter & per-file badges ([#2627](https://github.com/HankHuang0516/EClaw/issues/2627)) ([5b3e5cc](https://github.com/HankHuang0516/EClaw/commit/5b3e5cc542d9da69bb4e92500fd03a542ea33f00))
* **mindmap:** wrap hardcoded zh-TW UI strings with i18n t() ([#2607](https://github.com/HankHuang0516/EClaw/issues/2607)) ([166af87](https://github.com/HankHuang0516/EClaw/commit/166af8772b2121a24aaf34a83b3de970e9b3b571)), closes [#2606](https://github.com/HankHuang0516/EClaw/issues/2606)
* **i18n:** zh-TW backfill 8 keys (soft-pause + chat + invite + wallet) ([#2815](https://github.com/HankHuang0516/EClaw/issues/2815)) ([a2dd574](https://github.com/HankHuang0516/EClaw/commit/a2dd5743ce8d43a4b6ace9a2fd4b52568180d6c5))


### Performance Improvements

* **mindmap:** force-graph hardening for 1000/2000-node graphs ([#2684](https://github.com/HankHuang0516/EClaw/issues/2684)) ([da8b1c8](https://github.com/HankHuang0516/EClaw/commit/da8b1c8f947ab8bc8fa455c1962a91146623a1fc))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-24)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **notifications:** add kanban_done + kanban_done_auto toggles to Android Settings ([#2636](https://github.com/HankHuang0516/EClaw/issues/2636)) ([a710909](https://github.com/HankHuang0516/EClaw/commit/a7109095e3393b8564e7ef1b23d382a4fbb944b8))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **i18n:** ar block — fix 27 broken entries (CJK leaks + truncated HTML) ([#2851](https://github.com/HankHuang0516/EClaw/issues/2851)) ([5b19175](https://github.com/HankHuang0516/EClaw/commit/5b19175d712d00d16fcec00b749035c4beae7a5c))
* **chat:** atomic-load target bar (await contacts before first render) ([#2831](https://github.com/HankHuang0516/EClaw/issues/2831)) ([5f529e6](https://github.com/HankHuang0516/EClaw/commit/5f529e6b772eacc38ba1de69b44258a05f0d816a)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2](https://github.com/HankHuang0516/EClaw/issues/2)
* **channel:** await binding persistence ([712516d](https://github.com/HankHuang0516/EClaw/commit/712516decafb745035bd1434a28cc1973d433e19))
* **rental:** bump handshake timeout to 60s + timeout-aware discovery fallback ([#2863](https://github.com/HankHuang0516/EClaw/issues/2863)) ([fd4322f](https://github.com/HankHuang0516/EClaw/commit/fd4322f8890f3c2dfca3acdae6a4b95f19c381f9)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **i18n:** clear batch 1 residual missing keys ([#2790](https://github.com/HankHuang0516/EClaw/issues/2790)) ([211030e](https://github.com/HankHuang0516/EClaw/commit/211030e0b0b6a865c11f0c4ed60dc4e356d43b7a))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **kanban:** comment input no longer overlaps last comment in card detail (PR [#2678](https://github.com/HankHuang0516/EClaw/issues/2678)) ([fba91fc](https://github.com/HankHuang0516/EClaw/commit/fba91fca15402b453a0db5ee857c0b16e6087055))
* **chat:** compact 20px avatar in target bar (App WebView only shows [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2](https://github.com/HankHuang0516/EClaw/issues/2)) ([#2830](https://github.com/HankHuang0516/EClaw/issues/2830)) ([42c7543](https://github.com/HankHuang0516/EClaw/commit/42c7543b4a78a7abf3f5f7535eb9bc6142cd0fe2)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **portal:** complete 401 redirect sweep + mobile UIUX truncation ([#2842](https://github.com/HankHuang0516/EClaw/issues/2842)) ([f9799ba](https://github.com/HankHuang0516/EClaw/commit/f9799ba42498b109f0a8a70e80836aa6da51e216)), closes [#2833](https://github.com/HankHuang0516/EClaw/issues/2833) [#2845](https://github.com/HankHuang0516/EClaw/issues/2845) [#2844](https://github.com/HankHuang0516/EClaw/issues/2844) [#2843](https://github.com/HankHuang0516/EClaw/issues/2843)
* **uiux:** continue qa mobile readability sweep ([#2854](https://github.com/HankHuang0516/EClaw/issues/2854)) ([57606ff](https://github.com/HankHuang0516/EClaw/commit/57606ffe3e543b07a026aacc53c4b470c9a7825b))
* **i18n:** cover dynamic portal wrapper keys ([#2807](https://github.com/HankHuang0516/EClaw/issues/2807)) ([4c711cc](https://github.com/HankHuang0516/EClaw/commit/4c711cc4009300ffe4e8933a98ee01cd0fdd6aeb))
* **i18n:** dedup 20 dash_channel_card_* keys in es block ([#2876](https://github.com/HankHuang0516/EClaw/issues/2876)) ([807284c](https://github.com/HankHuang0516/EClaw/commit/807284ce363ef119ccdb0ae40e5ce99d3f0a27e0))
* **kanban:** dep-aware nudge gating + roadmap dependency backfill ([#2904](https://github.com/HankHuang0516/EClaw/issues/2904)) ([2b76ac9](https://github.com/HankHuang0516/EClaw/commit/2b76ac9d3b7e4169b7bc3c6f6b0b0903b63cd9f7)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **rental:** don't pollute entity.message on push gateway timeout ([#2860](https://github.com/HankHuang0516/EClaw/issues/2860)) ([592ba44](https://github.com/HankHuang0516/EClaw/commit/592ba44f57536ee00011b6cbddaa6b129a7cbae9))
* **petdx:** drop dark-grey loading placeholder + preload sprite WEBP ([#2628](https://github.com/HankHuang0516/EClaw/issues/2628)) ([59cef38](https://github.com/HankHuang0516/EClaw/commit/59cef387bd69ca99d7d15c86a1364856d3849ad8)), closes [#1a1a1a](https://github.com/HankHuang0516/EClaw/issues/1a1a1a)
* **gateway-ws:** drop Origin header on server-to-server WS upgrade ([#2869](https://github.com/HankHuang0516/EClaw/issues/2869)) ([716dcf9](https://github.com/HankHuang0516/EClaw/commit/716dcf9d0834b17522bb9d894bad84bc142d1a19))
* **setup-scripts:** drop Origin header on server-to-server WS upgrade ([#2875](https://github.com/HankHuang0516/EClaw/issues/2875)) ([9d893b8](https://github.com/HankHuang0516/EClaw/commit/9d893b8e5eea4db275e450bf423903c156cd3e4b)), closes [#2869](https://github.com/HankHuang0516/EClaw/issues/2869)
* **security:** escape innerHTML in chat modal error messages ([#2819](https://github.com/HankHuang0516/EClaw/issues/2819)) ([dce07ad](https://github.com/HankHuang0516/EClaw/commit/dce07adde64795916dba977ae23e46f3371ce7ed)), closes [#2809](https://github.com/HankHuang0516/EClaw/issues/2809) [#2810](https://github.com/HankHuang0516/EClaw/issues/2810) [#2809](https://github.com/HankHuang0516/EClaw/issues/2809) [#2810](https://github.com/HankHuang0516/EClaw/issues/2810)
* **entities:** expose botSecret to owner so wallpaper service can poll companions ([#2615](https://github.com/HankHuang0516/EClaw/issues/2615)) ([04470fc](https://github.com/HankHuang0516/EClaw/commit/04470fce8f8c3fce2b1ba8b243e776606f107502))
* **rental:** expose owner_public_code in marketplace so plaza CTA can route ([#2616](https://github.com/HankHuang0516/EClaw/issues/2616)) ([4d1372f](https://github.com/HankHuang0516/EClaw/commit/4d1372f717d93cab65543e87c852e74e9fb67071)), closes [#2610](https://github.com/HankHuang0516/EClaw/issues/2610)
* **mindmap:** fallback to device scope when entityId is null ([#2728](https://github.com/HankHuang0516/EClaw/issues/2728)) ([7572312](https://github.com/HankHuang0516/EClaw/commit/7572312433d3d75fc245eda48a28919ce14bd927))
* **i18n:** fill Spanish drift keys ([#2751](https://github.com/HankHuang0516/EClaw/issues/2751)) ([0ad0ee5](https://github.com/HankHuang0516/EClaw/commit/0ad0ee55f7fac3e6ac46d891539950dab4d553cc))
* **portal:** fit embedded org chart to mobile viewport ([#2674](https://github.com/HankHuang0516/EClaw/issues/2674)) ([1c4e1b4](https://github.com/HankHuang0516/EClaw/commit/1c4e1b413ea7027b4cd4b8ecda981b0d0e12e66b))
* **i18n:** fix 6 trailing-comma syntax errors in 10-locale batch ([#2771](https://github.com/HankHuang0516/EClaw/issues/2771)) ([b27c6ca](https://github.com/HankHuang0516/EClaw/commit/b27c6ca204bf813e406c54ce3a2532a5f1f031b3))
* **kanban:** GET card returns latest 50 comments + comments endpoint exposes total ([#2816](https://github.com/HankHuang0516/EClaw/issues/2816)) ([c4d83f7](https://github.com/HankHuang0516/EClaw/commit/c4d83f777a1cd26aea0936e4316aa35c52822eef))
* **sharechat:** guest verify-email modal + disabled Send for unverified ([#2865](https://github.com/HankHuang0516/EClaw/issues/2865)) ([cb3b061](https://github.com/HankHuang0516/EClaw/commit/cb3b0614e0f6160417d907753e66eceb2d666802))
* **uiux:** harden chat previews and roster preview ([#2769](https://github.com/HankHuang0516/EClaw/issues/2769)) ([466d4d3](https://github.com/HankHuang0516/EClaw/commit/466d4d3ef81c628d3f58db64323946053d7bf61c))
* **mention-parser:** ignore @-mentions inside markdown code spans ([#2645](https://github.com/HankHuang0516/EClaw/issues/2645)) ([8da19d4](https://github.com/HankHuang0516/EClaw/commit/8da19d4a79ceb4152bf2144ee0847c61ce3e1def)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **kanban:** lazy-load dependency chips via IntersectionObserver ([#2632](https://github.com/HankHuang0516/EClaw/issues/2632)) ([20586b4](https://github.com/HankHuang0516/EClaw/commit/20586b43357335f9eb6a190c02d58c8e36b58aba)), closes [#2631](https://github.com/HankHuang0516/EClaw/issues/2631)
* **kanban:** make card sorting deterministic ([#2756](https://github.com/HankHuang0516/EClaw/issues/2756)) ([48e2117](https://github.com/HankHuang0516/EClaw/commit/48e2117b64e37f05dc635e0a3b67bfd43cbe48f5))
* **portal/nagoya-trip:** map-link invisible on dark hero/day-banner ([#2897](https://github.com/HankHuang0516/EClaw/issues/2897)) ([cc33df6](https://github.com/HankHuang0516/EClaw/commit/cc33df686673455c20beaee60871412a5d486e66)), closes [#1f4030](https://github.com/HankHuang0516/EClaw/issues/1f4030) [#8b8579](https://github.com/HankHuang0516/EClaw/issues/8b8579) [#6e6859](https://github.com/HankHuang0516/EClaw/issues/6e6859) [#7a5614](https://github.com/HankHuang0516/EClaw/issues/7a5614)
* **org-chart:** notify affected bots on hierarchy change ([#2812](https://github.com/HankHuang0516/EClaw/issues/2812)) ([55675fd](https://github.com/HankHuang0516/EClaw/commit/55675fdf4487494d729a29524b32bd81b756a00c)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** notify reviewer on manual /move → review ([#2753](https://github.com/HankHuang0516/EClaw/issues/2753)) ([6cbbb4e](https://github.com/HankHuang0516/EClaw/commit/6cbbb4ee8c0d4d8ad54df2e9b5faaa3699bd530f))
* **wallpaper:** off-load spritesheet fetch to IO so per-petdx sprites actually render ([#2618](https://github.com/HankHuang0516/EClaw/issues/2618)) ([61b832c](https://github.com/HankHuang0516/EClaw/commit/61b832c9fa8a1d0caab810ccc942d85c63349267)), closes [#2615](https://github.com/HankHuang0516/EClaw/issues/2615) [#2577](https://github.com/HankHuang0516/EClaw/issues/2577)
* **security:** patch P0 sanitize-html XSS + P1 protobufjs + exam.html XSS ([#2829](https://github.com/HankHuang0516/EClaw/issues/2829)) ([c71b871](https://github.com/HankHuang0516/EClaw/commit/c71b871a045887375dd0d26d1a3280a0891a89ad))
* **security:** patch ws uninitialized memory disclosure (GHSA-58qx-3vcg-4xpx) ([#2872](https://github.com/HankHuang0516/EClaw/issues/2872)) ([2523d15](https://github.com/HankHuang0516/EClaw/commit/2523d154bbe501a7cc086340f7a07ece3abfa69b))
* **portal:** petdx-browser cookie-session fallback for device-login ([#2757](https://github.com/HankHuang0516/EClaw/issues/2757)) ([ca275f4](https://github.com/HankHuang0516/EClaw/commit/ca275f4519835da0c7ad71c588908a18f6f138d8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **api:** platform-stats 500 + entity/lookup publicCode alias ([#2809](https://github.com/HankHuang0516/EClaw/issues/2809), [#2810](https://github.com/HankHuang0516/EClaw/issues/2810)) ([#2818](https://github.com/HankHuang0516/EClaw/issues/2818)) ([f99fd17](https://github.com/HankHuang0516/EClaw/commit/f99fd17b2b1c32d88daa2510ff66d714c1a53edc))
* **i18n:** positional format specifiers for feedback_result_logs (7 locales) ([#2597](https://github.com/HankHuang0516/EClaw/issues/2597)) ([21aedc7](https://github.com/HankHuang0516/EClaw/commit/21aedc7eebc7a2839e340136f38dfdfd4dabb9dc))
* **avatar-petdx:** preserve descriptor across transient API failures (flicker) ([#2625](https://github.com/HankHuang0516/EClaw/issues/2625)) ([7b1c606](https://github.com/HankHuang0516/EClaw/commit/7b1c606514f7698d72ec95cf6c556e4043966186))
* **chat:** preserve recipient selection across rental-health refresh (P0 #card_eb1cba76) ([#2906](https://github.com/HankHuang0516/EClaw/issues/2906)) ([9cc0301](https://github.com/HankHuang0516/EClaw/commit/9cc0301cc26a0f49af4b7f53486f5c1a7cdd7902)), closes [#card_eb1cba76](https://github.com/HankHuang0516/EClaw/issues/card_eb1cba76) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **chat:** preserve scroll anchor while reading history ([#2693](https://github.com/HankHuang0516/EClaw/issues/2693)) ([945fdb7](https://github.com/HankHuang0516/EClaw/commit/945fdb7192b791b31882e1e75568dd8b11e4686f))
* **promo:** pull video embed from /promo-chat-avatar.html ([#2724](https://github.com/HankHuang0516/EClaw/issues/2724)) ([2afabc8](https://github.com/HankHuang0516/EClaw/commit/2afabc8c5ff8b25218a7cb857e8adfa572c8e9d5))
* **dashboard:** read live.rate_limits.{five_hour,seven_day}.used_percentage ([#2895](https://github.com/HankHuang0516/EClaw/issues/2895)) ([8223303](https://github.com/HankHuang0516/EClaw/commit/822330312bccb1c76675ad2c3b26e78d10dd1298))
* **kanban:** realign stale recurring schedules ([#2785](https://github.com/HankHuang0516/EClaw/issues/2785)) ([ab8ee25](https://github.com/HankHuang0516/EClaw/commit/ab8ee250a9b37f3d3e838bb01d8866c8d2b78231))
* **portal:** reduce QA-discovered request fanout ([#2656](https://github.com/HankHuang0516/EClaw/issues/2656)) ([1e46d6b](https://github.com/HankHuang0516/EClaw/commit/1e46d6bab61e58c65b452b6503d953f8dddeee75))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **portal:** remove org chart fit scale floor ([#2676](https://github.com/HankHuang0516/EClaw/issues/2676)) ([0f01606](https://github.com/HankHuang0516/EClaw/commit/0f016068b963bb5f800a02f28817c7174979d913))
* **rental:** remove phantom 'webhook test push' step from BIND_COMPLETE ([#2864](https://github.com/HankHuang0516/EClaw/issues/2864)) ([47f4a3e](https://github.com/HankHuang0516/EClaw/commit/47f4a3edf76aa95ebd06d8713cd44fda6eef9b5d))
* **i18n:** rename mm_empty_title → mm_state_empty_title in mindmap.html ([#2683](https://github.com/HankHuang0516/EClaw/issues/2683)) ([c79c109](https://github.com/HankHuang0516/EClaw/commit/c79c109bea23142e8a6d9ace976d105af1280ec9))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **chat:** render mention avatars with companion renderer ([#2633](https://github.com/HankHuang0516/EClaw/issues/2633)) ([03e205f](https://github.com/HankHuang0516/EClaw/commit/03e205f663ecd2c2f443d4009dd5af0093f0bbbb))
* **kanban:** reserve mobile comments panel height ([#2782](https://github.com/HankHuang0516/EClaw/issues/2782)) ([ce8662d](https://github.com/HankHuang0516/EClaw/commit/ce8662d362422fdd25037f1deb61dbed9425e2f9))
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* scheduled audit 2026-05-13 — 6 bugs, XSS, i18n ([#2668](https://github.com/HankHuang0516/EClaw/issues/2668)) ([21dd513](https://github.com/HankHuang0516/EClaw/commit/21dd513b4464738de29164265437435ba6cc4817)), closes [#2605](https://github.com/HankHuang0516/EClaw/issues/2605) [#2608](https://github.com/HankHuang0516/EClaw/issues/2608) [#2600](https://github.com/HankHuang0516/EClaw/issues/2600) [#2599](https://github.com/HankHuang0516/EClaw/issues/2599) [#2598](https://github.com/HankHuang0516/EClaw/issues/2598)
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **dashboard:** show Claude weekly bar reset countdown ([#2896](https://github.com/HankHuang0516/EClaw/issues/2896)) ([3b87845](https://github.com/HankHuang0516/EClaw/commit/3b87845d713e980fec69f6b8007549338a326713)), closes [#2895](https://github.com/HankHuang0516/EClaw/issues/2895)
* **chat:** smart-chip preview falls back to inline c.comments when /comments fails (PR [#2677](https://github.com/HankHuang0516/EClaw/issues/2677)) ([7f4dffd](https://github.com/HankHuang0516/EClaw/commit/7f4dffd2c83ea86f296b8fa0610f0e67c9f1af11))
* **kanban:** stabilize comment detail viewport ([#2796](https://github.com/HankHuang0516/EClaw/issues/2796)) ([0a10aad](https://github.com/HankHuang0516/EClaw/commit/0a10aadb5a5b12ff23454c16d5c88183b94ad7d7))
* **wallpaper:** stop Android live wallpaper flashing default lobster on companion change ([#2629](https://github.com/HankHuang0516/EClaw/issues/2629)) ([8b4f66f](https://github.com/HankHuang0516/EClaw/commit/8b4f66fcb335bf43128f924b761b6337c817095b)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **chat:** stop chat.html bouncing to dashboard via /api/rental/health-status 401 race ([#2833](https://github.com/HankHuang0516/EClaw/issues/2833)) ([c422406](https://github.com/HankHuang0516/EClaw/commit/c4224067cdcfe7f3e22ab95007c7563dac4196ac))
* **openclaw-channel:** support OpenClaw 2026.5.20 ([8045de6](https://github.com/HankHuang0516/EClaw/commit/8045de6bebecfc05f9bd57453b99c098ca35681b))
* **mentions:** support same-device CJK display-name tags ([#2874](https://github.com/HankHuang0516/EClaw/issues/2874)) ([b8f61be](https://github.com/HankHuang0516/EClaw/commit/b8f61be9a3962fef75dd32ea34e8900880dafaf9))
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **dashboard:** use sessions[].project for widget Projects list (was .project_id) ([#2894](https://github.com/HankHuang0516/EClaw/issues/2894)) ([0fd1334](https://github.com/HankHuang0516/EClaw/commit/0fd1334897d4a603cc6eb74f34b48606547e09cf))
* **app:** WebView pages honor app-selected locale via ?lang= URL param ([#2672](https://github.com/HankHuang0516/EClaw/issues/2672)) ([8ed8757](https://github.com/HankHuang0516/EClaw/commit/8ed8757aec5bf214e837cc0d81bf2b23f1993a91)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **share-chat:** wire rich CTA actions to msgInput ([#2867](https://github.com/HankHuang0516/EClaw/issues/2867)) ([df23b11](https://github.com/HankHuang0516/EClaw/commit/df23b1147d34c59a644a145bbd87c18b96400acc))


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* **usage-api:** /api/usage/{snapshot,timeline} + usage_snapshots table (Plan B Phase 1) ([#2889](https://github.com/HankHuang0516/EClaw/issues/2889)) ([a0d859c](https://github.com/HankHuang0516/EClaw/commit/a0d859c63f0220909dadb2b1952174861ccdce14))
* **community:** 1-click chat button on bot cards + utm tagging ([#2610](https://github.com/HankHuang0516/EClaw/issues/2610)) ([eee97b0](https://github.com/HankHuang0516/EClaw/commit/eee97b0e2e4e74945ec24f218a69a52800b97a66))
* **chat:** accept ?messageId= as deep-link alias ([#2838](https://github.com/HankHuang0516/EClaw/issues/2838)) ([1785a87](https://github.com/HankHuang0516/EClaw/commit/1785a87310426637fd10df83754fb9924c45207f))
* **chat:** add avatar size preference ([#2714](https://github.com/HankHuang0516/EClaw/issues/2714)) ([6fe164a](https://github.com/HankHuang0516/EClaw/commit/6fe164ad8b22fa576d2dd9ad37c0d9fc295b5a83))
* **dashboard:** add Claude and Codex channel guides ([#2640](https://github.com/HankHuang0516/EClaw/issues/2640)) ([c64e4c4](https://github.com/HankHuang0516/EClaw/commit/c64e4c4afc78db58c5cd578f00486dd7b2fd3311))
* **dashboard:** add Claude Code channel guide card ([#2667](https://github.com/HankHuang0516/EClaw/issues/2667)) ([d70d75c](https://github.com/HankHuang0516/EClaw/commit/d70d75c0c8caa8a540358a9aab4556b8c1927a5c))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* **kanban:** add device-scoped card tags ([#2773](https://github.com/HankHuang0516/EClaw/issues/2773)) ([53a387e](https://github.com/HankHuang0516/EClaw/commit/53a387e67ba7bb4f6bed1c427000c4ae8666577a))
* **portal:** add entity selector to petdx-browser ([#2602](https://github.com/HankHuang0516/EClaw/issues/2602)) ([3fa067e](https://github.com/HankHuang0516/EClaw/commit/3fa067e00b38829b48a37cecd33ee81a9a1122d9))
* **kanban:** add explicit card links ([#2721](https://github.com/HankHuang0516/EClaw/issues/2721)) ([ef9f812](https://github.com/HankHuang0516/EClaw/commit/ef9f812a3fcf39efd07fd158ce90951bdd045ac7))
* **kanban:** add explicit done-card reopen flow ([#2801](https://github.com/HankHuang0516/EClaw/issues/2801)) ([5080aac](https://github.com/HankHuang0516/EClaw/commit/5080aacb75047c0deaa379ee708ec85465afd57c))
* **mindmap:** add GET /api/mindmap/graph force-graph projection ([#2680](https://github.com/HankHuang0516/EClaw/issues/2680)) ([a00b2e7](https://github.com/HankHuang0516/EClaw/commit/a00b2e775af2c4c98cd157f760ad87aeeee469f0)), closes [#2679](https://github.com/HankHuang0516/EClaw/issues/2679) [#2679](https://github.com/HankHuang0516/EClaw/issues/2679)
* **dashboard:** add Hermes channel promo card ([#2708](https://github.com/HankHuang0516/EClaw/issues/2708)) ([337aca1](https://github.com/HankHuang0516/EClaw/commit/337aca153d5a1cd7e888c065f00ae54db7872d91))
* **rental:** add listing soft pause ([#2781](https://github.com/HankHuang0516/EClaw/issues/2781)) ([6586b72](https://github.com/HankHuang0516/EClaw/commit/6586b72717ddb1637d91cd3242c8d2ff554f62b4))
* **portal:** add Nagoya 5D4N trip static cross-ref page ([#2689](https://github.com/HankHuang0516/EClaw/issues/2689)) ([2e0efb6](https://github.com/HankHuang0516/EClaw/commit/2e0efb6dcdaff52226cc8854a96747000b12bdff))
* **portal:** add Nagoya trip map links and image lightbox ([#2821](https://github.com/HankHuang0516/EClaw/issues/2821)) ([3e40955](https://github.com/HankHuang0516/EClaw/commit/3e40955650a05f45a6b9f7e39e73847705424a03))
* **portal/nagoya:** add parking shortcut buttons next to itinerary places ([#2826](https://github.com/HankHuang0516/EClaw/issues/2826)) ([63968c5](https://github.com/HankHuang0516/EClaw/commit/63968c554d046afc8d978de74e3aacbf7700500d))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **settings:** add rental roster management preview ([#2758](https://github.com/HankHuang0516/EClaw/issues/2758)) ([9706e59](https://github.com/HankHuang0516/EClaw/commit/9706e59ded140a90a6e02348124282bc69d89001))
* **rental:** add renter health chat indicator ([#2690](https://github.com/HankHuang0516/EClaw/issues/2690)) ([36cd2e9](https://github.com/HankHuang0516/EClaw/commit/36cd2e9802be4c7ebb03d3024617fa74aca48ffd))
* **ios:** add Tutorial & Intro entry in Settings ([#2800](https://github.com/HankHuang0516/EClaw/issues/2800)) ([ed83e51](https://github.com/HankHuang0516/EClaw/commit/ed83e51d043bf4cd5865f38dc95a91ed54820d6c))
* **landing:** add Watch Full Demo CTA below hero video ([#2799](https://github.com/HankHuang0516/EClaw/issues/2799)) ([66107c9](https://github.com/HankHuang0516/EClaw/commit/66107c954727551fd34d989a4674daaad9b63968))
* **footer:** add Watch Intro Video link in Info column ([#2798](https://github.com/HankHuang0516/EClaw/issues/2798)) ([d7c6d59](https://github.com/HankHuang0516/EClaw/commit/d7c6d596b69c6a5b257bf1f7a792a407ef9712ad))
* **i18n:** ar iter-2 — fill 623 missing keys against en source ([#2847](https://github.com/HankHuang0516/EClaw/issues/2847)) ([ee94a7a](https://github.com/HankHuang0516/EClaw/commit/ee94a7ae6812b5163efe4284ee4907ca32302f5c))
* **kanban:** backlog launch-gate flag to suppress L1/L2/L3 escalation ([#2855](https://github.com/HankHuang0516/EClaw/issues/2855)) ([cb8bf1b](https://github.com/HankHuang0516/EClaw/commit/cb8bf1bb6421f25214f65e129a8cadccc49cc266)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#4](https://github.com/HankHuang0516/EClaw/issues/4) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **companion:** bridge crafter-station/petdex gallery (1784 pets) ([#2601](https://github.com/HankHuang0516/EClaw/issues/2601)) ([2e245be](https://github.com/HankHuang0516/EClaw/commit/2e245bea6dd47ea7361b927d389188a3c23b6bb3))
* **promo:** chat avatar size feature landing page (self-hosted MP4) ([#2722](https://github.com/HankHuang0516/EClaw/issues/2722)) ([3852210](https://github.com/HankHuang0516/EClaw/commit/3852210d355704d018e3daca6b5f9512a011b210)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **kanban:** cron-spawn jitter + lane backpressure to prevent same-tick wedge ([#2791](https://github.com/HankHuang0516/EClaw/issues/2791)) ([9f414a7](https://github.com/HankHuang0516/EClaw/commit/9f414a731d6393672a0a4189c7b408c529ae5e12)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **portal:** dashboard usage widget — Claude/Codex 5h gauges + 24h chart (Plan B Phase 3) ([#2891](https://github.com/HankHuang0516/EClaw/issues/2891)) ([d18f373](https://github.com/HankHuang0516/EClaw/commit/d18f373857e4bd302437d6bda2a1e01871fbb1db))
* **portal:** dashboard usage widget v2 — Session/Weekly % bars + projects, no cost (Plan B Phase 3.1) ([#2893](https://github.com/HankHuang0516/EClaw/issues/2893)) ([4bc0dc7](https://github.com/HankHuang0516/EClaw/commit/4bc0dc744ed9d54dfd532ebac4b705c7f84ec0a6))
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **promo:** embed daily eclaw video 2026-05-14 ([#2786](https://github.com/HankHuang0516/EClaw/issues/2786)) ([718a814](https://github.com/HankHuang0516/EClaw/commit/718a814ab16850bc2b33a1b303841e2c4378ecfa)), closes [#2782](https://github.com/HankHuang0516/EClaw/issues/2782) [#2693](https://github.com/HankHuang0516/EClaw/issues/2693)
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **info:** embed promo video at top of Quick Start tab ([#2797](https://github.com/HankHuang0516/EClaw/issues/2797)) ([047679f](https://github.com/HankHuang0516/EClaw/commit/047679fd57ab9949eaeacea414d5611e71afe041))
* **rental:** enforce strict rebind refunds ([#2703](https://github.com/HankHuang0516/EClaw/issues/2703)) ([a1859c5](https://github.com/HankHuang0516/EClaw/commit/a1859c50e6fb3991d7a8051491502d824a14a116))
* **portal:** group task chip actions ([#2825](https://github.com/HankHuang0516/EClaw/issues/2825)) ([5db5c59](https://github.com/HankHuang0516/EClaw/commit/5db5c59b32b8635f1412205faf0c2f9164d3d5d4))
* **portal:** info-guide-rules + info-guide-soul slide pair ([#2793](https://github.com/HankHuang0516/EClaw/issues/2793)) ([1c8bddc](https://github.com/HankHuang0516/EClaw/commit/1c8bddc4c185054b2b60088498e3d45509117127)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **chat:** link card previews to kanban ([#2754](https://github.com/HankHuang0516/EClaw/issues/2754)) ([2261240](https://github.com/HankHuang0516/EClaw/commit/22612402c2e95efb07246629e81a849be41ee9c7))
* **mission:** link notes to kanban cards ([#2723](https://github.com/HankHuang0516/EClaw/issues/2723)) ([b36dc18](https://github.com/HankHuang0516/EClaw/commit/b36dc18f3a8facf12e0b6046351c222f1e99dc55))
* **usage-daemon:** macOS launchd daemon polls Claude/Codex usage → POST /api/usage/snapshot (Plan B Phase 2) ([#2890](https://github.com/HankHuang0516/EClaw/issues/2890)) ([fd225e1](https://github.com/HankHuang0516/EClaw/commit/fd225e12d9491037be1a340bd63b54b5f3308c7f))
* **mindmap:** mission.html link to /portal/mindmap.html + deprecate /api/mission/mindmap ([#2685](https://github.com/HankHuang0516/EClaw/issues/2685)) ([11e297b](https://github.com/HankHuang0516/EClaw/commit/11e297bab1c9b56fcde3027d6500b7c58891bf18)), closes [#2680](https://github.com/HankHuang0516/EClaw/issues/2680) [#2684](https://github.com/HankHuang0516/EClaw/issues/2684)
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **portal:** nagoya trip interactive map (Leaflet + OSM, no API key) ([#2888](https://github.com/HankHuang0516/EClaw/issues/2888)) ([ecfdac0](https://github.com/HankHuang0516/EClaw/commit/ecfdac06348c12ee7c6872c6c28d5f82162e7aa9))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **settings:** per-entity nudge override UI (Phase 2) ([#2837](https://github.com/HankHuang0516/EClaw/issues/2837)) ([ea7662b](https://github.com/HankHuang0516/EClaw/commit/ea7662b0858882dae461e1387f711895924f9ab8)), closes [3/#4](https://github.com/HankHuang0516/EClaw/issues/4)
* **kanban:** per-entity nudge overrides (Phase 2 of card_e066cb6b) ([#2836](https://github.com/HankHuang0516/EClaw/issues/2836)) ([0425f80](https://github.com/HankHuang0516/EClaw/commit/0425f80bc1169c0d506b665659c8676695c45553))
* **avatar:** petdx render on card-holder my-cards (Phase 1b) ([#2621](https://github.com/HankHuang0516/EClaw/issues/2621)) ([f78ba8b](https://github.com/HankHuang0516/EClaw/commit/f78ba8b18acc426936ab6d8a82ca7541effea00d))
* **avatar:** petdx render on dashboard entity grid / org chart / bindings (Phase 1b) ([#2622](https://github.com/HankHuang0516/EClaw/issues/2622)) ([f417749](https://github.com/HankHuang0516/EClaw/commit/f41774914451048e8cd76e9ae30416a0642e173b)), closes [#2620](https://github.com/HankHuang0516/EClaw/issues/2620) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621)
* **avatar:** petdx render on kanban auto-assign / pulse / comment avatars (Phase 1b) ([#2624](https://github.com/HankHuang0516/EClaw/issues/2624)) ([6bff5f8](https://github.com/HankHuang0516/EClaw/commit/6bff5f80440d0bd91a6b1721cde9478d685c4d46))
* **avatar:** petdx render on mission skill/rule/soul entity dialogs (Phase 1b) ([#2623](https://github.com/HankHuang0516/EClaw/issues/2623)) ([129327b](https://github.com/HankHuang0516/EClaw/commit/129327bc7b91056659f1ab7e8d5e3f5260d951fb))
* **mindmap:** portal/mindmap.html force-graph prototype ([#129](https://github.com/HankHuang0516/EClaw/issues/129)) ([#2681](https://github.com/HankHuang0516/EClaw/issues/2681)) ([0f15e69](https://github.com/HankHuang0516/EClaw/commit/0f15e6930f0697c37fa08f3219edb8f9e499837f)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **portal:** redo nagoya trip page in professional tour-guide style ([#2691](https://github.com/HankHuang0516/EClaw/issues/2691)) ([b2378c0](https://github.com/HankHuang0516/EClaw/commit/b2378c06ee20fa9cccfdceceb1a4c9e0b3072f59))
* **i18n:** remove ms+hi orphan keys from i18n.js ([#2849](https://github.com/HankHuang0516/EClaw/issues/2849)) ([320176c](https://github.com/HankHuang0516/EClaw/commit/320176c06a3cfd8631e2a82ad02a6bd6a9af0389))
* **avatar:** render selected petdx companion in chat avatars ([#2620](https://github.com/HankHuang0516/EClaw/issues/2620)) ([0bdd046](https://github.com/HankHuang0516/EClaw/commit/0bdd046fe1b1c428e32edda366ff112c08927f4c))
* **home:** replace native home with WebView hosting dashboard.html ([#2634](https://github.com/HankHuang0516/EClaw/issues/2634)) ([e69ea81](https://github.com/HankHuang0516/EClaw/commit/e69ea8160c239b083a83d6dc83a4f1c3f901c863))
* **app:** route chat mission jumps through native tabs ([#2824](https://github.com/HankHuang0516/EClaw/issues/2824)) ([deb07b6](https://github.com/HankHuang0516/EClaw/commit/deb07b69a9ecca632fe27278de537f1d85234e94))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **chat:** support message deep links ([#2719](https://github.com/HankHuang0516/EClaw/issues/2719)) ([2dc0f1e](https://github.com/HankHuang0516/EClaw/commit/2dc0f1eeb259e1a0848db4a03186b989372cd91c))
* **mission:** support note deep links ([#2717](https://github.com/HankHuang0516/EClaw/issues/2717)) ([2efd3a5](https://github.com/HankHuang0516/EClaw/commit/2efd3a5e741217a07c0b0ac54a0ddd010e0ebe23))
* **share-chat:** twitter card + per-bot og:image/twitter:* in SSR ([#2609](https://github.com/HankHuang0516/EClaw/issues/2609)) ([6cdc853](https://github.com/HankHuang0516/EClaw/commit/6cdc853dc884cdb95bd47214942768981f218ae0))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))
* **settings:** wire petdx avatar into channel-account chips ([#2626](https://github.com/HankHuang0516/EClaw/issues/2626)) ([88aec77](https://github.com/HankHuang0516/EClaw/commit/88aec772628c240e97b336bb5820892ad632d1ae))
* **files:** wire petdx avatar into entity filter & per-file badges ([#2627](https://github.com/HankHuang0516/EClaw/issues/2627)) ([5b3e5cc](https://github.com/HankHuang0516/EClaw/commit/5b3e5cc542d9da69bb4e92500fd03a542ea33f00))
* **mindmap:** wrap hardcoded zh-TW UI strings with i18n t() ([#2607](https://github.com/HankHuang0516/EClaw/issues/2607)) ([166af87](https://github.com/HankHuang0516/EClaw/commit/166af8772b2121a24aaf34a83b3de970e9b3b571)), closes [#2606](https://github.com/HankHuang0516/EClaw/issues/2606)
* **i18n:** zh-TW backfill 8 keys (soft-pause + chat + invite + wallet) ([#2815](https://github.com/HankHuang0516/EClaw/issues/2815)) ([a2dd574](https://github.com/HankHuang0516/EClaw/commit/a2dd5743ce8d43a4b6ace9a2fd4b52568180d6c5))


### Performance Improvements

* **mindmap:** force-graph hardening for 1000/2000-node graphs ([#2684](https://github.com/HankHuang0516/EClaw/issues/2684)) ([da8b1c8](https://github.com/HankHuang0516/EClaw/commit/da8b1c8f947ab8bc8fa455c1962a91146623a1fc))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-24)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **notifications:** add kanban_done + kanban_done_auto toggles to Android Settings ([#2636](https://github.com/HankHuang0516/EClaw/issues/2636)) ([a710909](https://github.com/HankHuang0516/EClaw/commit/a7109095e3393b8564e7ef1b23d382a4fbb944b8))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **i18n:** ar block — fix 27 broken entries (CJK leaks + truncated HTML) ([#2851](https://github.com/HankHuang0516/EClaw/issues/2851)) ([5b19175](https://github.com/HankHuang0516/EClaw/commit/5b19175d712d00d16fcec00b749035c4beae7a5c))
* **chat:** atomic-load target bar (await contacts before first render) ([#2831](https://github.com/HankHuang0516/EClaw/issues/2831)) ([5f529e6](https://github.com/HankHuang0516/EClaw/commit/5f529e6b772eacc38ba1de69b44258a05f0d816a)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2](https://github.com/HankHuang0516/EClaw/issues/2)
* **channel:** await binding persistence ([712516d](https://github.com/HankHuang0516/EClaw/commit/712516decafb745035bd1434a28cc1973d433e19))
* **rental:** bump handshake timeout to 60s + timeout-aware discovery fallback ([#2863](https://github.com/HankHuang0516/EClaw/issues/2863)) ([fd4322f](https://github.com/HankHuang0516/EClaw/commit/fd4322f8890f3c2dfca3acdae6a4b95f19c381f9)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **i18n:** clear batch 1 residual missing keys ([#2790](https://github.com/HankHuang0516/EClaw/issues/2790)) ([211030e](https://github.com/HankHuang0516/EClaw/commit/211030e0b0b6a865c11f0c4ed60dc4e356d43b7a))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **kanban:** comment input no longer overlaps last comment in card detail (PR [#2678](https://github.com/HankHuang0516/EClaw/issues/2678)) ([fba91fc](https://github.com/HankHuang0516/EClaw/commit/fba91fca15402b453a0db5ee857c0b16e6087055))
* **chat:** compact 20px avatar in target bar (App WebView only shows [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2](https://github.com/HankHuang0516/EClaw/issues/2)) ([#2830](https://github.com/HankHuang0516/EClaw/issues/2830)) ([42c7543](https://github.com/HankHuang0516/EClaw/commit/42c7543b4a78a7abf3f5f7535eb9bc6142cd0fe2)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **portal:** complete 401 redirect sweep + mobile UIUX truncation ([#2842](https://github.com/HankHuang0516/EClaw/issues/2842)) ([f9799ba](https://github.com/HankHuang0516/EClaw/commit/f9799ba42498b109f0a8a70e80836aa6da51e216)), closes [#2833](https://github.com/HankHuang0516/EClaw/issues/2833) [#2845](https://github.com/HankHuang0516/EClaw/issues/2845) [#2844](https://github.com/HankHuang0516/EClaw/issues/2844) [#2843](https://github.com/HankHuang0516/EClaw/issues/2843)
* **uiux:** continue qa mobile readability sweep ([#2854](https://github.com/HankHuang0516/EClaw/issues/2854)) ([57606ff](https://github.com/HankHuang0516/EClaw/commit/57606ffe3e543b07a026aacc53c4b470c9a7825b))
* **i18n:** cover dynamic portal wrapper keys ([#2807](https://github.com/HankHuang0516/EClaw/issues/2807)) ([4c711cc](https://github.com/HankHuang0516/EClaw/commit/4c711cc4009300ffe4e8933a98ee01cd0fdd6aeb))
* **i18n:** dedup 20 dash_channel_card_* keys in es block ([#2876](https://github.com/HankHuang0516/EClaw/issues/2876)) ([807284c](https://github.com/HankHuang0516/EClaw/commit/807284ce363ef119ccdb0ae40e5ce99d3f0a27e0))
* **kanban:** dep-aware nudge gating + roadmap dependency backfill ([#2904](https://github.com/HankHuang0516/EClaw/issues/2904)) ([2b76ac9](https://github.com/HankHuang0516/EClaw/commit/2b76ac9d3b7e4169b7bc3c6f6b0b0903b63cd9f7)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **rental:** don't pollute entity.message on push gateway timeout ([#2860](https://github.com/HankHuang0516/EClaw/issues/2860)) ([592ba44](https://github.com/HankHuang0516/EClaw/commit/592ba44f57536ee00011b6cbddaa6b129a7cbae9))
* **petdx:** drop dark-grey loading placeholder + preload sprite WEBP ([#2628](https://github.com/HankHuang0516/EClaw/issues/2628)) ([59cef38](https://github.com/HankHuang0516/EClaw/commit/59cef387bd69ca99d7d15c86a1364856d3849ad8)), closes [#1a1a1a](https://github.com/HankHuang0516/EClaw/issues/1a1a1a)
* **gateway-ws:** drop Origin header on server-to-server WS upgrade ([#2869](https://github.com/HankHuang0516/EClaw/issues/2869)) ([716dcf9](https://github.com/HankHuang0516/EClaw/commit/716dcf9d0834b17522bb9d894bad84bc142d1a19))
* **setup-scripts:** drop Origin header on server-to-server WS upgrade ([#2875](https://github.com/HankHuang0516/EClaw/issues/2875)) ([9d893b8](https://github.com/HankHuang0516/EClaw/commit/9d893b8e5eea4db275e450bf423903c156cd3e4b)), closes [#2869](https://github.com/HankHuang0516/EClaw/issues/2869)
* **security:** escape innerHTML in chat modal error messages ([#2819](https://github.com/HankHuang0516/EClaw/issues/2819)) ([dce07ad](https://github.com/HankHuang0516/EClaw/commit/dce07adde64795916dba977ae23e46f3371ce7ed)), closes [#2809](https://github.com/HankHuang0516/EClaw/issues/2809) [#2810](https://github.com/HankHuang0516/EClaw/issues/2810) [#2809](https://github.com/HankHuang0516/EClaw/issues/2809) [#2810](https://github.com/HankHuang0516/EClaw/issues/2810)
* **entities:** expose botSecret to owner so wallpaper service can poll companions ([#2615](https://github.com/HankHuang0516/EClaw/issues/2615)) ([04470fc](https://github.com/HankHuang0516/EClaw/commit/04470fce8f8c3fce2b1ba8b243e776606f107502))
* **rental:** expose owner_public_code in marketplace so plaza CTA can route ([#2616](https://github.com/HankHuang0516/EClaw/issues/2616)) ([4d1372f](https://github.com/HankHuang0516/EClaw/commit/4d1372f717d93cab65543e87c852e74e9fb67071)), closes [#2610](https://github.com/HankHuang0516/EClaw/issues/2610)
* **mindmap:** fallback to device scope when entityId is null ([#2728](https://github.com/HankHuang0516/EClaw/issues/2728)) ([7572312](https://github.com/HankHuang0516/EClaw/commit/7572312433d3d75fc245eda48a28919ce14bd927))
* **i18n:** fill Spanish drift keys ([#2751](https://github.com/HankHuang0516/EClaw/issues/2751)) ([0ad0ee5](https://github.com/HankHuang0516/EClaw/commit/0ad0ee55f7fac3e6ac46d891539950dab4d553cc))
* **portal:** fit embedded org chart to mobile viewport ([#2674](https://github.com/HankHuang0516/EClaw/issues/2674)) ([1c4e1b4](https://github.com/HankHuang0516/EClaw/commit/1c4e1b413ea7027b4cd4b8ecda981b0d0e12e66b))
* **i18n:** fix 6 trailing-comma syntax errors in 10-locale batch ([#2771](https://github.com/HankHuang0516/EClaw/issues/2771)) ([b27c6ca](https://github.com/HankHuang0516/EClaw/commit/b27c6ca204bf813e406c54ce3a2532a5f1f031b3))
* **kanban:** GET card returns latest 50 comments + comments endpoint exposes total ([#2816](https://github.com/HankHuang0516/EClaw/issues/2816)) ([c4d83f7](https://github.com/HankHuang0516/EClaw/commit/c4d83f777a1cd26aea0936e4316aa35c52822eef))
* **sharechat:** guest verify-email modal + disabled Send for unverified ([#2865](https://github.com/HankHuang0516/EClaw/issues/2865)) ([cb3b061](https://github.com/HankHuang0516/EClaw/commit/cb3b0614e0f6160417d907753e66eceb2d666802))
* **uiux:** harden chat previews and roster preview ([#2769](https://github.com/HankHuang0516/EClaw/issues/2769)) ([466d4d3](https://github.com/HankHuang0516/EClaw/commit/466d4d3ef81c628d3f58db64323946053d7bf61c))
* **mention-parser:** ignore @-mentions inside markdown code spans ([#2645](https://github.com/HankHuang0516/EClaw/issues/2645)) ([8da19d4](https://github.com/HankHuang0516/EClaw/commit/8da19d4a79ceb4152bf2144ee0847c61ce3e1def)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **kanban:** lazy-load dependency chips via IntersectionObserver ([#2632](https://github.com/HankHuang0516/EClaw/issues/2632)) ([20586b4](https://github.com/HankHuang0516/EClaw/commit/20586b43357335f9eb6a190c02d58c8e36b58aba)), closes [#2631](https://github.com/HankHuang0516/EClaw/issues/2631)
* **kanban:** make card sorting deterministic ([#2756](https://github.com/HankHuang0516/EClaw/issues/2756)) ([48e2117](https://github.com/HankHuang0516/EClaw/commit/48e2117b64e37f05dc635e0a3b67bfd43cbe48f5))
* **portal/nagoya-trip:** map-link invisible on dark hero/day-banner ([#2897](https://github.com/HankHuang0516/EClaw/issues/2897)) ([cc33df6](https://github.com/HankHuang0516/EClaw/commit/cc33df686673455c20beaee60871412a5d486e66)), closes [#1f4030](https://github.com/HankHuang0516/EClaw/issues/1f4030) [#8b8579](https://github.com/HankHuang0516/EClaw/issues/8b8579) [#6e6859](https://github.com/HankHuang0516/EClaw/issues/6e6859) [#7a5614](https://github.com/HankHuang0516/EClaw/issues/7a5614)
* **org-chart:** notify affected bots on hierarchy change ([#2812](https://github.com/HankHuang0516/EClaw/issues/2812)) ([55675fd](https://github.com/HankHuang0516/EClaw/commit/55675fdf4487494d729a29524b32bd81b756a00c)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** notify reviewer on manual /move → review ([#2753](https://github.com/HankHuang0516/EClaw/issues/2753)) ([6cbbb4e](https://github.com/HankHuang0516/EClaw/commit/6cbbb4ee8c0d4d8ad54df2e9b5faaa3699bd530f))
* **wallpaper:** off-load spritesheet fetch to IO so per-petdx sprites actually render ([#2618](https://github.com/HankHuang0516/EClaw/issues/2618)) ([61b832c](https://github.com/HankHuang0516/EClaw/commit/61b832c9fa8a1d0caab810ccc942d85c63349267)), closes [#2615](https://github.com/HankHuang0516/EClaw/issues/2615) [#2577](https://github.com/HankHuang0516/EClaw/issues/2577)
* **security:** patch P0 sanitize-html XSS + P1 protobufjs + exam.html XSS ([#2829](https://github.com/HankHuang0516/EClaw/issues/2829)) ([c71b871](https://github.com/HankHuang0516/EClaw/commit/c71b871a045887375dd0d26d1a3280a0891a89ad))
* **security:** patch ws uninitialized memory disclosure (GHSA-58qx-3vcg-4xpx) ([#2872](https://github.com/HankHuang0516/EClaw/issues/2872)) ([2523d15](https://github.com/HankHuang0516/EClaw/commit/2523d154bbe501a7cc086340f7a07ece3abfa69b))
* **portal:** petdx-browser cookie-session fallback for device-login ([#2757](https://github.com/HankHuang0516/EClaw/issues/2757)) ([ca275f4](https://github.com/HankHuang0516/EClaw/commit/ca275f4519835da0c7ad71c588908a18f6f138d8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **api:** platform-stats 500 + entity/lookup publicCode alias ([#2809](https://github.com/HankHuang0516/EClaw/issues/2809), [#2810](https://github.com/HankHuang0516/EClaw/issues/2810)) ([#2818](https://github.com/HankHuang0516/EClaw/issues/2818)) ([f99fd17](https://github.com/HankHuang0516/EClaw/commit/f99fd17b2b1c32d88daa2510ff66d714c1a53edc))
* **i18n:** positional format specifiers for feedback_result_logs (7 locales) ([#2597](https://github.com/HankHuang0516/EClaw/issues/2597)) ([21aedc7](https://github.com/HankHuang0516/EClaw/commit/21aedc7eebc7a2839e340136f38dfdfd4dabb9dc))
* **avatar-petdx:** preserve descriptor across transient API failures (flicker) ([#2625](https://github.com/HankHuang0516/EClaw/issues/2625)) ([7b1c606](https://github.com/HankHuang0516/EClaw/commit/7b1c606514f7698d72ec95cf6c556e4043966186))
* **chat:** preserve scroll anchor while reading history ([#2693](https://github.com/HankHuang0516/EClaw/issues/2693)) ([945fdb7](https://github.com/HankHuang0516/EClaw/commit/945fdb7192b791b31882e1e75568dd8b11e4686f))
* **promo:** pull video embed from /promo-chat-avatar.html ([#2724](https://github.com/HankHuang0516/EClaw/issues/2724)) ([2afabc8](https://github.com/HankHuang0516/EClaw/commit/2afabc8c5ff8b25218a7cb857e8adfa572c8e9d5))
* **dashboard:** read live.rate_limits.{five_hour,seven_day}.used_percentage ([#2895](https://github.com/HankHuang0516/EClaw/issues/2895)) ([8223303](https://github.com/HankHuang0516/EClaw/commit/822330312bccb1c76675ad2c3b26e78d10dd1298))
* **kanban:** realign stale recurring schedules ([#2785](https://github.com/HankHuang0516/EClaw/issues/2785)) ([ab8ee25](https://github.com/HankHuang0516/EClaw/commit/ab8ee250a9b37f3d3e838bb01d8866c8d2b78231))
* **portal:** reduce QA-discovered request fanout ([#2656](https://github.com/HankHuang0516/EClaw/issues/2656)) ([1e46d6b](https://github.com/HankHuang0516/EClaw/commit/1e46d6bab61e58c65b452b6503d953f8dddeee75))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **portal:** remove org chart fit scale floor ([#2676](https://github.com/HankHuang0516/EClaw/issues/2676)) ([0f01606](https://github.com/HankHuang0516/EClaw/commit/0f016068b963bb5f800a02f28817c7174979d913))
* **rental:** remove phantom 'webhook test push' step from BIND_COMPLETE ([#2864](https://github.com/HankHuang0516/EClaw/issues/2864)) ([47f4a3e](https://github.com/HankHuang0516/EClaw/commit/47f4a3edf76aa95ebd06d8713cd44fda6eef9b5d))
* **i18n:** rename mm_empty_title → mm_state_empty_title in mindmap.html ([#2683](https://github.com/HankHuang0516/EClaw/issues/2683)) ([c79c109](https://github.com/HankHuang0516/EClaw/commit/c79c109bea23142e8a6d9ace976d105af1280ec9))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **chat:** render mention avatars with companion renderer ([#2633](https://github.com/HankHuang0516/EClaw/issues/2633)) ([03e205f](https://github.com/HankHuang0516/EClaw/commit/03e205f663ecd2c2f443d4009dd5af0093f0bbbb))
* **kanban:** reserve mobile comments panel height ([#2782](https://github.com/HankHuang0516/EClaw/issues/2782)) ([ce8662d](https://github.com/HankHuang0516/EClaw/commit/ce8662d362422fdd25037f1deb61dbed9425e2f9))
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* scheduled audit 2026-05-13 — 6 bugs, XSS, i18n ([#2668](https://github.com/HankHuang0516/EClaw/issues/2668)) ([21dd513](https://github.com/HankHuang0516/EClaw/commit/21dd513b4464738de29164265437435ba6cc4817)), closes [#2605](https://github.com/HankHuang0516/EClaw/issues/2605) [#2608](https://github.com/HankHuang0516/EClaw/issues/2608) [#2600](https://github.com/HankHuang0516/EClaw/issues/2600) [#2599](https://github.com/HankHuang0516/EClaw/issues/2599) [#2598](https://github.com/HankHuang0516/EClaw/issues/2598)
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **dashboard:** show Claude weekly bar reset countdown ([#2896](https://github.com/HankHuang0516/EClaw/issues/2896)) ([3b87845](https://github.com/HankHuang0516/EClaw/commit/3b87845d713e980fec69f6b8007549338a326713)), closes [#2895](https://github.com/HankHuang0516/EClaw/issues/2895)
* **chat:** smart-chip preview falls back to inline c.comments when /comments fails (PR [#2677](https://github.com/HankHuang0516/EClaw/issues/2677)) ([7f4dffd](https://github.com/HankHuang0516/EClaw/commit/7f4dffd2c83ea86f296b8fa0610f0e67c9f1af11))
* **kanban:** stabilize comment detail viewport ([#2796](https://github.com/HankHuang0516/EClaw/issues/2796)) ([0a10aad](https://github.com/HankHuang0516/EClaw/commit/0a10aadb5a5b12ff23454c16d5c88183b94ad7d7))
* **wallpaper:** stop Android live wallpaper flashing default lobster on companion change ([#2629](https://github.com/HankHuang0516/EClaw/issues/2629)) ([8b4f66f](https://github.com/HankHuang0516/EClaw/commit/8b4f66fcb335bf43128f924b761b6337c817095b)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **chat:** stop chat.html bouncing to dashboard via /api/rental/health-status 401 race ([#2833](https://github.com/HankHuang0516/EClaw/issues/2833)) ([c422406](https://github.com/HankHuang0516/EClaw/commit/c4224067cdcfe7f3e22ab95007c7563dac4196ac))
* **openclaw-channel:** support OpenClaw 2026.5.20 ([8045de6](https://github.com/HankHuang0516/EClaw/commit/8045de6bebecfc05f9bd57453b99c098ca35681b))
* **mentions:** support same-device CJK display-name tags ([#2874](https://github.com/HankHuang0516/EClaw/issues/2874)) ([b8f61be](https://github.com/HankHuang0516/EClaw/commit/b8f61be9a3962fef75dd32ea34e8900880dafaf9))
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **dashboard:** use sessions[].project for widget Projects list (was .project_id) ([#2894](https://github.com/HankHuang0516/EClaw/issues/2894)) ([0fd1334](https://github.com/HankHuang0516/EClaw/commit/0fd1334897d4a603cc6eb74f34b48606547e09cf))
* **app:** WebView pages honor app-selected locale via ?lang= URL param ([#2672](https://github.com/HankHuang0516/EClaw/issues/2672)) ([8ed8757](https://github.com/HankHuang0516/EClaw/commit/8ed8757aec5bf214e837cc0d81bf2b23f1993a91)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **share-chat:** wire rich CTA actions to msgInput ([#2867](https://github.com/HankHuang0516/EClaw/issues/2867)) ([df23b11](https://github.com/HankHuang0516/EClaw/commit/df23b1147d34c59a644a145bbd87c18b96400acc))


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* **usage-api:** /api/usage/{snapshot,timeline} + usage_snapshots table (Plan B Phase 1) ([#2889](https://github.com/HankHuang0516/EClaw/issues/2889)) ([a0d859c](https://github.com/HankHuang0516/EClaw/commit/a0d859c63f0220909dadb2b1952174861ccdce14))
* **community:** 1-click chat button on bot cards + utm tagging ([#2610](https://github.com/HankHuang0516/EClaw/issues/2610)) ([eee97b0](https://github.com/HankHuang0516/EClaw/commit/eee97b0e2e4e74945ec24f218a69a52800b97a66))
* **chat:** accept ?messageId= as deep-link alias ([#2838](https://github.com/HankHuang0516/EClaw/issues/2838)) ([1785a87](https://github.com/HankHuang0516/EClaw/commit/1785a87310426637fd10df83754fb9924c45207f))
* **chat:** add avatar size preference ([#2714](https://github.com/HankHuang0516/EClaw/issues/2714)) ([6fe164a](https://github.com/HankHuang0516/EClaw/commit/6fe164ad8b22fa576d2dd9ad37c0d9fc295b5a83))
* **dashboard:** add Claude and Codex channel guides ([#2640](https://github.com/HankHuang0516/EClaw/issues/2640)) ([c64e4c4](https://github.com/HankHuang0516/EClaw/commit/c64e4c4afc78db58c5cd578f00486dd7b2fd3311))
* **dashboard:** add Claude Code channel guide card ([#2667](https://github.com/HankHuang0516/EClaw/issues/2667)) ([d70d75c](https://github.com/HankHuang0516/EClaw/commit/d70d75c0c8caa8a540358a9aab4556b8c1927a5c))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* **kanban:** add device-scoped card tags ([#2773](https://github.com/HankHuang0516/EClaw/issues/2773)) ([53a387e](https://github.com/HankHuang0516/EClaw/commit/53a387e67ba7bb4f6bed1c427000c4ae8666577a))
* **portal:** add entity selector to petdx-browser ([#2602](https://github.com/HankHuang0516/EClaw/issues/2602)) ([3fa067e](https://github.com/HankHuang0516/EClaw/commit/3fa067e00b38829b48a37cecd33ee81a9a1122d9))
* **kanban:** add explicit card links ([#2721](https://github.com/HankHuang0516/EClaw/issues/2721)) ([ef9f812](https://github.com/HankHuang0516/EClaw/commit/ef9f812a3fcf39efd07fd158ce90951bdd045ac7))
* **kanban:** add explicit done-card reopen flow ([#2801](https://github.com/HankHuang0516/EClaw/issues/2801)) ([5080aac](https://github.com/HankHuang0516/EClaw/commit/5080aacb75047c0deaa379ee708ec85465afd57c))
* **mindmap:** add GET /api/mindmap/graph force-graph projection ([#2680](https://github.com/HankHuang0516/EClaw/issues/2680)) ([a00b2e7](https://github.com/HankHuang0516/EClaw/commit/a00b2e775af2c4c98cd157f760ad87aeeee469f0)), closes [#2679](https://github.com/HankHuang0516/EClaw/issues/2679) [#2679](https://github.com/HankHuang0516/EClaw/issues/2679)
* **dashboard:** add Hermes channel promo card ([#2708](https://github.com/HankHuang0516/EClaw/issues/2708)) ([337aca1](https://github.com/HankHuang0516/EClaw/commit/337aca153d5a1cd7e888c065f00ae54db7872d91))
* **rental:** add listing soft pause ([#2781](https://github.com/HankHuang0516/EClaw/issues/2781)) ([6586b72](https://github.com/HankHuang0516/EClaw/commit/6586b72717ddb1637d91cd3242c8d2ff554f62b4))
* **portal:** add Nagoya 5D4N trip static cross-ref page ([#2689](https://github.com/HankHuang0516/EClaw/issues/2689)) ([2e0efb6](https://github.com/HankHuang0516/EClaw/commit/2e0efb6dcdaff52226cc8854a96747000b12bdff))
* **portal:** add Nagoya trip map links and image lightbox ([#2821](https://github.com/HankHuang0516/EClaw/issues/2821)) ([3e40955](https://github.com/HankHuang0516/EClaw/commit/3e40955650a05f45a6b9f7e39e73847705424a03))
* **portal/nagoya:** add parking shortcut buttons next to itinerary places ([#2826](https://github.com/HankHuang0516/EClaw/issues/2826)) ([63968c5](https://github.com/HankHuang0516/EClaw/commit/63968c554d046afc8d978de74e3aacbf7700500d))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **settings:** add rental roster management preview ([#2758](https://github.com/HankHuang0516/EClaw/issues/2758)) ([9706e59](https://github.com/HankHuang0516/EClaw/commit/9706e59ded140a90a6e02348124282bc69d89001))
* **rental:** add renter health chat indicator ([#2690](https://github.com/HankHuang0516/EClaw/issues/2690)) ([36cd2e9](https://github.com/HankHuang0516/EClaw/commit/36cd2e9802be4c7ebb03d3024617fa74aca48ffd))
* **ios:** add Tutorial & Intro entry in Settings ([#2800](https://github.com/HankHuang0516/EClaw/issues/2800)) ([ed83e51](https://github.com/HankHuang0516/EClaw/commit/ed83e51d043bf4cd5865f38dc95a91ed54820d6c))
* **landing:** add Watch Full Demo CTA below hero video ([#2799](https://github.com/HankHuang0516/EClaw/issues/2799)) ([66107c9](https://github.com/HankHuang0516/EClaw/commit/66107c954727551fd34d989a4674daaad9b63968))
* **footer:** add Watch Intro Video link in Info column ([#2798](https://github.com/HankHuang0516/EClaw/issues/2798)) ([d7c6d59](https://github.com/HankHuang0516/EClaw/commit/d7c6d596b69c6a5b257bf1f7a792a407ef9712ad))
* **i18n:** ar iter-2 — fill 623 missing keys against en source ([#2847](https://github.com/HankHuang0516/EClaw/issues/2847)) ([ee94a7a](https://github.com/HankHuang0516/EClaw/commit/ee94a7ae6812b5163efe4284ee4907ca32302f5c))
* **kanban:** backlog launch-gate flag to suppress L1/L2/L3 escalation ([#2855](https://github.com/HankHuang0516/EClaw/issues/2855)) ([cb8bf1b](https://github.com/HankHuang0516/EClaw/commit/cb8bf1bb6421f25214f65e129a8cadccc49cc266)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#4](https://github.com/HankHuang0516/EClaw/issues/4) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **companion:** bridge crafter-station/petdex gallery (1784 pets) ([#2601](https://github.com/HankHuang0516/EClaw/issues/2601)) ([2e245be](https://github.com/HankHuang0516/EClaw/commit/2e245bea6dd47ea7361b927d389188a3c23b6bb3))
* **promo:** chat avatar size feature landing page (self-hosted MP4) ([#2722](https://github.com/HankHuang0516/EClaw/issues/2722)) ([3852210](https://github.com/HankHuang0516/EClaw/commit/3852210d355704d018e3daca6b5f9512a011b210)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **kanban:** cron-spawn jitter + lane backpressure to prevent same-tick wedge ([#2791](https://github.com/HankHuang0516/EClaw/issues/2791)) ([9f414a7](https://github.com/HankHuang0516/EClaw/commit/9f414a731d6393672a0a4189c7b408c529ae5e12)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **portal:** dashboard usage widget — Claude/Codex 5h gauges + 24h chart (Plan B Phase 3) ([#2891](https://github.com/HankHuang0516/EClaw/issues/2891)) ([d18f373](https://github.com/HankHuang0516/EClaw/commit/d18f373857e4bd302437d6bda2a1e01871fbb1db))
* **portal:** dashboard usage widget v2 — Session/Weekly % bars + projects, no cost (Plan B Phase 3.1) ([#2893](https://github.com/HankHuang0516/EClaw/issues/2893)) ([4bc0dc7](https://github.com/HankHuang0516/EClaw/commit/4bc0dc744ed9d54dfd532ebac4b705c7f84ec0a6))
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **promo:** embed daily eclaw video 2026-05-14 ([#2786](https://github.com/HankHuang0516/EClaw/issues/2786)) ([718a814](https://github.com/HankHuang0516/EClaw/commit/718a814ab16850bc2b33a1b303841e2c4378ecfa)), closes [#2782](https://github.com/HankHuang0516/EClaw/issues/2782) [#2693](https://github.com/HankHuang0516/EClaw/issues/2693)
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **info:** embed promo video at top of Quick Start tab ([#2797](https://github.com/HankHuang0516/EClaw/issues/2797)) ([047679f](https://github.com/HankHuang0516/EClaw/commit/047679fd57ab9949eaeacea414d5611e71afe041))
* **rental:** enforce strict rebind refunds ([#2703](https://github.com/HankHuang0516/EClaw/issues/2703)) ([a1859c5](https://github.com/HankHuang0516/EClaw/commit/a1859c50e6fb3991d7a8051491502d824a14a116))
* **portal:** group task chip actions ([#2825](https://github.com/HankHuang0516/EClaw/issues/2825)) ([5db5c59](https://github.com/HankHuang0516/EClaw/commit/5db5c59b32b8635f1412205faf0c2f9164d3d5d4))
* **portal:** info-guide-rules + info-guide-soul slide pair ([#2793](https://github.com/HankHuang0516/EClaw/issues/2793)) ([1c8bddc](https://github.com/HankHuang0516/EClaw/commit/1c8bddc4c185054b2b60088498e3d45509117127)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **chat:** link card previews to kanban ([#2754](https://github.com/HankHuang0516/EClaw/issues/2754)) ([2261240](https://github.com/HankHuang0516/EClaw/commit/22612402c2e95efb07246629e81a849be41ee9c7))
* **mission:** link notes to kanban cards ([#2723](https://github.com/HankHuang0516/EClaw/issues/2723)) ([b36dc18](https://github.com/HankHuang0516/EClaw/commit/b36dc18f3a8facf12e0b6046351c222f1e99dc55))
* **usage-daemon:** macOS launchd daemon polls Claude/Codex usage → POST /api/usage/snapshot (Plan B Phase 2) ([#2890](https://github.com/HankHuang0516/EClaw/issues/2890)) ([fd225e1](https://github.com/HankHuang0516/EClaw/commit/fd225e12d9491037be1a340bd63b54b5f3308c7f))
* **mindmap:** mission.html link to /portal/mindmap.html + deprecate /api/mission/mindmap ([#2685](https://github.com/HankHuang0516/EClaw/issues/2685)) ([11e297b](https://github.com/HankHuang0516/EClaw/commit/11e297bab1c9b56fcde3027d6500b7c58891bf18)), closes [#2680](https://github.com/HankHuang0516/EClaw/issues/2680) [#2684](https://github.com/HankHuang0516/EClaw/issues/2684)
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **portal:** nagoya trip interactive map (Leaflet + OSM, no API key) ([#2888](https://github.com/HankHuang0516/EClaw/issues/2888)) ([ecfdac0](https://github.com/HankHuang0516/EClaw/commit/ecfdac06348c12ee7c6872c6c28d5f82162e7aa9))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **settings:** per-entity nudge override UI (Phase 2) ([#2837](https://github.com/HankHuang0516/EClaw/issues/2837)) ([ea7662b](https://github.com/HankHuang0516/EClaw/commit/ea7662b0858882dae461e1387f711895924f9ab8)), closes [3/#4](https://github.com/HankHuang0516/EClaw/issues/4)
* **kanban:** per-entity nudge overrides (Phase 2 of card_e066cb6b) ([#2836](https://github.com/HankHuang0516/EClaw/issues/2836)) ([0425f80](https://github.com/HankHuang0516/EClaw/commit/0425f80bc1169c0d506b665659c8676695c45553))
* **avatar:** petdx render on card-holder my-cards (Phase 1b) ([#2621](https://github.com/HankHuang0516/EClaw/issues/2621)) ([f78ba8b](https://github.com/HankHuang0516/EClaw/commit/f78ba8b18acc426936ab6d8a82ca7541effea00d))
* **avatar:** petdx render on dashboard entity grid / org chart / bindings (Phase 1b) ([#2622](https://github.com/HankHuang0516/EClaw/issues/2622)) ([f417749](https://github.com/HankHuang0516/EClaw/commit/f41774914451048e8cd76e9ae30416a0642e173b)), closes [#2620](https://github.com/HankHuang0516/EClaw/issues/2620) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621)
* **avatar:** petdx render on kanban auto-assign / pulse / comment avatars (Phase 1b) ([#2624](https://github.com/HankHuang0516/EClaw/issues/2624)) ([6bff5f8](https://github.com/HankHuang0516/EClaw/commit/6bff5f80440d0bd91a6b1721cde9478d685c4d46))
* **avatar:** petdx render on mission skill/rule/soul entity dialogs (Phase 1b) ([#2623](https://github.com/HankHuang0516/EClaw/issues/2623)) ([129327b](https://github.com/HankHuang0516/EClaw/commit/129327bc7b91056659f1ab7e8d5e3f5260d951fb))
* **mindmap:** portal/mindmap.html force-graph prototype ([#129](https://github.com/HankHuang0516/EClaw/issues/129)) ([#2681](https://github.com/HankHuang0516/EClaw/issues/2681)) ([0f15e69](https://github.com/HankHuang0516/EClaw/commit/0f15e6930f0697c37fa08f3219edb8f9e499837f)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **portal:** redo nagoya trip page in professional tour-guide style ([#2691](https://github.com/HankHuang0516/EClaw/issues/2691)) ([b2378c0](https://github.com/HankHuang0516/EClaw/commit/b2378c06ee20fa9cccfdceceb1a4c9e0b3072f59))
* **i18n:** remove ms+hi orphan keys from i18n.js ([#2849](https://github.com/HankHuang0516/EClaw/issues/2849)) ([320176c](https://github.com/HankHuang0516/EClaw/commit/320176c06a3cfd8631e2a82ad02a6bd6a9af0389))
* **avatar:** render selected petdx companion in chat avatars ([#2620](https://github.com/HankHuang0516/EClaw/issues/2620)) ([0bdd046](https://github.com/HankHuang0516/EClaw/commit/0bdd046fe1b1c428e32edda366ff112c08927f4c))
* **home:** replace native home with WebView hosting dashboard.html ([#2634](https://github.com/HankHuang0516/EClaw/issues/2634)) ([e69ea81](https://github.com/HankHuang0516/EClaw/commit/e69ea8160c239b083a83d6dc83a4f1c3f901c863))
* **app:** route chat mission jumps through native tabs ([#2824](https://github.com/HankHuang0516/EClaw/issues/2824)) ([deb07b6](https://github.com/HankHuang0516/EClaw/commit/deb07b69a9ecca632fe27278de537f1d85234e94))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **chat:** support message deep links ([#2719](https://github.com/HankHuang0516/EClaw/issues/2719)) ([2dc0f1e](https://github.com/HankHuang0516/EClaw/commit/2dc0f1eeb259e1a0848db4a03186b989372cd91c))
* **mission:** support note deep links ([#2717](https://github.com/HankHuang0516/EClaw/issues/2717)) ([2efd3a5](https://github.com/HankHuang0516/EClaw/commit/2efd3a5e741217a07c0b0ac54a0ddd010e0ebe23))
* **share-chat:** twitter card + per-bot og:image/twitter:* in SSR ([#2609](https://github.com/HankHuang0516/EClaw/issues/2609)) ([6cdc853](https://github.com/HankHuang0516/EClaw/commit/6cdc853dc884cdb95bd47214942768981f218ae0))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))
* **settings:** wire petdx avatar into channel-account chips ([#2626](https://github.com/HankHuang0516/EClaw/issues/2626)) ([88aec77](https://github.com/HankHuang0516/EClaw/commit/88aec772628c240e97b336bb5820892ad632d1ae))
* **files:** wire petdx avatar into entity filter & per-file badges ([#2627](https://github.com/HankHuang0516/EClaw/issues/2627)) ([5b3e5cc](https://github.com/HankHuang0516/EClaw/commit/5b3e5cc542d9da69bb4e92500fd03a542ea33f00))
* **mindmap:** wrap hardcoded zh-TW UI strings with i18n t() ([#2607](https://github.com/HankHuang0516/EClaw/issues/2607)) ([166af87](https://github.com/HankHuang0516/EClaw/commit/166af8772b2121a24aaf34a83b3de970e9b3b571)), closes [#2606](https://github.com/HankHuang0516/EClaw/issues/2606)
* **i18n:** zh-TW backfill 8 keys (soft-pause + chat + invite + wallet) ([#2815](https://github.com/HankHuang0516/EClaw/issues/2815)) ([a2dd574](https://github.com/HankHuang0516/EClaw/commit/a2dd5743ce8d43a4b6ace9a2fd4b52568180d6c5))


### Performance Improvements

* **mindmap:** force-graph hardening for 1000/2000-node graphs ([#2684](https://github.com/HankHuang0516/EClaw/issues/2684)) ([da8b1c8](https://github.com/HankHuang0516/EClaw/commit/da8b1c8f947ab8bc8fa455c1962a91146623a1fc))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-24)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **notifications:** add kanban_done + kanban_done_auto toggles to Android Settings ([#2636](https://github.com/HankHuang0516/EClaw/issues/2636)) ([a710909](https://github.com/HankHuang0516/EClaw/commit/a7109095e3393b8564e7ef1b23d382a4fbb944b8))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **i18n:** ar block — fix 27 broken entries (CJK leaks + truncated HTML) ([#2851](https://github.com/HankHuang0516/EClaw/issues/2851)) ([5b19175](https://github.com/HankHuang0516/EClaw/commit/5b19175d712d00d16fcec00b749035c4beae7a5c))
* **chat:** atomic-load target bar (await contacts before first render) ([#2831](https://github.com/HankHuang0516/EClaw/issues/2831)) ([5f529e6](https://github.com/HankHuang0516/EClaw/commit/5f529e6b772eacc38ba1de69b44258a05f0d816a)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2](https://github.com/HankHuang0516/EClaw/issues/2)
* **channel:** await binding persistence ([712516d](https://github.com/HankHuang0516/EClaw/commit/712516decafb745035bd1434a28cc1973d433e19))
* **rental:** bump handshake timeout to 60s + timeout-aware discovery fallback ([#2863](https://github.com/HankHuang0516/EClaw/issues/2863)) ([fd4322f](https://github.com/HankHuang0516/EClaw/commit/fd4322f8890f3c2dfca3acdae6a4b95f19c381f9)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **i18n:** clear batch 1 residual missing keys ([#2790](https://github.com/HankHuang0516/EClaw/issues/2790)) ([211030e](https://github.com/HankHuang0516/EClaw/commit/211030e0b0b6a865c11f0c4ed60dc4e356d43b7a))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **kanban:** comment input no longer overlaps last comment in card detail (PR [#2678](https://github.com/HankHuang0516/EClaw/issues/2678)) ([fba91fc](https://github.com/HankHuang0516/EClaw/commit/fba91fca15402b453a0db5ee857c0b16e6087055))
* **chat:** compact 20px avatar in target bar (App WebView only shows [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2](https://github.com/HankHuang0516/EClaw/issues/2)) ([#2830](https://github.com/HankHuang0516/EClaw/issues/2830)) ([42c7543](https://github.com/HankHuang0516/EClaw/commit/42c7543b4a78a7abf3f5f7535eb9bc6142cd0fe2)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **portal:** complete 401 redirect sweep + mobile UIUX truncation ([#2842](https://github.com/HankHuang0516/EClaw/issues/2842)) ([f9799ba](https://github.com/HankHuang0516/EClaw/commit/f9799ba42498b109f0a8a70e80836aa6da51e216)), closes [#2833](https://github.com/HankHuang0516/EClaw/issues/2833) [#2845](https://github.com/HankHuang0516/EClaw/issues/2845) [#2844](https://github.com/HankHuang0516/EClaw/issues/2844) [#2843](https://github.com/HankHuang0516/EClaw/issues/2843)
* **uiux:** continue qa mobile readability sweep ([#2854](https://github.com/HankHuang0516/EClaw/issues/2854)) ([57606ff](https://github.com/HankHuang0516/EClaw/commit/57606ffe3e543b07a026aacc53c4b470c9a7825b))
* **i18n:** cover dynamic portal wrapper keys ([#2807](https://github.com/HankHuang0516/EClaw/issues/2807)) ([4c711cc](https://github.com/HankHuang0516/EClaw/commit/4c711cc4009300ffe4e8933a98ee01cd0fdd6aeb))
* **i18n:** dedup 20 dash_channel_card_* keys in es block ([#2876](https://github.com/HankHuang0516/EClaw/issues/2876)) ([807284c](https://github.com/HankHuang0516/EClaw/commit/807284ce363ef119ccdb0ae40e5ce99d3f0a27e0))
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **rental:** don't pollute entity.message on push gateway timeout ([#2860](https://github.com/HankHuang0516/EClaw/issues/2860)) ([592ba44](https://github.com/HankHuang0516/EClaw/commit/592ba44f57536ee00011b6cbddaa6b129a7cbae9))
* **petdx:** drop dark-grey loading placeholder + preload sprite WEBP ([#2628](https://github.com/HankHuang0516/EClaw/issues/2628)) ([59cef38](https://github.com/HankHuang0516/EClaw/commit/59cef387bd69ca99d7d15c86a1364856d3849ad8)), closes [#1a1a1a](https://github.com/HankHuang0516/EClaw/issues/1a1a1a)
* **gateway-ws:** drop Origin header on server-to-server WS upgrade ([#2869](https://github.com/HankHuang0516/EClaw/issues/2869)) ([716dcf9](https://github.com/HankHuang0516/EClaw/commit/716dcf9d0834b17522bb9d894bad84bc142d1a19))
* **setup-scripts:** drop Origin header on server-to-server WS upgrade ([#2875](https://github.com/HankHuang0516/EClaw/issues/2875)) ([9d893b8](https://github.com/HankHuang0516/EClaw/commit/9d893b8e5eea4db275e450bf423903c156cd3e4b)), closes [#2869](https://github.com/HankHuang0516/EClaw/issues/2869)
* **security:** escape innerHTML in chat modal error messages ([#2819](https://github.com/HankHuang0516/EClaw/issues/2819)) ([dce07ad](https://github.com/HankHuang0516/EClaw/commit/dce07adde64795916dba977ae23e46f3371ce7ed)), closes [#2809](https://github.com/HankHuang0516/EClaw/issues/2809) [#2810](https://github.com/HankHuang0516/EClaw/issues/2810) [#2809](https://github.com/HankHuang0516/EClaw/issues/2809) [#2810](https://github.com/HankHuang0516/EClaw/issues/2810)
* **entities:** expose botSecret to owner so wallpaper service can poll companions ([#2615](https://github.com/HankHuang0516/EClaw/issues/2615)) ([04470fc](https://github.com/HankHuang0516/EClaw/commit/04470fce8f8c3fce2b1ba8b243e776606f107502))
* **rental:** expose owner_public_code in marketplace so plaza CTA can route ([#2616](https://github.com/HankHuang0516/EClaw/issues/2616)) ([4d1372f](https://github.com/HankHuang0516/EClaw/commit/4d1372f717d93cab65543e87c852e74e9fb67071)), closes [#2610](https://github.com/HankHuang0516/EClaw/issues/2610)
* **mindmap:** fallback to device scope when entityId is null ([#2728](https://github.com/HankHuang0516/EClaw/issues/2728)) ([7572312](https://github.com/HankHuang0516/EClaw/commit/7572312433d3d75fc245eda48a28919ce14bd927))
* **i18n:** fill Spanish drift keys ([#2751](https://github.com/HankHuang0516/EClaw/issues/2751)) ([0ad0ee5](https://github.com/HankHuang0516/EClaw/commit/0ad0ee55f7fac3e6ac46d891539950dab4d553cc))
* **portal:** fit embedded org chart to mobile viewport ([#2674](https://github.com/HankHuang0516/EClaw/issues/2674)) ([1c4e1b4](https://github.com/HankHuang0516/EClaw/commit/1c4e1b413ea7027b4cd4b8ecda981b0d0e12e66b))
* **i18n:** fix 6 trailing-comma syntax errors in 10-locale batch ([#2771](https://github.com/HankHuang0516/EClaw/issues/2771)) ([b27c6ca](https://github.com/HankHuang0516/EClaw/commit/b27c6ca204bf813e406c54ce3a2532a5f1f031b3))
* **kanban:** GET card returns latest 50 comments + comments endpoint exposes total ([#2816](https://github.com/HankHuang0516/EClaw/issues/2816)) ([c4d83f7](https://github.com/HankHuang0516/EClaw/commit/c4d83f777a1cd26aea0936e4316aa35c52822eef))
* **sharechat:** guest verify-email modal + disabled Send for unverified ([#2865](https://github.com/HankHuang0516/EClaw/issues/2865)) ([cb3b061](https://github.com/HankHuang0516/EClaw/commit/cb3b0614e0f6160417d907753e66eceb2d666802))
* **uiux:** harden chat previews and roster preview ([#2769](https://github.com/HankHuang0516/EClaw/issues/2769)) ([466d4d3](https://github.com/HankHuang0516/EClaw/commit/466d4d3ef81c628d3f58db64323946053d7bf61c))
* **mention-parser:** ignore @-mentions inside markdown code spans ([#2645](https://github.com/HankHuang0516/EClaw/issues/2645)) ([8da19d4](https://github.com/HankHuang0516/EClaw/commit/8da19d4a79ceb4152bf2144ee0847c61ce3e1def)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **kanban:** lazy-load dependency chips via IntersectionObserver ([#2632](https://github.com/HankHuang0516/EClaw/issues/2632)) ([20586b4](https://github.com/HankHuang0516/EClaw/commit/20586b43357335f9eb6a190c02d58c8e36b58aba)), closes [#2631](https://github.com/HankHuang0516/EClaw/issues/2631)
* **kanban:** make card sorting deterministic ([#2756](https://github.com/HankHuang0516/EClaw/issues/2756)) ([48e2117](https://github.com/HankHuang0516/EClaw/commit/48e2117b64e37f05dc635e0a3b67bfd43cbe48f5))
* **portal/nagoya-trip:** map-link invisible on dark hero/day-banner ([#2897](https://github.com/HankHuang0516/EClaw/issues/2897)) ([cc33df6](https://github.com/HankHuang0516/EClaw/commit/cc33df686673455c20beaee60871412a5d486e66)), closes [#1f4030](https://github.com/HankHuang0516/EClaw/issues/1f4030) [#8b8579](https://github.com/HankHuang0516/EClaw/issues/8b8579) [#6e6859](https://github.com/HankHuang0516/EClaw/issues/6e6859) [#7a5614](https://github.com/HankHuang0516/EClaw/issues/7a5614)
* **org-chart:** notify affected bots on hierarchy change ([#2812](https://github.com/HankHuang0516/EClaw/issues/2812)) ([55675fd](https://github.com/HankHuang0516/EClaw/commit/55675fdf4487494d729a29524b32bd81b756a00c)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** notify reviewer on manual /move → review ([#2753](https://github.com/HankHuang0516/EClaw/issues/2753)) ([6cbbb4e](https://github.com/HankHuang0516/EClaw/commit/6cbbb4ee8c0d4d8ad54df2e9b5faaa3699bd530f))
* **wallpaper:** off-load spritesheet fetch to IO so per-petdx sprites actually render ([#2618](https://github.com/HankHuang0516/EClaw/issues/2618)) ([61b832c](https://github.com/HankHuang0516/EClaw/commit/61b832c9fa8a1d0caab810ccc942d85c63349267)), closes [#2615](https://github.com/HankHuang0516/EClaw/issues/2615) [#2577](https://github.com/HankHuang0516/EClaw/issues/2577)
* **security:** patch P0 sanitize-html XSS + P1 protobufjs + exam.html XSS ([#2829](https://github.com/HankHuang0516/EClaw/issues/2829)) ([c71b871](https://github.com/HankHuang0516/EClaw/commit/c71b871a045887375dd0d26d1a3280a0891a89ad))
* **security:** patch ws uninitialized memory disclosure (GHSA-58qx-3vcg-4xpx) ([#2872](https://github.com/HankHuang0516/EClaw/issues/2872)) ([2523d15](https://github.com/HankHuang0516/EClaw/commit/2523d154bbe501a7cc086340f7a07ece3abfa69b))
* **portal:** petdx-browser cookie-session fallback for device-login ([#2757](https://github.com/HankHuang0516/EClaw/issues/2757)) ([ca275f4](https://github.com/HankHuang0516/EClaw/commit/ca275f4519835da0c7ad71c588908a18f6f138d8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **api:** platform-stats 500 + entity/lookup publicCode alias ([#2809](https://github.com/HankHuang0516/EClaw/issues/2809), [#2810](https://github.com/HankHuang0516/EClaw/issues/2810)) ([#2818](https://github.com/HankHuang0516/EClaw/issues/2818)) ([f99fd17](https://github.com/HankHuang0516/EClaw/commit/f99fd17b2b1c32d88daa2510ff66d714c1a53edc))
* **i18n:** positional format specifiers for feedback_result_logs (7 locales) ([#2597](https://github.com/HankHuang0516/EClaw/issues/2597)) ([21aedc7](https://github.com/HankHuang0516/EClaw/commit/21aedc7eebc7a2839e340136f38dfdfd4dabb9dc))
* **avatar-petdx:** preserve descriptor across transient API failures (flicker) ([#2625](https://github.com/HankHuang0516/EClaw/issues/2625)) ([7b1c606](https://github.com/HankHuang0516/EClaw/commit/7b1c606514f7698d72ec95cf6c556e4043966186))
* **chat:** preserve scroll anchor while reading history ([#2693](https://github.com/HankHuang0516/EClaw/issues/2693)) ([945fdb7](https://github.com/HankHuang0516/EClaw/commit/945fdb7192b791b31882e1e75568dd8b11e4686f))
* **promo:** pull video embed from /promo-chat-avatar.html ([#2724](https://github.com/HankHuang0516/EClaw/issues/2724)) ([2afabc8](https://github.com/HankHuang0516/EClaw/commit/2afabc8c5ff8b25218a7cb857e8adfa572c8e9d5))
* **dashboard:** read live.rate_limits.{five_hour,seven_day}.used_percentage ([#2895](https://github.com/HankHuang0516/EClaw/issues/2895)) ([8223303](https://github.com/HankHuang0516/EClaw/commit/822330312bccb1c76675ad2c3b26e78d10dd1298))
* **kanban:** realign stale recurring schedules ([#2785](https://github.com/HankHuang0516/EClaw/issues/2785)) ([ab8ee25](https://github.com/HankHuang0516/EClaw/commit/ab8ee250a9b37f3d3e838bb01d8866c8d2b78231))
* **portal:** reduce QA-discovered request fanout ([#2656](https://github.com/HankHuang0516/EClaw/issues/2656)) ([1e46d6b](https://github.com/HankHuang0516/EClaw/commit/1e46d6bab61e58c65b452b6503d953f8dddeee75))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **portal:** remove org chart fit scale floor ([#2676](https://github.com/HankHuang0516/EClaw/issues/2676)) ([0f01606](https://github.com/HankHuang0516/EClaw/commit/0f016068b963bb5f800a02f28817c7174979d913))
* **rental:** remove phantom 'webhook test push' step from BIND_COMPLETE ([#2864](https://github.com/HankHuang0516/EClaw/issues/2864)) ([47f4a3e](https://github.com/HankHuang0516/EClaw/commit/47f4a3edf76aa95ebd06d8713cd44fda6eef9b5d))
* **i18n:** rename mm_empty_title → mm_state_empty_title in mindmap.html ([#2683](https://github.com/HankHuang0516/EClaw/issues/2683)) ([c79c109](https://github.com/HankHuang0516/EClaw/commit/c79c109bea23142e8a6d9ace976d105af1280ec9))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **chat:** render mention avatars with companion renderer ([#2633](https://github.com/HankHuang0516/EClaw/issues/2633)) ([03e205f](https://github.com/HankHuang0516/EClaw/commit/03e205f663ecd2c2f443d4009dd5af0093f0bbbb))
* **kanban:** reserve mobile comments panel height ([#2782](https://github.com/HankHuang0516/EClaw/issues/2782)) ([ce8662d](https://github.com/HankHuang0516/EClaw/commit/ce8662d362422fdd25037f1deb61dbed9425e2f9))
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* scheduled audit 2026-05-13 — 6 bugs, XSS, i18n ([#2668](https://github.com/HankHuang0516/EClaw/issues/2668)) ([21dd513](https://github.com/HankHuang0516/EClaw/commit/21dd513b4464738de29164265437435ba6cc4817)), closes [#2605](https://github.com/HankHuang0516/EClaw/issues/2605) [#2608](https://github.com/HankHuang0516/EClaw/issues/2608) [#2600](https://github.com/HankHuang0516/EClaw/issues/2600) [#2599](https://github.com/HankHuang0516/EClaw/issues/2599) [#2598](https://github.com/HankHuang0516/EClaw/issues/2598)
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **dashboard:** show Claude weekly bar reset countdown ([#2896](https://github.com/HankHuang0516/EClaw/issues/2896)) ([3b87845](https://github.com/HankHuang0516/EClaw/commit/3b87845d713e980fec69f6b8007549338a326713)), closes [#2895](https://github.com/HankHuang0516/EClaw/issues/2895)
* **chat:** smart-chip preview falls back to inline c.comments when /comments fails (PR [#2677](https://github.com/HankHuang0516/EClaw/issues/2677)) ([7f4dffd](https://github.com/HankHuang0516/EClaw/commit/7f4dffd2c83ea86f296b8fa0610f0e67c9f1af11))
* **kanban:** stabilize comment detail viewport ([#2796](https://github.com/HankHuang0516/EClaw/issues/2796)) ([0a10aad](https://github.com/HankHuang0516/EClaw/commit/0a10aadb5a5b12ff23454c16d5c88183b94ad7d7))
* **wallpaper:** stop Android live wallpaper flashing default lobster on companion change ([#2629](https://github.com/HankHuang0516/EClaw/issues/2629)) ([8b4f66f](https://github.com/HankHuang0516/EClaw/commit/8b4f66fcb335bf43128f924b761b6337c817095b)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **chat:** stop chat.html bouncing to dashboard via /api/rental/health-status 401 race ([#2833](https://github.com/HankHuang0516/EClaw/issues/2833)) ([c422406](https://github.com/HankHuang0516/EClaw/commit/c4224067cdcfe7f3e22ab95007c7563dac4196ac))
* **openclaw-channel:** support OpenClaw 2026.5.20 ([8045de6](https://github.com/HankHuang0516/EClaw/commit/8045de6bebecfc05f9bd57453b99c098ca35681b))
* **mentions:** support same-device CJK display-name tags ([#2874](https://github.com/HankHuang0516/EClaw/issues/2874)) ([b8f61be](https://github.com/HankHuang0516/EClaw/commit/b8f61be9a3962fef75dd32ea34e8900880dafaf9))
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **dashboard:** use sessions[].project for widget Projects list (was .project_id) ([#2894](https://github.com/HankHuang0516/EClaw/issues/2894)) ([0fd1334](https://github.com/HankHuang0516/EClaw/commit/0fd1334897d4a603cc6eb74f34b48606547e09cf))
* **app:** WebView pages honor app-selected locale via ?lang= URL param ([#2672](https://github.com/HankHuang0516/EClaw/issues/2672)) ([8ed8757](https://github.com/HankHuang0516/EClaw/commit/8ed8757aec5bf214e837cc0d81bf2b23f1993a91)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **share-chat:** wire rich CTA actions to msgInput ([#2867](https://github.com/HankHuang0516/EClaw/issues/2867)) ([df23b11](https://github.com/HankHuang0516/EClaw/commit/df23b1147d34c59a644a145bbd87c18b96400acc))


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* **usage-api:** /api/usage/{snapshot,timeline} + usage_snapshots table (Plan B Phase 1) ([#2889](https://github.com/HankHuang0516/EClaw/issues/2889)) ([a0d859c](https://github.com/HankHuang0516/EClaw/commit/a0d859c63f0220909dadb2b1952174861ccdce14))
* **community:** 1-click chat button on bot cards + utm tagging ([#2610](https://github.com/HankHuang0516/EClaw/issues/2610)) ([eee97b0](https://github.com/HankHuang0516/EClaw/commit/eee97b0e2e4e74945ec24f218a69a52800b97a66))
* **chat:** accept ?messageId= as deep-link alias ([#2838](https://github.com/HankHuang0516/EClaw/issues/2838)) ([1785a87](https://github.com/HankHuang0516/EClaw/commit/1785a87310426637fd10df83754fb9924c45207f))
* **chat:** add avatar size preference ([#2714](https://github.com/HankHuang0516/EClaw/issues/2714)) ([6fe164a](https://github.com/HankHuang0516/EClaw/commit/6fe164ad8b22fa576d2dd9ad37c0d9fc295b5a83))
* **dashboard:** add Claude and Codex channel guides ([#2640](https://github.com/HankHuang0516/EClaw/issues/2640)) ([c64e4c4](https://github.com/HankHuang0516/EClaw/commit/c64e4c4afc78db58c5cd578f00486dd7b2fd3311))
* **dashboard:** add Claude Code channel guide card ([#2667](https://github.com/HankHuang0516/EClaw/issues/2667)) ([d70d75c](https://github.com/HankHuang0516/EClaw/commit/d70d75c0c8caa8a540358a9aab4556b8c1927a5c))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* **kanban:** add device-scoped card tags ([#2773](https://github.com/HankHuang0516/EClaw/issues/2773)) ([53a387e](https://github.com/HankHuang0516/EClaw/commit/53a387e67ba7bb4f6bed1c427000c4ae8666577a))
* **portal:** add entity selector to petdx-browser ([#2602](https://github.com/HankHuang0516/EClaw/issues/2602)) ([3fa067e](https://github.com/HankHuang0516/EClaw/commit/3fa067e00b38829b48a37cecd33ee81a9a1122d9))
* **kanban:** add explicit card links ([#2721](https://github.com/HankHuang0516/EClaw/issues/2721)) ([ef9f812](https://github.com/HankHuang0516/EClaw/commit/ef9f812a3fcf39efd07fd158ce90951bdd045ac7))
* **kanban:** add explicit done-card reopen flow ([#2801](https://github.com/HankHuang0516/EClaw/issues/2801)) ([5080aac](https://github.com/HankHuang0516/EClaw/commit/5080aacb75047c0deaa379ee708ec85465afd57c))
* **mindmap:** add GET /api/mindmap/graph force-graph projection ([#2680](https://github.com/HankHuang0516/EClaw/issues/2680)) ([a00b2e7](https://github.com/HankHuang0516/EClaw/commit/a00b2e775af2c4c98cd157f760ad87aeeee469f0)), closes [#2679](https://github.com/HankHuang0516/EClaw/issues/2679) [#2679](https://github.com/HankHuang0516/EClaw/issues/2679)
* **dashboard:** add Hermes channel promo card ([#2708](https://github.com/HankHuang0516/EClaw/issues/2708)) ([337aca1](https://github.com/HankHuang0516/EClaw/commit/337aca153d5a1cd7e888c065f00ae54db7872d91))
* **rental:** add listing soft pause ([#2781](https://github.com/HankHuang0516/EClaw/issues/2781)) ([6586b72](https://github.com/HankHuang0516/EClaw/commit/6586b72717ddb1637d91cd3242c8d2ff554f62b4))
* **portal:** add Nagoya 5D4N trip static cross-ref page ([#2689](https://github.com/HankHuang0516/EClaw/issues/2689)) ([2e0efb6](https://github.com/HankHuang0516/EClaw/commit/2e0efb6dcdaff52226cc8854a96747000b12bdff))
* **portal:** add Nagoya trip map links and image lightbox ([#2821](https://github.com/HankHuang0516/EClaw/issues/2821)) ([3e40955](https://github.com/HankHuang0516/EClaw/commit/3e40955650a05f45a6b9f7e39e73847705424a03))
* **portal/nagoya:** add parking shortcut buttons next to itinerary places ([#2826](https://github.com/HankHuang0516/EClaw/issues/2826)) ([63968c5](https://github.com/HankHuang0516/EClaw/commit/63968c554d046afc8d978de74e3aacbf7700500d))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **settings:** add rental roster management preview ([#2758](https://github.com/HankHuang0516/EClaw/issues/2758)) ([9706e59](https://github.com/HankHuang0516/EClaw/commit/9706e59ded140a90a6e02348124282bc69d89001))
* **rental:** add renter health chat indicator ([#2690](https://github.com/HankHuang0516/EClaw/issues/2690)) ([36cd2e9](https://github.com/HankHuang0516/EClaw/commit/36cd2e9802be4c7ebb03d3024617fa74aca48ffd))
* **ios:** add Tutorial & Intro entry in Settings ([#2800](https://github.com/HankHuang0516/EClaw/issues/2800)) ([ed83e51](https://github.com/HankHuang0516/EClaw/commit/ed83e51d043bf4cd5865f38dc95a91ed54820d6c))
* **landing:** add Watch Full Demo CTA below hero video ([#2799](https://github.com/HankHuang0516/EClaw/issues/2799)) ([66107c9](https://github.com/HankHuang0516/EClaw/commit/66107c954727551fd34d989a4674daaad9b63968))
* **footer:** add Watch Intro Video link in Info column ([#2798](https://github.com/HankHuang0516/EClaw/issues/2798)) ([d7c6d59](https://github.com/HankHuang0516/EClaw/commit/d7c6d596b69c6a5b257bf1f7a792a407ef9712ad))
* **i18n:** ar iter-2 — fill 623 missing keys against en source ([#2847](https://github.com/HankHuang0516/EClaw/issues/2847)) ([ee94a7a](https://github.com/HankHuang0516/EClaw/commit/ee94a7ae6812b5163efe4284ee4907ca32302f5c))
* **kanban:** backlog launch-gate flag to suppress L1/L2/L3 escalation ([#2855](https://github.com/HankHuang0516/EClaw/issues/2855)) ([cb8bf1b](https://github.com/HankHuang0516/EClaw/commit/cb8bf1bb6421f25214f65e129a8cadccc49cc266)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#4](https://github.com/HankHuang0516/EClaw/issues/4) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **companion:** bridge crafter-station/petdex gallery (1784 pets) ([#2601](https://github.com/HankHuang0516/EClaw/issues/2601)) ([2e245be](https://github.com/HankHuang0516/EClaw/commit/2e245bea6dd47ea7361b927d389188a3c23b6bb3))
* **promo:** chat avatar size feature landing page (self-hosted MP4) ([#2722](https://github.com/HankHuang0516/EClaw/issues/2722)) ([3852210](https://github.com/HankHuang0516/EClaw/commit/3852210d355704d018e3daca6b5f9512a011b210)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **kanban:** cron-spawn jitter + lane backpressure to prevent same-tick wedge ([#2791](https://github.com/HankHuang0516/EClaw/issues/2791)) ([9f414a7](https://github.com/HankHuang0516/EClaw/commit/9f414a731d6393672a0a4189c7b408c529ae5e12)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **portal:** dashboard usage widget — Claude/Codex 5h gauges + 24h chart (Plan B Phase 3) ([#2891](https://github.com/HankHuang0516/EClaw/issues/2891)) ([d18f373](https://github.com/HankHuang0516/EClaw/commit/d18f373857e4bd302437d6bda2a1e01871fbb1db))
* **portal:** dashboard usage widget v2 — Session/Weekly % bars + projects, no cost (Plan B Phase 3.1) ([#2893](https://github.com/HankHuang0516/EClaw/issues/2893)) ([4bc0dc7](https://github.com/HankHuang0516/EClaw/commit/4bc0dc744ed9d54dfd532ebac4b705c7f84ec0a6))
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **promo:** embed daily eclaw video 2026-05-14 ([#2786](https://github.com/HankHuang0516/EClaw/issues/2786)) ([718a814](https://github.com/HankHuang0516/EClaw/commit/718a814ab16850bc2b33a1b303841e2c4378ecfa)), closes [#2782](https://github.com/HankHuang0516/EClaw/issues/2782) [#2693](https://github.com/HankHuang0516/EClaw/issues/2693)
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **info:** embed promo video at top of Quick Start tab ([#2797](https://github.com/HankHuang0516/EClaw/issues/2797)) ([047679f](https://github.com/HankHuang0516/EClaw/commit/047679fd57ab9949eaeacea414d5611e71afe041))
* **rental:** enforce strict rebind refunds ([#2703](https://github.com/HankHuang0516/EClaw/issues/2703)) ([a1859c5](https://github.com/HankHuang0516/EClaw/commit/a1859c50e6fb3991d7a8051491502d824a14a116))
* **portal:** group task chip actions ([#2825](https://github.com/HankHuang0516/EClaw/issues/2825)) ([5db5c59](https://github.com/HankHuang0516/EClaw/commit/5db5c59b32b8635f1412205faf0c2f9164d3d5d4))
* **portal:** info-guide-rules + info-guide-soul slide pair ([#2793](https://github.com/HankHuang0516/EClaw/issues/2793)) ([1c8bddc](https://github.com/HankHuang0516/EClaw/commit/1c8bddc4c185054b2b60088498e3d45509117127)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **chat:** link card previews to kanban ([#2754](https://github.com/HankHuang0516/EClaw/issues/2754)) ([2261240](https://github.com/HankHuang0516/EClaw/commit/22612402c2e95efb07246629e81a849be41ee9c7))
* **mission:** link notes to kanban cards ([#2723](https://github.com/HankHuang0516/EClaw/issues/2723)) ([b36dc18](https://github.com/HankHuang0516/EClaw/commit/b36dc18f3a8facf12e0b6046351c222f1e99dc55))
* **usage-daemon:** macOS launchd daemon polls Claude/Codex usage → POST /api/usage/snapshot (Plan B Phase 2) ([#2890](https://github.com/HankHuang0516/EClaw/issues/2890)) ([fd225e1](https://github.com/HankHuang0516/EClaw/commit/fd225e12d9491037be1a340bd63b54b5f3308c7f))
* **mindmap:** mission.html link to /portal/mindmap.html + deprecate /api/mission/mindmap ([#2685](https://github.com/HankHuang0516/EClaw/issues/2685)) ([11e297b](https://github.com/HankHuang0516/EClaw/commit/11e297bab1c9b56fcde3027d6500b7c58891bf18)), closes [#2680](https://github.com/HankHuang0516/EClaw/issues/2680) [#2684](https://github.com/HankHuang0516/EClaw/issues/2684)
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **portal:** nagoya trip interactive map (Leaflet + OSM, no API key) ([#2888](https://github.com/HankHuang0516/EClaw/issues/2888)) ([ecfdac0](https://github.com/HankHuang0516/EClaw/commit/ecfdac06348c12ee7c6872c6c28d5f82162e7aa9))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **settings:** per-entity nudge override UI (Phase 2) ([#2837](https://github.com/HankHuang0516/EClaw/issues/2837)) ([ea7662b](https://github.com/HankHuang0516/EClaw/commit/ea7662b0858882dae461e1387f711895924f9ab8)), closes [3/#4](https://github.com/HankHuang0516/EClaw/issues/4)
* **kanban:** per-entity nudge overrides (Phase 2 of card_e066cb6b) ([#2836](https://github.com/HankHuang0516/EClaw/issues/2836)) ([0425f80](https://github.com/HankHuang0516/EClaw/commit/0425f80bc1169c0d506b665659c8676695c45553))
* **avatar:** petdx render on card-holder my-cards (Phase 1b) ([#2621](https://github.com/HankHuang0516/EClaw/issues/2621)) ([f78ba8b](https://github.com/HankHuang0516/EClaw/commit/f78ba8b18acc426936ab6d8a82ca7541effea00d))
* **avatar:** petdx render on dashboard entity grid / org chart / bindings (Phase 1b) ([#2622](https://github.com/HankHuang0516/EClaw/issues/2622)) ([f417749](https://github.com/HankHuang0516/EClaw/commit/f41774914451048e8cd76e9ae30416a0642e173b)), closes [#2620](https://github.com/HankHuang0516/EClaw/issues/2620) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621)
* **avatar:** petdx render on kanban auto-assign / pulse / comment avatars (Phase 1b) ([#2624](https://github.com/HankHuang0516/EClaw/issues/2624)) ([6bff5f8](https://github.com/HankHuang0516/EClaw/commit/6bff5f80440d0bd91a6b1721cde9478d685c4d46))
* **avatar:** petdx render on mission skill/rule/soul entity dialogs (Phase 1b) ([#2623](https://github.com/HankHuang0516/EClaw/issues/2623)) ([129327b](https://github.com/HankHuang0516/EClaw/commit/129327bc7b91056659f1ab7e8d5e3f5260d951fb))
* **mindmap:** portal/mindmap.html force-graph prototype ([#129](https://github.com/HankHuang0516/EClaw/issues/129)) ([#2681](https://github.com/HankHuang0516/EClaw/issues/2681)) ([0f15e69](https://github.com/HankHuang0516/EClaw/commit/0f15e6930f0697c37fa08f3219edb8f9e499837f)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **portal:** redo nagoya trip page in professional tour-guide style ([#2691](https://github.com/HankHuang0516/EClaw/issues/2691)) ([b2378c0](https://github.com/HankHuang0516/EClaw/commit/b2378c06ee20fa9cccfdceceb1a4c9e0b3072f59))
* **i18n:** remove ms+hi orphan keys from i18n.js ([#2849](https://github.com/HankHuang0516/EClaw/issues/2849)) ([320176c](https://github.com/HankHuang0516/EClaw/commit/320176c06a3cfd8631e2a82ad02a6bd6a9af0389))
* **avatar:** render selected petdx companion in chat avatars ([#2620](https://github.com/HankHuang0516/EClaw/issues/2620)) ([0bdd046](https://github.com/HankHuang0516/EClaw/commit/0bdd046fe1b1c428e32edda366ff112c08927f4c))
* **home:** replace native home with WebView hosting dashboard.html ([#2634](https://github.com/HankHuang0516/EClaw/issues/2634)) ([e69ea81](https://github.com/HankHuang0516/EClaw/commit/e69ea8160c239b083a83d6dc83a4f1c3f901c863))
* **app:** route chat mission jumps through native tabs ([#2824](https://github.com/HankHuang0516/EClaw/issues/2824)) ([deb07b6](https://github.com/HankHuang0516/EClaw/commit/deb07b69a9ecca632fe27278de537f1d85234e94))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **chat:** support message deep links ([#2719](https://github.com/HankHuang0516/EClaw/issues/2719)) ([2dc0f1e](https://github.com/HankHuang0516/EClaw/commit/2dc0f1eeb259e1a0848db4a03186b989372cd91c))
* **mission:** support note deep links ([#2717](https://github.com/HankHuang0516/EClaw/issues/2717)) ([2efd3a5](https://github.com/HankHuang0516/EClaw/commit/2efd3a5e741217a07c0b0ac54a0ddd010e0ebe23))
* **share-chat:** twitter card + per-bot og:image/twitter:* in SSR ([#2609](https://github.com/HankHuang0516/EClaw/issues/2609)) ([6cdc853](https://github.com/HankHuang0516/EClaw/commit/6cdc853dc884cdb95bd47214942768981f218ae0))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))
* **settings:** wire petdx avatar into channel-account chips ([#2626](https://github.com/HankHuang0516/EClaw/issues/2626)) ([88aec77](https://github.com/HankHuang0516/EClaw/commit/88aec772628c240e97b336bb5820892ad632d1ae))
* **files:** wire petdx avatar into entity filter & per-file badges ([#2627](https://github.com/HankHuang0516/EClaw/issues/2627)) ([5b3e5cc](https://github.com/HankHuang0516/EClaw/commit/5b3e5cc542d9da69bb4e92500fd03a542ea33f00))
* **mindmap:** wrap hardcoded zh-TW UI strings with i18n t() ([#2607](https://github.com/HankHuang0516/EClaw/issues/2607)) ([166af87](https://github.com/HankHuang0516/EClaw/commit/166af8772b2121a24aaf34a83b3de970e9b3b571)), closes [#2606](https://github.com/HankHuang0516/EClaw/issues/2606)
* **i18n:** zh-TW backfill 8 keys (soft-pause + chat + invite + wallet) ([#2815](https://github.com/HankHuang0516/EClaw/issues/2815)) ([a2dd574](https://github.com/HankHuang0516/EClaw/commit/a2dd5743ce8d43a4b6ace9a2fd4b52568180d6c5))


### Performance Improvements

* **mindmap:** force-graph hardening for 1000/2000-node graphs ([#2684](https://github.com/HankHuang0516/EClaw/issues/2684)) ([da8b1c8](https://github.com/HankHuang0516/EClaw/commit/da8b1c8f947ab8bc8fa455c1962a91146623a1fc))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-23)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **notifications:** add kanban_done + kanban_done_auto toggles to Android Settings ([#2636](https://github.com/HankHuang0516/EClaw/issues/2636)) ([a710909](https://github.com/HankHuang0516/EClaw/commit/a7109095e3393b8564e7ef1b23d382a4fbb944b8))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **i18n:** ar block — fix 27 broken entries (CJK leaks + truncated HTML) ([#2851](https://github.com/HankHuang0516/EClaw/issues/2851)) ([5b19175](https://github.com/HankHuang0516/EClaw/commit/5b19175d712d00d16fcec00b749035c4beae7a5c))
* **chat:** atomic-load target bar (await contacts before first render) ([#2831](https://github.com/HankHuang0516/EClaw/issues/2831)) ([5f529e6](https://github.com/HankHuang0516/EClaw/commit/5f529e6b772eacc38ba1de69b44258a05f0d816a)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2](https://github.com/HankHuang0516/EClaw/issues/2)
* **channel:** await binding persistence ([712516d](https://github.com/HankHuang0516/EClaw/commit/712516decafb745035bd1434a28cc1973d433e19))
* **rental:** bump handshake timeout to 60s + timeout-aware discovery fallback ([#2863](https://github.com/HankHuang0516/EClaw/issues/2863)) ([fd4322f](https://github.com/HankHuang0516/EClaw/commit/fd4322f8890f3c2dfca3acdae6a4b95f19c381f9)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **i18n:** clear batch 1 residual missing keys ([#2790](https://github.com/HankHuang0516/EClaw/issues/2790)) ([211030e](https://github.com/HankHuang0516/EClaw/commit/211030e0b0b6a865c11f0c4ed60dc4e356d43b7a))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **kanban:** comment input no longer overlaps last comment in card detail (PR [#2678](https://github.com/HankHuang0516/EClaw/issues/2678)) ([fba91fc](https://github.com/HankHuang0516/EClaw/commit/fba91fca15402b453a0db5ee857c0b16e6087055))
* **chat:** compact 20px avatar in target bar (App WebView only shows [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2](https://github.com/HankHuang0516/EClaw/issues/2)) ([#2830](https://github.com/HankHuang0516/EClaw/issues/2830)) ([42c7543](https://github.com/HankHuang0516/EClaw/commit/42c7543b4a78a7abf3f5f7535eb9bc6142cd0fe2)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **portal:** complete 401 redirect sweep + mobile UIUX truncation ([#2842](https://github.com/HankHuang0516/EClaw/issues/2842)) ([f9799ba](https://github.com/HankHuang0516/EClaw/commit/f9799ba42498b109f0a8a70e80836aa6da51e216)), closes [#2833](https://github.com/HankHuang0516/EClaw/issues/2833) [#2845](https://github.com/HankHuang0516/EClaw/issues/2845) [#2844](https://github.com/HankHuang0516/EClaw/issues/2844) [#2843](https://github.com/HankHuang0516/EClaw/issues/2843)
* **uiux:** continue qa mobile readability sweep ([#2854](https://github.com/HankHuang0516/EClaw/issues/2854)) ([57606ff](https://github.com/HankHuang0516/EClaw/commit/57606ffe3e543b07a026aacc53c4b470c9a7825b))
* **i18n:** cover dynamic portal wrapper keys ([#2807](https://github.com/HankHuang0516/EClaw/issues/2807)) ([4c711cc](https://github.com/HankHuang0516/EClaw/commit/4c711cc4009300ffe4e8933a98ee01cd0fdd6aeb))
* **i18n:** dedup 20 dash_channel_card_* keys in es block ([#2876](https://github.com/HankHuang0516/EClaw/issues/2876)) ([807284c](https://github.com/HankHuang0516/EClaw/commit/807284ce363ef119ccdb0ae40e5ce99d3f0a27e0))
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **rental:** don't pollute entity.message on push gateway timeout ([#2860](https://github.com/HankHuang0516/EClaw/issues/2860)) ([592ba44](https://github.com/HankHuang0516/EClaw/commit/592ba44f57536ee00011b6cbddaa6b129a7cbae9))
* **petdx:** drop dark-grey loading placeholder + preload sprite WEBP ([#2628](https://github.com/HankHuang0516/EClaw/issues/2628)) ([59cef38](https://github.com/HankHuang0516/EClaw/commit/59cef387bd69ca99d7d15c86a1364856d3849ad8)), closes [#1a1a1a](https://github.com/HankHuang0516/EClaw/issues/1a1a1a)
* **gateway-ws:** drop Origin header on server-to-server WS upgrade ([#2869](https://github.com/HankHuang0516/EClaw/issues/2869)) ([716dcf9](https://github.com/HankHuang0516/EClaw/commit/716dcf9d0834b17522bb9d894bad84bc142d1a19))
* **setup-scripts:** drop Origin header on server-to-server WS upgrade ([#2875](https://github.com/HankHuang0516/EClaw/issues/2875)) ([9d893b8](https://github.com/HankHuang0516/EClaw/commit/9d893b8e5eea4db275e450bf423903c156cd3e4b)), closes [#2869](https://github.com/HankHuang0516/EClaw/issues/2869)
* **security:** escape innerHTML in chat modal error messages ([#2819](https://github.com/HankHuang0516/EClaw/issues/2819)) ([dce07ad](https://github.com/HankHuang0516/EClaw/commit/dce07adde64795916dba977ae23e46f3371ce7ed)), closes [#2809](https://github.com/HankHuang0516/EClaw/issues/2809) [#2810](https://github.com/HankHuang0516/EClaw/issues/2810) [#2809](https://github.com/HankHuang0516/EClaw/issues/2809) [#2810](https://github.com/HankHuang0516/EClaw/issues/2810)
* **entities:** expose botSecret to owner so wallpaper service can poll companions ([#2615](https://github.com/HankHuang0516/EClaw/issues/2615)) ([04470fc](https://github.com/HankHuang0516/EClaw/commit/04470fce8f8c3fce2b1ba8b243e776606f107502))
* **rental:** expose owner_public_code in marketplace so plaza CTA can route ([#2616](https://github.com/HankHuang0516/EClaw/issues/2616)) ([4d1372f](https://github.com/HankHuang0516/EClaw/commit/4d1372f717d93cab65543e87c852e74e9fb67071)), closes [#2610](https://github.com/HankHuang0516/EClaw/issues/2610)
* **mindmap:** fallback to device scope when entityId is null ([#2728](https://github.com/HankHuang0516/EClaw/issues/2728)) ([7572312](https://github.com/HankHuang0516/EClaw/commit/7572312433d3d75fc245eda48a28919ce14bd927))
* **i18n:** fill Spanish drift keys ([#2751](https://github.com/HankHuang0516/EClaw/issues/2751)) ([0ad0ee5](https://github.com/HankHuang0516/EClaw/commit/0ad0ee55f7fac3e6ac46d891539950dab4d553cc))
* **portal:** fit embedded org chart to mobile viewport ([#2674](https://github.com/HankHuang0516/EClaw/issues/2674)) ([1c4e1b4](https://github.com/HankHuang0516/EClaw/commit/1c4e1b413ea7027b4cd4b8ecda981b0d0e12e66b))
* **i18n:** fix 6 trailing-comma syntax errors in 10-locale batch ([#2771](https://github.com/HankHuang0516/EClaw/issues/2771)) ([b27c6ca](https://github.com/HankHuang0516/EClaw/commit/b27c6ca204bf813e406c54ce3a2532a5f1f031b3))
* **kanban:** GET card returns latest 50 comments + comments endpoint exposes total ([#2816](https://github.com/HankHuang0516/EClaw/issues/2816)) ([c4d83f7](https://github.com/HankHuang0516/EClaw/commit/c4d83f777a1cd26aea0936e4316aa35c52822eef))
* **sharechat:** guest verify-email modal + disabled Send for unverified ([#2865](https://github.com/HankHuang0516/EClaw/issues/2865)) ([cb3b061](https://github.com/HankHuang0516/EClaw/commit/cb3b0614e0f6160417d907753e66eceb2d666802))
* **uiux:** harden chat previews and roster preview ([#2769](https://github.com/HankHuang0516/EClaw/issues/2769)) ([466d4d3](https://github.com/HankHuang0516/EClaw/commit/466d4d3ef81c628d3f58db64323946053d7bf61c))
* **mention-parser:** ignore @-mentions inside markdown code spans ([#2645](https://github.com/HankHuang0516/EClaw/issues/2645)) ([8da19d4](https://github.com/HankHuang0516/EClaw/commit/8da19d4a79ceb4152bf2144ee0847c61ce3e1def)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **kanban:** lazy-load dependency chips via IntersectionObserver ([#2632](https://github.com/HankHuang0516/EClaw/issues/2632)) ([20586b4](https://github.com/HankHuang0516/EClaw/commit/20586b43357335f9eb6a190c02d58c8e36b58aba)), closes [#2631](https://github.com/HankHuang0516/EClaw/issues/2631)
* **kanban:** make card sorting deterministic ([#2756](https://github.com/HankHuang0516/EClaw/issues/2756)) ([48e2117](https://github.com/HankHuang0516/EClaw/commit/48e2117b64e37f05dc635e0a3b67bfd43cbe48f5))
* **portal/nagoya-trip:** map-link invisible on dark hero/day-banner ([#2897](https://github.com/HankHuang0516/EClaw/issues/2897)) ([cc33df6](https://github.com/HankHuang0516/EClaw/commit/cc33df686673455c20beaee60871412a5d486e66)), closes [#1f4030](https://github.com/HankHuang0516/EClaw/issues/1f4030) [#8b8579](https://github.com/HankHuang0516/EClaw/issues/8b8579) [#6e6859](https://github.com/HankHuang0516/EClaw/issues/6e6859) [#7a5614](https://github.com/HankHuang0516/EClaw/issues/7a5614)
* **org-chart:** notify affected bots on hierarchy change ([#2812](https://github.com/HankHuang0516/EClaw/issues/2812)) ([55675fd](https://github.com/HankHuang0516/EClaw/commit/55675fdf4487494d729a29524b32bd81b756a00c)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** notify reviewer on manual /move → review ([#2753](https://github.com/HankHuang0516/EClaw/issues/2753)) ([6cbbb4e](https://github.com/HankHuang0516/EClaw/commit/6cbbb4ee8c0d4d8ad54df2e9b5faaa3699bd530f))
* **wallpaper:** off-load spritesheet fetch to IO so per-petdx sprites actually render ([#2618](https://github.com/HankHuang0516/EClaw/issues/2618)) ([61b832c](https://github.com/HankHuang0516/EClaw/commit/61b832c9fa8a1d0caab810ccc942d85c63349267)), closes [#2615](https://github.com/HankHuang0516/EClaw/issues/2615) [#2577](https://github.com/HankHuang0516/EClaw/issues/2577)
* **security:** patch P0 sanitize-html XSS + P1 protobufjs + exam.html XSS ([#2829](https://github.com/HankHuang0516/EClaw/issues/2829)) ([c71b871](https://github.com/HankHuang0516/EClaw/commit/c71b871a045887375dd0d26d1a3280a0891a89ad))
* **security:** patch ws uninitialized memory disclosure (GHSA-58qx-3vcg-4xpx) ([#2872](https://github.com/HankHuang0516/EClaw/issues/2872)) ([2523d15](https://github.com/HankHuang0516/EClaw/commit/2523d154bbe501a7cc086340f7a07ece3abfa69b))
* **portal:** petdx-browser cookie-session fallback for device-login ([#2757](https://github.com/HankHuang0516/EClaw/issues/2757)) ([ca275f4](https://github.com/HankHuang0516/EClaw/commit/ca275f4519835da0c7ad71c588908a18f6f138d8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **api:** platform-stats 500 + entity/lookup publicCode alias ([#2809](https://github.com/HankHuang0516/EClaw/issues/2809), [#2810](https://github.com/HankHuang0516/EClaw/issues/2810)) ([#2818](https://github.com/HankHuang0516/EClaw/issues/2818)) ([f99fd17](https://github.com/HankHuang0516/EClaw/commit/f99fd17b2b1c32d88daa2510ff66d714c1a53edc))
* **i18n:** positional format specifiers for feedback_result_logs (7 locales) ([#2597](https://github.com/HankHuang0516/EClaw/issues/2597)) ([21aedc7](https://github.com/HankHuang0516/EClaw/commit/21aedc7eebc7a2839e340136f38dfdfd4dabb9dc))
* **avatar-petdx:** preserve descriptor across transient API failures (flicker) ([#2625](https://github.com/HankHuang0516/EClaw/issues/2625)) ([7b1c606](https://github.com/HankHuang0516/EClaw/commit/7b1c606514f7698d72ec95cf6c556e4043966186))
* **chat:** preserve scroll anchor while reading history ([#2693](https://github.com/HankHuang0516/EClaw/issues/2693)) ([945fdb7](https://github.com/HankHuang0516/EClaw/commit/945fdb7192b791b31882e1e75568dd8b11e4686f))
* **promo:** pull video embed from /promo-chat-avatar.html ([#2724](https://github.com/HankHuang0516/EClaw/issues/2724)) ([2afabc8](https://github.com/HankHuang0516/EClaw/commit/2afabc8c5ff8b25218a7cb857e8adfa572c8e9d5))
* **dashboard:** read live.rate_limits.{five_hour,seven_day}.used_percentage ([#2895](https://github.com/HankHuang0516/EClaw/issues/2895)) ([8223303](https://github.com/HankHuang0516/EClaw/commit/822330312bccb1c76675ad2c3b26e78d10dd1298))
* **kanban:** realign stale recurring schedules ([#2785](https://github.com/HankHuang0516/EClaw/issues/2785)) ([ab8ee25](https://github.com/HankHuang0516/EClaw/commit/ab8ee250a9b37f3d3e838bb01d8866c8d2b78231))
* **portal:** reduce QA-discovered request fanout ([#2656](https://github.com/HankHuang0516/EClaw/issues/2656)) ([1e46d6b](https://github.com/HankHuang0516/EClaw/commit/1e46d6bab61e58c65b452b6503d953f8dddeee75))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **portal:** remove org chart fit scale floor ([#2676](https://github.com/HankHuang0516/EClaw/issues/2676)) ([0f01606](https://github.com/HankHuang0516/EClaw/commit/0f016068b963bb5f800a02f28817c7174979d913))
* **rental:** remove phantom 'webhook test push' step from BIND_COMPLETE ([#2864](https://github.com/HankHuang0516/EClaw/issues/2864)) ([47f4a3e](https://github.com/HankHuang0516/EClaw/commit/47f4a3edf76aa95ebd06d8713cd44fda6eef9b5d))
* **i18n:** rename mm_empty_title → mm_state_empty_title in mindmap.html ([#2683](https://github.com/HankHuang0516/EClaw/issues/2683)) ([c79c109](https://github.com/HankHuang0516/EClaw/commit/c79c109bea23142e8a6d9ace976d105af1280ec9))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **chat:** render mention avatars with companion renderer ([#2633](https://github.com/HankHuang0516/EClaw/issues/2633)) ([03e205f](https://github.com/HankHuang0516/EClaw/commit/03e205f663ecd2c2f443d4009dd5af0093f0bbbb))
* **kanban:** reserve mobile comments panel height ([#2782](https://github.com/HankHuang0516/EClaw/issues/2782)) ([ce8662d](https://github.com/HankHuang0516/EClaw/commit/ce8662d362422fdd25037f1deb61dbed9425e2f9))
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* scheduled audit 2026-05-13 — 6 bugs, XSS, i18n ([#2668](https://github.com/HankHuang0516/EClaw/issues/2668)) ([21dd513](https://github.com/HankHuang0516/EClaw/commit/21dd513b4464738de29164265437435ba6cc4817)), closes [#2605](https://github.com/HankHuang0516/EClaw/issues/2605) [#2608](https://github.com/HankHuang0516/EClaw/issues/2608) [#2600](https://github.com/HankHuang0516/EClaw/issues/2600) [#2599](https://github.com/HankHuang0516/EClaw/issues/2599) [#2598](https://github.com/HankHuang0516/EClaw/issues/2598)
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **dashboard:** show Claude weekly bar reset countdown ([#2896](https://github.com/HankHuang0516/EClaw/issues/2896)) ([3b87845](https://github.com/HankHuang0516/EClaw/commit/3b87845d713e980fec69f6b8007549338a326713)), closes [#2895](https://github.com/HankHuang0516/EClaw/issues/2895)
* **chat:** smart-chip preview falls back to inline c.comments when /comments fails (PR [#2677](https://github.com/HankHuang0516/EClaw/issues/2677)) ([7f4dffd](https://github.com/HankHuang0516/EClaw/commit/7f4dffd2c83ea86f296b8fa0610f0e67c9f1af11))
* **kanban:** stabilize comment detail viewport ([#2796](https://github.com/HankHuang0516/EClaw/issues/2796)) ([0a10aad](https://github.com/HankHuang0516/EClaw/commit/0a10aadb5a5b12ff23454c16d5c88183b94ad7d7))
* **wallpaper:** stop Android live wallpaper flashing default lobster on companion change ([#2629](https://github.com/HankHuang0516/EClaw/issues/2629)) ([8b4f66f](https://github.com/HankHuang0516/EClaw/commit/8b4f66fcb335bf43128f924b761b6337c817095b)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **chat:** stop chat.html bouncing to dashboard via /api/rental/health-status 401 race ([#2833](https://github.com/HankHuang0516/EClaw/issues/2833)) ([c422406](https://github.com/HankHuang0516/EClaw/commit/c4224067cdcfe7f3e22ab95007c7563dac4196ac))
* **openclaw-channel:** support OpenClaw 2026.5.20 ([8045de6](https://github.com/HankHuang0516/EClaw/commit/8045de6bebecfc05f9bd57453b99c098ca35681b))
* **mentions:** support same-device CJK display-name tags ([#2874](https://github.com/HankHuang0516/EClaw/issues/2874)) ([b8f61be](https://github.com/HankHuang0516/EClaw/commit/b8f61be9a3962fef75dd32ea34e8900880dafaf9))
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **dashboard:** use sessions[].project for widget Projects list (was .project_id) ([#2894](https://github.com/HankHuang0516/EClaw/issues/2894)) ([0fd1334](https://github.com/HankHuang0516/EClaw/commit/0fd1334897d4a603cc6eb74f34b48606547e09cf))
* **app:** WebView pages honor app-selected locale via ?lang= URL param ([#2672](https://github.com/HankHuang0516/EClaw/issues/2672)) ([8ed8757](https://github.com/HankHuang0516/EClaw/commit/8ed8757aec5bf214e837cc0d81bf2b23f1993a91)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **share-chat:** wire rich CTA actions to msgInput ([#2867](https://github.com/HankHuang0516/EClaw/issues/2867)) ([df23b11](https://github.com/HankHuang0516/EClaw/commit/df23b1147d34c59a644a145bbd87c18b96400acc))


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* **usage-api:** /api/usage/{snapshot,timeline} + usage_snapshots table (Plan B Phase 1) ([#2889](https://github.com/HankHuang0516/EClaw/issues/2889)) ([a0d859c](https://github.com/HankHuang0516/EClaw/commit/a0d859c63f0220909dadb2b1952174861ccdce14))
* **community:** 1-click chat button on bot cards + utm tagging ([#2610](https://github.com/HankHuang0516/EClaw/issues/2610)) ([eee97b0](https://github.com/HankHuang0516/EClaw/commit/eee97b0e2e4e74945ec24f218a69a52800b97a66))
* **chat:** accept ?messageId= as deep-link alias ([#2838](https://github.com/HankHuang0516/EClaw/issues/2838)) ([1785a87](https://github.com/HankHuang0516/EClaw/commit/1785a87310426637fd10df83754fb9924c45207f))
* **chat:** add avatar size preference ([#2714](https://github.com/HankHuang0516/EClaw/issues/2714)) ([6fe164a](https://github.com/HankHuang0516/EClaw/commit/6fe164ad8b22fa576d2dd9ad37c0d9fc295b5a83))
* **dashboard:** add Claude and Codex channel guides ([#2640](https://github.com/HankHuang0516/EClaw/issues/2640)) ([c64e4c4](https://github.com/HankHuang0516/EClaw/commit/c64e4c4afc78db58c5cd578f00486dd7b2fd3311))
* **dashboard:** add Claude Code channel guide card ([#2667](https://github.com/HankHuang0516/EClaw/issues/2667)) ([d70d75c](https://github.com/HankHuang0516/EClaw/commit/d70d75c0c8caa8a540358a9aab4556b8c1927a5c))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* **kanban:** add device-scoped card tags ([#2773](https://github.com/HankHuang0516/EClaw/issues/2773)) ([53a387e](https://github.com/HankHuang0516/EClaw/commit/53a387e67ba7bb4f6bed1c427000c4ae8666577a))
* **portal:** add entity selector to petdx-browser ([#2602](https://github.com/HankHuang0516/EClaw/issues/2602)) ([3fa067e](https://github.com/HankHuang0516/EClaw/commit/3fa067e00b38829b48a37cecd33ee81a9a1122d9))
* **kanban:** add explicit card links ([#2721](https://github.com/HankHuang0516/EClaw/issues/2721)) ([ef9f812](https://github.com/HankHuang0516/EClaw/commit/ef9f812a3fcf39efd07fd158ce90951bdd045ac7))
* **kanban:** add explicit done-card reopen flow ([#2801](https://github.com/HankHuang0516/EClaw/issues/2801)) ([5080aac](https://github.com/HankHuang0516/EClaw/commit/5080aacb75047c0deaa379ee708ec85465afd57c))
* **mindmap:** add GET /api/mindmap/graph force-graph projection ([#2680](https://github.com/HankHuang0516/EClaw/issues/2680)) ([a00b2e7](https://github.com/HankHuang0516/EClaw/commit/a00b2e775af2c4c98cd157f760ad87aeeee469f0)), closes [#2679](https://github.com/HankHuang0516/EClaw/issues/2679) [#2679](https://github.com/HankHuang0516/EClaw/issues/2679)
* **dashboard:** add Hermes channel promo card ([#2708](https://github.com/HankHuang0516/EClaw/issues/2708)) ([337aca1](https://github.com/HankHuang0516/EClaw/commit/337aca153d5a1cd7e888c065f00ae54db7872d91))
* **rental:** add listing soft pause ([#2781](https://github.com/HankHuang0516/EClaw/issues/2781)) ([6586b72](https://github.com/HankHuang0516/EClaw/commit/6586b72717ddb1637d91cd3242c8d2ff554f62b4))
* **portal:** add Nagoya 5D4N trip static cross-ref page ([#2689](https://github.com/HankHuang0516/EClaw/issues/2689)) ([2e0efb6](https://github.com/HankHuang0516/EClaw/commit/2e0efb6dcdaff52226cc8854a96747000b12bdff))
* **portal:** add Nagoya trip map links and image lightbox ([#2821](https://github.com/HankHuang0516/EClaw/issues/2821)) ([3e40955](https://github.com/HankHuang0516/EClaw/commit/3e40955650a05f45a6b9f7e39e73847705424a03))
* **portal/nagoya:** add parking shortcut buttons next to itinerary places ([#2826](https://github.com/HankHuang0516/EClaw/issues/2826)) ([63968c5](https://github.com/HankHuang0516/EClaw/commit/63968c554d046afc8d978de74e3aacbf7700500d))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **settings:** add rental roster management preview ([#2758](https://github.com/HankHuang0516/EClaw/issues/2758)) ([9706e59](https://github.com/HankHuang0516/EClaw/commit/9706e59ded140a90a6e02348124282bc69d89001))
* **rental:** add renter health chat indicator ([#2690](https://github.com/HankHuang0516/EClaw/issues/2690)) ([36cd2e9](https://github.com/HankHuang0516/EClaw/commit/36cd2e9802be4c7ebb03d3024617fa74aca48ffd))
* **ios:** add Tutorial & Intro entry in Settings ([#2800](https://github.com/HankHuang0516/EClaw/issues/2800)) ([ed83e51](https://github.com/HankHuang0516/EClaw/commit/ed83e51d043bf4cd5865f38dc95a91ed54820d6c))
* **landing:** add Watch Full Demo CTA below hero video ([#2799](https://github.com/HankHuang0516/EClaw/issues/2799)) ([66107c9](https://github.com/HankHuang0516/EClaw/commit/66107c954727551fd34d989a4674daaad9b63968))
* **footer:** add Watch Intro Video link in Info column ([#2798](https://github.com/HankHuang0516/EClaw/issues/2798)) ([d7c6d59](https://github.com/HankHuang0516/EClaw/commit/d7c6d596b69c6a5b257bf1f7a792a407ef9712ad))
* **i18n:** ar iter-2 — fill 623 missing keys against en source ([#2847](https://github.com/HankHuang0516/EClaw/issues/2847)) ([ee94a7a](https://github.com/HankHuang0516/EClaw/commit/ee94a7ae6812b5163efe4284ee4907ca32302f5c))
* **kanban:** backlog launch-gate flag to suppress L1/L2/L3 escalation ([#2855](https://github.com/HankHuang0516/EClaw/issues/2855)) ([cb8bf1b](https://github.com/HankHuang0516/EClaw/commit/cb8bf1bb6421f25214f65e129a8cadccc49cc266)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#4](https://github.com/HankHuang0516/EClaw/issues/4) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **companion:** bridge crafter-station/petdex gallery (1784 pets) ([#2601](https://github.com/HankHuang0516/EClaw/issues/2601)) ([2e245be](https://github.com/HankHuang0516/EClaw/commit/2e245bea6dd47ea7361b927d389188a3c23b6bb3))
* **promo:** chat avatar size feature landing page (self-hosted MP4) ([#2722](https://github.com/HankHuang0516/EClaw/issues/2722)) ([3852210](https://github.com/HankHuang0516/EClaw/commit/3852210d355704d018e3daca6b5f9512a011b210)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **kanban:** cron-spawn jitter + lane backpressure to prevent same-tick wedge ([#2791](https://github.com/HankHuang0516/EClaw/issues/2791)) ([9f414a7](https://github.com/HankHuang0516/EClaw/commit/9f414a731d6393672a0a4189c7b408c529ae5e12)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **portal:** dashboard usage widget — Claude/Codex 5h gauges + 24h chart (Plan B Phase 3) ([#2891](https://github.com/HankHuang0516/EClaw/issues/2891)) ([d18f373](https://github.com/HankHuang0516/EClaw/commit/d18f373857e4bd302437d6bda2a1e01871fbb1db))
* **portal:** dashboard usage widget v2 — Session/Weekly % bars + projects, no cost (Plan B Phase 3.1) ([#2893](https://github.com/HankHuang0516/EClaw/issues/2893)) ([4bc0dc7](https://github.com/HankHuang0516/EClaw/commit/4bc0dc744ed9d54dfd532ebac4b705c7f84ec0a6))
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **promo:** embed daily eclaw video 2026-05-14 ([#2786](https://github.com/HankHuang0516/EClaw/issues/2786)) ([718a814](https://github.com/HankHuang0516/EClaw/commit/718a814ab16850bc2b33a1b303841e2c4378ecfa)), closes [#2782](https://github.com/HankHuang0516/EClaw/issues/2782) [#2693](https://github.com/HankHuang0516/EClaw/issues/2693)
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **info:** embed promo video at top of Quick Start tab ([#2797](https://github.com/HankHuang0516/EClaw/issues/2797)) ([047679f](https://github.com/HankHuang0516/EClaw/commit/047679fd57ab9949eaeacea414d5611e71afe041))
* **rental:** enforce strict rebind refunds ([#2703](https://github.com/HankHuang0516/EClaw/issues/2703)) ([a1859c5](https://github.com/HankHuang0516/EClaw/commit/a1859c50e6fb3991d7a8051491502d824a14a116))
* **portal:** group task chip actions ([#2825](https://github.com/HankHuang0516/EClaw/issues/2825)) ([5db5c59](https://github.com/HankHuang0516/EClaw/commit/5db5c59b32b8635f1412205faf0c2f9164d3d5d4))
* **portal:** info-guide-rules + info-guide-soul slide pair ([#2793](https://github.com/HankHuang0516/EClaw/issues/2793)) ([1c8bddc](https://github.com/HankHuang0516/EClaw/commit/1c8bddc4c185054b2b60088498e3d45509117127)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **chat:** link card previews to kanban ([#2754](https://github.com/HankHuang0516/EClaw/issues/2754)) ([2261240](https://github.com/HankHuang0516/EClaw/commit/22612402c2e95efb07246629e81a849be41ee9c7))
* **mission:** link notes to kanban cards ([#2723](https://github.com/HankHuang0516/EClaw/issues/2723)) ([b36dc18](https://github.com/HankHuang0516/EClaw/commit/b36dc18f3a8facf12e0b6046351c222f1e99dc55))
* **usage-daemon:** macOS launchd daemon polls Claude/Codex usage → POST /api/usage/snapshot (Plan B Phase 2) ([#2890](https://github.com/HankHuang0516/EClaw/issues/2890)) ([fd225e1](https://github.com/HankHuang0516/EClaw/commit/fd225e12d9491037be1a340bd63b54b5f3308c7f))
* **mindmap:** mission.html link to /portal/mindmap.html + deprecate /api/mission/mindmap ([#2685](https://github.com/HankHuang0516/EClaw/issues/2685)) ([11e297b](https://github.com/HankHuang0516/EClaw/commit/11e297bab1c9b56fcde3027d6500b7c58891bf18)), closes [#2680](https://github.com/HankHuang0516/EClaw/issues/2680) [#2684](https://github.com/HankHuang0516/EClaw/issues/2684)
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **portal:** nagoya trip interactive map (Leaflet + OSM, no API key) ([#2888](https://github.com/HankHuang0516/EClaw/issues/2888)) ([ecfdac0](https://github.com/HankHuang0516/EClaw/commit/ecfdac06348c12ee7c6872c6c28d5f82162e7aa9))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **settings:** per-entity nudge override UI (Phase 2) ([#2837](https://github.com/HankHuang0516/EClaw/issues/2837)) ([ea7662b](https://github.com/HankHuang0516/EClaw/commit/ea7662b0858882dae461e1387f711895924f9ab8)), closes [3/#4](https://github.com/HankHuang0516/EClaw/issues/4)
* **kanban:** per-entity nudge overrides (Phase 2 of card_e066cb6b) ([#2836](https://github.com/HankHuang0516/EClaw/issues/2836)) ([0425f80](https://github.com/HankHuang0516/EClaw/commit/0425f80bc1169c0d506b665659c8676695c45553))
* **avatar:** petdx render on card-holder my-cards (Phase 1b) ([#2621](https://github.com/HankHuang0516/EClaw/issues/2621)) ([f78ba8b](https://github.com/HankHuang0516/EClaw/commit/f78ba8b18acc426936ab6d8a82ca7541effea00d))
* **avatar:** petdx render on dashboard entity grid / org chart / bindings (Phase 1b) ([#2622](https://github.com/HankHuang0516/EClaw/issues/2622)) ([f417749](https://github.com/HankHuang0516/EClaw/commit/f41774914451048e8cd76e9ae30416a0642e173b)), closes [#2620](https://github.com/HankHuang0516/EClaw/issues/2620) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621)
* **avatar:** petdx render on kanban auto-assign / pulse / comment avatars (Phase 1b) ([#2624](https://github.com/HankHuang0516/EClaw/issues/2624)) ([6bff5f8](https://github.com/HankHuang0516/EClaw/commit/6bff5f80440d0bd91a6b1721cde9478d685c4d46))
* **avatar:** petdx render on mission skill/rule/soul entity dialogs (Phase 1b) ([#2623](https://github.com/HankHuang0516/EClaw/issues/2623)) ([129327b](https://github.com/HankHuang0516/EClaw/commit/129327bc7b91056659f1ab7e8d5e3f5260d951fb))
* **mindmap:** portal/mindmap.html force-graph prototype ([#129](https://github.com/HankHuang0516/EClaw/issues/129)) ([#2681](https://github.com/HankHuang0516/EClaw/issues/2681)) ([0f15e69](https://github.com/HankHuang0516/EClaw/commit/0f15e6930f0697c37fa08f3219edb8f9e499837f)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **portal:** redo nagoya trip page in professional tour-guide style ([#2691](https://github.com/HankHuang0516/EClaw/issues/2691)) ([b2378c0](https://github.com/HankHuang0516/EClaw/commit/b2378c06ee20fa9cccfdceceb1a4c9e0b3072f59))
* **i18n:** remove ms+hi orphan keys from i18n.js ([#2849](https://github.com/HankHuang0516/EClaw/issues/2849)) ([320176c](https://github.com/HankHuang0516/EClaw/commit/320176c06a3cfd8631e2a82ad02a6bd6a9af0389))
* **avatar:** render selected petdx companion in chat avatars ([#2620](https://github.com/HankHuang0516/EClaw/issues/2620)) ([0bdd046](https://github.com/HankHuang0516/EClaw/commit/0bdd046fe1b1c428e32edda366ff112c08927f4c))
* **home:** replace native home with WebView hosting dashboard.html ([#2634](https://github.com/HankHuang0516/EClaw/issues/2634)) ([e69ea81](https://github.com/HankHuang0516/EClaw/commit/e69ea8160c239b083a83d6dc83a4f1c3f901c863))
* **app:** route chat mission jumps through native tabs ([#2824](https://github.com/HankHuang0516/EClaw/issues/2824)) ([deb07b6](https://github.com/HankHuang0516/EClaw/commit/deb07b69a9ecca632fe27278de537f1d85234e94))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **chat:** support message deep links ([#2719](https://github.com/HankHuang0516/EClaw/issues/2719)) ([2dc0f1e](https://github.com/HankHuang0516/EClaw/commit/2dc0f1eeb259e1a0848db4a03186b989372cd91c))
* **mission:** support note deep links ([#2717](https://github.com/HankHuang0516/EClaw/issues/2717)) ([2efd3a5](https://github.com/HankHuang0516/EClaw/commit/2efd3a5e741217a07c0b0ac54a0ddd010e0ebe23))
* **share-chat:** twitter card + per-bot og:image/twitter:* in SSR ([#2609](https://github.com/HankHuang0516/EClaw/issues/2609)) ([6cdc853](https://github.com/HankHuang0516/EClaw/commit/6cdc853dc884cdb95bd47214942768981f218ae0))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))
* **settings:** wire petdx avatar into channel-account chips ([#2626](https://github.com/HankHuang0516/EClaw/issues/2626)) ([88aec77](https://github.com/HankHuang0516/EClaw/commit/88aec772628c240e97b336bb5820892ad632d1ae))
* **files:** wire petdx avatar into entity filter & per-file badges ([#2627](https://github.com/HankHuang0516/EClaw/issues/2627)) ([5b3e5cc](https://github.com/HankHuang0516/EClaw/commit/5b3e5cc542d9da69bb4e92500fd03a542ea33f00))
* **mindmap:** wrap hardcoded zh-TW UI strings with i18n t() ([#2607](https://github.com/HankHuang0516/EClaw/issues/2607)) ([166af87](https://github.com/HankHuang0516/EClaw/commit/166af8772b2121a24aaf34a83b3de970e9b3b571)), closes [#2606](https://github.com/HankHuang0516/EClaw/issues/2606)
* **i18n:** zh-TW backfill 8 keys (soft-pause + chat + invite + wallet) ([#2815](https://github.com/HankHuang0516/EClaw/issues/2815)) ([a2dd574](https://github.com/HankHuang0516/EClaw/commit/a2dd5743ce8d43a4b6ace9a2fd4b52568180d6c5))


### Performance Improvements

* **mindmap:** force-graph hardening for 1000/2000-node graphs ([#2684](https://github.com/HankHuang0516/EClaw/issues/2684)) ([da8b1c8](https://github.com/HankHuang0516/EClaw/commit/da8b1c8f947ab8bc8fa455c1962a91146623a1fc))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-23)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **notifications:** add kanban_done + kanban_done_auto toggles to Android Settings ([#2636](https://github.com/HankHuang0516/EClaw/issues/2636)) ([a710909](https://github.com/HankHuang0516/EClaw/commit/a7109095e3393b8564e7ef1b23d382a4fbb944b8))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **i18n:** ar block — fix 27 broken entries (CJK leaks + truncated HTML) ([#2851](https://github.com/HankHuang0516/EClaw/issues/2851)) ([5b19175](https://github.com/HankHuang0516/EClaw/commit/5b19175d712d00d16fcec00b749035c4beae7a5c))
* **chat:** atomic-load target bar (await contacts before first render) ([#2831](https://github.com/HankHuang0516/EClaw/issues/2831)) ([5f529e6](https://github.com/HankHuang0516/EClaw/commit/5f529e6b772eacc38ba1de69b44258a05f0d816a)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2](https://github.com/HankHuang0516/EClaw/issues/2)
* **channel:** await binding persistence ([712516d](https://github.com/HankHuang0516/EClaw/commit/712516decafb745035bd1434a28cc1973d433e19))
* **rental:** bump handshake timeout to 60s + timeout-aware discovery fallback ([#2863](https://github.com/HankHuang0516/EClaw/issues/2863)) ([fd4322f](https://github.com/HankHuang0516/EClaw/commit/fd4322f8890f3c2dfca3acdae6a4b95f19c381f9)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **i18n:** clear batch 1 residual missing keys ([#2790](https://github.com/HankHuang0516/EClaw/issues/2790)) ([211030e](https://github.com/HankHuang0516/EClaw/commit/211030e0b0b6a865c11f0c4ed60dc4e356d43b7a))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **kanban:** comment input no longer overlaps last comment in card detail (PR [#2678](https://github.com/HankHuang0516/EClaw/issues/2678)) ([fba91fc](https://github.com/HankHuang0516/EClaw/commit/fba91fca15402b453a0db5ee857c0b16e6087055))
* **chat:** compact 20px avatar in target bar (App WebView only shows [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2](https://github.com/HankHuang0516/EClaw/issues/2)) ([#2830](https://github.com/HankHuang0516/EClaw/issues/2830)) ([42c7543](https://github.com/HankHuang0516/EClaw/commit/42c7543b4a78a7abf3f5f7535eb9bc6142cd0fe2)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **portal:** complete 401 redirect sweep + mobile UIUX truncation ([#2842](https://github.com/HankHuang0516/EClaw/issues/2842)) ([f9799ba](https://github.com/HankHuang0516/EClaw/commit/f9799ba42498b109f0a8a70e80836aa6da51e216)), closes [#2833](https://github.com/HankHuang0516/EClaw/issues/2833) [#2845](https://github.com/HankHuang0516/EClaw/issues/2845) [#2844](https://github.com/HankHuang0516/EClaw/issues/2844) [#2843](https://github.com/HankHuang0516/EClaw/issues/2843)
* **uiux:** continue qa mobile readability sweep ([#2854](https://github.com/HankHuang0516/EClaw/issues/2854)) ([57606ff](https://github.com/HankHuang0516/EClaw/commit/57606ffe3e543b07a026aacc53c4b470c9a7825b))
* **i18n:** cover dynamic portal wrapper keys ([#2807](https://github.com/HankHuang0516/EClaw/issues/2807)) ([4c711cc](https://github.com/HankHuang0516/EClaw/commit/4c711cc4009300ffe4e8933a98ee01cd0fdd6aeb))
* **i18n:** dedup 20 dash_channel_card_* keys in es block ([#2876](https://github.com/HankHuang0516/EClaw/issues/2876)) ([807284c](https://github.com/HankHuang0516/EClaw/commit/807284ce363ef119ccdb0ae40e5ce99d3f0a27e0))
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **rental:** don't pollute entity.message on push gateway timeout ([#2860](https://github.com/HankHuang0516/EClaw/issues/2860)) ([592ba44](https://github.com/HankHuang0516/EClaw/commit/592ba44f57536ee00011b6cbddaa6b129a7cbae9))
* **petdx:** drop dark-grey loading placeholder + preload sprite WEBP ([#2628](https://github.com/HankHuang0516/EClaw/issues/2628)) ([59cef38](https://github.com/HankHuang0516/EClaw/commit/59cef387bd69ca99d7d15c86a1364856d3849ad8)), closes [#1a1a1a](https://github.com/HankHuang0516/EClaw/issues/1a1a1a)
* **gateway-ws:** drop Origin header on server-to-server WS upgrade ([#2869](https://github.com/HankHuang0516/EClaw/issues/2869)) ([716dcf9](https://github.com/HankHuang0516/EClaw/commit/716dcf9d0834b17522bb9d894bad84bc142d1a19))
* **setup-scripts:** drop Origin header on server-to-server WS upgrade ([#2875](https://github.com/HankHuang0516/EClaw/issues/2875)) ([9d893b8](https://github.com/HankHuang0516/EClaw/commit/9d893b8e5eea4db275e450bf423903c156cd3e4b)), closes [#2869](https://github.com/HankHuang0516/EClaw/issues/2869)
* **security:** escape innerHTML in chat modal error messages ([#2819](https://github.com/HankHuang0516/EClaw/issues/2819)) ([dce07ad](https://github.com/HankHuang0516/EClaw/commit/dce07adde64795916dba977ae23e46f3371ce7ed)), closes [#2809](https://github.com/HankHuang0516/EClaw/issues/2809) [#2810](https://github.com/HankHuang0516/EClaw/issues/2810) [#2809](https://github.com/HankHuang0516/EClaw/issues/2809) [#2810](https://github.com/HankHuang0516/EClaw/issues/2810)
* **entities:** expose botSecret to owner so wallpaper service can poll companions ([#2615](https://github.com/HankHuang0516/EClaw/issues/2615)) ([04470fc](https://github.com/HankHuang0516/EClaw/commit/04470fce8f8c3fce2b1ba8b243e776606f107502))
* **rental:** expose owner_public_code in marketplace so plaza CTA can route ([#2616](https://github.com/HankHuang0516/EClaw/issues/2616)) ([4d1372f](https://github.com/HankHuang0516/EClaw/commit/4d1372f717d93cab65543e87c852e74e9fb67071)), closes [#2610](https://github.com/HankHuang0516/EClaw/issues/2610)
* **mindmap:** fallback to device scope when entityId is null ([#2728](https://github.com/HankHuang0516/EClaw/issues/2728)) ([7572312](https://github.com/HankHuang0516/EClaw/commit/7572312433d3d75fc245eda48a28919ce14bd927))
* **i18n:** fill Spanish drift keys ([#2751](https://github.com/HankHuang0516/EClaw/issues/2751)) ([0ad0ee5](https://github.com/HankHuang0516/EClaw/commit/0ad0ee55f7fac3e6ac46d891539950dab4d553cc))
* **portal:** fit embedded org chart to mobile viewport ([#2674](https://github.com/HankHuang0516/EClaw/issues/2674)) ([1c4e1b4](https://github.com/HankHuang0516/EClaw/commit/1c4e1b413ea7027b4cd4b8ecda981b0d0e12e66b))
* **i18n:** fix 6 trailing-comma syntax errors in 10-locale batch ([#2771](https://github.com/HankHuang0516/EClaw/issues/2771)) ([b27c6ca](https://github.com/HankHuang0516/EClaw/commit/b27c6ca204bf813e406c54ce3a2532a5f1f031b3))
* **kanban:** GET card returns latest 50 comments + comments endpoint exposes total ([#2816](https://github.com/HankHuang0516/EClaw/issues/2816)) ([c4d83f7](https://github.com/HankHuang0516/EClaw/commit/c4d83f777a1cd26aea0936e4316aa35c52822eef))
* **sharechat:** guest verify-email modal + disabled Send for unverified ([#2865](https://github.com/HankHuang0516/EClaw/issues/2865)) ([cb3b061](https://github.com/HankHuang0516/EClaw/commit/cb3b0614e0f6160417d907753e66eceb2d666802))
* **uiux:** harden chat previews and roster preview ([#2769](https://github.com/HankHuang0516/EClaw/issues/2769)) ([466d4d3](https://github.com/HankHuang0516/EClaw/commit/466d4d3ef81c628d3f58db64323946053d7bf61c))
* **mention-parser:** ignore @-mentions inside markdown code spans ([#2645](https://github.com/HankHuang0516/EClaw/issues/2645)) ([8da19d4](https://github.com/HankHuang0516/EClaw/commit/8da19d4a79ceb4152bf2144ee0847c61ce3e1def)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **kanban:** lazy-load dependency chips via IntersectionObserver ([#2632](https://github.com/HankHuang0516/EClaw/issues/2632)) ([20586b4](https://github.com/HankHuang0516/EClaw/commit/20586b43357335f9eb6a190c02d58c8e36b58aba)), closes [#2631](https://github.com/HankHuang0516/EClaw/issues/2631)
* **kanban:** make card sorting deterministic ([#2756](https://github.com/HankHuang0516/EClaw/issues/2756)) ([48e2117](https://github.com/HankHuang0516/EClaw/commit/48e2117b64e37f05dc635e0a3b67bfd43cbe48f5))
* **portal/nagoya-trip:** map-link invisible on dark hero/day-banner ([#2897](https://github.com/HankHuang0516/EClaw/issues/2897)) ([cc33df6](https://github.com/HankHuang0516/EClaw/commit/cc33df686673455c20beaee60871412a5d486e66)), closes [#1f4030](https://github.com/HankHuang0516/EClaw/issues/1f4030) [#8b8579](https://github.com/HankHuang0516/EClaw/issues/8b8579) [#6e6859](https://github.com/HankHuang0516/EClaw/issues/6e6859) [#7a5614](https://github.com/HankHuang0516/EClaw/issues/7a5614)
* **org-chart:** notify affected bots on hierarchy change ([#2812](https://github.com/HankHuang0516/EClaw/issues/2812)) ([55675fd](https://github.com/HankHuang0516/EClaw/commit/55675fdf4487494d729a29524b32bd81b756a00c)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** notify reviewer on manual /move → review ([#2753](https://github.com/HankHuang0516/EClaw/issues/2753)) ([6cbbb4e](https://github.com/HankHuang0516/EClaw/commit/6cbbb4ee8c0d4d8ad54df2e9b5faaa3699bd530f))
* **wallpaper:** off-load spritesheet fetch to IO so per-petdx sprites actually render ([#2618](https://github.com/HankHuang0516/EClaw/issues/2618)) ([61b832c](https://github.com/HankHuang0516/EClaw/commit/61b832c9fa8a1d0caab810ccc942d85c63349267)), closes [#2615](https://github.com/HankHuang0516/EClaw/issues/2615) [#2577](https://github.com/HankHuang0516/EClaw/issues/2577)
* **security:** patch P0 sanitize-html XSS + P1 protobufjs + exam.html XSS ([#2829](https://github.com/HankHuang0516/EClaw/issues/2829)) ([c71b871](https://github.com/HankHuang0516/EClaw/commit/c71b871a045887375dd0d26d1a3280a0891a89ad))
* **security:** patch ws uninitialized memory disclosure (GHSA-58qx-3vcg-4xpx) ([#2872](https://github.com/HankHuang0516/EClaw/issues/2872)) ([2523d15](https://github.com/HankHuang0516/EClaw/commit/2523d154bbe501a7cc086340f7a07ece3abfa69b))
* **portal:** petdx-browser cookie-session fallback for device-login ([#2757](https://github.com/HankHuang0516/EClaw/issues/2757)) ([ca275f4](https://github.com/HankHuang0516/EClaw/commit/ca275f4519835da0c7ad71c588908a18f6f138d8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **api:** platform-stats 500 + entity/lookup publicCode alias ([#2809](https://github.com/HankHuang0516/EClaw/issues/2809), [#2810](https://github.com/HankHuang0516/EClaw/issues/2810)) ([#2818](https://github.com/HankHuang0516/EClaw/issues/2818)) ([f99fd17](https://github.com/HankHuang0516/EClaw/commit/f99fd17b2b1c32d88daa2510ff66d714c1a53edc))
* **i18n:** positional format specifiers for feedback_result_logs (7 locales) ([#2597](https://github.com/HankHuang0516/EClaw/issues/2597)) ([21aedc7](https://github.com/HankHuang0516/EClaw/commit/21aedc7eebc7a2839e340136f38dfdfd4dabb9dc))
* **avatar-petdx:** preserve descriptor across transient API failures (flicker) ([#2625](https://github.com/HankHuang0516/EClaw/issues/2625)) ([7b1c606](https://github.com/HankHuang0516/EClaw/commit/7b1c606514f7698d72ec95cf6c556e4043966186))
* **chat:** preserve scroll anchor while reading history ([#2693](https://github.com/HankHuang0516/EClaw/issues/2693)) ([945fdb7](https://github.com/HankHuang0516/EClaw/commit/945fdb7192b791b31882e1e75568dd8b11e4686f))
* **promo:** pull video embed from /promo-chat-avatar.html ([#2724](https://github.com/HankHuang0516/EClaw/issues/2724)) ([2afabc8](https://github.com/HankHuang0516/EClaw/commit/2afabc8c5ff8b25218a7cb857e8adfa572c8e9d5))
* **dashboard:** read live.rate_limits.{five_hour,seven_day}.used_percentage ([#2895](https://github.com/HankHuang0516/EClaw/issues/2895)) ([8223303](https://github.com/HankHuang0516/EClaw/commit/822330312bccb1c76675ad2c3b26e78d10dd1298))
* **kanban:** realign stale recurring schedules ([#2785](https://github.com/HankHuang0516/EClaw/issues/2785)) ([ab8ee25](https://github.com/HankHuang0516/EClaw/commit/ab8ee250a9b37f3d3e838bb01d8866c8d2b78231))
* **portal:** reduce QA-discovered request fanout ([#2656](https://github.com/HankHuang0516/EClaw/issues/2656)) ([1e46d6b](https://github.com/HankHuang0516/EClaw/commit/1e46d6bab61e58c65b452b6503d953f8dddeee75))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **portal:** remove org chart fit scale floor ([#2676](https://github.com/HankHuang0516/EClaw/issues/2676)) ([0f01606](https://github.com/HankHuang0516/EClaw/commit/0f016068b963bb5f800a02f28817c7174979d913))
* **rental:** remove phantom 'webhook test push' step from BIND_COMPLETE ([#2864](https://github.com/HankHuang0516/EClaw/issues/2864)) ([47f4a3e](https://github.com/HankHuang0516/EClaw/commit/47f4a3edf76aa95ebd06d8713cd44fda6eef9b5d))
* **i18n:** rename mm_empty_title → mm_state_empty_title in mindmap.html ([#2683](https://github.com/HankHuang0516/EClaw/issues/2683)) ([c79c109](https://github.com/HankHuang0516/EClaw/commit/c79c109bea23142e8a6d9ace976d105af1280ec9))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **chat:** render mention avatars with companion renderer ([#2633](https://github.com/HankHuang0516/EClaw/issues/2633)) ([03e205f](https://github.com/HankHuang0516/EClaw/commit/03e205f663ecd2c2f443d4009dd5af0093f0bbbb))
* **kanban:** reserve mobile comments panel height ([#2782](https://github.com/HankHuang0516/EClaw/issues/2782)) ([ce8662d](https://github.com/HankHuang0516/EClaw/commit/ce8662d362422fdd25037f1deb61dbed9425e2f9))
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* scheduled audit 2026-05-13 — 6 bugs, XSS, i18n ([#2668](https://github.com/HankHuang0516/EClaw/issues/2668)) ([21dd513](https://github.com/HankHuang0516/EClaw/commit/21dd513b4464738de29164265437435ba6cc4817)), closes [#2605](https://github.com/HankHuang0516/EClaw/issues/2605) [#2608](https://github.com/HankHuang0516/EClaw/issues/2608) [#2600](https://github.com/HankHuang0516/EClaw/issues/2600) [#2599](https://github.com/HankHuang0516/EClaw/issues/2599) [#2598](https://github.com/HankHuang0516/EClaw/issues/2598)
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **dashboard:** show Claude weekly bar reset countdown ([#2896](https://github.com/HankHuang0516/EClaw/issues/2896)) ([3b87845](https://github.com/HankHuang0516/EClaw/commit/3b87845d713e980fec69f6b8007549338a326713)), closes [#2895](https://github.com/HankHuang0516/EClaw/issues/2895)
* **chat:** smart-chip preview falls back to inline c.comments when /comments fails (PR [#2677](https://github.com/HankHuang0516/EClaw/issues/2677)) ([7f4dffd](https://github.com/HankHuang0516/EClaw/commit/7f4dffd2c83ea86f296b8fa0610f0e67c9f1af11))
* **kanban:** stabilize comment detail viewport ([#2796](https://github.com/HankHuang0516/EClaw/issues/2796)) ([0a10aad](https://github.com/HankHuang0516/EClaw/commit/0a10aadb5a5b12ff23454c16d5c88183b94ad7d7))
* **wallpaper:** stop Android live wallpaper flashing default lobster on companion change ([#2629](https://github.com/HankHuang0516/EClaw/issues/2629)) ([8b4f66f](https://github.com/HankHuang0516/EClaw/commit/8b4f66fcb335bf43128f924b761b6337c817095b)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **chat:** stop chat.html bouncing to dashboard via /api/rental/health-status 401 race ([#2833](https://github.com/HankHuang0516/EClaw/issues/2833)) ([c422406](https://github.com/HankHuang0516/EClaw/commit/c4224067cdcfe7f3e22ab95007c7563dac4196ac))
* **openclaw-channel:** support OpenClaw 2026.5.20 ([8045de6](https://github.com/HankHuang0516/EClaw/commit/8045de6bebecfc05f9bd57453b99c098ca35681b))
* **mentions:** support same-device CJK display-name tags ([#2874](https://github.com/HankHuang0516/EClaw/issues/2874)) ([b8f61be](https://github.com/HankHuang0516/EClaw/commit/b8f61be9a3962fef75dd32ea34e8900880dafaf9))
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **dashboard:** use sessions[].project for widget Projects list (was .project_id) ([#2894](https://github.com/HankHuang0516/EClaw/issues/2894)) ([0fd1334](https://github.com/HankHuang0516/EClaw/commit/0fd1334897d4a603cc6eb74f34b48606547e09cf))
* **app:** WebView pages honor app-selected locale via ?lang= URL param ([#2672](https://github.com/HankHuang0516/EClaw/issues/2672)) ([8ed8757](https://github.com/HankHuang0516/EClaw/commit/8ed8757aec5bf214e837cc0d81bf2b23f1993a91)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **share-chat:** wire rich CTA actions to msgInput ([#2867](https://github.com/HankHuang0516/EClaw/issues/2867)) ([df23b11](https://github.com/HankHuang0516/EClaw/commit/df23b1147d34c59a644a145bbd87c18b96400acc))


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* **usage-api:** /api/usage/{snapshot,timeline} + usage_snapshots table (Plan B Phase 1) ([#2889](https://github.com/HankHuang0516/EClaw/issues/2889)) ([a0d859c](https://github.com/HankHuang0516/EClaw/commit/a0d859c63f0220909dadb2b1952174861ccdce14))
* **community:** 1-click chat button on bot cards + utm tagging ([#2610](https://github.com/HankHuang0516/EClaw/issues/2610)) ([eee97b0](https://github.com/HankHuang0516/EClaw/commit/eee97b0e2e4e74945ec24f218a69a52800b97a66))
* **chat:** accept ?messageId= as deep-link alias ([#2838](https://github.com/HankHuang0516/EClaw/issues/2838)) ([1785a87](https://github.com/HankHuang0516/EClaw/commit/1785a87310426637fd10df83754fb9924c45207f))
* **chat:** add avatar size preference ([#2714](https://github.com/HankHuang0516/EClaw/issues/2714)) ([6fe164a](https://github.com/HankHuang0516/EClaw/commit/6fe164ad8b22fa576d2dd9ad37c0d9fc295b5a83))
* **dashboard:** add Claude and Codex channel guides ([#2640](https://github.com/HankHuang0516/EClaw/issues/2640)) ([c64e4c4](https://github.com/HankHuang0516/EClaw/commit/c64e4c4afc78db58c5cd578f00486dd7b2fd3311))
* **dashboard:** add Claude Code channel guide card ([#2667](https://github.com/HankHuang0516/EClaw/issues/2667)) ([d70d75c](https://github.com/HankHuang0516/EClaw/commit/d70d75c0c8caa8a540358a9aab4556b8c1927a5c))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* **kanban:** add device-scoped card tags ([#2773](https://github.com/HankHuang0516/EClaw/issues/2773)) ([53a387e](https://github.com/HankHuang0516/EClaw/commit/53a387e67ba7bb4f6bed1c427000c4ae8666577a))
* **portal:** add entity selector to petdx-browser ([#2602](https://github.com/HankHuang0516/EClaw/issues/2602)) ([3fa067e](https://github.com/HankHuang0516/EClaw/commit/3fa067e00b38829b48a37cecd33ee81a9a1122d9))
* **kanban:** add explicit card links ([#2721](https://github.com/HankHuang0516/EClaw/issues/2721)) ([ef9f812](https://github.com/HankHuang0516/EClaw/commit/ef9f812a3fcf39efd07fd158ce90951bdd045ac7))
* **kanban:** add explicit done-card reopen flow ([#2801](https://github.com/HankHuang0516/EClaw/issues/2801)) ([5080aac](https://github.com/HankHuang0516/EClaw/commit/5080aacb75047c0deaa379ee708ec85465afd57c))
* **mindmap:** add GET /api/mindmap/graph force-graph projection ([#2680](https://github.com/HankHuang0516/EClaw/issues/2680)) ([a00b2e7](https://github.com/HankHuang0516/EClaw/commit/a00b2e775af2c4c98cd157f760ad87aeeee469f0)), closes [#2679](https://github.com/HankHuang0516/EClaw/issues/2679) [#2679](https://github.com/HankHuang0516/EClaw/issues/2679)
* **dashboard:** add Hermes channel promo card ([#2708](https://github.com/HankHuang0516/EClaw/issues/2708)) ([337aca1](https://github.com/HankHuang0516/EClaw/commit/337aca153d5a1cd7e888c065f00ae54db7872d91))
* **rental:** add listing soft pause ([#2781](https://github.com/HankHuang0516/EClaw/issues/2781)) ([6586b72](https://github.com/HankHuang0516/EClaw/commit/6586b72717ddb1637d91cd3242c8d2ff554f62b4))
* **portal:** add Nagoya 5D4N trip static cross-ref page ([#2689](https://github.com/HankHuang0516/EClaw/issues/2689)) ([2e0efb6](https://github.com/HankHuang0516/EClaw/commit/2e0efb6dcdaff52226cc8854a96747000b12bdff))
* **portal:** add Nagoya trip map links and image lightbox ([#2821](https://github.com/HankHuang0516/EClaw/issues/2821)) ([3e40955](https://github.com/HankHuang0516/EClaw/commit/3e40955650a05f45a6b9f7e39e73847705424a03))
* **portal/nagoya:** add parking shortcut buttons next to itinerary places ([#2826](https://github.com/HankHuang0516/EClaw/issues/2826)) ([63968c5](https://github.com/HankHuang0516/EClaw/commit/63968c554d046afc8d978de74e3aacbf7700500d))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **settings:** add rental roster management preview ([#2758](https://github.com/HankHuang0516/EClaw/issues/2758)) ([9706e59](https://github.com/HankHuang0516/EClaw/commit/9706e59ded140a90a6e02348124282bc69d89001))
* **rental:** add renter health chat indicator ([#2690](https://github.com/HankHuang0516/EClaw/issues/2690)) ([36cd2e9](https://github.com/HankHuang0516/EClaw/commit/36cd2e9802be4c7ebb03d3024617fa74aca48ffd))
* **ios:** add Tutorial & Intro entry in Settings ([#2800](https://github.com/HankHuang0516/EClaw/issues/2800)) ([ed83e51](https://github.com/HankHuang0516/EClaw/commit/ed83e51d043bf4cd5865f38dc95a91ed54820d6c))
* **landing:** add Watch Full Demo CTA below hero video ([#2799](https://github.com/HankHuang0516/EClaw/issues/2799)) ([66107c9](https://github.com/HankHuang0516/EClaw/commit/66107c954727551fd34d989a4674daaad9b63968))
* **footer:** add Watch Intro Video link in Info column ([#2798](https://github.com/HankHuang0516/EClaw/issues/2798)) ([d7c6d59](https://github.com/HankHuang0516/EClaw/commit/d7c6d596b69c6a5b257bf1f7a792a407ef9712ad))
* **i18n:** ar iter-2 — fill 623 missing keys against en source ([#2847](https://github.com/HankHuang0516/EClaw/issues/2847)) ([ee94a7a](https://github.com/HankHuang0516/EClaw/commit/ee94a7ae6812b5163efe4284ee4907ca32302f5c))
* **kanban:** backlog launch-gate flag to suppress L1/L2/L3 escalation ([#2855](https://github.com/HankHuang0516/EClaw/issues/2855)) ([cb8bf1b](https://github.com/HankHuang0516/EClaw/commit/cb8bf1bb6421f25214f65e129a8cadccc49cc266)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#4](https://github.com/HankHuang0516/EClaw/issues/4) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **companion:** bridge crafter-station/petdex gallery (1784 pets) ([#2601](https://github.com/HankHuang0516/EClaw/issues/2601)) ([2e245be](https://github.com/HankHuang0516/EClaw/commit/2e245bea6dd47ea7361b927d389188a3c23b6bb3))
* **promo:** chat avatar size feature landing page (self-hosted MP4) ([#2722](https://github.com/HankHuang0516/EClaw/issues/2722)) ([3852210](https://github.com/HankHuang0516/EClaw/commit/3852210d355704d018e3daca6b5f9512a011b210)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **kanban:** cron-spawn jitter + lane backpressure to prevent same-tick wedge ([#2791](https://github.com/HankHuang0516/EClaw/issues/2791)) ([9f414a7](https://github.com/HankHuang0516/EClaw/commit/9f414a731d6393672a0a4189c7b408c529ae5e12)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **portal:** dashboard usage widget — Claude/Codex 5h gauges + 24h chart (Plan B Phase 3) ([#2891](https://github.com/HankHuang0516/EClaw/issues/2891)) ([d18f373](https://github.com/HankHuang0516/EClaw/commit/d18f373857e4bd302437d6bda2a1e01871fbb1db))
* **portal:** dashboard usage widget v2 — Session/Weekly % bars + projects, no cost (Plan B Phase 3.1) ([#2893](https://github.com/HankHuang0516/EClaw/issues/2893)) ([4bc0dc7](https://github.com/HankHuang0516/EClaw/commit/4bc0dc744ed9d54dfd532ebac4b705c7f84ec0a6))
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **promo:** embed daily eclaw video 2026-05-14 ([#2786](https://github.com/HankHuang0516/EClaw/issues/2786)) ([718a814](https://github.com/HankHuang0516/EClaw/commit/718a814ab16850bc2b33a1b303841e2c4378ecfa)), closes [#2782](https://github.com/HankHuang0516/EClaw/issues/2782) [#2693](https://github.com/HankHuang0516/EClaw/issues/2693)
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **info:** embed promo video at top of Quick Start tab ([#2797](https://github.com/HankHuang0516/EClaw/issues/2797)) ([047679f](https://github.com/HankHuang0516/EClaw/commit/047679fd57ab9949eaeacea414d5611e71afe041))
* **rental:** enforce strict rebind refunds ([#2703](https://github.com/HankHuang0516/EClaw/issues/2703)) ([a1859c5](https://github.com/HankHuang0516/EClaw/commit/a1859c50e6fb3991d7a8051491502d824a14a116))
* **portal:** group task chip actions ([#2825](https://github.com/HankHuang0516/EClaw/issues/2825)) ([5db5c59](https://github.com/HankHuang0516/EClaw/commit/5db5c59b32b8635f1412205faf0c2f9164d3d5d4))
* **portal:** info-guide-rules + info-guide-soul slide pair ([#2793](https://github.com/HankHuang0516/EClaw/issues/2793)) ([1c8bddc](https://github.com/HankHuang0516/EClaw/commit/1c8bddc4c185054b2b60088498e3d45509117127)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **chat:** link card previews to kanban ([#2754](https://github.com/HankHuang0516/EClaw/issues/2754)) ([2261240](https://github.com/HankHuang0516/EClaw/commit/22612402c2e95efb07246629e81a849be41ee9c7))
* **mission:** link notes to kanban cards ([#2723](https://github.com/HankHuang0516/EClaw/issues/2723)) ([b36dc18](https://github.com/HankHuang0516/EClaw/commit/b36dc18f3a8facf12e0b6046351c222f1e99dc55))
* **usage-daemon:** macOS launchd daemon polls Claude/Codex usage → POST /api/usage/snapshot (Plan B Phase 2) ([#2890](https://github.com/HankHuang0516/EClaw/issues/2890)) ([fd225e1](https://github.com/HankHuang0516/EClaw/commit/fd225e12d9491037be1a340bd63b54b5f3308c7f))
* **mindmap:** mission.html link to /portal/mindmap.html + deprecate /api/mission/mindmap ([#2685](https://github.com/HankHuang0516/EClaw/issues/2685)) ([11e297b](https://github.com/HankHuang0516/EClaw/commit/11e297bab1c9b56fcde3027d6500b7c58891bf18)), closes [#2680](https://github.com/HankHuang0516/EClaw/issues/2680) [#2684](https://github.com/HankHuang0516/EClaw/issues/2684)
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **portal:** nagoya trip interactive map (Leaflet + OSM, no API key) ([#2888](https://github.com/HankHuang0516/EClaw/issues/2888)) ([ecfdac0](https://github.com/HankHuang0516/EClaw/commit/ecfdac06348c12ee7c6872c6c28d5f82162e7aa9))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **settings:** per-entity nudge override UI (Phase 2) ([#2837](https://github.com/HankHuang0516/EClaw/issues/2837)) ([ea7662b](https://github.com/HankHuang0516/EClaw/commit/ea7662b0858882dae461e1387f711895924f9ab8)), closes [3/#4](https://github.com/HankHuang0516/EClaw/issues/4)
* **kanban:** per-entity nudge overrides (Phase 2 of card_e066cb6b) ([#2836](https://github.com/HankHuang0516/EClaw/issues/2836)) ([0425f80](https://github.com/HankHuang0516/EClaw/commit/0425f80bc1169c0d506b665659c8676695c45553))
* **avatar:** petdx render on card-holder my-cards (Phase 1b) ([#2621](https://github.com/HankHuang0516/EClaw/issues/2621)) ([f78ba8b](https://github.com/HankHuang0516/EClaw/commit/f78ba8b18acc426936ab6d8a82ca7541effea00d))
* **avatar:** petdx render on dashboard entity grid / org chart / bindings (Phase 1b) ([#2622](https://github.com/HankHuang0516/EClaw/issues/2622)) ([f417749](https://github.com/HankHuang0516/EClaw/commit/f41774914451048e8cd76e9ae30416a0642e173b)), closes [#2620](https://github.com/HankHuang0516/EClaw/issues/2620) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621)
* **avatar:** petdx render on kanban auto-assign / pulse / comment avatars (Phase 1b) ([#2624](https://github.com/HankHuang0516/EClaw/issues/2624)) ([6bff5f8](https://github.com/HankHuang0516/EClaw/commit/6bff5f80440d0bd91a6b1721cde9478d685c4d46))
* **avatar:** petdx render on mission skill/rule/soul entity dialogs (Phase 1b) ([#2623](https://github.com/HankHuang0516/EClaw/issues/2623)) ([129327b](https://github.com/HankHuang0516/EClaw/commit/129327bc7b91056659f1ab7e8d5e3f5260d951fb))
* **mindmap:** portal/mindmap.html force-graph prototype ([#129](https://github.com/HankHuang0516/EClaw/issues/129)) ([#2681](https://github.com/HankHuang0516/EClaw/issues/2681)) ([0f15e69](https://github.com/HankHuang0516/EClaw/commit/0f15e6930f0697c37fa08f3219edb8f9e499837f)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **portal:** redo nagoya trip page in professional tour-guide style ([#2691](https://github.com/HankHuang0516/EClaw/issues/2691)) ([b2378c0](https://github.com/HankHuang0516/EClaw/commit/b2378c06ee20fa9cccfdceceb1a4c9e0b3072f59))
* **i18n:** remove ms+hi orphan keys from i18n.js ([#2849](https://github.com/HankHuang0516/EClaw/issues/2849)) ([320176c](https://github.com/HankHuang0516/EClaw/commit/320176c06a3cfd8631e2a82ad02a6bd6a9af0389))
* **avatar:** render selected petdx companion in chat avatars ([#2620](https://github.com/HankHuang0516/EClaw/issues/2620)) ([0bdd046](https://github.com/HankHuang0516/EClaw/commit/0bdd046fe1b1c428e32edda366ff112c08927f4c))
* **home:** replace native home with WebView hosting dashboard.html ([#2634](https://github.com/HankHuang0516/EClaw/issues/2634)) ([e69ea81](https://github.com/HankHuang0516/EClaw/commit/e69ea8160c239b083a83d6dc83a4f1c3f901c863))
* **app:** route chat mission jumps through native tabs ([#2824](https://github.com/HankHuang0516/EClaw/issues/2824)) ([deb07b6](https://github.com/HankHuang0516/EClaw/commit/deb07b69a9ecca632fe27278de537f1d85234e94))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **chat:** support message deep links ([#2719](https://github.com/HankHuang0516/EClaw/issues/2719)) ([2dc0f1e](https://github.com/HankHuang0516/EClaw/commit/2dc0f1eeb259e1a0848db4a03186b989372cd91c))
* **mission:** support note deep links ([#2717](https://github.com/HankHuang0516/EClaw/issues/2717)) ([2efd3a5](https://github.com/HankHuang0516/EClaw/commit/2efd3a5e741217a07c0b0ac54a0ddd010e0ebe23))
* **share-chat:** twitter card + per-bot og:image/twitter:* in SSR ([#2609](https://github.com/HankHuang0516/EClaw/issues/2609)) ([6cdc853](https://github.com/HankHuang0516/EClaw/commit/6cdc853dc884cdb95bd47214942768981f218ae0))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))
* **settings:** wire petdx avatar into channel-account chips ([#2626](https://github.com/HankHuang0516/EClaw/issues/2626)) ([88aec77](https://github.com/HankHuang0516/EClaw/commit/88aec772628c240e97b336bb5820892ad632d1ae))
* **files:** wire petdx avatar into entity filter & per-file badges ([#2627](https://github.com/HankHuang0516/EClaw/issues/2627)) ([5b3e5cc](https://github.com/HankHuang0516/EClaw/commit/5b3e5cc542d9da69bb4e92500fd03a542ea33f00))
* **mindmap:** wrap hardcoded zh-TW UI strings with i18n t() ([#2607](https://github.com/HankHuang0516/EClaw/issues/2607)) ([166af87](https://github.com/HankHuang0516/EClaw/commit/166af8772b2121a24aaf34a83b3de970e9b3b571)), closes [#2606](https://github.com/HankHuang0516/EClaw/issues/2606)
* **i18n:** zh-TW backfill 8 keys (soft-pause + chat + invite + wallet) ([#2815](https://github.com/HankHuang0516/EClaw/issues/2815)) ([a2dd574](https://github.com/HankHuang0516/EClaw/commit/a2dd5743ce8d43a4b6ace9a2fd4b52568180d6c5))


### Performance Improvements

* **mindmap:** force-graph hardening for 1000/2000-node graphs ([#2684](https://github.com/HankHuang0516/EClaw/issues/2684)) ([da8b1c8](https://github.com/HankHuang0516/EClaw/commit/da8b1c8f947ab8bc8fa455c1962a91146623a1fc))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-23)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **notifications:** add kanban_done + kanban_done_auto toggles to Android Settings ([#2636](https://github.com/HankHuang0516/EClaw/issues/2636)) ([a710909](https://github.com/HankHuang0516/EClaw/commit/a7109095e3393b8564e7ef1b23d382a4fbb944b8))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **i18n:** ar block — fix 27 broken entries (CJK leaks + truncated HTML) ([#2851](https://github.com/HankHuang0516/EClaw/issues/2851)) ([5b19175](https://github.com/HankHuang0516/EClaw/commit/5b19175d712d00d16fcec00b749035c4beae7a5c))
* **chat:** atomic-load target bar (await contacts before first render) ([#2831](https://github.com/HankHuang0516/EClaw/issues/2831)) ([5f529e6](https://github.com/HankHuang0516/EClaw/commit/5f529e6b772eacc38ba1de69b44258a05f0d816a)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2](https://github.com/HankHuang0516/EClaw/issues/2)
* **channel:** await binding persistence ([712516d](https://github.com/HankHuang0516/EClaw/commit/712516decafb745035bd1434a28cc1973d433e19))
* **rental:** bump handshake timeout to 60s + timeout-aware discovery fallback ([#2863](https://github.com/HankHuang0516/EClaw/issues/2863)) ([fd4322f](https://github.com/HankHuang0516/EClaw/commit/fd4322f8890f3c2dfca3acdae6a4b95f19c381f9)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **i18n:** clear batch 1 residual missing keys ([#2790](https://github.com/HankHuang0516/EClaw/issues/2790)) ([211030e](https://github.com/HankHuang0516/EClaw/commit/211030e0b0b6a865c11f0c4ed60dc4e356d43b7a))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **kanban:** comment input no longer overlaps last comment in card detail (PR [#2678](https://github.com/HankHuang0516/EClaw/issues/2678)) ([fba91fc](https://github.com/HankHuang0516/EClaw/commit/fba91fca15402b453a0db5ee857c0b16e6087055))
* **chat:** compact 20px avatar in target bar (App WebView only shows [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2](https://github.com/HankHuang0516/EClaw/issues/2)) ([#2830](https://github.com/HankHuang0516/EClaw/issues/2830)) ([42c7543](https://github.com/HankHuang0516/EClaw/commit/42c7543b4a78a7abf3f5f7535eb9bc6142cd0fe2)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **portal:** complete 401 redirect sweep + mobile UIUX truncation ([#2842](https://github.com/HankHuang0516/EClaw/issues/2842)) ([f9799ba](https://github.com/HankHuang0516/EClaw/commit/f9799ba42498b109f0a8a70e80836aa6da51e216)), closes [#2833](https://github.com/HankHuang0516/EClaw/issues/2833) [#2845](https://github.com/HankHuang0516/EClaw/issues/2845) [#2844](https://github.com/HankHuang0516/EClaw/issues/2844) [#2843](https://github.com/HankHuang0516/EClaw/issues/2843)
* **uiux:** continue qa mobile readability sweep ([#2854](https://github.com/HankHuang0516/EClaw/issues/2854)) ([57606ff](https://github.com/HankHuang0516/EClaw/commit/57606ffe3e543b07a026aacc53c4b470c9a7825b))
* **i18n:** cover dynamic portal wrapper keys ([#2807](https://github.com/HankHuang0516/EClaw/issues/2807)) ([4c711cc](https://github.com/HankHuang0516/EClaw/commit/4c711cc4009300ffe4e8933a98ee01cd0fdd6aeb))
* **i18n:** dedup 20 dash_channel_card_* keys in es block ([#2876](https://github.com/HankHuang0516/EClaw/issues/2876)) ([807284c](https://github.com/HankHuang0516/EClaw/commit/807284ce363ef119ccdb0ae40e5ce99d3f0a27e0))
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **rental:** don't pollute entity.message on push gateway timeout ([#2860](https://github.com/HankHuang0516/EClaw/issues/2860)) ([592ba44](https://github.com/HankHuang0516/EClaw/commit/592ba44f57536ee00011b6cbddaa6b129a7cbae9))
* **petdx:** drop dark-grey loading placeholder + preload sprite WEBP ([#2628](https://github.com/HankHuang0516/EClaw/issues/2628)) ([59cef38](https://github.com/HankHuang0516/EClaw/commit/59cef387bd69ca99d7d15c86a1364856d3849ad8)), closes [#1a1a1a](https://github.com/HankHuang0516/EClaw/issues/1a1a1a)
* **gateway-ws:** drop Origin header on server-to-server WS upgrade ([#2869](https://github.com/HankHuang0516/EClaw/issues/2869)) ([716dcf9](https://github.com/HankHuang0516/EClaw/commit/716dcf9d0834b17522bb9d894bad84bc142d1a19))
* **setup-scripts:** drop Origin header on server-to-server WS upgrade ([#2875](https://github.com/HankHuang0516/EClaw/issues/2875)) ([9d893b8](https://github.com/HankHuang0516/EClaw/commit/9d893b8e5eea4db275e450bf423903c156cd3e4b)), closes [#2869](https://github.com/HankHuang0516/EClaw/issues/2869)
* **security:** escape innerHTML in chat modal error messages ([#2819](https://github.com/HankHuang0516/EClaw/issues/2819)) ([dce07ad](https://github.com/HankHuang0516/EClaw/commit/dce07adde64795916dba977ae23e46f3371ce7ed)), closes [#2809](https://github.com/HankHuang0516/EClaw/issues/2809) [#2810](https://github.com/HankHuang0516/EClaw/issues/2810) [#2809](https://github.com/HankHuang0516/EClaw/issues/2809) [#2810](https://github.com/HankHuang0516/EClaw/issues/2810)
* **entities:** expose botSecret to owner so wallpaper service can poll companions ([#2615](https://github.com/HankHuang0516/EClaw/issues/2615)) ([04470fc](https://github.com/HankHuang0516/EClaw/commit/04470fce8f8c3fce2b1ba8b243e776606f107502))
* **rental:** expose owner_public_code in marketplace so plaza CTA can route ([#2616](https://github.com/HankHuang0516/EClaw/issues/2616)) ([4d1372f](https://github.com/HankHuang0516/EClaw/commit/4d1372f717d93cab65543e87c852e74e9fb67071)), closes [#2610](https://github.com/HankHuang0516/EClaw/issues/2610)
* **mindmap:** fallback to device scope when entityId is null ([#2728](https://github.com/HankHuang0516/EClaw/issues/2728)) ([7572312](https://github.com/HankHuang0516/EClaw/commit/7572312433d3d75fc245eda48a28919ce14bd927))
* **i18n:** fill Spanish drift keys ([#2751](https://github.com/HankHuang0516/EClaw/issues/2751)) ([0ad0ee5](https://github.com/HankHuang0516/EClaw/commit/0ad0ee55f7fac3e6ac46d891539950dab4d553cc))
* **portal:** fit embedded org chart to mobile viewport ([#2674](https://github.com/HankHuang0516/EClaw/issues/2674)) ([1c4e1b4](https://github.com/HankHuang0516/EClaw/commit/1c4e1b413ea7027b4cd4b8ecda981b0d0e12e66b))
* **i18n:** fix 6 trailing-comma syntax errors in 10-locale batch ([#2771](https://github.com/HankHuang0516/EClaw/issues/2771)) ([b27c6ca](https://github.com/HankHuang0516/EClaw/commit/b27c6ca204bf813e406c54ce3a2532a5f1f031b3))
* **kanban:** GET card returns latest 50 comments + comments endpoint exposes total ([#2816](https://github.com/HankHuang0516/EClaw/issues/2816)) ([c4d83f7](https://github.com/HankHuang0516/EClaw/commit/c4d83f777a1cd26aea0936e4316aa35c52822eef))
* **sharechat:** guest verify-email modal + disabled Send for unverified ([#2865](https://github.com/HankHuang0516/EClaw/issues/2865)) ([cb3b061](https://github.com/HankHuang0516/EClaw/commit/cb3b0614e0f6160417d907753e66eceb2d666802))
* **uiux:** harden chat previews and roster preview ([#2769](https://github.com/HankHuang0516/EClaw/issues/2769)) ([466d4d3](https://github.com/HankHuang0516/EClaw/commit/466d4d3ef81c628d3f58db64323946053d7bf61c))
* **mention-parser:** ignore @-mentions inside markdown code spans ([#2645](https://github.com/HankHuang0516/EClaw/issues/2645)) ([8da19d4](https://github.com/HankHuang0516/EClaw/commit/8da19d4a79ceb4152bf2144ee0847c61ce3e1def)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **kanban:** lazy-load dependency chips via IntersectionObserver ([#2632](https://github.com/HankHuang0516/EClaw/issues/2632)) ([20586b4](https://github.com/HankHuang0516/EClaw/commit/20586b43357335f9eb6a190c02d58c8e36b58aba)), closes [#2631](https://github.com/HankHuang0516/EClaw/issues/2631)
* **kanban:** make card sorting deterministic ([#2756](https://github.com/HankHuang0516/EClaw/issues/2756)) ([48e2117](https://github.com/HankHuang0516/EClaw/commit/48e2117b64e37f05dc635e0a3b67bfd43cbe48f5))
* **org-chart:** notify affected bots on hierarchy change ([#2812](https://github.com/HankHuang0516/EClaw/issues/2812)) ([55675fd](https://github.com/HankHuang0516/EClaw/commit/55675fdf4487494d729a29524b32bd81b756a00c)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** notify reviewer on manual /move → review ([#2753](https://github.com/HankHuang0516/EClaw/issues/2753)) ([6cbbb4e](https://github.com/HankHuang0516/EClaw/commit/6cbbb4ee8c0d4d8ad54df2e9b5faaa3699bd530f))
* **wallpaper:** off-load spritesheet fetch to IO so per-petdx sprites actually render ([#2618](https://github.com/HankHuang0516/EClaw/issues/2618)) ([61b832c](https://github.com/HankHuang0516/EClaw/commit/61b832c9fa8a1d0caab810ccc942d85c63349267)), closes [#2615](https://github.com/HankHuang0516/EClaw/issues/2615) [#2577](https://github.com/HankHuang0516/EClaw/issues/2577)
* **security:** patch P0 sanitize-html XSS + P1 protobufjs + exam.html XSS ([#2829](https://github.com/HankHuang0516/EClaw/issues/2829)) ([c71b871](https://github.com/HankHuang0516/EClaw/commit/c71b871a045887375dd0d26d1a3280a0891a89ad))
* **security:** patch ws uninitialized memory disclosure (GHSA-58qx-3vcg-4xpx) ([#2872](https://github.com/HankHuang0516/EClaw/issues/2872)) ([2523d15](https://github.com/HankHuang0516/EClaw/commit/2523d154bbe501a7cc086340f7a07ece3abfa69b))
* **portal:** petdx-browser cookie-session fallback for device-login ([#2757](https://github.com/HankHuang0516/EClaw/issues/2757)) ([ca275f4](https://github.com/HankHuang0516/EClaw/commit/ca275f4519835da0c7ad71c588908a18f6f138d8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **api:** platform-stats 500 + entity/lookup publicCode alias ([#2809](https://github.com/HankHuang0516/EClaw/issues/2809), [#2810](https://github.com/HankHuang0516/EClaw/issues/2810)) ([#2818](https://github.com/HankHuang0516/EClaw/issues/2818)) ([f99fd17](https://github.com/HankHuang0516/EClaw/commit/f99fd17b2b1c32d88daa2510ff66d714c1a53edc))
* **i18n:** positional format specifiers for feedback_result_logs (7 locales) ([#2597](https://github.com/HankHuang0516/EClaw/issues/2597)) ([21aedc7](https://github.com/HankHuang0516/EClaw/commit/21aedc7eebc7a2839e340136f38dfdfd4dabb9dc))
* **avatar-petdx:** preserve descriptor across transient API failures (flicker) ([#2625](https://github.com/HankHuang0516/EClaw/issues/2625)) ([7b1c606](https://github.com/HankHuang0516/EClaw/commit/7b1c606514f7698d72ec95cf6c556e4043966186))
* **chat:** preserve scroll anchor while reading history ([#2693](https://github.com/HankHuang0516/EClaw/issues/2693)) ([945fdb7](https://github.com/HankHuang0516/EClaw/commit/945fdb7192b791b31882e1e75568dd8b11e4686f))
* **promo:** pull video embed from /promo-chat-avatar.html ([#2724](https://github.com/HankHuang0516/EClaw/issues/2724)) ([2afabc8](https://github.com/HankHuang0516/EClaw/commit/2afabc8c5ff8b25218a7cb857e8adfa572c8e9d5))
* **dashboard:** read live.rate_limits.{five_hour,seven_day}.used_percentage ([#2895](https://github.com/HankHuang0516/EClaw/issues/2895)) ([8223303](https://github.com/HankHuang0516/EClaw/commit/822330312bccb1c76675ad2c3b26e78d10dd1298))
* **kanban:** realign stale recurring schedules ([#2785](https://github.com/HankHuang0516/EClaw/issues/2785)) ([ab8ee25](https://github.com/HankHuang0516/EClaw/commit/ab8ee250a9b37f3d3e838bb01d8866c8d2b78231))
* **portal:** reduce QA-discovered request fanout ([#2656](https://github.com/HankHuang0516/EClaw/issues/2656)) ([1e46d6b](https://github.com/HankHuang0516/EClaw/commit/1e46d6bab61e58c65b452b6503d953f8dddeee75))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **portal:** remove org chart fit scale floor ([#2676](https://github.com/HankHuang0516/EClaw/issues/2676)) ([0f01606](https://github.com/HankHuang0516/EClaw/commit/0f016068b963bb5f800a02f28817c7174979d913))
* **rental:** remove phantom 'webhook test push' step from BIND_COMPLETE ([#2864](https://github.com/HankHuang0516/EClaw/issues/2864)) ([47f4a3e](https://github.com/HankHuang0516/EClaw/commit/47f4a3edf76aa95ebd06d8713cd44fda6eef9b5d))
* **i18n:** rename mm_empty_title → mm_state_empty_title in mindmap.html ([#2683](https://github.com/HankHuang0516/EClaw/issues/2683)) ([c79c109](https://github.com/HankHuang0516/EClaw/commit/c79c109bea23142e8a6d9ace976d105af1280ec9))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **chat:** render mention avatars with companion renderer ([#2633](https://github.com/HankHuang0516/EClaw/issues/2633)) ([03e205f](https://github.com/HankHuang0516/EClaw/commit/03e205f663ecd2c2f443d4009dd5af0093f0bbbb))
* **kanban:** reserve mobile comments panel height ([#2782](https://github.com/HankHuang0516/EClaw/issues/2782)) ([ce8662d](https://github.com/HankHuang0516/EClaw/commit/ce8662d362422fdd25037f1deb61dbed9425e2f9))
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* scheduled audit 2026-05-13 — 6 bugs, XSS, i18n ([#2668](https://github.com/HankHuang0516/EClaw/issues/2668)) ([21dd513](https://github.com/HankHuang0516/EClaw/commit/21dd513b4464738de29164265437435ba6cc4817)), closes [#2605](https://github.com/HankHuang0516/EClaw/issues/2605) [#2608](https://github.com/HankHuang0516/EClaw/issues/2608) [#2600](https://github.com/HankHuang0516/EClaw/issues/2600) [#2599](https://github.com/HankHuang0516/EClaw/issues/2599) [#2598](https://github.com/HankHuang0516/EClaw/issues/2598)
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **dashboard:** show Claude weekly bar reset countdown ([#2896](https://github.com/HankHuang0516/EClaw/issues/2896)) ([3b87845](https://github.com/HankHuang0516/EClaw/commit/3b87845d713e980fec69f6b8007549338a326713)), closes [#2895](https://github.com/HankHuang0516/EClaw/issues/2895)
* **chat:** smart-chip preview falls back to inline c.comments when /comments fails (PR [#2677](https://github.com/HankHuang0516/EClaw/issues/2677)) ([7f4dffd](https://github.com/HankHuang0516/EClaw/commit/7f4dffd2c83ea86f296b8fa0610f0e67c9f1af11))
* **kanban:** stabilize comment detail viewport ([#2796](https://github.com/HankHuang0516/EClaw/issues/2796)) ([0a10aad](https://github.com/HankHuang0516/EClaw/commit/0a10aadb5a5b12ff23454c16d5c88183b94ad7d7))
* **wallpaper:** stop Android live wallpaper flashing default lobster on companion change ([#2629](https://github.com/HankHuang0516/EClaw/issues/2629)) ([8b4f66f](https://github.com/HankHuang0516/EClaw/commit/8b4f66fcb335bf43128f924b761b6337c817095b)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **chat:** stop chat.html bouncing to dashboard via /api/rental/health-status 401 race ([#2833](https://github.com/HankHuang0516/EClaw/issues/2833)) ([c422406](https://github.com/HankHuang0516/EClaw/commit/c4224067cdcfe7f3e22ab95007c7563dac4196ac))
* **openclaw-channel:** support OpenClaw 2026.5.20 ([8045de6](https://github.com/HankHuang0516/EClaw/commit/8045de6bebecfc05f9bd57453b99c098ca35681b))
* **mentions:** support same-device CJK display-name tags ([#2874](https://github.com/HankHuang0516/EClaw/issues/2874)) ([b8f61be](https://github.com/HankHuang0516/EClaw/commit/b8f61be9a3962fef75dd32ea34e8900880dafaf9))
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **dashboard:** use sessions[].project for widget Projects list (was .project_id) ([#2894](https://github.com/HankHuang0516/EClaw/issues/2894)) ([0fd1334](https://github.com/HankHuang0516/EClaw/commit/0fd1334897d4a603cc6eb74f34b48606547e09cf))
* **app:** WebView pages honor app-selected locale via ?lang= URL param ([#2672](https://github.com/HankHuang0516/EClaw/issues/2672)) ([8ed8757](https://github.com/HankHuang0516/EClaw/commit/8ed8757aec5bf214e837cc0d81bf2b23f1993a91)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **share-chat:** wire rich CTA actions to msgInput ([#2867](https://github.com/HankHuang0516/EClaw/issues/2867)) ([df23b11](https://github.com/HankHuang0516/EClaw/commit/df23b1147d34c59a644a145bbd87c18b96400acc))


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* **usage-api:** /api/usage/{snapshot,timeline} + usage_snapshots table (Plan B Phase 1) ([#2889](https://github.com/HankHuang0516/EClaw/issues/2889)) ([a0d859c](https://github.com/HankHuang0516/EClaw/commit/a0d859c63f0220909dadb2b1952174861ccdce14))
* **community:** 1-click chat button on bot cards + utm tagging ([#2610](https://github.com/HankHuang0516/EClaw/issues/2610)) ([eee97b0](https://github.com/HankHuang0516/EClaw/commit/eee97b0e2e4e74945ec24f218a69a52800b97a66))
* **chat:** accept ?messageId= as deep-link alias ([#2838](https://github.com/HankHuang0516/EClaw/issues/2838)) ([1785a87](https://github.com/HankHuang0516/EClaw/commit/1785a87310426637fd10df83754fb9924c45207f))
* **chat:** add avatar size preference ([#2714](https://github.com/HankHuang0516/EClaw/issues/2714)) ([6fe164a](https://github.com/HankHuang0516/EClaw/commit/6fe164ad8b22fa576d2dd9ad37c0d9fc295b5a83))
* **dashboard:** add Claude and Codex channel guides ([#2640](https://github.com/HankHuang0516/EClaw/issues/2640)) ([c64e4c4](https://github.com/HankHuang0516/EClaw/commit/c64e4c4afc78db58c5cd578f00486dd7b2fd3311))
* **dashboard:** add Claude Code channel guide card ([#2667](https://github.com/HankHuang0516/EClaw/issues/2667)) ([d70d75c](https://github.com/HankHuang0516/EClaw/commit/d70d75c0c8caa8a540358a9aab4556b8c1927a5c))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* **kanban:** add device-scoped card tags ([#2773](https://github.com/HankHuang0516/EClaw/issues/2773)) ([53a387e](https://github.com/HankHuang0516/EClaw/commit/53a387e67ba7bb4f6bed1c427000c4ae8666577a))
* **portal:** add entity selector to petdx-browser ([#2602](https://github.com/HankHuang0516/EClaw/issues/2602)) ([3fa067e](https://github.com/HankHuang0516/EClaw/commit/3fa067e00b38829b48a37cecd33ee81a9a1122d9))
* **kanban:** add explicit card links ([#2721](https://github.com/HankHuang0516/EClaw/issues/2721)) ([ef9f812](https://github.com/HankHuang0516/EClaw/commit/ef9f812a3fcf39efd07fd158ce90951bdd045ac7))
* **kanban:** add explicit done-card reopen flow ([#2801](https://github.com/HankHuang0516/EClaw/issues/2801)) ([5080aac](https://github.com/HankHuang0516/EClaw/commit/5080aacb75047c0deaa379ee708ec85465afd57c))
* **mindmap:** add GET /api/mindmap/graph force-graph projection ([#2680](https://github.com/HankHuang0516/EClaw/issues/2680)) ([a00b2e7](https://github.com/HankHuang0516/EClaw/commit/a00b2e775af2c4c98cd157f760ad87aeeee469f0)), closes [#2679](https://github.com/HankHuang0516/EClaw/issues/2679) [#2679](https://github.com/HankHuang0516/EClaw/issues/2679)
* **dashboard:** add Hermes channel promo card ([#2708](https://github.com/HankHuang0516/EClaw/issues/2708)) ([337aca1](https://github.com/HankHuang0516/EClaw/commit/337aca153d5a1cd7e888c065f00ae54db7872d91))
* **rental:** add listing soft pause ([#2781](https://github.com/HankHuang0516/EClaw/issues/2781)) ([6586b72](https://github.com/HankHuang0516/EClaw/commit/6586b72717ddb1637d91cd3242c8d2ff554f62b4))
* **portal:** add Nagoya 5D4N trip static cross-ref page ([#2689](https://github.com/HankHuang0516/EClaw/issues/2689)) ([2e0efb6](https://github.com/HankHuang0516/EClaw/commit/2e0efb6dcdaff52226cc8854a96747000b12bdff))
* **portal:** add Nagoya trip map links and image lightbox ([#2821](https://github.com/HankHuang0516/EClaw/issues/2821)) ([3e40955](https://github.com/HankHuang0516/EClaw/commit/3e40955650a05f45a6b9f7e39e73847705424a03))
* **portal/nagoya:** add parking shortcut buttons next to itinerary places ([#2826](https://github.com/HankHuang0516/EClaw/issues/2826)) ([63968c5](https://github.com/HankHuang0516/EClaw/commit/63968c554d046afc8d978de74e3aacbf7700500d))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **settings:** add rental roster management preview ([#2758](https://github.com/HankHuang0516/EClaw/issues/2758)) ([9706e59](https://github.com/HankHuang0516/EClaw/commit/9706e59ded140a90a6e02348124282bc69d89001))
* **rental:** add renter health chat indicator ([#2690](https://github.com/HankHuang0516/EClaw/issues/2690)) ([36cd2e9](https://github.com/HankHuang0516/EClaw/commit/36cd2e9802be4c7ebb03d3024617fa74aca48ffd))
* **ios:** add Tutorial & Intro entry in Settings ([#2800](https://github.com/HankHuang0516/EClaw/issues/2800)) ([ed83e51](https://github.com/HankHuang0516/EClaw/commit/ed83e51d043bf4cd5865f38dc95a91ed54820d6c))
* **landing:** add Watch Full Demo CTA below hero video ([#2799](https://github.com/HankHuang0516/EClaw/issues/2799)) ([66107c9](https://github.com/HankHuang0516/EClaw/commit/66107c954727551fd34d989a4674daaad9b63968))
* **footer:** add Watch Intro Video link in Info column ([#2798](https://github.com/HankHuang0516/EClaw/issues/2798)) ([d7c6d59](https://github.com/HankHuang0516/EClaw/commit/d7c6d596b69c6a5b257bf1f7a792a407ef9712ad))
* **i18n:** ar iter-2 — fill 623 missing keys against en source ([#2847](https://github.com/HankHuang0516/EClaw/issues/2847)) ([ee94a7a](https://github.com/HankHuang0516/EClaw/commit/ee94a7ae6812b5163efe4284ee4907ca32302f5c))
* **kanban:** backlog launch-gate flag to suppress L1/L2/L3 escalation ([#2855](https://github.com/HankHuang0516/EClaw/issues/2855)) ([cb8bf1b](https://github.com/HankHuang0516/EClaw/commit/cb8bf1bb6421f25214f65e129a8cadccc49cc266)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#4](https://github.com/HankHuang0516/EClaw/issues/4) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **companion:** bridge crafter-station/petdex gallery (1784 pets) ([#2601](https://github.com/HankHuang0516/EClaw/issues/2601)) ([2e245be](https://github.com/HankHuang0516/EClaw/commit/2e245bea6dd47ea7361b927d389188a3c23b6bb3))
* **promo:** chat avatar size feature landing page (self-hosted MP4) ([#2722](https://github.com/HankHuang0516/EClaw/issues/2722)) ([3852210](https://github.com/HankHuang0516/EClaw/commit/3852210d355704d018e3daca6b5f9512a011b210)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **kanban:** cron-spawn jitter + lane backpressure to prevent same-tick wedge ([#2791](https://github.com/HankHuang0516/EClaw/issues/2791)) ([9f414a7](https://github.com/HankHuang0516/EClaw/commit/9f414a731d6393672a0a4189c7b408c529ae5e12)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **portal:** dashboard usage widget — Claude/Codex 5h gauges + 24h chart (Plan B Phase 3) ([#2891](https://github.com/HankHuang0516/EClaw/issues/2891)) ([d18f373](https://github.com/HankHuang0516/EClaw/commit/d18f373857e4bd302437d6bda2a1e01871fbb1db))
* **portal:** dashboard usage widget v2 — Session/Weekly % bars + projects, no cost (Plan B Phase 3.1) ([#2893](https://github.com/HankHuang0516/EClaw/issues/2893)) ([4bc0dc7](https://github.com/HankHuang0516/EClaw/commit/4bc0dc744ed9d54dfd532ebac4b705c7f84ec0a6))
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **promo:** embed daily eclaw video 2026-05-14 ([#2786](https://github.com/HankHuang0516/EClaw/issues/2786)) ([718a814](https://github.com/HankHuang0516/EClaw/commit/718a814ab16850bc2b33a1b303841e2c4378ecfa)), closes [#2782](https://github.com/HankHuang0516/EClaw/issues/2782) [#2693](https://github.com/HankHuang0516/EClaw/issues/2693)
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **info:** embed promo video at top of Quick Start tab ([#2797](https://github.com/HankHuang0516/EClaw/issues/2797)) ([047679f](https://github.com/HankHuang0516/EClaw/commit/047679fd57ab9949eaeacea414d5611e71afe041))
* **rental:** enforce strict rebind refunds ([#2703](https://github.com/HankHuang0516/EClaw/issues/2703)) ([a1859c5](https://github.com/HankHuang0516/EClaw/commit/a1859c50e6fb3991d7a8051491502d824a14a116))
* **portal:** group task chip actions ([#2825](https://github.com/HankHuang0516/EClaw/issues/2825)) ([5db5c59](https://github.com/HankHuang0516/EClaw/commit/5db5c59b32b8635f1412205faf0c2f9164d3d5d4))
* **portal:** info-guide-rules + info-guide-soul slide pair ([#2793](https://github.com/HankHuang0516/EClaw/issues/2793)) ([1c8bddc](https://github.com/HankHuang0516/EClaw/commit/1c8bddc4c185054b2b60088498e3d45509117127)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **chat:** link card previews to kanban ([#2754](https://github.com/HankHuang0516/EClaw/issues/2754)) ([2261240](https://github.com/HankHuang0516/EClaw/commit/22612402c2e95efb07246629e81a849be41ee9c7))
* **mission:** link notes to kanban cards ([#2723](https://github.com/HankHuang0516/EClaw/issues/2723)) ([b36dc18](https://github.com/HankHuang0516/EClaw/commit/b36dc18f3a8facf12e0b6046351c222f1e99dc55))
* **usage-daemon:** macOS launchd daemon polls Claude/Codex usage → POST /api/usage/snapshot (Plan B Phase 2) ([#2890](https://github.com/HankHuang0516/EClaw/issues/2890)) ([fd225e1](https://github.com/HankHuang0516/EClaw/commit/fd225e12d9491037be1a340bd63b54b5f3308c7f))
* **mindmap:** mission.html link to /portal/mindmap.html + deprecate /api/mission/mindmap ([#2685](https://github.com/HankHuang0516/EClaw/issues/2685)) ([11e297b](https://github.com/HankHuang0516/EClaw/commit/11e297bab1c9b56fcde3027d6500b7c58891bf18)), closes [#2680](https://github.com/HankHuang0516/EClaw/issues/2680) [#2684](https://github.com/HankHuang0516/EClaw/issues/2684)
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **portal:** nagoya trip interactive map (Leaflet + OSM, no API key) ([#2888](https://github.com/HankHuang0516/EClaw/issues/2888)) ([ecfdac0](https://github.com/HankHuang0516/EClaw/commit/ecfdac06348c12ee7c6872c6c28d5f82162e7aa9))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **settings:** per-entity nudge override UI (Phase 2) ([#2837](https://github.com/HankHuang0516/EClaw/issues/2837)) ([ea7662b](https://github.com/HankHuang0516/EClaw/commit/ea7662b0858882dae461e1387f711895924f9ab8)), closes [3/#4](https://github.com/HankHuang0516/EClaw/issues/4)
* **kanban:** per-entity nudge overrides (Phase 2 of card_e066cb6b) ([#2836](https://github.com/HankHuang0516/EClaw/issues/2836)) ([0425f80](https://github.com/HankHuang0516/EClaw/commit/0425f80bc1169c0d506b665659c8676695c45553))
* **avatar:** petdx render on card-holder my-cards (Phase 1b) ([#2621](https://github.com/HankHuang0516/EClaw/issues/2621)) ([f78ba8b](https://github.com/HankHuang0516/EClaw/commit/f78ba8b18acc426936ab6d8a82ca7541effea00d))
* **avatar:** petdx render on dashboard entity grid / org chart / bindings (Phase 1b) ([#2622](https://github.com/HankHuang0516/EClaw/issues/2622)) ([f417749](https://github.com/HankHuang0516/EClaw/commit/f41774914451048e8cd76e9ae30416a0642e173b)), closes [#2620](https://github.com/HankHuang0516/EClaw/issues/2620) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621)
* **avatar:** petdx render on kanban auto-assign / pulse / comment avatars (Phase 1b) ([#2624](https://github.com/HankHuang0516/EClaw/issues/2624)) ([6bff5f8](https://github.com/HankHuang0516/EClaw/commit/6bff5f80440d0bd91a6b1721cde9478d685c4d46))
* **avatar:** petdx render on mission skill/rule/soul entity dialogs (Phase 1b) ([#2623](https://github.com/HankHuang0516/EClaw/issues/2623)) ([129327b](https://github.com/HankHuang0516/EClaw/commit/129327bc7b91056659f1ab7e8d5e3f5260d951fb))
* **mindmap:** portal/mindmap.html force-graph prototype ([#129](https://github.com/HankHuang0516/EClaw/issues/129)) ([#2681](https://github.com/HankHuang0516/EClaw/issues/2681)) ([0f15e69](https://github.com/HankHuang0516/EClaw/commit/0f15e6930f0697c37fa08f3219edb8f9e499837f)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **portal:** redo nagoya trip page in professional tour-guide style ([#2691](https://github.com/HankHuang0516/EClaw/issues/2691)) ([b2378c0](https://github.com/HankHuang0516/EClaw/commit/b2378c06ee20fa9cccfdceceb1a4c9e0b3072f59))
* **i18n:** remove ms+hi orphan keys from i18n.js ([#2849](https://github.com/HankHuang0516/EClaw/issues/2849)) ([320176c](https://github.com/HankHuang0516/EClaw/commit/320176c06a3cfd8631e2a82ad02a6bd6a9af0389))
* **avatar:** render selected petdx companion in chat avatars ([#2620](https://github.com/HankHuang0516/EClaw/issues/2620)) ([0bdd046](https://github.com/HankHuang0516/EClaw/commit/0bdd046fe1b1c428e32edda366ff112c08927f4c))
* **home:** replace native home with WebView hosting dashboard.html ([#2634](https://github.com/HankHuang0516/EClaw/issues/2634)) ([e69ea81](https://github.com/HankHuang0516/EClaw/commit/e69ea8160c239b083a83d6dc83a4f1c3f901c863))
* **app:** route chat mission jumps through native tabs ([#2824](https://github.com/HankHuang0516/EClaw/issues/2824)) ([deb07b6](https://github.com/HankHuang0516/EClaw/commit/deb07b69a9ecca632fe27278de537f1d85234e94))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **chat:** support message deep links ([#2719](https://github.com/HankHuang0516/EClaw/issues/2719)) ([2dc0f1e](https://github.com/HankHuang0516/EClaw/commit/2dc0f1eeb259e1a0848db4a03186b989372cd91c))
* **mission:** support note deep links ([#2717](https://github.com/HankHuang0516/EClaw/issues/2717)) ([2efd3a5](https://github.com/HankHuang0516/EClaw/commit/2efd3a5e741217a07c0b0ac54a0ddd010e0ebe23))
* **share-chat:** twitter card + per-bot og:image/twitter:* in SSR ([#2609](https://github.com/HankHuang0516/EClaw/issues/2609)) ([6cdc853](https://github.com/HankHuang0516/EClaw/commit/6cdc853dc884cdb95bd47214942768981f218ae0))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))
* **settings:** wire petdx avatar into channel-account chips ([#2626](https://github.com/HankHuang0516/EClaw/issues/2626)) ([88aec77](https://github.com/HankHuang0516/EClaw/commit/88aec772628c240e97b336bb5820892ad632d1ae))
* **files:** wire petdx avatar into entity filter & per-file badges ([#2627](https://github.com/HankHuang0516/EClaw/issues/2627)) ([5b3e5cc](https://github.com/HankHuang0516/EClaw/commit/5b3e5cc542d9da69bb4e92500fd03a542ea33f00))
* **mindmap:** wrap hardcoded zh-TW UI strings with i18n t() ([#2607](https://github.com/HankHuang0516/EClaw/issues/2607)) ([166af87](https://github.com/HankHuang0516/EClaw/commit/166af8772b2121a24aaf34a83b3de970e9b3b571)), closes [#2606](https://github.com/HankHuang0516/EClaw/issues/2606)
* **i18n:** zh-TW backfill 8 keys (soft-pause + chat + invite + wallet) ([#2815](https://github.com/HankHuang0516/EClaw/issues/2815)) ([a2dd574](https://github.com/HankHuang0516/EClaw/commit/a2dd5743ce8d43a4b6ace9a2fd4b52568180d6c5))


### Performance Improvements

* **mindmap:** force-graph hardening for 1000/2000-node graphs ([#2684](https://github.com/HankHuang0516/EClaw/issues/2684)) ([da8b1c8](https://github.com/HankHuang0516/EClaw/commit/da8b1c8f947ab8bc8fa455c1962a91146623a1fc))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-23)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **notifications:** add kanban_done + kanban_done_auto toggles to Android Settings ([#2636](https://github.com/HankHuang0516/EClaw/issues/2636)) ([a710909](https://github.com/HankHuang0516/EClaw/commit/a7109095e3393b8564e7ef1b23d382a4fbb944b8))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **i18n:** ar block — fix 27 broken entries (CJK leaks + truncated HTML) ([#2851](https://github.com/HankHuang0516/EClaw/issues/2851)) ([5b19175](https://github.com/HankHuang0516/EClaw/commit/5b19175d712d00d16fcec00b749035c4beae7a5c))
* **chat:** atomic-load target bar (await contacts before first render) ([#2831](https://github.com/HankHuang0516/EClaw/issues/2831)) ([5f529e6](https://github.com/HankHuang0516/EClaw/commit/5f529e6b772eacc38ba1de69b44258a05f0d816a)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2](https://github.com/HankHuang0516/EClaw/issues/2)
* **channel:** await binding persistence ([712516d](https://github.com/HankHuang0516/EClaw/commit/712516decafb745035bd1434a28cc1973d433e19))
* **rental:** bump handshake timeout to 60s + timeout-aware discovery fallback ([#2863](https://github.com/HankHuang0516/EClaw/issues/2863)) ([fd4322f](https://github.com/HankHuang0516/EClaw/commit/fd4322f8890f3c2dfca3acdae6a4b95f19c381f9)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **i18n:** clear batch 1 residual missing keys ([#2790](https://github.com/HankHuang0516/EClaw/issues/2790)) ([211030e](https://github.com/HankHuang0516/EClaw/commit/211030e0b0b6a865c11f0c4ed60dc4e356d43b7a))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **kanban:** comment input no longer overlaps last comment in card detail (PR [#2678](https://github.com/HankHuang0516/EClaw/issues/2678)) ([fba91fc](https://github.com/HankHuang0516/EClaw/commit/fba91fca15402b453a0db5ee857c0b16e6087055))
* **chat:** compact 20px avatar in target bar (App WebView only shows [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2](https://github.com/HankHuang0516/EClaw/issues/2)) ([#2830](https://github.com/HankHuang0516/EClaw/issues/2830)) ([42c7543](https://github.com/HankHuang0516/EClaw/commit/42c7543b4a78a7abf3f5f7535eb9bc6142cd0fe2)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **portal:** complete 401 redirect sweep + mobile UIUX truncation ([#2842](https://github.com/HankHuang0516/EClaw/issues/2842)) ([f9799ba](https://github.com/HankHuang0516/EClaw/commit/f9799ba42498b109f0a8a70e80836aa6da51e216)), closes [#2833](https://github.com/HankHuang0516/EClaw/issues/2833) [#2845](https://github.com/HankHuang0516/EClaw/issues/2845) [#2844](https://github.com/HankHuang0516/EClaw/issues/2844) [#2843](https://github.com/HankHuang0516/EClaw/issues/2843)
* **uiux:** continue qa mobile readability sweep ([#2854](https://github.com/HankHuang0516/EClaw/issues/2854)) ([57606ff](https://github.com/HankHuang0516/EClaw/commit/57606ffe3e543b07a026aacc53c4b470c9a7825b))
* **i18n:** cover dynamic portal wrapper keys ([#2807](https://github.com/HankHuang0516/EClaw/issues/2807)) ([4c711cc](https://github.com/HankHuang0516/EClaw/commit/4c711cc4009300ffe4e8933a98ee01cd0fdd6aeb))
* **i18n:** dedup 20 dash_channel_card_* keys in es block ([#2876](https://github.com/HankHuang0516/EClaw/issues/2876)) ([807284c](https://github.com/HankHuang0516/EClaw/commit/807284ce363ef119ccdb0ae40e5ce99d3f0a27e0))
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **rental:** don't pollute entity.message on push gateway timeout ([#2860](https://github.com/HankHuang0516/EClaw/issues/2860)) ([592ba44](https://github.com/HankHuang0516/EClaw/commit/592ba44f57536ee00011b6cbddaa6b129a7cbae9))
* **petdx:** drop dark-grey loading placeholder + preload sprite WEBP ([#2628](https://github.com/HankHuang0516/EClaw/issues/2628)) ([59cef38](https://github.com/HankHuang0516/EClaw/commit/59cef387bd69ca99d7d15c86a1364856d3849ad8)), closes [#1a1a1a](https://github.com/HankHuang0516/EClaw/issues/1a1a1a)
* **gateway-ws:** drop Origin header on server-to-server WS upgrade ([#2869](https://github.com/HankHuang0516/EClaw/issues/2869)) ([716dcf9](https://github.com/HankHuang0516/EClaw/commit/716dcf9d0834b17522bb9d894bad84bc142d1a19))
* **setup-scripts:** drop Origin header on server-to-server WS upgrade ([#2875](https://github.com/HankHuang0516/EClaw/issues/2875)) ([9d893b8](https://github.com/HankHuang0516/EClaw/commit/9d893b8e5eea4db275e450bf423903c156cd3e4b)), closes [#2869](https://github.com/HankHuang0516/EClaw/issues/2869)
* **security:** escape innerHTML in chat modal error messages ([#2819](https://github.com/HankHuang0516/EClaw/issues/2819)) ([dce07ad](https://github.com/HankHuang0516/EClaw/commit/dce07adde64795916dba977ae23e46f3371ce7ed)), closes [#2809](https://github.com/HankHuang0516/EClaw/issues/2809) [#2810](https://github.com/HankHuang0516/EClaw/issues/2810) [#2809](https://github.com/HankHuang0516/EClaw/issues/2809) [#2810](https://github.com/HankHuang0516/EClaw/issues/2810)
* **entities:** expose botSecret to owner so wallpaper service can poll companions ([#2615](https://github.com/HankHuang0516/EClaw/issues/2615)) ([04470fc](https://github.com/HankHuang0516/EClaw/commit/04470fce8f8c3fce2b1ba8b243e776606f107502))
* **rental:** expose owner_public_code in marketplace so plaza CTA can route ([#2616](https://github.com/HankHuang0516/EClaw/issues/2616)) ([4d1372f](https://github.com/HankHuang0516/EClaw/commit/4d1372f717d93cab65543e87c852e74e9fb67071)), closes [#2610](https://github.com/HankHuang0516/EClaw/issues/2610)
* **mindmap:** fallback to device scope when entityId is null ([#2728](https://github.com/HankHuang0516/EClaw/issues/2728)) ([7572312](https://github.com/HankHuang0516/EClaw/commit/7572312433d3d75fc245eda48a28919ce14bd927))
* **i18n:** fill Spanish drift keys ([#2751](https://github.com/HankHuang0516/EClaw/issues/2751)) ([0ad0ee5](https://github.com/HankHuang0516/EClaw/commit/0ad0ee55f7fac3e6ac46d891539950dab4d553cc))
* **portal:** fit embedded org chart to mobile viewport ([#2674](https://github.com/HankHuang0516/EClaw/issues/2674)) ([1c4e1b4](https://github.com/HankHuang0516/EClaw/commit/1c4e1b413ea7027b4cd4b8ecda981b0d0e12e66b))
* **i18n:** fix 6 trailing-comma syntax errors in 10-locale batch ([#2771](https://github.com/HankHuang0516/EClaw/issues/2771)) ([b27c6ca](https://github.com/HankHuang0516/EClaw/commit/b27c6ca204bf813e406c54ce3a2532a5f1f031b3))
* **kanban:** GET card returns latest 50 comments + comments endpoint exposes total ([#2816](https://github.com/HankHuang0516/EClaw/issues/2816)) ([c4d83f7](https://github.com/HankHuang0516/EClaw/commit/c4d83f777a1cd26aea0936e4316aa35c52822eef))
* **sharechat:** guest verify-email modal + disabled Send for unverified ([#2865](https://github.com/HankHuang0516/EClaw/issues/2865)) ([cb3b061](https://github.com/HankHuang0516/EClaw/commit/cb3b0614e0f6160417d907753e66eceb2d666802))
* **uiux:** harden chat previews and roster preview ([#2769](https://github.com/HankHuang0516/EClaw/issues/2769)) ([466d4d3](https://github.com/HankHuang0516/EClaw/commit/466d4d3ef81c628d3f58db64323946053d7bf61c))
* **mention-parser:** ignore @-mentions inside markdown code spans ([#2645](https://github.com/HankHuang0516/EClaw/issues/2645)) ([8da19d4](https://github.com/HankHuang0516/EClaw/commit/8da19d4a79ceb4152bf2144ee0847c61ce3e1def)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **kanban:** lazy-load dependency chips via IntersectionObserver ([#2632](https://github.com/HankHuang0516/EClaw/issues/2632)) ([20586b4](https://github.com/HankHuang0516/EClaw/commit/20586b43357335f9eb6a190c02d58c8e36b58aba)), closes [#2631](https://github.com/HankHuang0516/EClaw/issues/2631)
* **kanban:** make card sorting deterministic ([#2756](https://github.com/HankHuang0516/EClaw/issues/2756)) ([48e2117](https://github.com/HankHuang0516/EClaw/commit/48e2117b64e37f05dc635e0a3b67bfd43cbe48f5))
* **org-chart:** notify affected bots on hierarchy change ([#2812](https://github.com/HankHuang0516/EClaw/issues/2812)) ([55675fd](https://github.com/HankHuang0516/EClaw/commit/55675fdf4487494d729a29524b32bd81b756a00c)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** notify reviewer on manual /move → review ([#2753](https://github.com/HankHuang0516/EClaw/issues/2753)) ([6cbbb4e](https://github.com/HankHuang0516/EClaw/commit/6cbbb4ee8c0d4d8ad54df2e9b5faaa3699bd530f))
* **wallpaper:** off-load spritesheet fetch to IO so per-petdx sprites actually render ([#2618](https://github.com/HankHuang0516/EClaw/issues/2618)) ([61b832c](https://github.com/HankHuang0516/EClaw/commit/61b832c9fa8a1d0caab810ccc942d85c63349267)), closes [#2615](https://github.com/HankHuang0516/EClaw/issues/2615) [#2577](https://github.com/HankHuang0516/EClaw/issues/2577)
* **security:** patch P0 sanitize-html XSS + P1 protobufjs + exam.html XSS ([#2829](https://github.com/HankHuang0516/EClaw/issues/2829)) ([c71b871](https://github.com/HankHuang0516/EClaw/commit/c71b871a045887375dd0d26d1a3280a0891a89ad))
* **security:** patch ws uninitialized memory disclosure (GHSA-58qx-3vcg-4xpx) ([#2872](https://github.com/HankHuang0516/EClaw/issues/2872)) ([2523d15](https://github.com/HankHuang0516/EClaw/commit/2523d154bbe501a7cc086340f7a07ece3abfa69b))
* **portal:** petdx-browser cookie-session fallback for device-login ([#2757](https://github.com/HankHuang0516/EClaw/issues/2757)) ([ca275f4](https://github.com/HankHuang0516/EClaw/commit/ca275f4519835da0c7ad71c588908a18f6f138d8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **api:** platform-stats 500 + entity/lookup publicCode alias ([#2809](https://github.com/HankHuang0516/EClaw/issues/2809), [#2810](https://github.com/HankHuang0516/EClaw/issues/2810)) ([#2818](https://github.com/HankHuang0516/EClaw/issues/2818)) ([f99fd17](https://github.com/HankHuang0516/EClaw/commit/f99fd17b2b1c32d88daa2510ff66d714c1a53edc))
* **i18n:** positional format specifiers for feedback_result_logs (7 locales) ([#2597](https://github.com/HankHuang0516/EClaw/issues/2597)) ([21aedc7](https://github.com/HankHuang0516/EClaw/commit/21aedc7eebc7a2839e340136f38dfdfd4dabb9dc))
* **avatar-petdx:** preserve descriptor across transient API failures (flicker) ([#2625](https://github.com/HankHuang0516/EClaw/issues/2625)) ([7b1c606](https://github.com/HankHuang0516/EClaw/commit/7b1c606514f7698d72ec95cf6c556e4043966186))
* **chat:** preserve scroll anchor while reading history ([#2693](https://github.com/HankHuang0516/EClaw/issues/2693)) ([945fdb7](https://github.com/HankHuang0516/EClaw/commit/945fdb7192b791b31882e1e75568dd8b11e4686f))
* **promo:** pull video embed from /promo-chat-avatar.html ([#2724](https://github.com/HankHuang0516/EClaw/issues/2724)) ([2afabc8](https://github.com/HankHuang0516/EClaw/commit/2afabc8c5ff8b25218a7cb857e8adfa572c8e9d5))
* **dashboard:** read live.rate_limits.{five_hour,seven_day}.used_percentage ([#2895](https://github.com/HankHuang0516/EClaw/issues/2895)) ([8223303](https://github.com/HankHuang0516/EClaw/commit/822330312bccb1c76675ad2c3b26e78d10dd1298))
* **kanban:** realign stale recurring schedules ([#2785](https://github.com/HankHuang0516/EClaw/issues/2785)) ([ab8ee25](https://github.com/HankHuang0516/EClaw/commit/ab8ee250a9b37f3d3e838bb01d8866c8d2b78231))
* **portal:** reduce QA-discovered request fanout ([#2656](https://github.com/HankHuang0516/EClaw/issues/2656)) ([1e46d6b](https://github.com/HankHuang0516/EClaw/commit/1e46d6bab61e58c65b452b6503d953f8dddeee75))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **portal:** remove org chart fit scale floor ([#2676](https://github.com/HankHuang0516/EClaw/issues/2676)) ([0f01606](https://github.com/HankHuang0516/EClaw/commit/0f016068b963bb5f800a02f28817c7174979d913))
* **rental:** remove phantom 'webhook test push' step from BIND_COMPLETE ([#2864](https://github.com/HankHuang0516/EClaw/issues/2864)) ([47f4a3e](https://github.com/HankHuang0516/EClaw/commit/47f4a3edf76aa95ebd06d8713cd44fda6eef9b5d))
* **i18n:** rename mm_empty_title → mm_state_empty_title in mindmap.html ([#2683](https://github.com/HankHuang0516/EClaw/issues/2683)) ([c79c109](https://github.com/HankHuang0516/EClaw/commit/c79c109bea23142e8a6d9ace976d105af1280ec9))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **chat:** render mention avatars with companion renderer ([#2633](https://github.com/HankHuang0516/EClaw/issues/2633)) ([03e205f](https://github.com/HankHuang0516/EClaw/commit/03e205f663ecd2c2f443d4009dd5af0093f0bbbb))
* **kanban:** reserve mobile comments panel height ([#2782](https://github.com/HankHuang0516/EClaw/issues/2782)) ([ce8662d](https://github.com/HankHuang0516/EClaw/commit/ce8662d362422fdd25037f1deb61dbed9425e2f9))
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* scheduled audit 2026-05-13 — 6 bugs, XSS, i18n ([#2668](https://github.com/HankHuang0516/EClaw/issues/2668)) ([21dd513](https://github.com/HankHuang0516/EClaw/commit/21dd513b4464738de29164265437435ba6cc4817)), closes [#2605](https://github.com/HankHuang0516/EClaw/issues/2605) [#2608](https://github.com/HankHuang0516/EClaw/issues/2608) [#2600](https://github.com/HankHuang0516/EClaw/issues/2600) [#2599](https://github.com/HankHuang0516/EClaw/issues/2599) [#2598](https://github.com/HankHuang0516/EClaw/issues/2598)
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **chat:** smart-chip preview falls back to inline c.comments when /comments fails (PR [#2677](https://github.com/HankHuang0516/EClaw/issues/2677)) ([7f4dffd](https://github.com/HankHuang0516/EClaw/commit/7f4dffd2c83ea86f296b8fa0610f0e67c9f1af11))
* **kanban:** stabilize comment detail viewport ([#2796](https://github.com/HankHuang0516/EClaw/issues/2796)) ([0a10aad](https://github.com/HankHuang0516/EClaw/commit/0a10aadb5a5b12ff23454c16d5c88183b94ad7d7))
* **wallpaper:** stop Android live wallpaper flashing default lobster on companion change ([#2629](https://github.com/HankHuang0516/EClaw/issues/2629)) ([8b4f66f](https://github.com/HankHuang0516/EClaw/commit/8b4f66fcb335bf43128f924b761b6337c817095b)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **chat:** stop chat.html bouncing to dashboard via /api/rental/health-status 401 race ([#2833](https://github.com/HankHuang0516/EClaw/issues/2833)) ([c422406](https://github.com/HankHuang0516/EClaw/commit/c4224067cdcfe7f3e22ab95007c7563dac4196ac))
* **openclaw-channel:** support OpenClaw 2026.5.20 ([8045de6](https://github.com/HankHuang0516/EClaw/commit/8045de6bebecfc05f9bd57453b99c098ca35681b))
* **mentions:** support same-device CJK display-name tags ([#2874](https://github.com/HankHuang0516/EClaw/issues/2874)) ([b8f61be](https://github.com/HankHuang0516/EClaw/commit/b8f61be9a3962fef75dd32ea34e8900880dafaf9))
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **dashboard:** use sessions[].project for widget Projects list (was .project_id) ([#2894](https://github.com/HankHuang0516/EClaw/issues/2894)) ([0fd1334](https://github.com/HankHuang0516/EClaw/commit/0fd1334897d4a603cc6eb74f34b48606547e09cf))
* **app:** WebView pages honor app-selected locale via ?lang= URL param ([#2672](https://github.com/HankHuang0516/EClaw/issues/2672)) ([8ed8757](https://github.com/HankHuang0516/EClaw/commit/8ed8757aec5bf214e837cc0d81bf2b23f1993a91)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **share-chat:** wire rich CTA actions to msgInput ([#2867](https://github.com/HankHuang0516/EClaw/issues/2867)) ([df23b11](https://github.com/HankHuang0516/EClaw/commit/df23b1147d34c59a644a145bbd87c18b96400acc))


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* **usage-api:** /api/usage/{snapshot,timeline} + usage_snapshots table (Plan B Phase 1) ([#2889](https://github.com/HankHuang0516/EClaw/issues/2889)) ([a0d859c](https://github.com/HankHuang0516/EClaw/commit/a0d859c63f0220909dadb2b1952174861ccdce14))
* **community:** 1-click chat button on bot cards + utm tagging ([#2610](https://github.com/HankHuang0516/EClaw/issues/2610)) ([eee97b0](https://github.com/HankHuang0516/EClaw/commit/eee97b0e2e4e74945ec24f218a69a52800b97a66))
* **chat:** accept ?messageId= as deep-link alias ([#2838](https://github.com/HankHuang0516/EClaw/issues/2838)) ([1785a87](https://github.com/HankHuang0516/EClaw/commit/1785a87310426637fd10df83754fb9924c45207f))
* **chat:** add avatar size preference ([#2714](https://github.com/HankHuang0516/EClaw/issues/2714)) ([6fe164a](https://github.com/HankHuang0516/EClaw/commit/6fe164ad8b22fa576d2dd9ad37c0d9fc295b5a83))
* **dashboard:** add Claude and Codex channel guides ([#2640](https://github.com/HankHuang0516/EClaw/issues/2640)) ([c64e4c4](https://github.com/HankHuang0516/EClaw/commit/c64e4c4afc78db58c5cd578f00486dd7b2fd3311))
* **dashboard:** add Claude Code channel guide card ([#2667](https://github.com/HankHuang0516/EClaw/issues/2667)) ([d70d75c](https://github.com/HankHuang0516/EClaw/commit/d70d75c0c8caa8a540358a9aab4556b8c1927a5c))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* **kanban:** add device-scoped card tags ([#2773](https://github.com/HankHuang0516/EClaw/issues/2773)) ([53a387e](https://github.com/HankHuang0516/EClaw/commit/53a387e67ba7bb4f6bed1c427000c4ae8666577a))
* **portal:** add entity selector to petdx-browser ([#2602](https://github.com/HankHuang0516/EClaw/issues/2602)) ([3fa067e](https://github.com/HankHuang0516/EClaw/commit/3fa067e00b38829b48a37cecd33ee81a9a1122d9))
* **kanban:** add explicit card links ([#2721](https://github.com/HankHuang0516/EClaw/issues/2721)) ([ef9f812](https://github.com/HankHuang0516/EClaw/commit/ef9f812a3fcf39efd07fd158ce90951bdd045ac7))
* **kanban:** add explicit done-card reopen flow ([#2801](https://github.com/HankHuang0516/EClaw/issues/2801)) ([5080aac](https://github.com/HankHuang0516/EClaw/commit/5080aacb75047c0deaa379ee708ec85465afd57c))
* **mindmap:** add GET /api/mindmap/graph force-graph projection ([#2680](https://github.com/HankHuang0516/EClaw/issues/2680)) ([a00b2e7](https://github.com/HankHuang0516/EClaw/commit/a00b2e775af2c4c98cd157f760ad87aeeee469f0)), closes [#2679](https://github.com/HankHuang0516/EClaw/issues/2679) [#2679](https://github.com/HankHuang0516/EClaw/issues/2679)
* **dashboard:** add Hermes channel promo card ([#2708](https://github.com/HankHuang0516/EClaw/issues/2708)) ([337aca1](https://github.com/HankHuang0516/EClaw/commit/337aca153d5a1cd7e888c065f00ae54db7872d91))
* **rental:** add listing soft pause ([#2781](https://github.com/HankHuang0516/EClaw/issues/2781)) ([6586b72](https://github.com/HankHuang0516/EClaw/commit/6586b72717ddb1637d91cd3242c8d2ff554f62b4))
* **portal:** add Nagoya 5D4N trip static cross-ref page ([#2689](https://github.com/HankHuang0516/EClaw/issues/2689)) ([2e0efb6](https://github.com/HankHuang0516/EClaw/commit/2e0efb6dcdaff52226cc8854a96747000b12bdff))
* **portal:** add Nagoya trip map links and image lightbox ([#2821](https://github.com/HankHuang0516/EClaw/issues/2821)) ([3e40955](https://github.com/HankHuang0516/EClaw/commit/3e40955650a05f45a6b9f7e39e73847705424a03))
* **portal/nagoya:** add parking shortcut buttons next to itinerary places ([#2826](https://github.com/HankHuang0516/EClaw/issues/2826)) ([63968c5](https://github.com/HankHuang0516/EClaw/commit/63968c554d046afc8d978de74e3aacbf7700500d))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **settings:** add rental roster management preview ([#2758](https://github.com/HankHuang0516/EClaw/issues/2758)) ([9706e59](https://github.com/HankHuang0516/EClaw/commit/9706e59ded140a90a6e02348124282bc69d89001))
* **rental:** add renter health chat indicator ([#2690](https://github.com/HankHuang0516/EClaw/issues/2690)) ([36cd2e9](https://github.com/HankHuang0516/EClaw/commit/36cd2e9802be4c7ebb03d3024617fa74aca48ffd))
* **ios:** add Tutorial & Intro entry in Settings ([#2800](https://github.com/HankHuang0516/EClaw/issues/2800)) ([ed83e51](https://github.com/HankHuang0516/EClaw/commit/ed83e51d043bf4cd5865f38dc95a91ed54820d6c))
* **landing:** add Watch Full Demo CTA below hero video ([#2799](https://github.com/HankHuang0516/EClaw/issues/2799)) ([66107c9](https://github.com/HankHuang0516/EClaw/commit/66107c954727551fd34d989a4674daaad9b63968))
* **footer:** add Watch Intro Video link in Info column ([#2798](https://github.com/HankHuang0516/EClaw/issues/2798)) ([d7c6d59](https://github.com/HankHuang0516/EClaw/commit/d7c6d596b69c6a5b257bf1f7a792a407ef9712ad))
* **i18n:** ar iter-2 — fill 623 missing keys against en source ([#2847](https://github.com/HankHuang0516/EClaw/issues/2847)) ([ee94a7a](https://github.com/HankHuang0516/EClaw/commit/ee94a7ae6812b5163efe4284ee4907ca32302f5c))
* **kanban:** backlog launch-gate flag to suppress L1/L2/L3 escalation ([#2855](https://github.com/HankHuang0516/EClaw/issues/2855)) ([cb8bf1b](https://github.com/HankHuang0516/EClaw/commit/cb8bf1bb6421f25214f65e129a8cadccc49cc266)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#4](https://github.com/HankHuang0516/EClaw/issues/4) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **companion:** bridge crafter-station/petdex gallery (1784 pets) ([#2601](https://github.com/HankHuang0516/EClaw/issues/2601)) ([2e245be](https://github.com/HankHuang0516/EClaw/commit/2e245bea6dd47ea7361b927d389188a3c23b6bb3))
* **promo:** chat avatar size feature landing page (self-hosted MP4) ([#2722](https://github.com/HankHuang0516/EClaw/issues/2722)) ([3852210](https://github.com/HankHuang0516/EClaw/commit/3852210d355704d018e3daca6b5f9512a011b210)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **kanban:** cron-spawn jitter + lane backpressure to prevent same-tick wedge ([#2791](https://github.com/HankHuang0516/EClaw/issues/2791)) ([9f414a7](https://github.com/HankHuang0516/EClaw/commit/9f414a731d6393672a0a4189c7b408c529ae5e12)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **portal:** dashboard usage widget — Claude/Codex 5h gauges + 24h chart (Plan B Phase 3) ([#2891](https://github.com/HankHuang0516/EClaw/issues/2891)) ([d18f373](https://github.com/HankHuang0516/EClaw/commit/d18f373857e4bd302437d6bda2a1e01871fbb1db))
* **portal:** dashboard usage widget v2 — Session/Weekly % bars + projects, no cost (Plan B Phase 3.1) ([#2893](https://github.com/HankHuang0516/EClaw/issues/2893)) ([4bc0dc7](https://github.com/HankHuang0516/EClaw/commit/4bc0dc744ed9d54dfd532ebac4b705c7f84ec0a6))
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **promo:** embed daily eclaw video 2026-05-14 ([#2786](https://github.com/HankHuang0516/EClaw/issues/2786)) ([718a814](https://github.com/HankHuang0516/EClaw/commit/718a814ab16850bc2b33a1b303841e2c4378ecfa)), closes [#2782](https://github.com/HankHuang0516/EClaw/issues/2782) [#2693](https://github.com/HankHuang0516/EClaw/issues/2693)
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **info:** embed promo video at top of Quick Start tab ([#2797](https://github.com/HankHuang0516/EClaw/issues/2797)) ([047679f](https://github.com/HankHuang0516/EClaw/commit/047679fd57ab9949eaeacea414d5611e71afe041))
* **rental:** enforce strict rebind refunds ([#2703](https://github.com/HankHuang0516/EClaw/issues/2703)) ([a1859c5](https://github.com/HankHuang0516/EClaw/commit/a1859c50e6fb3991d7a8051491502d824a14a116))
* **portal:** group task chip actions ([#2825](https://github.com/HankHuang0516/EClaw/issues/2825)) ([5db5c59](https://github.com/HankHuang0516/EClaw/commit/5db5c59b32b8635f1412205faf0c2f9164d3d5d4))
* **portal:** info-guide-rules + info-guide-soul slide pair ([#2793](https://github.com/HankHuang0516/EClaw/issues/2793)) ([1c8bddc](https://github.com/HankHuang0516/EClaw/commit/1c8bddc4c185054b2b60088498e3d45509117127)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **chat:** link card previews to kanban ([#2754](https://github.com/HankHuang0516/EClaw/issues/2754)) ([2261240](https://github.com/HankHuang0516/EClaw/commit/22612402c2e95efb07246629e81a849be41ee9c7))
* **mission:** link notes to kanban cards ([#2723](https://github.com/HankHuang0516/EClaw/issues/2723)) ([b36dc18](https://github.com/HankHuang0516/EClaw/commit/b36dc18f3a8facf12e0b6046351c222f1e99dc55))
* **usage-daemon:** macOS launchd daemon polls Claude/Codex usage → POST /api/usage/snapshot (Plan B Phase 2) ([#2890](https://github.com/HankHuang0516/EClaw/issues/2890)) ([fd225e1](https://github.com/HankHuang0516/EClaw/commit/fd225e12d9491037be1a340bd63b54b5f3308c7f))
* **mindmap:** mission.html link to /portal/mindmap.html + deprecate /api/mission/mindmap ([#2685](https://github.com/HankHuang0516/EClaw/issues/2685)) ([11e297b](https://github.com/HankHuang0516/EClaw/commit/11e297bab1c9b56fcde3027d6500b7c58891bf18)), closes [#2680](https://github.com/HankHuang0516/EClaw/issues/2680) [#2684](https://github.com/HankHuang0516/EClaw/issues/2684)
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **portal:** nagoya trip interactive map (Leaflet + OSM, no API key) ([#2888](https://github.com/HankHuang0516/EClaw/issues/2888)) ([ecfdac0](https://github.com/HankHuang0516/EClaw/commit/ecfdac06348c12ee7c6872c6c28d5f82162e7aa9))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **settings:** per-entity nudge override UI (Phase 2) ([#2837](https://github.com/HankHuang0516/EClaw/issues/2837)) ([ea7662b](https://github.com/HankHuang0516/EClaw/commit/ea7662b0858882dae461e1387f711895924f9ab8)), closes [3/#4](https://github.com/HankHuang0516/EClaw/issues/4)
* **kanban:** per-entity nudge overrides (Phase 2 of card_e066cb6b) ([#2836](https://github.com/HankHuang0516/EClaw/issues/2836)) ([0425f80](https://github.com/HankHuang0516/EClaw/commit/0425f80bc1169c0d506b665659c8676695c45553))
* **avatar:** petdx render on card-holder my-cards (Phase 1b) ([#2621](https://github.com/HankHuang0516/EClaw/issues/2621)) ([f78ba8b](https://github.com/HankHuang0516/EClaw/commit/f78ba8b18acc426936ab6d8a82ca7541effea00d))
* **avatar:** petdx render on dashboard entity grid / org chart / bindings (Phase 1b) ([#2622](https://github.com/HankHuang0516/EClaw/issues/2622)) ([f417749](https://github.com/HankHuang0516/EClaw/commit/f41774914451048e8cd76e9ae30416a0642e173b)), closes [#2620](https://github.com/HankHuang0516/EClaw/issues/2620) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621)
* **avatar:** petdx render on kanban auto-assign / pulse / comment avatars (Phase 1b) ([#2624](https://github.com/HankHuang0516/EClaw/issues/2624)) ([6bff5f8](https://github.com/HankHuang0516/EClaw/commit/6bff5f80440d0bd91a6b1721cde9478d685c4d46))
* **avatar:** petdx render on mission skill/rule/soul entity dialogs (Phase 1b) ([#2623](https://github.com/HankHuang0516/EClaw/issues/2623)) ([129327b](https://github.com/HankHuang0516/EClaw/commit/129327bc7b91056659f1ab7e8d5e3f5260d951fb))
* **mindmap:** portal/mindmap.html force-graph prototype ([#129](https://github.com/HankHuang0516/EClaw/issues/129)) ([#2681](https://github.com/HankHuang0516/EClaw/issues/2681)) ([0f15e69](https://github.com/HankHuang0516/EClaw/commit/0f15e6930f0697c37fa08f3219edb8f9e499837f)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **portal:** redo nagoya trip page in professional tour-guide style ([#2691](https://github.com/HankHuang0516/EClaw/issues/2691)) ([b2378c0](https://github.com/HankHuang0516/EClaw/commit/b2378c06ee20fa9cccfdceceb1a4c9e0b3072f59))
* **i18n:** remove ms+hi orphan keys from i18n.js ([#2849](https://github.com/HankHuang0516/EClaw/issues/2849)) ([320176c](https://github.com/HankHuang0516/EClaw/commit/320176c06a3cfd8631e2a82ad02a6bd6a9af0389))
* **avatar:** render selected petdx companion in chat avatars ([#2620](https://github.com/HankHuang0516/EClaw/issues/2620)) ([0bdd046](https://github.com/HankHuang0516/EClaw/commit/0bdd046fe1b1c428e32edda366ff112c08927f4c))
* **home:** replace native home with WebView hosting dashboard.html ([#2634](https://github.com/HankHuang0516/EClaw/issues/2634)) ([e69ea81](https://github.com/HankHuang0516/EClaw/commit/e69ea8160c239b083a83d6dc83a4f1c3f901c863))
* **app:** route chat mission jumps through native tabs ([#2824](https://github.com/HankHuang0516/EClaw/issues/2824)) ([deb07b6](https://github.com/HankHuang0516/EClaw/commit/deb07b69a9ecca632fe27278de537f1d85234e94))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **chat:** support message deep links ([#2719](https://github.com/HankHuang0516/EClaw/issues/2719)) ([2dc0f1e](https://github.com/HankHuang0516/EClaw/commit/2dc0f1eeb259e1a0848db4a03186b989372cd91c))
* **mission:** support note deep links ([#2717](https://github.com/HankHuang0516/EClaw/issues/2717)) ([2efd3a5](https://github.com/HankHuang0516/EClaw/commit/2efd3a5e741217a07c0b0ac54a0ddd010e0ebe23))
* **share-chat:** twitter card + per-bot og:image/twitter:* in SSR ([#2609](https://github.com/HankHuang0516/EClaw/issues/2609)) ([6cdc853](https://github.com/HankHuang0516/EClaw/commit/6cdc853dc884cdb95bd47214942768981f218ae0))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))
* **settings:** wire petdx avatar into channel-account chips ([#2626](https://github.com/HankHuang0516/EClaw/issues/2626)) ([88aec77](https://github.com/HankHuang0516/EClaw/commit/88aec772628c240e97b336bb5820892ad632d1ae))
* **files:** wire petdx avatar into entity filter & per-file badges ([#2627](https://github.com/HankHuang0516/EClaw/issues/2627)) ([5b3e5cc](https://github.com/HankHuang0516/EClaw/commit/5b3e5cc542d9da69bb4e92500fd03a542ea33f00))
* **mindmap:** wrap hardcoded zh-TW UI strings with i18n t() ([#2607](https://github.com/HankHuang0516/EClaw/issues/2607)) ([166af87](https://github.com/HankHuang0516/EClaw/commit/166af8772b2121a24aaf34a83b3de970e9b3b571)), closes [#2606](https://github.com/HankHuang0516/EClaw/issues/2606)
* **i18n:** zh-TW backfill 8 keys (soft-pause + chat + invite + wallet) ([#2815](https://github.com/HankHuang0516/EClaw/issues/2815)) ([a2dd574](https://github.com/HankHuang0516/EClaw/commit/a2dd5743ce8d43a4b6ace9a2fd4b52568180d6c5))


### Performance Improvements

* **mindmap:** force-graph hardening for 1000/2000-node graphs ([#2684](https://github.com/HankHuang0516/EClaw/issues/2684)) ([da8b1c8](https://github.com/HankHuang0516/EClaw/commit/da8b1c8f947ab8bc8fa455c1962a91146623a1fc))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-23)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **notifications:** add kanban_done + kanban_done_auto toggles to Android Settings ([#2636](https://github.com/HankHuang0516/EClaw/issues/2636)) ([a710909](https://github.com/HankHuang0516/EClaw/commit/a7109095e3393b8564e7ef1b23d382a4fbb944b8))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **i18n:** ar block — fix 27 broken entries (CJK leaks + truncated HTML) ([#2851](https://github.com/HankHuang0516/EClaw/issues/2851)) ([5b19175](https://github.com/HankHuang0516/EClaw/commit/5b19175d712d00d16fcec00b749035c4beae7a5c))
* **chat:** atomic-load target bar (await contacts before first render) ([#2831](https://github.com/HankHuang0516/EClaw/issues/2831)) ([5f529e6](https://github.com/HankHuang0516/EClaw/commit/5f529e6b772eacc38ba1de69b44258a05f0d816a)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2](https://github.com/HankHuang0516/EClaw/issues/2)
* **channel:** await binding persistence ([712516d](https://github.com/HankHuang0516/EClaw/commit/712516decafb745035bd1434a28cc1973d433e19))
* **rental:** bump handshake timeout to 60s + timeout-aware discovery fallback ([#2863](https://github.com/HankHuang0516/EClaw/issues/2863)) ([fd4322f](https://github.com/HankHuang0516/EClaw/commit/fd4322f8890f3c2dfca3acdae6a4b95f19c381f9)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **i18n:** clear batch 1 residual missing keys ([#2790](https://github.com/HankHuang0516/EClaw/issues/2790)) ([211030e](https://github.com/HankHuang0516/EClaw/commit/211030e0b0b6a865c11f0c4ed60dc4e356d43b7a))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **kanban:** comment input no longer overlaps last comment in card detail (PR [#2678](https://github.com/HankHuang0516/EClaw/issues/2678)) ([fba91fc](https://github.com/HankHuang0516/EClaw/commit/fba91fca15402b453a0db5ee857c0b16e6087055))
* **chat:** compact 20px avatar in target bar (App WebView only shows [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2](https://github.com/HankHuang0516/EClaw/issues/2)) ([#2830](https://github.com/HankHuang0516/EClaw/issues/2830)) ([42c7543](https://github.com/HankHuang0516/EClaw/commit/42c7543b4a78a7abf3f5f7535eb9bc6142cd0fe2)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **portal:** complete 401 redirect sweep + mobile UIUX truncation ([#2842](https://github.com/HankHuang0516/EClaw/issues/2842)) ([f9799ba](https://github.com/HankHuang0516/EClaw/commit/f9799ba42498b109f0a8a70e80836aa6da51e216)), closes [#2833](https://github.com/HankHuang0516/EClaw/issues/2833) [#2845](https://github.com/HankHuang0516/EClaw/issues/2845) [#2844](https://github.com/HankHuang0516/EClaw/issues/2844) [#2843](https://github.com/HankHuang0516/EClaw/issues/2843)
* **uiux:** continue qa mobile readability sweep ([#2854](https://github.com/HankHuang0516/EClaw/issues/2854)) ([57606ff](https://github.com/HankHuang0516/EClaw/commit/57606ffe3e543b07a026aacc53c4b470c9a7825b))
* **i18n:** cover dynamic portal wrapper keys ([#2807](https://github.com/HankHuang0516/EClaw/issues/2807)) ([4c711cc](https://github.com/HankHuang0516/EClaw/commit/4c711cc4009300ffe4e8933a98ee01cd0fdd6aeb))
* **i18n:** dedup 20 dash_channel_card_* keys in es block ([#2876](https://github.com/HankHuang0516/EClaw/issues/2876)) ([807284c](https://github.com/HankHuang0516/EClaw/commit/807284ce363ef119ccdb0ae40e5ce99d3f0a27e0))
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **rental:** don't pollute entity.message on push gateway timeout ([#2860](https://github.com/HankHuang0516/EClaw/issues/2860)) ([592ba44](https://github.com/HankHuang0516/EClaw/commit/592ba44f57536ee00011b6cbddaa6b129a7cbae9))
* **petdx:** drop dark-grey loading placeholder + preload sprite WEBP ([#2628](https://github.com/HankHuang0516/EClaw/issues/2628)) ([59cef38](https://github.com/HankHuang0516/EClaw/commit/59cef387bd69ca99d7d15c86a1364856d3849ad8)), closes [#1a1a1a](https://github.com/HankHuang0516/EClaw/issues/1a1a1a)
* **gateway-ws:** drop Origin header on server-to-server WS upgrade ([#2869](https://github.com/HankHuang0516/EClaw/issues/2869)) ([716dcf9](https://github.com/HankHuang0516/EClaw/commit/716dcf9d0834b17522bb9d894bad84bc142d1a19))
* **setup-scripts:** drop Origin header on server-to-server WS upgrade ([#2875](https://github.com/HankHuang0516/EClaw/issues/2875)) ([9d893b8](https://github.com/HankHuang0516/EClaw/commit/9d893b8e5eea4db275e450bf423903c156cd3e4b)), closes [#2869](https://github.com/HankHuang0516/EClaw/issues/2869)
* **security:** escape innerHTML in chat modal error messages ([#2819](https://github.com/HankHuang0516/EClaw/issues/2819)) ([dce07ad](https://github.com/HankHuang0516/EClaw/commit/dce07adde64795916dba977ae23e46f3371ce7ed)), closes [#2809](https://github.com/HankHuang0516/EClaw/issues/2809) [#2810](https://github.com/HankHuang0516/EClaw/issues/2810) [#2809](https://github.com/HankHuang0516/EClaw/issues/2809) [#2810](https://github.com/HankHuang0516/EClaw/issues/2810)
* **entities:** expose botSecret to owner so wallpaper service can poll companions ([#2615](https://github.com/HankHuang0516/EClaw/issues/2615)) ([04470fc](https://github.com/HankHuang0516/EClaw/commit/04470fce8f8c3fce2b1ba8b243e776606f107502))
* **rental:** expose owner_public_code in marketplace so plaza CTA can route ([#2616](https://github.com/HankHuang0516/EClaw/issues/2616)) ([4d1372f](https://github.com/HankHuang0516/EClaw/commit/4d1372f717d93cab65543e87c852e74e9fb67071)), closes [#2610](https://github.com/HankHuang0516/EClaw/issues/2610)
* **mindmap:** fallback to device scope when entityId is null ([#2728](https://github.com/HankHuang0516/EClaw/issues/2728)) ([7572312](https://github.com/HankHuang0516/EClaw/commit/7572312433d3d75fc245eda48a28919ce14bd927))
* **i18n:** fill Spanish drift keys ([#2751](https://github.com/HankHuang0516/EClaw/issues/2751)) ([0ad0ee5](https://github.com/HankHuang0516/EClaw/commit/0ad0ee55f7fac3e6ac46d891539950dab4d553cc))
* **portal:** fit embedded org chart to mobile viewport ([#2674](https://github.com/HankHuang0516/EClaw/issues/2674)) ([1c4e1b4](https://github.com/HankHuang0516/EClaw/commit/1c4e1b413ea7027b4cd4b8ecda981b0d0e12e66b))
* **i18n:** fix 6 trailing-comma syntax errors in 10-locale batch ([#2771](https://github.com/HankHuang0516/EClaw/issues/2771)) ([b27c6ca](https://github.com/HankHuang0516/EClaw/commit/b27c6ca204bf813e406c54ce3a2532a5f1f031b3))
* **kanban:** GET card returns latest 50 comments + comments endpoint exposes total ([#2816](https://github.com/HankHuang0516/EClaw/issues/2816)) ([c4d83f7](https://github.com/HankHuang0516/EClaw/commit/c4d83f777a1cd26aea0936e4316aa35c52822eef))
* **sharechat:** guest verify-email modal + disabled Send for unverified ([#2865](https://github.com/HankHuang0516/EClaw/issues/2865)) ([cb3b061](https://github.com/HankHuang0516/EClaw/commit/cb3b0614e0f6160417d907753e66eceb2d666802))
* **uiux:** harden chat previews and roster preview ([#2769](https://github.com/HankHuang0516/EClaw/issues/2769)) ([466d4d3](https://github.com/HankHuang0516/EClaw/commit/466d4d3ef81c628d3f58db64323946053d7bf61c))
* **mention-parser:** ignore @-mentions inside markdown code spans ([#2645](https://github.com/HankHuang0516/EClaw/issues/2645)) ([8da19d4](https://github.com/HankHuang0516/EClaw/commit/8da19d4a79ceb4152bf2144ee0847c61ce3e1def)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **kanban:** lazy-load dependency chips via IntersectionObserver ([#2632](https://github.com/HankHuang0516/EClaw/issues/2632)) ([20586b4](https://github.com/HankHuang0516/EClaw/commit/20586b43357335f9eb6a190c02d58c8e36b58aba)), closes [#2631](https://github.com/HankHuang0516/EClaw/issues/2631)
* **kanban:** make card sorting deterministic ([#2756](https://github.com/HankHuang0516/EClaw/issues/2756)) ([48e2117](https://github.com/HankHuang0516/EClaw/commit/48e2117b64e37f05dc635e0a3b67bfd43cbe48f5))
* **org-chart:** notify affected bots on hierarchy change ([#2812](https://github.com/HankHuang0516/EClaw/issues/2812)) ([55675fd](https://github.com/HankHuang0516/EClaw/commit/55675fdf4487494d729a29524b32bd81b756a00c)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** notify reviewer on manual /move → review ([#2753](https://github.com/HankHuang0516/EClaw/issues/2753)) ([6cbbb4e](https://github.com/HankHuang0516/EClaw/commit/6cbbb4ee8c0d4d8ad54df2e9b5faaa3699bd530f))
* **wallpaper:** off-load spritesheet fetch to IO so per-petdx sprites actually render ([#2618](https://github.com/HankHuang0516/EClaw/issues/2618)) ([61b832c](https://github.com/HankHuang0516/EClaw/commit/61b832c9fa8a1d0caab810ccc942d85c63349267)), closes [#2615](https://github.com/HankHuang0516/EClaw/issues/2615) [#2577](https://github.com/HankHuang0516/EClaw/issues/2577)
* **security:** patch P0 sanitize-html XSS + P1 protobufjs + exam.html XSS ([#2829](https://github.com/HankHuang0516/EClaw/issues/2829)) ([c71b871](https://github.com/HankHuang0516/EClaw/commit/c71b871a045887375dd0d26d1a3280a0891a89ad))
* **security:** patch ws uninitialized memory disclosure (GHSA-58qx-3vcg-4xpx) ([#2872](https://github.com/HankHuang0516/EClaw/issues/2872)) ([2523d15](https://github.com/HankHuang0516/EClaw/commit/2523d154bbe501a7cc086340f7a07ece3abfa69b))
* **portal:** petdx-browser cookie-session fallback for device-login ([#2757](https://github.com/HankHuang0516/EClaw/issues/2757)) ([ca275f4](https://github.com/HankHuang0516/EClaw/commit/ca275f4519835da0c7ad71c588908a18f6f138d8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **api:** platform-stats 500 + entity/lookup publicCode alias ([#2809](https://github.com/HankHuang0516/EClaw/issues/2809), [#2810](https://github.com/HankHuang0516/EClaw/issues/2810)) ([#2818](https://github.com/HankHuang0516/EClaw/issues/2818)) ([f99fd17](https://github.com/HankHuang0516/EClaw/commit/f99fd17b2b1c32d88daa2510ff66d714c1a53edc))
* **i18n:** positional format specifiers for feedback_result_logs (7 locales) ([#2597](https://github.com/HankHuang0516/EClaw/issues/2597)) ([21aedc7](https://github.com/HankHuang0516/EClaw/commit/21aedc7eebc7a2839e340136f38dfdfd4dabb9dc))
* **avatar-petdx:** preserve descriptor across transient API failures (flicker) ([#2625](https://github.com/HankHuang0516/EClaw/issues/2625)) ([7b1c606](https://github.com/HankHuang0516/EClaw/commit/7b1c606514f7698d72ec95cf6c556e4043966186))
* **chat:** preserve scroll anchor while reading history ([#2693](https://github.com/HankHuang0516/EClaw/issues/2693)) ([945fdb7](https://github.com/HankHuang0516/EClaw/commit/945fdb7192b791b31882e1e75568dd8b11e4686f))
* **promo:** pull video embed from /promo-chat-avatar.html ([#2724](https://github.com/HankHuang0516/EClaw/issues/2724)) ([2afabc8](https://github.com/HankHuang0516/EClaw/commit/2afabc8c5ff8b25218a7cb857e8adfa572c8e9d5))
* **kanban:** realign stale recurring schedules ([#2785](https://github.com/HankHuang0516/EClaw/issues/2785)) ([ab8ee25](https://github.com/HankHuang0516/EClaw/commit/ab8ee250a9b37f3d3e838bb01d8866c8d2b78231))
* **portal:** reduce QA-discovered request fanout ([#2656](https://github.com/HankHuang0516/EClaw/issues/2656)) ([1e46d6b](https://github.com/HankHuang0516/EClaw/commit/1e46d6bab61e58c65b452b6503d953f8dddeee75))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **portal:** remove org chart fit scale floor ([#2676](https://github.com/HankHuang0516/EClaw/issues/2676)) ([0f01606](https://github.com/HankHuang0516/EClaw/commit/0f016068b963bb5f800a02f28817c7174979d913))
* **rental:** remove phantom 'webhook test push' step from BIND_COMPLETE ([#2864](https://github.com/HankHuang0516/EClaw/issues/2864)) ([47f4a3e](https://github.com/HankHuang0516/EClaw/commit/47f4a3edf76aa95ebd06d8713cd44fda6eef9b5d))
* **i18n:** rename mm_empty_title → mm_state_empty_title in mindmap.html ([#2683](https://github.com/HankHuang0516/EClaw/issues/2683)) ([c79c109](https://github.com/HankHuang0516/EClaw/commit/c79c109bea23142e8a6d9ace976d105af1280ec9))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **chat:** render mention avatars with companion renderer ([#2633](https://github.com/HankHuang0516/EClaw/issues/2633)) ([03e205f](https://github.com/HankHuang0516/EClaw/commit/03e205f663ecd2c2f443d4009dd5af0093f0bbbb))
* **kanban:** reserve mobile comments panel height ([#2782](https://github.com/HankHuang0516/EClaw/issues/2782)) ([ce8662d](https://github.com/HankHuang0516/EClaw/commit/ce8662d362422fdd25037f1deb61dbed9425e2f9))
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* scheduled audit 2026-05-13 — 6 bugs, XSS, i18n ([#2668](https://github.com/HankHuang0516/EClaw/issues/2668)) ([21dd513](https://github.com/HankHuang0516/EClaw/commit/21dd513b4464738de29164265437435ba6cc4817)), closes [#2605](https://github.com/HankHuang0516/EClaw/issues/2605) [#2608](https://github.com/HankHuang0516/EClaw/issues/2608) [#2600](https://github.com/HankHuang0516/EClaw/issues/2600) [#2599](https://github.com/HankHuang0516/EClaw/issues/2599) [#2598](https://github.com/HankHuang0516/EClaw/issues/2598)
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **chat:** smart-chip preview falls back to inline c.comments when /comments fails (PR [#2677](https://github.com/HankHuang0516/EClaw/issues/2677)) ([7f4dffd](https://github.com/HankHuang0516/EClaw/commit/7f4dffd2c83ea86f296b8fa0610f0e67c9f1af11))
* **kanban:** stabilize comment detail viewport ([#2796](https://github.com/HankHuang0516/EClaw/issues/2796)) ([0a10aad](https://github.com/HankHuang0516/EClaw/commit/0a10aadb5a5b12ff23454c16d5c88183b94ad7d7))
* **wallpaper:** stop Android live wallpaper flashing default lobster on companion change ([#2629](https://github.com/HankHuang0516/EClaw/issues/2629)) ([8b4f66f](https://github.com/HankHuang0516/EClaw/commit/8b4f66fcb335bf43128f924b761b6337c817095b)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **chat:** stop chat.html bouncing to dashboard via /api/rental/health-status 401 race ([#2833](https://github.com/HankHuang0516/EClaw/issues/2833)) ([c422406](https://github.com/HankHuang0516/EClaw/commit/c4224067cdcfe7f3e22ab95007c7563dac4196ac))
* **openclaw-channel:** support OpenClaw 2026.5.20 ([8045de6](https://github.com/HankHuang0516/EClaw/commit/8045de6bebecfc05f9bd57453b99c098ca35681b))
* **mentions:** support same-device CJK display-name tags ([#2874](https://github.com/HankHuang0516/EClaw/issues/2874)) ([b8f61be](https://github.com/HankHuang0516/EClaw/commit/b8f61be9a3962fef75dd32ea34e8900880dafaf9))
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **dashboard:** use sessions[].project for widget Projects list (was .project_id) ([#2894](https://github.com/HankHuang0516/EClaw/issues/2894)) ([0fd1334](https://github.com/HankHuang0516/EClaw/commit/0fd1334897d4a603cc6eb74f34b48606547e09cf))
* **app:** WebView pages honor app-selected locale via ?lang= URL param ([#2672](https://github.com/HankHuang0516/EClaw/issues/2672)) ([8ed8757](https://github.com/HankHuang0516/EClaw/commit/8ed8757aec5bf214e837cc0d81bf2b23f1993a91)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **share-chat:** wire rich CTA actions to msgInput ([#2867](https://github.com/HankHuang0516/EClaw/issues/2867)) ([df23b11](https://github.com/HankHuang0516/EClaw/commit/df23b1147d34c59a644a145bbd87c18b96400acc))


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* **usage-api:** /api/usage/{snapshot,timeline} + usage_snapshots table (Plan B Phase 1) ([#2889](https://github.com/HankHuang0516/EClaw/issues/2889)) ([a0d859c](https://github.com/HankHuang0516/EClaw/commit/a0d859c63f0220909dadb2b1952174861ccdce14))
* **community:** 1-click chat button on bot cards + utm tagging ([#2610](https://github.com/HankHuang0516/EClaw/issues/2610)) ([eee97b0](https://github.com/HankHuang0516/EClaw/commit/eee97b0e2e4e74945ec24f218a69a52800b97a66))
* **chat:** accept ?messageId= as deep-link alias ([#2838](https://github.com/HankHuang0516/EClaw/issues/2838)) ([1785a87](https://github.com/HankHuang0516/EClaw/commit/1785a87310426637fd10df83754fb9924c45207f))
* **chat:** add avatar size preference ([#2714](https://github.com/HankHuang0516/EClaw/issues/2714)) ([6fe164a](https://github.com/HankHuang0516/EClaw/commit/6fe164ad8b22fa576d2dd9ad37c0d9fc295b5a83))
* **dashboard:** add Claude and Codex channel guides ([#2640](https://github.com/HankHuang0516/EClaw/issues/2640)) ([c64e4c4](https://github.com/HankHuang0516/EClaw/commit/c64e4c4afc78db58c5cd578f00486dd7b2fd3311))
* **dashboard:** add Claude Code channel guide card ([#2667](https://github.com/HankHuang0516/EClaw/issues/2667)) ([d70d75c](https://github.com/HankHuang0516/EClaw/commit/d70d75c0c8caa8a540358a9aab4556b8c1927a5c))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* **kanban:** add device-scoped card tags ([#2773](https://github.com/HankHuang0516/EClaw/issues/2773)) ([53a387e](https://github.com/HankHuang0516/EClaw/commit/53a387e67ba7bb4f6bed1c427000c4ae8666577a))
* **portal:** add entity selector to petdx-browser ([#2602](https://github.com/HankHuang0516/EClaw/issues/2602)) ([3fa067e](https://github.com/HankHuang0516/EClaw/commit/3fa067e00b38829b48a37cecd33ee81a9a1122d9))
* **kanban:** add explicit card links ([#2721](https://github.com/HankHuang0516/EClaw/issues/2721)) ([ef9f812](https://github.com/HankHuang0516/EClaw/commit/ef9f812a3fcf39efd07fd158ce90951bdd045ac7))
* **kanban:** add explicit done-card reopen flow ([#2801](https://github.com/HankHuang0516/EClaw/issues/2801)) ([5080aac](https://github.com/HankHuang0516/EClaw/commit/5080aacb75047c0deaa379ee708ec85465afd57c))
* **mindmap:** add GET /api/mindmap/graph force-graph projection ([#2680](https://github.com/HankHuang0516/EClaw/issues/2680)) ([a00b2e7](https://github.com/HankHuang0516/EClaw/commit/a00b2e775af2c4c98cd157f760ad87aeeee469f0)), closes [#2679](https://github.com/HankHuang0516/EClaw/issues/2679) [#2679](https://github.com/HankHuang0516/EClaw/issues/2679)
* **dashboard:** add Hermes channel promo card ([#2708](https://github.com/HankHuang0516/EClaw/issues/2708)) ([337aca1](https://github.com/HankHuang0516/EClaw/commit/337aca153d5a1cd7e888c065f00ae54db7872d91))
* **rental:** add listing soft pause ([#2781](https://github.com/HankHuang0516/EClaw/issues/2781)) ([6586b72](https://github.com/HankHuang0516/EClaw/commit/6586b72717ddb1637d91cd3242c8d2ff554f62b4))
* **portal:** add Nagoya 5D4N trip static cross-ref page ([#2689](https://github.com/HankHuang0516/EClaw/issues/2689)) ([2e0efb6](https://github.com/HankHuang0516/EClaw/commit/2e0efb6dcdaff52226cc8854a96747000b12bdff))
* **portal:** add Nagoya trip map links and image lightbox ([#2821](https://github.com/HankHuang0516/EClaw/issues/2821)) ([3e40955](https://github.com/HankHuang0516/EClaw/commit/3e40955650a05f45a6b9f7e39e73847705424a03))
* **portal/nagoya:** add parking shortcut buttons next to itinerary places ([#2826](https://github.com/HankHuang0516/EClaw/issues/2826)) ([63968c5](https://github.com/HankHuang0516/EClaw/commit/63968c554d046afc8d978de74e3aacbf7700500d))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **settings:** add rental roster management preview ([#2758](https://github.com/HankHuang0516/EClaw/issues/2758)) ([9706e59](https://github.com/HankHuang0516/EClaw/commit/9706e59ded140a90a6e02348124282bc69d89001))
* **rental:** add renter health chat indicator ([#2690](https://github.com/HankHuang0516/EClaw/issues/2690)) ([36cd2e9](https://github.com/HankHuang0516/EClaw/commit/36cd2e9802be4c7ebb03d3024617fa74aca48ffd))
* **ios:** add Tutorial & Intro entry in Settings ([#2800](https://github.com/HankHuang0516/EClaw/issues/2800)) ([ed83e51](https://github.com/HankHuang0516/EClaw/commit/ed83e51d043bf4cd5865f38dc95a91ed54820d6c))
* **landing:** add Watch Full Demo CTA below hero video ([#2799](https://github.com/HankHuang0516/EClaw/issues/2799)) ([66107c9](https://github.com/HankHuang0516/EClaw/commit/66107c954727551fd34d989a4674daaad9b63968))
* **footer:** add Watch Intro Video link in Info column ([#2798](https://github.com/HankHuang0516/EClaw/issues/2798)) ([d7c6d59](https://github.com/HankHuang0516/EClaw/commit/d7c6d596b69c6a5b257bf1f7a792a407ef9712ad))
* **i18n:** ar iter-2 — fill 623 missing keys against en source ([#2847](https://github.com/HankHuang0516/EClaw/issues/2847)) ([ee94a7a](https://github.com/HankHuang0516/EClaw/commit/ee94a7ae6812b5163efe4284ee4907ca32302f5c))
* **kanban:** backlog launch-gate flag to suppress L1/L2/L3 escalation ([#2855](https://github.com/HankHuang0516/EClaw/issues/2855)) ([cb8bf1b](https://github.com/HankHuang0516/EClaw/commit/cb8bf1bb6421f25214f65e129a8cadccc49cc266)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#4](https://github.com/HankHuang0516/EClaw/issues/4) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **companion:** bridge crafter-station/petdex gallery (1784 pets) ([#2601](https://github.com/HankHuang0516/EClaw/issues/2601)) ([2e245be](https://github.com/HankHuang0516/EClaw/commit/2e245bea6dd47ea7361b927d389188a3c23b6bb3))
* **promo:** chat avatar size feature landing page (self-hosted MP4) ([#2722](https://github.com/HankHuang0516/EClaw/issues/2722)) ([3852210](https://github.com/HankHuang0516/EClaw/commit/3852210d355704d018e3daca6b5f9512a011b210)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **kanban:** cron-spawn jitter + lane backpressure to prevent same-tick wedge ([#2791](https://github.com/HankHuang0516/EClaw/issues/2791)) ([9f414a7](https://github.com/HankHuang0516/EClaw/commit/9f414a731d6393672a0a4189c7b408c529ae5e12)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **portal:** dashboard usage widget — Claude/Codex 5h gauges + 24h chart (Plan B Phase 3) ([#2891](https://github.com/HankHuang0516/EClaw/issues/2891)) ([d18f373](https://github.com/HankHuang0516/EClaw/commit/d18f373857e4bd302437d6bda2a1e01871fbb1db))
* **portal:** dashboard usage widget v2 — Session/Weekly % bars + projects, no cost (Plan B Phase 3.1) ([#2893](https://github.com/HankHuang0516/EClaw/issues/2893)) ([4bc0dc7](https://github.com/HankHuang0516/EClaw/commit/4bc0dc744ed9d54dfd532ebac4b705c7f84ec0a6))
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **promo:** embed daily eclaw video 2026-05-14 ([#2786](https://github.com/HankHuang0516/EClaw/issues/2786)) ([718a814](https://github.com/HankHuang0516/EClaw/commit/718a814ab16850bc2b33a1b303841e2c4378ecfa)), closes [#2782](https://github.com/HankHuang0516/EClaw/issues/2782) [#2693](https://github.com/HankHuang0516/EClaw/issues/2693)
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **info:** embed promo video at top of Quick Start tab ([#2797](https://github.com/HankHuang0516/EClaw/issues/2797)) ([047679f](https://github.com/HankHuang0516/EClaw/commit/047679fd57ab9949eaeacea414d5611e71afe041))
* **rental:** enforce strict rebind refunds ([#2703](https://github.com/HankHuang0516/EClaw/issues/2703)) ([a1859c5](https://github.com/HankHuang0516/EClaw/commit/a1859c50e6fb3991d7a8051491502d824a14a116))
* **portal:** group task chip actions ([#2825](https://github.com/HankHuang0516/EClaw/issues/2825)) ([5db5c59](https://github.com/HankHuang0516/EClaw/commit/5db5c59b32b8635f1412205faf0c2f9164d3d5d4))
* **portal:** info-guide-rules + info-guide-soul slide pair ([#2793](https://github.com/HankHuang0516/EClaw/issues/2793)) ([1c8bddc](https://github.com/HankHuang0516/EClaw/commit/1c8bddc4c185054b2b60088498e3d45509117127)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **chat:** link card previews to kanban ([#2754](https://github.com/HankHuang0516/EClaw/issues/2754)) ([2261240](https://github.com/HankHuang0516/EClaw/commit/22612402c2e95efb07246629e81a849be41ee9c7))
* **mission:** link notes to kanban cards ([#2723](https://github.com/HankHuang0516/EClaw/issues/2723)) ([b36dc18](https://github.com/HankHuang0516/EClaw/commit/b36dc18f3a8facf12e0b6046351c222f1e99dc55))
* **usage-daemon:** macOS launchd daemon polls Claude/Codex usage → POST /api/usage/snapshot (Plan B Phase 2) ([#2890](https://github.com/HankHuang0516/EClaw/issues/2890)) ([fd225e1](https://github.com/HankHuang0516/EClaw/commit/fd225e12d9491037be1a340bd63b54b5f3308c7f))
* **mindmap:** mission.html link to /portal/mindmap.html + deprecate /api/mission/mindmap ([#2685](https://github.com/HankHuang0516/EClaw/issues/2685)) ([11e297b](https://github.com/HankHuang0516/EClaw/commit/11e297bab1c9b56fcde3027d6500b7c58891bf18)), closes [#2680](https://github.com/HankHuang0516/EClaw/issues/2680) [#2684](https://github.com/HankHuang0516/EClaw/issues/2684)
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **portal:** nagoya trip interactive map (Leaflet + OSM, no API key) ([#2888](https://github.com/HankHuang0516/EClaw/issues/2888)) ([ecfdac0](https://github.com/HankHuang0516/EClaw/commit/ecfdac06348c12ee7c6872c6c28d5f82162e7aa9))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **settings:** per-entity nudge override UI (Phase 2) ([#2837](https://github.com/HankHuang0516/EClaw/issues/2837)) ([ea7662b](https://github.com/HankHuang0516/EClaw/commit/ea7662b0858882dae461e1387f711895924f9ab8)), closes [3/#4](https://github.com/HankHuang0516/EClaw/issues/4)
* **kanban:** per-entity nudge overrides (Phase 2 of card_e066cb6b) ([#2836](https://github.com/HankHuang0516/EClaw/issues/2836)) ([0425f80](https://github.com/HankHuang0516/EClaw/commit/0425f80bc1169c0d506b665659c8676695c45553))
* **avatar:** petdx render on card-holder my-cards (Phase 1b) ([#2621](https://github.com/HankHuang0516/EClaw/issues/2621)) ([f78ba8b](https://github.com/HankHuang0516/EClaw/commit/f78ba8b18acc426936ab6d8a82ca7541effea00d))
* **avatar:** petdx render on dashboard entity grid / org chart / bindings (Phase 1b) ([#2622](https://github.com/HankHuang0516/EClaw/issues/2622)) ([f417749](https://github.com/HankHuang0516/EClaw/commit/f41774914451048e8cd76e9ae30416a0642e173b)), closes [#2620](https://github.com/HankHuang0516/EClaw/issues/2620) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621)
* **avatar:** petdx render on kanban auto-assign / pulse / comment avatars (Phase 1b) ([#2624](https://github.com/HankHuang0516/EClaw/issues/2624)) ([6bff5f8](https://github.com/HankHuang0516/EClaw/commit/6bff5f80440d0bd91a6b1721cde9478d685c4d46))
* **avatar:** petdx render on mission skill/rule/soul entity dialogs (Phase 1b) ([#2623](https://github.com/HankHuang0516/EClaw/issues/2623)) ([129327b](https://github.com/HankHuang0516/EClaw/commit/129327bc7b91056659f1ab7e8d5e3f5260d951fb))
* **mindmap:** portal/mindmap.html force-graph prototype ([#129](https://github.com/HankHuang0516/EClaw/issues/129)) ([#2681](https://github.com/HankHuang0516/EClaw/issues/2681)) ([0f15e69](https://github.com/HankHuang0516/EClaw/commit/0f15e6930f0697c37fa08f3219edb8f9e499837f)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **portal:** redo nagoya trip page in professional tour-guide style ([#2691](https://github.com/HankHuang0516/EClaw/issues/2691)) ([b2378c0](https://github.com/HankHuang0516/EClaw/commit/b2378c06ee20fa9cccfdceceb1a4c9e0b3072f59))
* **i18n:** remove ms+hi orphan keys from i18n.js ([#2849](https://github.com/HankHuang0516/EClaw/issues/2849)) ([320176c](https://github.com/HankHuang0516/EClaw/commit/320176c06a3cfd8631e2a82ad02a6bd6a9af0389))
* **avatar:** render selected petdx companion in chat avatars ([#2620](https://github.com/HankHuang0516/EClaw/issues/2620)) ([0bdd046](https://github.com/HankHuang0516/EClaw/commit/0bdd046fe1b1c428e32edda366ff112c08927f4c))
* **home:** replace native home with WebView hosting dashboard.html ([#2634](https://github.com/HankHuang0516/EClaw/issues/2634)) ([e69ea81](https://github.com/HankHuang0516/EClaw/commit/e69ea8160c239b083a83d6dc83a4f1c3f901c863))
* **app:** route chat mission jumps through native tabs ([#2824](https://github.com/HankHuang0516/EClaw/issues/2824)) ([deb07b6](https://github.com/HankHuang0516/EClaw/commit/deb07b69a9ecca632fe27278de537f1d85234e94))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **chat:** support message deep links ([#2719](https://github.com/HankHuang0516/EClaw/issues/2719)) ([2dc0f1e](https://github.com/HankHuang0516/EClaw/commit/2dc0f1eeb259e1a0848db4a03186b989372cd91c))
* **mission:** support note deep links ([#2717](https://github.com/HankHuang0516/EClaw/issues/2717)) ([2efd3a5](https://github.com/HankHuang0516/EClaw/commit/2efd3a5e741217a07c0b0ac54a0ddd010e0ebe23))
* **share-chat:** twitter card + per-bot og:image/twitter:* in SSR ([#2609](https://github.com/HankHuang0516/EClaw/issues/2609)) ([6cdc853](https://github.com/HankHuang0516/EClaw/commit/6cdc853dc884cdb95bd47214942768981f218ae0))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))
* **settings:** wire petdx avatar into channel-account chips ([#2626](https://github.com/HankHuang0516/EClaw/issues/2626)) ([88aec77](https://github.com/HankHuang0516/EClaw/commit/88aec772628c240e97b336bb5820892ad632d1ae))
* **files:** wire petdx avatar into entity filter & per-file badges ([#2627](https://github.com/HankHuang0516/EClaw/issues/2627)) ([5b3e5cc](https://github.com/HankHuang0516/EClaw/commit/5b3e5cc542d9da69bb4e92500fd03a542ea33f00))
* **mindmap:** wrap hardcoded zh-TW UI strings with i18n t() ([#2607](https://github.com/HankHuang0516/EClaw/issues/2607)) ([166af87](https://github.com/HankHuang0516/EClaw/commit/166af8772b2121a24aaf34a83b3de970e9b3b571)), closes [#2606](https://github.com/HankHuang0516/EClaw/issues/2606)
* **i18n:** zh-TW backfill 8 keys (soft-pause + chat + invite + wallet) ([#2815](https://github.com/HankHuang0516/EClaw/issues/2815)) ([a2dd574](https://github.com/HankHuang0516/EClaw/commit/a2dd5743ce8d43a4b6ace9a2fd4b52568180d6c5))


### Performance Improvements

* **mindmap:** force-graph hardening for 1000/2000-node graphs ([#2684](https://github.com/HankHuang0516/EClaw/issues/2684)) ([da8b1c8](https://github.com/HankHuang0516/EClaw/commit/da8b1c8f947ab8bc8fa455c1962a91146623a1fc))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-23)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **notifications:** add kanban_done + kanban_done_auto toggles to Android Settings ([#2636](https://github.com/HankHuang0516/EClaw/issues/2636)) ([a710909](https://github.com/HankHuang0516/EClaw/commit/a7109095e3393b8564e7ef1b23d382a4fbb944b8))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **i18n:** ar block — fix 27 broken entries (CJK leaks + truncated HTML) ([#2851](https://github.com/HankHuang0516/EClaw/issues/2851)) ([5b19175](https://github.com/HankHuang0516/EClaw/commit/5b19175d712d00d16fcec00b749035c4beae7a5c))
* **chat:** atomic-load target bar (await contacts before first render) ([#2831](https://github.com/HankHuang0516/EClaw/issues/2831)) ([5f529e6](https://github.com/HankHuang0516/EClaw/commit/5f529e6b772eacc38ba1de69b44258a05f0d816a)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2](https://github.com/HankHuang0516/EClaw/issues/2)
* **channel:** await binding persistence ([712516d](https://github.com/HankHuang0516/EClaw/commit/712516decafb745035bd1434a28cc1973d433e19))
* **rental:** bump handshake timeout to 60s + timeout-aware discovery fallback ([#2863](https://github.com/HankHuang0516/EClaw/issues/2863)) ([fd4322f](https://github.com/HankHuang0516/EClaw/commit/fd4322f8890f3c2dfca3acdae6a4b95f19c381f9)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **i18n:** clear batch 1 residual missing keys ([#2790](https://github.com/HankHuang0516/EClaw/issues/2790)) ([211030e](https://github.com/HankHuang0516/EClaw/commit/211030e0b0b6a865c11f0c4ed60dc4e356d43b7a))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **kanban:** comment input no longer overlaps last comment in card detail (PR [#2678](https://github.com/HankHuang0516/EClaw/issues/2678)) ([fba91fc](https://github.com/HankHuang0516/EClaw/commit/fba91fca15402b453a0db5ee857c0b16e6087055))
* **chat:** compact 20px avatar in target bar (App WebView only shows [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2](https://github.com/HankHuang0516/EClaw/issues/2)) ([#2830](https://github.com/HankHuang0516/EClaw/issues/2830)) ([42c7543](https://github.com/HankHuang0516/EClaw/commit/42c7543b4a78a7abf3f5f7535eb9bc6142cd0fe2)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **portal:** complete 401 redirect sweep + mobile UIUX truncation ([#2842](https://github.com/HankHuang0516/EClaw/issues/2842)) ([f9799ba](https://github.com/HankHuang0516/EClaw/commit/f9799ba42498b109f0a8a70e80836aa6da51e216)), closes [#2833](https://github.com/HankHuang0516/EClaw/issues/2833) [#2845](https://github.com/HankHuang0516/EClaw/issues/2845) [#2844](https://github.com/HankHuang0516/EClaw/issues/2844) [#2843](https://github.com/HankHuang0516/EClaw/issues/2843)
* **uiux:** continue qa mobile readability sweep ([#2854](https://github.com/HankHuang0516/EClaw/issues/2854)) ([57606ff](https://github.com/HankHuang0516/EClaw/commit/57606ffe3e543b07a026aacc53c4b470c9a7825b))
* **i18n:** cover dynamic portal wrapper keys ([#2807](https://github.com/HankHuang0516/EClaw/issues/2807)) ([4c711cc](https://github.com/HankHuang0516/EClaw/commit/4c711cc4009300ffe4e8933a98ee01cd0fdd6aeb))
* **i18n:** dedup 20 dash_channel_card_* keys in es block ([#2876](https://github.com/HankHuang0516/EClaw/issues/2876)) ([807284c](https://github.com/HankHuang0516/EClaw/commit/807284ce363ef119ccdb0ae40e5ce99d3f0a27e0))
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **rental:** don't pollute entity.message on push gateway timeout ([#2860](https://github.com/HankHuang0516/EClaw/issues/2860)) ([592ba44](https://github.com/HankHuang0516/EClaw/commit/592ba44f57536ee00011b6cbddaa6b129a7cbae9))
* **petdx:** drop dark-grey loading placeholder + preload sprite WEBP ([#2628](https://github.com/HankHuang0516/EClaw/issues/2628)) ([59cef38](https://github.com/HankHuang0516/EClaw/commit/59cef387bd69ca99d7d15c86a1364856d3849ad8)), closes [#1a1a1a](https://github.com/HankHuang0516/EClaw/issues/1a1a1a)
* **gateway-ws:** drop Origin header on server-to-server WS upgrade ([#2869](https://github.com/HankHuang0516/EClaw/issues/2869)) ([716dcf9](https://github.com/HankHuang0516/EClaw/commit/716dcf9d0834b17522bb9d894bad84bc142d1a19))
* **setup-scripts:** drop Origin header on server-to-server WS upgrade ([#2875](https://github.com/HankHuang0516/EClaw/issues/2875)) ([9d893b8](https://github.com/HankHuang0516/EClaw/commit/9d893b8e5eea4db275e450bf423903c156cd3e4b)), closes [#2869](https://github.com/HankHuang0516/EClaw/issues/2869)
* **security:** escape innerHTML in chat modal error messages ([#2819](https://github.com/HankHuang0516/EClaw/issues/2819)) ([dce07ad](https://github.com/HankHuang0516/EClaw/commit/dce07adde64795916dba977ae23e46f3371ce7ed)), closes [#2809](https://github.com/HankHuang0516/EClaw/issues/2809) [#2810](https://github.com/HankHuang0516/EClaw/issues/2810) [#2809](https://github.com/HankHuang0516/EClaw/issues/2809) [#2810](https://github.com/HankHuang0516/EClaw/issues/2810)
* **entities:** expose botSecret to owner so wallpaper service can poll companions ([#2615](https://github.com/HankHuang0516/EClaw/issues/2615)) ([04470fc](https://github.com/HankHuang0516/EClaw/commit/04470fce8f8c3fce2b1ba8b243e776606f107502))
* **rental:** expose owner_public_code in marketplace so plaza CTA can route ([#2616](https://github.com/HankHuang0516/EClaw/issues/2616)) ([4d1372f](https://github.com/HankHuang0516/EClaw/commit/4d1372f717d93cab65543e87c852e74e9fb67071)), closes [#2610](https://github.com/HankHuang0516/EClaw/issues/2610)
* **mindmap:** fallback to device scope when entityId is null ([#2728](https://github.com/HankHuang0516/EClaw/issues/2728)) ([7572312](https://github.com/HankHuang0516/EClaw/commit/7572312433d3d75fc245eda48a28919ce14bd927))
* **i18n:** fill Spanish drift keys ([#2751](https://github.com/HankHuang0516/EClaw/issues/2751)) ([0ad0ee5](https://github.com/HankHuang0516/EClaw/commit/0ad0ee55f7fac3e6ac46d891539950dab4d553cc))
* **portal:** fit embedded org chart to mobile viewport ([#2674](https://github.com/HankHuang0516/EClaw/issues/2674)) ([1c4e1b4](https://github.com/HankHuang0516/EClaw/commit/1c4e1b413ea7027b4cd4b8ecda981b0d0e12e66b))
* **i18n:** fix 6 trailing-comma syntax errors in 10-locale batch ([#2771](https://github.com/HankHuang0516/EClaw/issues/2771)) ([b27c6ca](https://github.com/HankHuang0516/EClaw/commit/b27c6ca204bf813e406c54ce3a2532a5f1f031b3))
* **kanban:** GET card returns latest 50 comments + comments endpoint exposes total ([#2816](https://github.com/HankHuang0516/EClaw/issues/2816)) ([c4d83f7](https://github.com/HankHuang0516/EClaw/commit/c4d83f777a1cd26aea0936e4316aa35c52822eef))
* **sharechat:** guest verify-email modal + disabled Send for unverified ([#2865](https://github.com/HankHuang0516/EClaw/issues/2865)) ([cb3b061](https://github.com/HankHuang0516/EClaw/commit/cb3b0614e0f6160417d907753e66eceb2d666802))
* **uiux:** harden chat previews and roster preview ([#2769](https://github.com/HankHuang0516/EClaw/issues/2769)) ([466d4d3](https://github.com/HankHuang0516/EClaw/commit/466d4d3ef81c628d3f58db64323946053d7bf61c))
* **mention-parser:** ignore @-mentions inside markdown code spans ([#2645](https://github.com/HankHuang0516/EClaw/issues/2645)) ([8da19d4](https://github.com/HankHuang0516/EClaw/commit/8da19d4a79ceb4152bf2144ee0847c61ce3e1def)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **kanban:** lazy-load dependency chips via IntersectionObserver ([#2632](https://github.com/HankHuang0516/EClaw/issues/2632)) ([20586b4](https://github.com/HankHuang0516/EClaw/commit/20586b43357335f9eb6a190c02d58c8e36b58aba)), closes [#2631](https://github.com/HankHuang0516/EClaw/issues/2631)
* **kanban:** make card sorting deterministic ([#2756](https://github.com/HankHuang0516/EClaw/issues/2756)) ([48e2117](https://github.com/HankHuang0516/EClaw/commit/48e2117b64e37f05dc635e0a3b67bfd43cbe48f5))
* **org-chart:** notify affected bots on hierarchy change ([#2812](https://github.com/HankHuang0516/EClaw/issues/2812)) ([55675fd](https://github.com/HankHuang0516/EClaw/commit/55675fdf4487494d729a29524b32bd81b756a00c)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** notify reviewer on manual /move → review ([#2753](https://github.com/HankHuang0516/EClaw/issues/2753)) ([6cbbb4e](https://github.com/HankHuang0516/EClaw/commit/6cbbb4ee8c0d4d8ad54df2e9b5faaa3699bd530f))
* **wallpaper:** off-load spritesheet fetch to IO so per-petdx sprites actually render ([#2618](https://github.com/HankHuang0516/EClaw/issues/2618)) ([61b832c](https://github.com/HankHuang0516/EClaw/commit/61b832c9fa8a1d0caab810ccc942d85c63349267)), closes [#2615](https://github.com/HankHuang0516/EClaw/issues/2615) [#2577](https://github.com/HankHuang0516/EClaw/issues/2577)
* **security:** patch P0 sanitize-html XSS + P1 protobufjs + exam.html XSS ([#2829](https://github.com/HankHuang0516/EClaw/issues/2829)) ([c71b871](https://github.com/HankHuang0516/EClaw/commit/c71b871a045887375dd0d26d1a3280a0891a89ad))
* **security:** patch ws uninitialized memory disclosure (GHSA-58qx-3vcg-4xpx) ([#2872](https://github.com/HankHuang0516/EClaw/issues/2872)) ([2523d15](https://github.com/HankHuang0516/EClaw/commit/2523d154bbe501a7cc086340f7a07ece3abfa69b))
* **portal:** petdx-browser cookie-session fallback for device-login ([#2757](https://github.com/HankHuang0516/EClaw/issues/2757)) ([ca275f4](https://github.com/HankHuang0516/EClaw/commit/ca275f4519835da0c7ad71c588908a18f6f138d8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **api:** platform-stats 500 + entity/lookup publicCode alias ([#2809](https://github.com/HankHuang0516/EClaw/issues/2809), [#2810](https://github.com/HankHuang0516/EClaw/issues/2810)) ([#2818](https://github.com/HankHuang0516/EClaw/issues/2818)) ([f99fd17](https://github.com/HankHuang0516/EClaw/commit/f99fd17b2b1c32d88daa2510ff66d714c1a53edc))
* **i18n:** positional format specifiers for feedback_result_logs (7 locales) ([#2597](https://github.com/HankHuang0516/EClaw/issues/2597)) ([21aedc7](https://github.com/HankHuang0516/EClaw/commit/21aedc7eebc7a2839e340136f38dfdfd4dabb9dc))
* **avatar-petdx:** preserve descriptor across transient API failures (flicker) ([#2625](https://github.com/HankHuang0516/EClaw/issues/2625)) ([7b1c606](https://github.com/HankHuang0516/EClaw/commit/7b1c606514f7698d72ec95cf6c556e4043966186))
* **chat:** preserve scroll anchor while reading history ([#2693](https://github.com/HankHuang0516/EClaw/issues/2693)) ([945fdb7](https://github.com/HankHuang0516/EClaw/commit/945fdb7192b791b31882e1e75568dd8b11e4686f))
* **promo:** pull video embed from /promo-chat-avatar.html ([#2724](https://github.com/HankHuang0516/EClaw/issues/2724)) ([2afabc8](https://github.com/HankHuang0516/EClaw/commit/2afabc8c5ff8b25218a7cb857e8adfa572c8e9d5))
* **kanban:** realign stale recurring schedules ([#2785](https://github.com/HankHuang0516/EClaw/issues/2785)) ([ab8ee25](https://github.com/HankHuang0516/EClaw/commit/ab8ee250a9b37f3d3e838bb01d8866c8d2b78231))
* **portal:** reduce QA-discovered request fanout ([#2656](https://github.com/HankHuang0516/EClaw/issues/2656)) ([1e46d6b](https://github.com/HankHuang0516/EClaw/commit/1e46d6bab61e58c65b452b6503d953f8dddeee75))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **portal:** remove org chart fit scale floor ([#2676](https://github.com/HankHuang0516/EClaw/issues/2676)) ([0f01606](https://github.com/HankHuang0516/EClaw/commit/0f016068b963bb5f800a02f28817c7174979d913))
* **rental:** remove phantom 'webhook test push' step from BIND_COMPLETE ([#2864](https://github.com/HankHuang0516/EClaw/issues/2864)) ([47f4a3e](https://github.com/HankHuang0516/EClaw/commit/47f4a3edf76aa95ebd06d8713cd44fda6eef9b5d))
* **i18n:** rename mm_empty_title → mm_state_empty_title in mindmap.html ([#2683](https://github.com/HankHuang0516/EClaw/issues/2683)) ([c79c109](https://github.com/HankHuang0516/EClaw/commit/c79c109bea23142e8a6d9ace976d105af1280ec9))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **chat:** render mention avatars with companion renderer ([#2633](https://github.com/HankHuang0516/EClaw/issues/2633)) ([03e205f](https://github.com/HankHuang0516/EClaw/commit/03e205f663ecd2c2f443d4009dd5af0093f0bbbb))
* **kanban:** reserve mobile comments panel height ([#2782](https://github.com/HankHuang0516/EClaw/issues/2782)) ([ce8662d](https://github.com/HankHuang0516/EClaw/commit/ce8662d362422fdd25037f1deb61dbed9425e2f9))
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* scheduled audit 2026-05-13 — 6 bugs, XSS, i18n ([#2668](https://github.com/HankHuang0516/EClaw/issues/2668)) ([21dd513](https://github.com/HankHuang0516/EClaw/commit/21dd513b4464738de29164265437435ba6cc4817)), closes [#2605](https://github.com/HankHuang0516/EClaw/issues/2605) [#2608](https://github.com/HankHuang0516/EClaw/issues/2608) [#2600](https://github.com/HankHuang0516/EClaw/issues/2600) [#2599](https://github.com/HankHuang0516/EClaw/issues/2599) [#2598](https://github.com/HankHuang0516/EClaw/issues/2598)
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **chat:** smart-chip preview falls back to inline c.comments when /comments fails (PR [#2677](https://github.com/HankHuang0516/EClaw/issues/2677)) ([7f4dffd](https://github.com/HankHuang0516/EClaw/commit/7f4dffd2c83ea86f296b8fa0610f0e67c9f1af11))
* **kanban:** stabilize comment detail viewport ([#2796](https://github.com/HankHuang0516/EClaw/issues/2796)) ([0a10aad](https://github.com/HankHuang0516/EClaw/commit/0a10aadb5a5b12ff23454c16d5c88183b94ad7d7))
* **wallpaper:** stop Android live wallpaper flashing default lobster on companion change ([#2629](https://github.com/HankHuang0516/EClaw/issues/2629)) ([8b4f66f](https://github.com/HankHuang0516/EClaw/commit/8b4f66fcb335bf43128f924b761b6337c817095b)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **chat:** stop chat.html bouncing to dashboard via /api/rental/health-status 401 race ([#2833](https://github.com/HankHuang0516/EClaw/issues/2833)) ([c422406](https://github.com/HankHuang0516/EClaw/commit/c4224067cdcfe7f3e22ab95007c7563dac4196ac))
* **openclaw-channel:** support OpenClaw 2026.5.20 ([8045de6](https://github.com/HankHuang0516/EClaw/commit/8045de6bebecfc05f9bd57453b99c098ca35681b))
* **mentions:** support same-device CJK display-name tags ([#2874](https://github.com/HankHuang0516/EClaw/issues/2874)) ([b8f61be](https://github.com/HankHuang0516/EClaw/commit/b8f61be9a3962fef75dd32ea34e8900880dafaf9))
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **app:** WebView pages honor app-selected locale via ?lang= URL param ([#2672](https://github.com/HankHuang0516/EClaw/issues/2672)) ([8ed8757](https://github.com/HankHuang0516/EClaw/commit/8ed8757aec5bf214e837cc0d81bf2b23f1993a91)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **share-chat:** wire rich CTA actions to msgInput ([#2867](https://github.com/HankHuang0516/EClaw/issues/2867)) ([df23b11](https://github.com/HankHuang0516/EClaw/commit/df23b1147d34c59a644a145bbd87c18b96400acc))


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* **usage-api:** /api/usage/{snapshot,timeline} + usage_snapshots table (Plan B Phase 1) ([#2889](https://github.com/HankHuang0516/EClaw/issues/2889)) ([a0d859c](https://github.com/HankHuang0516/EClaw/commit/a0d859c63f0220909dadb2b1952174861ccdce14))
* **community:** 1-click chat button on bot cards + utm tagging ([#2610](https://github.com/HankHuang0516/EClaw/issues/2610)) ([eee97b0](https://github.com/HankHuang0516/EClaw/commit/eee97b0e2e4e74945ec24f218a69a52800b97a66))
* **chat:** accept ?messageId= as deep-link alias ([#2838](https://github.com/HankHuang0516/EClaw/issues/2838)) ([1785a87](https://github.com/HankHuang0516/EClaw/commit/1785a87310426637fd10df83754fb9924c45207f))
* **chat:** add avatar size preference ([#2714](https://github.com/HankHuang0516/EClaw/issues/2714)) ([6fe164a](https://github.com/HankHuang0516/EClaw/commit/6fe164ad8b22fa576d2dd9ad37c0d9fc295b5a83))
* **dashboard:** add Claude and Codex channel guides ([#2640](https://github.com/HankHuang0516/EClaw/issues/2640)) ([c64e4c4](https://github.com/HankHuang0516/EClaw/commit/c64e4c4afc78db58c5cd578f00486dd7b2fd3311))
* **dashboard:** add Claude Code channel guide card ([#2667](https://github.com/HankHuang0516/EClaw/issues/2667)) ([d70d75c](https://github.com/HankHuang0516/EClaw/commit/d70d75c0c8caa8a540358a9aab4556b8c1927a5c))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* **kanban:** add device-scoped card tags ([#2773](https://github.com/HankHuang0516/EClaw/issues/2773)) ([53a387e](https://github.com/HankHuang0516/EClaw/commit/53a387e67ba7bb4f6bed1c427000c4ae8666577a))
* **portal:** add entity selector to petdx-browser ([#2602](https://github.com/HankHuang0516/EClaw/issues/2602)) ([3fa067e](https://github.com/HankHuang0516/EClaw/commit/3fa067e00b38829b48a37cecd33ee81a9a1122d9))
* **kanban:** add explicit card links ([#2721](https://github.com/HankHuang0516/EClaw/issues/2721)) ([ef9f812](https://github.com/HankHuang0516/EClaw/commit/ef9f812a3fcf39efd07fd158ce90951bdd045ac7))
* **kanban:** add explicit done-card reopen flow ([#2801](https://github.com/HankHuang0516/EClaw/issues/2801)) ([5080aac](https://github.com/HankHuang0516/EClaw/commit/5080aacb75047c0deaa379ee708ec85465afd57c))
* **mindmap:** add GET /api/mindmap/graph force-graph projection ([#2680](https://github.com/HankHuang0516/EClaw/issues/2680)) ([a00b2e7](https://github.com/HankHuang0516/EClaw/commit/a00b2e775af2c4c98cd157f760ad87aeeee469f0)), closes [#2679](https://github.com/HankHuang0516/EClaw/issues/2679) [#2679](https://github.com/HankHuang0516/EClaw/issues/2679)
* **dashboard:** add Hermes channel promo card ([#2708](https://github.com/HankHuang0516/EClaw/issues/2708)) ([337aca1](https://github.com/HankHuang0516/EClaw/commit/337aca153d5a1cd7e888c065f00ae54db7872d91))
* **rental:** add listing soft pause ([#2781](https://github.com/HankHuang0516/EClaw/issues/2781)) ([6586b72](https://github.com/HankHuang0516/EClaw/commit/6586b72717ddb1637d91cd3242c8d2ff554f62b4))
* **portal:** add Nagoya 5D4N trip static cross-ref page ([#2689](https://github.com/HankHuang0516/EClaw/issues/2689)) ([2e0efb6](https://github.com/HankHuang0516/EClaw/commit/2e0efb6dcdaff52226cc8854a96747000b12bdff))
* **portal:** add Nagoya trip map links and image lightbox ([#2821](https://github.com/HankHuang0516/EClaw/issues/2821)) ([3e40955](https://github.com/HankHuang0516/EClaw/commit/3e40955650a05f45a6b9f7e39e73847705424a03))
* **portal/nagoya:** add parking shortcut buttons next to itinerary places ([#2826](https://github.com/HankHuang0516/EClaw/issues/2826)) ([63968c5](https://github.com/HankHuang0516/EClaw/commit/63968c554d046afc8d978de74e3aacbf7700500d))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **settings:** add rental roster management preview ([#2758](https://github.com/HankHuang0516/EClaw/issues/2758)) ([9706e59](https://github.com/HankHuang0516/EClaw/commit/9706e59ded140a90a6e02348124282bc69d89001))
* **rental:** add renter health chat indicator ([#2690](https://github.com/HankHuang0516/EClaw/issues/2690)) ([36cd2e9](https://github.com/HankHuang0516/EClaw/commit/36cd2e9802be4c7ebb03d3024617fa74aca48ffd))
* **ios:** add Tutorial & Intro entry in Settings ([#2800](https://github.com/HankHuang0516/EClaw/issues/2800)) ([ed83e51](https://github.com/HankHuang0516/EClaw/commit/ed83e51d043bf4cd5865f38dc95a91ed54820d6c))
* **landing:** add Watch Full Demo CTA below hero video ([#2799](https://github.com/HankHuang0516/EClaw/issues/2799)) ([66107c9](https://github.com/HankHuang0516/EClaw/commit/66107c954727551fd34d989a4674daaad9b63968))
* **footer:** add Watch Intro Video link in Info column ([#2798](https://github.com/HankHuang0516/EClaw/issues/2798)) ([d7c6d59](https://github.com/HankHuang0516/EClaw/commit/d7c6d596b69c6a5b257bf1f7a792a407ef9712ad))
* **i18n:** ar iter-2 — fill 623 missing keys against en source ([#2847](https://github.com/HankHuang0516/EClaw/issues/2847)) ([ee94a7a](https://github.com/HankHuang0516/EClaw/commit/ee94a7ae6812b5163efe4284ee4907ca32302f5c))
* **kanban:** backlog launch-gate flag to suppress L1/L2/L3 escalation ([#2855](https://github.com/HankHuang0516/EClaw/issues/2855)) ([cb8bf1b](https://github.com/HankHuang0516/EClaw/commit/cb8bf1bb6421f25214f65e129a8cadccc49cc266)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#4](https://github.com/HankHuang0516/EClaw/issues/4) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **companion:** bridge crafter-station/petdex gallery (1784 pets) ([#2601](https://github.com/HankHuang0516/EClaw/issues/2601)) ([2e245be](https://github.com/HankHuang0516/EClaw/commit/2e245bea6dd47ea7361b927d389188a3c23b6bb3))
* **promo:** chat avatar size feature landing page (self-hosted MP4) ([#2722](https://github.com/HankHuang0516/EClaw/issues/2722)) ([3852210](https://github.com/HankHuang0516/EClaw/commit/3852210d355704d018e3daca6b5f9512a011b210)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **kanban:** cron-spawn jitter + lane backpressure to prevent same-tick wedge ([#2791](https://github.com/HankHuang0516/EClaw/issues/2791)) ([9f414a7](https://github.com/HankHuang0516/EClaw/commit/9f414a731d6393672a0a4189c7b408c529ae5e12)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **portal:** dashboard usage widget — Claude/Codex 5h gauges + 24h chart (Plan B Phase 3) ([#2891](https://github.com/HankHuang0516/EClaw/issues/2891)) ([d18f373](https://github.com/HankHuang0516/EClaw/commit/d18f373857e4bd302437d6bda2a1e01871fbb1db))
* **portal:** dashboard usage widget v2 — Session/Weekly % bars + projects, no cost (Plan B Phase 3.1) ([#2893](https://github.com/HankHuang0516/EClaw/issues/2893)) ([4bc0dc7](https://github.com/HankHuang0516/EClaw/commit/4bc0dc744ed9d54dfd532ebac4b705c7f84ec0a6))
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **promo:** embed daily eclaw video 2026-05-14 ([#2786](https://github.com/HankHuang0516/EClaw/issues/2786)) ([718a814](https://github.com/HankHuang0516/EClaw/commit/718a814ab16850bc2b33a1b303841e2c4378ecfa)), closes [#2782](https://github.com/HankHuang0516/EClaw/issues/2782) [#2693](https://github.com/HankHuang0516/EClaw/issues/2693)
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **info:** embed promo video at top of Quick Start tab ([#2797](https://github.com/HankHuang0516/EClaw/issues/2797)) ([047679f](https://github.com/HankHuang0516/EClaw/commit/047679fd57ab9949eaeacea414d5611e71afe041))
* **rental:** enforce strict rebind refunds ([#2703](https://github.com/HankHuang0516/EClaw/issues/2703)) ([a1859c5](https://github.com/HankHuang0516/EClaw/commit/a1859c50e6fb3991d7a8051491502d824a14a116))
* **portal:** group task chip actions ([#2825](https://github.com/HankHuang0516/EClaw/issues/2825)) ([5db5c59](https://github.com/HankHuang0516/EClaw/commit/5db5c59b32b8635f1412205faf0c2f9164d3d5d4))
* **portal:** info-guide-rules + info-guide-soul slide pair ([#2793](https://github.com/HankHuang0516/EClaw/issues/2793)) ([1c8bddc](https://github.com/HankHuang0516/EClaw/commit/1c8bddc4c185054b2b60088498e3d45509117127)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **chat:** link card previews to kanban ([#2754](https://github.com/HankHuang0516/EClaw/issues/2754)) ([2261240](https://github.com/HankHuang0516/EClaw/commit/22612402c2e95efb07246629e81a849be41ee9c7))
* **mission:** link notes to kanban cards ([#2723](https://github.com/HankHuang0516/EClaw/issues/2723)) ([b36dc18](https://github.com/HankHuang0516/EClaw/commit/b36dc18f3a8facf12e0b6046351c222f1e99dc55))
* **usage-daemon:** macOS launchd daemon polls Claude/Codex usage → POST /api/usage/snapshot (Plan B Phase 2) ([#2890](https://github.com/HankHuang0516/EClaw/issues/2890)) ([fd225e1](https://github.com/HankHuang0516/EClaw/commit/fd225e12d9491037be1a340bd63b54b5f3308c7f))
* **mindmap:** mission.html link to /portal/mindmap.html + deprecate /api/mission/mindmap ([#2685](https://github.com/HankHuang0516/EClaw/issues/2685)) ([11e297b](https://github.com/HankHuang0516/EClaw/commit/11e297bab1c9b56fcde3027d6500b7c58891bf18)), closes [#2680](https://github.com/HankHuang0516/EClaw/issues/2680) [#2684](https://github.com/HankHuang0516/EClaw/issues/2684)
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **portal:** nagoya trip interactive map (Leaflet + OSM, no API key) ([#2888](https://github.com/HankHuang0516/EClaw/issues/2888)) ([ecfdac0](https://github.com/HankHuang0516/EClaw/commit/ecfdac06348c12ee7c6872c6c28d5f82162e7aa9))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **settings:** per-entity nudge override UI (Phase 2) ([#2837](https://github.com/HankHuang0516/EClaw/issues/2837)) ([ea7662b](https://github.com/HankHuang0516/EClaw/commit/ea7662b0858882dae461e1387f711895924f9ab8)), closes [3/#4](https://github.com/HankHuang0516/EClaw/issues/4)
* **kanban:** per-entity nudge overrides (Phase 2 of card_e066cb6b) ([#2836](https://github.com/HankHuang0516/EClaw/issues/2836)) ([0425f80](https://github.com/HankHuang0516/EClaw/commit/0425f80bc1169c0d506b665659c8676695c45553))
* **avatar:** petdx render on card-holder my-cards (Phase 1b) ([#2621](https://github.com/HankHuang0516/EClaw/issues/2621)) ([f78ba8b](https://github.com/HankHuang0516/EClaw/commit/f78ba8b18acc426936ab6d8a82ca7541effea00d))
* **avatar:** petdx render on dashboard entity grid / org chart / bindings (Phase 1b) ([#2622](https://github.com/HankHuang0516/EClaw/issues/2622)) ([f417749](https://github.com/HankHuang0516/EClaw/commit/f41774914451048e8cd76e9ae30416a0642e173b)), closes [#2620](https://github.com/HankHuang0516/EClaw/issues/2620) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621)
* **avatar:** petdx render on kanban auto-assign / pulse / comment avatars (Phase 1b) ([#2624](https://github.com/HankHuang0516/EClaw/issues/2624)) ([6bff5f8](https://github.com/HankHuang0516/EClaw/commit/6bff5f80440d0bd91a6b1721cde9478d685c4d46))
* **avatar:** petdx render on mission skill/rule/soul entity dialogs (Phase 1b) ([#2623](https://github.com/HankHuang0516/EClaw/issues/2623)) ([129327b](https://github.com/HankHuang0516/EClaw/commit/129327bc7b91056659f1ab7e8d5e3f5260d951fb))
* **mindmap:** portal/mindmap.html force-graph prototype ([#129](https://github.com/HankHuang0516/EClaw/issues/129)) ([#2681](https://github.com/HankHuang0516/EClaw/issues/2681)) ([0f15e69](https://github.com/HankHuang0516/EClaw/commit/0f15e6930f0697c37fa08f3219edb8f9e499837f)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **portal:** redo nagoya trip page in professional tour-guide style ([#2691](https://github.com/HankHuang0516/EClaw/issues/2691)) ([b2378c0](https://github.com/HankHuang0516/EClaw/commit/b2378c06ee20fa9cccfdceceb1a4c9e0b3072f59))
* **i18n:** remove ms+hi orphan keys from i18n.js ([#2849](https://github.com/HankHuang0516/EClaw/issues/2849)) ([320176c](https://github.com/HankHuang0516/EClaw/commit/320176c06a3cfd8631e2a82ad02a6bd6a9af0389))
* **avatar:** render selected petdx companion in chat avatars ([#2620](https://github.com/HankHuang0516/EClaw/issues/2620)) ([0bdd046](https://github.com/HankHuang0516/EClaw/commit/0bdd046fe1b1c428e32edda366ff112c08927f4c))
* **home:** replace native home with WebView hosting dashboard.html ([#2634](https://github.com/HankHuang0516/EClaw/issues/2634)) ([e69ea81](https://github.com/HankHuang0516/EClaw/commit/e69ea8160c239b083a83d6dc83a4f1c3f901c863))
* **app:** route chat mission jumps through native tabs ([#2824](https://github.com/HankHuang0516/EClaw/issues/2824)) ([deb07b6](https://github.com/HankHuang0516/EClaw/commit/deb07b69a9ecca632fe27278de537f1d85234e94))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **chat:** support message deep links ([#2719](https://github.com/HankHuang0516/EClaw/issues/2719)) ([2dc0f1e](https://github.com/HankHuang0516/EClaw/commit/2dc0f1eeb259e1a0848db4a03186b989372cd91c))
* **mission:** support note deep links ([#2717](https://github.com/HankHuang0516/EClaw/issues/2717)) ([2efd3a5](https://github.com/HankHuang0516/EClaw/commit/2efd3a5e741217a07c0b0ac54a0ddd010e0ebe23))
* **share-chat:** twitter card + per-bot og:image/twitter:* in SSR ([#2609](https://github.com/HankHuang0516/EClaw/issues/2609)) ([6cdc853](https://github.com/HankHuang0516/EClaw/commit/6cdc853dc884cdb95bd47214942768981f218ae0))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))
* **settings:** wire petdx avatar into channel-account chips ([#2626](https://github.com/HankHuang0516/EClaw/issues/2626)) ([88aec77](https://github.com/HankHuang0516/EClaw/commit/88aec772628c240e97b336bb5820892ad632d1ae))
* **files:** wire petdx avatar into entity filter & per-file badges ([#2627](https://github.com/HankHuang0516/EClaw/issues/2627)) ([5b3e5cc](https://github.com/HankHuang0516/EClaw/commit/5b3e5cc542d9da69bb4e92500fd03a542ea33f00))
* **mindmap:** wrap hardcoded zh-TW UI strings with i18n t() ([#2607](https://github.com/HankHuang0516/EClaw/issues/2607)) ([166af87](https://github.com/HankHuang0516/EClaw/commit/166af8772b2121a24aaf34a83b3de970e9b3b571)), closes [#2606](https://github.com/HankHuang0516/EClaw/issues/2606)
* **i18n:** zh-TW backfill 8 keys (soft-pause + chat + invite + wallet) ([#2815](https://github.com/HankHuang0516/EClaw/issues/2815)) ([a2dd574](https://github.com/HankHuang0516/EClaw/commit/a2dd5743ce8d43a4b6ace9a2fd4b52568180d6c5))


### Performance Improvements

* **mindmap:** force-graph hardening for 1000/2000-node graphs ([#2684](https://github.com/HankHuang0516/EClaw/issues/2684)) ([da8b1c8](https://github.com/HankHuang0516/EClaw/commit/da8b1c8f947ab8bc8fa455c1962a91146623a1fc))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-23)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **notifications:** add kanban_done + kanban_done_auto toggles to Android Settings ([#2636](https://github.com/HankHuang0516/EClaw/issues/2636)) ([a710909](https://github.com/HankHuang0516/EClaw/commit/a7109095e3393b8564e7ef1b23d382a4fbb944b8))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **i18n:** ar block — fix 27 broken entries (CJK leaks + truncated HTML) ([#2851](https://github.com/HankHuang0516/EClaw/issues/2851)) ([5b19175](https://github.com/HankHuang0516/EClaw/commit/5b19175d712d00d16fcec00b749035c4beae7a5c))
* **chat:** atomic-load target bar (await contacts before first render) ([#2831](https://github.com/HankHuang0516/EClaw/issues/2831)) ([5f529e6](https://github.com/HankHuang0516/EClaw/commit/5f529e6b772eacc38ba1de69b44258a05f0d816a)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2](https://github.com/HankHuang0516/EClaw/issues/2)
* **channel:** await binding persistence ([712516d](https://github.com/HankHuang0516/EClaw/commit/712516decafb745035bd1434a28cc1973d433e19))
* **rental:** bump handshake timeout to 60s + timeout-aware discovery fallback ([#2863](https://github.com/HankHuang0516/EClaw/issues/2863)) ([fd4322f](https://github.com/HankHuang0516/EClaw/commit/fd4322f8890f3c2dfca3acdae6a4b95f19c381f9)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **i18n:** clear batch 1 residual missing keys ([#2790](https://github.com/HankHuang0516/EClaw/issues/2790)) ([211030e](https://github.com/HankHuang0516/EClaw/commit/211030e0b0b6a865c11f0c4ed60dc4e356d43b7a))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **kanban:** comment input no longer overlaps last comment in card detail (PR [#2678](https://github.com/HankHuang0516/EClaw/issues/2678)) ([fba91fc](https://github.com/HankHuang0516/EClaw/commit/fba91fca15402b453a0db5ee857c0b16e6087055))
* **chat:** compact 20px avatar in target bar (App WebView only shows [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2](https://github.com/HankHuang0516/EClaw/issues/2)) ([#2830](https://github.com/HankHuang0516/EClaw/issues/2830)) ([42c7543](https://github.com/HankHuang0516/EClaw/commit/42c7543b4a78a7abf3f5f7535eb9bc6142cd0fe2)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **portal:** complete 401 redirect sweep + mobile UIUX truncation ([#2842](https://github.com/HankHuang0516/EClaw/issues/2842)) ([f9799ba](https://github.com/HankHuang0516/EClaw/commit/f9799ba42498b109f0a8a70e80836aa6da51e216)), closes [#2833](https://github.com/HankHuang0516/EClaw/issues/2833) [#2845](https://github.com/HankHuang0516/EClaw/issues/2845) [#2844](https://github.com/HankHuang0516/EClaw/issues/2844) [#2843](https://github.com/HankHuang0516/EClaw/issues/2843)
* **uiux:** continue qa mobile readability sweep ([#2854](https://github.com/HankHuang0516/EClaw/issues/2854)) ([57606ff](https://github.com/HankHuang0516/EClaw/commit/57606ffe3e543b07a026aacc53c4b470c9a7825b))
* **i18n:** cover dynamic portal wrapper keys ([#2807](https://github.com/HankHuang0516/EClaw/issues/2807)) ([4c711cc](https://github.com/HankHuang0516/EClaw/commit/4c711cc4009300ffe4e8933a98ee01cd0fdd6aeb))
* **i18n:** dedup 20 dash_channel_card_* keys in es block ([#2876](https://github.com/HankHuang0516/EClaw/issues/2876)) ([807284c](https://github.com/HankHuang0516/EClaw/commit/807284ce363ef119ccdb0ae40e5ce99d3f0a27e0))
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **rental:** don't pollute entity.message on push gateway timeout ([#2860](https://github.com/HankHuang0516/EClaw/issues/2860)) ([592ba44](https://github.com/HankHuang0516/EClaw/commit/592ba44f57536ee00011b6cbddaa6b129a7cbae9))
* **petdx:** drop dark-grey loading placeholder + preload sprite WEBP ([#2628](https://github.com/HankHuang0516/EClaw/issues/2628)) ([59cef38](https://github.com/HankHuang0516/EClaw/commit/59cef387bd69ca99d7d15c86a1364856d3849ad8)), closes [#1a1a1a](https://github.com/HankHuang0516/EClaw/issues/1a1a1a)
* **gateway-ws:** drop Origin header on server-to-server WS upgrade ([#2869](https://github.com/HankHuang0516/EClaw/issues/2869)) ([716dcf9](https://github.com/HankHuang0516/EClaw/commit/716dcf9d0834b17522bb9d894bad84bc142d1a19))
* **setup-scripts:** drop Origin header on server-to-server WS upgrade ([#2875](https://github.com/HankHuang0516/EClaw/issues/2875)) ([9d893b8](https://github.com/HankHuang0516/EClaw/commit/9d893b8e5eea4db275e450bf423903c156cd3e4b)), closes [#2869](https://github.com/HankHuang0516/EClaw/issues/2869)
* **security:** escape innerHTML in chat modal error messages ([#2819](https://github.com/HankHuang0516/EClaw/issues/2819)) ([dce07ad](https://github.com/HankHuang0516/EClaw/commit/dce07adde64795916dba977ae23e46f3371ce7ed)), closes [#2809](https://github.com/HankHuang0516/EClaw/issues/2809) [#2810](https://github.com/HankHuang0516/EClaw/issues/2810) [#2809](https://github.com/HankHuang0516/EClaw/issues/2809) [#2810](https://github.com/HankHuang0516/EClaw/issues/2810)
* **entities:** expose botSecret to owner so wallpaper service can poll companions ([#2615](https://github.com/HankHuang0516/EClaw/issues/2615)) ([04470fc](https://github.com/HankHuang0516/EClaw/commit/04470fce8f8c3fce2b1ba8b243e776606f107502))
* **rental:** expose owner_public_code in marketplace so plaza CTA can route ([#2616](https://github.com/HankHuang0516/EClaw/issues/2616)) ([4d1372f](https://github.com/HankHuang0516/EClaw/commit/4d1372f717d93cab65543e87c852e74e9fb67071)), closes [#2610](https://github.com/HankHuang0516/EClaw/issues/2610)
* **mindmap:** fallback to device scope when entityId is null ([#2728](https://github.com/HankHuang0516/EClaw/issues/2728)) ([7572312](https://github.com/HankHuang0516/EClaw/commit/7572312433d3d75fc245eda48a28919ce14bd927))
* **i18n:** fill Spanish drift keys ([#2751](https://github.com/HankHuang0516/EClaw/issues/2751)) ([0ad0ee5](https://github.com/HankHuang0516/EClaw/commit/0ad0ee55f7fac3e6ac46d891539950dab4d553cc))
* **portal:** fit embedded org chart to mobile viewport ([#2674](https://github.com/HankHuang0516/EClaw/issues/2674)) ([1c4e1b4](https://github.com/HankHuang0516/EClaw/commit/1c4e1b413ea7027b4cd4b8ecda981b0d0e12e66b))
* **i18n:** fix 6 trailing-comma syntax errors in 10-locale batch ([#2771](https://github.com/HankHuang0516/EClaw/issues/2771)) ([b27c6ca](https://github.com/HankHuang0516/EClaw/commit/b27c6ca204bf813e406c54ce3a2532a5f1f031b3))
* **kanban:** GET card returns latest 50 comments + comments endpoint exposes total ([#2816](https://github.com/HankHuang0516/EClaw/issues/2816)) ([c4d83f7](https://github.com/HankHuang0516/EClaw/commit/c4d83f777a1cd26aea0936e4316aa35c52822eef))
* **sharechat:** guest verify-email modal + disabled Send for unverified ([#2865](https://github.com/HankHuang0516/EClaw/issues/2865)) ([cb3b061](https://github.com/HankHuang0516/EClaw/commit/cb3b0614e0f6160417d907753e66eceb2d666802))
* **uiux:** harden chat previews and roster preview ([#2769](https://github.com/HankHuang0516/EClaw/issues/2769)) ([466d4d3](https://github.com/HankHuang0516/EClaw/commit/466d4d3ef81c628d3f58db64323946053d7bf61c))
* **mention-parser:** ignore @-mentions inside markdown code spans ([#2645](https://github.com/HankHuang0516/EClaw/issues/2645)) ([8da19d4](https://github.com/HankHuang0516/EClaw/commit/8da19d4a79ceb4152bf2144ee0847c61ce3e1def)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **kanban:** lazy-load dependency chips via IntersectionObserver ([#2632](https://github.com/HankHuang0516/EClaw/issues/2632)) ([20586b4](https://github.com/HankHuang0516/EClaw/commit/20586b43357335f9eb6a190c02d58c8e36b58aba)), closes [#2631](https://github.com/HankHuang0516/EClaw/issues/2631)
* **kanban:** make card sorting deterministic ([#2756](https://github.com/HankHuang0516/EClaw/issues/2756)) ([48e2117](https://github.com/HankHuang0516/EClaw/commit/48e2117b64e37f05dc635e0a3b67bfd43cbe48f5))
* **org-chart:** notify affected bots on hierarchy change ([#2812](https://github.com/HankHuang0516/EClaw/issues/2812)) ([55675fd](https://github.com/HankHuang0516/EClaw/commit/55675fdf4487494d729a29524b32bd81b756a00c)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** notify reviewer on manual /move → review ([#2753](https://github.com/HankHuang0516/EClaw/issues/2753)) ([6cbbb4e](https://github.com/HankHuang0516/EClaw/commit/6cbbb4ee8c0d4d8ad54df2e9b5faaa3699bd530f))
* **wallpaper:** off-load spritesheet fetch to IO so per-petdx sprites actually render ([#2618](https://github.com/HankHuang0516/EClaw/issues/2618)) ([61b832c](https://github.com/HankHuang0516/EClaw/commit/61b832c9fa8a1d0caab810ccc942d85c63349267)), closes [#2615](https://github.com/HankHuang0516/EClaw/issues/2615) [#2577](https://github.com/HankHuang0516/EClaw/issues/2577)
* **security:** patch P0 sanitize-html XSS + P1 protobufjs + exam.html XSS ([#2829](https://github.com/HankHuang0516/EClaw/issues/2829)) ([c71b871](https://github.com/HankHuang0516/EClaw/commit/c71b871a045887375dd0d26d1a3280a0891a89ad))
* **security:** patch ws uninitialized memory disclosure (GHSA-58qx-3vcg-4xpx) ([#2872](https://github.com/HankHuang0516/EClaw/issues/2872)) ([2523d15](https://github.com/HankHuang0516/EClaw/commit/2523d154bbe501a7cc086340f7a07ece3abfa69b))
* **portal:** petdx-browser cookie-session fallback for device-login ([#2757](https://github.com/HankHuang0516/EClaw/issues/2757)) ([ca275f4](https://github.com/HankHuang0516/EClaw/commit/ca275f4519835da0c7ad71c588908a18f6f138d8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **api:** platform-stats 500 + entity/lookup publicCode alias ([#2809](https://github.com/HankHuang0516/EClaw/issues/2809), [#2810](https://github.com/HankHuang0516/EClaw/issues/2810)) ([#2818](https://github.com/HankHuang0516/EClaw/issues/2818)) ([f99fd17](https://github.com/HankHuang0516/EClaw/commit/f99fd17b2b1c32d88daa2510ff66d714c1a53edc))
* **i18n:** positional format specifiers for feedback_result_logs (7 locales) ([#2597](https://github.com/HankHuang0516/EClaw/issues/2597)) ([21aedc7](https://github.com/HankHuang0516/EClaw/commit/21aedc7eebc7a2839e340136f38dfdfd4dabb9dc))
* **avatar-petdx:** preserve descriptor across transient API failures (flicker) ([#2625](https://github.com/HankHuang0516/EClaw/issues/2625)) ([7b1c606](https://github.com/HankHuang0516/EClaw/commit/7b1c606514f7698d72ec95cf6c556e4043966186))
* **chat:** preserve scroll anchor while reading history ([#2693](https://github.com/HankHuang0516/EClaw/issues/2693)) ([945fdb7](https://github.com/HankHuang0516/EClaw/commit/945fdb7192b791b31882e1e75568dd8b11e4686f))
* **promo:** pull video embed from /promo-chat-avatar.html ([#2724](https://github.com/HankHuang0516/EClaw/issues/2724)) ([2afabc8](https://github.com/HankHuang0516/EClaw/commit/2afabc8c5ff8b25218a7cb857e8adfa572c8e9d5))
* **kanban:** realign stale recurring schedules ([#2785](https://github.com/HankHuang0516/EClaw/issues/2785)) ([ab8ee25](https://github.com/HankHuang0516/EClaw/commit/ab8ee250a9b37f3d3e838bb01d8866c8d2b78231))
* **portal:** reduce QA-discovered request fanout ([#2656](https://github.com/HankHuang0516/EClaw/issues/2656)) ([1e46d6b](https://github.com/HankHuang0516/EClaw/commit/1e46d6bab61e58c65b452b6503d953f8dddeee75))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **portal:** remove org chart fit scale floor ([#2676](https://github.com/HankHuang0516/EClaw/issues/2676)) ([0f01606](https://github.com/HankHuang0516/EClaw/commit/0f016068b963bb5f800a02f28817c7174979d913))
* **rental:** remove phantom 'webhook test push' step from BIND_COMPLETE ([#2864](https://github.com/HankHuang0516/EClaw/issues/2864)) ([47f4a3e](https://github.com/HankHuang0516/EClaw/commit/47f4a3edf76aa95ebd06d8713cd44fda6eef9b5d))
* **i18n:** rename mm_empty_title → mm_state_empty_title in mindmap.html ([#2683](https://github.com/HankHuang0516/EClaw/issues/2683)) ([c79c109](https://github.com/HankHuang0516/EClaw/commit/c79c109bea23142e8a6d9ace976d105af1280ec9))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **chat:** render mention avatars with companion renderer ([#2633](https://github.com/HankHuang0516/EClaw/issues/2633)) ([03e205f](https://github.com/HankHuang0516/EClaw/commit/03e205f663ecd2c2f443d4009dd5af0093f0bbbb))
* **kanban:** reserve mobile comments panel height ([#2782](https://github.com/HankHuang0516/EClaw/issues/2782)) ([ce8662d](https://github.com/HankHuang0516/EClaw/commit/ce8662d362422fdd25037f1deb61dbed9425e2f9))
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* scheduled audit 2026-05-13 — 6 bugs, XSS, i18n ([#2668](https://github.com/HankHuang0516/EClaw/issues/2668)) ([21dd513](https://github.com/HankHuang0516/EClaw/commit/21dd513b4464738de29164265437435ba6cc4817)), closes [#2605](https://github.com/HankHuang0516/EClaw/issues/2605) [#2608](https://github.com/HankHuang0516/EClaw/issues/2608) [#2600](https://github.com/HankHuang0516/EClaw/issues/2600) [#2599](https://github.com/HankHuang0516/EClaw/issues/2599) [#2598](https://github.com/HankHuang0516/EClaw/issues/2598)
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **chat:** smart-chip preview falls back to inline c.comments when /comments fails (PR [#2677](https://github.com/HankHuang0516/EClaw/issues/2677)) ([7f4dffd](https://github.com/HankHuang0516/EClaw/commit/7f4dffd2c83ea86f296b8fa0610f0e67c9f1af11))
* **kanban:** stabilize comment detail viewport ([#2796](https://github.com/HankHuang0516/EClaw/issues/2796)) ([0a10aad](https://github.com/HankHuang0516/EClaw/commit/0a10aadb5a5b12ff23454c16d5c88183b94ad7d7))
* **wallpaper:** stop Android live wallpaper flashing default lobster on companion change ([#2629](https://github.com/HankHuang0516/EClaw/issues/2629)) ([8b4f66f](https://github.com/HankHuang0516/EClaw/commit/8b4f66fcb335bf43128f924b761b6337c817095b)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **chat:** stop chat.html bouncing to dashboard via /api/rental/health-status 401 race ([#2833](https://github.com/HankHuang0516/EClaw/issues/2833)) ([c422406](https://github.com/HankHuang0516/EClaw/commit/c4224067cdcfe7f3e22ab95007c7563dac4196ac))
* **openclaw-channel:** support OpenClaw 2026.5.20 ([8045de6](https://github.com/HankHuang0516/EClaw/commit/8045de6bebecfc05f9bd57453b99c098ca35681b))
* **mentions:** support same-device CJK display-name tags ([#2874](https://github.com/HankHuang0516/EClaw/issues/2874)) ([b8f61be](https://github.com/HankHuang0516/EClaw/commit/b8f61be9a3962fef75dd32ea34e8900880dafaf9))
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **app:** WebView pages honor app-selected locale via ?lang= URL param ([#2672](https://github.com/HankHuang0516/EClaw/issues/2672)) ([8ed8757](https://github.com/HankHuang0516/EClaw/commit/8ed8757aec5bf214e837cc0d81bf2b23f1993a91)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **share-chat:** wire rich CTA actions to msgInput ([#2867](https://github.com/HankHuang0516/EClaw/issues/2867)) ([df23b11](https://github.com/HankHuang0516/EClaw/commit/df23b1147d34c59a644a145bbd87c18b96400acc))


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* **usage-api:** /api/usage/{snapshot,timeline} + usage_snapshots table (Plan B Phase 1) ([#2889](https://github.com/HankHuang0516/EClaw/issues/2889)) ([a0d859c](https://github.com/HankHuang0516/EClaw/commit/a0d859c63f0220909dadb2b1952174861ccdce14))
* **community:** 1-click chat button on bot cards + utm tagging ([#2610](https://github.com/HankHuang0516/EClaw/issues/2610)) ([eee97b0](https://github.com/HankHuang0516/EClaw/commit/eee97b0e2e4e74945ec24f218a69a52800b97a66))
* **chat:** accept ?messageId= as deep-link alias ([#2838](https://github.com/HankHuang0516/EClaw/issues/2838)) ([1785a87](https://github.com/HankHuang0516/EClaw/commit/1785a87310426637fd10df83754fb9924c45207f))
* **chat:** add avatar size preference ([#2714](https://github.com/HankHuang0516/EClaw/issues/2714)) ([6fe164a](https://github.com/HankHuang0516/EClaw/commit/6fe164ad8b22fa576d2dd9ad37c0d9fc295b5a83))
* **dashboard:** add Claude and Codex channel guides ([#2640](https://github.com/HankHuang0516/EClaw/issues/2640)) ([c64e4c4](https://github.com/HankHuang0516/EClaw/commit/c64e4c4afc78db58c5cd578f00486dd7b2fd3311))
* **dashboard:** add Claude Code channel guide card ([#2667](https://github.com/HankHuang0516/EClaw/issues/2667)) ([d70d75c](https://github.com/HankHuang0516/EClaw/commit/d70d75c0c8caa8a540358a9aab4556b8c1927a5c))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* **kanban:** add device-scoped card tags ([#2773](https://github.com/HankHuang0516/EClaw/issues/2773)) ([53a387e](https://github.com/HankHuang0516/EClaw/commit/53a387e67ba7bb4f6bed1c427000c4ae8666577a))
* **portal:** add entity selector to petdx-browser ([#2602](https://github.com/HankHuang0516/EClaw/issues/2602)) ([3fa067e](https://github.com/HankHuang0516/EClaw/commit/3fa067e00b38829b48a37cecd33ee81a9a1122d9))
* **kanban:** add explicit card links ([#2721](https://github.com/HankHuang0516/EClaw/issues/2721)) ([ef9f812](https://github.com/HankHuang0516/EClaw/commit/ef9f812a3fcf39efd07fd158ce90951bdd045ac7))
* **kanban:** add explicit done-card reopen flow ([#2801](https://github.com/HankHuang0516/EClaw/issues/2801)) ([5080aac](https://github.com/HankHuang0516/EClaw/commit/5080aacb75047c0deaa379ee708ec85465afd57c))
* **mindmap:** add GET /api/mindmap/graph force-graph projection ([#2680](https://github.com/HankHuang0516/EClaw/issues/2680)) ([a00b2e7](https://github.com/HankHuang0516/EClaw/commit/a00b2e775af2c4c98cd157f760ad87aeeee469f0)), closes [#2679](https://github.com/HankHuang0516/EClaw/issues/2679) [#2679](https://github.com/HankHuang0516/EClaw/issues/2679)
* **dashboard:** add Hermes channel promo card ([#2708](https://github.com/HankHuang0516/EClaw/issues/2708)) ([337aca1](https://github.com/HankHuang0516/EClaw/commit/337aca153d5a1cd7e888c065f00ae54db7872d91))
* **rental:** add listing soft pause ([#2781](https://github.com/HankHuang0516/EClaw/issues/2781)) ([6586b72](https://github.com/HankHuang0516/EClaw/commit/6586b72717ddb1637d91cd3242c8d2ff554f62b4))
* **portal:** add Nagoya 5D4N trip static cross-ref page ([#2689](https://github.com/HankHuang0516/EClaw/issues/2689)) ([2e0efb6](https://github.com/HankHuang0516/EClaw/commit/2e0efb6dcdaff52226cc8854a96747000b12bdff))
* **portal:** add Nagoya trip map links and image lightbox ([#2821](https://github.com/HankHuang0516/EClaw/issues/2821)) ([3e40955](https://github.com/HankHuang0516/EClaw/commit/3e40955650a05f45a6b9f7e39e73847705424a03))
* **portal/nagoya:** add parking shortcut buttons next to itinerary places ([#2826](https://github.com/HankHuang0516/EClaw/issues/2826)) ([63968c5](https://github.com/HankHuang0516/EClaw/commit/63968c554d046afc8d978de74e3aacbf7700500d))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **settings:** add rental roster management preview ([#2758](https://github.com/HankHuang0516/EClaw/issues/2758)) ([9706e59](https://github.com/HankHuang0516/EClaw/commit/9706e59ded140a90a6e02348124282bc69d89001))
* **rental:** add renter health chat indicator ([#2690](https://github.com/HankHuang0516/EClaw/issues/2690)) ([36cd2e9](https://github.com/HankHuang0516/EClaw/commit/36cd2e9802be4c7ebb03d3024617fa74aca48ffd))
* **ios:** add Tutorial & Intro entry in Settings ([#2800](https://github.com/HankHuang0516/EClaw/issues/2800)) ([ed83e51](https://github.com/HankHuang0516/EClaw/commit/ed83e51d043bf4cd5865f38dc95a91ed54820d6c))
* **landing:** add Watch Full Demo CTA below hero video ([#2799](https://github.com/HankHuang0516/EClaw/issues/2799)) ([66107c9](https://github.com/HankHuang0516/EClaw/commit/66107c954727551fd34d989a4674daaad9b63968))
* **footer:** add Watch Intro Video link in Info column ([#2798](https://github.com/HankHuang0516/EClaw/issues/2798)) ([d7c6d59](https://github.com/HankHuang0516/EClaw/commit/d7c6d596b69c6a5b257bf1f7a792a407ef9712ad))
* **i18n:** ar iter-2 — fill 623 missing keys against en source ([#2847](https://github.com/HankHuang0516/EClaw/issues/2847)) ([ee94a7a](https://github.com/HankHuang0516/EClaw/commit/ee94a7ae6812b5163efe4284ee4907ca32302f5c))
* **kanban:** backlog launch-gate flag to suppress L1/L2/L3 escalation ([#2855](https://github.com/HankHuang0516/EClaw/issues/2855)) ([cb8bf1b](https://github.com/HankHuang0516/EClaw/commit/cb8bf1bb6421f25214f65e129a8cadccc49cc266)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#4](https://github.com/HankHuang0516/EClaw/issues/4) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **companion:** bridge crafter-station/petdex gallery (1784 pets) ([#2601](https://github.com/HankHuang0516/EClaw/issues/2601)) ([2e245be](https://github.com/HankHuang0516/EClaw/commit/2e245bea6dd47ea7361b927d389188a3c23b6bb3))
* **promo:** chat avatar size feature landing page (self-hosted MP4) ([#2722](https://github.com/HankHuang0516/EClaw/issues/2722)) ([3852210](https://github.com/HankHuang0516/EClaw/commit/3852210d355704d018e3daca6b5f9512a011b210)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **kanban:** cron-spawn jitter + lane backpressure to prevent same-tick wedge ([#2791](https://github.com/HankHuang0516/EClaw/issues/2791)) ([9f414a7](https://github.com/HankHuang0516/EClaw/commit/9f414a731d6393672a0a4189c7b408c529ae5e12)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **portal:** dashboard usage widget — Claude/Codex 5h gauges + 24h chart (Plan B Phase 3) ([#2891](https://github.com/HankHuang0516/EClaw/issues/2891)) ([d18f373](https://github.com/HankHuang0516/EClaw/commit/d18f373857e4bd302437d6bda2a1e01871fbb1db))
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **promo:** embed daily eclaw video 2026-05-14 ([#2786](https://github.com/HankHuang0516/EClaw/issues/2786)) ([718a814](https://github.com/HankHuang0516/EClaw/commit/718a814ab16850bc2b33a1b303841e2c4378ecfa)), closes [#2782](https://github.com/HankHuang0516/EClaw/issues/2782) [#2693](https://github.com/HankHuang0516/EClaw/issues/2693)
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **info:** embed promo video at top of Quick Start tab ([#2797](https://github.com/HankHuang0516/EClaw/issues/2797)) ([047679f](https://github.com/HankHuang0516/EClaw/commit/047679fd57ab9949eaeacea414d5611e71afe041))
* **rental:** enforce strict rebind refunds ([#2703](https://github.com/HankHuang0516/EClaw/issues/2703)) ([a1859c5](https://github.com/HankHuang0516/EClaw/commit/a1859c50e6fb3991d7a8051491502d824a14a116))
* **portal:** group task chip actions ([#2825](https://github.com/HankHuang0516/EClaw/issues/2825)) ([5db5c59](https://github.com/HankHuang0516/EClaw/commit/5db5c59b32b8635f1412205faf0c2f9164d3d5d4))
* **portal:** info-guide-rules + info-guide-soul slide pair ([#2793](https://github.com/HankHuang0516/EClaw/issues/2793)) ([1c8bddc](https://github.com/HankHuang0516/EClaw/commit/1c8bddc4c185054b2b60088498e3d45509117127)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **chat:** link card previews to kanban ([#2754](https://github.com/HankHuang0516/EClaw/issues/2754)) ([2261240](https://github.com/HankHuang0516/EClaw/commit/22612402c2e95efb07246629e81a849be41ee9c7))
* **mission:** link notes to kanban cards ([#2723](https://github.com/HankHuang0516/EClaw/issues/2723)) ([b36dc18](https://github.com/HankHuang0516/EClaw/commit/b36dc18f3a8facf12e0b6046351c222f1e99dc55))
* **usage-daemon:** macOS launchd daemon polls Claude/Codex usage → POST /api/usage/snapshot (Plan B Phase 2) ([#2890](https://github.com/HankHuang0516/EClaw/issues/2890)) ([fd225e1](https://github.com/HankHuang0516/EClaw/commit/fd225e12d9491037be1a340bd63b54b5f3308c7f))
* **mindmap:** mission.html link to /portal/mindmap.html + deprecate /api/mission/mindmap ([#2685](https://github.com/HankHuang0516/EClaw/issues/2685)) ([11e297b](https://github.com/HankHuang0516/EClaw/commit/11e297bab1c9b56fcde3027d6500b7c58891bf18)), closes [#2680](https://github.com/HankHuang0516/EClaw/issues/2680) [#2684](https://github.com/HankHuang0516/EClaw/issues/2684)
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **portal:** nagoya trip interactive map (Leaflet + OSM, no API key) ([#2888](https://github.com/HankHuang0516/EClaw/issues/2888)) ([ecfdac0](https://github.com/HankHuang0516/EClaw/commit/ecfdac06348c12ee7c6872c6c28d5f82162e7aa9))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **settings:** per-entity nudge override UI (Phase 2) ([#2837](https://github.com/HankHuang0516/EClaw/issues/2837)) ([ea7662b](https://github.com/HankHuang0516/EClaw/commit/ea7662b0858882dae461e1387f711895924f9ab8)), closes [3/#4](https://github.com/HankHuang0516/EClaw/issues/4)
* **kanban:** per-entity nudge overrides (Phase 2 of card_e066cb6b) ([#2836](https://github.com/HankHuang0516/EClaw/issues/2836)) ([0425f80](https://github.com/HankHuang0516/EClaw/commit/0425f80bc1169c0d506b665659c8676695c45553))
* **avatar:** petdx render on card-holder my-cards (Phase 1b) ([#2621](https://github.com/HankHuang0516/EClaw/issues/2621)) ([f78ba8b](https://github.com/HankHuang0516/EClaw/commit/f78ba8b18acc426936ab6d8a82ca7541effea00d))
* **avatar:** petdx render on dashboard entity grid / org chart / bindings (Phase 1b) ([#2622](https://github.com/HankHuang0516/EClaw/issues/2622)) ([f417749](https://github.com/HankHuang0516/EClaw/commit/f41774914451048e8cd76e9ae30416a0642e173b)), closes [#2620](https://github.com/HankHuang0516/EClaw/issues/2620) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621)
* **avatar:** petdx render on kanban auto-assign / pulse / comment avatars (Phase 1b) ([#2624](https://github.com/HankHuang0516/EClaw/issues/2624)) ([6bff5f8](https://github.com/HankHuang0516/EClaw/commit/6bff5f80440d0bd91a6b1721cde9478d685c4d46))
* **avatar:** petdx render on mission skill/rule/soul entity dialogs (Phase 1b) ([#2623](https://github.com/HankHuang0516/EClaw/issues/2623)) ([129327b](https://github.com/HankHuang0516/EClaw/commit/129327bc7b91056659f1ab7e8d5e3f5260d951fb))
* **mindmap:** portal/mindmap.html force-graph prototype ([#129](https://github.com/HankHuang0516/EClaw/issues/129)) ([#2681](https://github.com/HankHuang0516/EClaw/issues/2681)) ([0f15e69](https://github.com/HankHuang0516/EClaw/commit/0f15e6930f0697c37fa08f3219edb8f9e499837f)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **portal:** redo nagoya trip page in professional tour-guide style ([#2691](https://github.com/HankHuang0516/EClaw/issues/2691)) ([b2378c0](https://github.com/HankHuang0516/EClaw/commit/b2378c06ee20fa9cccfdceceb1a4c9e0b3072f59))
* **i18n:** remove ms+hi orphan keys from i18n.js ([#2849](https://github.com/HankHuang0516/EClaw/issues/2849)) ([320176c](https://github.com/HankHuang0516/EClaw/commit/320176c06a3cfd8631e2a82ad02a6bd6a9af0389))
* **avatar:** render selected petdx companion in chat avatars ([#2620](https://github.com/HankHuang0516/EClaw/issues/2620)) ([0bdd046](https://github.com/HankHuang0516/EClaw/commit/0bdd046fe1b1c428e32edda366ff112c08927f4c))
* **home:** replace native home with WebView hosting dashboard.html ([#2634](https://github.com/HankHuang0516/EClaw/issues/2634)) ([e69ea81](https://github.com/HankHuang0516/EClaw/commit/e69ea8160c239b083a83d6dc83a4f1c3f901c863))
* **app:** route chat mission jumps through native tabs ([#2824](https://github.com/HankHuang0516/EClaw/issues/2824)) ([deb07b6](https://github.com/HankHuang0516/EClaw/commit/deb07b69a9ecca632fe27278de537f1d85234e94))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **chat:** support message deep links ([#2719](https://github.com/HankHuang0516/EClaw/issues/2719)) ([2dc0f1e](https://github.com/HankHuang0516/EClaw/commit/2dc0f1eeb259e1a0848db4a03186b989372cd91c))
* **mission:** support note deep links ([#2717](https://github.com/HankHuang0516/EClaw/issues/2717)) ([2efd3a5](https://github.com/HankHuang0516/EClaw/commit/2efd3a5e741217a07c0b0ac54a0ddd010e0ebe23))
* **share-chat:** twitter card + per-bot og:image/twitter:* in SSR ([#2609](https://github.com/HankHuang0516/EClaw/issues/2609)) ([6cdc853](https://github.com/HankHuang0516/EClaw/commit/6cdc853dc884cdb95bd47214942768981f218ae0))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))
* **settings:** wire petdx avatar into channel-account chips ([#2626](https://github.com/HankHuang0516/EClaw/issues/2626)) ([88aec77](https://github.com/HankHuang0516/EClaw/commit/88aec772628c240e97b336bb5820892ad632d1ae))
* **files:** wire petdx avatar into entity filter & per-file badges ([#2627](https://github.com/HankHuang0516/EClaw/issues/2627)) ([5b3e5cc](https://github.com/HankHuang0516/EClaw/commit/5b3e5cc542d9da69bb4e92500fd03a542ea33f00))
* **mindmap:** wrap hardcoded zh-TW UI strings with i18n t() ([#2607](https://github.com/HankHuang0516/EClaw/issues/2607)) ([166af87](https://github.com/HankHuang0516/EClaw/commit/166af8772b2121a24aaf34a83b3de970e9b3b571)), closes [#2606](https://github.com/HankHuang0516/EClaw/issues/2606)
* **i18n:** zh-TW backfill 8 keys (soft-pause + chat + invite + wallet) ([#2815](https://github.com/HankHuang0516/EClaw/issues/2815)) ([a2dd574](https://github.com/HankHuang0516/EClaw/commit/a2dd5743ce8d43a4b6ace9a2fd4b52568180d6c5))


### Performance Improvements

* **mindmap:** force-graph hardening for 1000/2000-node graphs ([#2684](https://github.com/HankHuang0516/EClaw/issues/2684)) ([da8b1c8](https://github.com/HankHuang0516/EClaw/commit/da8b1c8f947ab8bc8fa455c1962a91146623a1fc))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-23)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **notifications:** add kanban_done + kanban_done_auto toggles to Android Settings ([#2636](https://github.com/HankHuang0516/EClaw/issues/2636)) ([a710909](https://github.com/HankHuang0516/EClaw/commit/a7109095e3393b8564e7ef1b23d382a4fbb944b8))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **i18n:** ar block — fix 27 broken entries (CJK leaks + truncated HTML) ([#2851](https://github.com/HankHuang0516/EClaw/issues/2851)) ([5b19175](https://github.com/HankHuang0516/EClaw/commit/5b19175d712d00d16fcec00b749035c4beae7a5c))
* **chat:** atomic-load target bar (await contacts before first render) ([#2831](https://github.com/HankHuang0516/EClaw/issues/2831)) ([5f529e6](https://github.com/HankHuang0516/EClaw/commit/5f529e6b772eacc38ba1de69b44258a05f0d816a)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2](https://github.com/HankHuang0516/EClaw/issues/2)
* **channel:** await binding persistence ([712516d](https://github.com/HankHuang0516/EClaw/commit/712516decafb745035bd1434a28cc1973d433e19))
* **rental:** bump handshake timeout to 60s + timeout-aware discovery fallback ([#2863](https://github.com/HankHuang0516/EClaw/issues/2863)) ([fd4322f](https://github.com/HankHuang0516/EClaw/commit/fd4322f8890f3c2dfca3acdae6a4b95f19c381f9)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **i18n:** clear batch 1 residual missing keys ([#2790](https://github.com/HankHuang0516/EClaw/issues/2790)) ([211030e](https://github.com/HankHuang0516/EClaw/commit/211030e0b0b6a865c11f0c4ed60dc4e356d43b7a))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **kanban:** comment input no longer overlaps last comment in card detail (PR [#2678](https://github.com/HankHuang0516/EClaw/issues/2678)) ([fba91fc](https://github.com/HankHuang0516/EClaw/commit/fba91fca15402b453a0db5ee857c0b16e6087055))
* **chat:** compact 20px avatar in target bar (App WebView only shows [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2](https://github.com/HankHuang0516/EClaw/issues/2)) ([#2830](https://github.com/HankHuang0516/EClaw/issues/2830)) ([42c7543](https://github.com/HankHuang0516/EClaw/commit/42c7543b4a78a7abf3f5f7535eb9bc6142cd0fe2)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **portal:** complete 401 redirect sweep + mobile UIUX truncation ([#2842](https://github.com/HankHuang0516/EClaw/issues/2842)) ([f9799ba](https://github.com/HankHuang0516/EClaw/commit/f9799ba42498b109f0a8a70e80836aa6da51e216)), closes [#2833](https://github.com/HankHuang0516/EClaw/issues/2833) [#2845](https://github.com/HankHuang0516/EClaw/issues/2845) [#2844](https://github.com/HankHuang0516/EClaw/issues/2844) [#2843](https://github.com/HankHuang0516/EClaw/issues/2843)
* **uiux:** continue qa mobile readability sweep ([#2854](https://github.com/HankHuang0516/EClaw/issues/2854)) ([57606ff](https://github.com/HankHuang0516/EClaw/commit/57606ffe3e543b07a026aacc53c4b470c9a7825b))
* **i18n:** cover dynamic portal wrapper keys ([#2807](https://github.com/HankHuang0516/EClaw/issues/2807)) ([4c711cc](https://github.com/HankHuang0516/EClaw/commit/4c711cc4009300ffe4e8933a98ee01cd0fdd6aeb))
* **i18n:** dedup 20 dash_channel_card_* keys in es block ([#2876](https://github.com/HankHuang0516/EClaw/issues/2876)) ([807284c](https://github.com/HankHuang0516/EClaw/commit/807284ce363ef119ccdb0ae40e5ce99d3f0a27e0))
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **rental:** don't pollute entity.message on push gateway timeout ([#2860](https://github.com/HankHuang0516/EClaw/issues/2860)) ([592ba44](https://github.com/HankHuang0516/EClaw/commit/592ba44f57536ee00011b6cbddaa6b129a7cbae9))
* **petdx:** drop dark-grey loading placeholder + preload sprite WEBP ([#2628](https://github.com/HankHuang0516/EClaw/issues/2628)) ([59cef38](https://github.com/HankHuang0516/EClaw/commit/59cef387bd69ca99d7d15c86a1364856d3849ad8)), closes [#1a1a1a](https://github.com/HankHuang0516/EClaw/issues/1a1a1a)
* **gateway-ws:** drop Origin header on server-to-server WS upgrade ([#2869](https://github.com/HankHuang0516/EClaw/issues/2869)) ([716dcf9](https://github.com/HankHuang0516/EClaw/commit/716dcf9d0834b17522bb9d894bad84bc142d1a19))
* **setup-scripts:** drop Origin header on server-to-server WS upgrade ([#2875](https://github.com/HankHuang0516/EClaw/issues/2875)) ([9d893b8](https://github.com/HankHuang0516/EClaw/commit/9d893b8e5eea4db275e450bf423903c156cd3e4b)), closes [#2869](https://github.com/HankHuang0516/EClaw/issues/2869)
* **security:** escape innerHTML in chat modal error messages ([#2819](https://github.com/HankHuang0516/EClaw/issues/2819)) ([dce07ad](https://github.com/HankHuang0516/EClaw/commit/dce07adde64795916dba977ae23e46f3371ce7ed)), closes [#2809](https://github.com/HankHuang0516/EClaw/issues/2809) [#2810](https://github.com/HankHuang0516/EClaw/issues/2810) [#2809](https://github.com/HankHuang0516/EClaw/issues/2809) [#2810](https://github.com/HankHuang0516/EClaw/issues/2810)
* **entities:** expose botSecret to owner so wallpaper service can poll companions ([#2615](https://github.com/HankHuang0516/EClaw/issues/2615)) ([04470fc](https://github.com/HankHuang0516/EClaw/commit/04470fce8f8c3fce2b1ba8b243e776606f107502))
* **rental:** expose owner_public_code in marketplace so plaza CTA can route ([#2616](https://github.com/HankHuang0516/EClaw/issues/2616)) ([4d1372f](https://github.com/HankHuang0516/EClaw/commit/4d1372f717d93cab65543e87c852e74e9fb67071)), closes [#2610](https://github.com/HankHuang0516/EClaw/issues/2610)
* **mindmap:** fallback to device scope when entityId is null ([#2728](https://github.com/HankHuang0516/EClaw/issues/2728)) ([7572312](https://github.com/HankHuang0516/EClaw/commit/7572312433d3d75fc245eda48a28919ce14bd927))
* **i18n:** fill Spanish drift keys ([#2751](https://github.com/HankHuang0516/EClaw/issues/2751)) ([0ad0ee5](https://github.com/HankHuang0516/EClaw/commit/0ad0ee55f7fac3e6ac46d891539950dab4d553cc))
* **portal:** fit embedded org chart to mobile viewport ([#2674](https://github.com/HankHuang0516/EClaw/issues/2674)) ([1c4e1b4](https://github.com/HankHuang0516/EClaw/commit/1c4e1b413ea7027b4cd4b8ecda981b0d0e12e66b))
* **i18n:** fix 6 trailing-comma syntax errors in 10-locale batch ([#2771](https://github.com/HankHuang0516/EClaw/issues/2771)) ([b27c6ca](https://github.com/HankHuang0516/EClaw/commit/b27c6ca204bf813e406c54ce3a2532a5f1f031b3))
* **kanban:** GET card returns latest 50 comments + comments endpoint exposes total ([#2816](https://github.com/HankHuang0516/EClaw/issues/2816)) ([c4d83f7](https://github.com/HankHuang0516/EClaw/commit/c4d83f777a1cd26aea0936e4316aa35c52822eef))
* **sharechat:** guest verify-email modal + disabled Send for unverified ([#2865](https://github.com/HankHuang0516/EClaw/issues/2865)) ([cb3b061](https://github.com/HankHuang0516/EClaw/commit/cb3b0614e0f6160417d907753e66eceb2d666802))
* **uiux:** harden chat previews and roster preview ([#2769](https://github.com/HankHuang0516/EClaw/issues/2769)) ([466d4d3](https://github.com/HankHuang0516/EClaw/commit/466d4d3ef81c628d3f58db64323946053d7bf61c))
* **mention-parser:** ignore @-mentions inside markdown code spans ([#2645](https://github.com/HankHuang0516/EClaw/issues/2645)) ([8da19d4](https://github.com/HankHuang0516/EClaw/commit/8da19d4a79ceb4152bf2144ee0847c61ce3e1def)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **kanban:** lazy-load dependency chips via IntersectionObserver ([#2632](https://github.com/HankHuang0516/EClaw/issues/2632)) ([20586b4](https://github.com/HankHuang0516/EClaw/commit/20586b43357335f9eb6a190c02d58c8e36b58aba)), closes [#2631](https://github.com/HankHuang0516/EClaw/issues/2631)
* **kanban:** make card sorting deterministic ([#2756](https://github.com/HankHuang0516/EClaw/issues/2756)) ([48e2117](https://github.com/HankHuang0516/EClaw/commit/48e2117b64e37f05dc635e0a3b67bfd43cbe48f5))
* **org-chart:** notify affected bots on hierarchy change ([#2812](https://github.com/HankHuang0516/EClaw/issues/2812)) ([55675fd](https://github.com/HankHuang0516/EClaw/commit/55675fdf4487494d729a29524b32bd81b756a00c)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** notify reviewer on manual /move → review ([#2753](https://github.com/HankHuang0516/EClaw/issues/2753)) ([6cbbb4e](https://github.com/HankHuang0516/EClaw/commit/6cbbb4ee8c0d4d8ad54df2e9b5faaa3699bd530f))
* **wallpaper:** off-load spritesheet fetch to IO so per-petdx sprites actually render ([#2618](https://github.com/HankHuang0516/EClaw/issues/2618)) ([61b832c](https://github.com/HankHuang0516/EClaw/commit/61b832c9fa8a1d0caab810ccc942d85c63349267)), closes [#2615](https://github.com/HankHuang0516/EClaw/issues/2615) [#2577](https://github.com/HankHuang0516/EClaw/issues/2577)
* **security:** patch P0 sanitize-html XSS + P1 protobufjs + exam.html XSS ([#2829](https://github.com/HankHuang0516/EClaw/issues/2829)) ([c71b871](https://github.com/HankHuang0516/EClaw/commit/c71b871a045887375dd0d26d1a3280a0891a89ad))
* **security:** patch ws uninitialized memory disclosure (GHSA-58qx-3vcg-4xpx) ([#2872](https://github.com/HankHuang0516/EClaw/issues/2872)) ([2523d15](https://github.com/HankHuang0516/EClaw/commit/2523d154bbe501a7cc086340f7a07ece3abfa69b))
* **portal:** petdx-browser cookie-session fallback for device-login ([#2757](https://github.com/HankHuang0516/EClaw/issues/2757)) ([ca275f4](https://github.com/HankHuang0516/EClaw/commit/ca275f4519835da0c7ad71c588908a18f6f138d8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **api:** platform-stats 500 + entity/lookup publicCode alias ([#2809](https://github.com/HankHuang0516/EClaw/issues/2809), [#2810](https://github.com/HankHuang0516/EClaw/issues/2810)) ([#2818](https://github.com/HankHuang0516/EClaw/issues/2818)) ([f99fd17](https://github.com/HankHuang0516/EClaw/commit/f99fd17b2b1c32d88daa2510ff66d714c1a53edc))
* **i18n:** positional format specifiers for feedback_result_logs (7 locales) ([#2597](https://github.com/HankHuang0516/EClaw/issues/2597)) ([21aedc7](https://github.com/HankHuang0516/EClaw/commit/21aedc7eebc7a2839e340136f38dfdfd4dabb9dc))
* **avatar-petdx:** preserve descriptor across transient API failures (flicker) ([#2625](https://github.com/HankHuang0516/EClaw/issues/2625)) ([7b1c606](https://github.com/HankHuang0516/EClaw/commit/7b1c606514f7698d72ec95cf6c556e4043966186))
* **chat:** preserve scroll anchor while reading history ([#2693](https://github.com/HankHuang0516/EClaw/issues/2693)) ([945fdb7](https://github.com/HankHuang0516/EClaw/commit/945fdb7192b791b31882e1e75568dd8b11e4686f))
* **promo:** pull video embed from /promo-chat-avatar.html ([#2724](https://github.com/HankHuang0516/EClaw/issues/2724)) ([2afabc8](https://github.com/HankHuang0516/EClaw/commit/2afabc8c5ff8b25218a7cb857e8adfa572c8e9d5))
* **kanban:** realign stale recurring schedules ([#2785](https://github.com/HankHuang0516/EClaw/issues/2785)) ([ab8ee25](https://github.com/HankHuang0516/EClaw/commit/ab8ee250a9b37f3d3e838bb01d8866c8d2b78231))
* **portal:** reduce QA-discovered request fanout ([#2656](https://github.com/HankHuang0516/EClaw/issues/2656)) ([1e46d6b](https://github.com/HankHuang0516/EClaw/commit/1e46d6bab61e58c65b452b6503d953f8dddeee75))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **portal:** remove org chart fit scale floor ([#2676](https://github.com/HankHuang0516/EClaw/issues/2676)) ([0f01606](https://github.com/HankHuang0516/EClaw/commit/0f016068b963bb5f800a02f28817c7174979d913))
* **rental:** remove phantom 'webhook test push' step from BIND_COMPLETE ([#2864](https://github.com/HankHuang0516/EClaw/issues/2864)) ([47f4a3e](https://github.com/HankHuang0516/EClaw/commit/47f4a3edf76aa95ebd06d8713cd44fda6eef9b5d))
* **i18n:** rename mm_empty_title → mm_state_empty_title in mindmap.html ([#2683](https://github.com/HankHuang0516/EClaw/issues/2683)) ([c79c109](https://github.com/HankHuang0516/EClaw/commit/c79c109bea23142e8a6d9ace976d105af1280ec9))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **chat:** render mention avatars with companion renderer ([#2633](https://github.com/HankHuang0516/EClaw/issues/2633)) ([03e205f](https://github.com/HankHuang0516/EClaw/commit/03e205f663ecd2c2f443d4009dd5af0093f0bbbb))
* **kanban:** reserve mobile comments panel height ([#2782](https://github.com/HankHuang0516/EClaw/issues/2782)) ([ce8662d](https://github.com/HankHuang0516/EClaw/commit/ce8662d362422fdd25037f1deb61dbed9425e2f9))
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* scheduled audit 2026-05-13 — 6 bugs, XSS, i18n ([#2668](https://github.com/HankHuang0516/EClaw/issues/2668)) ([21dd513](https://github.com/HankHuang0516/EClaw/commit/21dd513b4464738de29164265437435ba6cc4817)), closes [#2605](https://github.com/HankHuang0516/EClaw/issues/2605) [#2608](https://github.com/HankHuang0516/EClaw/issues/2608) [#2600](https://github.com/HankHuang0516/EClaw/issues/2600) [#2599](https://github.com/HankHuang0516/EClaw/issues/2599) [#2598](https://github.com/HankHuang0516/EClaw/issues/2598)
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **chat:** smart-chip preview falls back to inline c.comments when /comments fails (PR [#2677](https://github.com/HankHuang0516/EClaw/issues/2677)) ([7f4dffd](https://github.com/HankHuang0516/EClaw/commit/7f4dffd2c83ea86f296b8fa0610f0e67c9f1af11))
* **kanban:** stabilize comment detail viewport ([#2796](https://github.com/HankHuang0516/EClaw/issues/2796)) ([0a10aad](https://github.com/HankHuang0516/EClaw/commit/0a10aadb5a5b12ff23454c16d5c88183b94ad7d7))
* **wallpaper:** stop Android live wallpaper flashing default lobster on companion change ([#2629](https://github.com/HankHuang0516/EClaw/issues/2629)) ([8b4f66f](https://github.com/HankHuang0516/EClaw/commit/8b4f66fcb335bf43128f924b761b6337c817095b)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **chat:** stop chat.html bouncing to dashboard via /api/rental/health-status 401 race ([#2833](https://github.com/HankHuang0516/EClaw/issues/2833)) ([c422406](https://github.com/HankHuang0516/EClaw/commit/c4224067cdcfe7f3e22ab95007c7563dac4196ac))
* **openclaw-channel:** support OpenClaw 2026.5.20 ([8045de6](https://github.com/HankHuang0516/EClaw/commit/8045de6bebecfc05f9bd57453b99c098ca35681b))
* **mentions:** support same-device CJK display-name tags ([#2874](https://github.com/HankHuang0516/EClaw/issues/2874)) ([b8f61be](https://github.com/HankHuang0516/EClaw/commit/b8f61be9a3962fef75dd32ea34e8900880dafaf9))
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **app:** WebView pages honor app-selected locale via ?lang= URL param ([#2672](https://github.com/HankHuang0516/EClaw/issues/2672)) ([8ed8757](https://github.com/HankHuang0516/EClaw/commit/8ed8757aec5bf214e837cc0d81bf2b23f1993a91)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **share-chat:** wire rich CTA actions to msgInput ([#2867](https://github.com/HankHuang0516/EClaw/issues/2867)) ([df23b11](https://github.com/HankHuang0516/EClaw/commit/df23b1147d34c59a644a145bbd87c18b96400acc))


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* **usage-api:** /api/usage/{snapshot,timeline} + usage_snapshots table (Plan B Phase 1) ([#2889](https://github.com/HankHuang0516/EClaw/issues/2889)) ([a0d859c](https://github.com/HankHuang0516/EClaw/commit/a0d859c63f0220909dadb2b1952174861ccdce14))
* **community:** 1-click chat button on bot cards + utm tagging ([#2610](https://github.com/HankHuang0516/EClaw/issues/2610)) ([eee97b0](https://github.com/HankHuang0516/EClaw/commit/eee97b0e2e4e74945ec24f218a69a52800b97a66))
* **chat:** accept ?messageId= as deep-link alias ([#2838](https://github.com/HankHuang0516/EClaw/issues/2838)) ([1785a87](https://github.com/HankHuang0516/EClaw/commit/1785a87310426637fd10df83754fb9924c45207f))
* **chat:** add avatar size preference ([#2714](https://github.com/HankHuang0516/EClaw/issues/2714)) ([6fe164a](https://github.com/HankHuang0516/EClaw/commit/6fe164ad8b22fa576d2dd9ad37c0d9fc295b5a83))
* **dashboard:** add Claude and Codex channel guides ([#2640](https://github.com/HankHuang0516/EClaw/issues/2640)) ([c64e4c4](https://github.com/HankHuang0516/EClaw/commit/c64e4c4afc78db58c5cd578f00486dd7b2fd3311))
* **dashboard:** add Claude Code channel guide card ([#2667](https://github.com/HankHuang0516/EClaw/issues/2667)) ([d70d75c](https://github.com/HankHuang0516/EClaw/commit/d70d75c0c8caa8a540358a9aab4556b8c1927a5c))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* **kanban:** add device-scoped card tags ([#2773](https://github.com/HankHuang0516/EClaw/issues/2773)) ([53a387e](https://github.com/HankHuang0516/EClaw/commit/53a387e67ba7bb4f6bed1c427000c4ae8666577a))
* **portal:** add entity selector to petdx-browser ([#2602](https://github.com/HankHuang0516/EClaw/issues/2602)) ([3fa067e](https://github.com/HankHuang0516/EClaw/commit/3fa067e00b38829b48a37cecd33ee81a9a1122d9))
* **kanban:** add explicit card links ([#2721](https://github.com/HankHuang0516/EClaw/issues/2721)) ([ef9f812](https://github.com/HankHuang0516/EClaw/commit/ef9f812a3fcf39efd07fd158ce90951bdd045ac7))
* **kanban:** add explicit done-card reopen flow ([#2801](https://github.com/HankHuang0516/EClaw/issues/2801)) ([5080aac](https://github.com/HankHuang0516/EClaw/commit/5080aacb75047c0deaa379ee708ec85465afd57c))
* **mindmap:** add GET /api/mindmap/graph force-graph projection ([#2680](https://github.com/HankHuang0516/EClaw/issues/2680)) ([a00b2e7](https://github.com/HankHuang0516/EClaw/commit/a00b2e775af2c4c98cd157f760ad87aeeee469f0)), closes [#2679](https://github.com/HankHuang0516/EClaw/issues/2679) [#2679](https://github.com/HankHuang0516/EClaw/issues/2679)
* **dashboard:** add Hermes channel promo card ([#2708](https://github.com/HankHuang0516/EClaw/issues/2708)) ([337aca1](https://github.com/HankHuang0516/EClaw/commit/337aca153d5a1cd7e888c065f00ae54db7872d91))
* **rental:** add listing soft pause ([#2781](https://github.com/HankHuang0516/EClaw/issues/2781)) ([6586b72](https://github.com/HankHuang0516/EClaw/commit/6586b72717ddb1637d91cd3242c8d2ff554f62b4))
* **portal:** add Nagoya 5D4N trip static cross-ref page ([#2689](https://github.com/HankHuang0516/EClaw/issues/2689)) ([2e0efb6](https://github.com/HankHuang0516/EClaw/commit/2e0efb6dcdaff52226cc8854a96747000b12bdff))
* **portal:** add Nagoya trip map links and image lightbox ([#2821](https://github.com/HankHuang0516/EClaw/issues/2821)) ([3e40955](https://github.com/HankHuang0516/EClaw/commit/3e40955650a05f45a6b9f7e39e73847705424a03))
* **portal/nagoya:** add parking shortcut buttons next to itinerary places ([#2826](https://github.com/HankHuang0516/EClaw/issues/2826)) ([63968c5](https://github.com/HankHuang0516/EClaw/commit/63968c554d046afc8d978de74e3aacbf7700500d))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **settings:** add rental roster management preview ([#2758](https://github.com/HankHuang0516/EClaw/issues/2758)) ([9706e59](https://github.com/HankHuang0516/EClaw/commit/9706e59ded140a90a6e02348124282bc69d89001))
* **rental:** add renter health chat indicator ([#2690](https://github.com/HankHuang0516/EClaw/issues/2690)) ([36cd2e9](https://github.com/HankHuang0516/EClaw/commit/36cd2e9802be4c7ebb03d3024617fa74aca48ffd))
* **ios:** add Tutorial & Intro entry in Settings ([#2800](https://github.com/HankHuang0516/EClaw/issues/2800)) ([ed83e51](https://github.com/HankHuang0516/EClaw/commit/ed83e51d043bf4cd5865f38dc95a91ed54820d6c))
* **landing:** add Watch Full Demo CTA below hero video ([#2799](https://github.com/HankHuang0516/EClaw/issues/2799)) ([66107c9](https://github.com/HankHuang0516/EClaw/commit/66107c954727551fd34d989a4674daaad9b63968))
* **footer:** add Watch Intro Video link in Info column ([#2798](https://github.com/HankHuang0516/EClaw/issues/2798)) ([d7c6d59](https://github.com/HankHuang0516/EClaw/commit/d7c6d596b69c6a5b257bf1f7a792a407ef9712ad))
* **i18n:** ar iter-2 — fill 623 missing keys against en source ([#2847](https://github.com/HankHuang0516/EClaw/issues/2847)) ([ee94a7a](https://github.com/HankHuang0516/EClaw/commit/ee94a7ae6812b5163efe4284ee4907ca32302f5c))
* **kanban:** backlog launch-gate flag to suppress L1/L2/L3 escalation ([#2855](https://github.com/HankHuang0516/EClaw/issues/2855)) ([cb8bf1b](https://github.com/HankHuang0516/EClaw/commit/cb8bf1bb6421f25214f65e129a8cadccc49cc266)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#4](https://github.com/HankHuang0516/EClaw/issues/4) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **companion:** bridge crafter-station/petdex gallery (1784 pets) ([#2601](https://github.com/HankHuang0516/EClaw/issues/2601)) ([2e245be](https://github.com/HankHuang0516/EClaw/commit/2e245bea6dd47ea7361b927d389188a3c23b6bb3))
* **promo:** chat avatar size feature landing page (self-hosted MP4) ([#2722](https://github.com/HankHuang0516/EClaw/issues/2722)) ([3852210](https://github.com/HankHuang0516/EClaw/commit/3852210d355704d018e3daca6b5f9512a011b210)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **kanban:** cron-spawn jitter + lane backpressure to prevent same-tick wedge ([#2791](https://github.com/HankHuang0516/EClaw/issues/2791)) ([9f414a7](https://github.com/HankHuang0516/EClaw/commit/9f414a731d6393672a0a4189c7b408c529ae5e12)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **promo:** embed daily eclaw video 2026-05-14 ([#2786](https://github.com/HankHuang0516/EClaw/issues/2786)) ([718a814](https://github.com/HankHuang0516/EClaw/commit/718a814ab16850bc2b33a1b303841e2c4378ecfa)), closes [#2782](https://github.com/HankHuang0516/EClaw/issues/2782) [#2693](https://github.com/HankHuang0516/EClaw/issues/2693)
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **info:** embed promo video at top of Quick Start tab ([#2797](https://github.com/HankHuang0516/EClaw/issues/2797)) ([047679f](https://github.com/HankHuang0516/EClaw/commit/047679fd57ab9949eaeacea414d5611e71afe041))
* **rental:** enforce strict rebind refunds ([#2703](https://github.com/HankHuang0516/EClaw/issues/2703)) ([a1859c5](https://github.com/HankHuang0516/EClaw/commit/a1859c50e6fb3991d7a8051491502d824a14a116))
* **portal:** group task chip actions ([#2825](https://github.com/HankHuang0516/EClaw/issues/2825)) ([5db5c59](https://github.com/HankHuang0516/EClaw/commit/5db5c59b32b8635f1412205faf0c2f9164d3d5d4))
* **portal:** info-guide-rules + info-guide-soul slide pair ([#2793](https://github.com/HankHuang0516/EClaw/issues/2793)) ([1c8bddc](https://github.com/HankHuang0516/EClaw/commit/1c8bddc4c185054b2b60088498e3d45509117127)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **chat:** link card previews to kanban ([#2754](https://github.com/HankHuang0516/EClaw/issues/2754)) ([2261240](https://github.com/HankHuang0516/EClaw/commit/22612402c2e95efb07246629e81a849be41ee9c7))
* **mission:** link notes to kanban cards ([#2723](https://github.com/HankHuang0516/EClaw/issues/2723)) ([b36dc18](https://github.com/HankHuang0516/EClaw/commit/b36dc18f3a8facf12e0b6046351c222f1e99dc55))
* **usage-daemon:** macOS launchd daemon polls Claude/Codex usage → POST /api/usage/snapshot (Plan B Phase 2) ([#2890](https://github.com/HankHuang0516/EClaw/issues/2890)) ([fd225e1](https://github.com/HankHuang0516/EClaw/commit/fd225e12d9491037be1a340bd63b54b5f3308c7f))
* **mindmap:** mission.html link to /portal/mindmap.html + deprecate /api/mission/mindmap ([#2685](https://github.com/HankHuang0516/EClaw/issues/2685)) ([11e297b](https://github.com/HankHuang0516/EClaw/commit/11e297bab1c9b56fcde3027d6500b7c58891bf18)), closes [#2680](https://github.com/HankHuang0516/EClaw/issues/2680) [#2684](https://github.com/HankHuang0516/EClaw/issues/2684)
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **portal:** nagoya trip interactive map (Leaflet + OSM, no API key) ([#2888](https://github.com/HankHuang0516/EClaw/issues/2888)) ([ecfdac0](https://github.com/HankHuang0516/EClaw/commit/ecfdac06348c12ee7c6872c6c28d5f82162e7aa9))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **settings:** per-entity nudge override UI (Phase 2) ([#2837](https://github.com/HankHuang0516/EClaw/issues/2837)) ([ea7662b](https://github.com/HankHuang0516/EClaw/commit/ea7662b0858882dae461e1387f711895924f9ab8)), closes [3/#4](https://github.com/HankHuang0516/EClaw/issues/4)
* **kanban:** per-entity nudge overrides (Phase 2 of card_e066cb6b) ([#2836](https://github.com/HankHuang0516/EClaw/issues/2836)) ([0425f80](https://github.com/HankHuang0516/EClaw/commit/0425f80bc1169c0d506b665659c8676695c45553))
* **avatar:** petdx render on card-holder my-cards (Phase 1b) ([#2621](https://github.com/HankHuang0516/EClaw/issues/2621)) ([f78ba8b](https://github.com/HankHuang0516/EClaw/commit/f78ba8b18acc426936ab6d8a82ca7541effea00d))
* **avatar:** petdx render on dashboard entity grid / org chart / bindings (Phase 1b) ([#2622](https://github.com/HankHuang0516/EClaw/issues/2622)) ([f417749](https://github.com/HankHuang0516/EClaw/commit/f41774914451048e8cd76e9ae30416a0642e173b)), closes [#2620](https://github.com/HankHuang0516/EClaw/issues/2620) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621)
* **avatar:** petdx render on kanban auto-assign / pulse / comment avatars (Phase 1b) ([#2624](https://github.com/HankHuang0516/EClaw/issues/2624)) ([6bff5f8](https://github.com/HankHuang0516/EClaw/commit/6bff5f80440d0bd91a6b1721cde9478d685c4d46))
* **avatar:** petdx render on mission skill/rule/soul entity dialogs (Phase 1b) ([#2623](https://github.com/HankHuang0516/EClaw/issues/2623)) ([129327b](https://github.com/HankHuang0516/EClaw/commit/129327bc7b91056659f1ab7e8d5e3f5260d951fb))
* **mindmap:** portal/mindmap.html force-graph prototype ([#129](https://github.com/HankHuang0516/EClaw/issues/129)) ([#2681](https://github.com/HankHuang0516/EClaw/issues/2681)) ([0f15e69](https://github.com/HankHuang0516/EClaw/commit/0f15e6930f0697c37fa08f3219edb8f9e499837f)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **portal:** redo nagoya trip page in professional tour-guide style ([#2691](https://github.com/HankHuang0516/EClaw/issues/2691)) ([b2378c0](https://github.com/HankHuang0516/EClaw/commit/b2378c06ee20fa9cccfdceceb1a4c9e0b3072f59))
* **i18n:** remove ms+hi orphan keys from i18n.js ([#2849](https://github.com/HankHuang0516/EClaw/issues/2849)) ([320176c](https://github.com/HankHuang0516/EClaw/commit/320176c06a3cfd8631e2a82ad02a6bd6a9af0389))
* **avatar:** render selected petdx companion in chat avatars ([#2620](https://github.com/HankHuang0516/EClaw/issues/2620)) ([0bdd046](https://github.com/HankHuang0516/EClaw/commit/0bdd046fe1b1c428e32edda366ff112c08927f4c))
* **home:** replace native home with WebView hosting dashboard.html ([#2634](https://github.com/HankHuang0516/EClaw/issues/2634)) ([e69ea81](https://github.com/HankHuang0516/EClaw/commit/e69ea8160c239b083a83d6dc83a4f1c3f901c863))
* **app:** route chat mission jumps through native tabs ([#2824](https://github.com/HankHuang0516/EClaw/issues/2824)) ([deb07b6](https://github.com/HankHuang0516/EClaw/commit/deb07b69a9ecca632fe27278de537f1d85234e94))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **chat:** support message deep links ([#2719](https://github.com/HankHuang0516/EClaw/issues/2719)) ([2dc0f1e](https://github.com/HankHuang0516/EClaw/commit/2dc0f1eeb259e1a0848db4a03186b989372cd91c))
* **mission:** support note deep links ([#2717](https://github.com/HankHuang0516/EClaw/issues/2717)) ([2efd3a5](https://github.com/HankHuang0516/EClaw/commit/2efd3a5e741217a07c0b0ac54a0ddd010e0ebe23))
* **share-chat:** twitter card + per-bot og:image/twitter:* in SSR ([#2609](https://github.com/HankHuang0516/EClaw/issues/2609)) ([6cdc853](https://github.com/HankHuang0516/EClaw/commit/6cdc853dc884cdb95bd47214942768981f218ae0))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))
* **settings:** wire petdx avatar into channel-account chips ([#2626](https://github.com/HankHuang0516/EClaw/issues/2626)) ([88aec77](https://github.com/HankHuang0516/EClaw/commit/88aec772628c240e97b336bb5820892ad632d1ae))
* **files:** wire petdx avatar into entity filter & per-file badges ([#2627](https://github.com/HankHuang0516/EClaw/issues/2627)) ([5b3e5cc](https://github.com/HankHuang0516/EClaw/commit/5b3e5cc542d9da69bb4e92500fd03a542ea33f00))
* **mindmap:** wrap hardcoded zh-TW UI strings with i18n t() ([#2607](https://github.com/HankHuang0516/EClaw/issues/2607)) ([166af87](https://github.com/HankHuang0516/EClaw/commit/166af8772b2121a24aaf34a83b3de970e9b3b571)), closes [#2606](https://github.com/HankHuang0516/EClaw/issues/2606)
* **i18n:** zh-TW backfill 8 keys (soft-pause + chat + invite + wallet) ([#2815](https://github.com/HankHuang0516/EClaw/issues/2815)) ([a2dd574](https://github.com/HankHuang0516/EClaw/commit/a2dd5743ce8d43a4b6ace9a2fd4b52568180d6c5))


### Performance Improvements

* **mindmap:** force-graph hardening for 1000/2000-node graphs ([#2684](https://github.com/HankHuang0516/EClaw/issues/2684)) ([da8b1c8](https://github.com/HankHuang0516/EClaw/commit/da8b1c8f947ab8bc8fa455c1962a91146623a1fc))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-23)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **notifications:** add kanban_done + kanban_done_auto toggles to Android Settings ([#2636](https://github.com/HankHuang0516/EClaw/issues/2636)) ([a710909](https://github.com/HankHuang0516/EClaw/commit/a7109095e3393b8564e7ef1b23d382a4fbb944b8))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **i18n:** ar block — fix 27 broken entries (CJK leaks + truncated HTML) ([#2851](https://github.com/HankHuang0516/EClaw/issues/2851)) ([5b19175](https://github.com/HankHuang0516/EClaw/commit/5b19175d712d00d16fcec00b749035c4beae7a5c))
* **chat:** atomic-load target bar (await contacts before first render) ([#2831](https://github.com/HankHuang0516/EClaw/issues/2831)) ([5f529e6](https://github.com/HankHuang0516/EClaw/commit/5f529e6b772eacc38ba1de69b44258a05f0d816a)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2](https://github.com/HankHuang0516/EClaw/issues/2)
* **channel:** await binding persistence ([712516d](https://github.com/HankHuang0516/EClaw/commit/712516decafb745035bd1434a28cc1973d433e19))
* **rental:** bump handshake timeout to 60s + timeout-aware discovery fallback ([#2863](https://github.com/HankHuang0516/EClaw/issues/2863)) ([fd4322f](https://github.com/HankHuang0516/EClaw/commit/fd4322f8890f3c2dfca3acdae6a4b95f19c381f9)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **i18n:** clear batch 1 residual missing keys ([#2790](https://github.com/HankHuang0516/EClaw/issues/2790)) ([211030e](https://github.com/HankHuang0516/EClaw/commit/211030e0b0b6a865c11f0c4ed60dc4e356d43b7a))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **kanban:** comment input no longer overlaps last comment in card detail (PR [#2678](https://github.com/HankHuang0516/EClaw/issues/2678)) ([fba91fc](https://github.com/HankHuang0516/EClaw/commit/fba91fca15402b453a0db5ee857c0b16e6087055))
* **chat:** compact 20px avatar in target bar (App WebView only shows [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2](https://github.com/HankHuang0516/EClaw/issues/2)) ([#2830](https://github.com/HankHuang0516/EClaw/issues/2830)) ([42c7543](https://github.com/HankHuang0516/EClaw/commit/42c7543b4a78a7abf3f5f7535eb9bc6142cd0fe2)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **portal:** complete 401 redirect sweep + mobile UIUX truncation ([#2842](https://github.com/HankHuang0516/EClaw/issues/2842)) ([f9799ba](https://github.com/HankHuang0516/EClaw/commit/f9799ba42498b109f0a8a70e80836aa6da51e216)), closes [#2833](https://github.com/HankHuang0516/EClaw/issues/2833) [#2845](https://github.com/HankHuang0516/EClaw/issues/2845) [#2844](https://github.com/HankHuang0516/EClaw/issues/2844) [#2843](https://github.com/HankHuang0516/EClaw/issues/2843)
* **uiux:** continue qa mobile readability sweep ([#2854](https://github.com/HankHuang0516/EClaw/issues/2854)) ([57606ff](https://github.com/HankHuang0516/EClaw/commit/57606ffe3e543b07a026aacc53c4b470c9a7825b))
* **i18n:** cover dynamic portal wrapper keys ([#2807](https://github.com/HankHuang0516/EClaw/issues/2807)) ([4c711cc](https://github.com/HankHuang0516/EClaw/commit/4c711cc4009300ffe4e8933a98ee01cd0fdd6aeb))
* **i18n:** dedup 20 dash_channel_card_* keys in es block ([#2876](https://github.com/HankHuang0516/EClaw/issues/2876)) ([807284c](https://github.com/HankHuang0516/EClaw/commit/807284ce363ef119ccdb0ae40e5ce99d3f0a27e0))
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **rental:** don't pollute entity.message on push gateway timeout ([#2860](https://github.com/HankHuang0516/EClaw/issues/2860)) ([592ba44](https://github.com/HankHuang0516/EClaw/commit/592ba44f57536ee00011b6cbddaa6b129a7cbae9))
* **petdx:** drop dark-grey loading placeholder + preload sprite WEBP ([#2628](https://github.com/HankHuang0516/EClaw/issues/2628)) ([59cef38](https://github.com/HankHuang0516/EClaw/commit/59cef387bd69ca99d7d15c86a1364856d3849ad8)), closes [#1a1a1a](https://github.com/HankHuang0516/EClaw/issues/1a1a1a)
* **gateway-ws:** drop Origin header on server-to-server WS upgrade ([#2869](https://github.com/HankHuang0516/EClaw/issues/2869)) ([716dcf9](https://github.com/HankHuang0516/EClaw/commit/716dcf9d0834b17522bb9d894bad84bc142d1a19))
* **setup-scripts:** drop Origin header on server-to-server WS upgrade ([#2875](https://github.com/HankHuang0516/EClaw/issues/2875)) ([9d893b8](https://github.com/HankHuang0516/EClaw/commit/9d893b8e5eea4db275e450bf423903c156cd3e4b)), closes [#2869](https://github.com/HankHuang0516/EClaw/issues/2869)
* **security:** escape innerHTML in chat modal error messages ([#2819](https://github.com/HankHuang0516/EClaw/issues/2819)) ([dce07ad](https://github.com/HankHuang0516/EClaw/commit/dce07adde64795916dba977ae23e46f3371ce7ed)), closes [#2809](https://github.com/HankHuang0516/EClaw/issues/2809) [#2810](https://github.com/HankHuang0516/EClaw/issues/2810) [#2809](https://github.com/HankHuang0516/EClaw/issues/2809) [#2810](https://github.com/HankHuang0516/EClaw/issues/2810)
* **entities:** expose botSecret to owner so wallpaper service can poll companions ([#2615](https://github.com/HankHuang0516/EClaw/issues/2615)) ([04470fc](https://github.com/HankHuang0516/EClaw/commit/04470fce8f8c3fce2b1ba8b243e776606f107502))
* **rental:** expose owner_public_code in marketplace so plaza CTA can route ([#2616](https://github.com/HankHuang0516/EClaw/issues/2616)) ([4d1372f](https://github.com/HankHuang0516/EClaw/commit/4d1372f717d93cab65543e87c852e74e9fb67071)), closes [#2610](https://github.com/HankHuang0516/EClaw/issues/2610)
* **mindmap:** fallback to device scope when entityId is null ([#2728](https://github.com/HankHuang0516/EClaw/issues/2728)) ([7572312](https://github.com/HankHuang0516/EClaw/commit/7572312433d3d75fc245eda48a28919ce14bd927))
* **i18n:** fill Spanish drift keys ([#2751](https://github.com/HankHuang0516/EClaw/issues/2751)) ([0ad0ee5](https://github.com/HankHuang0516/EClaw/commit/0ad0ee55f7fac3e6ac46d891539950dab4d553cc))
* **portal:** fit embedded org chart to mobile viewport ([#2674](https://github.com/HankHuang0516/EClaw/issues/2674)) ([1c4e1b4](https://github.com/HankHuang0516/EClaw/commit/1c4e1b413ea7027b4cd4b8ecda981b0d0e12e66b))
* **i18n:** fix 6 trailing-comma syntax errors in 10-locale batch ([#2771](https://github.com/HankHuang0516/EClaw/issues/2771)) ([b27c6ca](https://github.com/HankHuang0516/EClaw/commit/b27c6ca204bf813e406c54ce3a2532a5f1f031b3))
* **kanban:** GET card returns latest 50 comments + comments endpoint exposes total ([#2816](https://github.com/HankHuang0516/EClaw/issues/2816)) ([c4d83f7](https://github.com/HankHuang0516/EClaw/commit/c4d83f777a1cd26aea0936e4316aa35c52822eef))
* **sharechat:** guest verify-email modal + disabled Send for unverified ([#2865](https://github.com/HankHuang0516/EClaw/issues/2865)) ([cb3b061](https://github.com/HankHuang0516/EClaw/commit/cb3b0614e0f6160417d907753e66eceb2d666802))
* **uiux:** harden chat previews and roster preview ([#2769](https://github.com/HankHuang0516/EClaw/issues/2769)) ([466d4d3](https://github.com/HankHuang0516/EClaw/commit/466d4d3ef81c628d3f58db64323946053d7bf61c))
* **mention-parser:** ignore @-mentions inside markdown code spans ([#2645](https://github.com/HankHuang0516/EClaw/issues/2645)) ([8da19d4](https://github.com/HankHuang0516/EClaw/commit/8da19d4a79ceb4152bf2144ee0847c61ce3e1def)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **kanban:** lazy-load dependency chips via IntersectionObserver ([#2632](https://github.com/HankHuang0516/EClaw/issues/2632)) ([20586b4](https://github.com/HankHuang0516/EClaw/commit/20586b43357335f9eb6a190c02d58c8e36b58aba)), closes [#2631](https://github.com/HankHuang0516/EClaw/issues/2631)
* **kanban:** make card sorting deterministic ([#2756](https://github.com/HankHuang0516/EClaw/issues/2756)) ([48e2117](https://github.com/HankHuang0516/EClaw/commit/48e2117b64e37f05dc635e0a3b67bfd43cbe48f5))
* **org-chart:** notify affected bots on hierarchy change ([#2812](https://github.com/HankHuang0516/EClaw/issues/2812)) ([55675fd](https://github.com/HankHuang0516/EClaw/commit/55675fdf4487494d729a29524b32bd81b756a00c)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** notify reviewer on manual /move → review ([#2753](https://github.com/HankHuang0516/EClaw/issues/2753)) ([6cbbb4e](https://github.com/HankHuang0516/EClaw/commit/6cbbb4ee8c0d4d8ad54df2e9b5faaa3699bd530f))
* **wallpaper:** off-load spritesheet fetch to IO so per-petdx sprites actually render ([#2618](https://github.com/HankHuang0516/EClaw/issues/2618)) ([61b832c](https://github.com/HankHuang0516/EClaw/commit/61b832c9fa8a1d0caab810ccc942d85c63349267)), closes [#2615](https://github.com/HankHuang0516/EClaw/issues/2615) [#2577](https://github.com/HankHuang0516/EClaw/issues/2577)
* **security:** patch P0 sanitize-html XSS + P1 protobufjs + exam.html XSS ([#2829](https://github.com/HankHuang0516/EClaw/issues/2829)) ([c71b871](https://github.com/HankHuang0516/EClaw/commit/c71b871a045887375dd0d26d1a3280a0891a89ad))
* **security:** patch ws uninitialized memory disclosure (GHSA-58qx-3vcg-4xpx) ([#2872](https://github.com/HankHuang0516/EClaw/issues/2872)) ([2523d15](https://github.com/HankHuang0516/EClaw/commit/2523d154bbe501a7cc086340f7a07ece3abfa69b))
* **portal:** petdx-browser cookie-session fallback for device-login ([#2757](https://github.com/HankHuang0516/EClaw/issues/2757)) ([ca275f4](https://github.com/HankHuang0516/EClaw/commit/ca275f4519835da0c7ad71c588908a18f6f138d8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **api:** platform-stats 500 + entity/lookup publicCode alias ([#2809](https://github.com/HankHuang0516/EClaw/issues/2809), [#2810](https://github.com/HankHuang0516/EClaw/issues/2810)) ([#2818](https://github.com/HankHuang0516/EClaw/issues/2818)) ([f99fd17](https://github.com/HankHuang0516/EClaw/commit/f99fd17b2b1c32d88daa2510ff66d714c1a53edc))
* **i18n:** positional format specifiers for feedback_result_logs (7 locales) ([#2597](https://github.com/HankHuang0516/EClaw/issues/2597)) ([21aedc7](https://github.com/HankHuang0516/EClaw/commit/21aedc7eebc7a2839e340136f38dfdfd4dabb9dc))
* **avatar-petdx:** preserve descriptor across transient API failures (flicker) ([#2625](https://github.com/HankHuang0516/EClaw/issues/2625)) ([7b1c606](https://github.com/HankHuang0516/EClaw/commit/7b1c606514f7698d72ec95cf6c556e4043966186))
* **chat:** preserve scroll anchor while reading history ([#2693](https://github.com/HankHuang0516/EClaw/issues/2693)) ([945fdb7](https://github.com/HankHuang0516/EClaw/commit/945fdb7192b791b31882e1e75568dd8b11e4686f))
* **promo:** pull video embed from /promo-chat-avatar.html ([#2724](https://github.com/HankHuang0516/EClaw/issues/2724)) ([2afabc8](https://github.com/HankHuang0516/EClaw/commit/2afabc8c5ff8b25218a7cb857e8adfa572c8e9d5))
* **kanban:** realign stale recurring schedules ([#2785](https://github.com/HankHuang0516/EClaw/issues/2785)) ([ab8ee25](https://github.com/HankHuang0516/EClaw/commit/ab8ee250a9b37f3d3e838bb01d8866c8d2b78231))
* **portal:** reduce QA-discovered request fanout ([#2656](https://github.com/HankHuang0516/EClaw/issues/2656)) ([1e46d6b](https://github.com/HankHuang0516/EClaw/commit/1e46d6bab61e58c65b452b6503d953f8dddeee75))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **portal:** remove org chart fit scale floor ([#2676](https://github.com/HankHuang0516/EClaw/issues/2676)) ([0f01606](https://github.com/HankHuang0516/EClaw/commit/0f016068b963bb5f800a02f28817c7174979d913))
* **rental:** remove phantom 'webhook test push' step from BIND_COMPLETE ([#2864](https://github.com/HankHuang0516/EClaw/issues/2864)) ([47f4a3e](https://github.com/HankHuang0516/EClaw/commit/47f4a3edf76aa95ebd06d8713cd44fda6eef9b5d))
* **i18n:** rename mm_empty_title → mm_state_empty_title in mindmap.html ([#2683](https://github.com/HankHuang0516/EClaw/issues/2683)) ([c79c109](https://github.com/HankHuang0516/EClaw/commit/c79c109bea23142e8a6d9ace976d105af1280ec9))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **chat:** render mention avatars with companion renderer ([#2633](https://github.com/HankHuang0516/EClaw/issues/2633)) ([03e205f](https://github.com/HankHuang0516/EClaw/commit/03e205f663ecd2c2f443d4009dd5af0093f0bbbb))
* **kanban:** reserve mobile comments panel height ([#2782](https://github.com/HankHuang0516/EClaw/issues/2782)) ([ce8662d](https://github.com/HankHuang0516/EClaw/commit/ce8662d362422fdd25037f1deb61dbed9425e2f9))
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* scheduled audit 2026-05-13 — 6 bugs, XSS, i18n ([#2668](https://github.com/HankHuang0516/EClaw/issues/2668)) ([21dd513](https://github.com/HankHuang0516/EClaw/commit/21dd513b4464738de29164265437435ba6cc4817)), closes [#2605](https://github.com/HankHuang0516/EClaw/issues/2605) [#2608](https://github.com/HankHuang0516/EClaw/issues/2608) [#2600](https://github.com/HankHuang0516/EClaw/issues/2600) [#2599](https://github.com/HankHuang0516/EClaw/issues/2599) [#2598](https://github.com/HankHuang0516/EClaw/issues/2598)
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **chat:** smart-chip preview falls back to inline c.comments when /comments fails (PR [#2677](https://github.com/HankHuang0516/EClaw/issues/2677)) ([7f4dffd](https://github.com/HankHuang0516/EClaw/commit/7f4dffd2c83ea86f296b8fa0610f0e67c9f1af11))
* **kanban:** stabilize comment detail viewport ([#2796](https://github.com/HankHuang0516/EClaw/issues/2796)) ([0a10aad](https://github.com/HankHuang0516/EClaw/commit/0a10aadb5a5b12ff23454c16d5c88183b94ad7d7))
* **wallpaper:** stop Android live wallpaper flashing default lobster on companion change ([#2629](https://github.com/HankHuang0516/EClaw/issues/2629)) ([8b4f66f](https://github.com/HankHuang0516/EClaw/commit/8b4f66fcb335bf43128f924b761b6337c817095b)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **chat:** stop chat.html bouncing to dashboard via /api/rental/health-status 401 race ([#2833](https://github.com/HankHuang0516/EClaw/issues/2833)) ([c422406](https://github.com/HankHuang0516/EClaw/commit/c4224067cdcfe7f3e22ab95007c7563dac4196ac))
* **openclaw-channel:** support OpenClaw 2026.5.20 ([8045de6](https://github.com/HankHuang0516/EClaw/commit/8045de6bebecfc05f9bd57453b99c098ca35681b))
* **mentions:** support same-device CJK display-name tags ([#2874](https://github.com/HankHuang0516/EClaw/issues/2874)) ([b8f61be](https://github.com/HankHuang0516/EClaw/commit/b8f61be9a3962fef75dd32ea34e8900880dafaf9))
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **app:** WebView pages honor app-selected locale via ?lang= URL param ([#2672](https://github.com/HankHuang0516/EClaw/issues/2672)) ([8ed8757](https://github.com/HankHuang0516/EClaw/commit/8ed8757aec5bf214e837cc0d81bf2b23f1993a91)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **share-chat:** wire rich CTA actions to msgInput ([#2867](https://github.com/HankHuang0516/EClaw/issues/2867)) ([df23b11](https://github.com/HankHuang0516/EClaw/commit/df23b1147d34c59a644a145bbd87c18b96400acc))


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* **usage-api:** /api/usage/{snapshot,timeline} + usage_snapshots table (Plan B Phase 1) ([#2889](https://github.com/HankHuang0516/EClaw/issues/2889)) ([a0d859c](https://github.com/HankHuang0516/EClaw/commit/a0d859c63f0220909dadb2b1952174861ccdce14))
* **community:** 1-click chat button on bot cards + utm tagging ([#2610](https://github.com/HankHuang0516/EClaw/issues/2610)) ([eee97b0](https://github.com/HankHuang0516/EClaw/commit/eee97b0e2e4e74945ec24f218a69a52800b97a66))
* **chat:** accept ?messageId= as deep-link alias ([#2838](https://github.com/HankHuang0516/EClaw/issues/2838)) ([1785a87](https://github.com/HankHuang0516/EClaw/commit/1785a87310426637fd10df83754fb9924c45207f))
* **chat:** add avatar size preference ([#2714](https://github.com/HankHuang0516/EClaw/issues/2714)) ([6fe164a](https://github.com/HankHuang0516/EClaw/commit/6fe164ad8b22fa576d2dd9ad37c0d9fc295b5a83))
* **dashboard:** add Claude and Codex channel guides ([#2640](https://github.com/HankHuang0516/EClaw/issues/2640)) ([c64e4c4](https://github.com/HankHuang0516/EClaw/commit/c64e4c4afc78db58c5cd578f00486dd7b2fd3311))
* **dashboard:** add Claude Code channel guide card ([#2667](https://github.com/HankHuang0516/EClaw/issues/2667)) ([d70d75c](https://github.com/HankHuang0516/EClaw/commit/d70d75c0c8caa8a540358a9aab4556b8c1927a5c))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* **kanban:** add device-scoped card tags ([#2773](https://github.com/HankHuang0516/EClaw/issues/2773)) ([53a387e](https://github.com/HankHuang0516/EClaw/commit/53a387e67ba7bb4f6bed1c427000c4ae8666577a))
* **portal:** add entity selector to petdx-browser ([#2602](https://github.com/HankHuang0516/EClaw/issues/2602)) ([3fa067e](https://github.com/HankHuang0516/EClaw/commit/3fa067e00b38829b48a37cecd33ee81a9a1122d9))
* **kanban:** add explicit card links ([#2721](https://github.com/HankHuang0516/EClaw/issues/2721)) ([ef9f812](https://github.com/HankHuang0516/EClaw/commit/ef9f812a3fcf39efd07fd158ce90951bdd045ac7))
* **kanban:** add explicit done-card reopen flow ([#2801](https://github.com/HankHuang0516/EClaw/issues/2801)) ([5080aac](https://github.com/HankHuang0516/EClaw/commit/5080aacb75047c0deaa379ee708ec85465afd57c))
* **mindmap:** add GET /api/mindmap/graph force-graph projection ([#2680](https://github.com/HankHuang0516/EClaw/issues/2680)) ([a00b2e7](https://github.com/HankHuang0516/EClaw/commit/a00b2e775af2c4c98cd157f760ad87aeeee469f0)), closes [#2679](https://github.com/HankHuang0516/EClaw/issues/2679) [#2679](https://github.com/HankHuang0516/EClaw/issues/2679)
* **dashboard:** add Hermes channel promo card ([#2708](https://github.com/HankHuang0516/EClaw/issues/2708)) ([337aca1](https://github.com/HankHuang0516/EClaw/commit/337aca153d5a1cd7e888c065f00ae54db7872d91))
* **rental:** add listing soft pause ([#2781](https://github.com/HankHuang0516/EClaw/issues/2781)) ([6586b72](https://github.com/HankHuang0516/EClaw/commit/6586b72717ddb1637d91cd3242c8d2ff554f62b4))
* **portal:** add Nagoya 5D4N trip static cross-ref page ([#2689](https://github.com/HankHuang0516/EClaw/issues/2689)) ([2e0efb6](https://github.com/HankHuang0516/EClaw/commit/2e0efb6dcdaff52226cc8854a96747000b12bdff))
* **portal:** add Nagoya trip map links and image lightbox ([#2821](https://github.com/HankHuang0516/EClaw/issues/2821)) ([3e40955](https://github.com/HankHuang0516/EClaw/commit/3e40955650a05f45a6b9f7e39e73847705424a03))
* **portal/nagoya:** add parking shortcut buttons next to itinerary places ([#2826](https://github.com/HankHuang0516/EClaw/issues/2826)) ([63968c5](https://github.com/HankHuang0516/EClaw/commit/63968c554d046afc8d978de74e3aacbf7700500d))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **settings:** add rental roster management preview ([#2758](https://github.com/HankHuang0516/EClaw/issues/2758)) ([9706e59](https://github.com/HankHuang0516/EClaw/commit/9706e59ded140a90a6e02348124282bc69d89001))
* **rental:** add renter health chat indicator ([#2690](https://github.com/HankHuang0516/EClaw/issues/2690)) ([36cd2e9](https://github.com/HankHuang0516/EClaw/commit/36cd2e9802be4c7ebb03d3024617fa74aca48ffd))
* **ios:** add Tutorial & Intro entry in Settings ([#2800](https://github.com/HankHuang0516/EClaw/issues/2800)) ([ed83e51](https://github.com/HankHuang0516/EClaw/commit/ed83e51d043bf4cd5865f38dc95a91ed54820d6c))
* **landing:** add Watch Full Demo CTA below hero video ([#2799](https://github.com/HankHuang0516/EClaw/issues/2799)) ([66107c9](https://github.com/HankHuang0516/EClaw/commit/66107c954727551fd34d989a4674daaad9b63968))
* **footer:** add Watch Intro Video link in Info column ([#2798](https://github.com/HankHuang0516/EClaw/issues/2798)) ([d7c6d59](https://github.com/HankHuang0516/EClaw/commit/d7c6d596b69c6a5b257bf1f7a792a407ef9712ad))
* **i18n:** ar iter-2 — fill 623 missing keys against en source ([#2847](https://github.com/HankHuang0516/EClaw/issues/2847)) ([ee94a7a](https://github.com/HankHuang0516/EClaw/commit/ee94a7ae6812b5163efe4284ee4907ca32302f5c))
* **kanban:** backlog launch-gate flag to suppress L1/L2/L3 escalation ([#2855](https://github.com/HankHuang0516/EClaw/issues/2855)) ([cb8bf1b](https://github.com/HankHuang0516/EClaw/commit/cb8bf1bb6421f25214f65e129a8cadccc49cc266)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#4](https://github.com/HankHuang0516/EClaw/issues/4) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **companion:** bridge crafter-station/petdex gallery (1784 pets) ([#2601](https://github.com/HankHuang0516/EClaw/issues/2601)) ([2e245be](https://github.com/HankHuang0516/EClaw/commit/2e245bea6dd47ea7361b927d389188a3c23b6bb3))
* **promo:** chat avatar size feature landing page (self-hosted MP4) ([#2722](https://github.com/HankHuang0516/EClaw/issues/2722)) ([3852210](https://github.com/HankHuang0516/EClaw/commit/3852210d355704d018e3daca6b5f9512a011b210)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **kanban:** cron-spawn jitter + lane backpressure to prevent same-tick wedge ([#2791](https://github.com/HankHuang0516/EClaw/issues/2791)) ([9f414a7](https://github.com/HankHuang0516/EClaw/commit/9f414a731d6393672a0a4189c7b408c529ae5e12)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **promo:** embed daily eclaw video 2026-05-14 ([#2786](https://github.com/HankHuang0516/EClaw/issues/2786)) ([718a814](https://github.com/HankHuang0516/EClaw/commit/718a814ab16850bc2b33a1b303841e2c4378ecfa)), closes [#2782](https://github.com/HankHuang0516/EClaw/issues/2782) [#2693](https://github.com/HankHuang0516/EClaw/issues/2693)
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **info:** embed promo video at top of Quick Start tab ([#2797](https://github.com/HankHuang0516/EClaw/issues/2797)) ([047679f](https://github.com/HankHuang0516/EClaw/commit/047679fd57ab9949eaeacea414d5611e71afe041))
* **rental:** enforce strict rebind refunds ([#2703](https://github.com/HankHuang0516/EClaw/issues/2703)) ([a1859c5](https://github.com/HankHuang0516/EClaw/commit/a1859c50e6fb3991d7a8051491502d824a14a116))
* **portal:** group task chip actions ([#2825](https://github.com/HankHuang0516/EClaw/issues/2825)) ([5db5c59](https://github.com/HankHuang0516/EClaw/commit/5db5c59b32b8635f1412205faf0c2f9164d3d5d4))
* **portal:** info-guide-rules + info-guide-soul slide pair ([#2793](https://github.com/HankHuang0516/EClaw/issues/2793)) ([1c8bddc](https://github.com/HankHuang0516/EClaw/commit/1c8bddc4c185054b2b60088498e3d45509117127)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **chat:** link card previews to kanban ([#2754](https://github.com/HankHuang0516/EClaw/issues/2754)) ([2261240](https://github.com/HankHuang0516/EClaw/commit/22612402c2e95efb07246629e81a849be41ee9c7))
* **mission:** link notes to kanban cards ([#2723](https://github.com/HankHuang0516/EClaw/issues/2723)) ([b36dc18](https://github.com/HankHuang0516/EClaw/commit/b36dc18f3a8facf12e0b6046351c222f1e99dc55))
* **mindmap:** mission.html link to /portal/mindmap.html + deprecate /api/mission/mindmap ([#2685](https://github.com/HankHuang0516/EClaw/issues/2685)) ([11e297b](https://github.com/HankHuang0516/EClaw/commit/11e297bab1c9b56fcde3027d6500b7c58891bf18)), closes [#2680](https://github.com/HankHuang0516/EClaw/issues/2680) [#2684](https://github.com/HankHuang0516/EClaw/issues/2684)
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **portal:** nagoya trip interactive map (Leaflet + OSM, no API key) ([#2888](https://github.com/HankHuang0516/EClaw/issues/2888)) ([ecfdac0](https://github.com/HankHuang0516/EClaw/commit/ecfdac06348c12ee7c6872c6c28d5f82162e7aa9))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **settings:** per-entity nudge override UI (Phase 2) ([#2837](https://github.com/HankHuang0516/EClaw/issues/2837)) ([ea7662b](https://github.com/HankHuang0516/EClaw/commit/ea7662b0858882dae461e1387f711895924f9ab8)), closes [3/#4](https://github.com/HankHuang0516/EClaw/issues/4)
* **kanban:** per-entity nudge overrides (Phase 2 of card_e066cb6b) ([#2836](https://github.com/HankHuang0516/EClaw/issues/2836)) ([0425f80](https://github.com/HankHuang0516/EClaw/commit/0425f80bc1169c0d506b665659c8676695c45553))
* **avatar:** petdx render on card-holder my-cards (Phase 1b) ([#2621](https://github.com/HankHuang0516/EClaw/issues/2621)) ([f78ba8b](https://github.com/HankHuang0516/EClaw/commit/f78ba8b18acc426936ab6d8a82ca7541effea00d))
* **avatar:** petdx render on dashboard entity grid / org chart / bindings (Phase 1b) ([#2622](https://github.com/HankHuang0516/EClaw/issues/2622)) ([f417749](https://github.com/HankHuang0516/EClaw/commit/f41774914451048e8cd76e9ae30416a0642e173b)), closes [#2620](https://github.com/HankHuang0516/EClaw/issues/2620) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621)
* **avatar:** petdx render on kanban auto-assign / pulse / comment avatars (Phase 1b) ([#2624](https://github.com/HankHuang0516/EClaw/issues/2624)) ([6bff5f8](https://github.com/HankHuang0516/EClaw/commit/6bff5f80440d0bd91a6b1721cde9478d685c4d46))
* **avatar:** petdx render on mission skill/rule/soul entity dialogs (Phase 1b) ([#2623](https://github.com/HankHuang0516/EClaw/issues/2623)) ([129327b](https://github.com/HankHuang0516/EClaw/commit/129327bc7b91056659f1ab7e8d5e3f5260d951fb))
* **mindmap:** portal/mindmap.html force-graph prototype ([#129](https://github.com/HankHuang0516/EClaw/issues/129)) ([#2681](https://github.com/HankHuang0516/EClaw/issues/2681)) ([0f15e69](https://github.com/HankHuang0516/EClaw/commit/0f15e6930f0697c37fa08f3219edb8f9e499837f)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **portal:** redo nagoya trip page in professional tour-guide style ([#2691](https://github.com/HankHuang0516/EClaw/issues/2691)) ([b2378c0](https://github.com/HankHuang0516/EClaw/commit/b2378c06ee20fa9cccfdceceb1a4c9e0b3072f59))
* **i18n:** remove ms+hi orphan keys from i18n.js ([#2849](https://github.com/HankHuang0516/EClaw/issues/2849)) ([320176c](https://github.com/HankHuang0516/EClaw/commit/320176c06a3cfd8631e2a82ad02a6bd6a9af0389))
* **avatar:** render selected petdx companion in chat avatars ([#2620](https://github.com/HankHuang0516/EClaw/issues/2620)) ([0bdd046](https://github.com/HankHuang0516/EClaw/commit/0bdd046fe1b1c428e32edda366ff112c08927f4c))
* **home:** replace native home with WebView hosting dashboard.html ([#2634](https://github.com/HankHuang0516/EClaw/issues/2634)) ([e69ea81](https://github.com/HankHuang0516/EClaw/commit/e69ea8160c239b083a83d6dc83a4f1c3f901c863))
* **app:** route chat mission jumps through native tabs ([#2824](https://github.com/HankHuang0516/EClaw/issues/2824)) ([deb07b6](https://github.com/HankHuang0516/EClaw/commit/deb07b69a9ecca632fe27278de537f1d85234e94))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **chat:** support message deep links ([#2719](https://github.com/HankHuang0516/EClaw/issues/2719)) ([2dc0f1e](https://github.com/HankHuang0516/EClaw/commit/2dc0f1eeb259e1a0848db4a03186b989372cd91c))
* **mission:** support note deep links ([#2717](https://github.com/HankHuang0516/EClaw/issues/2717)) ([2efd3a5](https://github.com/HankHuang0516/EClaw/commit/2efd3a5e741217a07c0b0ac54a0ddd010e0ebe23))
* **share-chat:** twitter card + per-bot og:image/twitter:* in SSR ([#2609](https://github.com/HankHuang0516/EClaw/issues/2609)) ([6cdc853](https://github.com/HankHuang0516/EClaw/commit/6cdc853dc884cdb95bd47214942768981f218ae0))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))
* **settings:** wire petdx avatar into channel-account chips ([#2626](https://github.com/HankHuang0516/EClaw/issues/2626)) ([88aec77](https://github.com/HankHuang0516/EClaw/commit/88aec772628c240e97b336bb5820892ad632d1ae))
* **files:** wire petdx avatar into entity filter & per-file badges ([#2627](https://github.com/HankHuang0516/EClaw/issues/2627)) ([5b3e5cc](https://github.com/HankHuang0516/EClaw/commit/5b3e5cc542d9da69bb4e92500fd03a542ea33f00))
* **mindmap:** wrap hardcoded zh-TW UI strings with i18n t() ([#2607](https://github.com/HankHuang0516/EClaw/issues/2607)) ([166af87](https://github.com/HankHuang0516/EClaw/commit/166af8772b2121a24aaf34a83b3de970e9b3b571)), closes [#2606](https://github.com/HankHuang0516/EClaw/issues/2606)
* **i18n:** zh-TW backfill 8 keys (soft-pause + chat + invite + wallet) ([#2815](https://github.com/HankHuang0516/EClaw/issues/2815)) ([a2dd574](https://github.com/HankHuang0516/EClaw/commit/a2dd5743ce8d43a4b6ace9a2fd4b52568180d6c5))


### Performance Improvements

* **mindmap:** force-graph hardening for 1000/2000-node graphs ([#2684](https://github.com/HankHuang0516/EClaw/issues/2684)) ([da8b1c8](https://github.com/HankHuang0516/EClaw/commit/da8b1c8f947ab8bc8fa455c1962a91146623a1fc))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-23)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **notifications:** add kanban_done + kanban_done_auto toggles to Android Settings ([#2636](https://github.com/HankHuang0516/EClaw/issues/2636)) ([a710909](https://github.com/HankHuang0516/EClaw/commit/a7109095e3393b8564e7ef1b23d382a4fbb944b8))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **i18n:** ar block — fix 27 broken entries (CJK leaks + truncated HTML) ([#2851](https://github.com/HankHuang0516/EClaw/issues/2851)) ([5b19175](https://github.com/HankHuang0516/EClaw/commit/5b19175d712d00d16fcec00b749035c4beae7a5c))
* **chat:** atomic-load target bar (await contacts before first render) ([#2831](https://github.com/HankHuang0516/EClaw/issues/2831)) ([5f529e6](https://github.com/HankHuang0516/EClaw/commit/5f529e6b772eacc38ba1de69b44258a05f0d816a)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2](https://github.com/HankHuang0516/EClaw/issues/2)
* **channel:** await binding persistence ([712516d](https://github.com/HankHuang0516/EClaw/commit/712516decafb745035bd1434a28cc1973d433e19))
* **rental:** bump handshake timeout to 60s + timeout-aware discovery fallback ([#2863](https://github.com/HankHuang0516/EClaw/issues/2863)) ([fd4322f](https://github.com/HankHuang0516/EClaw/commit/fd4322f8890f3c2dfca3acdae6a4b95f19c381f9)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **i18n:** clear batch 1 residual missing keys ([#2790](https://github.com/HankHuang0516/EClaw/issues/2790)) ([211030e](https://github.com/HankHuang0516/EClaw/commit/211030e0b0b6a865c11f0c4ed60dc4e356d43b7a))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **kanban:** comment input no longer overlaps last comment in card detail (PR [#2678](https://github.com/HankHuang0516/EClaw/issues/2678)) ([fba91fc](https://github.com/HankHuang0516/EClaw/commit/fba91fca15402b453a0db5ee857c0b16e6087055))
* **chat:** compact 20px avatar in target bar (App WebView only shows [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2](https://github.com/HankHuang0516/EClaw/issues/2)) ([#2830](https://github.com/HankHuang0516/EClaw/issues/2830)) ([42c7543](https://github.com/HankHuang0516/EClaw/commit/42c7543b4a78a7abf3f5f7535eb9bc6142cd0fe2)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **portal:** complete 401 redirect sweep + mobile UIUX truncation ([#2842](https://github.com/HankHuang0516/EClaw/issues/2842)) ([f9799ba](https://github.com/HankHuang0516/EClaw/commit/f9799ba42498b109f0a8a70e80836aa6da51e216)), closes [#2833](https://github.com/HankHuang0516/EClaw/issues/2833) [#2845](https://github.com/HankHuang0516/EClaw/issues/2845) [#2844](https://github.com/HankHuang0516/EClaw/issues/2844) [#2843](https://github.com/HankHuang0516/EClaw/issues/2843)
* **uiux:** continue qa mobile readability sweep ([#2854](https://github.com/HankHuang0516/EClaw/issues/2854)) ([57606ff](https://github.com/HankHuang0516/EClaw/commit/57606ffe3e543b07a026aacc53c4b470c9a7825b))
* **i18n:** cover dynamic portal wrapper keys ([#2807](https://github.com/HankHuang0516/EClaw/issues/2807)) ([4c711cc](https://github.com/HankHuang0516/EClaw/commit/4c711cc4009300ffe4e8933a98ee01cd0fdd6aeb))
* **i18n:** dedup 20 dash_channel_card_* keys in es block ([#2876](https://github.com/HankHuang0516/EClaw/issues/2876)) ([807284c](https://github.com/HankHuang0516/EClaw/commit/807284ce363ef119ccdb0ae40e5ce99d3f0a27e0))
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **rental:** don't pollute entity.message on push gateway timeout ([#2860](https://github.com/HankHuang0516/EClaw/issues/2860)) ([592ba44](https://github.com/HankHuang0516/EClaw/commit/592ba44f57536ee00011b6cbddaa6b129a7cbae9))
* **petdx:** drop dark-grey loading placeholder + preload sprite WEBP ([#2628](https://github.com/HankHuang0516/EClaw/issues/2628)) ([59cef38](https://github.com/HankHuang0516/EClaw/commit/59cef387bd69ca99d7d15c86a1364856d3849ad8)), closes [#1a1a1a](https://github.com/HankHuang0516/EClaw/issues/1a1a1a)
* **gateway-ws:** drop Origin header on server-to-server WS upgrade ([#2869](https://github.com/HankHuang0516/EClaw/issues/2869)) ([716dcf9](https://github.com/HankHuang0516/EClaw/commit/716dcf9d0834b17522bb9d894bad84bc142d1a19))
* **setup-scripts:** drop Origin header on server-to-server WS upgrade ([#2875](https://github.com/HankHuang0516/EClaw/issues/2875)) ([9d893b8](https://github.com/HankHuang0516/EClaw/commit/9d893b8e5eea4db275e450bf423903c156cd3e4b)), closes [#2869](https://github.com/HankHuang0516/EClaw/issues/2869)
* **security:** escape innerHTML in chat modal error messages ([#2819](https://github.com/HankHuang0516/EClaw/issues/2819)) ([dce07ad](https://github.com/HankHuang0516/EClaw/commit/dce07adde64795916dba977ae23e46f3371ce7ed)), closes [#2809](https://github.com/HankHuang0516/EClaw/issues/2809) [#2810](https://github.com/HankHuang0516/EClaw/issues/2810) [#2809](https://github.com/HankHuang0516/EClaw/issues/2809) [#2810](https://github.com/HankHuang0516/EClaw/issues/2810)
* **entities:** expose botSecret to owner so wallpaper service can poll companions ([#2615](https://github.com/HankHuang0516/EClaw/issues/2615)) ([04470fc](https://github.com/HankHuang0516/EClaw/commit/04470fce8f8c3fce2b1ba8b243e776606f107502))
* **rental:** expose owner_public_code in marketplace so plaza CTA can route ([#2616](https://github.com/HankHuang0516/EClaw/issues/2616)) ([4d1372f](https://github.com/HankHuang0516/EClaw/commit/4d1372f717d93cab65543e87c852e74e9fb67071)), closes [#2610](https://github.com/HankHuang0516/EClaw/issues/2610)
* **mindmap:** fallback to device scope when entityId is null ([#2728](https://github.com/HankHuang0516/EClaw/issues/2728)) ([7572312](https://github.com/HankHuang0516/EClaw/commit/7572312433d3d75fc245eda48a28919ce14bd927))
* **i18n:** fill Spanish drift keys ([#2751](https://github.com/HankHuang0516/EClaw/issues/2751)) ([0ad0ee5](https://github.com/HankHuang0516/EClaw/commit/0ad0ee55f7fac3e6ac46d891539950dab4d553cc))
* **portal:** fit embedded org chart to mobile viewport ([#2674](https://github.com/HankHuang0516/EClaw/issues/2674)) ([1c4e1b4](https://github.com/HankHuang0516/EClaw/commit/1c4e1b413ea7027b4cd4b8ecda981b0d0e12e66b))
* **i18n:** fix 6 trailing-comma syntax errors in 10-locale batch ([#2771](https://github.com/HankHuang0516/EClaw/issues/2771)) ([b27c6ca](https://github.com/HankHuang0516/EClaw/commit/b27c6ca204bf813e406c54ce3a2532a5f1f031b3))
* **kanban:** GET card returns latest 50 comments + comments endpoint exposes total ([#2816](https://github.com/HankHuang0516/EClaw/issues/2816)) ([c4d83f7](https://github.com/HankHuang0516/EClaw/commit/c4d83f777a1cd26aea0936e4316aa35c52822eef))
* **sharechat:** guest verify-email modal + disabled Send for unverified ([#2865](https://github.com/HankHuang0516/EClaw/issues/2865)) ([cb3b061](https://github.com/HankHuang0516/EClaw/commit/cb3b0614e0f6160417d907753e66eceb2d666802))
* **uiux:** harden chat previews and roster preview ([#2769](https://github.com/HankHuang0516/EClaw/issues/2769)) ([466d4d3](https://github.com/HankHuang0516/EClaw/commit/466d4d3ef81c628d3f58db64323946053d7bf61c))
* **mention-parser:** ignore @-mentions inside markdown code spans ([#2645](https://github.com/HankHuang0516/EClaw/issues/2645)) ([8da19d4](https://github.com/HankHuang0516/EClaw/commit/8da19d4a79ceb4152bf2144ee0847c61ce3e1def)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **kanban:** lazy-load dependency chips via IntersectionObserver ([#2632](https://github.com/HankHuang0516/EClaw/issues/2632)) ([20586b4](https://github.com/HankHuang0516/EClaw/commit/20586b43357335f9eb6a190c02d58c8e36b58aba)), closes [#2631](https://github.com/HankHuang0516/EClaw/issues/2631)
* **kanban:** make card sorting deterministic ([#2756](https://github.com/HankHuang0516/EClaw/issues/2756)) ([48e2117](https://github.com/HankHuang0516/EClaw/commit/48e2117b64e37f05dc635e0a3b67bfd43cbe48f5))
* **org-chart:** notify affected bots on hierarchy change ([#2812](https://github.com/HankHuang0516/EClaw/issues/2812)) ([55675fd](https://github.com/HankHuang0516/EClaw/commit/55675fdf4487494d729a29524b32bd81b756a00c)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** notify reviewer on manual /move → review ([#2753](https://github.com/HankHuang0516/EClaw/issues/2753)) ([6cbbb4e](https://github.com/HankHuang0516/EClaw/commit/6cbbb4ee8c0d4d8ad54df2e9b5faaa3699bd530f))
* **wallpaper:** off-load spritesheet fetch to IO so per-petdx sprites actually render ([#2618](https://github.com/HankHuang0516/EClaw/issues/2618)) ([61b832c](https://github.com/HankHuang0516/EClaw/commit/61b832c9fa8a1d0caab810ccc942d85c63349267)), closes [#2615](https://github.com/HankHuang0516/EClaw/issues/2615) [#2577](https://github.com/HankHuang0516/EClaw/issues/2577)
* **security:** patch P0 sanitize-html XSS + P1 protobufjs + exam.html XSS ([#2829](https://github.com/HankHuang0516/EClaw/issues/2829)) ([c71b871](https://github.com/HankHuang0516/EClaw/commit/c71b871a045887375dd0d26d1a3280a0891a89ad))
* **security:** patch ws uninitialized memory disclosure (GHSA-58qx-3vcg-4xpx) ([#2872](https://github.com/HankHuang0516/EClaw/issues/2872)) ([2523d15](https://github.com/HankHuang0516/EClaw/commit/2523d154bbe501a7cc086340f7a07ece3abfa69b))
* **portal:** petdx-browser cookie-session fallback for device-login ([#2757](https://github.com/HankHuang0516/EClaw/issues/2757)) ([ca275f4](https://github.com/HankHuang0516/EClaw/commit/ca275f4519835da0c7ad71c588908a18f6f138d8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **api:** platform-stats 500 + entity/lookup publicCode alias ([#2809](https://github.com/HankHuang0516/EClaw/issues/2809), [#2810](https://github.com/HankHuang0516/EClaw/issues/2810)) ([#2818](https://github.com/HankHuang0516/EClaw/issues/2818)) ([f99fd17](https://github.com/HankHuang0516/EClaw/commit/f99fd17b2b1c32d88daa2510ff66d714c1a53edc))
* **i18n:** positional format specifiers for feedback_result_logs (7 locales) ([#2597](https://github.com/HankHuang0516/EClaw/issues/2597)) ([21aedc7](https://github.com/HankHuang0516/EClaw/commit/21aedc7eebc7a2839e340136f38dfdfd4dabb9dc))
* **avatar-petdx:** preserve descriptor across transient API failures (flicker) ([#2625](https://github.com/HankHuang0516/EClaw/issues/2625)) ([7b1c606](https://github.com/HankHuang0516/EClaw/commit/7b1c606514f7698d72ec95cf6c556e4043966186))
* **chat:** preserve scroll anchor while reading history ([#2693](https://github.com/HankHuang0516/EClaw/issues/2693)) ([945fdb7](https://github.com/HankHuang0516/EClaw/commit/945fdb7192b791b31882e1e75568dd8b11e4686f))
* **promo:** pull video embed from /promo-chat-avatar.html ([#2724](https://github.com/HankHuang0516/EClaw/issues/2724)) ([2afabc8](https://github.com/HankHuang0516/EClaw/commit/2afabc8c5ff8b25218a7cb857e8adfa572c8e9d5))
* **kanban:** realign stale recurring schedules ([#2785](https://github.com/HankHuang0516/EClaw/issues/2785)) ([ab8ee25](https://github.com/HankHuang0516/EClaw/commit/ab8ee250a9b37f3d3e838bb01d8866c8d2b78231))
* **portal:** reduce QA-discovered request fanout ([#2656](https://github.com/HankHuang0516/EClaw/issues/2656)) ([1e46d6b](https://github.com/HankHuang0516/EClaw/commit/1e46d6bab61e58c65b452b6503d953f8dddeee75))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **portal:** remove org chart fit scale floor ([#2676](https://github.com/HankHuang0516/EClaw/issues/2676)) ([0f01606](https://github.com/HankHuang0516/EClaw/commit/0f016068b963bb5f800a02f28817c7174979d913))
* **rental:** remove phantom 'webhook test push' step from BIND_COMPLETE ([#2864](https://github.com/HankHuang0516/EClaw/issues/2864)) ([47f4a3e](https://github.com/HankHuang0516/EClaw/commit/47f4a3edf76aa95ebd06d8713cd44fda6eef9b5d))
* **i18n:** rename mm_empty_title → mm_state_empty_title in mindmap.html ([#2683](https://github.com/HankHuang0516/EClaw/issues/2683)) ([c79c109](https://github.com/HankHuang0516/EClaw/commit/c79c109bea23142e8a6d9ace976d105af1280ec9))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **chat:** render mention avatars with companion renderer ([#2633](https://github.com/HankHuang0516/EClaw/issues/2633)) ([03e205f](https://github.com/HankHuang0516/EClaw/commit/03e205f663ecd2c2f443d4009dd5af0093f0bbbb))
* **kanban:** reserve mobile comments panel height ([#2782](https://github.com/HankHuang0516/EClaw/issues/2782)) ([ce8662d](https://github.com/HankHuang0516/EClaw/commit/ce8662d362422fdd25037f1deb61dbed9425e2f9))
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* scheduled audit 2026-05-13 — 6 bugs, XSS, i18n ([#2668](https://github.com/HankHuang0516/EClaw/issues/2668)) ([21dd513](https://github.com/HankHuang0516/EClaw/commit/21dd513b4464738de29164265437435ba6cc4817)), closes [#2605](https://github.com/HankHuang0516/EClaw/issues/2605) [#2608](https://github.com/HankHuang0516/EClaw/issues/2608) [#2600](https://github.com/HankHuang0516/EClaw/issues/2600) [#2599](https://github.com/HankHuang0516/EClaw/issues/2599) [#2598](https://github.com/HankHuang0516/EClaw/issues/2598)
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **chat:** smart-chip preview falls back to inline c.comments when /comments fails (PR [#2677](https://github.com/HankHuang0516/EClaw/issues/2677)) ([7f4dffd](https://github.com/HankHuang0516/EClaw/commit/7f4dffd2c83ea86f296b8fa0610f0e67c9f1af11))
* **kanban:** stabilize comment detail viewport ([#2796](https://github.com/HankHuang0516/EClaw/issues/2796)) ([0a10aad](https://github.com/HankHuang0516/EClaw/commit/0a10aadb5a5b12ff23454c16d5c88183b94ad7d7))
* **wallpaper:** stop Android live wallpaper flashing default lobster on companion change ([#2629](https://github.com/HankHuang0516/EClaw/issues/2629)) ([8b4f66f](https://github.com/HankHuang0516/EClaw/commit/8b4f66fcb335bf43128f924b761b6337c817095b)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **chat:** stop chat.html bouncing to dashboard via /api/rental/health-status 401 race ([#2833](https://github.com/HankHuang0516/EClaw/issues/2833)) ([c422406](https://github.com/HankHuang0516/EClaw/commit/c4224067cdcfe7f3e22ab95007c7563dac4196ac))
* **openclaw-channel:** support OpenClaw 2026.5.20 ([8045de6](https://github.com/HankHuang0516/EClaw/commit/8045de6bebecfc05f9bd57453b99c098ca35681b))
* **mentions:** support same-device CJK display-name tags ([#2874](https://github.com/HankHuang0516/EClaw/issues/2874)) ([b8f61be](https://github.com/HankHuang0516/EClaw/commit/b8f61be9a3962fef75dd32ea34e8900880dafaf9))
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **app:** WebView pages honor app-selected locale via ?lang= URL param ([#2672](https://github.com/HankHuang0516/EClaw/issues/2672)) ([8ed8757](https://github.com/HankHuang0516/EClaw/commit/8ed8757aec5bf214e837cc0d81bf2b23f1993a91)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **share-chat:** wire rich CTA actions to msgInput ([#2867](https://github.com/HankHuang0516/EClaw/issues/2867)) ([df23b11](https://github.com/HankHuang0516/EClaw/commit/df23b1147d34c59a644a145bbd87c18b96400acc))


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* **community:** 1-click chat button on bot cards + utm tagging ([#2610](https://github.com/HankHuang0516/EClaw/issues/2610)) ([eee97b0](https://github.com/HankHuang0516/EClaw/commit/eee97b0e2e4e74945ec24f218a69a52800b97a66))
* **chat:** accept ?messageId= as deep-link alias ([#2838](https://github.com/HankHuang0516/EClaw/issues/2838)) ([1785a87](https://github.com/HankHuang0516/EClaw/commit/1785a87310426637fd10df83754fb9924c45207f))
* **chat:** add avatar size preference ([#2714](https://github.com/HankHuang0516/EClaw/issues/2714)) ([6fe164a](https://github.com/HankHuang0516/EClaw/commit/6fe164ad8b22fa576d2dd9ad37c0d9fc295b5a83))
* **dashboard:** add Claude and Codex channel guides ([#2640](https://github.com/HankHuang0516/EClaw/issues/2640)) ([c64e4c4](https://github.com/HankHuang0516/EClaw/commit/c64e4c4afc78db58c5cd578f00486dd7b2fd3311))
* **dashboard:** add Claude Code channel guide card ([#2667](https://github.com/HankHuang0516/EClaw/issues/2667)) ([d70d75c](https://github.com/HankHuang0516/EClaw/commit/d70d75c0c8caa8a540358a9aab4556b8c1927a5c))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* **kanban:** add device-scoped card tags ([#2773](https://github.com/HankHuang0516/EClaw/issues/2773)) ([53a387e](https://github.com/HankHuang0516/EClaw/commit/53a387e67ba7bb4f6bed1c427000c4ae8666577a))
* **portal:** add entity selector to petdx-browser ([#2602](https://github.com/HankHuang0516/EClaw/issues/2602)) ([3fa067e](https://github.com/HankHuang0516/EClaw/commit/3fa067e00b38829b48a37cecd33ee81a9a1122d9))
* **kanban:** add explicit card links ([#2721](https://github.com/HankHuang0516/EClaw/issues/2721)) ([ef9f812](https://github.com/HankHuang0516/EClaw/commit/ef9f812a3fcf39efd07fd158ce90951bdd045ac7))
* **kanban:** add explicit done-card reopen flow ([#2801](https://github.com/HankHuang0516/EClaw/issues/2801)) ([5080aac](https://github.com/HankHuang0516/EClaw/commit/5080aacb75047c0deaa379ee708ec85465afd57c))
* **mindmap:** add GET /api/mindmap/graph force-graph projection ([#2680](https://github.com/HankHuang0516/EClaw/issues/2680)) ([a00b2e7](https://github.com/HankHuang0516/EClaw/commit/a00b2e775af2c4c98cd157f760ad87aeeee469f0)), closes [#2679](https://github.com/HankHuang0516/EClaw/issues/2679) [#2679](https://github.com/HankHuang0516/EClaw/issues/2679)
* **dashboard:** add Hermes channel promo card ([#2708](https://github.com/HankHuang0516/EClaw/issues/2708)) ([337aca1](https://github.com/HankHuang0516/EClaw/commit/337aca153d5a1cd7e888c065f00ae54db7872d91))
* **rental:** add listing soft pause ([#2781](https://github.com/HankHuang0516/EClaw/issues/2781)) ([6586b72](https://github.com/HankHuang0516/EClaw/commit/6586b72717ddb1637d91cd3242c8d2ff554f62b4))
* **portal:** add Nagoya 5D4N trip static cross-ref page ([#2689](https://github.com/HankHuang0516/EClaw/issues/2689)) ([2e0efb6](https://github.com/HankHuang0516/EClaw/commit/2e0efb6dcdaff52226cc8854a96747000b12bdff))
* **portal:** add Nagoya trip map links and image lightbox ([#2821](https://github.com/HankHuang0516/EClaw/issues/2821)) ([3e40955](https://github.com/HankHuang0516/EClaw/commit/3e40955650a05f45a6b9f7e39e73847705424a03))
* **portal/nagoya:** add parking shortcut buttons next to itinerary places ([#2826](https://github.com/HankHuang0516/EClaw/issues/2826)) ([63968c5](https://github.com/HankHuang0516/EClaw/commit/63968c554d046afc8d978de74e3aacbf7700500d))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **settings:** add rental roster management preview ([#2758](https://github.com/HankHuang0516/EClaw/issues/2758)) ([9706e59](https://github.com/HankHuang0516/EClaw/commit/9706e59ded140a90a6e02348124282bc69d89001))
* **rental:** add renter health chat indicator ([#2690](https://github.com/HankHuang0516/EClaw/issues/2690)) ([36cd2e9](https://github.com/HankHuang0516/EClaw/commit/36cd2e9802be4c7ebb03d3024617fa74aca48ffd))
* **ios:** add Tutorial & Intro entry in Settings ([#2800](https://github.com/HankHuang0516/EClaw/issues/2800)) ([ed83e51](https://github.com/HankHuang0516/EClaw/commit/ed83e51d043bf4cd5865f38dc95a91ed54820d6c))
* **landing:** add Watch Full Demo CTA below hero video ([#2799](https://github.com/HankHuang0516/EClaw/issues/2799)) ([66107c9](https://github.com/HankHuang0516/EClaw/commit/66107c954727551fd34d989a4674daaad9b63968))
* **footer:** add Watch Intro Video link in Info column ([#2798](https://github.com/HankHuang0516/EClaw/issues/2798)) ([d7c6d59](https://github.com/HankHuang0516/EClaw/commit/d7c6d596b69c6a5b257bf1f7a792a407ef9712ad))
* **i18n:** ar iter-2 — fill 623 missing keys against en source ([#2847](https://github.com/HankHuang0516/EClaw/issues/2847)) ([ee94a7a](https://github.com/HankHuang0516/EClaw/commit/ee94a7ae6812b5163efe4284ee4907ca32302f5c))
* **kanban:** backlog launch-gate flag to suppress L1/L2/L3 escalation ([#2855](https://github.com/HankHuang0516/EClaw/issues/2855)) ([cb8bf1b](https://github.com/HankHuang0516/EClaw/commit/cb8bf1bb6421f25214f65e129a8cadccc49cc266)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#4](https://github.com/HankHuang0516/EClaw/issues/4) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **companion:** bridge crafter-station/petdex gallery (1784 pets) ([#2601](https://github.com/HankHuang0516/EClaw/issues/2601)) ([2e245be](https://github.com/HankHuang0516/EClaw/commit/2e245bea6dd47ea7361b927d389188a3c23b6bb3))
* **promo:** chat avatar size feature landing page (self-hosted MP4) ([#2722](https://github.com/HankHuang0516/EClaw/issues/2722)) ([3852210](https://github.com/HankHuang0516/EClaw/commit/3852210d355704d018e3daca6b5f9512a011b210)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **kanban:** cron-spawn jitter + lane backpressure to prevent same-tick wedge ([#2791](https://github.com/HankHuang0516/EClaw/issues/2791)) ([9f414a7](https://github.com/HankHuang0516/EClaw/commit/9f414a731d6393672a0a4189c7b408c529ae5e12)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **promo:** embed daily eclaw video 2026-05-14 ([#2786](https://github.com/HankHuang0516/EClaw/issues/2786)) ([718a814](https://github.com/HankHuang0516/EClaw/commit/718a814ab16850bc2b33a1b303841e2c4378ecfa)), closes [#2782](https://github.com/HankHuang0516/EClaw/issues/2782) [#2693](https://github.com/HankHuang0516/EClaw/issues/2693)
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **info:** embed promo video at top of Quick Start tab ([#2797](https://github.com/HankHuang0516/EClaw/issues/2797)) ([047679f](https://github.com/HankHuang0516/EClaw/commit/047679fd57ab9949eaeacea414d5611e71afe041))
* **rental:** enforce strict rebind refunds ([#2703](https://github.com/HankHuang0516/EClaw/issues/2703)) ([a1859c5](https://github.com/HankHuang0516/EClaw/commit/a1859c50e6fb3991d7a8051491502d824a14a116))
* **portal:** group task chip actions ([#2825](https://github.com/HankHuang0516/EClaw/issues/2825)) ([5db5c59](https://github.com/HankHuang0516/EClaw/commit/5db5c59b32b8635f1412205faf0c2f9164d3d5d4))
* **portal:** info-guide-rules + info-guide-soul slide pair ([#2793](https://github.com/HankHuang0516/EClaw/issues/2793)) ([1c8bddc](https://github.com/HankHuang0516/EClaw/commit/1c8bddc4c185054b2b60088498e3d45509117127)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **chat:** link card previews to kanban ([#2754](https://github.com/HankHuang0516/EClaw/issues/2754)) ([2261240](https://github.com/HankHuang0516/EClaw/commit/22612402c2e95efb07246629e81a849be41ee9c7))
* **mission:** link notes to kanban cards ([#2723](https://github.com/HankHuang0516/EClaw/issues/2723)) ([b36dc18](https://github.com/HankHuang0516/EClaw/commit/b36dc18f3a8facf12e0b6046351c222f1e99dc55))
* **mindmap:** mission.html link to /portal/mindmap.html + deprecate /api/mission/mindmap ([#2685](https://github.com/HankHuang0516/EClaw/issues/2685)) ([11e297b](https://github.com/HankHuang0516/EClaw/commit/11e297bab1c9b56fcde3027d6500b7c58891bf18)), closes [#2680](https://github.com/HankHuang0516/EClaw/issues/2680) [#2684](https://github.com/HankHuang0516/EClaw/issues/2684)
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **portal:** nagoya trip interactive map (Leaflet + OSM, no API key) ([#2888](https://github.com/HankHuang0516/EClaw/issues/2888)) ([ecfdac0](https://github.com/HankHuang0516/EClaw/commit/ecfdac06348c12ee7c6872c6c28d5f82162e7aa9))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **settings:** per-entity nudge override UI (Phase 2) ([#2837](https://github.com/HankHuang0516/EClaw/issues/2837)) ([ea7662b](https://github.com/HankHuang0516/EClaw/commit/ea7662b0858882dae461e1387f711895924f9ab8)), closes [3/#4](https://github.com/HankHuang0516/EClaw/issues/4)
* **kanban:** per-entity nudge overrides (Phase 2 of card_e066cb6b) ([#2836](https://github.com/HankHuang0516/EClaw/issues/2836)) ([0425f80](https://github.com/HankHuang0516/EClaw/commit/0425f80bc1169c0d506b665659c8676695c45553))
* **avatar:** petdx render on card-holder my-cards (Phase 1b) ([#2621](https://github.com/HankHuang0516/EClaw/issues/2621)) ([f78ba8b](https://github.com/HankHuang0516/EClaw/commit/f78ba8b18acc426936ab6d8a82ca7541effea00d))
* **avatar:** petdx render on dashboard entity grid / org chart / bindings (Phase 1b) ([#2622](https://github.com/HankHuang0516/EClaw/issues/2622)) ([f417749](https://github.com/HankHuang0516/EClaw/commit/f41774914451048e8cd76e9ae30416a0642e173b)), closes [#2620](https://github.com/HankHuang0516/EClaw/issues/2620) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621)
* **avatar:** petdx render on kanban auto-assign / pulse / comment avatars (Phase 1b) ([#2624](https://github.com/HankHuang0516/EClaw/issues/2624)) ([6bff5f8](https://github.com/HankHuang0516/EClaw/commit/6bff5f80440d0bd91a6b1721cde9478d685c4d46))
* **avatar:** petdx render on mission skill/rule/soul entity dialogs (Phase 1b) ([#2623](https://github.com/HankHuang0516/EClaw/issues/2623)) ([129327b](https://github.com/HankHuang0516/EClaw/commit/129327bc7b91056659f1ab7e8d5e3f5260d951fb))
* **mindmap:** portal/mindmap.html force-graph prototype ([#129](https://github.com/HankHuang0516/EClaw/issues/129)) ([#2681](https://github.com/HankHuang0516/EClaw/issues/2681)) ([0f15e69](https://github.com/HankHuang0516/EClaw/commit/0f15e6930f0697c37fa08f3219edb8f9e499837f)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **portal:** redo nagoya trip page in professional tour-guide style ([#2691](https://github.com/HankHuang0516/EClaw/issues/2691)) ([b2378c0](https://github.com/HankHuang0516/EClaw/commit/b2378c06ee20fa9cccfdceceb1a4c9e0b3072f59))
* **i18n:** remove ms+hi orphan keys from i18n.js ([#2849](https://github.com/HankHuang0516/EClaw/issues/2849)) ([320176c](https://github.com/HankHuang0516/EClaw/commit/320176c06a3cfd8631e2a82ad02a6bd6a9af0389))
* **avatar:** render selected petdx companion in chat avatars ([#2620](https://github.com/HankHuang0516/EClaw/issues/2620)) ([0bdd046](https://github.com/HankHuang0516/EClaw/commit/0bdd046fe1b1c428e32edda366ff112c08927f4c))
* **home:** replace native home with WebView hosting dashboard.html ([#2634](https://github.com/HankHuang0516/EClaw/issues/2634)) ([e69ea81](https://github.com/HankHuang0516/EClaw/commit/e69ea8160c239b083a83d6dc83a4f1c3f901c863))
* **app:** route chat mission jumps through native tabs ([#2824](https://github.com/HankHuang0516/EClaw/issues/2824)) ([deb07b6](https://github.com/HankHuang0516/EClaw/commit/deb07b69a9ecca632fe27278de537f1d85234e94))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **chat:** support message deep links ([#2719](https://github.com/HankHuang0516/EClaw/issues/2719)) ([2dc0f1e](https://github.com/HankHuang0516/EClaw/commit/2dc0f1eeb259e1a0848db4a03186b989372cd91c))
* **mission:** support note deep links ([#2717](https://github.com/HankHuang0516/EClaw/issues/2717)) ([2efd3a5](https://github.com/HankHuang0516/EClaw/commit/2efd3a5e741217a07c0b0ac54a0ddd010e0ebe23))
* **share-chat:** twitter card + per-bot og:image/twitter:* in SSR ([#2609](https://github.com/HankHuang0516/EClaw/issues/2609)) ([6cdc853](https://github.com/HankHuang0516/EClaw/commit/6cdc853dc884cdb95bd47214942768981f218ae0))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))
* **settings:** wire petdx avatar into channel-account chips ([#2626](https://github.com/HankHuang0516/EClaw/issues/2626)) ([88aec77](https://github.com/HankHuang0516/EClaw/commit/88aec772628c240e97b336bb5820892ad632d1ae))
* **files:** wire petdx avatar into entity filter & per-file badges ([#2627](https://github.com/HankHuang0516/EClaw/issues/2627)) ([5b3e5cc](https://github.com/HankHuang0516/EClaw/commit/5b3e5cc542d9da69bb4e92500fd03a542ea33f00))
* **mindmap:** wrap hardcoded zh-TW UI strings with i18n t() ([#2607](https://github.com/HankHuang0516/EClaw/issues/2607)) ([166af87](https://github.com/HankHuang0516/EClaw/commit/166af8772b2121a24aaf34a83b3de970e9b3b571)), closes [#2606](https://github.com/HankHuang0516/EClaw/issues/2606)
* **i18n:** zh-TW backfill 8 keys (soft-pause + chat + invite + wallet) ([#2815](https://github.com/HankHuang0516/EClaw/issues/2815)) ([a2dd574](https://github.com/HankHuang0516/EClaw/commit/a2dd5743ce8d43a4b6ace9a2fd4b52568180d6c5))


### Performance Improvements

* **mindmap:** force-graph hardening for 1000/2000-node graphs ([#2684](https://github.com/HankHuang0516/EClaw/issues/2684)) ([da8b1c8](https://github.com/HankHuang0516/EClaw/commit/da8b1c8f947ab8bc8fa455c1962a91146623a1fc))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-23)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **notifications:** add kanban_done + kanban_done_auto toggles to Android Settings ([#2636](https://github.com/HankHuang0516/EClaw/issues/2636)) ([a710909](https://github.com/HankHuang0516/EClaw/commit/a7109095e3393b8564e7ef1b23d382a4fbb944b8))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **i18n:** ar block — fix 27 broken entries (CJK leaks + truncated HTML) ([#2851](https://github.com/HankHuang0516/EClaw/issues/2851)) ([5b19175](https://github.com/HankHuang0516/EClaw/commit/5b19175d712d00d16fcec00b749035c4beae7a5c))
* **chat:** atomic-load target bar (await contacts before first render) ([#2831](https://github.com/HankHuang0516/EClaw/issues/2831)) ([5f529e6](https://github.com/HankHuang0516/EClaw/commit/5f529e6b772eacc38ba1de69b44258a05f0d816a)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2](https://github.com/HankHuang0516/EClaw/issues/2)
* **channel:** await binding persistence ([712516d](https://github.com/HankHuang0516/EClaw/commit/712516decafb745035bd1434a28cc1973d433e19))
* **rental:** bump handshake timeout to 60s + timeout-aware discovery fallback ([#2863](https://github.com/HankHuang0516/EClaw/issues/2863)) ([fd4322f](https://github.com/HankHuang0516/EClaw/commit/fd4322f8890f3c2dfca3acdae6a4b95f19c381f9)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **i18n:** clear batch 1 residual missing keys ([#2790](https://github.com/HankHuang0516/EClaw/issues/2790)) ([211030e](https://github.com/HankHuang0516/EClaw/commit/211030e0b0b6a865c11f0c4ed60dc4e356d43b7a))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **kanban:** comment input no longer overlaps last comment in card detail (PR [#2678](https://github.com/HankHuang0516/EClaw/issues/2678)) ([fba91fc](https://github.com/HankHuang0516/EClaw/commit/fba91fca15402b453a0db5ee857c0b16e6087055))
* **chat:** compact 20px avatar in target bar (App WebView only shows [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2](https://github.com/HankHuang0516/EClaw/issues/2)) ([#2830](https://github.com/HankHuang0516/EClaw/issues/2830)) ([42c7543](https://github.com/HankHuang0516/EClaw/commit/42c7543b4a78a7abf3f5f7535eb9bc6142cd0fe2)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **portal:** complete 401 redirect sweep + mobile UIUX truncation ([#2842](https://github.com/HankHuang0516/EClaw/issues/2842)) ([f9799ba](https://github.com/HankHuang0516/EClaw/commit/f9799ba42498b109f0a8a70e80836aa6da51e216)), closes [#2833](https://github.com/HankHuang0516/EClaw/issues/2833) [#2845](https://github.com/HankHuang0516/EClaw/issues/2845) [#2844](https://github.com/HankHuang0516/EClaw/issues/2844) [#2843](https://github.com/HankHuang0516/EClaw/issues/2843)
* **uiux:** continue qa mobile readability sweep ([#2854](https://github.com/HankHuang0516/EClaw/issues/2854)) ([57606ff](https://github.com/HankHuang0516/EClaw/commit/57606ffe3e543b07a026aacc53c4b470c9a7825b))
* **i18n:** cover dynamic portal wrapper keys ([#2807](https://github.com/HankHuang0516/EClaw/issues/2807)) ([4c711cc](https://github.com/HankHuang0516/EClaw/commit/4c711cc4009300ffe4e8933a98ee01cd0fdd6aeb))
* **i18n:** dedup 20 dash_channel_card_* keys in es block ([#2876](https://github.com/HankHuang0516/EClaw/issues/2876)) ([807284c](https://github.com/HankHuang0516/EClaw/commit/807284ce363ef119ccdb0ae40e5ce99d3f0a27e0))
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **rental:** don't pollute entity.message on push gateway timeout ([#2860](https://github.com/HankHuang0516/EClaw/issues/2860)) ([592ba44](https://github.com/HankHuang0516/EClaw/commit/592ba44f57536ee00011b6cbddaa6b129a7cbae9))
* **petdx:** drop dark-grey loading placeholder + preload sprite WEBP ([#2628](https://github.com/HankHuang0516/EClaw/issues/2628)) ([59cef38](https://github.com/HankHuang0516/EClaw/commit/59cef387bd69ca99d7d15c86a1364856d3849ad8)), closes [#1a1a1a](https://github.com/HankHuang0516/EClaw/issues/1a1a1a)
* **gateway-ws:** drop Origin header on server-to-server WS upgrade ([#2869](https://github.com/HankHuang0516/EClaw/issues/2869)) ([716dcf9](https://github.com/HankHuang0516/EClaw/commit/716dcf9d0834b17522bb9d894bad84bc142d1a19))
* **setup-scripts:** drop Origin header on server-to-server WS upgrade ([#2875](https://github.com/HankHuang0516/EClaw/issues/2875)) ([9d893b8](https://github.com/HankHuang0516/EClaw/commit/9d893b8e5eea4db275e450bf423903c156cd3e4b)), closes [#2869](https://github.com/HankHuang0516/EClaw/issues/2869)
* **security:** escape innerHTML in chat modal error messages ([#2819](https://github.com/HankHuang0516/EClaw/issues/2819)) ([dce07ad](https://github.com/HankHuang0516/EClaw/commit/dce07adde64795916dba977ae23e46f3371ce7ed)), closes [#2809](https://github.com/HankHuang0516/EClaw/issues/2809) [#2810](https://github.com/HankHuang0516/EClaw/issues/2810) [#2809](https://github.com/HankHuang0516/EClaw/issues/2809) [#2810](https://github.com/HankHuang0516/EClaw/issues/2810)
* **entities:** expose botSecret to owner so wallpaper service can poll companions ([#2615](https://github.com/HankHuang0516/EClaw/issues/2615)) ([04470fc](https://github.com/HankHuang0516/EClaw/commit/04470fce8f8c3fce2b1ba8b243e776606f107502))
* **rental:** expose owner_public_code in marketplace so plaza CTA can route ([#2616](https://github.com/HankHuang0516/EClaw/issues/2616)) ([4d1372f](https://github.com/HankHuang0516/EClaw/commit/4d1372f717d93cab65543e87c852e74e9fb67071)), closes [#2610](https://github.com/HankHuang0516/EClaw/issues/2610)
* **mindmap:** fallback to device scope when entityId is null ([#2728](https://github.com/HankHuang0516/EClaw/issues/2728)) ([7572312](https://github.com/HankHuang0516/EClaw/commit/7572312433d3d75fc245eda48a28919ce14bd927))
* **i18n:** fill Spanish drift keys ([#2751](https://github.com/HankHuang0516/EClaw/issues/2751)) ([0ad0ee5](https://github.com/HankHuang0516/EClaw/commit/0ad0ee55f7fac3e6ac46d891539950dab4d553cc))
* **portal:** fit embedded org chart to mobile viewport ([#2674](https://github.com/HankHuang0516/EClaw/issues/2674)) ([1c4e1b4](https://github.com/HankHuang0516/EClaw/commit/1c4e1b413ea7027b4cd4b8ecda981b0d0e12e66b))
* **i18n:** fix 6 trailing-comma syntax errors in 10-locale batch ([#2771](https://github.com/HankHuang0516/EClaw/issues/2771)) ([b27c6ca](https://github.com/HankHuang0516/EClaw/commit/b27c6ca204bf813e406c54ce3a2532a5f1f031b3))
* **kanban:** GET card returns latest 50 comments + comments endpoint exposes total ([#2816](https://github.com/HankHuang0516/EClaw/issues/2816)) ([c4d83f7](https://github.com/HankHuang0516/EClaw/commit/c4d83f777a1cd26aea0936e4316aa35c52822eef))
* **sharechat:** guest verify-email modal + disabled Send for unverified ([#2865](https://github.com/HankHuang0516/EClaw/issues/2865)) ([cb3b061](https://github.com/HankHuang0516/EClaw/commit/cb3b0614e0f6160417d907753e66eceb2d666802))
* **uiux:** harden chat previews and roster preview ([#2769](https://github.com/HankHuang0516/EClaw/issues/2769)) ([466d4d3](https://github.com/HankHuang0516/EClaw/commit/466d4d3ef81c628d3f58db64323946053d7bf61c))
* **mention-parser:** ignore @-mentions inside markdown code spans ([#2645](https://github.com/HankHuang0516/EClaw/issues/2645)) ([8da19d4](https://github.com/HankHuang0516/EClaw/commit/8da19d4a79ceb4152bf2144ee0847c61ce3e1def)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **kanban:** lazy-load dependency chips via IntersectionObserver ([#2632](https://github.com/HankHuang0516/EClaw/issues/2632)) ([20586b4](https://github.com/HankHuang0516/EClaw/commit/20586b43357335f9eb6a190c02d58c8e36b58aba)), closes [#2631](https://github.com/HankHuang0516/EClaw/issues/2631)
* **kanban:** make card sorting deterministic ([#2756](https://github.com/HankHuang0516/EClaw/issues/2756)) ([48e2117](https://github.com/HankHuang0516/EClaw/commit/48e2117b64e37f05dc635e0a3b67bfd43cbe48f5))
* **org-chart:** notify affected bots on hierarchy change ([#2812](https://github.com/HankHuang0516/EClaw/issues/2812)) ([55675fd](https://github.com/HankHuang0516/EClaw/commit/55675fdf4487494d729a29524b32bd81b756a00c)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** notify reviewer on manual /move → review ([#2753](https://github.com/HankHuang0516/EClaw/issues/2753)) ([6cbbb4e](https://github.com/HankHuang0516/EClaw/commit/6cbbb4ee8c0d4d8ad54df2e9b5faaa3699bd530f))
* **wallpaper:** off-load spritesheet fetch to IO so per-petdx sprites actually render ([#2618](https://github.com/HankHuang0516/EClaw/issues/2618)) ([61b832c](https://github.com/HankHuang0516/EClaw/commit/61b832c9fa8a1d0caab810ccc942d85c63349267)), closes [#2615](https://github.com/HankHuang0516/EClaw/issues/2615) [#2577](https://github.com/HankHuang0516/EClaw/issues/2577)
* **security:** patch P0 sanitize-html XSS + P1 protobufjs + exam.html XSS ([#2829](https://github.com/HankHuang0516/EClaw/issues/2829)) ([c71b871](https://github.com/HankHuang0516/EClaw/commit/c71b871a045887375dd0d26d1a3280a0891a89ad))
* **security:** patch ws uninitialized memory disclosure (GHSA-58qx-3vcg-4xpx) ([#2872](https://github.com/HankHuang0516/EClaw/issues/2872)) ([2523d15](https://github.com/HankHuang0516/EClaw/commit/2523d154bbe501a7cc086340f7a07ece3abfa69b))
* **portal:** petdx-browser cookie-session fallback for device-login ([#2757](https://github.com/HankHuang0516/EClaw/issues/2757)) ([ca275f4](https://github.com/HankHuang0516/EClaw/commit/ca275f4519835da0c7ad71c588908a18f6f138d8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **api:** platform-stats 500 + entity/lookup publicCode alias ([#2809](https://github.com/HankHuang0516/EClaw/issues/2809), [#2810](https://github.com/HankHuang0516/EClaw/issues/2810)) ([#2818](https://github.com/HankHuang0516/EClaw/issues/2818)) ([f99fd17](https://github.com/HankHuang0516/EClaw/commit/f99fd17b2b1c32d88daa2510ff66d714c1a53edc))
* **i18n:** positional format specifiers for feedback_result_logs (7 locales) ([#2597](https://github.com/HankHuang0516/EClaw/issues/2597)) ([21aedc7](https://github.com/HankHuang0516/EClaw/commit/21aedc7eebc7a2839e340136f38dfdfd4dabb9dc))
* **avatar-petdx:** preserve descriptor across transient API failures (flicker) ([#2625](https://github.com/HankHuang0516/EClaw/issues/2625)) ([7b1c606](https://github.com/HankHuang0516/EClaw/commit/7b1c606514f7698d72ec95cf6c556e4043966186))
* **chat:** preserve scroll anchor while reading history ([#2693](https://github.com/HankHuang0516/EClaw/issues/2693)) ([945fdb7](https://github.com/HankHuang0516/EClaw/commit/945fdb7192b791b31882e1e75568dd8b11e4686f))
* **promo:** pull video embed from /promo-chat-avatar.html ([#2724](https://github.com/HankHuang0516/EClaw/issues/2724)) ([2afabc8](https://github.com/HankHuang0516/EClaw/commit/2afabc8c5ff8b25218a7cb857e8adfa572c8e9d5))
* **kanban:** realign stale recurring schedules ([#2785](https://github.com/HankHuang0516/EClaw/issues/2785)) ([ab8ee25](https://github.com/HankHuang0516/EClaw/commit/ab8ee250a9b37f3d3e838bb01d8866c8d2b78231))
* **portal:** reduce QA-discovered request fanout ([#2656](https://github.com/HankHuang0516/EClaw/issues/2656)) ([1e46d6b](https://github.com/HankHuang0516/EClaw/commit/1e46d6bab61e58c65b452b6503d953f8dddeee75))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **portal:** remove org chart fit scale floor ([#2676](https://github.com/HankHuang0516/EClaw/issues/2676)) ([0f01606](https://github.com/HankHuang0516/EClaw/commit/0f016068b963bb5f800a02f28817c7174979d913))
* **rental:** remove phantom 'webhook test push' step from BIND_COMPLETE ([#2864](https://github.com/HankHuang0516/EClaw/issues/2864)) ([47f4a3e](https://github.com/HankHuang0516/EClaw/commit/47f4a3edf76aa95ebd06d8713cd44fda6eef9b5d))
* **i18n:** rename mm_empty_title → mm_state_empty_title in mindmap.html ([#2683](https://github.com/HankHuang0516/EClaw/issues/2683)) ([c79c109](https://github.com/HankHuang0516/EClaw/commit/c79c109bea23142e8a6d9ace976d105af1280ec9))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **chat:** render mention avatars with companion renderer ([#2633](https://github.com/HankHuang0516/EClaw/issues/2633)) ([03e205f](https://github.com/HankHuang0516/EClaw/commit/03e205f663ecd2c2f443d4009dd5af0093f0bbbb))
* **kanban:** reserve mobile comments panel height ([#2782](https://github.com/HankHuang0516/EClaw/issues/2782)) ([ce8662d](https://github.com/HankHuang0516/EClaw/commit/ce8662d362422fdd25037f1deb61dbed9425e2f9))
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* scheduled audit 2026-05-13 — 6 bugs, XSS, i18n ([#2668](https://github.com/HankHuang0516/EClaw/issues/2668)) ([21dd513](https://github.com/HankHuang0516/EClaw/commit/21dd513b4464738de29164265437435ba6cc4817)), closes [#2605](https://github.com/HankHuang0516/EClaw/issues/2605) [#2608](https://github.com/HankHuang0516/EClaw/issues/2608) [#2600](https://github.com/HankHuang0516/EClaw/issues/2600) [#2599](https://github.com/HankHuang0516/EClaw/issues/2599) [#2598](https://github.com/HankHuang0516/EClaw/issues/2598)
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **chat:** smart-chip preview falls back to inline c.comments when /comments fails (PR [#2677](https://github.com/HankHuang0516/EClaw/issues/2677)) ([7f4dffd](https://github.com/HankHuang0516/EClaw/commit/7f4dffd2c83ea86f296b8fa0610f0e67c9f1af11))
* **kanban:** stabilize comment detail viewport ([#2796](https://github.com/HankHuang0516/EClaw/issues/2796)) ([0a10aad](https://github.com/HankHuang0516/EClaw/commit/0a10aadb5a5b12ff23454c16d5c88183b94ad7d7))
* **wallpaper:** stop Android live wallpaper flashing default lobster on companion change ([#2629](https://github.com/HankHuang0516/EClaw/issues/2629)) ([8b4f66f](https://github.com/HankHuang0516/EClaw/commit/8b4f66fcb335bf43128f924b761b6337c817095b)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **chat:** stop chat.html bouncing to dashboard via /api/rental/health-status 401 race ([#2833](https://github.com/HankHuang0516/EClaw/issues/2833)) ([c422406](https://github.com/HankHuang0516/EClaw/commit/c4224067cdcfe7f3e22ab95007c7563dac4196ac))
* **openclaw-channel:** support OpenClaw 2026.5.20 ([8045de6](https://github.com/HankHuang0516/EClaw/commit/8045de6bebecfc05f9bd57453b99c098ca35681b))
* **mentions:** support same-device CJK display-name tags ([#2874](https://github.com/HankHuang0516/EClaw/issues/2874)) ([b8f61be](https://github.com/HankHuang0516/EClaw/commit/b8f61be9a3962fef75dd32ea34e8900880dafaf9))
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **app:** WebView pages honor app-selected locale via ?lang= URL param ([#2672](https://github.com/HankHuang0516/EClaw/issues/2672)) ([8ed8757](https://github.com/HankHuang0516/EClaw/commit/8ed8757aec5bf214e837cc0d81bf2b23f1993a91)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **share-chat:** wire rich CTA actions to msgInput ([#2867](https://github.com/HankHuang0516/EClaw/issues/2867)) ([df23b11](https://github.com/HankHuang0516/EClaw/commit/df23b1147d34c59a644a145bbd87c18b96400acc))


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* **community:** 1-click chat button on bot cards + utm tagging ([#2610](https://github.com/HankHuang0516/EClaw/issues/2610)) ([eee97b0](https://github.com/HankHuang0516/EClaw/commit/eee97b0e2e4e74945ec24f218a69a52800b97a66))
* **chat:** accept ?messageId= as deep-link alias ([#2838](https://github.com/HankHuang0516/EClaw/issues/2838)) ([1785a87](https://github.com/HankHuang0516/EClaw/commit/1785a87310426637fd10df83754fb9924c45207f))
* **chat:** add avatar size preference ([#2714](https://github.com/HankHuang0516/EClaw/issues/2714)) ([6fe164a](https://github.com/HankHuang0516/EClaw/commit/6fe164ad8b22fa576d2dd9ad37c0d9fc295b5a83))
* **dashboard:** add Claude and Codex channel guides ([#2640](https://github.com/HankHuang0516/EClaw/issues/2640)) ([c64e4c4](https://github.com/HankHuang0516/EClaw/commit/c64e4c4afc78db58c5cd578f00486dd7b2fd3311))
* **dashboard:** add Claude Code channel guide card ([#2667](https://github.com/HankHuang0516/EClaw/issues/2667)) ([d70d75c](https://github.com/HankHuang0516/EClaw/commit/d70d75c0c8caa8a540358a9aab4556b8c1927a5c))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* **kanban:** add device-scoped card tags ([#2773](https://github.com/HankHuang0516/EClaw/issues/2773)) ([53a387e](https://github.com/HankHuang0516/EClaw/commit/53a387e67ba7bb4f6bed1c427000c4ae8666577a))
* **portal:** add entity selector to petdx-browser ([#2602](https://github.com/HankHuang0516/EClaw/issues/2602)) ([3fa067e](https://github.com/HankHuang0516/EClaw/commit/3fa067e00b38829b48a37cecd33ee81a9a1122d9))
* **kanban:** add explicit card links ([#2721](https://github.com/HankHuang0516/EClaw/issues/2721)) ([ef9f812](https://github.com/HankHuang0516/EClaw/commit/ef9f812a3fcf39efd07fd158ce90951bdd045ac7))
* **kanban:** add explicit done-card reopen flow ([#2801](https://github.com/HankHuang0516/EClaw/issues/2801)) ([5080aac](https://github.com/HankHuang0516/EClaw/commit/5080aacb75047c0deaa379ee708ec85465afd57c))
* **mindmap:** add GET /api/mindmap/graph force-graph projection ([#2680](https://github.com/HankHuang0516/EClaw/issues/2680)) ([a00b2e7](https://github.com/HankHuang0516/EClaw/commit/a00b2e775af2c4c98cd157f760ad87aeeee469f0)), closes [#2679](https://github.com/HankHuang0516/EClaw/issues/2679) [#2679](https://github.com/HankHuang0516/EClaw/issues/2679)
* **dashboard:** add Hermes channel promo card ([#2708](https://github.com/HankHuang0516/EClaw/issues/2708)) ([337aca1](https://github.com/HankHuang0516/EClaw/commit/337aca153d5a1cd7e888c065f00ae54db7872d91))
* **rental:** add listing soft pause ([#2781](https://github.com/HankHuang0516/EClaw/issues/2781)) ([6586b72](https://github.com/HankHuang0516/EClaw/commit/6586b72717ddb1637d91cd3242c8d2ff554f62b4))
* **portal:** add Nagoya 5D4N trip static cross-ref page ([#2689](https://github.com/HankHuang0516/EClaw/issues/2689)) ([2e0efb6](https://github.com/HankHuang0516/EClaw/commit/2e0efb6dcdaff52226cc8854a96747000b12bdff))
* **portal:** add Nagoya trip map links and image lightbox ([#2821](https://github.com/HankHuang0516/EClaw/issues/2821)) ([3e40955](https://github.com/HankHuang0516/EClaw/commit/3e40955650a05f45a6b9f7e39e73847705424a03))
* **portal/nagoya:** add parking shortcut buttons next to itinerary places ([#2826](https://github.com/HankHuang0516/EClaw/issues/2826)) ([63968c5](https://github.com/HankHuang0516/EClaw/commit/63968c554d046afc8d978de74e3aacbf7700500d))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **settings:** add rental roster management preview ([#2758](https://github.com/HankHuang0516/EClaw/issues/2758)) ([9706e59](https://github.com/HankHuang0516/EClaw/commit/9706e59ded140a90a6e02348124282bc69d89001))
* **rental:** add renter health chat indicator ([#2690](https://github.com/HankHuang0516/EClaw/issues/2690)) ([36cd2e9](https://github.com/HankHuang0516/EClaw/commit/36cd2e9802be4c7ebb03d3024617fa74aca48ffd))
* **ios:** add Tutorial & Intro entry in Settings ([#2800](https://github.com/HankHuang0516/EClaw/issues/2800)) ([ed83e51](https://github.com/HankHuang0516/EClaw/commit/ed83e51d043bf4cd5865f38dc95a91ed54820d6c))
* **landing:** add Watch Full Demo CTA below hero video ([#2799](https://github.com/HankHuang0516/EClaw/issues/2799)) ([66107c9](https://github.com/HankHuang0516/EClaw/commit/66107c954727551fd34d989a4674daaad9b63968))
* **footer:** add Watch Intro Video link in Info column ([#2798](https://github.com/HankHuang0516/EClaw/issues/2798)) ([d7c6d59](https://github.com/HankHuang0516/EClaw/commit/d7c6d596b69c6a5b257bf1f7a792a407ef9712ad))
* **i18n:** ar iter-2 — fill 623 missing keys against en source ([#2847](https://github.com/HankHuang0516/EClaw/issues/2847)) ([ee94a7a](https://github.com/HankHuang0516/EClaw/commit/ee94a7ae6812b5163efe4284ee4907ca32302f5c))
* **kanban:** backlog launch-gate flag to suppress L1/L2/L3 escalation ([#2855](https://github.com/HankHuang0516/EClaw/issues/2855)) ([cb8bf1b](https://github.com/HankHuang0516/EClaw/commit/cb8bf1bb6421f25214f65e129a8cadccc49cc266)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#4](https://github.com/HankHuang0516/EClaw/issues/4) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **companion:** bridge crafter-station/petdex gallery (1784 pets) ([#2601](https://github.com/HankHuang0516/EClaw/issues/2601)) ([2e245be](https://github.com/HankHuang0516/EClaw/commit/2e245bea6dd47ea7361b927d389188a3c23b6bb3))
* **promo:** chat avatar size feature landing page (self-hosted MP4) ([#2722](https://github.com/HankHuang0516/EClaw/issues/2722)) ([3852210](https://github.com/HankHuang0516/EClaw/commit/3852210d355704d018e3daca6b5f9512a011b210)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **kanban:** cron-spawn jitter + lane backpressure to prevent same-tick wedge ([#2791](https://github.com/HankHuang0516/EClaw/issues/2791)) ([9f414a7](https://github.com/HankHuang0516/EClaw/commit/9f414a731d6393672a0a4189c7b408c529ae5e12)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **promo:** embed daily eclaw video 2026-05-14 ([#2786](https://github.com/HankHuang0516/EClaw/issues/2786)) ([718a814](https://github.com/HankHuang0516/EClaw/commit/718a814ab16850bc2b33a1b303841e2c4378ecfa)), closes [#2782](https://github.com/HankHuang0516/EClaw/issues/2782) [#2693](https://github.com/HankHuang0516/EClaw/issues/2693)
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **info:** embed promo video at top of Quick Start tab ([#2797](https://github.com/HankHuang0516/EClaw/issues/2797)) ([047679f](https://github.com/HankHuang0516/EClaw/commit/047679fd57ab9949eaeacea414d5611e71afe041))
* **rental:** enforce strict rebind refunds ([#2703](https://github.com/HankHuang0516/EClaw/issues/2703)) ([a1859c5](https://github.com/HankHuang0516/EClaw/commit/a1859c50e6fb3991d7a8051491502d824a14a116))
* **portal:** group task chip actions ([#2825](https://github.com/HankHuang0516/EClaw/issues/2825)) ([5db5c59](https://github.com/HankHuang0516/EClaw/commit/5db5c59b32b8635f1412205faf0c2f9164d3d5d4))
* **portal:** info-guide-rules + info-guide-soul slide pair ([#2793](https://github.com/HankHuang0516/EClaw/issues/2793)) ([1c8bddc](https://github.com/HankHuang0516/EClaw/commit/1c8bddc4c185054b2b60088498e3d45509117127)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **chat:** link card previews to kanban ([#2754](https://github.com/HankHuang0516/EClaw/issues/2754)) ([2261240](https://github.com/HankHuang0516/EClaw/commit/22612402c2e95efb07246629e81a849be41ee9c7))
* **mission:** link notes to kanban cards ([#2723](https://github.com/HankHuang0516/EClaw/issues/2723)) ([b36dc18](https://github.com/HankHuang0516/EClaw/commit/b36dc18f3a8facf12e0b6046351c222f1e99dc55))
* **mindmap:** mission.html link to /portal/mindmap.html + deprecate /api/mission/mindmap ([#2685](https://github.com/HankHuang0516/EClaw/issues/2685)) ([11e297b](https://github.com/HankHuang0516/EClaw/commit/11e297bab1c9b56fcde3027d6500b7c58891bf18)), closes [#2680](https://github.com/HankHuang0516/EClaw/issues/2680) [#2684](https://github.com/HankHuang0516/EClaw/issues/2684)
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **settings:** per-entity nudge override UI (Phase 2) ([#2837](https://github.com/HankHuang0516/EClaw/issues/2837)) ([ea7662b](https://github.com/HankHuang0516/EClaw/commit/ea7662b0858882dae461e1387f711895924f9ab8)), closes [3/#4](https://github.com/HankHuang0516/EClaw/issues/4)
* **kanban:** per-entity nudge overrides (Phase 2 of card_e066cb6b) ([#2836](https://github.com/HankHuang0516/EClaw/issues/2836)) ([0425f80](https://github.com/HankHuang0516/EClaw/commit/0425f80bc1169c0d506b665659c8676695c45553))
* **avatar:** petdx render on card-holder my-cards (Phase 1b) ([#2621](https://github.com/HankHuang0516/EClaw/issues/2621)) ([f78ba8b](https://github.com/HankHuang0516/EClaw/commit/f78ba8b18acc426936ab6d8a82ca7541effea00d))
* **avatar:** petdx render on dashboard entity grid / org chart / bindings (Phase 1b) ([#2622](https://github.com/HankHuang0516/EClaw/issues/2622)) ([f417749](https://github.com/HankHuang0516/EClaw/commit/f41774914451048e8cd76e9ae30416a0642e173b)), closes [#2620](https://github.com/HankHuang0516/EClaw/issues/2620) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621)
* **avatar:** petdx render on kanban auto-assign / pulse / comment avatars (Phase 1b) ([#2624](https://github.com/HankHuang0516/EClaw/issues/2624)) ([6bff5f8](https://github.com/HankHuang0516/EClaw/commit/6bff5f80440d0bd91a6b1721cde9478d685c4d46))
* **avatar:** petdx render on mission skill/rule/soul entity dialogs (Phase 1b) ([#2623](https://github.com/HankHuang0516/EClaw/issues/2623)) ([129327b](https://github.com/HankHuang0516/EClaw/commit/129327bc7b91056659f1ab7e8d5e3f5260d951fb))
* **mindmap:** portal/mindmap.html force-graph prototype ([#129](https://github.com/HankHuang0516/EClaw/issues/129)) ([#2681](https://github.com/HankHuang0516/EClaw/issues/2681)) ([0f15e69](https://github.com/HankHuang0516/EClaw/commit/0f15e6930f0697c37fa08f3219edb8f9e499837f)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **portal:** redo nagoya trip page in professional tour-guide style ([#2691](https://github.com/HankHuang0516/EClaw/issues/2691)) ([b2378c0](https://github.com/HankHuang0516/EClaw/commit/b2378c06ee20fa9cccfdceceb1a4c9e0b3072f59))
* **i18n:** remove ms+hi orphan keys from i18n.js ([#2849](https://github.com/HankHuang0516/EClaw/issues/2849)) ([320176c](https://github.com/HankHuang0516/EClaw/commit/320176c06a3cfd8631e2a82ad02a6bd6a9af0389))
* **avatar:** render selected petdx companion in chat avatars ([#2620](https://github.com/HankHuang0516/EClaw/issues/2620)) ([0bdd046](https://github.com/HankHuang0516/EClaw/commit/0bdd046fe1b1c428e32edda366ff112c08927f4c))
* **home:** replace native home with WebView hosting dashboard.html ([#2634](https://github.com/HankHuang0516/EClaw/issues/2634)) ([e69ea81](https://github.com/HankHuang0516/EClaw/commit/e69ea8160c239b083a83d6dc83a4f1c3f901c863))
* **app:** route chat mission jumps through native tabs ([#2824](https://github.com/HankHuang0516/EClaw/issues/2824)) ([deb07b6](https://github.com/HankHuang0516/EClaw/commit/deb07b69a9ecca632fe27278de537f1d85234e94))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **chat:** support message deep links ([#2719](https://github.com/HankHuang0516/EClaw/issues/2719)) ([2dc0f1e](https://github.com/HankHuang0516/EClaw/commit/2dc0f1eeb259e1a0848db4a03186b989372cd91c))
* **mission:** support note deep links ([#2717](https://github.com/HankHuang0516/EClaw/issues/2717)) ([2efd3a5](https://github.com/HankHuang0516/EClaw/commit/2efd3a5e741217a07c0b0ac54a0ddd010e0ebe23))
* **share-chat:** twitter card + per-bot og:image/twitter:* in SSR ([#2609](https://github.com/HankHuang0516/EClaw/issues/2609)) ([6cdc853](https://github.com/HankHuang0516/EClaw/commit/6cdc853dc884cdb95bd47214942768981f218ae0))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))
* **settings:** wire petdx avatar into channel-account chips ([#2626](https://github.com/HankHuang0516/EClaw/issues/2626)) ([88aec77](https://github.com/HankHuang0516/EClaw/commit/88aec772628c240e97b336bb5820892ad632d1ae))
* **files:** wire petdx avatar into entity filter & per-file badges ([#2627](https://github.com/HankHuang0516/EClaw/issues/2627)) ([5b3e5cc](https://github.com/HankHuang0516/EClaw/commit/5b3e5cc542d9da69bb4e92500fd03a542ea33f00))
* **mindmap:** wrap hardcoded zh-TW UI strings with i18n t() ([#2607](https://github.com/HankHuang0516/EClaw/issues/2607)) ([166af87](https://github.com/HankHuang0516/EClaw/commit/166af8772b2121a24aaf34a83b3de970e9b3b571)), closes [#2606](https://github.com/HankHuang0516/EClaw/issues/2606)
* **i18n:** zh-TW backfill 8 keys (soft-pause + chat + invite + wallet) ([#2815](https://github.com/HankHuang0516/EClaw/issues/2815)) ([a2dd574](https://github.com/HankHuang0516/EClaw/commit/a2dd5743ce8d43a4b6ace9a2fd4b52568180d6c5))


### Performance Improvements

* **mindmap:** force-graph hardening for 1000/2000-node graphs ([#2684](https://github.com/HankHuang0516/EClaw/issues/2684)) ([da8b1c8](https://github.com/HankHuang0516/EClaw/commit/da8b1c8f947ab8bc8fa455c1962a91146623a1fc))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-23)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **notifications:** add kanban_done + kanban_done_auto toggles to Android Settings ([#2636](https://github.com/HankHuang0516/EClaw/issues/2636)) ([a710909](https://github.com/HankHuang0516/EClaw/commit/a7109095e3393b8564e7ef1b23d382a4fbb944b8))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **i18n:** ar block — fix 27 broken entries (CJK leaks + truncated HTML) ([#2851](https://github.com/HankHuang0516/EClaw/issues/2851)) ([5b19175](https://github.com/HankHuang0516/EClaw/commit/5b19175d712d00d16fcec00b749035c4beae7a5c))
* **chat:** atomic-load target bar (await contacts before first render) ([#2831](https://github.com/HankHuang0516/EClaw/issues/2831)) ([5f529e6](https://github.com/HankHuang0516/EClaw/commit/5f529e6b772eacc38ba1de69b44258a05f0d816a)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2](https://github.com/HankHuang0516/EClaw/issues/2)
* **channel:** await binding persistence ([712516d](https://github.com/HankHuang0516/EClaw/commit/712516decafb745035bd1434a28cc1973d433e19))
* **rental:** bump handshake timeout to 60s + timeout-aware discovery fallback ([#2863](https://github.com/HankHuang0516/EClaw/issues/2863)) ([fd4322f](https://github.com/HankHuang0516/EClaw/commit/fd4322f8890f3c2dfca3acdae6a4b95f19c381f9)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **i18n:** clear batch 1 residual missing keys ([#2790](https://github.com/HankHuang0516/EClaw/issues/2790)) ([211030e](https://github.com/HankHuang0516/EClaw/commit/211030e0b0b6a865c11f0c4ed60dc4e356d43b7a))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **kanban:** comment input no longer overlaps last comment in card detail (PR [#2678](https://github.com/HankHuang0516/EClaw/issues/2678)) ([fba91fc](https://github.com/HankHuang0516/EClaw/commit/fba91fca15402b453a0db5ee857c0b16e6087055))
* **chat:** compact 20px avatar in target bar (App WebView only shows [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2](https://github.com/HankHuang0516/EClaw/issues/2)) ([#2830](https://github.com/HankHuang0516/EClaw/issues/2830)) ([42c7543](https://github.com/HankHuang0516/EClaw/commit/42c7543b4a78a7abf3f5f7535eb9bc6142cd0fe2)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **portal:** complete 401 redirect sweep + mobile UIUX truncation ([#2842](https://github.com/HankHuang0516/EClaw/issues/2842)) ([f9799ba](https://github.com/HankHuang0516/EClaw/commit/f9799ba42498b109f0a8a70e80836aa6da51e216)), closes [#2833](https://github.com/HankHuang0516/EClaw/issues/2833) [#2845](https://github.com/HankHuang0516/EClaw/issues/2845) [#2844](https://github.com/HankHuang0516/EClaw/issues/2844) [#2843](https://github.com/HankHuang0516/EClaw/issues/2843)
* **uiux:** continue qa mobile readability sweep ([#2854](https://github.com/HankHuang0516/EClaw/issues/2854)) ([57606ff](https://github.com/HankHuang0516/EClaw/commit/57606ffe3e543b07a026aacc53c4b470c9a7825b))
* **i18n:** cover dynamic portal wrapper keys ([#2807](https://github.com/HankHuang0516/EClaw/issues/2807)) ([4c711cc](https://github.com/HankHuang0516/EClaw/commit/4c711cc4009300ffe4e8933a98ee01cd0fdd6aeb))
* **i18n:** dedup 20 dash_channel_card_* keys in es block ([#2876](https://github.com/HankHuang0516/EClaw/issues/2876)) ([807284c](https://github.com/HankHuang0516/EClaw/commit/807284ce363ef119ccdb0ae40e5ce99d3f0a27e0))
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **rental:** don't pollute entity.message on push gateway timeout ([#2860](https://github.com/HankHuang0516/EClaw/issues/2860)) ([592ba44](https://github.com/HankHuang0516/EClaw/commit/592ba44f57536ee00011b6cbddaa6b129a7cbae9))
* **petdx:** drop dark-grey loading placeholder + preload sprite WEBP ([#2628](https://github.com/HankHuang0516/EClaw/issues/2628)) ([59cef38](https://github.com/HankHuang0516/EClaw/commit/59cef387bd69ca99d7d15c86a1364856d3849ad8)), closes [#1a1a1a](https://github.com/HankHuang0516/EClaw/issues/1a1a1a)
* **gateway-ws:** drop Origin header on server-to-server WS upgrade ([#2869](https://github.com/HankHuang0516/EClaw/issues/2869)) ([716dcf9](https://github.com/HankHuang0516/EClaw/commit/716dcf9d0834b17522bb9d894bad84bc142d1a19))
* **setup-scripts:** drop Origin header on server-to-server WS upgrade ([#2875](https://github.com/HankHuang0516/EClaw/issues/2875)) ([9d893b8](https://github.com/HankHuang0516/EClaw/commit/9d893b8e5eea4db275e450bf423903c156cd3e4b)), closes [#2869](https://github.com/HankHuang0516/EClaw/issues/2869)
* **security:** escape innerHTML in chat modal error messages ([#2819](https://github.com/HankHuang0516/EClaw/issues/2819)) ([dce07ad](https://github.com/HankHuang0516/EClaw/commit/dce07adde64795916dba977ae23e46f3371ce7ed)), closes [#2809](https://github.com/HankHuang0516/EClaw/issues/2809) [#2810](https://github.com/HankHuang0516/EClaw/issues/2810) [#2809](https://github.com/HankHuang0516/EClaw/issues/2809) [#2810](https://github.com/HankHuang0516/EClaw/issues/2810)
* **entities:** expose botSecret to owner so wallpaper service can poll companions ([#2615](https://github.com/HankHuang0516/EClaw/issues/2615)) ([04470fc](https://github.com/HankHuang0516/EClaw/commit/04470fce8f8c3fce2b1ba8b243e776606f107502))
* **rental:** expose owner_public_code in marketplace so plaza CTA can route ([#2616](https://github.com/HankHuang0516/EClaw/issues/2616)) ([4d1372f](https://github.com/HankHuang0516/EClaw/commit/4d1372f717d93cab65543e87c852e74e9fb67071)), closes [#2610](https://github.com/HankHuang0516/EClaw/issues/2610)
* **mindmap:** fallback to device scope when entityId is null ([#2728](https://github.com/HankHuang0516/EClaw/issues/2728)) ([7572312](https://github.com/HankHuang0516/EClaw/commit/7572312433d3d75fc245eda48a28919ce14bd927))
* **i18n:** fill Spanish drift keys ([#2751](https://github.com/HankHuang0516/EClaw/issues/2751)) ([0ad0ee5](https://github.com/HankHuang0516/EClaw/commit/0ad0ee55f7fac3e6ac46d891539950dab4d553cc))
* **portal:** fit embedded org chart to mobile viewport ([#2674](https://github.com/HankHuang0516/EClaw/issues/2674)) ([1c4e1b4](https://github.com/HankHuang0516/EClaw/commit/1c4e1b413ea7027b4cd4b8ecda981b0d0e12e66b))
* **i18n:** fix 6 trailing-comma syntax errors in 10-locale batch ([#2771](https://github.com/HankHuang0516/EClaw/issues/2771)) ([b27c6ca](https://github.com/HankHuang0516/EClaw/commit/b27c6ca204bf813e406c54ce3a2532a5f1f031b3))
* **kanban:** GET card returns latest 50 comments + comments endpoint exposes total ([#2816](https://github.com/HankHuang0516/EClaw/issues/2816)) ([c4d83f7](https://github.com/HankHuang0516/EClaw/commit/c4d83f777a1cd26aea0936e4316aa35c52822eef))
* **sharechat:** guest verify-email modal + disabled Send for unverified ([#2865](https://github.com/HankHuang0516/EClaw/issues/2865)) ([cb3b061](https://github.com/HankHuang0516/EClaw/commit/cb3b0614e0f6160417d907753e66eceb2d666802))
* **uiux:** harden chat previews and roster preview ([#2769](https://github.com/HankHuang0516/EClaw/issues/2769)) ([466d4d3](https://github.com/HankHuang0516/EClaw/commit/466d4d3ef81c628d3f58db64323946053d7bf61c))
* **mention-parser:** ignore @-mentions inside markdown code spans ([#2645](https://github.com/HankHuang0516/EClaw/issues/2645)) ([8da19d4](https://github.com/HankHuang0516/EClaw/commit/8da19d4a79ceb4152bf2144ee0847c61ce3e1def)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **kanban:** lazy-load dependency chips via IntersectionObserver ([#2632](https://github.com/HankHuang0516/EClaw/issues/2632)) ([20586b4](https://github.com/HankHuang0516/EClaw/commit/20586b43357335f9eb6a190c02d58c8e36b58aba)), closes [#2631](https://github.com/HankHuang0516/EClaw/issues/2631)
* **kanban:** make card sorting deterministic ([#2756](https://github.com/HankHuang0516/EClaw/issues/2756)) ([48e2117](https://github.com/HankHuang0516/EClaw/commit/48e2117b64e37f05dc635e0a3b67bfd43cbe48f5))
* **org-chart:** notify affected bots on hierarchy change ([#2812](https://github.com/HankHuang0516/EClaw/issues/2812)) ([55675fd](https://github.com/HankHuang0516/EClaw/commit/55675fdf4487494d729a29524b32bd81b756a00c)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** notify reviewer on manual /move → review ([#2753](https://github.com/HankHuang0516/EClaw/issues/2753)) ([6cbbb4e](https://github.com/HankHuang0516/EClaw/commit/6cbbb4ee8c0d4d8ad54df2e9b5faaa3699bd530f))
* **wallpaper:** off-load spritesheet fetch to IO so per-petdx sprites actually render ([#2618](https://github.com/HankHuang0516/EClaw/issues/2618)) ([61b832c](https://github.com/HankHuang0516/EClaw/commit/61b832c9fa8a1d0caab810ccc942d85c63349267)), closes [#2615](https://github.com/HankHuang0516/EClaw/issues/2615) [#2577](https://github.com/HankHuang0516/EClaw/issues/2577)
* **security:** patch P0 sanitize-html XSS + P1 protobufjs + exam.html XSS ([#2829](https://github.com/HankHuang0516/EClaw/issues/2829)) ([c71b871](https://github.com/HankHuang0516/EClaw/commit/c71b871a045887375dd0d26d1a3280a0891a89ad))
* **security:** patch ws uninitialized memory disclosure (GHSA-58qx-3vcg-4xpx) ([#2872](https://github.com/HankHuang0516/EClaw/issues/2872)) ([2523d15](https://github.com/HankHuang0516/EClaw/commit/2523d154bbe501a7cc086340f7a07ece3abfa69b))
* **portal:** petdx-browser cookie-session fallback for device-login ([#2757](https://github.com/HankHuang0516/EClaw/issues/2757)) ([ca275f4](https://github.com/HankHuang0516/EClaw/commit/ca275f4519835da0c7ad71c588908a18f6f138d8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **api:** platform-stats 500 + entity/lookup publicCode alias ([#2809](https://github.com/HankHuang0516/EClaw/issues/2809), [#2810](https://github.com/HankHuang0516/EClaw/issues/2810)) ([#2818](https://github.com/HankHuang0516/EClaw/issues/2818)) ([f99fd17](https://github.com/HankHuang0516/EClaw/commit/f99fd17b2b1c32d88daa2510ff66d714c1a53edc))
* **i18n:** positional format specifiers for feedback_result_logs (7 locales) ([#2597](https://github.com/HankHuang0516/EClaw/issues/2597)) ([21aedc7](https://github.com/HankHuang0516/EClaw/commit/21aedc7eebc7a2839e340136f38dfdfd4dabb9dc))
* **avatar-petdx:** preserve descriptor across transient API failures (flicker) ([#2625](https://github.com/HankHuang0516/EClaw/issues/2625)) ([7b1c606](https://github.com/HankHuang0516/EClaw/commit/7b1c606514f7698d72ec95cf6c556e4043966186))
* **chat:** preserve scroll anchor while reading history ([#2693](https://github.com/HankHuang0516/EClaw/issues/2693)) ([945fdb7](https://github.com/HankHuang0516/EClaw/commit/945fdb7192b791b31882e1e75568dd8b11e4686f))
* **promo:** pull video embed from /promo-chat-avatar.html ([#2724](https://github.com/HankHuang0516/EClaw/issues/2724)) ([2afabc8](https://github.com/HankHuang0516/EClaw/commit/2afabc8c5ff8b25218a7cb857e8adfa572c8e9d5))
* **kanban:** realign stale recurring schedules ([#2785](https://github.com/HankHuang0516/EClaw/issues/2785)) ([ab8ee25](https://github.com/HankHuang0516/EClaw/commit/ab8ee250a9b37f3d3e838bb01d8866c8d2b78231))
* **portal:** reduce QA-discovered request fanout ([#2656](https://github.com/HankHuang0516/EClaw/issues/2656)) ([1e46d6b](https://github.com/HankHuang0516/EClaw/commit/1e46d6bab61e58c65b452b6503d953f8dddeee75))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **portal:** remove org chart fit scale floor ([#2676](https://github.com/HankHuang0516/EClaw/issues/2676)) ([0f01606](https://github.com/HankHuang0516/EClaw/commit/0f016068b963bb5f800a02f28817c7174979d913))
* **rental:** remove phantom 'webhook test push' step from BIND_COMPLETE ([#2864](https://github.com/HankHuang0516/EClaw/issues/2864)) ([47f4a3e](https://github.com/HankHuang0516/EClaw/commit/47f4a3edf76aa95ebd06d8713cd44fda6eef9b5d))
* **i18n:** rename mm_empty_title → mm_state_empty_title in mindmap.html ([#2683](https://github.com/HankHuang0516/EClaw/issues/2683)) ([c79c109](https://github.com/HankHuang0516/EClaw/commit/c79c109bea23142e8a6d9ace976d105af1280ec9))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **chat:** render mention avatars with companion renderer ([#2633](https://github.com/HankHuang0516/EClaw/issues/2633)) ([03e205f](https://github.com/HankHuang0516/EClaw/commit/03e205f663ecd2c2f443d4009dd5af0093f0bbbb))
* **kanban:** reserve mobile comments panel height ([#2782](https://github.com/HankHuang0516/EClaw/issues/2782)) ([ce8662d](https://github.com/HankHuang0516/EClaw/commit/ce8662d362422fdd25037f1deb61dbed9425e2f9))
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* scheduled audit 2026-05-13 — 6 bugs, XSS, i18n ([#2668](https://github.com/HankHuang0516/EClaw/issues/2668)) ([21dd513](https://github.com/HankHuang0516/EClaw/commit/21dd513b4464738de29164265437435ba6cc4817)), closes [#2605](https://github.com/HankHuang0516/EClaw/issues/2605) [#2608](https://github.com/HankHuang0516/EClaw/issues/2608) [#2600](https://github.com/HankHuang0516/EClaw/issues/2600) [#2599](https://github.com/HankHuang0516/EClaw/issues/2599) [#2598](https://github.com/HankHuang0516/EClaw/issues/2598)
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **chat:** smart-chip preview falls back to inline c.comments when /comments fails (PR [#2677](https://github.com/HankHuang0516/EClaw/issues/2677)) ([7f4dffd](https://github.com/HankHuang0516/EClaw/commit/7f4dffd2c83ea86f296b8fa0610f0e67c9f1af11))
* **kanban:** stabilize comment detail viewport ([#2796](https://github.com/HankHuang0516/EClaw/issues/2796)) ([0a10aad](https://github.com/HankHuang0516/EClaw/commit/0a10aadb5a5b12ff23454c16d5c88183b94ad7d7))
* **wallpaper:** stop Android live wallpaper flashing default lobster on companion change ([#2629](https://github.com/HankHuang0516/EClaw/issues/2629)) ([8b4f66f](https://github.com/HankHuang0516/EClaw/commit/8b4f66fcb335bf43128f924b761b6337c817095b)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **chat:** stop chat.html bouncing to dashboard via /api/rental/health-status 401 race ([#2833](https://github.com/HankHuang0516/EClaw/issues/2833)) ([c422406](https://github.com/HankHuang0516/EClaw/commit/c4224067cdcfe7f3e22ab95007c7563dac4196ac))
* **mentions:** support same-device CJK display-name tags ([#2874](https://github.com/HankHuang0516/EClaw/issues/2874)) ([b8f61be](https://github.com/HankHuang0516/EClaw/commit/b8f61be9a3962fef75dd32ea34e8900880dafaf9))
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **app:** WebView pages honor app-selected locale via ?lang= URL param ([#2672](https://github.com/HankHuang0516/EClaw/issues/2672)) ([8ed8757](https://github.com/HankHuang0516/EClaw/commit/8ed8757aec5bf214e837cc0d81bf2b23f1993a91)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **share-chat:** wire rich CTA actions to msgInput ([#2867](https://github.com/HankHuang0516/EClaw/issues/2867)) ([df23b11](https://github.com/HankHuang0516/EClaw/commit/df23b1147d34c59a644a145bbd87c18b96400acc))


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* **community:** 1-click chat button on bot cards + utm tagging ([#2610](https://github.com/HankHuang0516/EClaw/issues/2610)) ([eee97b0](https://github.com/HankHuang0516/EClaw/commit/eee97b0e2e4e74945ec24f218a69a52800b97a66))
* **chat:** accept ?messageId= as deep-link alias ([#2838](https://github.com/HankHuang0516/EClaw/issues/2838)) ([1785a87](https://github.com/HankHuang0516/EClaw/commit/1785a87310426637fd10df83754fb9924c45207f))
* **chat:** add avatar size preference ([#2714](https://github.com/HankHuang0516/EClaw/issues/2714)) ([6fe164a](https://github.com/HankHuang0516/EClaw/commit/6fe164ad8b22fa576d2dd9ad37c0d9fc295b5a83))
* **dashboard:** add Claude and Codex channel guides ([#2640](https://github.com/HankHuang0516/EClaw/issues/2640)) ([c64e4c4](https://github.com/HankHuang0516/EClaw/commit/c64e4c4afc78db58c5cd578f00486dd7b2fd3311))
* **dashboard:** add Claude Code channel guide card ([#2667](https://github.com/HankHuang0516/EClaw/issues/2667)) ([d70d75c](https://github.com/HankHuang0516/EClaw/commit/d70d75c0c8caa8a540358a9aab4556b8c1927a5c))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* **kanban:** add device-scoped card tags ([#2773](https://github.com/HankHuang0516/EClaw/issues/2773)) ([53a387e](https://github.com/HankHuang0516/EClaw/commit/53a387e67ba7bb4f6bed1c427000c4ae8666577a))
* **portal:** add entity selector to petdx-browser ([#2602](https://github.com/HankHuang0516/EClaw/issues/2602)) ([3fa067e](https://github.com/HankHuang0516/EClaw/commit/3fa067e00b38829b48a37cecd33ee81a9a1122d9))
* **kanban:** add explicit card links ([#2721](https://github.com/HankHuang0516/EClaw/issues/2721)) ([ef9f812](https://github.com/HankHuang0516/EClaw/commit/ef9f812a3fcf39efd07fd158ce90951bdd045ac7))
* **kanban:** add explicit done-card reopen flow ([#2801](https://github.com/HankHuang0516/EClaw/issues/2801)) ([5080aac](https://github.com/HankHuang0516/EClaw/commit/5080aacb75047c0deaa379ee708ec85465afd57c))
* **mindmap:** add GET /api/mindmap/graph force-graph projection ([#2680](https://github.com/HankHuang0516/EClaw/issues/2680)) ([a00b2e7](https://github.com/HankHuang0516/EClaw/commit/a00b2e775af2c4c98cd157f760ad87aeeee469f0)), closes [#2679](https://github.com/HankHuang0516/EClaw/issues/2679) [#2679](https://github.com/HankHuang0516/EClaw/issues/2679)
* **dashboard:** add Hermes channel promo card ([#2708](https://github.com/HankHuang0516/EClaw/issues/2708)) ([337aca1](https://github.com/HankHuang0516/EClaw/commit/337aca153d5a1cd7e888c065f00ae54db7872d91))
* **rental:** add listing soft pause ([#2781](https://github.com/HankHuang0516/EClaw/issues/2781)) ([6586b72](https://github.com/HankHuang0516/EClaw/commit/6586b72717ddb1637d91cd3242c8d2ff554f62b4))
* **portal:** add Nagoya 5D4N trip static cross-ref page ([#2689](https://github.com/HankHuang0516/EClaw/issues/2689)) ([2e0efb6](https://github.com/HankHuang0516/EClaw/commit/2e0efb6dcdaff52226cc8854a96747000b12bdff))
* **portal:** add Nagoya trip map links and image lightbox ([#2821](https://github.com/HankHuang0516/EClaw/issues/2821)) ([3e40955](https://github.com/HankHuang0516/EClaw/commit/3e40955650a05f45a6b9f7e39e73847705424a03))
* **portal/nagoya:** add parking shortcut buttons next to itinerary places ([#2826](https://github.com/HankHuang0516/EClaw/issues/2826)) ([63968c5](https://github.com/HankHuang0516/EClaw/commit/63968c554d046afc8d978de74e3aacbf7700500d))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **settings:** add rental roster management preview ([#2758](https://github.com/HankHuang0516/EClaw/issues/2758)) ([9706e59](https://github.com/HankHuang0516/EClaw/commit/9706e59ded140a90a6e02348124282bc69d89001))
* **rental:** add renter health chat indicator ([#2690](https://github.com/HankHuang0516/EClaw/issues/2690)) ([36cd2e9](https://github.com/HankHuang0516/EClaw/commit/36cd2e9802be4c7ebb03d3024617fa74aca48ffd))
* **ios:** add Tutorial & Intro entry in Settings ([#2800](https://github.com/HankHuang0516/EClaw/issues/2800)) ([ed83e51](https://github.com/HankHuang0516/EClaw/commit/ed83e51d043bf4cd5865f38dc95a91ed54820d6c))
* **landing:** add Watch Full Demo CTA below hero video ([#2799](https://github.com/HankHuang0516/EClaw/issues/2799)) ([66107c9](https://github.com/HankHuang0516/EClaw/commit/66107c954727551fd34d989a4674daaad9b63968))
* **footer:** add Watch Intro Video link in Info column ([#2798](https://github.com/HankHuang0516/EClaw/issues/2798)) ([d7c6d59](https://github.com/HankHuang0516/EClaw/commit/d7c6d596b69c6a5b257bf1f7a792a407ef9712ad))
* **i18n:** ar iter-2 — fill 623 missing keys against en source ([#2847](https://github.com/HankHuang0516/EClaw/issues/2847)) ([ee94a7a](https://github.com/HankHuang0516/EClaw/commit/ee94a7ae6812b5163efe4284ee4907ca32302f5c))
* **kanban:** backlog launch-gate flag to suppress L1/L2/L3 escalation ([#2855](https://github.com/HankHuang0516/EClaw/issues/2855)) ([cb8bf1b](https://github.com/HankHuang0516/EClaw/commit/cb8bf1bb6421f25214f65e129a8cadccc49cc266)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#4](https://github.com/HankHuang0516/EClaw/issues/4) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **companion:** bridge crafter-station/petdex gallery (1784 pets) ([#2601](https://github.com/HankHuang0516/EClaw/issues/2601)) ([2e245be](https://github.com/HankHuang0516/EClaw/commit/2e245bea6dd47ea7361b927d389188a3c23b6bb3))
* **promo:** chat avatar size feature landing page (self-hosted MP4) ([#2722](https://github.com/HankHuang0516/EClaw/issues/2722)) ([3852210](https://github.com/HankHuang0516/EClaw/commit/3852210d355704d018e3daca6b5f9512a011b210)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **kanban:** cron-spawn jitter + lane backpressure to prevent same-tick wedge ([#2791](https://github.com/HankHuang0516/EClaw/issues/2791)) ([9f414a7](https://github.com/HankHuang0516/EClaw/commit/9f414a731d6393672a0a4189c7b408c529ae5e12)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **promo:** embed daily eclaw video 2026-05-14 ([#2786](https://github.com/HankHuang0516/EClaw/issues/2786)) ([718a814](https://github.com/HankHuang0516/EClaw/commit/718a814ab16850bc2b33a1b303841e2c4378ecfa)), closes [#2782](https://github.com/HankHuang0516/EClaw/issues/2782) [#2693](https://github.com/HankHuang0516/EClaw/issues/2693)
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **info:** embed promo video at top of Quick Start tab ([#2797](https://github.com/HankHuang0516/EClaw/issues/2797)) ([047679f](https://github.com/HankHuang0516/EClaw/commit/047679fd57ab9949eaeacea414d5611e71afe041))
* **rental:** enforce strict rebind refunds ([#2703](https://github.com/HankHuang0516/EClaw/issues/2703)) ([a1859c5](https://github.com/HankHuang0516/EClaw/commit/a1859c50e6fb3991d7a8051491502d824a14a116))
* **portal:** group task chip actions ([#2825](https://github.com/HankHuang0516/EClaw/issues/2825)) ([5db5c59](https://github.com/HankHuang0516/EClaw/commit/5db5c59b32b8635f1412205faf0c2f9164d3d5d4))
* **portal:** info-guide-rules + info-guide-soul slide pair ([#2793](https://github.com/HankHuang0516/EClaw/issues/2793)) ([1c8bddc](https://github.com/HankHuang0516/EClaw/commit/1c8bddc4c185054b2b60088498e3d45509117127)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **chat:** link card previews to kanban ([#2754](https://github.com/HankHuang0516/EClaw/issues/2754)) ([2261240](https://github.com/HankHuang0516/EClaw/commit/22612402c2e95efb07246629e81a849be41ee9c7))
* **mission:** link notes to kanban cards ([#2723](https://github.com/HankHuang0516/EClaw/issues/2723)) ([b36dc18](https://github.com/HankHuang0516/EClaw/commit/b36dc18f3a8facf12e0b6046351c222f1e99dc55))
* **mindmap:** mission.html link to /portal/mindmap.html + deprecate /api/mission/mindmap ([#2685](https://github.com/HankHuang0516/EClaw/issues/2685)) ([11e297b](https://github.com/HankHuang0516/EClaw/commit/11e297bab1c9b56fcde3027d6500b7c58891bf18)), closes [#2680](https://github.com/HankHuang0516/EClaw/issues/2680) [#2684](https://github.com/HankHuang0516/EClaw/issues/2684)
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **settings:** per-entity nudge override UI (Phase 2) ([#2837](https://github.com/HankHuang0516/EClaw/issues/2837)) ([ea7662b](https://github.com/HankHuang0516/EClaw/commit/ea7662b0858882dae461e1387f711895924f9ab8)), closes [3/#4](https://github.com/HankHuang0516/EClaw/issues/4)
* **kanban:** per-entity nudge overrides (Phase 2 of card_e066cb6b) ([#2836](https://github.com/HankHuang0516/EClaw/issues/2836)) ([0425f80](https://github.com/HankHuang0516/EClaw/commit/0425f80bc1169c0d506b665659c8676695c45553))
* **avatar:** petdx render on card-holder my-cards (Phase 1b) ([#2621](https://github.com/HankHuang0516/EClaw/issues/2621)) ([f78ba8b](https://github.com/HankHuang0516/EClaw/commit/f78ba8b18acc426936ab6d8a82ca7541effea00d))
* **avatar:** petdx render on dashboard entity grid / org chart / bindings (Phase 1b) ([#2622](https://github.com/HankHuang0516/EClaw/issues/2622)) ([f417749](https://github.com/HankHuang0516/EClaw/commit/f41774914451048e8cd76e9ae30416a0642e173b)), closes [#2620](https://github.com/HankHuang0516/EClaw/issues/2620) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621)
* **avatar:** petdx render on kanban auto-assign / pulse / comment avatars (Phase 1b) ([#2624](https://github.com/HankHuang0516/EClaw/issues/2624)) ([6bff5f8](https://github.com/HankHuang0516/EClaw/commit/6bff5f80440d0bd91a6b1721cde9478d685c4d46))
* **avatar:** petdx render on mission skill/rule/soul entity dialogs (Phase 1b) ([#2623](https://github.com/HankHuang0516/EClaw/issues/2623)) ([129327b](https://github.com/HankHuang0516/EClaw/commit/129327bc7b91056659f1ab7e8d5e3f5260d951fb))
* **mindmap:** portal/mindmap.html force-graph prototype ([#129](https://github.com/HankHuang0516/EClaw/issues/129)) ([#2681](https://github.com/HankHuang0516/EClaw/issues/2681)) ([0f15e69](https://github.com/HankHuang0516/EClaw/commit/0f15e6930f0697c37fa08f3219edb8f9e499837f)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **portal:** redo nagoya trip page in professional tour-guide style ([#2691](https://github.com/HankHuang0516/EClaw/issues/2691)) ([b2378c0](https://github.com/HankHuang0516/EClaw/commit/b2378c06ee20fa9cccfdceceb1a4c9e0b3072f59))
* **i18n:** remove ms+hi orphan keys from i18n.js ([#2849](https://github.com/HankHuang0516/EClaw/issues/2849)) ([320176c](https://github.com/HankHuang0516/EClaw/commit/320176c06a3cfd8631e2a82ad02a6bd6a9af0389))
* **avatar:** render selected petdx companion in chat avatars ([#2620](https://github.com/HankHuang0516/EClaw/issues/2620)) ([0bdd046](https://github.com/HankHuang0516/EClaw/commit/0bdd046fe1b1c428e32edda366ff112c08927f4c))
* **home:** replace native home with WebView hosting dashboard.html ([#2634](https://github.com/HankHuang0516/EClaw/issues/2634)) ([e69ea81](https://github.com/HankHuang0516/EClaw/commit/e69ea8160c239b083a83d6dc83a4f1c3f901c863))
* **app:** route chat mission jumps through native tabs ([#2824](https://github.com/HankHuang0516/EClaw/issues/2824)) ([deb07b6](https://github.com/HankHuang0516/EClaw/commit/deb07b69a9ecca632fe27278de537f1d85234e94))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **chat:** support message deep links ([#2719](https://github.com/HankHuang0516/EClaw/issues/2719)) ([2dc0f1e](https://github.com/HankHuang0516/EClaw/commit/2dc0f1eeb259e1a0848db4a03186b989372cd91c))
* **mission:** support note deep links ([#2717](https://github.com/HankHuang0516/EClaw/issues/2717)) ([2efd3a5](https://github.com/HankHuang0516/EClaw/commit/2efd3a5e741217a07c0b0ac54a0ddd010e0ebe23))
* **share-chat:** twitter card + per-bot og:image/twitter:* in SSR ([#2609](https://github.com/HankHuang0516/EClaw/issues/2609)) ([6cdc853](https://github.com/HankHuang0516/EClaw/commit/6cdc853dc884cdb95bd47214942768981f218ae0))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))
* **settings:** wire petdx avatar into channel-account chips ([#2626](https://github.com/HankHuang0516/EClaw/issues/2626)) ([88aec77](https://github.com/HankHuang0516/EClaw/commit/88aec772628c240e97b336bb5820892ad632d1ae))
* **files:** wire petdx avatar into entity filter & per-file badges ([#2627](https://github.com/HankHuang0516/EClaw/issues/2627)) ([5b3e5cc](https://github.com/HankHuang0516/EClaw/commit/5b3e5cc542d9da69bb4e92500fd03a542ea33f00))
* **mindmap:** wrap hardcoded zh-TW UI strings with i18n t() ([#2607](https://github.com/HankHuang0516/EClaw/issues/2607)) ([166af87](https://github.com/HankHuang0516/EClaw/commit/166af8772b2121a24aaf34a83b3de970e9b3b571)), closes [#2606](https://github.com/HankHuang0516/EClaw/issues/2606)
* **i18n:** zh-TW backfill 8 keys (soft-pause + chat + invite + wallet) ([#2815](https://github.com/HankHuang0516/EClaw/issues/2815)) ([a2dd574](https://github.com/HankHuang0516/EClaw/commit/a2dd5743ce8d43a4b6ace9a2fd4b52568180d6c5))


### Performance Improvements

* **mindmap:** force-graph hardening for 1000/2000-node graphs ([#2684](https://github.com/HankHuang0516/EClaw/issues/2684)) ([da8b1c8](https://github.com/HankHuang0516/EClaw/commit/da8b1c8f947ab8bc8fa455c1962a91146623a1fc))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-21)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **notifications:** add kanban_done + kanban_done_auto toggles to Android Settings ([#2636](https://github.com/HankHuang0516/EClaw/issues/2636)) ([a710909](https://github.com/HankHuang0516/EClaw/commit/a7109095e3393b8564e7ef1b23d382a4fbb944b8))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **i18n:** ar block — fix 27 broken entries (CJK leaks + truncated HTML) ([#2851](https://github.com/HankHuang0516/EClaw/issues/2851)) ([5b19175](https://github.com/HankHuang0516/EClaw/commit/5b19175d712d00d16fcec00b749035c4beae7a5c))
* **chat:** atomic-load target bar (await contacts before first render) ([#2831](https://github.com/HankHuang0516/EClaw/issues/2831)) ([5f529e6](https://github.com/HankHuang0516/EClaw/commit/5f529e6b772eacc38ba1de69b44258a05f0d816a)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2](https://github.com/HankHuang0516/EClaw/issues/2)
* **channel:** await binding persistence ([712516d](https://github.com/HankHuang0516/EClaw/commit/712516decafb745035bd1434a28cc1973d433e19))
* **rental:** bump handshake timeout to 60s + timeout-aware discovery fallback ([#2863](https://github.com/HankHuang0516/EClaw/issues/2863)) ([fd4322f](https://github.com/HankHuang0516/EClaw/commit/fd4322f8890f3c2dfca3acdae6a4b95f19c381f9)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **i18n:** clear batch 1 residual missing keys ([#2790](https://github.com/HankHuang0516/EClaw/issues/2790)) ([211030e](https://github.com/HankHuang0516/EClaw/commit/211030e0b0b6a865c11f0c4ed60dc4e356d43b7a))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **kanban:** comment input no longer overlaps last comment in card detail (PR [#2678](https://github.com/HankHuang0516/EClaw/issues/2678)) ([fba91fc](https://github.com/HankHuang0516/EClaw/commit/fba91fca15402b453a0db5ee857c0b16e6087055))
* **chat:** compact 20px avatar in target bar (App WebView only shows [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2](https://github.com/HankHuang0516/EClaw/issues/2)) ([#2830](https://github.com/HankHuang0516/EClaw/issues/2830)) ([42c7543](https://github.com/HankHuang0516/EClaw/commit/42c7543b4a78a7abf3f5f7535eb9bc6142cd0fe2)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **portal:** complete 401 redirect sweep + mobile UIUX truncation ([#2842](https://github.com/HankHuang0516/EClaw/issues/2842)) ([f9799ba](https://github.com/HankHuang0516/EClaw/commit/f9799ba42498b109f0a8a70e80836aa6da51e216)), closes [#2833](https://github.com/HankHuang0516/EClaw/issues/2833) [#2845](https://github.com/HankHuang0516/EClaw/issues/2845) [#2844](https://github.com/HankHuang0516/EClaw/issues/2844) [#2843](https://github.com/HankHuang0516/EClaw/issues/2843)
* **uiux:** continue qa mobile readability sweep ([#2854](https://github.com/HankHuang0516/EClaw/issues/2854)) ([57606ff](https://github.com/HankHuang0516/EClaw/commit/57606ffe3e543b07a026aacc53c4b470c9a7825b))
* **i18n:** cover dynamic portal wrapper keys ([#2807](https://github.com/HankHuang0516/EClaw/issues/2807)) ([4c711cc](https://github.com/HankHuang0516/EClaw/commit/4c711cc4009300ffe4e8933a98ee01cd0fdd6aeb))
* **i18n:** dedup 20 dash_channel_card_* keys in es block ([#2876](https://github.com/HankHuang0516/EClaw/issues/2876)) ([807284c](https://github.com/HankHuang0516/EClaw/commit/807284ce363ef119ccdb0ae40e5ce99d3f0a27e0))
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **rental:** don't pollute entity.message on push gateway timeout ([#2860](https://github.com/HankHuang0516/EClaw/issues/2860)) ([592ba44](https://github.com/HankHuang0516/EClaw/commit/592ba44f57536ee00011b6cbddaa6b129a7cbae9))
* **petdx:** drop dark-grey loading placeholder + preload sprite WEBP ([#2628](https://github.com/HankHuang0516/EClaw/issues/2628)) ([59cef38](https://github.com/HankHuang0516/EClaw/commit/59cef387bd69ca99d7d15c86a1364856d3849ad8)), closes [#1a1a1a](https://github.com/HankHuang0516/EClaw/issues/1a1a1a)
* **gateway-ws:** drop Origin header on server-to-server WS upgrade ([#2869](https://github.com/HankHuang0516/EClaw/issues/2869)) ([716dcf9](https://github.com/HankHuang0516/EClaw/commit/716dcf9d0834b17522bb9d894bad84bc142d1a19))
* **setup-scripts:** drop Origin header on server-to-server WS upgrade ([#2875](https://github.com/HankHuang0516/EClaw/issues/2875)) ([9d893b8](https://github.com/HankHuang0516/EClaw/commit/9d893b8e5eea4db275e450bf423903c156cd3e4b)), closes [#2869](https://github.com/HankHuang0516/EClaw/issues/2869)
* **security:** escape innerHTML in chat modal error messages ([#2819](https://github.com/HankHuang0516/EClaw/issues/2819)) ([dce07ad](https://github.com/HankHuang0516/EClaw/commit/dce07adde64795916dba977ae23e46f3371ce7ed)), closes [#2809](https://github.com/HankHuang0516/EClaw/issues/2809) [#2810](https://github.com/HankHuang0516/EClaw/issues/2810) [#2809](https://github.com/HankHuang0516/EClaw/issues/2809) [#2810](https://github.com/HankHuang0516/EClaw/issues/2810)
* **entities:** expose botSecret to owner so wallpaper service can poll companions ([#2615](https://github.com/HankHuang0516/EClaw/issues/2615)) ([04470fc](https://github.com/HankHuang0516/EClaw/commit/04470fce8f8c3fce2b1ba8b243e776606f107502))
* **rental:** expose owner_public_code in marketplace so plaza CTA can route ([#2616](https://github.com/HankHuang0516/EClaw/issues/2616)) ([4d1372f](https://github.com/HankHuang0516/EClaw/commit/4d1372f717d93cab65543e87c852e74e9fb67071)), closes [#2610](https://github.com/HankHuang0516/EClaw/issues/2610)
* **mindmap:** fallback to device scope when entityId is null ([#2728](https://github.com/HankHuang0516/EClaw/issues/2728)) ([7572312](https://github.com/HankHuang0516/EClaw/commit/7572312433d3d75fc245eda48a28919ce14bd927))
* **i18n:** fill Spanish drift keys ([#2751](https://github.com/HankHuang0516/EClaw/issues/2751)) ([0ad0ee5](https://github.com/HankHuang0516/EClaw/commit/0ad0ee55f7fac3e6ac46d891539950dab4d553cc))
* **portal:** fit embedded org chart to mobile viewport ([#2674](https://github.com/HankHuang0516/EClaw/issues/2674)) ([1c4e1b4](https://github.com/HankHuang0516/EClaw/commit/1c4e1b413ea7027b4cd4b8ecda981b0d0e12e66b))
* **i18n:** fix 6 trailing-comma syntax errors in 10-locale batch ([#2771](https://github.com/HankHuang0516/EClaw/issues/2771)) ([b27c6ca](https://github.com/HankHuang0516/EClaw/commit/b27c6ca204bf813e406c54ce3a2532a5f1f031b3))
* **kanban:** GET card returns latest 50 comments + comments endpoint exposes total ([#2816](https://github.com/HankHuang0516/EClaw/issues/2816)) ([c4d83f7](https://github.com/HankHuang0516/EClaw/commit/c4d83f777a1cd26aea0936e4316aa35c52822eef))
* **sharechat:** guest verify-email modal + disabled Send for unverified ([#2865](https://github.com/HankHuang0516/EClaw/issues/2865)) ([cb3b061](https://github.com/HankHuang0516/EClaw/commit/cb3b0614e0f6160417d907753e66eceb2d666802))
* **uiux:** harden chat previews and roster preview ([#2769](https://github.com/HankHuang0516/EClaw/issues/2769)) ([466d4d3](https://github.com/HankHuang0516/EClaw/commit/466d4d3ef81c628d3f58db64323946053d7bf61c))
* **mention-parser:** ignore @-mentions inside markdown code spans ([#2645](https://github.com/HankHuang0516/EClaw/issues/2645)) ([8da19d4](https://github.com/HankHuang0516/EClaw/commit/8da19d4a79ceb4152bf2144ee0847c61ce3e1def)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **kanban:** lazy-load dependency chips via IntersectionObserver ([#2632](https://github.com/HankHuang0516/EClaw/issues/2632)) ([20586b4](https://github.com/HankHuang0516/EClaw/commit/20586b43357335f9eb6a190c02d58c8e36b58aba)), closes [#2631](https://github.com/HankHuang0516/EClaw/issues/2631)
* **kanban:** make card sorting deterministic ([#2756](https://github.com/HankHuang0516/EClaw/issues/2756)) ([48e2117](https://github.com/HankHuang0516/EClaw/commit/48e2117b64e37f05dc635e0a3b67bfd43cbe48f5))
* **org-chart:** notify affected bots on hierarchy change ([#2812](https://github.com/HankHuang0516/EClaw/issues/2812)) ([55675fd](https://github.com/HankHuang0516/EClaw/commit/55675fdf4487494d729a29524b32bd81b756a00c)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** notify reviewer on manual /move → review ([#2753](https://github.com/HankHuang0516/EClaw/issues/2753)) ([6cbbb4e](https://github.com/HankHuang0516/EClaw/commit/6cbbb4ee8c0d4d8ad54df2e9b5faaa3699bd530f))
* **wallpaper:** off-load spritesheet fetch to IO so per-petdx sprites actually render ([#2618](https://github.com/HankHuang0516/EClaw/issues/2618)) ([61b832c](https://github.com/HankHuang0516/EClaw/commit/61b832c9fa8a1d0caab810ccc942d85c63349267)), closes [#2615](https://github.com/HankHuang0516/EClaw/issues/2615) [#2577](https://github.com/HankHuang0516/EClaw/issues/2577)
* **security:** patch P0 sanitize-html XSS + P1 protobufjs + exam.html XSS ([#2829](https://github.com/HankHuang0516/EClaw/issues/2829)) ([c71b871](https://github.com/HankHuang0516/EClaw/commit/c71b871a045887375dd0d26d1a3280a0891a89ad))
* **security:** patch ws uninitialized memory disclosure (GHSA-58qx-3vcg-4xpx) ([#2872](https://github.com/HankHuang0516/EClaw/issues/2872)) ([2523d15](https://github.com/HankHuang0516/EClaw/commit/2523d154bbe501a7cc086340f7a07ece3abfa69b))
* **portal:** petdx-browser cookie-session fallback for device-login ([#2757](https://github.com/HankHuang0516/EClaw/issues/2757)) ([ca275f4](https://github.com/HankHuang0516/EClaw/commit/ca275f4519835da0c7ad71c588908a18f6f138d8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **api:** platform-stats 500 + entity/lookup publicCode alias ([#2809](https://github.com/HankHuang0516/EClaw/issues/2809), [#2810](https://github.com/HankHuang0516/EClaw/issues/2810)) ([#2818](https://github.com/HankHuang0516/EClaw/issues/2818)) ([f99fd17](https://github.com/HankHuang0516/EClaw/commit/f99fd17b2b1c32d88daa2510ff66d714c1a53edc))
* **i18n:** positional format specifiers for feedback_result_logs (7 locales) ([#2597](https://github.com/HankHuang0516/EClaw/issues/2597)) ([21aedc7](https://github.com/HankHuang0516/EClaw/commit/21aedc7eebc7a2839e340136f38dfdfd4dabb9dc))
* **avatar-petdx:** preserve descriptor across transient API failures (flicker) ([#2625](https://github.com/HankHuang0516/EClaw/issues/2625)) ([7b1c606](https://github.com/HankHuang0516/EClaw/commit/7b1c606514f7698d72ec95cf6c556e4043966186))
* **chat:** preserve scroll anchor while reading history ([#2693](https://github.com/HankHuang0516/EClaw/issues/2693)) ([945fdb7](https://github.com/HankHuang0516/EClaw/commit/945fdb7192b791b31882e1e75568dd8b11e4686f))
* **promo:** pull video embed from /promo-chat-avatar.html ([#2724](https://github.com/HankHuang0516/EClaw/issues/2724)) ([2afabc8](https://github.com/HankHuang0516/EClaw/commit/2afabc8c5ff8b25218a7cb857e8adfa572c8e9d5))
* **kanban:** realign stale recurring schedules ([#2785](https://github.com/HankHuang0516/EClaw/issues/2785)) ([ab8ee25](https://github.com/HankHuang0516/EClaw/commit/ab8ee250a9b37f3d3e838bb01d8866c8d2b78231))
* **portal:** reduce QA-discovered request fanout ([#2656](https://github.com/HankHuang0516/EClaw/issues/2656)) ([1e46d6b](https://github.com/HankHuang0516/EClaw/commit/1e46d6bab61e58c65b452b6503d953f8dddeee75))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **portal:** remove org chart fit scale floor ([#2676](https://github.com/HankHuang0516/EClaw/issues/2676)) ([0f01606](https://github.com/HankHuang0516/EClaw/commit/0f016068b963bb5f800a02f28817c7174979d913))
* **rental:** remove phantom 'webhook test push' step from BIND_COMPLETE ([#2864](https://github.com/HankHuang0516/EClaw/issues/2864)) ([47f4a3e](https://github.com/HankHuang0516/EClaw/commit/47f4a3edf76aa95ebd06d8713cd44fda6eef9b5d))
* **i18n:** rename mm_empty_title → mm_state_empty_title in mindmap.html ([#2683](https://github.com/HankHuang0516/EClaw/issues/2683)) ([c79c109](https://github.com/HankHuang0516/EClaw/commit/c79c109bea23142e8a6d9ace976d105af1280ec9))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **chat:** render mention avatars with companion renderer ([#2633](https://github.com/HankHuang0516/EClaw/issues/2633)) ([03e205f](https://github.com/HankHuang0516/EClaw/commit/03e205f663ecd2c2f443d4009dd5af0093f0bbbb))
* **kanban:** reserve mobile comments panel height ([#2782](https://github.com/HankHuang0516/EClaw/issues/2782)) ([ce8662d](https://github.com/HankHuang0516/EClaw/commit/ce8662d362422fdd25037f1deb61dbed9425e2f9))
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* scheduled audit 2026-05-13 — 6 bugs, XSS, i18n ([#2668](https://github.com/HankHuang0516/EClaw/issues/2668)) ([21dd513](https://github.com/HankHuang0516/EClaw/commit/21dd513b4464738de29164265437435ba6cc4817)), closes [#2605](https://github.com/HankHuang0516/EClaw/issues/2605) [#2608](https://github.com/HankHuang0516/EClaw/issues/2608) [#2600](https://github.com/HankHuang0516/EClaw/issues/2600) [#2599](https://github.com/HankHuang0516/EClaw/issues/2599) [#2598](https://github.com/HankHuang0516/EClaw/issues/2598)
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **chat:** smart-chip preview falls back to inline c.comments when /comments fails (PR [#2677](https://github.com/HankHuang0516/EClaw/issues/2677)) ([7f4dffd](https://github.com/HankHuang0516/EClaw/commit/7f4dffd2c83ea86f296b8fa0610f0e67c9f1af11))
* **kanban:** stabilize comment detail viewport ([#2796](https://github.com/HankHuang0516/EClaw/issues/2796)) ([0a10aad](https://github.com/HankHuang0516/EClaw/commit/0a10aadb5a5b12ff23454c16d5c88183b94ad7d7))
* **wallpaper:** stop Android live wallpaper flashing default lobster on companion change ([#2629](https://github.com/HankHuang0516/EClaw/issues/2629)) ([8b4f66f](https://github.com/HankHuang0516/EClaw/commit/8b4f66fcb335bf43128f924b761b6337c817095b)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **chat:** stop chat.html bouncing to dashboard via /api/rental/health-status 401 race ([#2833](https://github.com/HankHuang0516/EClaw/issues/2833)) ([c422406](https://github.com/HankHuang0516/EClaw/commit/c4224067cdcfe7f3e22ab95007c7563dac4196ac))
* **mentions:** support same-device CJK display-name tags ([#2874](https://github.com/HankHuang0516/EClaw/issues/2874)) ([b8f61be](https://github.com/HankHuang0516/EClaw/commit/b8f61be9a3962fef75dd32ea34e8900880dafaf9))
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **app:** WebView pages honor app-selected locale via ?lang= URL param ([#2672](https://github.com/HankHuang0516/EClaw/issues/2672)) ([8ed8757](https://github.com/HankHuang0516/EClaw/commit/8ed8757aec5bf214e837cc0d81bf2b23f1993a91)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **share-chat:** wire rich CTA actions to msgInput ([#2867](https://github.com/HankHuang0516/EClaw/issues/2867)) ([df23b11](https://github.com/HankHuang0516/EClaw/commit/df23b1147d34c59a644a145bbd87c18b96400acc))


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* **community:** 1-click chat button on bot cards + utm tagging ([#2610](https://github.com/HankHuang0516/EClaw/issues/2610)) ([eee97b0](https://github.com/HankHuang0516/EClaw/commit/eee97b0e2e4e74945ec24f218a69a52800b97a66))
* **chat:** accept ?messageId= as deep-link alias ([#2838](https://github.com/HankHuang0516/EClaw/issues/2838)) ([1785a87](https://github.com/HankHuang0516/EClaw/commit/1785a87310426637fd10df83754fb9924c45207f))
* **chat:** add avatar size preference ([#2714](https://github.com/HankHuang0516/EClaw/issues/2714)) ([6fe164a](https://github.com/HankHuang0516/EClaw/commit/6fe164ad8b22fa576d2dd9ad37c0d9fc295b5a83))
* **dashboard:** add Claude and Codex channel guides ([#2640](https://github.com/HankHuang0516/EClaw/issues/2640)) ([c64e4c4](https://github.com/HankHuang0516/EClaw/commit/c64e4c4afc78db58c5cd578f00486dd7b2fd3311))
* **dashboard:** add Claude Code channel guide card ([#2667](https://github.com/HankHuang0516/EClaw/issues/2667)) ([d70d75c](https://github.com/HankHuang0516/EClaw/commit/d70d75c0c8caa8a540358a9aab4556b8c1927a5c))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* **kanban:** add device-scoped card tags ([#2773](https://github.com/HankHuang0516/EClaw/issues/2773)) ([53a387e](https://github.com/HankHuang0516/EClaw/commit/53a387e67ba7bb4f6bed1c427000c4ae8666577a))
* **portal:** add entity selector to petdx-browser ([#2602](https://github.com/HankHuang0516/EClaw/issues/2602)) ([3fa067e](https://github.com/HankHuang0516/EClaw/commit/3fa067e00b38829b48a37cecd33ee81a9a1122d9))
* **kanban:** add explicit card links ([#2721](https://github.com/HankHuang0516/EClaw/issues/2721)) ([ef9f812](https://github.com/HankHuang0516/EClaw/commit/ef9f812a3fcf39efd07fd158ce90951bdd045ac7))
* **kanban:** add explicit done-card reopen flow ([#2801](https://github.com/HankHuang0516/EClaw/issues/2801)) ([5080aac](https://github.com/HankHuang0516/EClaw/commit/5080aacb75047c0deaa379ee708ec85465afd57c))
* **mindmap:** add GET /api/mindmap/graph force-graph projection ([#2680](https://github.com/HankHuang0516/EClaw/issues/2680)) ([a00b2e7](https://github.com/HankHuang0516/EClaw/commit/a00b2e775af2c4c98cd157f760ad87aeeee469f0)), closes [#2679](https://github.com/HankHuang0516/EClaw/issues/2679) [#2679](https://github.com/HankHuang0516/EClaw/issues/2679)
* **dashboard:** add Hermes channel promo card ([#2708](https://github.com/HankHuang0516/EClaw/issues/2708)) ([337aca1](https://github.com/HankHuang0516/EClaw/commit/337aca153d5a1cd7e888c065f00ae54db7872d91))
* **rental:** add listing soft pause ([#2781](https://github.com/HankHuang0516/EClaw/issues/2781)) ([6586b72](https://github.com/HankHuang0516/EClaw/commit/6586b72717ddb1637d91cd3242c8d2ff554f62b4))
* **portal:** add Nagoya 5D4N trip static cross-ref page ([#2689](https://github.com/HankHuang0516/EClaw/issues/2689)) ([2e0efb6](https://github.com/HankHuang0516/EClaw/commit/2e0efb6dcdaff52226cc8854a96747000b12bdff))
* **portal:** add Nagoya trip map links and image lightbox ([#2821](https://github.com/HankHuang0516/EClaw/issues/2821)) ([3e40955](https://github.com/HankHuang0516/EClaw/commit/3e40955650a05f45a6b9f7e39e73847705424a03))
* **portal/nagoya:** add parking shortcut buttons next to itinerary places ([#2826](https://github.com/HankHuang0516/EClaw/issues/2826)) ([63968c5](https://github.com/HankHuang0516/EClaw/commit/63968c554d046afc8d978de74e3aacbf7700500d))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **settings:** add rental roster management preview ([#2758](https://github.com/HankHuang0516/EClaw/issues/2758)) ([9706e59](https://github.com/HankHuang0516/EClaw/commit/9706e59ded140a90a6e02348124282bc69d89001))
* **rental:** add renter health chat indicator ([#2690](https://github.com/HankHuang0516/EClaw/issues/2690)) ([36cd2e9](https://github.com/HankHuang0516/EClaw/commit/36cd2e9802be4c7ebb03d3024617fa74aca48ffd))
* **ios:** add Tutorial & Intro entry in Settings ([#2800](https://github.com/HankHuang0516/EClaw/issues/2800)) ([ed83e51](https://github.com/HankHuang0516/EClaw/commit/ed83e51d043bf4cd5865f38dc95a91ed54820d6c))
* **landing:** add Watch Full Demo CTA below hero video ([#2799](https://github.com/HankHuang0516/EClaw/issues/2799)) ([66107c9](https://github.com/HankHuang0516/EClaw/commit/66107c954727551fd34d989a4674daaad9b63968))
* **footer:** add Watch Intro Video link in Info column ([#2798](https://github.com/HankHuang0516/EClaw/issues/2798)) ([d7c6d59](https://github.com/HankHuang0516/EClaw/commit/d7c6d596b69c6a5b257bf1f7a792a407ef9712ad))
* **i18n:** ar iter-2 — fill 623 missing keys against en source ([#2847](https://github.com/HankHuang0516/EClaw/issues/2847)) ([ee94a7a](https://github.com/HankHuang0516/EClaw/commit/ee94a7ae6812b5163efe4284ee4907ca32302f5c))
* **kanban:** backlog launch-gate flag to suppress L1/L2/L3 escalation ([#2855](https://github.com/HankHuang0516/EClaw/issues/2855)) ([cb8bf1b](https://github.com/HankHuang0516/EClaw/commit/cb8bf1bb6421f25214f65e129a8cadccc49cc266)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#4](https://github.com/HankHuang0516/EClaw/issues/4) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **companion:** bridge crafter-station/petdex gallery (1784 pets) ([#2601](https://github.com/HankHuang0516/EClaw/issues/2601)) ([2e245be](https://github.com/HankHuang0516/EClaw/commit/2e245bea6dd47ea7361b927d389188a3c23b6bb3))
* **promo:** chat avatar size feature landing page (self-hosted MP4) ([#2722](https://github.com/HankHuang0516/EClaw/issues/2722)) ([3852210](https://github.com/HankHuang0516/EClaw/commit/3852210d355704d018e3daca6b5f9512a011b210)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **kanban:** cron-spawn jitter + lane backpressure to prevent same-tick wedge ([#2791](https://github.com/HankHuang0516/EClaw/issues/2791)) ([9f414a7](https://github.com/HankHuang0516/EClaw/commit/9f414a731d6393672a0a4189c7b408c529ae5e12)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **promo:** embed daily eclaw video 2026-05-14 ([#2786](https://github.com/HankHuang0516/EClaw/issues/2786)) ([718a814](https://github.com/HankHuang0516/EClaw/commit/718a814ab16850bc2b33a1b303841e2c4378ecfa)), closes [#2782](https://github.com/HankHuang0516/EClaw/issues/2782) [#2693](https://github.com/HankHuang0516/EClaw/issues/2693)
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **info:** embed promo video at top of Quick Start tab ([#2797](https://github.com/HankHuang0516/EClaw/issues/2797)) ([047679f](https://github.com/HankHuang0516/EClaw/commit/047679fd57ab9949eaeacea414d5611e71afe041))
* **rental:** enforce strict rebind refunds ([#2703](https://github.com/HankHuang0516/EClaw/issues/2703)) ([a1859c5](https://github.com/HankHuang0516/EClaw/commit/a1859c50e6fb3991d7a8051491502d824a14a116))
* **portal:** group task chip actions ([#2825](https://github.com/HankHuang0516/EClaw/issues/2825)) ([5db5c59](https://github.com/HankHuang0516/EClaw/commit/5db5c59b32b8635f1412205faf0c2f9164d3d5d4))
* **portal:** info-guide-rules + info-guide-soul slide pair ([#2793](https://github.com/HankHuang0516/EClaw/issues/2793)) ([1c8bddc](https://github.com/HankHuang0516/EClaw/commit/1c8bddc4c185054b2b60088498e3d45509117127)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **chat:** link card previews to kanban ([#2754](https://github.com/HankHuang0516/EClaw/issues/2754)) ([2261240](https://github.com/HankHuang0516/EClaw/commit/22612402c2e95efb07246629e81a849be41ee9c7))
* **mission:** link notes to kanban cards ([#2723](https://github.com/HankHuang0516/EClaw/issues/2723)) ([b36dc18](https://github.com/HankHuang0516/EClaw/commit/b36dc18f3a8facf12e0b6046351c222f1e99dc55))
* **mindmap:** mission.html link to /portal/mindmap.html + deprecate /api/mission/mindmap ([#2685](https://github.com/HankHuang0516/EClaw/issues/2685)) ([11e297b](https://github.com/HankHuang0516/EClaw/commit/11e297bab1c9b56fcde3027d6500b7c58891bf18)), closes [#2680](https://github.com/HankHuang0516/EClaw/issues/2680) [#2684](https://github.com/HankHuang0516/EClaw/issues/2684)
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **settings:** per-entity nudge override UI (Phase 2) ([#2837](https://github.com/HankHuang0516/EClaw/issues/2837)) ([ea7662b](https://github.com/HankHuang0516/EClaw/commit/ea7662b0858882dae461e1387f711895924f9ab8)), closes [3/#4](https://github.com/HankHuang0516/EClaw/issues/4)
* **kanban:** per-entity nudge overrides (Phase 2 of card_e066cb6b) ([#2836](https://github.com/HankHuang0516/EClaw/issues/2836)) ([0425f80](https://github.com/HankHuang0516/EClaw/commit/0425f80bc1169c0d506b665659c8676695c45553))
* **avatar:** petdx render on card-holder my-cards (Phase 1b) ([#2621](https://github.com/HankHuang0516/EClaw/issues/2621)) ([f78ba8b](https://github.com/HankHuang0516/EClaw/commit/f78ba8b18acc426936ab6d8a82ca7541effea00d))
* **avatar:** petdx render on dashboard entity grid / org chart / bindings (Phase 1b) ([#2622](https://github.com/HankHuang0516/EClaw/issues/2622)) ([f417749](https://github.com/HankHuang0516/EClaw/commit/f41774914451048e8cd76e9ae30416a0642e173b)), closes [#2620](https://github.com/HankHuang0516/EClaw/issues/2620) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621)
* **avatar:** petdx render on kanban auto-assign / pulse / comment avatars (Phase 1b) ([#2624](https://github.com/HankHuang0516/EClaw/issues/2624)) ([6bff5f8](https://github.com/HankHuang0516/EClaw/commit/6bff5f80440d0bd91a6b1721cde9478d685c4d46))
* **avatar:** petdx render on mission skill/rule/soul entity dialogs (Phase 1b) ([#2623](https://github.com/HankHuang0516/EClaw/issues/2623)) ([129327b](https://github.com/HankHuang0516/EClaw/commit/129327bc7b91056659f1ab7e8d5e3f5260d951fb))
* **mindmap:** portal/mindmap.html force-graph prototype ([#129](https://github.com/HankHuang0516/EClaw/issues/129)) ([#2681](https://github.com/HankHuang0516/EClaw/issues/2681)) ([0f15e69](https://github.com/HankHuang0516/EClaw/commit/0f15e6930f0697c37fa08f3219edb8f9e499837f)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **portal:** redo nagoya trip page in professional tour-guide style ([#2691](https://github.com/HankHuang0516/EClaw/issues/2691)) ([b2378c0](https://github.com/HankHuang0516/EClaw/commit/b2378c06ee20fa9cccfdceceb1a4c9e0b3072f59))
* **i18n:** remove ms+hi orphan keys from i18n.js ([#2849](https://github.com/HankHuang0516/EClaw/issues/2849)) ([320176c](https://github.com/HankHuang0516/EClaw/commit/320176c06a3cfd8631e2a82ad02a6bd6a9af0389))
* **avatar:** render selected petdx companion in chat avatars ([#2620](https://github.com/HankHuang0516/EClaw/issues/2620)) ([0bdd046](https://github.com/HankHuang0516/EClaw/commit/0bdd046fe1b1c428e32edda366ff112c08927f4c))
* **home:** replace native home with WebView hosting dashboard.html ([#2634](https://github.com/HankHuang0516/EClaw/issues/2634)) ([e69ea81](https://github.com/HankHuang0516/EClaw/commit/e69ea8160c239b083a83d6dc83a4f1c3f901c863))
* **app:** route chat mission jumps through native tabs ([#2824](https://github.com/HankHuang0516/EClaw/issues/2824)) ([deb07b6](https://github.com/HankHuang0516/EClaw/commit/deb07b69a9ecca632fe27278de537f1d85234e94))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **chat:** support message deep links ([#2719](https://github.com/HankHuang0516/EClaw/issues/2719)) ([2dc0f1e](https://github.com/HankHuang0516/EClaw/commit/2dc0f1eeb259e1a0848db4a03186b989372cd91c))
* **mission:** support note deep links ([#2717](https://github.com/HankHuang0516/EClaw/issues/2717)) ([2efd3a5](https://github.com/HankHuang0516/EClaw/commit/2efd3a5e741217a07c0b0ac54a0ddd010e0ebe23))
* **share-chat:** twitter card + per-bot og:image/twitter:* in SSR ([#2609](https://github.com/HankHuang0516/EClaw/issues/2609)) ([6cdc853](https://github.com/HankHuang0516/EClaw/commit/6cdc853dc884cdb95bd47214942768981f218ae0))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))
* **settings:** wire petdx avatar into channel-account chips ([#2626](https://github.com/HankHuang0516/EClaw/issues/2626)) ([88aec77](https://github.com/HankHuang0516/EClaw/commit/88aec772628c240e97b336bb5820892ad632d1ae))
* **files:** wire petdx avatar into entity filter & per-file badges ([#2627](https://github.com/HankHuang0516/EClaw/issues/2627)) ([5b3e5cc](https://github.com/HankHuang0516/EClaw/commit/5b3e5cc542d9da69bb4e92500fd03a542ea33f00))
* **mindmap:** wrap hardcoded zh-TW UI strings with i18n t() ([#2607](https://github.com/HankHuang0516/EClaw/issues/2607)) ([166af87](https://github.com/HankHuang0516/EClaw/commit/166af8772b2121a24aaf34a83b3de970e9b3b571)), closes [#2606](https://github.com/HankHuang0516/EClaw/issues/2606)
* **i18n:** zh-TW backfill 8 keys (soft-pause + chat + invite + wallet) ([#2815](https://github.com/HankHuang0516/EClaw/issues/2815)) ([a2dd574](https://github.com/HankHuang0516/EClaw/commit/a2dd5743ce8d43a4b6ace9a2fd4b52568180d6c5))


### Performance Improvements

* **mindmap:** force-graph hardening for 1000/2000-node graphs ([#2684](https://github.com/HankHuang0516/EClaw/issues/2684)) ([da8b1c8](https://github.com/HankHuang0516/EClaw/commit/da8b1c8f947ab8bc8fa455c1962a91146623a1fc))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-21)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **notifications:** add kanban_done + kanban_done_auto toggles to Android Settings ([#2636](https://github.com/HankHuang0516/EClaw/issues/2636)) ([a710909](https://github.com/HankHuang0516/EClaw/commit/a7109095e3393b8564e7ef1b23d382a4fbb944b8))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **i18n:** ar block — fix 27 broken entries (CJK leaks + truncated HTML) ([#2851](https://github.com/HankHuang0516/EClaw/issues/2851)) ([5b19175](https://github.com/HankHuang0516/EClaw/commit/5b19175d712d00d16fcec00b749035c4beae7a5c))
* **chat:** atomic-load target bar (await contacts before first render) ([#2831](https://github.com/HankHuang0516/EClaw/issues/2831)) ([5f529e6](https://github.com/HankHuang0516/EClaw/commit/5f529e6b772eacc38ba1de69b44258a05f0d816a)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2](https://github.com/HankHuang0516/EClaw/issues/2)
* **channel:** await binding persistence ([712516d](https://github.com/HankHuang0516/EClaw/commit/712516decafb745035bd1434a28cc1973d433e19))
* **rental:** bump handshake timeout to 60s + timeout-aware discovery fallback ([#2863](https://github.com/HankHuang0516/EClaw/issues/2863)) ([fd4322f](https://github.com/HankHuang0516/EClaw/commit/fd4322f8890f3c2dfca3acdae6a4b95f19c381f9)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **i18n:** clear batch 1 residual missing keys ([#2790](https://github.com/HankHuang0516/EClaw/issues/2790)) ([211030e](https://github.com/HankHuang0516/EClaw/commit/211030e0b0b6a865c11f0c4ed60dc4e356d43b7a))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **kanban:** comment input no longer overlaps last comment in card detail (PR [#2678](https://github.com/HankHuang0516/EClaw/issues/2678)) ([fba91fc](https://github.com/HankHuang0516/EClaw/commit/fba91fca15402b453a0db5ee857c0b16e6087055))
* **chat:** compact 20px avatar in target bar (App WebView only shows [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2](https://github.com/HankHuang0516/EClaw/issues/2)) ([#2830](https://github.com/HankHuang0516/EClaw/issues/2830)) ([42c7543](https://github.com/HankHuang0516/EClaw/commit/42c7543b4a78a7abf3f5f7535eb9bc6142cd0fe2)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **portal:** complete 401 redirect sweep + mobile UIUX truncation ([#2842](https://github.com/HankHuang0516/EClaw/issues/2842)) ([f9799ba](https://github.com/HankHuang0516/EClaw/commit/f9799ba42498b109f0a8a70e80836aa6da51e216)), closes [#2833](https://github.com/HankHuang0516/EClaw/issues/2833) [#2845](https://github.com/HankHuang0516/EClaw/issues/2845) [#2844](https://github.com/HankHuang0516/EClaw/issues/2844) [#2843](https://github.com/HankHuang0516/EClaw/issues/2843)
* **uiux:** continue qa mobile readability sweep ([#2854](https://github.com/HankHuang0516/EClaw/issues/2854)) ([57606ff](https://github.com/HankHuang0516/EClaw/commit/57606ffe3e543b07a026aacc53c4b470c9a7825b))
* **i18n:** cover dynamic portal wrapper keys ([#2807](https://github.com/HankHuang0516/EClaw/issues/2807)) ([4c711cc](https://github.com/HankHuang0516/EClaw/commit/4c711cc4009300ffe4e8933a98ee01cd0fdd6aeb))
* **i18n:** dedup 20 dash_channel_card_* keys in es block ([#2876](https://github.com/HankHuang0516/EClaw/issues/2876)) ([807284c](https://github.com/HankHuang0516/EClaw/commit/807284ce363ef119ccdb0ae40e5ce99d3f0a27e0))
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **rental:** don't pollute entity.message on push gateway timeout ([#2860](https://github.com/HankHuang0516/EClaw/issues/2860)) ([592ba44](https://github.com/HankHuang0516/EClaw/commit/592ba44f57536ee00011b6cbddaa6b129a7cbae9))
* **petdx:** drop dark-grey loading placeholder + preload sprite WEBP ([#2628](https://github.com/HankHuang0516/EClaw/issues/2628)) ([59cef38](https://github.com/HankHuang0516/EClaw/commit/59cef387bd69ca99d7d15c86a1364856d3849ad8)), closes [#1a1a1a](https://github.com/HankHuang0516/EClaw/issues/1a1a1a)
* **gateway-ws:** drop Origin header on server-to-server WS upgrade ([#2869](https://github.com/HankHuang0516/EClaw/issues/2869)) ([716dcf9](https://github.com/HankHuang0516/EClaw/commit/716dcf9d0834b17522bb9d894bad84bc142d1a19))
* **setup-scripts:** drop Origin header on server-to-server WS upgrade ([#2875](https://github.com/HankHuang0516/EClaw/issues/2875)) ([9d893b8](https://github.com/HankHuang0516/EClaw/commit/9d893b8e5eea4db275e450bf423903c156cd3e4b)), closes [#2869](https://github.com/HankHuang0516/EClaw/issues/2869)
* **security:** escape innerHTML in chat modal error messages ([#2819](https://github.com/HankHuang0516/EClaw/issues/2819)) ([dce07ad](https://github.com/HankHuang0516/EClaw/commit/dce07adde64795916dba977ae23e46f3371ce7ed)), closes [#2809](https://github.com/HankHuang0516/EClaw/issues/2809) [#2810](https://github.com/HankHuang0516/EClaw/issues/2810) [#2809](https://github.com/HankHuang0516/EClaw/issues/2809) [#2810](https://github.com/HankHuang0516/EClaw/issues/2810)
* **entities:** expose botSecret to owner so wallpaper service can poll companions ([#2615](https://github.com/HankHuang0516/EClaw/issues/2615)) ([04470fc](https://github.com/HankHuang0516/EClaw/commit/04470fce8f8c3fce2b1ba8b243e776606f107502))
* **rental:** expose owner_public_code in marketplace so plaza CTA can route ([#2616](https://github.com/HankHuang0516/EClaw/issues/2616)) ([4d1372f](https://github.com/HankHuang0516/EClaw/commit/4d1372f717d93cab65543e87c852e74e9fb67071)), closes [#2610](https://github.com/HankHuang0516/EClaw/issues/2610)
* **mindmap:** fallback to device scope when entityId is null ([#2728](https://github.com/HankHuang0516/EClaw/issues/2728)) ([7572312](https://github.com/HankHuang0516/EClaw/commit/7572312433d3d75fc245eda48a28919ce14bd927))
* **i18n:** fill Spanish drift keys ([#2751](https://github.com/HankHuang0516/EClaw/issues/2751)) ([0ad0ee5](https://github.com/HankHuang0516/EClaw/commit/0ad0ee55f7fac3e6ac46d891539950dab4d553cc))
* **portal:** fit embedded org chart to mobile viewport ([#2674](https://github.com/HankHuang0516/EClaw/issues/2674)) ([1c4e1b4](https://github.com/HankHuang0516/EClaw/commit/1c4e1b413ea7027b4cd4b8ecda981b0d0e12e66b))
* **i18n:** fix 6 trailing-comma syntax errors in 10-locale batch ([#2771](https://github.com/HankHuang0516/EClaw/issues/2771)) ([b27c6ca](https://github.com/HankHuang0516/EClaw/commit/b27c6ca204bf813e406c54ce3a2532a5f1f031b3))
* **kanban:** GET card returns latest 50 comments + comments endpoint exposes total ([#2816](https://github.com/HankHuang0516/EClaw/issues/2816)) ([c4d83f7](https://github.com/HankHuang0516/EClaw/commit/c4d83f777a1cd26aea0936e4316aa35c52822eef))
* **sharechat:** guest verify-email modal + disabled Send for unverified ([#2865](https://github.com/HankHuang0516/EClaw/issues/2865)) ([cb3b061](https://github.com/HankHuang0516/EClaw/commit/cb3b0614e0f6160417d907753e66eceb2d666802))
* **uiux:** harden chat previews and roster preview ([#2769](https://github.com/HankHuang0516/EClaw/issues/2769)) ([466d4d3](https://github.com/HankHuang0516/EClaw/commit/466d4d3ef81c628d3f58db64323946053d7bf61c))
* **mention-parser:** ignore @-mentions inside markdown code spans ([#2645](https://github.com/HankHuang0516/EClaw/issues/2645)) ([8da19d4](https://github.com/HankHuang0516/EClaw/commit/8da19d4a79ceb4152bf2144ee0847c61ce3e1def)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **kanban:** lazy-load dependency chips via IntersectionObserver ([#2632](https://github.com/HankHuang0516/EClaw/issues/2632)) ([20586b4](https://github.com/HankHuang0516/EClaw/commit/20586b43357335f9eb6a190c02d58c8e36b58aba)), closes [#2631](https://github.com/HankHuang0516/EClaw/issues/2631)
* **kanban:** make card sorting deterministic ([#2756](https://github.com/HankHuang0516/EClaw/issues/2756)) ([48e2117](https://github.com/HankHuang0516/EClaw/commit/48e2117b64e37f05dc635e0a3b67bfd43cbe48f5))
* **org-chart:** notify affected bots on hierarchy change ([#2812](https://github.com/HankHuang0516/EClaw/issues/2812)) ([55675fd](https://github.com/HankHuang0516/EClaw/commit/55675fdf4487494d729a29524b32bd81b756a00c)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** notify reviewer on manual /move → review ([#2753](https://github.com/HankHuang0516/EClaw/issues/2753)) ([6cbbb4e](https://github.com/HankHuang0516/EClaw/commit/6cbbb4ee8c0d4d8ad54df2e9b5faaa3699bd530f))
* **wallpaper:** off-load spritesheet fetch to IO so per-petdx sprites actually render ([#2618](https://github.com/HankHuang0516/EClaw/issues/2618)) ([61b832c](https://github.com/HankHuang0516/EClaw/commit/61b832c9fa8a1d0caab810ccc942d85c63349267)), closes [#2615](https://github.com/HankHuang0516/EClaw/issues/2615) [#2577](https://github.com/HankHuang0516/EClaw/issues/2577)
* **security:** patch P0 sanitize-html XSS + P1 protobufjs + exam.html XSS ([#2829](https://github.com/HankHuang0516/EClaw/issues/2829)) ([c71b871](https://github.com/HankHuang0516/EClaw/commit/c71b871a045887375dd0d26d1a3280a0891a89ad))
* **security:** patch ws uninitialized memory disclosure (GHSA-58qx-3vcg-4xpx) ([#2872](https://github.com/HankHuang0516/EClaw/issues/2872)) ([2523d15](https://github.com/HankHuang0516/EClaw/commit/2523d154bbe501a7cc086340f7a07ece3abfa69b))
* **portal:** petdx-browser cookie-session fallback for device-login ([#2757](https://github.com/HankHuang0516/EClaw/issues/2757)) ([ca275f4](https://github.com/HankHuang0516/EClaw/commit/ca275f4519835da0c7ad71c588908a18f6f138d8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **api:** platform-stats 500 + entity/lookup publicCode alias ([#2809](https://github.com/HankHuang0516/EClaw/issues/2809), [#2810](https://github.com/HankHuang0516/EClaw/issues/2810)) ([#2818](https://github.com/HankHuang0516/EClaw/issues/2818)) ([f99fd17](https://github.com/HankHuang0516/EClaw/commit/f99fd17b2b1c32d88daa2510ff66d714c1a53edc))
* **i18n:** positional format specifiers for feedback_result_logs (7 locales) ([#2597](https://github.com/HankHuang0516/EClaw/issues/2597)) ([21aedc7](https://github.com/HankHuang0516/EClaw/commit/21aedc7eebc7a2839e340136f38dfdfd4dabb9dc))
* **avatar-petdx:** preserve descriptor across transient API failures (flicker) ([#2625](https://github.com/HankHuang0516/EClaw/issues/2625)) ([7b1c606](https://github.com/HankHuang0516/EClaw/commit/7b1c606514f7698d72ec95cf6c556e4043966186))
* **chat:** preserve scroll anchor while reading history ([#2693](https://github.com/HankHuang0516/EClaw/issues/2693)) ([945fdb7](https://github.com/HankHuang0516/EClaw/commit/945fdb7192b791b31882e1e75568dd8b11e4686f))
* **promo:** pull video embed from /promo-chat-avatar.html ([#2724](https://github.com/HankHuang0516/EClaw/issues/2724)) ([2afabc8](https://github.com/HankHuang0516/EClaw/commit/2afabc8c5ff8b25218a7cb857e8adfa572c8e9d5))
* **kanban:** realign stale recurring schedules ([#2785](https://github.com/HankHuang0516/EClaw/issues/2785)) ([ab8ee25](https://github.com/HankHuang0516/EClaw/commit/ab8ee250a9b37f3d3e838bb01d8866c8d2b78231))
* **portal:** reduce QA-discovered request fanout ([#2656](https://github.com/HankHuang0516/EClaw/issues/2656)) ([1e46d6b](https://github.com/HankHuang0516/EClaw/commit/1e46d6bab61e58c65b452b6503d953f8dddeee75))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **portal:** remove org chart fit scale floor ([#2676](https://github.com/HankHuang0516/EClaw/issues/2676)) ([0f01606](https://github.com/HankHuang0516/EClaw/commit/0f016068b963bb5f800a02f28817c7174979d913))
* **rental:** remove phantom 'webhook test push' step from BIND_COMPLETE ([#2864](https://github.com/HankHuang0516/EClaw/issues/2864)) ([47f4a3e](https://github.com/HankHuang0516/EClaw/commit/47f4a3edf76aa95ebd06d8713cd44fda6eef9b5d))
* **i18n:** rename mm_empty_title → mm_state_empty_title in mindmap.html ([#2683](https://github.com/HankHuang0516/EClaw/issues/2683)) ([c79c109](https://github.com/HankHuang0516/EClaw/commit/c79c109bea23142e8a6d9ace976d105af1280ec9))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **chat:** render mention avatars with companion renderer ([#2633](https://github.com/HankHuang0516/EClaw/issues/2633)) ([03e205f](https://github.com/HankHuang0516/EClaw/commit/03e205f663ecd2c2f443d4009dd5af0093f0bbbb))
* **kanban:** reserve mobile comments panel height ([#2782](https://github.com/HankHuang0516/EClaw/issues/2782)) ([ce8662d](https://github.com/HankHuang0516/EClaw/commit/ce8662d362422fdd25037f1deb61dbed9425e2f9))
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* scheduled audit 2026-05-13 — 6 bugs, XSS, i18n ([#2668](https://github.com/HankHuang0516/EClaw/issues/2668)) ([21dd513](https://github.com/HankHuang0516/EClaw/commit/21dd513b4464738de29164265437435ba6cc4817)), closes [#2605](https://github.com/HankHuang0516/EClaw/issues/2605) [#2608](https://github.com/HankHuang0516/EClaw/issues/2608) [#2600](https://github.com/HankHuang0516/EClaw/issues/2600) [#2599](https://github.com/HankHuang0516/EClaw/issues/2599) [#2598](https://github.com/HankHuang0516/EClaw/issues/2598)
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **chat:** smart-chip preview falls back to inline c.comments when /comments fails (PR [#2677](https://github.com/HankHuang0516/EClaw/issues/2677)) ([7f4dffd](https://github.com/HankHuang0516/EClaw/commit/7f4dffd2c83ea86f296b8fa0610f0e67c9f1af11))
* **kanban:** stabilize comment detail viewport ([#2796](https://github.com/HankHuang0516/EClaw/issues/2796)) ([0a10aad](https://github.com/HankHuang0516/EClaw/commit/0a10aadb5a5b12ff23454c16d5c88183b94ad7d7))
* **wallpaper:** stop Android live wallpaper flashing default lobster on companion change ([#2629](https://github.com/HankHuang0516/EClaw/issues/2629)) ([8b4f66f](https://github.com/HankHuang0516/EClaw/commit/8b4f66fcb335bf43128f924b761b6337c817095b)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **chat:** stop chat.html bouncing to dashboard via /api/rental/health-status 401 race ([#2833](https://github.com/HankHuang0516/EClaw/issues/2833)) ([c422406](https://github.com/HankHuang0516/EClaw/commit/c4224067cdcfe7f3e22ab95007c7563dac4196ac))
* **mentions:** support same-device CJK display-name tags ([#2874](https://github.com/HankHuang0516/EClaw/issues/2874)) ([b8f61be](https://github.com/HankHuang0516/EClaw/commit/b8f61be9a3962fef75dd32ea34e8900880dafaf9))
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **app:** WebView pages honor app-selected locale via ?lang= URL param ([#2672](https://github.com/HankHuang0516/EClaw/issues/2672)) ([8ed8757](https://github.com/HankHuang0516/EClaw/commit/8ed8757aec5bf214e837cc0d81bf2b23f1993a91)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **share-chat:** wire rich CTA actions to msgInput ([#2867](https://github.com/HankHuang0516/EClaw/issues/2867)) ([df23b11](https://github.com/HankHuang0516/EClaw/commit/df23b1147d34c59a644a145bbd87c18b96400acc))


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* **community:** 1-click chat button on bot cards + utm tagging ([#2610](https://github.com/HankHuang0516/EClaw/issues/2610)) ([eee97b0](https://github.com/HankHuang0516/EClaw/commit/eee97b0e2e4e74945ec24f218a69a52800b97a66))
* **chat:** accept ?messageId= as deep-link alias ([#2838](https://github.com/HankHuang0516/EClaw/issues/2838)) ([1785a87](https://github.com/HankHuang0516/EClaw/commit/1785a87310426637fd10df83754fb9924c45207f))
* **chat:** add avatar size preference ([#2714](https://github.com/HankHuang0516/EClaw/issues/2714)) ([6fe164a](https://github.com/HankHuang0516/EClaw/commit/6fe164ad8b22fa576d2dd9ad37c0d9fc295b5a83))
* **dashboard:** add Claude and Codex channel guides ([#2640](https://github.com/HankHuang0516/EClaw/issues/2640)) ([c64e4c4](https://github.com/HankHuang0516/EClaw/commit/c64e4c4afc78db58c5cd578f00486dd7b2fd3311))
* **dashboard:** add Claude Code channel guide card ([#2667](https://github.com/HankHuang0516/EClaw/issues/2667)) ([d70d75c](https://github.com/HankHuang0516/EClaw/commit/d70d75c0c8caa8a540358a9aab4556b8c1927a5c))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* **kanban:** add device-scoped card tags ([#2773](https://github.com/HankHuang0516/EClaw/issues/2773)) ([53a387e](https://github.com/HankHuang0516/EClaw/commit/53a387e67ba7bb4f6bed1c427000c4ae8666577a))
* **portal:** add entity selector to petdx-browser ([#2602](https://github.com/HankHuang0516/EClaw/issues/2602)) ([3fa067e](https://github.com/HankHuang0516/EClaw/commit/3fa067e00b38829b48a37cecd33ee81a9a1122d9))
* **kanban:** add explicit card links ([#2721](https://github.com/HankHuang0516/EClaw/issues/2721)) ([ef9f812](https://github.com/HankHuang0516/EClaw/commit/ef9f812a3fcf39efd07fd158ce90951bdd045ac7))
* **kanban:** add explicit done-card reopen flow ([#2801](https://github.com/HankHuang0516/EClaw/issues/2801)) ([5080aac](https://github.com/HankHuang0516/EClaw/commit/5080aacb75047c0deaa379ee708ec85465afd57c))
* **mindmap:** add GET /api/mindmap/graph force-graph projection ([#2680](https://github.com/HankHuang0516/EClaw/issues/2680)) ([a00b2e7](https://github.com/HankHuang0516/EClaw/commit/a00b2e775af2c4c98cd157f760ad87aeeee469f0)), closes [#2679](https://github.com/HankHuang0516/EClaw/issues/2679) [#2679](https://github.com/HankHuang0516/EClaw/issues/2679)
* **dashboard:** add Hermes channel promo card ([#2708](https://github.com/HankHuang0516/EClaw/issues/2708)) ([337aca1](https://github.com/HankHuang0516/EClaw/commit/337aca153d5a1cd7e888c065f00ae54db7872d91))
* **rental:** add listing soft pause ([#2781](https://github.com/HankHuang0516/EClaw/issues/2781)) ([6586b72](https://github.com/HankHuang0516/EClaw/commit/6586b72717ddb1637d91cd3242c8d2ff554f62b4))
* **portal:** add Nagoya 5D4N trip static cross-ref page ([#2689](https://github.com/HankHuang0516/EClaw/issues/2689)) ([2e0efb6](https://github.com/HankHuang0516/EClaw/commit/2e0efb6dcdaff52226cc8854a96747000b12bdff))
* **portal:** add Nagoya trip map links and image lightbox ([#2821](https://github.com/HankHuang0516/EClaw/issues/2821)) ([3e40955](https://github.com/HankHuang0516/EClaw/commit/3e40955650a05f45a6b9f7e39e73847705424a03))
* **portal/nagoya:** add parking shortcut buttons next to itinerary places ([#2826](https://github.com/HankHuang0516/EClaw/issues/2826)) ([63968c5](https://github.com/HankHuang0516/EClaw/commit/63968c554d046afc8d978de74e3aacbf7700500d))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **settings:** add rental roster management preview ([#2758](https://github.com/HankHuang0516/EClaw/issues/2758)) ([9706e59](https://github.com/HankHuang0516/EClaw/commit/9706e59ded140a90a6e02348124282bc69d89001))
* **rental:** add renter health chat indicator ([#2690](https://github.com/HankHuang0516/EClaw/issues/2690)) ([36cd2e9](https://github.com/HankHuang0516/EClaw/commit/36cd2e9802be4c7ebb03d3024617fa74aca48ffd))
* **ios:** add Tutorial & Intro entry in Settings ([#2800](https://github.com/HankHuang0516/EClaw/issues/2800)) ([ed83e51](https://github.com/HankHuang0516/EClaw/commit/ed83e51d043bf4cd5865f38dc95a91ed54820d6c))
* **landing:** add Watch Full Demo CTA below hero video ([#2799](https://github.com/HankHuang0516/EClaw/issues/2799)) ([66107c9](https://github.com/HankHuang0516/EClaw/commit/66107c954727551fd34d989a4674daaad9b63968))
* **footer:** add Watch Intro Video link in Info column ([#2798](https://github.com/HankHuang0516/EClaw/issues/2798)) ([d7c6d59](https://github.com/HankHuang0516/EClaw/commit/d7c6d596b69c6a5b257bf1f7a792a407ef9712ad))
* **i18n:** ar iter-2 — fill 623 missing keys against en source ([#2847](https://github.com/HankHuang0516/EClaw/issues/2847)) ([ee94a7a](https://github.com/HankHuang0516/EClaw/commit/ee94a7ae6812b5163efe4284ee4907ca32302f5c))
* **kanban:** backlog launch-gate flag to suppress L1/L2/L3 escalation ([#2855](https://github.com/HankHuang0516/EClaw/issues/2855)) ([cb8bf1b](https://github.com/HankHuang0516/EClaw/commit/cb8bf1bb6421f25214f65e129a8cadccc49cc266)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#4](https://github.com/HankHuang0516/EClaw/issues/4) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **companion:** bridge crafter-station/petdex gallery (1784 pets) ([#2601](https://github.com/HankHuang0516/EClaw/issues/2601)) ([2e245be](https://github.com/HankHuang0516/EClaw/commit/2e245bea6dd47ea7361b927d389188a3c23b6bb3))
* **promo:** chat avatar size feature landing page (self-hosted MP4) ([#2722](https://github.com/HankHuang0516/EClaw/issues/2722)) ([3852210](https://github.com/HankHuang0516/EClaw/commit/3852210d355704d018e3daca6b5f9512a011b210)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **kanban:** cron-spawn jitter + lane backpressure to prevent same-tick wedge ([#2791](https://github.com/HankHuang0516/EClaw/issues/2791)) ([9f414a7](https://github.com/HankHuang0516/EClaw/commit/9f414a731d6393672a0a4189c7b408c529ae5e12)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **promo:** embed daily eclaw video 2026-05-14 ([#2786](https://github.com/HankHuang0516/EClaw/issues/2786)) ([718a814](https://github.com/HankHuang0516/EClaw/commit/718a814ab16850bc2b33a1b303841e2c4378ecfa)), closes [#2782](https://github.com/HankHuang0516/EClaw/issues/2782) [#2693](https://github.com/HankHuang0516/EClaw/issues/2693)
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **info:** embed promo video at top of Quick Start tab ([#2797](https://github.com/HankHuang0516/EClaw/issues/2797)) ([047679f](https://github.com/HankHuang0516/EClaw/commit/047679fd57ab9949eaeacea414d5611e71afe041))
* **rental:** enforce strict rebind refunds ([#2703](https://github.com/HankHuang0516/EClaw/issues/2703)) ([a1859c5](https://github.com/HankHuang0516/EClaw/commit/a1859c50e6fb3991d7a8051491502d824a14a116))
* **portal:** group task chip actions ([#2825](https://github.com/HankHuang0516/EClaw/issues/2825)) ([5db5c59](https://github.com/HankHuang0516/EClaw/commit/5db5c59b32b8635f1412205faf0c2f9164d3d5d4))
* **portal:** info-guide-rules + info-guide-soul slide pair ([#2793](https://github.com/HankHuang0516/EClaw/issues/2793)) ([1c8bddc](https://github.com/HankHuang0516/EClaw/commit/1c8bddc4c185054b2b60088498e3d45509117127)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **chat:** link card previews to kanban ([#2754](https://github.com/HankHuang0516/EClaw/issues/2754)) ([2261240](https://github.com/HankHuang0516/EClaw/commit/22612402c2e95efb07246629e81a849be41ee9c7))
* **mission:** link notes to kanban cards ([#2723](https://github.com/HankHuang0516/EClaw/issues/2723)) ([b36dc18](https://github.com/HankHuang0516/EClaw/commit/b36dc18f3a8facf12e0b6046351c222f1e99dc55))
* **mindmap:** mission.html link to /portal/mindmap.html + deprecate /api/mission/mindmap ([#2685](https://github.com/HankHuang0516/EClaw/issues/2685)) ([11e297b](https://github.com/HankHuang0516/EClaw/commit/11e297bab1c9b56fcde3027d6500b7c58891bf18)), closes [#2680](https://github.com/HankHuang0516/EClaw/issues/2680) [#2684](https://github.com/HankHuang0516/EClaw/issues/2684)
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **settings:** per-entity nudge override UI (Phase 2) ([#2837](https://github.com/HankHuang0516/EClaw/issues/2837)) ([ea7662b](https://github.com/HankHuang0516/EClaw/commit/ea7662b0858882dae461e1387f711895924f9ab8)), closes [3/#4](https://github.com/HankHuang0516/EClaw/issues/4)
* **kanban:** per-entity nudge overrides (Phase 2 of card_e066cb6b) ([#2836](https://github.com/HankHuang0516/EClaw/issues/2836)) ([0425f80](https://github.com/HankHuang0516/EClaw/commit/0425f80bc1169c0d506b665659c8676695c45553))
* **avatar:** petdx render on card-holder my-cards (Phase 1b) ([#2621](https://github.com/HankHuang0516/EClaw/issues/2621)) ([f78ba8b](https://github.com/HankHuang0516/EClaw/commit/f78ba8b18acc426936ab6d8a82ca7541effea00d))
* **avatar:** petdx render on dashboard entity grid / org chart / bindings (Phase 1b) ([#2622](https://github.com/HankHuang0516/EClaw/issues/2622)) ([f417749](https://github.com/HankHuang0516/EClaw/commit/f41774914451048e8cd76e9ae30416a0642e173b)), closes [#2620](https://github.com/HankHuang0516/EClaw/issues/2620) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621)
* **avatar:** petdx render on kanban auto-assign / pulse / comment avatars (Phase 1b) ([#2624](https://github.com/HankHuang0516/EClaw/issues/2624)) ([6bff5f8](https://github.com/HankHuang0516/EClaw/commit/6bff5f80440d0bd91a6b1721cde9478d685c4d46))
* **avatar:** petdx render on mission skill/rule/soul entity dialogs (Phase 1b) ([#2623](https://github.com/HankHuang0516/EClaw/issues/2623)) ([129327b](https://github.com/HankHuang0516/EClaw/commit/129327bc7b91056659f1ab7e8d5e3f5260d951fb))
* **mindmap:** portal/mindmap.html force-graph prototype ([#129](https://github.com/HankHuang0516/EClaw/issues/129)) ([#2681](https://github.com/HankHuang0516/EClaw/issues/2681)) ([0f15e69](https://github.com/HankHuang0516/EClaw/commit/0f15e6930f0697c37fa08f3219edb8f9e499837f)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **portal:** redo nagoya trip page in professional tour-guide style ([#2691](https://github.com/HankHuang0516/EClaw/issues/2691)) ([b2378c0](https://github.com/HankHuang0516/EClaw/commit/b2378c06ee20fa9cccfdceceb1a4c9e0b3072f59))
* **i18n:** remove ms+hi orphan keys from i18n.js ([#2849](https://github.com/HankHuang0516/EClaw/issues/2849)) ([320176c](https://github.com/HankHuang0516/EClaw/commit/320176c06a3cfd8631e2a82ad02a6bd6a9af0389))
* **avatar:** render selected petdx companion in chat avatars ([#2620](https://github.com/HankHuang0516/EClaw/issues/2620)) ([0bdd046](https://github.com/HankHuang0516/EClaw/commit/0bdd046fe1b1c428e32edda366ff112c08927f4c))
* **home:** replace native home with WebView hosting dashboard.html ([#2634](https://github.com/HankHuang0516/EClaw/issues/2634)) ([e69ea81](https://github.com/HankHuang0516/EClaw/commit/e69ea8160c239b083a83d6dc83a4f1c3f901c863))
* **app:** route chat mission jumps through native tabs ([#2824](https://github.com/HankHuang0516/EClaw/issues/2824)) ([deb07b6](https://github.com/HankHuang0516/EClaw/commit/deb07b69a9ecca632fe27278de537f1d85234e94))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **chat:** support message deep links ([#2719](https://github.com/HankHuang0516/EClaw/issues/2719)) ([2dc0f1e](https://github.com/HankHuang0516/EClaw/commit/2dc0f1eeb259e1a0848db4a03186b989372cd91c))
* **mission:** support note deep links ([#2717](https://github.com/HankHuang0516/EClaw/issues/2717)) ([2efd3a5](https://github.com/HankHuang0516/EClaw/commit/2efd3a5e741217a07c0b0ac54a0ddd010e0ebe23))
* **share-chat:** twitter card + per-bot og:image/twitter:* in SSR ([#2609](https://github.com/HankHuang0516/EClaw/issues/2609)) ([6cdc853](https://github.com/HankHuang0516/EClaw/commit/6cdc853dc884cdb95bd47214942768981f218ae0))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))
* **settings:** wire petdx avatar into channel-account chips ([#2626](https://github.com/HankHuang0516/EClaw/issues/2626)) ([88aec77](https://github.com/HankHuang0516/EClaw/commit/88aec772628c240e97b336bb5820892ad632d1ae))
* **files:** wire petdx avatar into entity filter & per-file badges ([#2627](https://github.com/HankHuang0516/EClaw/issues/2627)) ([5b3e5cc](https://github.com/HankHuang0516/EClaw/commit/5b3e5cc542d9da69bb4e92500fd03a542ea33f00))
* **mindmap:** wrap hardcoded zh-TW UI strings with i18n t() ([#2607](https://github.com/HankHuang0516/EClaw/issues/2607)) ([166af87](https://github.com/HankHuang0516/EClaw/commit/166af8772b2121a24aaf34a83b3de970e9b3b571)), closes [#2606](https://github.com/HankHuang0516/EClaw/issues/2606)
* **i18n:** zh-TW backfill 8 keys (soft-pause + chat + invite + wallet) ([#2815](https://github.com/HankHuang0516/EClaw/issues/2815)) ([a2dd574](https://github.com/HankHuang0516/EClaw/commit/a2dd5743ce8d43a4b6ace9a2fd4b52568180d6c5))


### Performance Improvements

* **mindmap:** force-graph hardening for 1000/2000-node graphs ([#2684](https://github.com/HankHuang0516/EClaw/issues/2684)) ([da8b1c8](https://github.com/HankHuang0516/EClaw/commit/da8b1c8f947ab8bc8fa455c1962a91146623a1fc))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-21)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **notifications:** add kanban_done + kanban_done_auto toggles to Android Settings ([#2636](https://github.com/HankHuang0516/EClaw/issues/2636)) ([a710909](https://github.com/HankHuang0516/EClaw/commit/a7109095e3393b8564e7ef1b23d382a4fbb944b8))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **i18n:** ar block — fix 27 broken entries (CJK leaks + truncated HTML) ([#2851](https://github.com/HankHuang0516/EClaw/issues/2851)) ([5b19175](https://github.com/HankHuang0516/EClaw/commit/5b19175d712d00d16fcec00b749035c4beae7a5c))
* **chat:** atomic-load target bar (await contacts before first render) ([#2831](https://github.com/HankHuang0516/EClaw/issues/2831)) ([5f529e6](https://github.com/HankHuang0516/EClaw/commit/5f529e6b772eacc38ba1de69b44258a05f0d816a)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2](https://github.com/HankHuang0516/EClaw/issues/2)
* **rental:** bump handshake timeout to 60s + timeout-aware discovery fallback ([#2863](https://github.com/HankHuang0516/EClaw/issues/2863)) ([fd4322f](https://github.com/HankHuang0516/EClaw/commit/fd4322f8890f3c2dfca3acdae6a4b95f19c381f9)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **i18n:** clear batch 1 residual missing keys ([#2790](https://github.com/HankHuang0516/EClaw/issues/2790)) ([211030e](https://github.com/HankHuang0516/EClaw/commit/211030e0b0b6a865c11f0c4ed60dc4e356d43b7a))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **kanban:** comment input no longer overlaps last comment in card detail (PR [#2678](https://github.com/HankHuang0516/EClaw/issues/2678)) ([fba91fc](https://github.com/HankHuang0516/EClaw/commit/fba91fca15402b453a0db5ee857c0b16e6087055))
* **chat:** compact 20px avatar in target bar (App WebView only shows [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2](https://github.com/HankHuang0516/EClaw/issues/2)) ([#2830](https://github.com/HankHuang0516/EClaw/issues/2830)) ([42c7543](https://github.com/HankHuang0516/EClaw/commit/42c7543b4a78a7abf3f5f7535eb9bc6142cd0fe2)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **portal:** complete 401 redirect sweep + mobile UIUX truncation ([#2842](https://github.com/HankHuang0516/EClaw/issues/2842)) ([f9799ba](https://github.com/HankHuang0516/EClaw/commit/f9799ba42498b109f0a8a70e80836aa6da51e216)), closes [#2833](https://github.com/HankHuang0516/EClaw/issues/2833) [#2845](https://github.com/HankHuang0516/EClaw/issues/2845) [#2844](https://github.com/HankHuang0516/EClaw/issues/2844) [#2843](https://github.com/HankHuang0516/EClaw/issues/2843)
* **uiux:** continue qa mobile readability sweep ([#2854](https://github.com/HankHuang0516/EClaw/issues/2854)) ([57606ff](https://github.com/HankHuang0516/EClaw/commit/57606ffe3e543b07a026aacc53c4b470c9a7825b))
* **i18n:** cover dynamic portal wrapper keys ([#2807](https://github.com/HankHuang0516/EClaw/issues/2807)) ([4c711cc](https://github.com/HankHuang0516/EClaw/commit/4c711cc4009300ffe4e8933a98ee01cd0fdd6aeb))
* **i18n:** dedup 20 dash_channel_card_* keys in es block ([#2876](https://github.com/HankHuang0516/EClaw/issues/2876)) ([807284c](https://github.com/HankHuang0516/EClaw/commit/807284ce363ef119ccdb0ae40e5ce99d3f0a27e0))
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **rental:** don't pollute entity.message on push gateway timeout ([#2860](https://github.com/HankHuang0516/EClaw/issues/2860)) ([592ba44](https://github.com/HankHuang0516/EClaw/commit/592ba44f57536ee00011b6cbddaa6b129a7cbae9))
* **petdx:** drop dark-grey loading placeholder + preload sprite WEBP ([#2628](https://github.com/HankHuang0516/EClaw/issues/2628)) ([59cef38](https://github.com/HankHuang0516/EClaw/commit/59cef387bd69ca99d7d15c86a1364856d3849ad8)), closes [#1a1a1a](https://github.com/HankHuang0516/EClaw/issues/1a1a1a)
* **gateway-ws:** drop Origin header on server-to-server WS upgrade ([#2869](https://github.com/HankHuang0516/EClaw/issues/2869)) ([716dcf9](https://github.com/HankHuang0516/EClaw/commit/716dcf9d0834b17522bb9d894bad84bc142d1a19))
* **setup-scripts:** drop Origin header on server-to-server WS upgrade ([#2875](https://github.com/HankHuang0516/EClaw/issues/2875)) ([9d893b8](https://github.com/HankHuang0516/EClaw/commit/9d893b8e5eea4db275e450bf423903c156cd3e4b)), closes [#2869](https://github.com/HankHuang0516/EClaw/issues/2869)
* **security:** escape innerHTML in chat modal error messages ([#2819](https://github.com/HankHuang0516/EClaw/issues/2819)) ([dce07ad](https://github.com/HankHuang0516/EClaw/commit/dce07adde64795916dba977ae23e46f3371ce7ed)), closes [#2809](https://github.com/HankHuang0516/EClaw/issues/2809) [#2810](https://github.com/HankHuang0516/EClaw/issues/2810) [#2809](https://github.com/HankHuang0516/EClaw/issues/2809) [#2810](https://github.com/HankHuang0516/EClaw/issues/2810)
* **entities:** expose botSecret to owner so wallpaper service can poll companions ([#2615](https://github.com/HankHuang0516/EClaw/issues/2615)) ([04470fc](https://github.com/HankHuang0516/EClaw/commit/04470fce8f8c3fce2b1ba8b243e776606f107502))
* **rental:** expose owner_public_code in marketplace so plaza CTA can route ([#2616](https://github.com/HankHuang0516/EClaw/issues/2616)) ([4d1372f](https://github.com/HankHuang0516/EClaw/commit/4d1372f717d93cab65543e87c852e74e9fb67071)), closes [#2610](https://github.com/HankHuang0516/EClaw/issues/2610)
* **mindmap:** fallback to device scope when entityId is null ([#2728](https://github.com/HankHuang0516/EClaw/issues/2728)) ([7572312](https://github.com/HankHuang0516/EClaw/commit/7572312433d3d75fc245eda48a28919ce14bd927))
* **i18n:** fill Spanish drift keys ([#2751](https://github.com/HankHuang0516/EClaw/issues/2751)) ([0ad0ee5](https://github.com/HankHuang0516/EClaw/commit/0ad0ee55f7fac3e6ac46d891539950dab4d553cc))
* **portal:** fit embedded org chart to mobile viewport ([#2674](https://github.com/HankHuang0516/EClaw/issues/2674)) ([1c4e1b4](https://github.com/HankHuang0516/EClaw/commit/1c4e1b413ea7027b4cd4b8ecda981b0d0e12e66b))
* **i18n:** fix 6 trailing-comma syntax errors in 10-locale batch ([#2771](https://github.com/HankHuang0516/EClaw/issues/2771)) ([b27c6ca](https://github.com/HankHuang0516/EClaw/commit/b27c6ca204bf813e406c54ce3a2532a5f1f031b3))
* **kanban:** GET card returns latest 50 comments + comments endpoint exposes total ([#2816](https://github.com/HankHuang0516/EClaw/issues/2816)) ([c4d83f7](https://github.com/HankHuang0516/EClaw/commit/c4d83f777a1cd26aea0936e4316aa35c52822eef))
* **sharechat:** guest verify-email modal + disabled Send for unverified ([#2865](https://github.com/HankHuang0516/EClaw/issues/2865)) ([cb3b061](https://github.com/HankHuang0516/EClaw/commit/cb3b0614e0f6160417d907753e66eceb2d666802))
* **uiux:** harden chat previews and roster preview ([#2769](https://github.com/HankHuang0516/EClaw/issues/2769)) ([466d4d3](https://github.com/HankHuang0516/EClaw/commit/466d4d3ef81c628d3f58db64323946053d7bf61c))
* **mention-parser:** ignore @-mentions inside markdown code spans ([#2645](https://github.com/HankHuang0516/EClaw/issues/2645)) ([8da19d4](https://github.com/HankHuang0516/EClaw/commit/8da19d4a79ceb4152bf2144ee0847c61ce3e1def)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **kanban:** lazy-load dependency chips via IntersectionObserver ([#2632](https://github.com/HankHuang0516/EClaw/issues/2632)) ([20586b4](https://github.com/HankHuang0516/EClaw/commit/20586b43357335f9eb6a190c02d58c8e36b58aba)), closes [#2631](https://github.com/HankHuang0516/EClaw/issues/2631)
* **kanban:** make card sorting deterministic ([#2756](https://github.com/HankHuang0516/EClaw/issues/2756)) ([48e2117](https://github.com/HankHuang0516/EClaw/commit/48e2117b64e37f05dc635e0a3b67bfd43cbe48f5))
* **org-chart:** notify affected bots on hierarchy change ([#2812](https://github.com/HankHuang0516/EClaw/issues/2812)) ([55675fd](https://github.com/HankHuang0516/EClaw/commit/55675fdf4487494d729a29524b32bd81b756a00c)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** notify reviewer on manual /move → review ([#2753](https://github.com/HankHuang0516/EClaw/issues/2753)) ([6cbbb4e](https://github.com/HankHuang0516/EClaw/commit/6cbbb4ee8c0d4d8ad54df2e9b5faaa3699bd530f))
* **wallpaper:** off-load spritesheet fetch to IO so per-petdx sprites actually render ([#2618](https://github.com/HankHuang0516/EClaw/issues/2618)) ([61b832c](https://github.com/HankHuang0516/EClaw/commit/61b832c9fa8a1d0caab810ccc942d85c63349267)), closes [#2615](https://github.com/HankHuang0516/EClaw/issues/2615) [#2577](https://github.com/HankHuang0516/EClaw/issues/2577)
* **security:** patch P0 sanitize-html XSS + P1 protobufjs + exam.html XSS ([#2829](https://github.com/HankHuang0516/EClaw/issues/2829)) ([c71b871](https://github.com/HankHuang0516/EClaw/commit/c71b871a045887375dd0d26d1a3280a0891a89ad))
* **security:** patch ws uninitialized memory disclosure (GHSA-58qx-3vcg-4xpx) ([#2872](https://github.com/HankHuang0516/EClaw/issues/2872)) ([2523d15](https://github.com/HankHuang0516/EClaw/commit/2523d154bbe501a7cc086340f7a07ece3abfa69b))
* **portal:** petdx-browser cookie-session fallback for device-login ([#2757](https://github.com/HankHuang0516/EClaw/issues/2757)) ([ca275f4](https://github.com/HankHuang0516/EClaw/commit/ca275f4519835da0c7ad71c588908a18f6f138d8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **api:** platform-stats 500 + entity/lookup publicCode alias ([#2809](https://github.com/HankHuang0516/EClaw/issues/2809), [#2810](https://github.com/HankHuang0516/EClaw/issues/2810)) ([#2818](https://github.com/HankHuang0516/EClaw/issues/2818)) ([f99fd17](https://github.com/HankHuang0516/EClaw/commit/f99fd17b2b1c32d88daa2510ff66d714c1a53edc))
* **i18n:** positional format specifiers for feedback_result_logs (7 locales) ([#2597](https://github.com/HankHuang0516/EClaw/issues/2597)) ([21aedc7](https://github.com/HankHuang0516/EClaw/commit/21aedc7eebc7a2839e340136f38dfdfd4dabb9dc))
* **avatar-petdx:** preserve descriptor across transient API failures (flicker) ([#2625](https://github.com/HankHuang0516/EClaw/issues/2625)) ([7b1c606](https://github.com/HankHuang0516/EClaw/commit/7b1c606514f7698d72ec95cf6c556e4043966186))
* **chat:** preserve scroll anchor while reading history ([#2693](https://github.com/HankHuang0516/EClaw/issues/2693)) ([945fdb7](https://github.com/HankHuang0516/EClaw/commit/945fdb7192b791b31882e1e75568dd8b11e4686f))
* **promo:** pull video embed from /promo-chat-avatar.html ([#2724](https://github.com/HankHuang0516/EClaw/issues/2724)) ([2afabc8](https://github.com/HankHuang0516/EClaw/commit/2afabc8c5ff8b25218a7cb857e8adfa572c8e9d5))
* **kanban:** realign stale recurring schedules ([#2785](https://github.com/HankHuang0516/EClaw/issues/2785)) ([ab8ee25](https://github.com/HankHuang0516/EClaw/commit/ab8ee250a9b37f3d3e838bb01d8866c8d2b78231))
* **portal:** reduce QA-discovered request fanout ([#2656](https://github.com/HankHuang0516/EClaw/issues/2656)) ([1e46d6b](https://github.com/HankHuang0516/EClaw/commit/1e46d6bab61e58c65b452b6503d953f8dddeee75))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **portal:** remove org chart fit scale floor ([#2676](https://github.com/HankHuang0516/EClaw/issues/2676)) ([0f01606](https://github.com/HankHuang0516/EClaw/commit/0f016068b963bb5f800a02f28817c7174979d913))
* **rental:** remove phantom 'webhook test push' step from BIND_COMPLETE ([#2864](https://github.com/HankHuang0516/EClaw/issues/2864)) ([47f4a3e](https://github.com/HankHuang0516/EClaw/commit/47f4a3edf76aa95ebd06d8713cd44fda6eef9b5d))
* **i18n:** rename mm_empty_title → mm_state_empty_title in mindmap.html ([#2683](https://github.com/HankHuang0516/EClaw/issues/2683)) ([c79c109](https://github.com/HankHuang0516/EClaw/commit/c79c109bea23142e8a6d9ace976d105af1280ec9))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **chat:** render mention avatars with companion renderer ([#2633](https://github.com/HankHuang0516/EClaw/issues/2633)) ([03e205f](https://github.com/HankHuang0516/EClaw/commit/03e205f663ecd2c2f443d4009dd5af0093f0bbbb))
* **kanban:** reserve mobile comments panel height ([#2782](https://github.com/HankHuang0516/EClaw/issues/2782)) ([ce8662d](https://github.com/HankHuang0516/EClaw/commit/ce8662d362422fdd25037f1deb61dbed9425e2f9))
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* scheduled audit 2026-05-13 — 6 bugs, XSS, i18n ([#2668](https://github.com/HankHuang0516/EClaw/issues/2668)) ([21dd513](https://github.com/HankHuang0516/EClaw/commit/21dd513b4464738de29164265437435ba6cc4817)), closes [#2605](https://github.com/HankHuang0516/EClaw/issues/2605) [#2608](https://github.com/HankHuang0516/EClaw/issues/2608) [#2600](https://github.com/HankHuang0516/EClaw/issues/2600) [#2599](https://github.com/HankHuang0516/EClaw/issues/2599) [#2598](https://github.com/HankHuang0516/EClaw/issues/2598)
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **chat:** smart-chip preview falls back to inline c.comments when /comments fails (PR [#2677](https://github.com/HankHuang0516/EClaw/issues/2677)) ([7f4dffd](https://github.com/HankHuang0516/EClaw/commit/7f4dffd2c83ea86f296b8fa0610f0e67c9f1af11))
* **kanban:** stabilize comment detail viewport ([#2796](https://github.com/HankHuang0516/EClaw/issues/2796)) ([0a10aad](https://github.com/HankHuang0516/EClaw/commit/0a10aadb5a5b12ff23454c16d5c88183b94ad7d7))
* **wallpaper:** stop Android live wallpaper flashing default lobster on companion change ([#2629](https://github.com/HankHuang0516/EClaw/issues/2629)) ([8b4f66f](https://github.com/HankHuang0516/EClaw/commit/8b4f66fcb335bf43128f924b761b6337c817095b)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **chat:** stop chat.html bouncing to dashboard via /api/rental/health-status 401 race ([#2833](https://github.com/HankHuang0516/EClaw/issues/2833)) ([c422406](https://github.com/HankHuang0516/EClaw/commit/c4224067cdcfe7f3e22ab95007c7563dac4196ac))
* **mentions:** support same-device CJK display-name tags ([#2874](https://github.com/HankHuang0516/EClaw/issues/2874)) ([b8f61be](https://github.com/HankHuang0516/EClaw/commit/b8f61be9a3962fef75dd32ea34e8900880dafaf9))
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **app:** WebView pages honor app-selected locale via ?lang= URL param ([#2672](https://github.com/HankHuang0516/EClaw/issues/2672)) ([8ed8757](https://github.com/HankHuang0516/EClaw/commit/8ed8757aec5bf214e837cc0d81bf2b23f1993a91)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **share-chat:** wire rich CTA actions to msgInput ([#2867](https://github.com/HankHuang0516/EClaw/issues/2867)) ([df23b11](https://github.com/HankHuang0516/EClaw/commit/df23b1147d34c59a644a145bbd87c18b96400acc))


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* **community:** 1-click chat button on bot cards + utm tagging ([#2610](https://github.com/HankHuang0516/EClaw/issues/2610)) ([eee97b0](https://github.com/HankHuang0516/EClaw/commit/eee97b0e2e4e74945ec24f218a69a52800b97a66))
* **chat:** accept ?messageId= as deep-link alias ([#2838](https://github.com/HankHuang0516/EClaw/issues/2838)) ([1785a87](https://github.com/HankHuang0516/EClaw/commit/1785a87310426637fd10df83754fb9924c45207f))
* **chat:** add avatar size preference ([#2714](https://github.com/HankHuang0516/EClaw/issues/2714)) ([6fe164a](https://github.com/HankHuang0516/EClaw/commit/6fe164ad8b22fa576d2dd9ad37c0d9fc295b5a83))
* **dashboard:** add Claude and Codex channel guides ([#2640](https://github.com/HankHuang0516/EClaw/issues/2640)) ([c64e4c4](https://github.com/HankHuang0516/EClaw/commit/c64e4c4afc78db58c5cd578f00486dd7b2fd3311))
* **dashboard:** add Claude Code channel guide card ([#2667](https://github.com/HankHuang0516/EClaw/issues/2667)) ([d70d75c](https://github.com/HankHuang0516/EClaw/commit/d70d75c0c8caa8a540358a9aab4556b8c1927a5c))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* **kanban:** add device-scoped card tags ([#2773](https://github.com/HankHuang0516/EClaw/issues/2773)) ([53a387e](https://github.com/HankHuang0516/EClaw/commit/53a387e67ba7bb4f6bed1c427000c4ae8666577a))
* **portal:** add entity selector to petdx-browser ([#2602](https://github.com/HankHuang0516/EClaw/issues/2602)) ([3fa067e](https://github.com/HankHuang0516/EClaw/commit/3fa067e00b38829b48a37cecd33ee81a9a1122d9))
* **kanban:** add explicit card links ([#2721](https://github.com/HankHuang0516/EClaw/issues/2721)) ([ef9f812](https://github.com/HankHuang0516/EClaw/commit/ef9f812a3fcf39efd07fd158ce90951bdd045ac7))
* **kanban:** add explicit done-card reopen flow ([#2801](https://github.com/HankHuang0516/EClaw/issues/2801)) ([5080aac](https://github.com/HankHuang0516/EClaw/commit/5080aacb75047c0deaa379ee708ec85465afd57c))
* **mindmap:** add GET /api/mindmap/graph force-graph projection ([#2680](https://github.com/HankHuang0516/EClaw/issues/2680)) ([a00b2e7](https://github.com/HankHuang0516/EClaw/commit/a00b2e775af2c4c98cd157f760ad87aeeee469f0)), closes [#2679](https://github.com/HankHuang0516/EClaw/issues/2679) [#2679](https://github.com/HankHuang0516/EClaw/issues/2679)
* **dashboard:** add Hermes channel promo card ([#2708](https://github.com/HankHuang0516/EClaw/issues/2708)) ([337aca1](https://github.com/HankHuang0516/EClaw/commit/337aca153d5a1cd7e888c065f00ae54db7872d91))
* **rental:** add listing soft pause ([#2781](https://github.com/HankHuang0516/EClaw/issues/2781)) ([6586b72](https://github.com/HankHuang0516/EClaw/commit/6586b72717ddb1637d91cd3242c8d2ff554f62b4))
* **portal:** add Nagoya 5D4N trip static cross-ref page ([#2689](https://github.com/HankHuang0516/EClaw/issues/2689)) ([2e0efb6](https://github.com/HankHuang0516/EClaw/commit/2e0efb6dcdaff52226cc8854a96747000b12bdff))
* **portal:** add Nagoya trip map links and image lightbox ([#2821](https://github.com/HankHuang0516/EClaw/issues/2821)) ([3e40955](https://github.com/HankHuang0516/EClaw/commit/3e40955650a05f45a6b9f7e39e73847705424a03))
* **portal/nagoya:** add parking shortcut buttons next to itinerary places ([#2826](https://github.com/HankHuang0516/EClaw/issues/2826)) ([63968c5](https://github.com/HankHuang0516/EClaw/commit/63968c554d046afc8d978de74e3aacbf7700500d))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **settings:** add rental roster management preview ([#2758](https://github.com/HankHuang0516/EClaw/issues/2758)) ([9706e59](https://github.com/HankHuang0516/EClaw/commit/9706e59ded140a90a6e02348124282bc69d89001))
* **rental:** add renter health chat indicator ([#2690](https://github.com/HankHuang0516/EClaw/issues/2690)) ([36cd2e9](https://github.com/HankHuang0516/EClaw/commit/36cd2e9802be4c7ebb03d3024617fa74aca48ffd))
* **ios:** add Tutorial & Intro entry in Settings ([#2800](https://github.com/HankHuang0516/EClaw/issues/2800)) ([ed83e51](https://github.com/HankHuang0516/EClaw/commit/ed83e51d043bf4cd5865f38dc95a91ed54820d6c))
* **landing:** add Watch Full Demo CTA below hero video ([#2799](https://github.com/HankHuang0516/EClaw/issues/2799)) ([66107c9](https://github.com/HankHuang0516/EClaw/commit/66107c954727551fd34d989a4674daaad9b63968))
* **footer:** add Watch Intro Video link in Info column ([#2798](https://github.com/HankHuang0516/EClaw/issues/2798)) ([d7c6d59](https://github.com/HankHuang0516/EClaw/commit/d7c6d596b69c6a5b257bf1f7a792a407ef9712ad))
* **i18n:** ar iter-2 — fill 623 missing keys against en source ([#2847](https://github.com/HankHuang0516/EClaw/issues/2847)) ([ee94a7a](https://github.com/HankHuang0516/EClaw/commit/ee94a7ae6812b5163efe4284ee4907ca32302f5c))
* **kanban:** backlog launch-gate flag to suppress L1/L2/L3 escalation ([#2855](https://github.com/HankHuang0516/EClaw/issues/2855)) ([cb8bf1b](https://github.com/HankHuang0516/EClaw/commit/cb8bf1bb6421f25214f65e129a8cadccc49cc266)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#4](https://github.com/HankHuang0516/EClaw/issues/4) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **companion:** bridge crafter-station/petdex gallery (1784 pets) ([#2601](https://github.com/HankHuang0516/EClaw/issues/2601)) ([2e245be](https://github.com/HankHuang0516/EClaw/commit/2e245bea6dd47ea7361b927d389188a3c23b6bb3))
* **promo:** chat avatar size feature landing page (self-hosted MP4) ([#2722](https://github.com/HankHuang0516/EClaw/issues/2722)) ([3852210](https://github.com/HankHuang0516/EClaw/commit/3852210d355704d018e3daca6b5f9512a011b210)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **kanban:** cron-spawn jitter + lane backpressure to prevent same-tick wedge ([#2791](https://github.com/HankHuang0516/EClaw/issues/2791)) ([9f414a7](https://github.com/HankHuang0516/EClaw/commit/9f414a731d6393672a0a4189c7b408c529ae5e12)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **promo:** embed daily eclaw video 2026-05-14 ([#2786](https://github.com/HankHuang0516/EClaw/issues/2786)) ([718a814](https://github.com/HankHuang0516/EClaw/commit/718a814ab16850bc2b33a1b303841e2c4378ecfa)), closes [#2782](https://github.com/HankHuang0516/EClaw/issues/2782) [#2693](https://github.com/HankHuang0516/EClaw/issues/2693)
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **info:** embed promo video at top of Quick Start tab ([#2797](https://github.com/HankHuang0516/EClaw/issues/2797)) ([047679f](https://github.com/HankHuang0516/EClaw/commit/047679fd57ab9949eaeacea414d5611e71afe041))
* **rental:** enforce strict rebind refunds ([#2703](https://github.com/HankHuang0516/EClaw/issues/2703)) ([a1859c5](https://github.com/HankHuang0516/EClaw/commit/a1859c50e6fb3991d7a8051491502d824a14a116))
* **portal:** group task chip actions ([#2825](https://github.com/HankHuang0516/EClaw/issues/2825)) ([5db5c59](https://github.com/HankHuang0516/EClaw/commit/5db5c59b32b8635f1412205faf0c2f9164d3d5d4))
* **portal:** info-guide-rules + info-guide-soul slide pair ([#2793](https://github.com/HankHuang0516/EClaw/issues/2793)) ([1c8bddc](https://github.com/HankHuang0516/EClaw/commit/1c8bddc4c185054b2b60088498e3d45509117127)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **chat:** link card previews to kanban ([#2754](https://github.com/HankHuang0516/EClaw/issues/2754)) ([2261240](https://github.com/HankHuang0516/EClaw/commit/22612402c2e95efb07246629e81a849be41ee9c7))
* **mission:** link notes to kanban cards ([#2723](https://github.com/HankHuang0516/EClaw/issues/2723)) ([b36dc18](https://github.com/HankHuang0516/EClaw/commit/b36dc18f3a8facf12e0b6046351c222f1e99dc55))
* **mindmap:** mission.html link to /portal/mindmap.html + deprecate /api/mission/mindmap ([#2685](https://github.com/HankHuang0516/EClaw/issues/2685)) ([11e297b](https://github.com/HankHuang0516/EClaw/commit/11e297bab1c9b56fcde3027d6500b7c58891bf18)), closes [#2680](https://github.com/HankHuang0516/EClaw/issues/2680) [#2684](https://github.com/HankHuang0516/EClaw/issues/2684)
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **settings:** per-entity nudge override UI (Phase 2) ([#2837](https://github.com/HankHuang0516/EClaw/issues/2837)) ([ea7662b](https://github.com/HankHuang0516/EClaw/commit/ea7662b0858882dae461e1387f711895924f9ab8)), closes [3/#4](https://github.com/HankHuang0516/EClaw/issues/4)
* **kanban:** per-entity nudge overrides (Phase 2 of card_e066cb6b) ([#2836](https://github.com/HankHuang0516/EClaw/issues/2836)) ([0425f80](https://github.com/HankHuang0516/EClaw/commit/0425f80bc1169c0d506b665659c8676695c45553))
* **avatar:** petdx render on card-holder my-cards (Phase 1b) ([#2621](https://github.com/HankHuang0516/EClaw/issues/2621)) ([f78ba8b](https://github.com/HankHuang0516/EClaw/commit/f78ba8b18acc426936ab6d8a82ca7541effea00d))
* **avatar:** petdx render on dashboard entity grid / org chart / bindings (Phase 1b) ([#2622](https://github.com/HankHuang0516/EClaw/issues/2622)) ([f417749](https://github.com/HankHuang0516/EClaw/commit/f41774914451048e8cd76e9ae30416a0642e173b)), closes [#2620](https://github.com/HankHuang0516/EClaw/issues/2620) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621)
* **avatar:** petdx render on kanban auto-assign / pulse / comment avatars (Phase 1b) ([#2624](https://github.com/HankHuang0516/EClaw/issues/2624)) ([6bff5f8](https://github.com/HankHuang0516/EClaw/commit/6bff5f80440d0bd91a6b1721cde9478d685c4d46))
* **avatar:** petdx render on mission skill/rule/soul entity dialogs (Phase 1b) ([#2623](https://github.com/HankHuang0516/EClaw/issues/2623)) ([129327b](https://github.com/HankHuang0516/EClaw/commit/129327bc7b91056659f1ab7e8d5e3f5260d951fb))
* **mindmap:** portal/mindmap.html force-graph prototype ([#129](https://github.com/HankHuang0516/EClaw/issues/129)) ([#2681](https://github.com/HankHuang0516/EClaw/issues/2681)) ([0f15e69](https://github.com/HankHuang0516/EClaw/commit/0f15e6930f0697c37fa08f3219edb8f9e499837f)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **portal:** redo nagoya trip page in professional tour-guide style ([#2691](https://github.com/HankHuang0516/EClaw/issues/2691)) ([b2378c0](https://github.com/HankHuang0516/EClaw/commit/b2378c06ee20fa9cccfdceceb1a4c9e0b3072f59))
* **i18n:** remove ms+hi orphan keys from i18n.js ([#2849](https://github.com/HankHuang0516/EClaw/issues/2849)) ([320176c](https://github.com/HankHuang0516/EClaw/commit/320176c06a3cfd8631e2a82ad02a6bd6a9af0389))
* **avatar:** render selected petdx companion in chat avatars ([#2620](https://github.com/HankHuang0516/EClaw/issues/2620)) ([0bdd046](https://github.com/HankHuang0516/EClaw/commit/0bdd046fe1b1c428e32edda366ff112c08927f4c))
* **home:** replace native home with WebView hosting dashboard.html ([#2634](https://github.com/HankHuang0516/EClaw/issues/2634)) ([e69ea81](https://github.com/HankHuang0516/EClaw/commit/e69ea8160c239b083a83d6dc83a4f1c3f901c863))
* **app:** route chat mission jumps through native tabs ([#2824](https://github.com/HankHuang0516/EClaw/issues/2824)) ([deb07b6](https://github.com/HankHuang0516/EClaw/commit/deb07b69a9ecca632fe27278de537f1d85234e94))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **chat:** support message deep links ([#2719](https://github.com/HankHuang0516/EClaw/issues/2719)) ([2dc0f1e](https://github.com/HankHuang0516/EClaw/commit/2dc0f1eeb259e1a0848db4a03186b989372cd91c))
* **mission:** support note deep links ([#2717](https://github.com/HankHuang0516/EClaw/issues/2717)) ([2efd3a5](https://github.com/HankHuang0516/EClaw/commit/2efd3a5e741217a07c0b0ac54a0ddd010e0ebe23))
* **share-chat:** twitter card + per-bot og:image/twitter:* in SSR ([#2609](https://github.com/HankHuang0516/EClaw/issues/2609)) ([6cdc853](https://github.com/HankHuang0516/EClaw/commit/6cdc853dc884cdb95bd47214942768981f218ae0))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))
* **settings:** wire petdx avatar into channel-account chips ([#2626](https://github.com/HankHuang0516/EClaw/issues/2626)) ([88aec77](https://github.com/HankHuang0516/EClaw/commit/88aec772628c240e97b336bb5820892ad632d1ae))
* **files:** wire petdx avatar into entity filter & per-file badges ([#2627](https://github.com/HankHuang0516/EClaw/issues/2627)) ([5b3e5cc](https://github.com/HankHuang0516/EClaw/commit/5b3e5cc542d9da69bb4e92500fd03a542ea33f00))
* **mindmap:** wrap hardcoded zh-TW UI strings with i18n t() ([#2607](https://github.com/HankHuang0516/EClaw/issues/2607)) ([166af87](https://github.com/HankHuang0516/EClaw/commit/166af8772b2121a24aaf34a83b3de970e9b3b571)), closes [#2606](https://github.com/HankHuang0516/EClaw/issues/2606)
* **i18n:** zh-TW backfill 8 keys (soft-pause + chat + invite + wallet) ([#2815](https://github.com/HankHuang0516/EClaw/issues/2815)) ([a2dd574](https://github.com/HankHuang0516/EClaw/commit/a2dd5743ce8d43a4b6ace9a2fd4b52568180d6c5))


### Performance Improvements

* **mindmap:** force-graph hardening for 1000/2000-node graphs ([#2684](https://github.com/HankHuang0516/EClaw/issues/2684)) ([da8b1c8](https://github.com/HankHuang0516/EClaw/commit/da8b1c8f947ab8bc8fa455c1962a91146623a1fc))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-21)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **notifications:** add kanban_done + kanban_done_auto toggles to Android Settings ([#2636](https://github.com/HankHuang0516/EClaw/issues/2636)) ([a710909](https://github.com/HankHuang0516/EClaw/commit/a7109095e3393b8564e7ef1b23d382a4fbb944b8))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **i18n:** ar block — fix 27 broken entries (CJK leaks + truncated HTML) ([#2851](https://github.com/HankHuang0516/EClaw/issues/2851)) ([5b19175](https://github.com/HankHuang0516/EClaw/commit/5b19175d712d00d16fcec00b749035c4beae7a5c))
* **chat:** atomic-load target bar (await contacts before first render) ([#2831](https://github.com/HankHuang0516/EClaw/issues/2831)) ([5f529e6](https://github.com/HankHuang0516/EClaw/commit/5f529e6b772eacc38ba1de69b44258a05f0d816a)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2](https://github.com/HankHuang0516/EClaw/issues/2)
* **rental:** bump handshake timeout to 60s + timeout-aware discovery fallback ([#2863](https://github.com/HankHuang0516/EClaw/issues/2863)) ([fd4322f](https://github.com/HankHuang0516/EClaw/commit/fd4322f8890f3c2dfca3acdae6a4b95f19c381f9)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **i18n:** clear batch 1 residual missing keys ([#2790](https://github.com/HankHuang0516/EClaw/issues/2790)) ([211030e](https://github.com/HankHuang0516/EClaw/commit/211030e0b0b6a865c11f0c4ed60dc4e356d43b7a))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **kanban:** comment input no longer overlaps last comment in card detail (PR [#2678](https://github.com/HankHuang0516/EClaw/issues/2678)) ([fba91fc](https://github.com/HankHuang0516/EClaw/commit/fba91fca15402b453a0db5ee857c0b16e6087055))
* **chat:** compact 20px avatar in target bar (App WebView only shows [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2](https://github.com/HankHuang0516/EClaw/issues/2)) ([#2830](https://github.com/HankHuang0516/EClaw/issues/2830)) ([42c7543](https://github.com/HankHuang0516/EClaw/commit/42c7543b4a78a7abf3f5f7535eb9bc6142cd0fe2)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **portal:** complete 401 redirect sweep + mobile UIUX truncation ([#2842](https://github.com/HankHuang0516/EClaw/issues/2842)) ([f9799ba](https://github.com/HankHuang0516/EClaw/commit/f9799ba42498b109f0a8a70e80836aa6da51e216)), closes [#2833](https://github.com/HankHuang0516/EClaw/issues/2833) [#2845](https://github.com/HankHuang0516/EClaw/issues/2845) [#2844](https://github.com/HankHuang0516/EClaw/issues/2844) [#2843](https://github.com/HankHuang0516/EClaw/issues/2843)
* **uiux:** continue qa mobile readability sweep ([#2854](https://github.com/HankHuang0516/EClaw/issues/2854)) ([57606ff](https://github.com/HankHuang0516/EClaw/commit/57606ffe3e543b07a026aacc53c4b470c9a7825b))
* **i18n:** cover dynamic portal wrapper keys ([#2807](https://github.com/HankHuang0516/EClaw/issues/2807)) ([4c711cc](https://github.com/HankHuang0516/EClaw/commit/4c711cc4009300ffe4e8933a98ee01cd0fdd6aeb))
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **rental:** don't pollute entity.message on push gateway timeout ([#2860](https://github.com/HankHuang0516/EClaw/issues/2860)) ([592ba44](https://github.com/HankHuang0516/EClaw/commit/592ba44f57536ee00011b6cbddaa6b129a7cbae9))
* **petdx:** drop dark-grey loading placeholder + preload sprite WEBP ([#2628](https://github.com/HankHuang0516/EClaw/issues/2628)) ([59cef38](https://github.com/HankHuang0516/EClaw/commit/59cef387bd69ca99d7d15c86a1364856d3849ad8)), closes [#1a1a1a](https://github.com/HankHuang0516/EClaw/issues/1a1a1a)
* **gateway-ws:** drop Origin header on server-to-server WS upgrade ([#2869](https://github.com/HankHuang0516/EClaw/issues/2869)) ([716dcf9](https://github.com/HankHuang0516/EClaw/commit/716dcf9d0834b17522bb9d894bad84bc142d1a19))
* **setup-scripts:** drop Origin header on server-to-server WS upgrade ([#2875](https://github.com/HankHuang0516/EClaw/issues/2875)) ([9d893b8](https://github.com/HankHuang0516/EClaw/commit/9d893b8e5eea4db275e450bf423903c156cd3e4b)), closes [#2869](https://github.com/HankHuang0516/EClaw/issues/2869)
* **security:** escape innerHTML in chat modal error messages ([#2819](https://github.com/HankHuang0516/EClaw/issues/2819)) ([dce07ad](https://github.com/HankHuang0516/EClaw/commit/dce07adde64795916dba977ae23e46f3371ce7ed)), closes [#2809](https://github.com/HankHuang0516/EClaw/issues/2809) [#2810](https://github.com/HankHuang0516/EClaw/issues/2810) [#2809](https://github.com/HankHuang0516/EClaw/issues/2809) [#2810](https://github.com/HankHuang0516/EClaw/issues/2810)
* **entities:** expose botSecret to owner so wallpaper service can poll companions ([#2615](https://github.com/HankHuang0516/EClaw/issues/2615)) ([04470fc](https://github.com/HankHuang0516/EClaw/commit/04470fce8f8c3fce2b1ba8b243e776606f107502))
* **rental:** expose owner_public_code in marketplace so plaza CTA can route ([#2616](https://github.com/HankHuang0516/EClaw/issues/2616)) ([4d1372f](https://github.com/HankHuang0516/EClaw/commit/4d1372f717d93cab65543e87c852e74e9fb67071)), closes [#2610](https://github.com/HankHuang0516/EClaw/issues/2610)
* **mindmap:** fallback to device scope when entityId is null ([#2728](https://github.com/HankHuang0516/EClaw/issues/2728)) ([7572312](https://github.com/HankHuang0516/EClaw/commit/7572312433d3d75fc245eda48a28919ce14bd927))
* **i18n:** fill Spanish drift keys ([#2751](https://github.com/HankHuang0516/EClaw/issues/2751)) ([0ad0ee5](https://github.com/HankHuang0516/EClaw/commit/0ad0ee55f7fac3e6ac46d891539950dab4d553cc))
* **portal:** fit embedded org chart to mobile viewport ([#2674](https://github.com/HankHuang0516/EClaw/issues/2674)) ([1c4e1b4](https://github.com/HankHuang0516/EClaw/commit/1c4e1b413ea7027b4cd4b8ecda981b0d0e12e66b))
* **i18n:** fix 6 trailing-comma syntax errors in 10-locale batch ([#2771](https://github.com/HankHuang0516/EClaw/issues/2771)) ([b27c6ca](https://github.com/HankHuang0516/EClaw/commit/b27c6ca204bf813e406c54ce3a2532a5f1f031b3))
* **kanban:** GET card returns latest 50 comments + comments endpoint exposes total ([#2816](https://github.com/HankHuang0516/EClaw/issues/2816)) ([c4d83f7](https://github.com/HankHuang0516/EClaw/commit/c4d83f777a1cd26aea0936e4316aa35c52822eef))
* **sharechat:** guest verify-email modal + disabled Send for unverified ([#2865](https://github.com/HankHuang0516/EClaw/issues/2865)) ([cb3b061](https://github.com/HankHuang0516/EClaw/commit/cb3b0614e0f6160417d907753e66eceb2d666802))
* **uiux:** harden chat previews and roster preview ([#2769](https://github.com/HankHuang0516/EClaw/issues/2769)) ([466d4d3](https://github.com/HankHuang0516/EClaw/commit/466d4d3ef81c628d3f58db64323946053d7bf61c))
* **mention-parser:** ignore @-mentions inside markdown code spans ([#2645](https://github.com/HankHuang0516/EClaw/issues/2645)) ([8da19d4](https://github.com/HankHuang0516/EClaw/commit/8da19d4a79ceb4152bf2144ee0847c61ce3e1def)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **kanban:** lazy-load dependency chips via IntersectionObserver ([#2632](https://github.com/HankHuang0516/EClaw/issues/2632)) ([20586b4](https://github.com/HankHuang0516/EClaw/commit/20586b43357335f9eb6a190c02d58c8e36b58aba)), closes [#2631](https://github.com/HankHuang0516/EClaw/issues/2631)
* **kanban:** make card sorting deterministic ([#2756](https://github.com/HankHuang0516/EClaw/issues/2756)) ([48e2117](https://github.com/HankHuang0516/EClaw/commit/48e2117b64e37f05dc635e0a3b67bfd43cbe48f5))
* **org-chart:** notify affected bots on hierarchy change ([#2812](https://github.com/HankHuang0516/EClaw/issues/2812)) ([55675fd](https://github.com/HankHuang0516/EClaw/commit/55675fdf4487494d729a29524b32bd81b756a00c)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** notify reviewer on manual /move → review ([#2753](https://github.com/HankHuang0516/EClaw/issues/2753)) ([6cbbb4e](https://github.com/HankHuang0516/EClaw/commit/6cbbb4ee8c0d4d8ad54df2e9b5faaa3699bd530f))
* **wallpaper:** off-load spritesheet fetch to IO so per-petdx sprites actually render ([#2618](https://github.com/HankHuang0516/EClaw/issues/2618)) ([61b832c](https://github.com/HankHuang0516/EClaw/commit/61b832c9fa8a1d0caab810ccc942d85c63349267)), closes [#2615](https://github.com/HankHuang0516/EClaw/issues/2615) [#2577](https://github.com/HankHuang0516/EClaw/issues/2577)
* **security:** patch P0 sanitize-html XSS + P1 protobufjs + exam.html XSS ([#2829](https://github.com/HankHuang0516/EClaw/issues/2829)) ([c71b871](https://github.com/HankHuang0516/EClaw/commit/c71b871a045887375dd0d26d1a3280a0891a89ad))
* **security:** patch ws uninitialized memory disclosure (GHSA-58qx-3vcg-4xpx) ([#2872](https://github.com/HankHuang0516/EClaw/issues/2872)) ([2523d15](https://github.com/HankHuang0516/EClaw/commit/2523d154bbe501a7cc086340f7a07ece3abfa69b))
* **portal:** petdx-browser cookie-session fallback for device-login ([#2757](https://github.com/HankHuang0516/EClaw/issues/2757)) ([ca275f4](https://github.com/HankHuang0516/EClaw/commit/ca275f4519835da0c7ad71c588908a18f6f138d8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **api:** platform-stats 500 + entity/lookup publicCode alias ([#2809](https://github.com/HankHuang0516/EClaw/issues/2809), [#2810](https://github.com/HankHuang0516/EClaw/issues/2810)) ([#2818](https://github.com/HankHuang0516/EClaw/issues/2818)) ([f99fd17](https://github.com/HankHuang0516/EClaw/commit/f99fd17b2b1c32d88daa2510ff66d714c1a53edc))
* **i18n:** positional format specifiers for feedback_result_logs (7 locales) ([#2597](https://github.com/HankHuang0516/EClaw/issues/2597)) ([21aedc7](https://github.com/HankHuang0516/EClaw/commit/21aedc7eebc7a2839e340136f38dfdfd4dabb9dc))
* **avatar-petdx:** preserve descriptor across transient API failures (flicker) ([#2625](https://github.com/HankHuang0516/EClaw/issues/2625)) ([7b1c606](https://github.com/HankHuang0516/EClaw/commit/7b1c606514f7698d72ec95cf6c556e4043966186))
* **chat:** preserve scroll anchor while reading history ([#2693](https://github.com/HankHuang0516/EClaw/issues/2693)) ([945fdb7](https://github.com/HankHuang0516/EClaw/commit/945fdb7192b791b31882e1e75568dd8b11e4686f))
* **promo:** pull video embed from /promo-chat-avatar.html ([#2724](https://github.com/HankHuang0516/EClaw/issues/2724)) ([2afabc8](https://github.com/HankHuang0516/EClaw/commit/2afabc8c5ff8b25218a7cb857e8adfa572c8e9d5))
* **kanban:** realign stale recurring schedules ([#2785](https://github.com/HankHuang0516/EClaw/issues/2785)) ([ab8ee25](https://github.com/HankHuang0516/EClaw/commit/ab8ee250a9b37f3d3e838bb01d8866c8d2b78231))
* **portal:** reduce QA-discovered request fanout ([#2656](https://github.com/HankHuang0516/EClaw/issues/2656)) ([1e46d6b](https://github.com/HankHuang0516/EClaw/commit/1e46d6bab61e58c65b452b6503d953f8dddeee75))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **portal:** remove org chart fit scale floor ([#2676](https://github.com/HankHuang0516/EClaw/issues/2676)) ([0f01606](https://github.com/HankHuang0516/EClaw/commit/0f016068b963bb5f800a02f28817c7174979d913))
* **rental:** remove phantom 'webhook test push' step from BIND_COMPLETE ([#2864](https://github.com/HankHuang0516/EClaw/issues/2864)) ([47f4a3e](https://github.com/HankHuang0516/EClaw/commit/47f4a3edf76aa95ebd06d8713cd44fda6eef9b5d))
* **i18n:** rename mm_empty_title → mm_state_empty_title in mindmap.html ([#2683](https://github.com/HankHuang0516/EClaw/issues/2683)) ([c79c109](https://github.com/HankHuang0516/EClaw/commit/c79c109bea23142e8a6d9ace976d105af1280ec9))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **chat:** render mention avatars with companion renderer ([#2633](https://github.com/HankHuang0516/EClaw/issues/2633)) ([03e205f](https://github.com/HankHuang0516/EClaw/commit/03e205f663ecd2c2f443d4009dd5af0093f0bbbb))
* **kanban:** reserve mobile comments panel height ([#2782](https://github.com/HankHuang0516/EClaw/issues/2782)) ([ce8662d](https://github.com/HankHuang0516/EClaw/commit/ce8662d362422fdd25037f1deb61dbed9425e2f9))
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* scheduled audit 2026-05-13 — 6 bugs, XSS, i18n ([#2668](https://github.com/HankHuang0516/EClaw/issues/2668)) ([21dd513](https://github.com/HankHuang0516/EClaw/commit/21dd513b4464738de29164265437435ba6cc4817)), closes [#2605](https://github.com/HankHuang0516/EClaw/issues/2605) [#2608](https://github.com/HankHuang0516/EClaw/issues/2608) [#2600](https://github.com/HankHuang0516/EClaw/issues/2600) [#2599](https://github.com/HankHuang0516/EClaw/issues/2599) [#2598](https://github.com/HankHuang0516/EClaw/issues/2598)
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **chat:** smart-chip preview falls back to inline c.comments when /comments fails (PR [#2677](https://github.com/HankHuang0516/EClaw/issues/2677)) ([7f4dffd](https://github.com/HankHuang0516/EClaw/commit/7f4dffd2c83ea86f296b8fa0610f0e67c9f1af11))
* **kanban:** stabilize comment detail viewport ([#2796](https://github.com/HankHuang0516/EClaw/issues/2796)) ([0a10aad](https://github.com/HankHuang0516/EClaw/commit/0a10aadb5a5b12ff23454c16d5c88183b94ad7d7))
* **wallpaper:** stop Android live wallpaper flashing default lobster on companion change ([#2629](https://github.com/HankHuang0516/EClaw/issues/2629)) ([8b4f66f](https://github.com/HankHuang0516/EClaw/commit/8b4f66fcb335bf43128f924b761b6337c817095b)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **chat:** stop chat.html bouncing to dashboard via /api/rental/health-status 401 race ([#2833](https://github.com/HankHuang0516/EClaw/issues/2833)) ([c422406](https://github.com/HankHuang0516/EClaw/commit/c4224067cdcfe7f3e22ab95007c7563dac4196ac))
* **mentions:** support same-device CJK display-name tags ([#2874](https://github.com/HankHuang0516/EClaw/issues/2874)) ([b8f61be](https://github.com/HankHuang0516/EClaw/commit/b8f61be9a3962fef75dd32ea34e8900880dafaf9))
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **app:** WebView pages honor app-selected locale via ?lang= URL param ([#2672](https://github.com/HankHuang0516/EClaw/issues/2672)) ([8ed8757](https://github.com/HankHuang0516/EClaw/commit/8ed8757aec5bf214e837cc0d81bf2b23f1993a91)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **share-chat:** wire rich CTA actions to msgInput ([#2867](https://github.com/HankHuang0516/EClaw/issues/2867)) ([df23b11](https://github.com/HankHuang0516/EClaw/commit/df23b1147d34c59a644a145bbd87c18b96400acc))


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* **community:** 1-click chat button on bot cards + utm tagging ([#2610](https://github.com/HankHuang0516/EClaw/issues/2610)) ([eee97b0](https://github.com/HankHuang0516/EClaw/commit/eee97b0e2e4e74945ec24f218a69a52800b97a66))
* **chat:** accept ?messageId= as deep-link alias ([#2838](https://github.com/HankHuang0516/EClaw/issues/2838)) ([1785a87](https://github.com/HankHuang0516/EClaw/commit/1785a87310426637fd10df83754fb9924c45207f))
* **chat:** add avatar size preference ([#2714](https://github.com/HankHuang0516/EClaw/issues/2714)) ([6fe164a](https://github.com/HankHuang0516/EClaw/commit/6fe164ad8b22fa576d2dd9ad37c0d9fc295b5a83))
* **dashboard:** add Claude and Codex channel guides ([#2640](https://github.com/HankHuang0516/EClaw/issues/2640)) ([c64e4c4](https://github.com/HankHuang0516/EClaw/commit/c64e4c4afc78db58c5cd578f00486dd7b2fd3311))
* **dashboard:** add Claude Code channel guide card ([#2667](https://github.com/HankHuang0516/EClaw/issues/2667)) ([d70d75c](https://github.com/HankHuang0516/EClaw/commit/d70d75c0c8caa8a540358a9aab4556b8c1927a5c))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* **kanban:** add device-scoped card tags ([#2773](https://github.com/HankHuang0516/EClaw/issues/2773)) ([53a387e](https://github.com/HankHuang0516/EClaw/commit/53a387e67ba7bb4f6bed1c427000c4ae8666577a))
* **portal:** add entity selector to petdx-browser ([#2602](https://github.com/HankHuang0516/EClaw/issues/2602)) ([3fa067e](https://github.com/HankHuang0516/EClaw/commit/3fa067e00b38829b48a37cecd33ee81a9a1122d9))
* **kanban:** add explicit card links ([#2721](https://github.com/HankHuang0516/EClaw/issues/2721)) ([ef9f812](https://github.com/HankHuang0516/EClaw/commit/ef9f812a3fcf39efd07fd158ce90951bdd045ac7))
* **kanban:** add explicit done-card reopen flow ([#2801](https://github.com/HankHuang0516/EClaw/issues/2801)) ([5080aac](https://github.com/HankHuang0516/EClaw/commit/5080aacb75047c0deaa379ee708ec85465afd57c))
* **mindmap:** add GET /api/mindmap/graph force-graph projection ([#2680](https://github.com/HankHuang0516/EClaw/issues/2680)) ([a00b2e7](https://github.com/HankHuang0516/EClaw/commit/a00b2e775af2c4c98cd157f760ad87aeeee469f0)), closes [#2679](https://github.com/HankHuang0516/EClaw/issues/2679) [#2679](https://github.com/HankHuang0516/EClaw/issues/2679)
* **dashboard:** add Hermes channel promo card ([#2708](https://github.com/HankHuang0516/EClaw/issues/2708)) ([337aca1](https://github.com/HankHuang0516/EClaw/commit/337aca153d5a1cd7e888c065f00ae54db7872d91))
* **rental:** add listing soft pause ([#2781](https://github.com/HankHuang0516/EClaw/issues/2781)) ([6586b72](https://github.com/HankHuang0516/EClaw/commit/6586b72717ddb1637d91cd3242c8d2ff554f62b4))
* **portal:** add Nagoya 5D4N trip static cross-ref page ([#2689](https://github.com/HankHuang0516/EClaw/issues/2689)) ([2e0efb6](https://github.com/HankHuang0516/EClaw/commit/2e0efb6dcdaff52226cc8854a96747000b12bdff))
* **portal:** add Nagoya trip map links and image lightbox ([#2821](https://github.com/HankHuang0516/EClaw/issues/2821)) ([3e40955](https://github.com/HankHuang0516/EClaw/commit/3e40955650a05f45a6b9f7e39e73847705424a03))
* **portal/nagoya:** add parking shortcut buttons next to itinerary places ([#2826](https://github.com/HankHuang0516/EClaw/issues/2826)) ([63968c5](https://github.com/HankHuang0516/EClaw/commit/63968c554d046afc8d978de74e3aacbf7700500d))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **settings:** add rental roster management preview ([#2758](https://github.com/HankHuang0516/EClaw/issues/2758)) ([9706e59](https://github.com/HankHuang0516/EClaw/commit/9706e59ded140a90a6e02348124282bc69d89001))
* **rental:** add renter health chat indicator ([#2690](https://github.com/HankHuang0516/EClaw/issues/2690)) ([36cd2e9](https://github.com/HankHuang0516/EClaw/commit/36cd2e9802be4c7ebb03d3024617fa74aca48ffd))
* **ios:** add Tutorial & Intro entry in Settings ([#2800](https://github.com/HankHuang0516/EClaw/issues/2800)) ([ed83e51](https://github.com/HankHuang0516/EClaw/commit/ed83e51d043bf4cd5865f38dc95a91ed54820d6c))
* **landing:** add Watch Full Demo CTA below hero video ([#2799](https://github.com/HankHuang0516/EClaw/issues/2799)) ([66107c9](https://github.com/HankHuang0516/EClaw/commit/66107c954727551fd34d989a4674daaad9b63968))
* **footer:** add Watch Intro Video link in Info column ([#2798](https://github.com/HankHuang0516/EClaw/issues/2798)) ([d7c6d59](https://github.com/HankHuang0516/EClaw/commit/d7c6d596b69c6a5b257bf1f7a792a407ef9712ad))
* **i18n:** ar iter-2 — fill 623 missing keys against en source ([#2847](https://github.com/HankHuang0516/EClaw/issues/2847)) ([ee94a7a](https://github.com/HankHuang0516/EClaw/commit/ee94a7ae6812b5163efe4284ee4907ca32302f5c))
* **kanban:** backlog launch-gate flag to suppress L1/L2/L3 escalation ([#2855](https://github.com/HankHuang0516/EClaw/issues/2855)) ([cb8bf1b](https://github.com/HankHuang0516/EClaw/commit/cb8bf1bb6421f25214f65e129a8cadccc49cc266)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#4](https://github.com/HankHuang0516/EClaw/issues/4) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **companion:** bridge crafter-station/petdex gallery (1784 pets) ([#2601](https://github.com/HankHuang0516/EClaw/issues/2601)) ([2e245be](https://github.com/HankHuang0516/EClaw/commit/2e245bea6dd47ea7361b927d389188a3c23b6bb3))
* **promo:** chat avatar size feature landing page (self-hosted MP4) ([#2722](https://github.com/HankHuang0516/EClaw/issues/2722)) ([3852210](https://github.com/HankHuang0516/EClaw/commit/3852210d355704d018e3daca6b5f9512a011b210)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **kanban:** cron-spawn jitter + lane backpressure to prevent same-tick wedge ([#2791](https://github.com/HankHuang0516/EClaw/issues/2791)) ([9f414a7](https://github.com/HankHuang0516/EClaw/commit/9f414a731d6393672a0a4189c7b408c529ae5e12)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **promo:** embed daily eclaw video 2026-05-14 ([#2786](https://github.com/HankHuang0516/EClaw/issues/2786)) ([718a814](https://github.com/HankHuang0516/EClaw/commit/718a814ab16850bc2b33a1b303841e2c4378ecfa)), closes [#2782](https://github.com/HankHuang0516/EClaw/issues/2782) [#2693](https://github.com/HankHuang0516/EClaw/issues/2693)
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **info:** embed promo video at top of Quick Start tab ([#2797](https://github.com/HankHuang0516/EClaw/issues/2797)) ([047679f](https://github.com/HankHuang0516/EClaw/commit/047679fd57ab9949eaeacea414d5611e71afe041))
* **rental:** enforce strict rebind refunds ([#2703](https://github.com/HankHuang0516/EClaw/issues/2703)) ([a1859c5](https://github.com/HankHuang0516/EClaw/commit/a1859c50e6fb3991d7a8051491502d824a14a116))
* **portal:** group task chip actions ([#2825](https://github.com/HankHuang0516/EClaw/issues/2825)) ([5db5c59](https://github.com/HankHuang0516/EClaw/commit/5db5c59b32b8635f1412205faf0c2f9164d3d5d4))
* **portal:** info-guide-rules + info-guide-soul slide pair ([#2793](https://github.com/HankHuang0516/EClaw/issues/2793)) ([1c8bddc](https://github.com/HankHuang0516/EClaw/commit/1c8bddc4c185054b2b60088498e3d45509117127)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **chat:** link card previews to kanban ([#2754](https://github.com/HankHuang0516/EClaw/issues/2754)) ([2261240](https://github.com/HankHuang0516/EClaw/commit/22612402c2e95efb07246629e81a849be41ee9c7))
* **mission:** link notes to kanban cards ([#2723](https://github.com/HankHuang0516/EClaw/issues/2723)) ([b36dc18](https://github.com/HankHuang0516/EClaw/commit/b36dc18f3a8facf12e0b6046351c222f1e99dc55))
* **mindmap:** mission.html link to /portal/mindmap.html + deprecate /api/mission/mindmap ([#2685](https://github.com/HankHuang0516/EClaw/issues/2685)) ([11e297b](https://github.com/HankHuang0516/EClaw/commit/11e297bab1c9b56fcde3027d6500b7c58891bf18)), closes [#2680](https://github.com/HankHuang0516/EClaw/issues/2680) [#2684](https://github.com/HankHuang0516/EClaw/issues/2684)
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **settings:** per-entity nudge override UI (Phase 2) ([#2837](https://github.com/HankHuang0516/EClaw/issues/2837)) ([ea7662b](https://github.com/HankHuang0516/EClaw/commit/ea7662b0858882dae461e1387f711895924f9ab8)), closes [3/#4](https://github.com/HankHuang0516/EClaw/issues/4)
* **kanban:** per-entity nudge overrides (Phase 2 of card_e066cb6b) ([#2836](https://github.com/HankHuang0516/EClaw/issues/2836)) ([0425f80](https://github.com/HankHuang0516/EClaw/commit/0425f80bc1169c0d506b665659c8676695c45553))
* **avatar:** petdx render on card-holder my-cards (Phase 1b) ([#2621](https://github.com/HankHuang0516/EClaw/issues/2621)) ([f78ba8b](https://github.com/HankHuang0516/EClaw/commit/f78ba8b18acc426936ab6d8a82ca7541effea00d))
* **avatar:** petdx render on dashboard entity grid / org chart / bindings (Phase 1b) ([#2622](https://github.com/HankHuang0516/EClaw/issues/2622)) ([f417749](https://github.com/HankHuang0516/EClaw/commit/f41774914451048e8cd76e9ae30416a0642e173b)), closes [#2620](https://github.com/HankHuang0516/EClaw/issues/2620) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621)
* **avatar:** petdx render on kanban auto-assign / pulse / comment avatars (Phase 1b) ([#2624](https://github.com/HankHuang0516/EClaw/issues/2624)) ([6bff5f8](https://github.com/HankHuang0516/EClaw/commit/6bff5f80440d0bd91a6b1721cde9478d685c4d46))
* **avatar:** petdx render on mission skill/rule/soul entity dialogs (Phase 1b) ([#2623](https://github.com/HankHuang0516/EClaw/issues/2623)) ([129327b](https://github.com/HankHuang0516/EClaw/commit/129327bc7b91056659f1ab7e8d5e3f5260d951fb))
* **mindmap:** portal/mindmap.html force-graph prototype ([#129](https://github.com/HankHuang0516/EClaw/issues/129)) ([#2681](https://github.com/HankHuang0516/EClaw/issues/2681)) ([0f15e69](https://github.com/HankHuang0516/EClaw/commit/0f15e6930f0697c37fa08f3219edb8f9e499837f)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **portal:** redo nagoya trip page in professional tour-guide style ([#2691](https://github.com/HankHuang0516/EClaw/issues/2691)) ([b2378c0](https://github.com/HankHuang0516/EClaw/commit/b2378c06ee20fa9cccfdceceb1a4c9e0b3072f59))
* **i18n:** remove ms+hi orphan keys from i18n.js ([#2849](https://github.com/HankHuang0516/EClaw/issues/2849)) ([320176c](https://github.com/HankHuang0516/EClaw/commit/320176c06a3cfd8631e2a82ad02a6bd6a9af0389))
* **avatar:** render selected petdx companion in chat avatars ([#2620](https://github.com/HankHuang0516/EClaw/issues/2620)) ([0bdd046](https://github.com/HankHuang0516/EClaw/commit/0bdd046fe1b1c428e32edda366ff112c08927f4c))
* **home:** replace native home with WebView hosting dashboard.html ([#2634](https://github.com/HankHuang0516/EClaw/issues/2634)) ([e69ea81](https://github.com/HankHuang0516/EClaw/commit/e69ea8160c239b083a83d6dc83a4f1c3f901c863))
* **app:** route chat mission jumps through native tabs ([#2824](https://github.com/HankHuang0516/EClaw/issues/2824)) ([deb07b6](https://github.com/HankHuang0516/EClaw/commit/deb07b69a9ecca632fe27278de537f1d85234e94))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **chat:** support message deep links ([#2719](https://github.com/HankHuang0516/EClaw/issues/2719)) ([2dc0f1e](https://github.com/HankHuang0516/EClaw/commit/2dc0f1eeb259e1a0848db4a03186b989372cd91c))
* **mission:** support note deep links ([#2717](https://github.com/HankHuang0516/EClaw/issues/2717)) ([2efd3a5](https://github.com/HankHuang0516/EClaw/commit/2efd3a5e741217a07c0b0ac54a0ddd010e0ebe23))
* **share-chat:** twitter card + per-bot og:image/twitter:* in SSR ([#2609](https://github.com/HankHuang0516/EClaw/issues/2609)) ([6cdc853](https://github.com/HankHuang0516/EClaw/commit/6cdc853dc884cdb95bd47214942768981f218ae0))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))
* **settings:** wire petdx avatar into channel-account chips ([#2626](https://github.com/HankHuang0516/EClaw/issues/2626)) ([88aec77](https://github.com/HankHuang0516/EClaw/commit/88aec772628c240e97b336bb5820892ad632d1ae))
* **files:** wire petdx avatar into entity filter & per-file badges ([#2627](https://github.com/HankHuang0516/EClaw/issues/2627)) ([5b3e5cc](https://github.com/HankHuang0516/EClaw/commit/5b3e5cc542d9da69bb4e92500fd03a542ea33f00))
* **mindmap:** wrap hardcoded zh-TW UI strings with i18n t() ([#2607](https://github.com/HankHuang0516/EClaw/issues/2607)) ([166af87](https://github.com/HankHuang0516/EClaw/commit/166af8772b2121a24aaf34a83b3de970e9b3b571)), closes [#2606](https://github.com/HankHuang0516/EClaw/issues/2606)
* **i18n:** zh-TW backfill 8 keys (soft-pause + chat + invite + wallet) ([#2815](https://github.com/HankHuang0516/EClaw/issues/2815)) ([a2dd574](https://github.com/HankHuang0516/EClaw/commit/a2dd5743ce8d43a4b6ace9a2fd4b52568180d6c5))


### Performance Improvements

* **mindmap:** force-graph hardening for 1000/2000-node graphs ([#2684](https://github.com/HankHuang0516/EClaw/issues/2684)) ([da8b1c8](https://github.com/HankHuang0516/EClaw/commit/da8b1c8f947ab8bc8fa455c1962a91146623a1fc))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-21)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **notifications:** add kanban_done + kanban_done_auto toggles to Android Settings ([#2636](https://github.com/HankHuang0516/EClaw/issues/2636)) ([a710909](https://github.com/HankHuang0516/EClaw/commit/a7109095e3393b8564e7ef1b23d382a4fbb944b8))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **i18n:** ar block — fix 27 broken entries (CJK leaks + truncated HTML) ([#2851](https://github.com/HankHuang0516/EClaw/issues/2851)) ([5b19175](https://github.com/HankHuang0516/EClaw/commit/5b19175d712d00d16fcec00b749035c4beae7a5c))
* **chat:** atomic-load target bar (await contacts before first render) ([#2831](https://github.com/HankHuang0516/EClaw/issues/2831)) ([5f529e6](https://github.com/HankHuang0516/EClaw/commit/5f529e6b772eacc38ba1de69b44258a05f0d816a)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2](https://github.com/HankHuang0516/EClaw/issues/2)
* **rental:** bump handshake timeout to 60s + timeout-aware discovery fallback ([#2863](https://github.com/HankHuang0516/EClaw/issues/2863)) ([fd4322f](https://github.com/HankHuang0516/EClaw/commit/fd4322f8890f3c2dfca3acdae6a4b95f19c381f9)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **i18n:** clear batch 1 residual missing keys ([#2790](https://github.com/HankHuang0516/EClaw/issues/2790)) ([211030e](https://github.com/HankHuang0516/EClaw/commit/211030e0b0b6a865c11f0c4ed60dc4e356d43b7a))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **kanban:** comment input no longer overlaps last comment in card detail (PR [#2678](https://github.com/HankHuang0516/EClaw/issues/2678)) ([fba91fc](https://github.com/HankHuang0516/EClaw/commit/fba91fca15402b453a0db5ee857c0b16e6087055))
* **chat:** compact 20px avatar in target bar (App WebView only shows [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2](https://github.com/HankHuang0516/EClaw/issues/2)) ([#2830](https://github.com/HankHuang0516/EClaw/issues/2830)) ([42c7543](https://github.com/HankHuang0516/EClaw/commit/42c7543b4a78a7abf3f5f7535eb9bc6142cd0fe2)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **portal:** complete 401 redirect sweep + mobile UIUX truncation ([#2842](https://github.com/HankHuang0516/EClaw/issues/2842)) ([f9799ba](https://github.com/HankHuang0516/EClaw/commit/f9799ba42498b109f0a8a70e80836aa6da51e216)), closes [#2833](https://github.com/HankHuang0516/EClaw/issues/2833) [#2845](https://github.com/HankHuang0516/EClaw/issues/2845) [#2844](https://github.com/HankHuang0516/EClaw/issues/2844) [#2843](https://github.com/HankHuang0516/EClaw/issues/2843)
* **uiux:** continue qa mobile readability sweep ([#2854](https://github.com/HankHuang0516/EClaw/issues/2854)) ([57606ff](https://github.com/HankHuang0516/EClaw/commit/57606ffe3e543b07a026aacc53c4b470c9a7825b))
* **i18n:** cover dynamic portal wrapper keys ([#2807](https://github.com/HankHuang0516/EClaw/issues/2807)) ([4c711cc](https://github.com/HankHuang0516/EClaw/commit/4c711cc4009300ffe4e8933a98ee01cd0fdd6aeb))
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **rental:** don't pollute entity.message on push gateway timeout ([#2860](https://github.com/HankHuang0516/EClaw/issues/2860)) ([592ba44](https://github.com/HankHuang0516/EClaw/commit/592ba44f57536ee00011b6cbddaa6b129a7cbae9))
* **petdx:** drop dark-grey loading placeholder + preload sprite WEBP ([#2628](https://github.com/HankHuang0516/EClaw/issues/2628)) ([59cef38](https://github.com/HankHuang0516/EClaw/commit/59cef387bd69ca99d7d15c86a1364856d3849ad8)), closes [#1a1a1a](https://github.com/HankHuang0516/EClaw/issues/1a1a1a)
* **gateway-ws:** drop Origin header on server-to-server WS upgrade ([#2869](https://github.com/HankHuang0516/EClaw/issues/2869)) ([716dcf9](https://github.com/HankHuang0516/EClaw/commit/716dcf9d0834b17522bb9d894bad84bc142d1a19))
* **security:** escape innerHTML in chat modal error messages ([#2819](https://github.com/HankHuang0516/EClaw/issues/2819)) ([dce07ad](https://github.com/HankHuang0516/EClaw/commit/dce07adde64795916dba977ae23e46f3371ce7ed)), closes [#2809](https://github.com/HankHuang0516/EClaw/issues/2809) [#2810](https://github.com/HankHuang0516/EClaw/issues/2810) [#2809](https://github.com/HankHuang0516/EClaw/issues/2809) [#2810](https://github.com/HankHuang0516/EClaw/issues/2810)
* **entities:** expose botSecret to owner so wallpaper service can poll companions ([#2615](https://github.com/HankHuang0516/EClaw/issues/2615)) ([04470fc](https://github.com/HankHuang0516/EClaw/commit/04470fce8f8c3fce2b1ba8b243e776606f107502))
* **rental:** expose owner_public_code in marketplace so plaza CTA can route ([#2616](https://github.com/HankHuang0516/EClaw/issues/2616)) ([4d1372f](https://github.com/HankHuang0516/EClaw/commit/4d1372f717d93cab65543e87c852e74e9fb67071)), closes [#2610](https://github.com/HankHuang0516/EClaw/issues/2610)
* **mindmap:** fallback to device scope when entityId is null ([#2728](https://github.com/HankHuang0516/EClaw/issues/2728)) ([7572312](https://github.com/HankHuang0516/EClaw/commit/7572312433d3d75fc245eda48a28919ce14bd927))
* **i18n:** fill Spanish drift keys ([#2751](https://github.com/HankHuang0516/EClaw/issues/2751)) ([0ad0ee5](https://github.com/HankHuang0516/EClaw/commit/0ad0ee55f7fac3e6ac46d891539950dab4d553cc))
* **portal:** fit embedded org chart to mobile viewport ([#2674](https://github.com/HankHuang0516/EClaw/issues/2674)) ([1c4e1b4](https://github.com/HankHuang0516/EClaw/commit/1c4e1b413ea7027b4cd4b8ecda981b0d0e12e66b))
* **i18n:** fix 6 trailing-comma syntax errors in 10-locale batch ([#2771](https://github.com/HankHuang0516/EClaw/issues/2771)) ([b27c6ca](https://github.com/HankHuang0516/EClaw/commit/b27c6ca204bf813e406c54ce3a2532a5f1f031b3))
* **kanban:** GET card returns latest 50 comments + comments endpoint exposes total ([#2816](https://github.com/HankHuang0516/EClaw/issues/2816)) ([c4d83f7](https://github.com/HankHuang0516/EClaw/commit/c4d83f777a1cd26aea0936e4316aa35c52822eef))
* **sharechat:** guest verify-email modal + disabled Send for unverified ([#2865](https://github.com/HankHuang0516/EClaw/issues/2865)) ([cb3b061](https://github.com/HankHuang0516/EClaw/commit/cb3b0614e0f6160417d907753e66eceb2d666802))
* **uiux:** harden chat previews and roster preview ([#2769](https://github.com/HankHuang0516/EClaw/issues/2769)) ([466d4d3](https://github.com/HankHuang0516/EClaw/commit/466d4d3ef81c628d3f58db64323946053d7bf61c))
* **mention-parser:** ignore @-mentions inside markdown code spans ([#2645](https://github.com/HankHuang0516/EClaw/issues/2645)) ([8da19d4](https://github.com/HankHuang0516/EClaw/commit/8da19d4a79ceb4152bf2144ee0847c61ce3e1def)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **kanban:** lazy-load dependency chips via IntersectionObserver ([#2632](https://github.com/HankHuang0516/EClaw/issues/2632)) ([20586b4](https://github.com/HankHuang0516/EClaw/commit/20586b43357335f9eb6a190c02d58c8e36b58aba)), closes [#2631](https://github.com/HankHuang0516/EClaw/issues/2631)
* **kanban:** make card sorting deterministic ([#2756](https://github.com/HankHuang0516/EClaw/issues/2756)) ([48e2117](https://github.com/HankHuang0516/EClaw/commit/48e2117b64e37f05dc635e0a3b67bfd43cbe48f5))
* **org-chart:** notify affected bots on hierarchy change ([#2812](https://github.com/HankHuang0516/EClaw/issues/2812)) ([55675fd](https://github.com/HankHuang0516/EClaw/commit/55675fdf4487494d729a29524b32bd81b756a00c)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** notify reviewer on manual /move → review ([#2753](https://github.com/HankHuang0516/EClaw/issues/2753)) ([6cbbb4e](https://github.com/HankHuang0516/EClaw/commit/6cbbb4ee8c0d4d8ad54df2e9b5faaa3699bd530f))
* **wallpaper:** off-load spritesheet fetch to IO so per-petdx sprites actually render ([#2618](https://github.com/HankHuang0516/EClaw/issues/2618)) ([61b832c](https://github.com/HankHuang0516/EClaw/commit/61b832c9fa8a1d0caab810ccc942d85c63349267)), closes [#2615](https://github.com/HankHuang0516/EClaw/issues/2615) [#2577](https://github.com/HankHuang0516/EClaw/issues/2577)
* **security:** patch P0 sanitize-html XSS + P1 protobufjs + exam.html XSS ([#2829](https://github.com/HankHuang0516/EClaw/issues/2829)) ([c71b871](https://github.com/HankHuang0516/EClaw/commit/c71b871a045887375dd0d26d1a3280a0891a89ad))
* **security:** patch ws uninitialized memory disclosure (GHSA-58qx-3vcg-4xpx) ([#2872](https://github.com/HankHuang0516/EClaw/issues/2872)) ([2523d15](https://github.com/HankHuang0516/EClaw/commit/2523d154bbe501a7cc086340f7a07ece3abfa69b))
* **portal:** petdx-browser cookie-session fallback for device-login ([#2757](https://github.com/HankHuang0516/EClaw/issues/2757)) ([ca275f4](https://github.com/HankHuang0516/EClaw/commit/ca275f4519835da0c7ad71c588908a18f6f138d8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **api:** platform-stats 500 + entity/lookup publicCode alias ([#2809](https://github.com/HankHuang0516/EClaw/issues/2809), [#2810](https://github.com/HankHuang0516/EClaw/issues/2810)) ([#2818](https://github.com/HankHuang0516/EClaw/issues/2818)) ([f99fd17](https://github.com/HankHuang0516/EClaw/commit/f99fd17b2b1c32d88daa2510ff66d714c1a53edc))
* **i18n:** positional format specifiers for feedback_result_logs (7 locales) ([#2597](https://github.com/HankHuang0516/EClaw/issues/2597)) ([21aedc7](https://github.com/HankHuang0516/EClaw/commit/21aedc7eebc7a2839e340136f38dfdfd4dabb9dc))
* **avatar-petdx:** preserve descriptor across transient API failures (flicker) ([#2625](https://github.com/HankHuang0516/EClaw/issues/2625)) ([7b1c606](https://github.com/HankHuang0516/EClaw/commit/7b1c606514f7698d72ec95cf6c556e4043966186))
* **chat:** preserve scroll anchor while reading history ([#2693](https://github.com/HankHuang0516/EClaw/issues/2693)) ([945fdb7](https://github.com/HankHuang0516/EClaw/commit/945fdb7192b791b31882e1e75568dd8b11e4686f))
* **promo:** pull video embed from /promo-chat-avatar.html ([#2724](https://github.com/HankHuang0516/EClaw/issues/2724)) ([2afabc8](https://github.com/HankHuang0516/EClaw/commit/2afabc8c5ff8b25218a7cb857e8adfa572c8e9d5))
* **kanban:** realign stale recurring schedules ([#2785](https://github.com/HankHuang0516/EClaw/issues/2785)) ([ab8ee25](https://github.com/HankHuang0516/EClaw/commit/ab8ee250a9b37f3d3e838bb01d8866c8d2b78231))
* **portal:** reduce QA-discovered request fanout ([#2656](https://github.com/HankHuang0516/EClaw/issues/2656)) ([1e46d6b](https://github.com/HankHuang0516/EClaw/commit/1e46d6bab61e58c65b452b6503d953f8dddeee75))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **portal:** remove org chart fit scale floor ([#2676](https://github.com/HankHuang0516/EClaw/issues/2676)) ([0f01606](https://github.com/HankHuang0516/EClaw/commit/0f016068b963bb5f800a02f28817c7174979d913))
* **rental:** remove phantom 'webhook test push' step from BIND_COMPLETE ([#2864](https://github.com/HankHuang0516/EClaw/issues/2864)) ([47f4a3e](https://github.com/HankHuang0516/EClaw/commit/47f4a3edf76aa95ebd06d8713cd44fda6eef9b5d))
* **i18n:** rename mm_empty_title → mm_state_empty_title in mindmap.html ([#2683](https://github.com/HankHuang0516/EClaw/issues/2683)) ([c79c109](https://github.com/HankHuang0516/EClaw/commit/c79c109bea23142e8a6d9ace976d105af1280ec9))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **chat:** render mention avatars with companion renderer ([#2633](https://github.com/HankHuang0516/EClaw/issues/2633)) ([03e205f](https://github.com/HankHuang0516/EClaw/commit/03e205f663ecd2c2f443d4009dd5af0093f0bbbb))
* **kanban:** reserve mobile comments panel height ([#2782](https://github.com/HankHuang0516/EClaw/issues/2782)) ([ce8662d](https://github.com/HankHuang0516/EClaw/commit/ce8662d362422fdd25037f1deb61dbed9425e2f9))
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* scheduled audit 2026-05-13 — 6 bugs, XSS, i18n ([#2668](https://github.com/HankHuang0516/EClaw/issues/2668)) ([21dd513](https://github.com/HankHuang0516/EClaw/commit/21dd513b4464738de29164265437435ba6cc4817)), closes [#2605](https://github.com/HankHuang0516/EClaw/issues/2605) [#2608](https://github.com/HankHuang0516/EClaw/issues/2608) [#2600](https://github.com/HankHuang0516/EClaw/issues/2600) [#2599](https://github.com/HankHuang0516/EClaw/issues/2599) [#2598](https://github.com/HankHuang0516/EClaw/issues/2598)
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **chat:** smart-chip preview falls back to inline c.comments when /comments fails (PR [#2677](https://github.com/HankHuang0516/EClaw/issues/2677)) ([7f4dffd](https://github.com/HankHuang0516/EClaw/commit/7f4dffd2c83ea86f296b8fa0610f0e67c9f1af11))
* **kanban:** stabilize comment detail viewport ([#2796](https://github.com/HankHuang0516/EClaw/issues/2796)) ([0a10aad](https://github.com/HankHuang0516/EClaw/commit/0a10aadb5a5b12ff23454c16d5c88183b94ad7d7))
* **wallpaper:** stop Android live wallpaper flashing default lobster on companion change ([#2629](https://github.com/HankHuang0516/EClaw/issues/2629)) ([8b4f66f](https://github.com/HankHuang0516/EClaw/commit/8b4f66fcb335bf43128f924b761b6337c817095b)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **chat:** stop chat.html bouncing to dashboard via /api/rental/health-status 401 race ([#2833](https://github.com/HankHuang0516/EClaw/issues/2833)) ([c422406](https://github.com/HankHuang0516/EClaw/commit/c4224067cdcfe7f3e22ab95007c7563dac4196ac))
* **mentions:** support same-device CJK display-name tags ([#2874](https://github.com/HankHuang0516/EClaw/issues/2874)) ([b8f61be](https://github.com/HankHuang0516/EClaw/commit/b8f61be9a3962fef75dd32ea34e8900880dafaf9))
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **app:** WebView pages honor app-selected locale via ?lang= URL param ([#2672](https://github.com/HankHuang0516/EClaw/issues/2672)) ([8ed8757](https://github.com/HankHuang0516/EClaw/commit/8ed8757aec5bf214e837cc0d81bf2b23f1993a91)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **share-chat:** wire rich CTA actions to msgInput ([#2867](https://github.com/HankHuang0516/EClaw/issues/2867)) ([df23b11](https://github.com/HankHuang0516/EClaw/commit/df23b1147d34c59a644a145bbd87c18b96400acc))


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* **community:** 1-click chat button on bot cards + utm tagging ([#2610](https://github.com/HankHuang0516/EClaw/issues/2610)) ([eee97b0](https://github.com/HankHuang0516/EClaw/commit/eee97b0e2e4e74945ec24f218a69a52800b97a66))
* **chat:** accept ?messageId= as deep-link alias ([#2838](https://github.com/HankHuang0516/EClaw/issues/2838)) ([1785a87](https://github.com/HankHuang0516/EClaw/commit/1785a87310426637fd10df83754fb9924c45207f))
* **chat:** add avatar size preference ([#2714](https://github.com/HankHuang0516/EClaw/issues/2714)) ([6fe164a](https://github.com/HankHuang0516/EClaw/commit/6fe164ad8b22fa576d2dd9ad37c0d9fc295b5a83))
* **dashboard:** add Claude and Codex channel guides ([#2640](https://github.com/HankHuang0516/EClaw/issues/2640)) ([c64e4c4](https://github.com/HankHuang0516/EClaw/commit/c64e4c4afc78db58c5cd578f00486dd7b2fd3311))
* **dashboard:** add Claude Code channel guide card ([#2667](https://github.com/HankHuang0516/EClaw/issues/2667)) ([d70d75c](https://github.com/HankHuang0516/EClaw/commit/d70d75c0c8caa8a540358a9aab4556b8c1927a5c))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* **kanban:** add device-scoped card tags ([#2773](https://github.com/HankHuang0516/EClaw/issues/2773)) ([53a387e](https://github.com/HankHuang0516/EClaw/commit/53a387e67ba7bb4f6bed1c427000c4ae8666577a))
* **portal:** add entity selector to petdx-browser ([#2602](https://github.com/HankHuang0516/EClaw/issues/2602)) ([3fa067e](https://github.com/HankHuang0516/EClaw/commit/3fa067e00b38829b48a37cecd33ee81a9a1122d9))
* **kanban:** add explicit card links ([#2721](https://github.com/HankHuang0516/EClaw/issues/2721)) ([ef9f812](https://github.com/HankHuang0516/EClaw/commit/ef9f812a3fcf39efd07fd158ce90951bdd045ac7))
* **kanban:** add explicit done-card reopen flow ([#2801](https://github.com/HankHuang0516/EClaw/issues/2801)) ([5080aac](https://github.com/HankHuang0516/EClaw/commit/5080aacb75047c0deaa379ee708ec85465afd57c))
* **mindmap:** add GET /api/mindmap/graph force-graph projection ([#2680](https://github.com/HankHuang0516/EClaw/issues/2680)) ([a00b2e7](https://github.com/HankHuang0516/EClaw/commit/a00b2e775af2c4c98cd157f760ad87aeeee469f0)), closes [#2679](https://github.com/HankHuang0516/EClaw/issues/2679) [#2679](https://github.com/HankHuang0516/EClaw/issues/2679)
* **dashboard:** add Hermes channel promo card ([#2708](https://github.com/HankHuang0516/EClaw/issues/2708)) ([337aca1](https://github.com/HankHuang0516/EClaw/commit/337aca153d5a1cd7e888c065f00ae54db7872d91))
* **rental:** add listing soft pause ([#2781](https://github.com/HankHuang0516/EClaw/issues/2781)) ([6586b72](https://github.com/HankHuang0516/EClaw/commit/6586b72717ddb1637d91cd3242c8d2ff554f62b4))
* **portal:** add Nagoya 5D4N trip static cross-ref page ([#2689](https://github.com/HankHuang0516/EClaw/issues/2689)) ([2e0efb6](https://github.com/HankHuang0516/EClaw/commit/2e0efb6dcdaff52226cc8854a96747000b12bdff))
* **portal:** add Nagoya trip map links and image lightbox ([#2821](https://github.com/HankHuang0516/EClaw/issues/2821)) ([3e40955](https://github.com/HankHuang0516/EClaw/commit/3e40955650a05f45a6b9f7e39e73847705424a03))
* **portal/nagoya:** add parking shortcut buttons next to itinerary places ([#2826](https://github.com/HankHuang0516/EClaw/issues/2826)) ([63968c5](https://github.com/HankHuang0516/EClaw/commit/63968c554d046afc8d978de74e3aacbf7700500d))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **settings:** add rental roster management preview ([#2758](https://github.com/HankHuang0516/EClaw/issues/2758)) ([9706e59](https://github.com/HankHuang0516/EClaw/commit/9706e59ded140a90a6e02348124282bc69d89001))
* **rental:** add renter health chat indicator ([#2690](https://github.com/HankHuang0516/EClaw/issues/2690)) ([36cd2e9](https://github.com/HankHuang0516/EClaw/commit/36cd2e9802be4c7ebb03d3024617fa74aca48ffd))
* **ios:** add Tutorial & Intro entry in Settings ([#2800](https://github.com/HankHuang0516/EClaw/issues/2800)) ([ed83e51](https://github.com/HankHuang0516/EClaw/commit/ed83e51d043bf4cd5865f38dc95a91ed54820d6c))
* **landing:** add Watch Full Demo CTA below hero video ([#2799](https://github.com/HankHuang0516/EClaw/issues/2799)) ([66107c9](https://github.com/HankHuang0516/EClaw/commit/66107c954727551fd34d989a4674daaad9b63968))
* **footer:** add Watch Intro Video link in Info column ([#2798](https://github.com/HankHuang0516/EClaw/issues/2798)) ([d7c6d59](https://github.com/HankHuang0516/EClaw/commit/d7c6d596b69c6a5b257bf1f7a792a407ef9712ad))
* **i18n:** ar iter-2 — fill 623 missing keys against en source ([#2847](https://github.com/HankHuang0516/EClaw/issues/2847)) ([ee94a7a](https://github.com/HankHuang0516/EClaw/commit/ee94a7ae6812b5163efe4284ee4907ca32302f5c))
* **kanban:** backlog launch-gate flag to suppress L1/L2/L3 escalation ([#2855](https://github.com/HankHuang0516/EClaw/issues/2855)) ([cb8bf1b](https://github.com/HankHuang0516/EClaw/commit/cb8bf1bb6421f25214f65e129a8cadccc49cc266)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#4](https://github.com/HankHuang0516/EClaw/issues/4) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **companion:** bridge crafter-station/petdex gallery (1784 pets) ([#2601](https://github.com/HankHuang0516/EClaw/issues/2601)) ([2e245be](https://github.com/HankHuang0516/EClaw/commit/2e245bea6dd47ea7361b927d389188a3c23b6bb3))
* **promo:** chat avatar size feature landing page (self-hosted MP4) ([#2722](https://github.com/HankHuang0516/EClaw/issues/2722)) ([3852210](https://github.com/HankHuang0516/EClaw/commit/3852210d355704d018e3daca6b5f9512a011b210)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **kanban:** cron-spawn jitter + lane backpressure to prevent same-tick wedge ([#2791](https://github.com/HankHuang0516/EClaw/issues/2791)) ([9f414a7](https://github.com/HankHuang0516/EClaw/commit/9f414a731d6393672a0a4189c7b408c529ae5e12)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **promo:** embed daily eclaw video 2026-05-14 ([#2786](https://github.com/HankHuang0516/EClaw/issues/2786)) ([718a814](https://github.com/HankHuang0516/EClaw/commit/718a814ab16850bc2b33a1b303841e2c4378ecfa)), closes [#2782](https://github.com/HankHuang0516/EClaw/issues/2782) [#2693](https://github.com/HankHuang0516/EClaw/issues/2693)
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **info:** embed promo video at top of Quick Start tab ([#2797](https://github.com/HankHuang0516/EClaw/issues/2797)) ([047679f](https://github.com/HankHuang0516/EClaw/commit/047679fd57ab9949eaeacea414d5611e71afe041))
* **rental:** enforce strict rebind refunds ([#2703](https://github.com/HankHuang0516/EClaw/issues/2703)) ([a1859c5](https://github.com/HankHuang0516/EClaw/commit/a1859c50e6fb3991d7a8051491502d824a14a116))
* **portal:** group task chip actions ([#2825](https://github.com/HankHuang0516/EClaw/issues/2825)) ([5db5c59](https://github.com/HankHuang0516/EClaw/commit/5db5c59b32b8635f1412205faf0c2f9164d3d5d4))
* **portal:** info-guide-rules + info-guide-soul slide pair ([#2793](https://github.com/HankHuang0516/EClaw/issues/2793)) ([1c8bddc](https://github.com/HankHuang0516/EClaw/commit/1c8bddc4c185054b2b60088498e3d45509117127)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **chat:** link card previews to kanban ([#2754](https://github.com/HankHuang0516/EClaw/issues/2754)) ([2261240](https://github.com/HankHuang0516/EClaw/commit/22612402c2e95efb07246629e81a849be41ee9c7))
* **mission:** link notes to kanban cards ([#2723](https://github.com/HankHuang0516/EClaw/issues/2723)) ([b36dc18](https://github.com/HankHuang0516/EClaw/commit/b36dc18f3a8facf12e0b6046351c222f1e99dc55))
* **mindmap:** mission.html link to /portal/mindmap.html + deprecate /api/mission/mindmap ([#2685](https://github.com/HankHuang0516/EClaw/issues/2685)) ([11e297b](https://github.com/HankHuang0516/EClaw/commit/11e297bab1c9b56fcde3027d6500b7c58891bf18)), closes [#2680](https://github.com/HankHuang0516/EClaw/issues/2680) [#2684](https://github.com/HankHuang0516/EClaw/issues/2684)
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **settings:** per-entity nudge override UI (Phase 2) ([#2837](https://github.com/HankHuang0516/EClaw/issues/2837)) ([ea7662b](https://github.com/HankHuang0516/EClaw/commit/ea7662b0858882dae461e1387f711895924f9ab8)), closes [3/#4](https://github.com/HankHuang0516/EClaw/issues/4)
* **kanban:** per-entity nudge overrides (Phase 2 of card_e066cb6b) ([#2836](https://github.com/HankHuang0516/EClaw/issues/2836)) ([0425f80](https://github.com/HankHuang0516/EClaw/commit/0425f80bc1169c0d506b665659c8676695c45553))
* **avatar:** petdx render on card-holder my-cards (Phase 1b) ([#2621](https://github.com/HankHuang0516/EClaw/issues/2621)) ([f78ba8b](https://github.com/HankHuang0516/EClaw/commit/f78ba8b18acc426936ab6d8a82ca7541effea00d))
* **avatar:** petdx render on dashboard entity grid / org chart / bindings (Phase 1b) ([#2622](https://github.com/HankHuang0516/EClaw/issues/2622)) ([f417749](https://github.com/HankHuang0516/EClaw/commit/f41774914451048e8cd76e9ae30416a0642e173b)), closes [#2620](https://github.com/HankHuang0516/EClaw/issues/2620) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621)
* **avatar:** petdx render on kanban auto-assign / pulse / comment avatars (Phase 1b) ([#2624](https://github.com/HankHuang0516/EClaw/issues/2624)) ([6bff5f8](https://github.com/HankHuang0516/EClaw/commit/6bff5f80440d0bd91a6b1721cde9478d685c4d46))
* **avatar:** petdx render on mission skill/rule/soul entity dialogs (Phase 1b) ([#2623](https://github.com/HankHuang0516/EClaw/issues/2623)) ([129327b](https://github.com/HankHuang0516/EClaw/commit/129327bc7b91056659f1ab7e8d5e3f5260d951fb))
* **mindmap:** portal/mindmap.html force-graph prototype ([#129](https://github.com/HankHuang0516/EClaw/issues/129)) ([#2681](https://github.com/HankHuang0516/EClaw/issues/2681)) ([0f15e69](https://github.com/HankHuang0516/EClaw/commit/0f15e6930f0697c37fa08f3219edb8f9e499837f)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **portal:** redo nagoya trip page in professional tour-guide style ([#2691](https://github.com/HankHuang0516/EClaw/issues/2691)) ([b2378c0](https://github.com/HankHuang0516/EClaw/commit/b2378c06ee20fa9cccfdceceb1a4c9e0b3072f59))
* **i18n:** remove ms+hi orphan keys from i18n.js ([#2849](https://github.com/HankHuang0516/EClaw/issues/2849)) ([320176c](https://github.com/HankHuang0516/EClaw/commit/320176c06a3cfd8631e2a82ad02a6bd6a9af0389))
* **avatar:** render selected petdx companion in chat avatars ([#2620](https://github.com/HankHuang0516/EClaw/issues/2620)) ([0bdd046](https://github.com/HankHuang0516/EClaw/commit/0bdd046fe1b1c428e32edda366ff112c08927f4c))
* **home:** replace native home with WebView hosting dashboard.html ([#2634](https://github.com/HankHuang0516/EClaw/issues/2634)) ([e69ea81](https://github.com/HankHuang0516/EClaw/commit/e69ea8160c239b083a83d6dc83a4f1c3f901c863))
* **app:** route chat mission jumps through native tabs ([#2824](https://github.com/HankHuang0516/EClaw/issues/2824)) ([deb07b6](https://github.com/HankHuang0516/EClaw/commit/deb07b69a9ecca632fe27278de537f1d85234e94))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **chat:** support message deep links ([#2719](https://github.com/HankHuang0516/EClaw/issues/2719)) ([2dc0f1e](https://github.com/HankHuang0516/EClaw/commit/2dc0f1eeb259e1a0848db4a03186b989372cd91c))
* **mission:** support note deep links ([#2717](https://github.com/HankHuang0516/EClaw/issues/2717)) ([2efd3a5](https://github.com/HankHuang0516/EClaw/commit/2efd3a5e741217a07c0b0ac54a0ddd010e0ebe23))
* **share-chat:** twitter card + per-bot og:image/twitter:* in SSR ([#2609](https://github.com/HankHuang0516/EClaw/issues/2609)) ([6cdc853](https://github.com/HankHuang0516/EClaw/commit/6cdc853dc884cdb95bd47214942768981f218ae0))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))
* **settings:** wire petdx avatar into channel-account chips ([#2626](https://github.com/HankHuang0516/EClaw/issues/2626)) ([88aec77](https://github.com/HankHuang0516/EClaw/commit/88aec772628c240e97b336bb5820892ad632d1ae))
* **files:** wire petdx avatar into entity filter & per-file badges ([#2627](https://github.com/HankHuang0516/EClaw/issues/2627)) ([5b3e5cc](https://github.com/HankHuang0516/EClaw/commit/5b3e5cc542d9da69bb4e92500fd03a542ea33f00))
* **mindmap:** wrap hardcoded zh-TW UI strings with i18n t() ([#2607](https://github.com/HankHuang0516/EClaw/issues/2607)) ([166af87](https://github.com/HankHuang0516/EClaw/commit/166af8772b2121a24aaf34a83b3de970e9b3b571)), closes [#2606](https://github.com/HankHuang0516/EClaw/issues/2606)
* **i18n:** zh-TW backfill 8 keys (soft-pause + chat + invite + wallet) ([#2815](https://github.com/HankHuang0516/EClaw/issues/2815)) ([a2dd574](https://github.com/HankHuang0516/EClaw/commit/a2dd5743ce8d43a4b6ace9a2fd4b52568180d6c5))


### Performance Improvements

* **mindmap:** force-graph hardening for 1000/2000-node graphs ([#2684](https://github.com/HankHuang0516/EClaw/issues/2684)) ([da8b1c8](https://github.com/HankHuang0516/EClaw/commit/da8b1c8f947ab8bc8fa455c1962a91146623a1fc))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-21)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **notifications:** add kanban_done + kanban_done_auto toggles to Android Settings ([#2636](https://github.com/HankHuang0516/EClaw/issues/2636)) ([a710909](https://github.com/HankHuang0516/EClaw/commit/a7109095e3393b8564e7ef1b23d382a4fbb944b8))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **i18n:** ar block — fix 27 broken entries (CJK leaks + truncated HTML) ([#2851](https://github.com/HankHuang0516/EClaw/issues/2851)) ([5b19175](https://github.com/HankHuang0516/EClaw/commit/5b19175d712d00d16fcec00b749035c4beae7a5c))
* **chat:** atomic-load target bar (await contacts before first render) ([#2831](https://github.com/HankHuang0516/EClaw/issues/2831)) ([5f529e6](https://github.com/HankHuang0516/EClaw/commit/5f529e6b772eacc38ba1de69b44258a05f0d816a)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2](https://github.com/HankHuang0516/EClaw/issues/2)
* **rental:** bump handshake timeout to 60s + timeout-aware discovery fallback ([#2863](https://github.com/HankHuang0516/EClaw/issues/2863)) ([fd4322f](https://github.com/HankHuang0516/EClaw/commit/fd4322f8890f3c2dfca3acdae6a4b95f19c381f9)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **i18n:** clear batch 1 residual missing keys ([#2790](https://github.com/HankHuang0516/EClaw/issues/2790)) ([211030e](https://github.com/HankHuang0516/EClaw/commit/211030e0b0b6a865c11f0c4ed60dc4e356d43b7a))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **kanban:** comment input no longer overlaps last comment in card detail (PR [#2678](https://github.com/HankHuang0516/EClaw/issues/2678)) ([fba91fc](https://github.com/HankHuang0516/EClaw/commit/fba91fca15402b453a0db5ee857c0b16e6087055))
* **chat:** compact 20px avatar in target bar (App WebView only shows [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2](https://github.com/HankHuang0516/EClaw/issues/2)) ([#2830](https://github.com/HankHuang0516/EClaw/issues/2830)) ([42c7543](https://github.com/HankHuang0516/EClaw/commit/42c7543b4a78a7abf3f5f7535eb9bc6142cd0fe2)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **portal:** complete 401 redirect sweep + mobile UIUX truncation ([#2842](https://github.com/HankHuang0516/EClaw/issues/2842)) ([f9799ba](https://github.com/HankHuang0516/EClaw/commit/f9799ba42498b109f0a8a70e80836aa6da51e216)), closes [#2833](https://github.com/HankHuang0516/EClaw/issues/2833) [#2845](https://github.com/HankHuang0516/EClaw/issues/2845) [#2844](https://github.com/HankHuang0516/EClaw/issues/2844) [#2843](https://github.com/HankHuang0516/EClaw/issues/2843)
* **uiux:** continue qa mobile readability sweep ([#2854](https://github.com/HankHuang0516/EClaw/issues/2854)) ([57606ff](https://github.com/HankHuang0516/EClaw/commit/57606ffe3e543b07a026aacc53c4b470c9a7825b))
* **i18n:** cover dynamic portal wrapper keys ([#2807](https://github.com/HankHuang0516/EClaw/issues/2807)) ([4c711cc](https://github.com/HankHuang0516/EClaw/commit/4c711cc4009300ffe4e8933a98ee01cd0fdd6aeb))
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **rental:** don't pollute entity.message on push gateway timeout ([#2860](https://github.com/HankHuang0516/EClaw/issues/2860)) ([592ba44](https://github.com/HankHuang0516/EClaw/commit/592ba44f57536ee00011b6cbddaa6b129a7cbae9))
* **petdx:** drop dark-grey loading placeholder + preload sprite WEBP ([#2628](https://github.com/HankHuang0516/EClaw/issues/2628)) ([59cef38](https://github.com/HankHuang0516/EClaw/commit/59cef387bd69ca99d7d15c86a1364856d3849ad8)), closes [#1a1a1a](https://github.com/HankHuang0516/EClaw/issues/1a1a1a)
* **security:** escape innerHTML in chat modal error messages ([#2819](https://github.com/HankHuang0516/EClaw/issues/2819)) ([dce07ad](https://github.com/HankHuang0516/EClaw/commit/dce07adde64795916dba977ae23e46f3371ce7ed)), closes [#2809](https://github.com/HankHuang0516/EClaw/issues/2809) [#2810](https://github.com/HankHuang0516/EClaw/issues/2810) [#2809](https://github.com/HankHuang0516/EClaw/issues/2809) [#2810](https://github.com/HankHuang0516/EClaw/issues/2810)
* **entities:** expose botSecret to owner so wallpaper service can poll companions ([#2615](https://github.com/HankHuang0516/EClaw/issues/2615)) ([04470fc](https://github.com/HankHuang0516/EClaw/commit/04470fce8f8c3fce2b1ba8b243e776606f107502))
* **rental:** expose owner_public_code in marketplace so plaza CTA can route ([#2616](https://github.com/HankHuang0516/EClaw/issues/2616)) ([4d1372f](https://github.com/HankHuang0516/EClaw/commit/4d1372f717d93cab65543e87c852e74e9fb67071)), closes [#2610](https://github.com/HankHuang0516/EClaw/issues/2610)
* **mindmap:** fallback to device scope when entityId is null ([#2728](https://github.com/HankHuang0516/EClaw/issues/2728)) ([7572312](https://github.com/HankHuang0516/EClaw/commit/7572312433d3d75fc245eda48a28919ce14bd927))
* **i18n:** fill Spanish drift keys ([#2751](https://github.com/HankHuang0516/EClaw/issues/2751)) ([0ad0ee5](https://github.com/HankHuang0516/EClaw/commit/0ad0ee55f7fac3e6ac46d891539950dab4d553cc))
* **portal:** fit embedded org chart to mobile viewport ([#2674](https://github.com/HankHuang0516/EClaw/issues/2674)) ([1c4e1b4](https://github.com/HankHuang0516/EClaw/commit/1c4e1b413ea7027b4cd4b8ecda981b0d0e12e66b))
* **i18n:** fix 6 trailing-comma syntax errors in 10-locale batch ([#2771](https://github.com/HankHuang0516/EClaw/issues/2771)) ([b27c6ca](https://github.com/HankHuang0516/EClaw/commit/b27c6ca204bf813e406c54ce3a2532a5f1f031b3))
* **kanban:** GET card returns latest 50 comments + comments endpoint exposes total ([#2816](https://github.com/HankHuang0516/EClaw/issues/2816)) ([c4d83f7](https://github.com/HankHuang0516/EClaw/commit/c4d83f777a1cd26aea0936e4316aa35c52822eef))
* **sharechat:** guest verify-email modal + disabled Send for unverified ([#2865](https://github.com/HankHuang0516/EClaw/issues/2865)) ([cb3b061](https://github.com/HankHuang0516/EClaw/commit/cb3b0614e0f6160417d907753e66eceb2d666802))
* **uiux:** harden chat previews and roster preview ([#2769](https://github.com/HankHuang0516/EClaw/issues/2769)) ([466d4d3](https://github.com/HankHuang0516/EClaw/commit/466d4d3ef81c628d3f58db64323946053d7bf61c))
* **mention-parser:** ignore @-mentions inside markdown code spans ([#2645](https://github.com/HankHuang0516/EClaw/issues/2645)) ([8da19d4](https://github.com/HankHuang0516/EClaw/commit/8da19d4a79ceb4152bf2144ee0847c61ce3e1def)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **kanban:** lazy-load dependency chips via IntersectionObserver ([#2632](https://github.com/HankHuang0516/EClaw/issues/2632)) ([20586b4](https://github.com/HankHuang0516/EClaw/commit/20586b43357335f9eb6a190c02d58c8e36b58aba)), closes [#2631](https://github.com/HankHuang0516/EClaw/issues/2631)
* **kanban:** make card sorting deterministic ([#2756](https://github.com/HankHuang0516/EClaw/issues/2756)) ([48e2117](https://github.com/HankHuang0516/EClaw/commit/48e2117b64e37f05dc635e0a3b67bfd43cbe48f5))
* **org-chart:** notify affected bots on hierarchy change ([#2812](https://github.com/HankHuang0516/EClaw/issues/2812)) ([55675fd](https://github.com/HankHuang0516/EClaw/commit/55675fdf4487494d729a29524b32bd81b756a00c)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** notify reviewer on manual /move → review ([#2753](https://github.com/HankHuang0516/EClaw/issues/2753)) ([6cbbb4e](https://github.com/HankHuang0516/EClaw/commit/6cbbb4ee8c0d4d8ad54df2e9b5faaa3699bd530f))
* **wallpaper:** off-load spritesheet fetch to IO so per-petdx sprites actually render ([#2618](https://github.com/HankHuang0516/EClaw/issues/2618)) ([61b832c](https://github.com/HankHuang0516/EClaw/commit/61b832c9fa8a1d0caab810ccc942d85c63349267)), closes [#2615](https://github.com/HankHuang0516/EClaw/issues/2615) [#2577](https://github.com/HankHuang0516/EClaw/issues/2577)
* **security:** patch P0 sanitize-html XSS + P1 protobufjs + exam.html XSS ([#2829](https://github.com/HankHuang0516/EClaw/issues/2829)) ([c71b871](https://github.com/HankHuang0516/EClaw/commit/c71b871a045887375dd0d26d1a3280a0891a89ad))
* **security:** patch ws uninitialized memory disclosure (GHSA-58qx-3vcg-4xpx) ([#2872](https://github.com/HankHuang0516/EClaw/issues/2872)) ([2523d15](https://github.com/HankHuang0516/EClaw/commit/2523d154bbe501a7cc086340f7a07ece3abfa69b))
* **portal:** petdx-browser cookie-session fallback for device-login ([#2757](https://github.com/HankHuang0516/EClaw/issues/2757)) ([ca275f4](https://github.com/HankHuang0516/EClaw/commit/ca275f4519835da0c7ad71c588908a18f6f138d8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **api:** platform-stats 500 + entity/lookup publicCode alias ([#2809](https://github.com/HankHuang0516/EClaw/issues/2809), [#2810](https://github.com/HankHuang0516/EClaw/issues/2810)) ([#2818](https://github.com/HankHuang0516/EClaw/issues/2818)) ([f99fd17](https://github.com/HankHuang0516/EClaw/commit/f99fd17b2b1c32d88daa2510ff66d714c1a53edc))
* **i18n:** positional format specifiers for feedback_result_logs (7 locales) ([#2597](https://github.com/HankHuang0516/EClaw/issues/2597)) ([21aedc7](https://github.com/HankHuang0516/EClaw/commit/21aedc7eebc7a2839e340136f38dfdfd4dabb9dc))
* **avatar-petdx:** preserve descriptor across transient API failures (flicker) ([#2625](https://github.com/HankHuang0516/EClaw/issues/2625)) ([7b1c606](https://github.com/HankHuang0516/EClaw/commit/7b1c606514f7698d72ec95cf6c556e4043966186))
* **chat:** preserve scroll anchor while reading history ([#2693](https://github.com/HankHuang0516/EClaw/issues/2693)) ([945fdb7](https://github.com/HankHuang0516/EClaw/commit/945fdb7192b791b31882e1e75568dd8b11e4686f))
* **promo:** pull video embed from /promo-chat-avatar.html ([#2724](https://github.com/HankHuang0516/EClaw/issues/2724)) ([2afabc8](https://github.com/HankHuang0516/EClaw/commit/2afabc8c5ff8b25218a7cb857e8adfa572c8e9d5))
* **kanban:** realign stale recurring schedules ([#2785](https://github.com/HankHuang0516/EClaw/issues/2785)) ([ab8ee25](https://github.com/HankHuang0516/EClaw/commit/ab8ee250a9b37f3d3e838bb01d8866c8d2b78231))
* **portal:** reduce QA-discovered request fanout ([#2656](https://github.com/HankHuang0516/EClaw/issues/2656)) ([1e46d6b](https://github.com/HankHuang0516/EClaw/commit/1e46d6bab61e58c65b452b6503d953f8dddeee75))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **portal:** remove org chart fit scale floor ([#2676](https://github.com/HankHuang0516/EClaw/issues/2676)) ([0f01606](https://github.com/HankHuang0516/EClaw/commit/0f016068b963bb5f800a02f28817c7174979d913))
* **rental:** remove phantom 'webhook test push' step from BIND_COMPLETE ([#2864](https://github.com/HankHuang0516/EClaw/issues/2864)) ([47f4a3e](https://github.com/HankHuang0516/EClaw/commit/47f4a3edf76aa95ebd06d8713cd44fda6eef9b5d))
* **i18n:** rename mm_empty_title → mm_state_empty_title in mindmap.html ([#2683](https://github.com/HankHuang0516/EClaw/issues/2683)) ([c79c109](https://github.com/HankHuang0516/EClaw/commit/c79c109bea23142e8a6d9ace976d105af1280ec9))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **chat:** render mention avatars with companion renderer ([#2633](https://github.com/HankHuang0516/EClaw/issues/2633)) ([03e205f](https://github.com/HankHuang0516/EClaw/commit/03e205f663ecd2c2f443d4009dd5af0093f0bbbb))
* **kanban:** reserve mobile comments panel height ([#2782](https://github.com/HankHuang0516/EClaw/issues/2782)) ([ce8662d](https://github.com/HankHuang0516/EClaw/commit/ce8662d362422fdd25037f1deb61dbed9425e2f9))
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* scheduled audit 2026-05-13 — 6 bugs, XSS, i18n ([#2668](https://github.com/HankHuang0516/EClaw/issues/2668)) ([21dd513](https://github.com/HankHuang0516/EClaw/commit/21dd513b4464738de29164265437435ba6cc4817)), closes [#2605](https://github.com/HankHuang0516/EClaw/issues/2605) [#2608](https://github.com/HankHuang0516/EClaw/issues/2608) [#2600](https://github.com/HankHuang0516/EClaw/issues/2600) [#2599](https://github.com/HankHuang0516/EClaw/issues/2599) [#2598](https://github.com/HankHuang0516/EClaw/issues/2598)
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **chat:** smart-chip preview falls back to inline c.comments when /comments fails (PR [#2677](https://github.com/HankHuang0516/EClaw/issues/2677)) ([7f4dffd](https://github.com/HankHuang0516/EClaw/commit/7f4dffd2c83ea86f296b8fa0610f0e67c9f1af11))
* **kanban:** stabilize comment detail viewport ([#2796](https://github.com/HankHuang0516/EClaw/issues/2796)) ([0a10aad](https://github.com/HankHuang0516/EClaw/commit/0a10aadb5a5b12ff23454c16d5c88183b94ad7d7))
* **wallpaper:** stop Android live wallpaper flashing default lobster on companion change ([#2629](https://github.com/HankHuang0516/EClaw/issues/2629)) ([8b4f66f](https://github.com/HankHuang0516/EClaw/commit/8b4f66fcb335bf43128f924b761b6337c817095b)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **chat:** stop chat.html bouncing to dashboard via /api/rental/health-status 401 race ([#2833](https://github.com/HankHuang0516/EClaw/issues/2833)) ([c422406](https://github.com/HankHuang0516/EClaw/commit/c4224067cdcfe7f3e22ab95007c7563dac4196ac))
* **mentions:** support same-device CJK display-name tags ([#2874](https://github.com/HankHuang0516/EClaw/issues/2874)) ([b8f61be](https://github.com/HankHuang0516/EClaw/commit/b8f61be9a3962fef75dd32ea34e8900880dafaf9))
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **app:** WebView pages honor app-selected locale via ?lang= URL param ([#2672](https://github.com/HankHuang0516/EClaw/issues/2672)) ([8ed8757](https://github.com/HankHuang0516/EClaw/commit/8ed8757aec5bf214e837cc0d81bf2b23f1993a91)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **share-chat:** wire rich CTA actions to msgInput ([#2867](https://github.com/HankHuang0516/EClaw/issues/2867)) ([df23b11](https://github.com/HankHuang0516/EClaw/commit/df23b1147d34c59a644a145bbd87c18b96400acc))


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* **community:** 1-click chat button on bot cards + utm tagging ([#2610](https://github.com/HankHuang0516/EClaw/issues/2610)) ([eee97b0](https://github.com/HankHuang0516/EClaw/commit/eee97b0e2e4e74945ec24f218a69a52800b97a66))
* **chat:** accept ?messageId= as deep-link alias ([#2838](https://github.com/HankHuang0516/EClaw/issues/2838)) ([1785a87](https://github.com/HankHuang0516/EClaw/commit/1785a87310426637fd10df83754fb9924c45207f))
* **chat:** add avatar size preference ([#2714](https://github.com/HankHuang0516/EClaw/issues/2714)) ([6fe164a](https://github.com/HankHuang0516/EClaw/commit/6fe164ad8b22fa576d2dd9ad37c0d9fc295b5a83))
* **dashboard:** add Claude and Codex channel guides ([#2640](https://github.com/HankHuang0516/EClaw/issues/2640)) ([c64e4c4](https://github.com/HankHuang0516/EClaw/commit/c64e4c4afc78db58c5cd578f00486dd7b2fd3311))
* **dashboard:** add Claude Code channel guide card ([#2667](https://github.com/HankHuang0516/EClaw/issues/2667)) ([d70d75c](https://github.com/HankHuang0516/EClaw/commit/d70d75c0c8caa8a540358a9aab4556b8c1927a5c))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* **kanban:** add device-scoped card tags ([#2773](https://github.com/HankHuang0516/EClaw/issues/2773)) ([53a387e](https://github.com/HankHuang0516/EClaw/commit/53a387e67ba7bb4f6bed1c427000c4ae8666577a))
* **portal:** add entity selector to petdx-browser ([#2602](https://github.com/HankHuang0516/EClaw/issues/2602)) ([3fa067e](https://github.com/HankHuang0516/EClaw/commit/3fa067e00b38829b48a37cecd33ee81a9a1122d9))
* **kanban:** add explicit card links ([#2721](https://github.com/HankHuang0516/EClaw/issues/2721)) ([ef9f812](https://github.com/HankHuang0516/EClaw/commit/ef9f812a3fcf39efd07fd158ce90951bdd045ac7))
* **kanban:** add explicit done-card reopen flow ([#2801](https://github.com/HankHuang0516/EClaw/issues/2801)) ([5080aac](https://github.com/HankHuang0516/EClaw/commit/5080aacb75047c0deaa379ee708ec85465afd57c))
* **mindmap:** add GET /api/mindmap/graph force-graph projection ([#2680](https://github.com/HankHuang0516/EClaw/issues/2680)) ([a00b2e7](https://github.com/HankHuang0516/EClaw/commit/a00b2e775af2c4c98cd157f760ad87aeeee469f0)), closes [#2679](https://github.com/HankHuang0516/EClaw/issues/2679) [#2679](https://github.com/HankHuang0516/EClaw/issues/2679)
* **dashboard:** add Hermes channel promo card ([#2708](https://github.com/HankHuang0516/EClaw/issues/2708)) ([337aca1](https://github.com/HankHuang0516/EClaw/commit/337aca153d5a1cd7e888c065f00ae54db7872d91))
* **rental:** add listing soft pause ([#2781](https://github.com/HankHuang0516/EClaw/issues/2781)) ([6586b72](https://github.com/HankHuang0516/EClaw/commit/6586b72717ddb1637d91cd3242c8d2ff554f62b4))
* **portal:** add Nagoya 5D4N trip static cross-ref page ([#2689](https://github.com/HankHuang0516/EClaw/issues/2689)) ([2e0efb6](https://github.com/HankHuang0516/EClaw/commit/2e0efb6dcdaff52226cc8854a96747000b12bdff))
* **portal:** add Nagoya trip map links and image lightbox ([#2821](https://github.com/HankHuang0516/EClaw/issues/2821)) ([3e40955](https://github.com/HankHuang0516/EClaw/commit/3e40955650a05f45a6b9f7e39e73847705424a03))
* **portal/nagoya:** add parking shortcut buttons next to itinerary places ([#2826](https://github.com/HankHuang0516/EClaw/issues/2826)) ([63968c5](https://github.com/HankHuang0516/EClaw/commit/63968c554d046afc8d978de74e3aacbf7700500d))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **settings:** add rental roster management preview ([#2758](https://github.com/HankHuang0516/EClaw/issues/2758)) ([9706e59](https://github.com/HankHuang0516/EClaw/commit/9706e59ded140a90a6e02348124282bc69d89001))
* **rental:** add renter health chat indicator ([#2690](https://github.com/HankHuang0516/EClaw/issues/2690)) ([36cd2e9](https://github.com/HankHuang0516/EClaw/commit/36cd2e9802be4c7ebb03d3024617fa74aca48ffd))
* **ios:** add Tutorial & Intro entry in Settings ([#2800](https://github.com/HankHuang0516/EClaw/issues/2800)) ([ed83e51](https://github.com/HankHuang0516/EClaw/commit/ed83e51d043bf4cd5865f38dc95a91ed54820d6c))
* **landing:** add Watch Full Demo CTA below hero video ([#2799](https://github.com/HankHuang0516/EClaw/issues/2799)) ([66107c9](https://github.com/HankHuang0516/EClaw/commit/66107c954727551fd34d989a4674daaad9b63968))
* **footer:** add Watch Intro Video link in Info column ([#2798](https://github.com/HankHuang0516/EClaw/issues/2798)) ([d7c6d59](https://github.com/HankHuang0516/EClaw/commit/d7c6d596b69c6a5b257bf1f7a792a407ef9712ad))
* **i18n:** ar iter-2 — fill 623 missing keys against en source ([#2847](https://github.com/HankHuang0516/EClaw/issues/2847)) ([ee94a7a](https://github.com/HankHuang0516/EClaw/commit/ee94a7ae6812b5163efe4284ee4907ca32302f5c))
* **kanban:** backlog launch-gate flag to suppress L1/L2/L3 escalation ([#2855](https://github.com/HankHuang0516/EClaw/issues/2855)) ([cb8bf1b](https://github.com/HankHuang0516/EClaw/commit/cb8bf1bb6421f25214f65e129a8cadccc49cc266)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#4](https://github.com/HankHuang0516/EClaw/issues/4) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **companion:** bridge crafter-station/petdex gallery (1784 pets) ([#2601](https://github.com/HankHuang0516/EClaw/issues/2601)) ([2e245be](https://github.com/HankHuang0516/EClaw/commit/2e245bea6dd47ea7361b927d389188a3c23b6bb3))
* **promo:** chat avatar size feature landing page (self-hosted MP4) ([#2722](https://github.com/HankHuang0516/EClaw/issues/2722)) ([3852210](https://github.com/HankHuang0516/EClaw/commit/3852210d355704d018e3daca6b5f9512a011b210)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **kanban:** cron-spawn jitter + lane backpressure to prevent same-tick wedge ([#2791](https://github.com/HankHuang0516/EClaw/issues/2791)) ([9f414a7](https://github.com/HankHuang0516/EClaw/commit/9f414a731d6393672a0a4189c7b408c529ae5e12)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **promo:** embed daily eclaw video 2026-05-14 ([#2786](https://github.com/HankHuang0516/EClaw/issues/2786)) ([718a814](https://github.com/HankHuang0516/EClaw/commit/718a814ab16850bc2b33a1b303841e2c4378ecfa)), closes [#2782](https://github.com/HankHuang0516/EClaw/issues/2782) [#2693](https://github.com/HankHuang0516/EClaw/issues/2693)
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **info:** embed promo video at top of Quick Start tab ([#2797](https://github.com/HankHuang0516/EClaw/issues/2797)) ([047679f](https://github.com/HankHuang0516/EClaw/commit/047679fd57ab9949eaeacea414d5611e71afe041))
* **rental:** enforce strict rebind refunds ([#2703](https://github.com/HankHuang0516/EClaw/issues/2703)) ([a1859c5](https://github.com/HankHuang0516/EClaw/commit/a1859c50e6fb3991d7a8051491502d824a14a116))
* **portal:** group task chip actions ([#2825](https://github.com/HankHuang0516/EClaw/issues/2825)) ([5db5c59](https://github.com/HankHuang0516/EClaw/commit/5db5c59b32b8635f1412205faf0c2f9164d3d5d4))
* **portal:** info-guide-rules + info-guide-soul slide pair ([#2793](https://github.com/HankHuang0516/EClaw/issues/2793)) ([1c8bddc](https://github.com/HankHuang0516/EClaw/commit/1c8bddc4c185054b2b60088498e3d45509117127)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **chat:** link card previews to kanban ([#2754](https://github.com/HankHuang0516/EClaw/issues/2754)) ([2261240](https://github.com/HankHuang0516/EClaw/commit/22612402c2e95efb07246629e81a849be41ee9c7))
* **mission:** link notes to kanban cards ([#2723](https://github.com/HankHuang0516/EClaw/issues/2723)) ([b36dc18](https://github.com/HankHuang0516/EClaw/commit/b36dc18f3a8facf12e0b6046351c222f1e99dc55))
* **mindmap:** mission.html link to /portal/mindmap.html + deprecate /api/mission/mindmap ([#2685](https://github.com/HankHuang0516/EClaw/issues/2685)) ([11e297b](https://github.com/HankHuang0516/EClaw/commit/11e297bab1c9b56fcde3027d6500b7c58891bf18)), closes [#2680](https://github.com/HankHuang0516/EClaw/issues/2680) [#2684](https://github.com/HankHuang0516/EClaw/issues/2684)
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **settings:** per-entity nudge override UI (Phase 2) ([#2837](https://github.com/HankHuang0516/EClaw/issues/2837)) ([ea7662b](https://github.com/HankHuang0516/EClaw/commit/ea7662b0858882dae461e1387f711895924f9ab8)), closes [3/#4](https://github.com/HankHuang0516/EClaw/issues/4)
* **kanban:** per-entity nudge overrides (Phase 2 of card_e066cb6b) ([#2836](https://github.com/HankHuang0516/EClaw/issues/2836)) ([0425f80](https://github.com/HankHuang0516/EClaw/commit/0425f80bc1169c0d506b665659c8676695c45553))
* **avatar:** petdx render on card-holder my-cards (Phase 1b) ([#2621](https://github.com/HankHuang0516/EClaw/issues/2621)) ([f78ba8b](https://github.com/HankHuang0516/EClaw/commit/f78ba8b18acc426936ab6d8a82ca7541effea00d))
* **avatar:** petdx render on dashboard entity grid / org chart / bindings (Phase 1b) ([#2622](https://github.com/HankHuang0516/EClaw/issues/2622)) ([f417749](https://github.com/HankHuang0516/EClaw/commit/f41774914451048e8cd76e9ae30416a0642e173b)), closes [#2620](https://github.com/HankHuang0516/EClaw/issues/2620) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621)
* **avatar:** petdx render on kanban auto-assign / pulse / comment avatars (Phase 1b) ([#2624](https://github.com/HankHuang0516/EClaw/issues/2624)) ([6bff5f8](https://github.com/HankHuang0516/EClaw/commit/6bff5f80440d0bd91a6b1721cde9478d685c4d46))
* **avatar:** petdx render on mission skill/rule/soul entity dialogs (Phase 1b) ([#2623](https://github.com/HankHuang0516/EClaw/issues/2623)) ([129327b](https://github.com/HankHuang0516/EClaw/commit/129327bc7b91056659f1ab7e8d5e3f5260d951fb))
* **mindmap:** portal/mindmap.html force-graph prototype ([#129](https://github.com/HankHuang0516/EClaw/issues/129)) ([#2681](https://github.com/HankHuang0516/EClaw/issues/2681)) ([0f15e69](https://github.com/HankHuang0516/EClaw/commit/0f15e6930f0697c37fa08f3219edb8f9e499837f)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **portal:** redo nagoya trip page in professional tour-guide style ([#2691](https://github.com/HankHuang0516/EClaw/issues/2691)) ([b2378c0](https://github.com/HankHuang0516/EClaw/commit/b2378c06ee20fa9cccfdceceb1a4c9e0b3072f59))
* **i18n:** remove ms+hi orphan keys from i18n.js ([#2849](https://github.com/HankHuang0516/EClaw/issues/2849)) ([320176c](https://github.com/HankHuang0516/EClaw/commit/320176c06a3cfd8631e2a82ad02a6bd6a9af0389))
* **avatar:** render selected petdx companion in chat avatars ([#2620](https://github.com/HankHuang0516/EClaw/issues/2620)) ([0bdd046](https://github.com/HankHuang0516/EClaw/commit/0bdd046fe1b1c428e32edda366ff112c08927f4c))
* **home:** replace native home with WebView hosting dashboard.html ([#2634](https://github.com/HankHuang0516/EClaw/issues/2634)) ([e69ea81](https://github.com/HankHuang0516/EClaw/commit/e69ea8160c239b083a83d6dc83a4f1c3f901c863))
* **app:** route chat mission jumps through native tabs ([#2824](https://github.com/HankHuang0516/EClaw/issues/2824)) ([deb07b6](https://github.com/HankHuang0516/EClaw/commit/deb07b69a9ecca632fe27278de537f1d85234e94))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **chat:** support message deep links ([#2719](https://github.com/HankHuang0516/EClaw/issues/2719)) ([2dc0f1e](https://github.com/HankHuang0516/EClaw/commit/2dc0f1eeb259e1a0848db4a03186b989372cd91c))
* **mission:** support note deep links ([#2717](https://github.com/HankHuang0516/EClaw/issues/2717)) ([2efd3a5](https://github.com/HankHuang0516/EClaw/commit/2efd3a5e741217a07c0b0ac54a0ddd010e0ebe23))
* **share-chat:** twitter card + per-bot og:image/twitter:* in SSR ([#2609](https://github.com/HankHuang0516/EClaw/issues/2609)) ([6cdc853](https://github.com/HankHuang0516/EClaw/commit/6cdc853dc884cdb95bd47214942768981f218ae0))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))
* **settings:** wire petdx avatar into channel-account chips ([#2626](https://github.com/HankHuang0516/EClaw/issues/2626)) ([88aec77](https://github.com/HankHuang0516/EClaw/commit/88aec772628c240e97b336bb5820892ad632d1ae))
* **files:** wire petdx avatar into entity filter & per-file badges ([#2627](https://github.com/HankHuang0516/EClaw/issues/2627)) ([5b3e5cc](https://github.com/HankHuang0516/EClaw/commit/5b3e5cc542d9da69bb4e92500fd03a542ea33f00))
* **mindmap:** wrap hardcoded zh-TW UI strings with i18n t() ([#2607](https://github.com/HankHuang0516/EClaw/issues/2607)) ([166af87](https://github.com/HankHuang0516/EClaw/commit/166af8772b2121a24aaf34a83b3de970e9b3b571)), closes [#2606](https://github.com/HankHuang0516/EClaw/issues/2606)
* **i18n:** zh-TW backfill 8 keys (soft-pause + chat + invite + wallet) ([#2815](https://github.com/HankHuang0516/EClaw/issues/2815)) ([a2dd574](https://github.com/HankHuang0516/EClaw/commit/a2dd5743ce8d43a4b6ace9a2fd4b52568180d6c5))


### Performance Improvements

* **mindmap:** force-graph hardening for 1000/2000-node graphs ([#2684](https://github.com/HankHuang0516/EClaw/issues/2684)) ([da8b1c8](https://github.com/HankHuang0516/EClaw/commit/da8b1c8f947ab8bc8fa455c1962a91146623a1fc))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-20)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **notifications:** add kanban_done + kanban_done_auto toggles to Android Settings ([#2636](https://github.com/HankHuang0516/EClaw/issues/2636)) ([a710909](https://github.com/HankHuang0516/EClaw/commit/a7109095e3393b8564e7ef1b23d382a4fbb944b8))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **i18n:** ar block — fix 27 broken entries (CJK leaks + truncated HTML) ([#2851](https://github.com/HankHuang0516/EClaw/issues/2851)) ([5b19175](https://github.com/HankHuang0516/EClaw/commit/5b19175d712d00d16fcec00b749035c4beae7a5c))
* **chat:** atomic-load target bar (await contacts before first render) ([#2831](https://github.com/HankHuang0516/EClaw/issues/2831)) ([5f529e6](https://github.com/HankHuang0516/EClaw/commit/5f529e6b772eacc38ba1de69b44258a05f0d816a)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2](https://github.com/HankHuang0516/EClaw/issues/2)
* **rental:** bump handshake timeout to 60s + timeout-aware discovery fallback ([#2863](https://github.com/HankHuang0516/EClaw/issues/2863)) ([fd4322f](https://github.com/HankHuang0516/EClaw/commit/fd4322f8890f3c2dfca3acdae6a4b95f19c381f9)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **i18n:** clear batch 1 residual missing keys ([#2790](https://github.com/HankHuang0516/EClaw/issues/2790)) ([211030e](https://github.com/HankHuang0516/EClaw/commit/211030e0b0b6a865c11f0c4ed60dc4e356d43b7a))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **kanban:** comment input no longer overlaps last comment in card detail (PR [#2678](https://github.com/HankHuang0516/EClaw/issues/2678)) ([fba91fc](https://github.com/HankHuang0516/EClaw/commit/fba91fca15402b453a0db5ee857c0b16e6087055))
* **chat:** compact 20px avatar in target bar (App WebView only shows [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2](https://github.com/HankHuang0516/EClaw/issues/2)) ([#2830](https://github.com/HankHuang0516/EClaw/issues/2830)) ([42c7543](https://github.com/HankHuang0516/EClaw/commit/42c7543b4a78a7abf3f5f7535eb9bc6142cd0fe2)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **portal:** complete 401 redirect sweep + mobile UIUX truncation ([#2842](https://github.com/HankHuang0516/EClaw/issues/2842)) ([f9799ba](https://github.com/HankHuang0516/EClaw/commit/f9799ba42498b109f0a8a70e80836aa6da51e216)), closes [#2833](https://github.com/HankHuang0516/EClaw/issues/2833) [#2845](https://github.com/HankHuang0516/EClaw/issues/2845) [#2844](https://github.com/HankHuang0516/EClaw/issues/2844) [#2843](https://github.com/HankHuang0516/EClaw/issues/2843)
* **uiux:** continue qa mobile readability sweep ([#2854](https://github.com/HankHuang0516/EClaw/issues/2854)) ([57606ff](https://github.com/HankHuang0516/EClaw/commit/57606ffe3e543b07a026aacc53c4b470c9a7825b))
* **i18n:** cover dynamic portal wrapper keys ([#2807](https://github.com/HankHuang0516/EClaw/issues/2807)) ([4c711cc](https://github.com/HankHuang0516/EClaw/commit/4c711cc4009300ffe4e8933a98ee01cd0fdd6aeb))
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **rental:** don't pollute entity.message on push gateway timeout ([#2860](https://github.com/HankHuang0516/EClaw/issues/2860)) ([592ba44](https://github.com/HankHuang0516/EClaw/commit/592ba44f57536ee00011b6cbddaa6b129a7cbae9))
* **petdx:** drop dark-grey loading placeholder + preload sprite WEBP ([#2628](https://github.com/HankHuang0516/EClaw/issues/2628)) ([59cef38](https://github.com/HankHuang0516/EClaw/commit/59cef387bd69ca99d7d15c86a1364856d3849ad8)), closes [#1a1a1a](https://github.com/HankHuang0516/EClaw/issues/1a1a1a)
* **security:** escape innerHTML in chat modal error messages ([#2819](https://github.com/HankHuang0516/EClaw/issues/2819)) ([dce07ad](https://github.com/HankHuang0516/EClaw/commit/dce07adde64795916dba977ae23e46f3371ce7ed)), closes [#2809](https://github.com/HankHuang0516/EClaw/issues/2809) [#2810](https://github.com/HankHuang0516/EClaw/issues/2810) [#2809](https://github.com/HankHuang0516/EClaw/issues/2809) [#2810](https://github.com/HankHuang0516/EClaw/issues/2810)
* **entities:** expose botSecret to owner so wallpaper service can poll companions ([#2615](https://github.com/HankHuang0516/EClaw/issues/2615)) ([04470fc](https://github.com/HankHuang0516/EClaw/commit/04470fce8f8c3fce2b1ba8b243e776606f107502))
* **rental:** expose owner_public_code in marketplace so plaza CTA can route ([#2616](https://github.com/HankHuang0516/EClaw/issues/2616)) ([4d1372f](https://github.com/HankHuang0516/EClaw/commit/4d1372f717d93cab65543e87c852e74e9fb67071)), closes [#2610](https://github.com/HankHuang0516/EClaw/issues/2610)
* **mindmap:** fallback to device scope when entityId is null ([#2728](https://github.com/HankHuang0516/EClaw/issues/2728)) ([7572312](https://github.com/HankHuang0516/EClaw/commit/7572312433d3d75fc245eda48a28919ce14bd927))
* **i18n:** fill Spanish drift keys ([#2751](https://github.com/HankHuang0516/EClaw/issues/2751)) ([0ad0ee5](https://github.com/HankHuang0516/EClaw/commit/0ad0ee55f7fac3e6ac46d891539950dab4d553cc))
* **portal:** fit embedded org chart to mobile viewport ([#2674](https://github.com/HankHuang0516/EClaw/issues/2674)) ([1c4e1b4](https://github.com/HankHuang0516/EClaw/commit/1c4e1b413ea7027b4cd4b8ecda981b0d0e12e66b))
* **i18n:** fix 6 trailing-comma syntax errors in 10-locale batch ([#2771](https://github.com/HankHuang0516/EClaw/issues/2771)) ([b27c6ca](https://github.com/HankHuang0516/EClaw/commit/b27c6ca204bf813e406c54ce3a2532a5f1f031b3))
* **kanban:** GET card returns latest 50 comments + comments endpoint exposes total ([#2816](https://github.com/HankHuang0516/EClaw/issues/2816)) ([c4d83f7](https://github.com/HankHuang0516/EClaw/commit/c4d83f777a1cd26aea0936e4316aa35c52822eef))
* **sharechat:** guest verify-email modal + disabled Send for unverified ([#2865](https://github.com/HankHuang0516/EClaw/issues/2865)) ([cb3b061](https://github.com/HankHuang0516/EClaw/commit/cb3b0614e0f6160417d907753e66eceb2d666802))
* **uiux:** harden chat previews and roster preview ([#2769](https://github.com/HankHuang0516/EClaw/issues/2769)) ([466d4d3](https://github.com/HankHuang0516/EClaw/commit/466d4d3ef81c628d3f58db64323946053d7bf61c))
* **mention-parser:** ignore @-mentions inside markdown code spans ([#2645](https://github.com/HankHuang0516/EClaw/issues/2645)) ([8da19d4](https://github.com/HankHuang0516/EClaw/commit/8da19d4a79ceb4152bf2144ee0847c61ce3e1def)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **kanban:** lazy-load dependency chips via IntersectionObserver ([#2632](https://github.com/HankHuang0516/EClaw/issues/2632)) ([20586b4](https://github.com/HankHuang0516/EClaw/commit/20586b43357335f9eb6a190c02d58c8e36b58aba)), closes [#2631](https://github.com/HankHuang0516/EClaw/issues/2631)
* **kanban:** make card sorting deterministic ([#2756](https://github.com/HankHuang0516/EClaw/issues/2756)) ([48e2117](https://github.com/HankHuang0516/EClaw/commit/48e2117b64e37f05dc635e0a3b67bfd43cbe48f5))
* **org-chart:** notify affected bots on hierarchy change ([#2812](https://github.com/HankHuang0516/EClaw/issues/2812)) ([55675fd](https://github.com/HankHuang0516/EClaw/commit/55675fdf4487494d729a29524b32bd81b756a00c)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** notify reviewer on manual /move → review ([#2753](https://github.com/HankHuang0516/EClaw/issues/2753)) ([6cbbb4e](https://github.com/HankHuang0516/EClaw/commit/6cbbb4ee8c0d4d8ad54df2e9b5faaa3699bd530f))
* **wallpaper:** off-load spritesheet fetch to IO so per-petdx sprites actually render ([#2618](https://github.com/HankHuang0516/EClaw/issues/2618)) ([61b832c](https://github.com/HankHuang0516/EClaw/commit/61b832c9fa8a1d0caab810ccc942d85c63349267)), closes [#2615](https://github.com/HankHuang0516/EClaw/issues/2615) [#2577](https://github.com/HankHuang0516/EClaw/issues/2577)
* **security:** patch P0 sanitize-html XSS + P1 protobufjs + exam.html XSS ([#2829](https://github.com/HankHuang0516/EClaw/issues/2829)) ([c71b871](https://github.com/HankHuang0516/EClaw/commit/c71b871a045887375dd0d26d1a3280a0891a89ad))
* **security:** patch ws uninitialized memory disclosure (GHSA-58qx-3vcg-4xpx) ([#2872](https://github.com/HankHuang0516/EClaw/issues/2872)) ([2523d15](https://github.com/HankHuang0516/EClaw/commit/2523d154bbe501a7cc086340f7a07ece3abfa69b))
* **portal:** petdx-browser cookie-session fallback for device-login ([#2757](https://github.com/HankHuang0516/EClaw/issues/2757)) ([ca275f4](https://github.com/HankHuang0516/EClaw/commit/ca275f4519835da0c7ad71c588908a18f6f138d8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **api:** platform-stats 500 + entity/lookup publicCode alias ([#2809](https://github.com/HankHuang0516/EClaw/issues/2809), [#2810](https://github.com/HankHuang0516/EClaw/issues/2810)) ([#2818](https://github.com/HankHuang0516/EClaw/issues/2818)) ([f99fd17](https://github.com/HankHuang0516/EClaw/commit/f99fd17b2b1c32d88daa2510ff66d714c1a53edc))
* **i18n:** positional format specifiers for feedback_result_logs (7 locales) ([#2597](https://github.com/HankHuang0516/EClaw/issues/2597)) ([21aedc7](https://github.com/HankHuang0516/EClaw/commit/21aedc7eebc7a2839e340136f38dfdfd4dabb9dc))
* **avatar-petdx:** preserve descriptor across transient API failures (flicker) ([#2625](https://github.com/HankHuang0516/EClaw/issues/2625)) ([7b1c606](https://github.com/HankHuang0516/EClaw/commit/7b1c606514f7698d72ec95cf6c556e4043966186))
* **chat:** preserve scroll anchor while reading history ([#2693](https://github.com/HankHuang0516/EClaw/issues/2693)) ([945fdb7](https://github.com/HankHuang0516/EClaw/commit/945fdb7192b791b31882e1e75568dd8b11e4686f))
* **promo:** pull video embed from /promo-chat-avatar.html ([#2724](https://github.com/HankHuang0516/EClaw/issues/2724)) ([2afabc8](https://github.com/HankHuang0516/EClaw/commit/2afabc8c5ff8b25218a7cb857e8adfa572c8e9d5))
* **kanban:** realign stale recurring schedules ([#2785](https://github.com/HankHuang0516/EClaw/issues/2785)) ([ab8ee25](https://github.com/HankHuang0516/EClaw/commit/ab8ee250a9b37f3d3e838bb01d8866c8d2b78231))
* **portal:** reduce QA-discovered request fanout ([#2656](https://github.com/HankHuang0516/EClaw/issues/2656)) ([1e46d6b](https://github.com/HankHuang0516/EClaw/commit/1e46d6bab61e58c65b452b6503d953f8dddeee75))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **portal:** remove org chart fit scale floor ([#2676](https://github.com/HankHuang0516/EClaw/issues/2676)) ([0f01606](https://github.com/HankHuang0516/EClaw/commit/0f016068b963bb5f800a02f28817c7174979d913))
* **rental:** remove phantom 'webhook test push' step from BIND_COMPLETE ([#2864](https://github.com/HankHuang0516/EClaw/issues/2864)) ([47f4a3e](https://github.com/HankHuang0516/EClaw/commit/47f4a3edf76aa95ebd06d8713cd44fda6eef9b5d))
* **i18n:** rename mm_empty_title → mm_state_empty_title in mindmap.html ([#2683](https://github.com/HankHuang0516/EClaw/issues/2683)) ([c79c109](https://github.com/HankHuang0516/EClaw/commit/c79c109bea23142e8a6d9ace976d105af1280ec9))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **chat:** render mention avatars with companion renderer ([#2633](https://github.com/HankHuang0516/EClaw/issues/2633)) ([03e205f](https://github.com/HankHuang0516/EClaw/commit/03e205f663ecd2c2f443d4009dd5af0093f0bbbb))
* **kanban:** reserve mobile comments panel height ([#2782](https://github.com/HankHuang0516/EClaw/issues/2782)) ([ce8662d](https://github.com/HankHuang0516/EClaw/commit/ce8662d362422fdd25037f1deb61dbed9425e2f9))
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* scheduled audit 2026-05-13 — 6 bugs, XSS, i18n ([#2668](https://github.com/HankHuang0516/EClaw/issues/2668)) ([21dd513](https://github.com/HankHuang0516/EClaw/commit/21dd513b4464738de29164265437435ba6cc4817)), closes [#2605](https://github.com/HankHuang0516/EClaw/issues/2605) [#2608](https://github.com/HankHuang0516/EClaw/issues/2608) [#2600](https://github.com/HankHuang0516/EClaw/issues/2600) [#2599](https://github.com/HankHuang0516/EClaw/issues/2599) [#2598](https://github.com/HankHuang0516/EClaw/issues/2598)
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **chat:** smart-chip preview falls back to inline c.comments when /comments fails (PR [#2677](https://github.com/HankHuang0516/EClaw/issues/2677)) ([7f4dffd](https://github.com/HankHuang0516/EClaw/commit/7f4dffd2c83ea86f296b8fa0610f0e67c9f1af11))
* **kanban:** stabilize comment detail viewport ([#2796](https://github.com/HankHuang0516/EClaw/issues/2796)) ([0a10aad](https://github.com/HankHuang0516/EClaw/commit/0a10aadb5a5b12ff23454c16d5c88183b94ad7d7))
* **wallpaper:** stop Android live wallpaper flashing default lobster on companion change ([#2629](https://github.com/HankHuang0516/EClaw/issues/2629)) ([8b4f66f](https://github.com/HankHuang0516/EClaw/commit/8b4f66fcb335bf43128f924b761b6337c817095b)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **chat:** stop chat.html bouncing to dashboard via /api/rental/health-status 401 race ([#2833](https://github.com/HankHuang0516/EClaw/issues/2833)) ([c422406](https://github.com/HankHuang0516/EClaw/commit/c4224067cdcfe7f3e22ab95007c7563dac4196ac))
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **app:** WebView pages honor app-selected locale via ?lang= URL param ([#2672](https://github.com/HankHuang0516/EClaw/issues/2672)) ([8ed8757](https://github.com/HankHuang0516/EClaw/commit/8ed8757aec5bf214e837cc0d81bf2b23f1993a91)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **share-chat:** wire rich CTA actions to msgInput ([#2867](https://github.com/HankHuang0516/EClaw/issues/2867)) ([df23b11](https://github.com/HankHuang0516/EClaw/commit/df23b1147d34c59a644a145bbd87c18b96400acc))


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* **community:** 1-click chat button on bot cards + utm tagging ([#2610](https://github.com/HankHuang0516/EClaw/issues/2610)) ([eee97b0](https://github.com/HankHuang0516/EClaw/commit/eee97b0e2e4e74945ec24f218a69a52800b97a66))
* **chat:** accept ?messageId= as deep-link alias ([#2838](https://github.com/HankHuang0516/EClaw/issues/2838)) ([1785a87](https://github.com/HankHuang0516/EClaw/commit/1785a87310426637fd10df83754fb9924c45207f))
* **chat:** add avatar size preference ([#2714](https://github.com/HankHuang0516/EClaw/issues/2714)) ([6fe164a](https://github.com/HankHuang0516/EClaw/commit/6fe164ad8b22fa576d2dd9ad37c0d9fc295b5a83))
* **dashboard:** add Claude and Codex channel guides ([#2640](https://github.com/HankHuang0516/EClaw/issues/2640)) ([c64e4c4](https://github.com/HankHuang0516/EClaw/commit/c64e4c4afc78db58c5cd578f00486dd7b2fd3311))
* **dashboard:** add Claude Code channel guide card ([#2667](https://github.com/HankHuang0516/EClaw/issues/2667)) ([d70d75c](https://github.com/HankHuang0516/EClaw/commit/d70d75c0c8caa8a540358a9aab4556b8c1927a5c))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* **kanban:** add device-scoped card tags ([#2773](https://github.com/HankHuang0516/EClaw/issues/2773)) ([53a387e](https://github.com/HankHuang0516/EClaw/commit/53a387e67ba7bb4f6bed1c427000c4ae8666577a))
* **portal:** add entity selector to petdx-browser ([#2602](https://github.com/HankHuang0516/EClaw/issues/2602)) ([3fa067e](https://github.com/HankHuang0516/EClaw/commit/3fa067e00b38829b48a37cecd33ee81a9a1122d9))
* **kanban:** add explicit card links ([#2721](https://github.com/HankHuang0516/EClaw/issues/2721)) ([ef9f812](https://github.com/HankHuang0516/EClaw/commit/ef9f812a3fcf39efd07fd158ce90951bdd045ac7))
* **kanban:** add explicit done-card reopen flow ([#2801](https://github.com/HankHuang0516/EClaw/issues/2801)) ([5080aac](https://github.com/HankHuang0516/EClaw/commit/5080aacb75047c0deaa379ee708ec85465afd57c))
* **mindmap:** add GET /api/mindmap/graph force-graph projection ([#2680](https://github.com/HankHuang0516/EClaw/issues/2680)) ([a00b2e7](https://github.com/HankHuang0516/EClaw/commit/a00b2e775af2c4c98cd157f760ad87aeeee469f0)), closes [#2679](https://github.com/HankHuang0516/EClaw/issues/2679) [#2679](https://github.com/HankHuang0516/EClaw/issues/2679)
* **dashboard:** add Hermes channel promo card ([#2708](https://github.com/HankHuang0516/EClaw/issues/2708)) ([337aca1](https://github.com/HankHuang0516/EClaw/commit/337aca153d5a1cd7e888c065f00ae54db7872d91))
* **rental:** add listing soft pause ([#2781](https://github.com/HankHuang0516/EClaw/issues/2781)) ([6586b72](https://github.com/HankHuang0516/EClaw/commit/6586b72717ddb1637d91cd3242c8d2ff554f62b4))
* **portal:** add Nagoya 5D4N trip static cross-ref page ([#2689](https://github.com/HankHuang0516/EClaw/issues/2689)) ([2e0efb6](https://github.com/HankHuang0516/EClaw/commit/2e0efb6dcdaff52226cc8854a96747000b12bdff))
* **portal:** add Nagoya trip map links and image lightbox ([#2821](https://github.com/HankHuang0516/EClaw/issues/2821)) ([3e40955](https://github.com/HankHuang0516/EClaw/commit/3e40955650a05f45a6b9f7e39e73847705424a03))
* **portal/nagoya:** add parking shortcut buttons next to itinerary places ([#2826](https://github.com/HankHuang0516/EClaw/issues/2826)) ([63968c5](https://github.com/HankHuang0516/EClaw/commit/63968c554d046afc8d978de74e3aacbf7700500d))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **settings:** add rental roster management preview ([#2758](https://github.com/HankHuang0516/EClaw/issues/2758)) ([9706e59](https://github.com/HankHuang0516/EClaw/commit/9706e59ded140a90a6e02348124282bc69d89001))
* **rental:** add renter health chat indicator ([#2690](https://github.com/HankHuang0516/EClaw/issues/2690)) ([36cd2e9](https://github.com/HankHuang0516/EClaw/commit/36cd2e9802be4c7ebb03d3024617fa74aca48ffd))
* **ios:** add Tutorial & Intro entry in Settings ([#2800](https://github.com/HankHuang0516/EClaw/issues/2800)) ([ed83e51](https://github.com/HankHuang0516/EClaw/commit/ed83e51d043bf4cd5865f38dc95a91ed54820d6c))
* **landing:** add Watch Full Demo CTA below hero video ([#2799](https://github.com/HankHuang0516/EClaw/issues/2799)) ([66107c9](https://github.com/HankHuang0516/EClaw/commit/66107c954727551fd34d989a4674daaad9b63968))
* **footer:** add Watch Intro Video link in Info column ([#2798](https://github.com/HankHuang0516/EClaw/issues/2798)) ([d7c6d59](https://github.com/HankHuang0516/EClaw/commit/d7c6d596b69c6a5b257bf1f7a792a407ef9712ad))
* **i18n:** ar iter-2 — fill 623 missing keys against en source ([#2847](https://github.com/HankHuang0516/EClaw/issues/2847)) ([ee94a7a](https://github.com/HankHuang0516/EClaw/commit/ee94a7ae6812b5163efe4284ee4907ca32302f5c))
* **kanban:** backlog launch-gate flag to suppress L1/L2/L3 escalation ([#2855](https://github.com/HankHuang0516/EClaw/issues/2855)) ([cb8bf1b](https://github.com/HankHuang0516/EClaw/commit/cb8bf1bb6421f25214f65e129a8cadccc49cc266)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#4](https://github.com/HankHuang0516/EClaw/issues/4) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **companion:** bridge crafter-station/petdex gallery (1784 pets) ([#2601](https://github.com/HankHuang0516/EClaw/issues/2601)) ([2e245be](https://github.com/HankHuang0516/EClaw/commit/2e245bea6dd47ea7361b927d389188a3c23b6bb3))
* **promo:** chat avatar size feature landing page (self-hosted MP4) ([#2722](https://github.com/HankHuang0516/EClaw/issues/2722)) ([3852210](https://github.com/HankHuang0516/EClaw/commit/3852210d355704d018e3daca6b5f9512a011b210)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **kanban:** cron-spawn jitter + lane backpressure to prevent same-tick wedge ([#2791](https://github.com/HankHuang0516/EClaw/issues/2791)) ([9f414a7](https://github.com/HankHuang0516/EClaw/commit/9f414a731d6393672a0a4189c7b408c529ae5e12)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **promo:** embed daily eclaw video 2026-05-14 ([#2786](https://github.com/HankHuang0516/EClaw/issues/2786)) ([718a814](https://github.com/HankHuang0516/EClaw/commit/718a814ab16850bc2b33a1b303841e2c4378ecfa)), closes [#2782](https://github.com/HankHuang0516/EClaw/issues/2782) [#2693](https://github.com/HankHuang0516/EClaw/issues/2693)
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **info:** embed promo video at top of Quick Start tab ([#2797](https://github.com/HankHuang0516/EClaw/issues/2797)) ([047679f](https://github.com/HankHuang0516/EClaw/commit/047679fd57ab9949eaeacea414d5611e71afe041))
* **rental:** enforce strict rebind refunds ([#2703](https://github.com/HankHuang0516/EClaw/issues/2703)) ([a1859c5](https://github.com/HankHuang0516/EClaw/commit/a1859c50e6fb3991d7a8051491502d824a14a116))
* **portal:** group task chip actions ([#2825](https://github.com/HankHuang0516/EClaw/issues/2825)) ([5db5c59](https://github.com/HankHuang0516/EClaw/commit/5db5c59b32b8635f1412205faf0c2f9164d3d5d4))
* **portal:** info-guide-rules + info-guide-soul slide pair ([#2793](https://github.com/HankHuang0516/EClaw/issues/2793)) ([1c8bddc](https://github.com/HankHuang0516/EClaw/commit/1c8bddc4c185054b2b60088498e3d45509117127)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **chat:** link card previews to kanban ([#2754](https://github.com/HankHuang0516/EClaw/issues/2754)) ([2261240](https://github.com/HankHuang0516/EClaw/commit/22612402c2e95efb07246629e81a849be41ee9c7))
* **mission:** link notes to kanban cards ([#2723](https://github.com/HankHuang0516/EClaw/issues/2723)) ([b36dc18](https://github.com/HankHuang0516/EClaw/commit/b36dc18f3a8facf12e0b6046351c222f1e99dc55))
* **mindmap:** mission.html link to /portal/mindmap.html + deprecate /api/mission/mindmap ([#2685](https://github.com/HankHuang0516/EClaw/issues/2685)) ([11e297b](https://github.com/HankHuang0516/EClaw/commit/11e297bab1c9b56fcde3027d6500b7c58891bf18)), closes [#2680](https://github.com/HankHuang0516/EClaw/issues/2680) [#2684](https://github.com/HankHuang0516/EClaw/issues/2684)
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **settings:** per-entity nudge override UI (Phase 2) ([#2837](https://github.com/HankHuang0516/EClaw/issues/2837)) ([ea7662b](https://github.com/HankHuang0516/EClaw/commit/ea7662b0858882dae461e1387f711895924f9ab8)), closes [3/#4](https://github.com/HankHuang0516/EClaw/issues/4)
* **kanban:** per-entity nudge overrides (Phase 2 of card_e066cb6b) ([#2836](https://github.com/HankHuang0516/EClaw/issues/2836)) ([0425f80](https://github.com/HankHuang0516/EClaw/commit/0425f80bc1169c0d506b665659c8676695c45553))
* **avatar:** petdx render on card-holder my-cards (Phase 1b) ([#2621](https://github.com/HankHuang0516/EClaw/issues/2621)) ([f78ba8b](https://github.com/HankHuang0516/EClaw/commit/f78ba8b18acc426936ab6d8a82ca7541effea00d))
* **avatar:** petdx render on dashboard entity grid / org chart / bindings (Phase 1b) ([#2622](https://github.com/HankHuang0516/EClaw/issues/2622)) ([f417749](https://github.com/HankHuang0516/EClaw/commit/f41774914451048e8cd76e9ae30416a0642e173b)), closes [#2620](https://github.com/HankHuang0516/EClaw/issues/2620) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621)
* **avatar:** petdx render on kanban auto-assign / pulse / comment avatars (Phase 1b) ([#2624](https://github.com/HankHuang0516/EClaw/issues/2624)) ([6bff5f8](https://github.com/HankHuang0516/EClaw/commit/6bff5f80440d0bd91a6b1721cde9478d685c4d46))
* **avatar:** petdx render on mission skill/rule/soul entity dialogs (Phase 1b) ([#2623](https://github.com/HankHuang0516/EClaw/issues/2623)) ([129327b](https://github.com/HankHuang0516/EClaw/commit/129327bc7b91056659f1ab7e8d5e3f5260d951fb))
* **mindmap:** portal/mindmap.html force-graph prototype ([#129](https://github.com/HankHuang0516/EClaw/issues/129)) ([#2681](https://github.com/HankHuang0516/EClaw/issues/2681)) ([0f15e69](https://github.com/HankHuang0516/EClaw/commit/0f15e6930f0697c37fa08f3219edb8f9e499837f)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **portal:** redo nagoya trip page in professional tour-guide style ([#2691](https://github.com/HankHuang0516/EClaw/issues/2691)) ([b2378c0](https://github.com/HankHuang0516/EClaw/commit/b2378c06ee20fa9cccfdceceb1a4c9e0b3072f59))
* **i18n:** remove ms+hi orphan keys from i18n.js ([#2849](https://github.com/HankHuang0516/EClaw/issues/2849)) ([320176c](https://github.com/HankHuang0516/EClaw/commit/320176c06a3cfd8631e2a82ad02a6bd6a9af0389))
* **avatar:** render selected petdx companion in chat avatars ([#2620](https://github.com/HankHuang0516/EClaw/issues/2620)) ([0bdd046](https://github.com/HankHuang0516/EClaw/commit/0bdd046fe1b1c428e32edda366ff112c08927f4c))
* **home:** replace native home with WebView hosting dashboard.html ([#2634](https://github.com/HankHuang0516/EClaw/issues/2634)) ([e69ea81](https://github.com/HankHuang0516/EClaw/commit/e69ea8160c239b083a83d6dc83a4f1c3f901c863))
* **app:** route chat mission jumps through native tabs ([#2824](https://github.com/HankHuang0516/EClaw/issues/2824)) ([deb07b6](https://github.com/HankHuang0516/EClaw/commit/deb07b69a9ecca632fe27278de537f1d85234e94))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **chat:** support message deep links ([#2719](https://github.com/HankHuang0516/EClaw/issues/2719)) ([2dc0f1e](https://github.com/HankHuang0516/EClaw/commit/2dc0f1eeb259e1a0848db4a03186b989372cd91c))
* **mission:** support note deep links ([#2717](https://github.com/HankHuang0516/EClaw/issues/2717)) ([2efd3a5](https://github.com/HankHuang0516/EClaw/commit/2efd3a5e741217a07c0b0ac54a0ddd010e0ebe23))
* **share-chat:** twitter card + per-bot og:image/twitter:* in SSR ([#2609](https://github.com/HankHuang0516/EClaw/issues/2609)) ([6cdc853](https://github.com/HankHuang0516/EClaw/commit/6cdc853dc884cdb95bd47214942768981f218ae0))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))
* **settings:** wire petdx avatar into channel-account chips ([#2626](https://github.com/HankHuang0516/EClaw/issues/2626)) ([88aec77](https://github.com/HankHuang0516/EClaw/commit/88aec772628c240e97b336bb5820892ad632d1ae))
* **files:** wire petdx avatar into entity filter & per-file badges ([#2627](https://github.com/HankHuang0516/EClaw/issues/2627)) ([5b3e5cc](https://github.com/HankHuang0516/EClaw/commit/5b3e5cc542d9da69bb4e92500fd03a542ea33f00))
* **mindmap:** wrap hardcoded zh-TW UI strings with i18n t() ([#2607](https://github.com/HankHuang0516/EClaw/issues/2607)) ([166af87](https://github.com/HankHuang0516/EClaw/commit/166af8772b2121a24aaf34a83b3de970e9b3b571)), closes [#2606](https://github.com/HankHuang0516/EClaw/issues/2606)
* **i18n:** zh-TW backfill 8 keys (soft-pause + chat + invite + wallet) ([#2815](https://github.com/HankHuang0516/EClaw/issues/2815)) ([a2dd574](https://github.com/HankHuang0516/EClaw/commit/a2dd5743ce8d43a4b6ace9a2fd4b52568180d6c5))


### Performance Improvements

* **mindmap:** force-graph hardening for 1000/2000-node graphs ([#2684](https://github.com/HankHuang0516/EClaw/issues/2684)) ([da8b1c8](https://github.com/HankHuang0516/EClaw/commit/da8b1c8f947ab8bc8fa455c1962a91146623a1fc))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-20)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **notifications:** add kanban_done + kanban_done_auto toggles to Android Settings ([#2636](https://github.com/HankHuang0516/EClaw/issues/2636)) ([a710909](https://github.com/HankHuang0516/EClaw/commit/a7109095e3393b8564e7ef1b23d382a4fbb944b8))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **i18n:** ar block — fix 27 broken entries (CJK leaks + truncated HTML) ([#2851](https://github.com/HankHuang0516/EClaw/issues/2851)) ([5b19175](https://github.com/HankHuang0516/EClaw/commit/5b19175d712d00d16fcec00b749035c4beae7a5c))
* **chat:** atomic-load target bar (await contacts before first render) ([#2831](https://github.com/HankHuang0516/EClaw/issues/2831)) ([5f529e6](https://github.com/HankHuang0516/EClaw/commit/5f529e6b772eacc38ba1de69b44258a05f0d816a)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2](https://github.com/HankHuang0516/EClaw/issues/2)
* **rental:** bump handshake timeout to 60s + timeout-aware discovery fallback ([#2863](https://github.com/HankHuang0516/EClaw/issues/2863)) ([fd4322f](https://github.com/HankHuang0516/EClaw/commit/fd4322f8890f3c2dfca3acdae6a4b95f19c381f9)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **i18n:** clear batch 1 residual missing keys ([#2790](https://github.com/HankHuang0516/EClaw/issues/2790)) ([211030e](https://github.com/HankHuang0516/EClaw/commit/211030e0b0b6a865c11f0c4ed60dc4e356d43b7a))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **kanban:** comment input no longer overlaps last comment in card detail (PR [#2678](https://github.com/HankHuang0516/EClaw/issues/2678)) ([fba91fc](https://github.com/HankHuang0516/EClaw/commit/fba91fca15402b453a0db5ee857c0b16e6087055))
* **chat:** compact 20px avatar in target bar (App WebView only shows [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2](https://github.com/HankHuang0516/EClaw/issues/2)) ([#2830](https://github.com/HankHuang0516/EClaw/issues/2830)) ([42c7543](https://github.com/HankHuang0516/EClaw/commit/42c7543b4a78a7abf3f5f7535eb9bc6142cd0fe2)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **portal:** complete 401 redirect sweep + mobile UIUX truncation ([#2842](https://github.com/HankHuang0516/EClaw/issues/2842)) ([f9799ba](https://github.com/HankHuang0516/EClaw/commit/f9799ba42498b109f0a8a70e80836aa6da51e216)), closes [#2833](https://github.com/HankHuang0516/EClaw/issues/2833) [#2845](https://github.com/HankHuang0516/EClaw/issues/2845) [#2844](https://github.com/HankHuang0516/EClaw/issues/2844) [#2843](https://github.com/HankHuang0516/EClaw/issues/2843)
* **uiux:** continue qa mobile readability sweep ([#2854](https://github.com/HankHuang0516/EClaw/issues/2854)) ([57606ff](https://github.com/HankHuang0516/EClaw/commit/57606ffe3e543b07a026aacc53c4b470c9a7825b))
* **i18n:** cover dynamic portal wrapper keys ([#2807](https://github.com/HankHuang0516/EClaw/issues/2807)) ([4c711cc](https://github.com/HankHuang0516/EClaw/commit/4c711cc4009300ffe4e8933a98ee01cd0fdd6aeb))
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **rental:** don't pollute entity.message on push gateway timeout ([#2860](https://github.com/HankHuang0516/EClaw/issues/2860)) ([592ba44](https://github.com/HankHuang0516/EClaw/commit/592ba44f57536ee00011b6cbddaa6b129a7cbae9))
* **petdx:** drop dark-grey loading placeholder + preload sprite WEBP ([#2628](https://github.com/HankHuang0516/EClaw/issues/2628)) ([59cef38](https://github.com/HankHuang0516/EClaw/commit/59cef387bd69ca99d7d15c86a1364856d3849ad8)), closes [#1a1a1a](https://github.com/HankHuang0516/EClaw/issues/1a1a1a)
* **security:** escape innerHTML in chat modal error messages ([#2819](https://github.com/HankHuang0516/EClaw/issues/2819)) ([dce07ad](https://github.com/HankHuang0516/EClaw/commit/dce07adde64795916dba977ae23e46f3371ce7ed)), closes [#2809](https://github.com/HankHuang0516/EClaw/issues/2809) [#2810](https://github.com/HankHuang0516/EClaw/issues/2810) [#2809](https://github.com/HankHuang0516/EClaw/issues/2809) [#2810](https://github.com/HankHuang0516/EClaw/issues/2810)
* **entities:** expose botSecret to owner so wallpaper service can poll companions ([#2615](https://github.com/HankHuang0516/EClaw/issues/2615)) ([04470fc](https://github.com/HankHuang0516/EClaw/commit/04470fce8f8c3fce2b1ba8b243e776606f107502))
* **rental:** expose owner_public_code in marketplace so plaza CTA can route ([#2616](https://github.com/HankHuang0516/EClaw/issues/2616)) ([4d1372f](https://github.com/HankHuang0516/EClaw/commit/4d1372f717d93cab65543e87c852e74e9fb67071)), closes [#2610](https://github.com/HankHuang0516/EClaw/issues/2610)
* **mindmap:** fallback to device scope when entityId is null ([#2728](https://github.com/HankHuang0516/EClaw/issues/2728)) ([7572312](https://github.com/HankHuang0516/EClaw/commit/7572312433d3d75fc245eda48a28919ce14bd927))
* **i18n:** fill Spanish drift keys ([#2751](https://github.com/HankHuang0516/EClaw/issues/2751)) ([0ad0ee5](https://github.com/HankHuang0516/EClaw/commit/0ad0ee55f7fac3e6ac46d891539950dab4d553cc))
* **portal:** fit embedded org chart to mobile viewport ([#2674](https://github.com/HankHuang0516/EClaw/issues/2674)) ([1c4e1b4](https://github.com/HankHuang0516/EClaw/commit/1c4e1b413ea7027b4cd4b8ecda981b0d0e12e66b))
* **i18n:** fix 6 trailing-comma syntax errors in 10-locale batch ([#2771](https://github.com/HankHuang0516/EClaw/issues/2771)) ([b27c6ca](https://github.com/HankHuang0516/EClaw/commit/b27c6ca204bf813e406c54ce3a2532a5f1f031b3))
* **kanban:** GET card returns latest 50 comments + comments endpoint exposes total ([#2816](https://github.com/HankHuang0516/EClaw/issues/2816)) ([c4d83f7](https://github.com/HankHuang0516/EClaw/commit/c4d83f777a1cd26aea0936e4316aa35c52822eef))
* **sharechat:** guest verify-email modal + disabled Send for unverified ([#2865](https://github.com/HankHuang0516/EClaw/issues/2865)) ([cb3b061](https://github.com/HankHuang0516/EClaw/commit/cb3b0614e0f6160417d907753e66eceb2d666802))
* **uiux:** harden chat previews and roster preview ([#2769](https://github.com/HankHuang0516/EClaw/issues/2769)) ([466d4d3](https://github.com/HankHuang0516/EClaw/commit/466d4d3ef81c628d3f58db64323946053d7bf61c))
* **mention-parser:** ignore @-mentions inside markdown code spans ([#2645](https://github.com/HankHuang0516/EClaw/issues/2645)) ([8da19d4](https://github.com/HankHuang0516/EClaw/commit/8da19d4a79ceb4152bf2144ee0847c61ce3e1def)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **kanban:** lazy-load dependency chips via IntersectionObserver ([#2632](https://github.com/HankHuang0516/EClaw/issues/2632)) ([20586b4](https://github.com/HankHuang0516/EClaw/commit/20586b43357335f9eb6a190c02d58c8e36b58aba)), closes [#2631](https://github.com/HankHuang0516/EClaw/issues/2631)
* **kanban:** make card sorting deterministic ([#2756](https://github.com/HankHuang0516/EClaw/issues/2756)) ([48e2117](https://github.com/HankHuang0516/EClaw/commit/48e2117b64e37f05dc635e0a3b67bfd43cbe48f5))
* **org-chart:** notify affected bots on hierarchy change ([#2812](https://github.com/HankHuang0516/EClaw/issues/2812)) ([55675fd](https://github.com/HankHuang0516/EClaw/commit/55675fdf4487494d729a29524b32bd81b756a00c)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** notify reviewer on manual /move → review ([#2753](https://github.com/HankHuang0516/EClaw/issues/2753)) ([6cbbb4e](https://github.com/HankHuang0516/EClaw/commit/6cbbb4ee8c0d4d8ad54df2e9b5faaa3699bd530f))
* **wallpaper:** off-load spritesheet fetch to IO so per-petdx sprites actually render ([#2618](https://github.com/HankHuang0516/EClaw/issues/2618)) ([61b832c](https://github.com/HankHuang0516/EClaw/commit/61b832c9fa8a1d0caab810ccc942d85c63349267)), closes [#2615](https://github.com/HankHuang0516/EClaw/issues/2615) [#2577](https://github.com/HankHuang0516/EClaw/issues/2577)
* **security:** patch P0 sanitize-html XSS + P1 protobufjs + exam.html XSS ([#2829](https://github.com/HankHuang0516/EClaw/issues/2829)) ([c71b871](https://github.com/HankHuang0516/EClaw/commit/c71b871a045887375dd0d26d1a3280a0891a89ad))
* **portal:** petdx-browser cookie-session fallback for device-login ([#2757](https://github.com/HankHuang0516/EClaw/issues/2757)) ([ca275f4](https://github.com/HankHuang0516/EClaw/commit/ca275f4519835da0c7ad71c588908a18f6f138d8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **api:** platform-stats 500 + entity/lookup publicCode alias ([#2809](https://github.com/HankHuang0516/EClaw/issues/2809), [#2810](https://github.com/HankHuang0516/EClaw/issues/2810)) ([#2818](https://github.com/HankHuang0516/EClaw/issues/2818)) ([f99fd17](https://github.com/HankHuang0516/EClaw/commit/f99fd17b2b1c32d88daa2510ff66d714c1a53edc))
* **i18n:** positional format specifiers for feedback_result_logs (7 locales) ([#2597](https://github.com/HankHuang0516/EClaw/issues/2597)) ([21aedc7](https://github.com/HankHuang0516/EClaw/commit/21aedc7eebc7a2839e340136f38dfdfd4dabb9dc))
* **avatar-petdx:** preserve descriptor across transient API failures (flicker) ([#2625](https://github.com/HankHuang0516/EClaw/issues/2625)) ([7b1c606](https://github.com/HankHuang0516/EClaw/commit/7b1c606514f7698d72ec95cf6c556e4043966186))
* **chat:** preserve scroll anchor while reading history ([#2693](https://github.com/HankHuang0516/EClaw/issues/2693)) ([945fdb7](https://github.com/HankHuang0516/EClaw/commit/945fdb7192b791b31882e1e75568dd8b11e4686f))
* **promo:** pull video embed from /promo-chat-avatar.html ([#2724](https://github.com/HankHuang0516/EClaw/issues/2724)) ([2afabc8](https://github.com/HankHuang0516/EClaw/commit/2afabc8c5ff8b25218a7cb857e8adfa572c8e9d5))
* **kanban:** realign stale recurring schedules ([#2785](https://github.com/HankHuang0516/EClaw/issues/2785)) ([ab8ee25](https://github.com/HankHuang0516/EClaw/commit/ab8ee250a9b37f3d3e838bb01d8866c8d2b78231))
* **portal:** reduce QA-discovered request fanout ([#2656](https://github.com/HankHuang0516/EClaw/issues/2656)) ([1e46d6b](https://github.com/HankHuang0516/EClaw/commit/1e46d6bab61e58c65b452b6503d953f8dddeee75))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **portal:** remove org chart fit scale floor ([#2676](https://github.com/HankHuang0516/EClaw/issues/2676)) ([0f01606](https://github.com/HankHuang0516/EClaw/commit/0f016068b963bb5f800a02f28817c7174979d913))
* **rental:** remove phantom 'webhook test push' step from BIND_COMPLETE ([#2864](https://github.com/HankHuang0516/EClaw/issues/2864)) ([47f4a3e](https://github.com/HankHuang0516/EClaw/commit/47f4a3edf76aa95ebd06d8713cd44fda6eef9b5d))
* **i18n:** rename mm_empty_title → mm_state_empty_title in mindmap.html ([#2683](https://github.com/HankHuang0516/EClaw/issues/2683)) ([c79c109](https://github.com/HankHuang0516/EClaw/commit/c79c109bea23142e8a6d9ace976d105af1280ec9))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **chat:** render mention avatars with companion renderer ([#2633](https://github.com/HankHuang0516/EClaw/issues/2633)) ([03e205f](https://github.com/HankHuang0516/EClaw/commit/03e205f663ecd2c2f443d4009dd5af0093f0bbbb))
* **kanban:** reserve mobile comments panel height ([#2782](https://github.com/HankHuang0516/EClaw/issues/2782)) ([ce8662d](https://github.com/HankHuang0516/EClaw/commit/ce8662d362422fdd25037f1deb61dbed9425e2f9))
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* scheduled audit 2026-05-13 — 6 bugs, XSS, i18n ([#2668](https://github.com/HankHuang0516/EClaw/issues/2668)) ([21dd513](https://github.com/HankHuang0516/EClaw/commit/21dd513b4464738de29164265437435ba6cc4817)), closes [#2605](https://github.com/HankHuang0516/EClaw/issues/2605) [#2608](https://github.com/HankHuang0516/EClaw/issues/2608) [#2600](https://github.com/HankHuang0516/EClaw/issues/2600) [#2599](https://github.com/HankHuang0516/EClaw/issues/2599) [#2598](https://github.com/HankHuang0516/EClaw/issues/2598)
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **chat:** smart-chip preview falls back to inline c.comments when /comments fails (PR [#2677](https://github.com/HankHuang0516/EClaw/issues/2677)) ([7f4dffd](https://github.com/HankHuang0516/EClaw/commit/7f4dffd2c83ea86f296b8fa0610f0e67c9f1af11))
* **kanban:** stabilize comment detail viewport ([#2796](https://github.com/HankHuang0516/EClaw/issues/2796)) ([0a10aad](https://github.com/HankHuang0516/EClaw/commit/0a10aadb5a5b12ff23454c16d5c88183b94ad7d7))
* **wallpaper:** stop Android live wallpaper flashing default lobster on companion change ([#2629](https://github.com/HankHuang0516/EClaw/issues/2629)) ([8b4f66f](https://github.com/HankHuang0516/EClaw/commit/8b4f66fcb335bf43128f924b761b6337c817095b)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **chat:** stop chat.html bouncing to dashboard via /api/rental/health-status 401 race ([#2833](https://github.com/HankHuang0516/EClaw/issues/2833)) ([c422406](https://github.com/HankHuang0516/EClaw/commit/c4224067cdcfe7f3e22ab95007c7563dac4196ac))
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **app:** WebView pages honor app-selected locale via ?lang= URL param ([#2672](https://github.com/HankHuang0516/EClaw/issues/2672)) ([8ed8757](https://github.com/HankHuang0516/EClaw/commit/8ed8757aec5bf214e837cc0d81bf2b23f1993a91)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **share-chat:** wire rich CTA actions to msgInput ([#2867](https://github.com/HankHuang0516/EClaw/issues/2867)) ([df23b11](https://github.com/HankHuang0516/EClaw/commit/df23b1147d34c59a644a145bbd87c18b96400acc))


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* **community:** 1-click chat button on bot cards + utm tagging ([#2610](https://github.com/HankHuang0516/EClaw/issues/2610)) ([eee97b0](https://github.com/HankHuang0516/EClaw/commit/eee97b0e2e4e74945ec24f218a69a52800b97a66))
* **chat:** accept ?messageId= as deep-link alias ([#2838](https://github.com/HankHuang0516/EClaw/issues/2838)) ([1785a87](https://github.com/HankHuang0516/EClaw/commit/1785a87310426637fd10df83754fb9924c45207f))
* **chat:** add avatar size preference ([#2714](https://github.com/HankHuang0516/EClaw/issues/2714)) ([6fe164a](https://github.com/HankHuang0516/EClaw/commit/6fe164ad8b22fa576d2dd9ad37c0d9fc295b5a83))
* **dashboard:** add Claude and Codex channel guides ([#2640](https://github.com/HankHuang0516/EClaw/issues/2640)) ([c64e4c4](https://github.com/HankHuang0516/EClaw/commit/c64e4c4afc78db58c5cd578f00486dd7b2fd3311))
* **dashboard:** add Claude Code channel guide card ([#2667](https://github.com/HankHuang0516/EClaw/issues/2667)) ([d70d75c](https://github.com/HankHuang0516/EClaw/commit/d70d75c0c8caa8a540358a9aab4556b8c1927a5c))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* **kanban:** add device-scoped card tags ([#2773](https://github.com/HankHuang0516/EClaw/issues/2773)) ([53a387e](https://github.com/HankHuang0516/EClaw/commit/53a387e67ba7bb4f6bed1c427000c4ae8666577a))
* **portal:** add entity selector to petdx-browser ([#2602](https://github.com/HankHuang0516/EClaw/issues/2602)) ([3fa067e](https://github.com/HankHuang0516/EClaw/commit/3fa067e00b38829b48a37cecd33ee81a9a1122d9))
* **kanban:** add explicit card links ([#2721](https://github.com/HankHuang0516/EClaw/issues/2721)) ([ef9f812](https://github.com/HankHuang0516/EClaw/commit/ef9f812a3fcf39efd07fd158ce90951bdd045ac7))
* **kanban:** add explicit done-card reopen flow ([#2801](https://github.com/HankHuang0516/EClaw/issues/2801)) ([5080aac](https://github.com/HankHuang0516/EClaw/commit/5080aacb75047c0deaa379ee708ec85465afd57c))
* **mindmap:** add GET /api/mindmap/graph force-graph projection ([#2680](https://github.com/HankHuang0516/EClaw/issues/2680)) ([a00b2e7](https://github.com/HankHuang0516/EClaw/commit/a00b2e775af2c4c98cd157f760ad87aeeee469f0)), closes [#2679](https://github.com/HankHuang0516/EClaw/issues/2679) [#2679](https://github.com/HankHuang0516/EClaw/issues/2679)
* **dashboard:** add Hermes channel promo card ([#2708](https://github.com/HankHuang0516/EClaw/issues/2708)) ([337aca1](https://github.com/HankHuang0516/EClaw/commit/337aca153d5a1cd7e888c065f00ae54db7872d91))
* **rental:** add listing soft pause ([#2781](https://github.com/HankHuang0516/EClaw/issues/2781)) ([6586b72](https://github.com/HankHuang0516/EClaw/commit/6586b72717ddb1637d91cd3242c8d2ff554f62b4))
* **portal:** add Nagoya 5D4N trip static cross-ref page ([#2689](https://github.com/HankHuang0516/EClaw/issues/2689)) ([2e0efb6](https://github.com/HankHuang0516/EClaw/commit/2e0efb6dcdaff52226cc8854a96747000b12bdff))
* **portal:** add Nagoya trip map links and image lightbox ([#2821](https://github.com/HankHuang0516/EClaw/issues/2821)) ([3e40955](https://github.com/HankHuang0516/EClaw/commit/3e40955650a05f45a6b9f7e39e73847705424a03))
* **portal/nagoya:** add parking shortcut buttons next to itinerary places ([#2826](https://github.com/HankHuang0516/EClaw/issues/2826)) ([63968c5](https://github.com/HankHuang0516/EClaw/commit/63968c554d046afc8d978de74e3aacbf7700500d))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **settings:** add rental roster management preview ([#2758](https://github.com/HankHuang0516/EClaw/issues/2758)) ([9706e59](https://github.com/HankHuang0516/EClaw/commit/9706e59ded140a90a6e02348124282bc69d89001))
* **rental:** add renter health chat indicator ([#2690](https://github.com/HankHuang0516/EClaw/issues/2690)) ([36cd2e9](https://github.com/HankHuang0516/EClaw/commit/36cd2e9802be4c7ebb03d3024617fa74aca48ffd))
* **ios:** add Tutorial & Intro entry in Settings ([#2800](https://github.com/HankHuang0516/EClaw/issues/2800)) ([ed83e51](https://github.com/HankHuang0516/EClaw/commit/ed83e51d043bf4cd5865f38dc95a91ed54820d6c))
* **landing:** add Watch Full Demo CTA below hero video ([#2799](https://github.com/HankHuang0516/EClaw/issues/2799)) ([66107c9](https://github.com/HankHuang0516/EClaw/commit/66107c954727551fd34d989a4674daaad9b63968))
* **footer:** add Watch Intro Video link in Info column ([#2798](https://github.com/HankHuang0516/EClaw/issues/2798)) ([d7c6d59](https://github.com/HankHuang0516/EClaw/commit/d7c6d596b69c6a5b257bf1f7a792a407ef9712ad))
* **i18n:** ar iter-2 — fill 623 missing keys against en source ([#2847](https://github.com/HankHuang0516/EClaw/issues/2847)) ([ee94a7a](https://github.com/HankHuang0516/EClaw/commit/ee94a7ae6812b5163efe4284ee4907ca32302f5c))
* **kanban:** backlog launch-gate flag to suppress L1/L2/L3 escalation ([#2855](https://github.com/HankHuang0516/EClaw/issues/2855)) ([cb8bf1b](https://github.com/HankHuang0516/EClaw/commit/cb8bf1bb6421f25214f65e129a8cadccc49cc266)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#4](https://github.com/HankHuang0516/EClaw/issues/4) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **companion:** bridge crafter-station/petdex gallery (1784 pets) ([#2601](https://github.com/HankHuang0516/EClaw/issues/2601)) ([2e245be](https://github.com/HankHuang0516/EClaw/commit/2e245bea6dd47ea7361b927d389188a3c23b6bb3))
* **promo:** chat avatar size feature landing page (self-hosted MP4) ([#2722](https://github.com/HankHuang0516/EClaw/issues/2722)) ([3852210](https://github.com/HankHuang0516/EClaw/commit/3852210d355704d018e3daca6b5f9512a011b210)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **kanban:** cron-spawn jitter + lane backpressure to prevent same-tick wedge ([#2791](https://github.com/HankHuang0516/EClaw/issues/2791)) ([9f414a7](https://github.com/HankHuang0516/EClaw/commit/9f414a731d6393672a0a4189c7b408c529ae5e12)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **promo:** embed daily eclaw video 2026-05-14 ([#2786](https://github.com/HankHuang0516/EClaw/issues/2786)) ([718a814](https://github.com/HankHuang0516/EClaw/commit/718a814ab16850bc2b33a1b303841e2c4378ecfa)), closes [#2782](https://github.com/HankHuang0516/EClaw/issues/2782) [#2693](https://github.com/HankHuang0516/EClaw/issues/2693)
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **info:** embed promo video at top of Quick Start tab ([#2797](https://github.com/HankHuang0516/EClaw/issues/2797)) ([047679f](https://github.com/HankHuang0516/EClaw/commit/047679fd57ab9949eaeacea414d5611e71afe041))
* **rental:** enforce strict rebind refunds ([#2703](https://github.com/HankHuang0516/EClaw/issues/2703)) ([a1859c5](https://github.com/HankHuang0516/EClaw/commit/a1859c50e6fb3991d7a8051491502d824a14a116))
* **portal:** group task chip actions ([#2825](https://github.com/HankHuang0516/EClaw/issues/2825)) ([5db5c59](https://github.com/HankHuang0516/EClaw/commit/5db5c59b32b8635f1412205faf0c2f9164d3d5d4))
* **portal:** info-guide-rules + info-guide-soul slide pair ([#2793](https://github.com/HankHuang0516/EClaw/issues/2793)) ([1c8bddc](https://github.com/HankHuang0516/EClaw/commit/1c8bddc4c185054b2b60088498e3d45509117127)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **chat:** link card previews to kanban ([#2754](https://github.com/HankHuang0516/EClaw/issues/2754)) ([2261240](https://github.com/HankHuang0516/EClaw/commit/22612402c2e95efb07246629e81a849be41ee9c7))
* **mission:** link notes to kanban cards ([#2723](https://github.com/HankHuang0516/EClaw/issues/2723)) ([b36dc18](https://github.com/HankHuang0516/EClaw/commit/b36dc18f3a8facf12e0b6046351c222f1e99dc55))
* **mindmap:** mission.html link to /portal/mindmap.html + deprecate /api/mission/mindmap ([#2685](https://github.com/HankHuang0516/EClaw/issues/2685)) ([11e297b](https://github.com/HankHuang0516/EClaw/commit/11e297bab1c9b56fcde3027d6500b7c58891bf18)), closes [#2680](https://github.com/HankHuang0516/EClaw/issues/2680) [#2684](https://github.com/HankHuang0516/EClaw/issues/2684)
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **settings:** per-entity nudge override UI (Phase 2) ([#2837](https://github.com/HankHuang0516/EClaw/issues/2837)) ([ea7662b](https://github.com/HankHuang0516/EClaw/commit/ea7662b0858882dae461e1387f711895924f9ab8)), closes [3/#4](https://github.com/HankHuang0516/EClaw/issues/4)
* **kanban:** per-entity nudge overrides (Phase 2 of card_e066cb6b) ([#2836](https://github.com/HankHuang0516/EClaw/issues/2836)) ([0425f80](https://github.com/HankHuang0516/EClaw/commit/0425f80bc1169c0d506b665659c8676695c45553))
* **avatar:** petdx render on card-holder my-cards (Phase 1b) ([#2621](https://github.com/HankHuang0516/EClaw/issues/2621)) ([f78ba8b](https://github.com/HankHuang0516/EClaw/commit/f78ba8b18acc426936ab6d8a82ca7541effea00d))
* **avatar:** petdx render on dashboard entity grid / org chart / bindings (Phase 1b) ([#2622](https://github.com/HankHuang0516/EClaw/issues/2622)) ([f417749](https://github.com/HankHuang0516/EClaw/commit/f41774914451048e8cd76e9ae30416a0642e173b)), closes [#2620](https://github.com/HankHuang0516/EClaw/issues/2620) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621)
* **avatar:** petdx render on kanban auto-assign / pulse / comment avatars (Phase 1b) ([#2624](https://github.com/HankHuang0516/EClaw/issues/2624)) ([6bff5f8](https://github.com/HankHuang0516/EClaw/commit/6bff5f80440d0bd91a6b1721cde9478d685c4d46))
* **avatar:** petdx render on mission skill/rule/soul entity dialogs (Phase 1b) ([#2623](https://github.com/HankHuang0516/EClaw/issues/2623)) ([129327b](https://github.com/HankHuang0516/EClaw/commit/129327bc7b91056659f1ab7e8d5e3f5260d951fb))
* **mindmap:** portal/mindmap.html force-graph prototype ([#129](https://github.com/HankHuang0516/EClaw/issues/129)) ([#2681](https://github.com/HankHuang0516/EClaw/issues/2681)) ([0f15e69](https://github.com/HankHuang0516/EClaw/commit/0f15e6930f0697c37fa08f3219edb8f9e499837f)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **portal:** redo nagoya trip page in professional tour-guide style ([#2691](https://github.com/HankHuang0516/EClaw/issues/2691)) ([b2378c0](https://github.com/HankHuang0516/EClaw/commit/b2378c06ee20fa9cccfdceceb1a4c9e0b3072f59))
* **i18n:** remove ms+hi orphan keys from i18n.js ([#2849](https://github.com/HankHuang0516/EClaw/issues/2849)) ([320176c](https://github.com/HankHuang0516/EClaw/commit/320176c06a3cfd8631e2a82ad02a6bd6a9af0389))
* **avatar:** render selected petdx companion in chat avatars ([#2620](https://github.com/HankHuang0516/EClaw/issues/2620)) ([0bdd046](https://github.com/HankHuang0516/EClaw/commit/0bdd046fe1b1c428e32edda366ff112c08927f4c))
* **home:** replace native home with WebView hosting dashboard.html ([#2634](https://github.com/HankHuang0516/EClaw/issues/2634)) ([e69ea81](https://github.com/HankHuang0516/EClaw/commit/e69ea8160c239b083a83d6dc83a4f1c3f901c863))
* **app:** route chat mission jumps through native tabs ([#2824](https://github.com/HankHuang0516/EClaw/issues/2824)) ([deb07b6](https://github.com/HankHuang0516/EClaw/commit/deb07b69a9ecca632fe27278de537f1d85234e94))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **chat:** support message deep links ([#2719](https://github.com/HankHuang0516/EClaw/issues/2719)) ([2dc0f1e](https://github.com/HankHuang0516/EClaw/commit/2dc0f1eeb259e1a0848db4a03186b989372cd91c))
* **mission:** support note deep links ([#2717](https://github.com/HankHuang0516/EClaw/issues/2717)) ([2efd3a5](https://github.com/HankHuang0516/EClaw/commit/2efd3a5e741217a07c0b0ac54a0ddd010e0ebe23))
* **share-chat:** twitter card + per-bot og:image/twitter:* in SSR ([#2609](https://github.com/HankHuang0516/EClaw/issues/2609)) ([6cdc853](https://github.com/HankHuang0516/EClaw/commit/6cdc853dc884cdb95bd47214942768981f218ae0))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))
* **settings:** wire petdx avatar into channel-account chips ([#2626](https://github.com/HankHuang0516/EClaw/issues/2626)) ([88aec77](https://github.com/HankHuang0516/EClaw/commit/88aec772628c240e97b336bb5820892ad632d1ae))
* **files:** wire petdx avatar into entity filter & per-file badges ([#2627](https://github.com/HankHuang0516/EClaw/issues/2627)) ([5b3e5cc](https://github.com/HankHuang0516/EClaw/commit/5b3e5cc542d9da69bb4e92500fd03a542ea33f00))
* **mindmap:** wrap hardcoded zh-TW UI strings with i18n t() ([#2607](https://github.com/HankHuang0516/EClaw/issues/2607)) ([166af87](https://github.com/HankHuang0516/EClaw/commit/166af8772b2121a24aaf34a83b3de970e9b3b571)), closes [#2606](https://github.com/HankHuang0516/EClaw/issues/2606)
* **i18n:** zh-TW backfill 8 keys (soft-pause + chat + invite + wallet) ([#2815](https://github.com/HankHuang0516/EClaw/issues/2815)) ([a2dd574](https://github.com/HankHuang0516/EClaw/commit/a2dd5743ce8d43a4b6ace9a2fd4b52568180d6c5))


### Performance Improvements

* **mindmap:** force-graph hardening for 1000/2000-node graphs ([#2684](https://github.com/HankHuang0516/EClaw/issues/2684)) ([da8b1c8](https://github.com/HankHuang0516/EClaw/commit/da8b1c8f947ab8bc8fa455c1962a91146623a1fc))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-20)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **notifications:** add kanban_done + kanban_done_auto toggles to Android Settings ([#2636](https://github.com/HankHuang0516/EClaw/issues/2636)) ([a710909](https://github.com/HankHuang0516/EClaw/commit/a7109095e3393b8564e7ef1b23d382a4fbb944b8))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **i18n:** ar block — fix 27 broken entries (CJK leaks + truncated HTML) ([#2851](https://github.com/HankHuang0516/EClaw/issues/2851)) ([5b19175](https://github.com/HankHuang0516/EClaw/commit/5b19175d712d00d16fcec00b749035c4beae7a5c))
* **chat:** atomic-load target bar (await contacts before first render) ([#2831](https://github.com/HankHuang0516/EClaw/issues/2831)) ([5f529e6](https://github.com/HankHuang0516/EClaw/commit/5f529e6b772eacc38ba1de69b44258a05f0d816a)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2](https://github.com/HankHuang0516/EClaw/issues/2)
* **rental:** bump handshake timeout to 60s + timeout-aware discovery fallback ([#2863](https://github.com/HankHuang0516/EClaw/issues/2863)) ([fd4322f](https://github.com/HankHuang0516/EClaw/commit/fd4322f8890f3c2dfca3acdae6a4b95f19c381f9)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **i18n:** clear batch 1 residual missing keys ([#2790](https://github.com/HankHuang0516/EClaw/issues/2790)) ([211030e](https://github.com/HankHuang0516/EClaw/commit/211030e0b0b6a865c11f0c4ed60dc4e356d43b7a))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **kanban:** comment input no longer overlaps last comment in card detail (PR [#2678](https://github.com/HankHuang0516/EClaw/issues/2678)) ([fba91fc](https://github.com/HankHuang0516/EClaw/commit/fba91fca15402b453a0db5ee857c0b16e6087055))
* **chat:** compact 20px avatar in target bar (App WebView only shows [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2](https://github.com/HankHuang0516/EClaw/issues/2)) ([#2830](https://github.com/HankHuang0516/EClaw/issues/2830)) ([42c7543](https://github.com/HankHuang0516/EClaw/commit/42c7543b4a78a7abf3f5f7535eb9bc6142cd0fe2)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **portal:** complete 401 redirect sweep + mobile UIUX truncation ([#2842](https://github.com/HankHuang0516/EClaw/issues/2842)) ([f9799ba](https://github.com/HankHuang0516/EClaw/commit/f9799ba42498b109f0a8a70e80836aa6da51e216)), closes [#2833](https://github.com/HankHuang0516/EClaw/issues/2833) [#2845](https://github.com/HankHuang0516/EClaw/issues/2845) [#2844](https://github.com/HankHuang0516/EClaw/issues/2844) [#2843](https://github.com/HankHuang0516/EClaw/issues/2843)
* **uiux:** continue qa mobile readability sweep ([#2854](https://github.com/HankHuang0516/EClaw/issues/2854)) ([57606ff](https://github.com/HankHuang0516/EClaw/commit/57606ffe3e543b07a026aacc53c4b470c9a7825b))
* **i18n:** cover dynamic portal wrapper keys ([#2807](https://github.com/HankHuang0516/EClaw/issues/2807)) ([4c711cc](https://github.com/HankHuang0516/EClaw/commit/4c711cc4009300ffe4e8933a98ee01cd0fdd6aeb))
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **rental:** don't pollute entity.message on push gateway timeout ([#2860](https://github.com/HankHuang0516/EClaw/issues/2860)) ([592ba44](https://github.com/HankHuang0516/EClaw/commit/592ba44f57536ee00011b6cbddaa6b129a7cbae9))
* **petdx:** drop dark-grey loading placeholder + preload sprite WEBP ([#2628](https://github.com/HankHuang0516/EClaw/issues/2628)) ([59cef38](https://github.com/HankHuang0516/EClaw/commit/59cef387bd69ca99d7d15c86a1364856d3849ad8)), closes [#1a1a1a](https://github.com/HankHuang0516/EClaw/issues/1a1a1a)
* **security:** escape innerHTML in chat modal error messages ([#2819](https://github.com/HankHuang0516/EClaw/issues/2819)) ([dce07ad](https://github.com/HankHuang0516/EClaw/commit/dce07adde64795916dba977ae23e46f3371ce7ed)), closes [#2809](https://github.com/HankHuang0516/EClaw/issues/2809) [#2810](https://github.com/HankHuang0516/EClaw/issues/2810) [#2809](https://github.com/HankHuang0516/EClaw/issues/2809) [#2810](https://github.com/HankHuang0516/EClaw/issues/2810)
* **entities:** expose botSecret to owner so wallpaper service can poll companions ([#2615](https://github.com/HankHuang0516/EClaw/issues/2615)) ([04470fc](https://github.com/HankHuang0516/EClaw/commit/04470fce8f8c3fce2b1ba8b243e776606f107502))
* **rental:** expose owner_public_code in marketplace so plaza CTA can route ([#2616](https://github.com/HankHuang0516/EClaw/issues/2616)) ([4d1372f](https://github.com/HankHuang0516/EClaw/commit/4d1372f717d93cab65543e87c852e74e9fb67071)), closes [#2610](https://github.com/HankHuang0516/EClaw/issues/2610)
* **mindmap:** fallback to device scope when entityId is null ([#2728](https://github.com/HankHuang0516/EClaw/issues/2728)) ([7572312](https://github.com/HankHuang0516/EClaw/commit/7572312433d3d75fc245eda48a28919ce14bd927))
* **i18n:** fill Spanish drift keys ([#2751](https://github.com/HankHuang0516/EClaw/issues/2751)) ([0ad0ee5](https://github.com/HankHuang0516/EClaw/commit/0ad0ee55f7fac3e6ac46d891539950dab4d553cc))
* **portal:** fit embedded org chart to mobile viewport ([#2674](https://github.com/HankHuang0516/EClaw/issues/2674)) ([1c4e1b4](https://github.com/HankHuang0516/EClaw/commit/1c4e1b413ea7027b4cd4b8ecda981b0d0e12e66b))
* **i18n:** fix 6 trailing-comma syntax errors in 10-locale batch ([#2771](https://github.com/HankHuang0516/EClaw/issues/2771)) ([b27c6ca](https://github.com/HankHuang0516/EClaw/commit/b27c6ca204bf813e406c54ce3a2532a5f1f031b3))
* **kanban:** GET card returns latest 50 comments + comments endpoint exposes total ([#2816](https://github.com/HankHuang0516/EClaw/issues/2816)) ([c4d83f7](https://github.com/HankHuang0516/EClaw/commit/c4d83f777a1cd26aea0936e4316aa35c52822eef))
* **sharechat:** guest verify-email modal + disabled Send for unverified ([#2865](https://github.com/HankHuang0516/EClaw/issues/2865)) ([cb3b061](https://github.com/HankHuang0516/EClaw/commit/cb3b0614e0f6160417d907753e66eceb2d666802))
* **uiux:** harden chat previews and roster preview ([#2769](https://github.com/HankHuang0516/EClaw/issues/2769)) ([466d4d3](https://github.com/HankHuang0516/EClaw/commit/466d4d3ef81c628d3f58db64323946053d7bf61c))
* **mention-parser:** ignore @-mentions inside markdown code spans ([#2645](https://github.com/HankHuang0516/EClaw/issues/2645)) ([8da19d4](https://github.com/HankHuang0516/EClaw/commit/8da19d4a79ceb4152bf2144ee0847c61ce3e1def)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **kanban:** lazy-load dependency chips via IntersectionObserver ([#2632](https://github.com/HankHuang0516/EClaw/issues/2632)) ([20586b4](https://github.com/HankHuang0516/EClaw/commit/20586b43357335f9eb6a190c02d58c8e36b58aba)), closes [#2631](https://github.com/HankHuang0516/EClaw/issues/2631)
* **kanban:** make card sorting deterministic ([#2756](https://github.com/HankHuang0516/EClaw/issues/2756)) ([48e2117](https://github.com/HankHuang0516/EClaw/commit/48e2117b64e37f05dc635e0a3b67bfd43cbe48f5))
* **org-chart:** notify affected bots on hierarchy change ([#2812](https://github.com/HankHuang0516/EClaw/issues/2812)) ([55675fd](https://github.com/HankHuang0516/EClaw/commit/55675fdf4487494d729a29524b32bd81b756a00c)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** notify reviewer on manual /move → review ([#2753](https://github.com/HankHuang0516/EClaw/issues/2753)) ([6cbbb4e](https://github.com/HankHuang0516/EClaw/commit/6cbbb4ee8c0d4d8ad54df2e9b5faaa3699bd530f))
* **wallpaper:** off-load spritesheet fetch to IO so per-petdx sprites actually render ([#2618](https://github.com/HankHuang0516/EClaw/issues/2618)) ([61b832c](https://github.com/HankHuang0516/EClaw/commit/61b832c9fa8a1d0caab810ccc942d85c63349267)), closes [#2615](https://github.com/HankHuang0516/EClaw/issues/2615) [#2577](https://github.com/HankHuang0516/EClaw/issues/2577)
* **security:** patch P0 sanitize-html XSS + P1 protobufjs + exam.html XSS ([#2829](https://github.com/HankHuang0516/EClaw/issues/2829)) ([c71b871](https://github.com/HankHuang0516/EClaw/commit/c71b871a045887375dd0d26d1a3280a0891a89ad))
* **portal:** petdx-browser cookie-session fallback for device-login ([#2757](https://github.com/HankHuang0516/EClaw/issues/2757)) ([ca275f4](https://github.com/HankHuang0516/EClaw/commit/ca275f4519835da0c7ad71c588908a18f6f138d8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **api:** platform-stats 500 + entity/lookup publicCode alias ([#2809](https://github.com/HankHuang0516/EClaw/issues/2809), [#2810](https://github.com/HankHuang0516/EClaw/issues/2810)) ([#2818](https://github.com/HankHuang0516/EClaw/issues/2818)) ([f99fd17](https://github.com/HankHuang0516/EClaw/commit/f99fd17b2b1c32d88daa2510ff66d714c1a53edc))
* **i18n:** positional format specifiers for feedback_result_logs (7 locales) ([#2597](https://github.com/HankHuang0516/EClaw/issues/2597)) ([21aedc7](https://github.com/HankHuang0516/EClaw/commit/21aedc7eebc7a2839e340136f38dfdfd4dabb9dc))
* **avatar-petdx:** preserve descriptor across transient API failures (flicker) ([#2625](https://github.com/HankHuang0516/EClaw/issues/2625)) ([7b1c606](https://github.com/HankHuang0516/EClaw/commit/7b1c606514f7698d72ec95cf6c556e4043966186))
* **chat:** preserve scroll anchor while reading history ([#2693](https://github.com/HankHuang0516/EClaw/issues/2693)) ([945fdb7](https://github.com/HankHuang0516/EClaw/commit/945fdb7192b791b31882e1e75568dd8b11e4686f))
* **promo:** pull video embed from /promo-chat-avatar.html ([#2724](https://github.com/HankHuang0516/EClaw/issues/2724)) ([2afabc8](https://github.com/HankHuang0516/EClaw/commit/2afabc8c5ff8b25218a7cb857e8adfa572c8e9d5))
* **kanban:** realign stale recurring schedules ([#2785](https://github.com/HankHuang0516/EClaw/issues/2785)) ([ab8ee25](https://github.com/HankHuang0516/EClaw/commit/ab8ee250a9b37f3d3e838bb01d8866c8d2b78231))
* **portal:** reduce QA-discovered request fanout ([#2656](https://github.com/HankHuang0516/EClaw/issues/2656)) ([1e46d6b](https://github.com/HankHuang0516/EClaw/commit/1e46d6bab61e58c65b452b6503d953f8dddeee75))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **portal:** remove org chart fit scale floor ([#2676](https://github.com/HankHuang0516/EClaw/issues/2676)) ([0f01606](https://github.com/HankHuang0516/EClaw/commit/0f016068b963bb5f800a02f28817c7174979d913))
* **rental:** remove phantom 'webhook test push' step from BIND_COMPLETE ([#2864](https://github.com/HankHuang0516/EClaw/issues/2864)) ([47f4a3e](https://github.com/HankHuang0516/EClaw/commit/47f4a3edf76aa95ebd06d8713cd44fda6eef9b5d))
* **i18n:** rename mm_empty_title → mm_state_empty_title in mindmap.html ([#2683](https://github.com/HankHuang0516/EClaw/issues/2683)) ([c79c109](https://github.com/HankHuang0516/EClaw/commit/c79c109bea23142e8a6d9ace976d105af1280ec9))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **chat:** render mention avatars with companion renderer ([#2633](https://github.com/HankHuang0516/EClaw/issues/2633)) ([03e205f](https://github.com/HankHuang0516/EClaw/commit/03e205f663ecd2c2f443d4009dd5af0093f0bbbb))
* **kanban:** reserve mobile comments panel height ([#2782](https://github.com/HankHuang0516/EClaw/issues/2782)) ([ce8662d](https://github.com/HankHuang0516/EClaw/commit/ce8662d362422fdd25037f1deb61dbed9425e2f9))
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* scheduled audit 2026-05-13 — 6 bugs, XSS, i18n ([#2668](https://github.com/HankHuang0516/EClaw/issues/2668)) ([21dd513](https://github.com/HankHuang0516/EClaw/commit/21dd513b4464738de29164265437435ba6cc4817)), closes [#2605](https://github.com/HankHuang0516/EClaw/issues/2605) [#2608](https://github.com/HankHuang0516/EClaw/issues/2608) [#2600](https://github.com/HankHuang0516/EClaw/issues/2600) [#2599](https://github.com/HankHuang0516/EClaw/issues/2599) [#2598](https://github.com/HankHuang0516/EClaw/issues/2598)
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **chat:** smart-chip preview falls back to inline c.comments when /comments fails (PR [#2677](https://github.com/HankHuang0516/EClaw/issues/2677)) ([7f4dffd](https://github.com/HankHuang0516/EClaw/commit/7f4dffd2c83ea86f296b8fa0610f0e67c9f1af11))
* **kanban:** stabilize comment detail viewport ([#2796](https://github.com/HankHuang0516/EClaw/issues/2796)) ([0a10aad](https://github.com/HankHuang0516/EClaw/commit/0a10aadb5a5b12ff23454c16d5c88183b94ad7d7))
* **wallpaper:** stop Android live wallpaper flashing default lobster on companion change ([#2629](https://github.com/HankHuang0516/EClaw/issues/2629)) ([8b4f66f](https://github.com/HankHuang0516/EClaw/commit/8b4f66fcb335bf43128f924b761b6337c817095b)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **chat:** stop chat.html bouncing to dashboard via /api/rental/health-status 401 race ([#2833](https://github.com/HankHuang0516/EClaw/issues/2833)) ([c422406](https://github.com/HankHuang0516/EClaw/commit/c4224067cdcfe7f3e22ab95007c7563dac4196ac))
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **app:** WebView pages honor app-selected locale via ?lang= URL param ([#2672](https://github.com/HankHuang0516/EClaw/issues/2672)) ([8ed8757](https://github.com/HankHuang0516/EClaw/commit/8ed8757aec5bf214e837cc0d81bf2b23f1993a91)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **share-chat:** wire rich CTA actions to msgInput ([#2867](https://github.com/HankHuang0516/EClaw/issues/2867)) ([df23b11](https://github.com/HankHuang0516/EClaw/commit/df23b1147d34c59a644a145bbd87c18b96400acc))


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* **community:** 1-click chat button on bot cards + utm tagging ([#2610](https://github.com/HankHuang0516/EClaw/issues/2610)) ([eee97b0](https://github.com/HankHuang0516/EClaw/commit/eee97b0e2e4e74945ec24f218a69a52800b97a66))
* **chat:** accept ?messageId= as deep-link alias ([#2838](https://github.com/HankHuang0516/EClaw/issues/2838)) ([1785a87](https://github.com/HankHuang0516/EClaw/commit/1785a87310426637fd10df83754fb9924c45207f))
* **chat:** add avatar size preference ([#2714](https://github.com/HankHuang0516/EClaw/issues/2714)) ([6fe164a](https://github.com/HankHuang0516/EClaw/commit/6fe164ad8b22fa576d2dd9ad37c0d9fc295b5a83))
* **dashboard:** add Claude and Codex channel guides ([#2640](https://github.com/HankHuang0516/EClaw/issues/2640)) ([c64e4c4](https://github.com/HankHuang0516/EClaw/commit/c64e4c4afc78db58c5cd578f00486dd7b2fd3311))
* **dashboard:** add Claude Code channel guide card ([#2667](https://github.com/HankHuang0516/EClaw/issues/2667)) ([d70d75c](https://github.com/HankHuang0516/EClaw/commit/d70d75c0c8caa8a540358a9aab4556b8c1927a5c))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* **kanban:** add device-scoped card tags ([#2773](https://github.com/HankHuang0516/EClaw/issues/2773)) ([53a387e](https://github.com/HankHuang0516/EClaw/commit/53a387e67ba7bb4f6bed1c427000c4ae8666577a))
* **portal:** add entity selector to petdx-browser ([#2602](https://github.com/HankHuang0516/EClaw/issues/2602)) ([3fa067e](https://github.com/HankHuang0516/EClaw/commit/3fa067e00b38829b48a37cecd33ee81a9a1122d9))
* **kanban:** add explicit card links ([#2721](https://github.com/HankHuang0516/EClaw/issues/2721)) ([ef9f812](https://github.com/HankHuang0516/EClaw/commit/ef9f812a3fcf39efd07fd158ce90951bdd045ac7))
* **kanban:** add explicit done-card reopen flow ([#2801](https://github.com/HankHuang0516/EClaw/issues/2801)) ([5080aac](https://github.com/HankHuang0516/EClaw/commit/5080aacb75047c0deaa379ee708ec85465afd57c))
* **mindmap:** add GET /api/mindmap/graph force-graph projection ([#2680](https://github.com/HankHuang0516/EClaw/issues/2680)) ([a00b2e7](https://github.com/HankHuang0516/EClaw/commit/a00b2e775af2c4c98cd157f760ad87aeeee469f0)), closes [#2679](https://github.com/HankHuang0516/EClaw/issues/2679) [#2679](https://github.com/HankHuang0516/EClaw/issues/2679)
* **dashboard:** add Hermes channel promo card ([#2708](https://github.com/HankHuang0516/EClaw/issues/2708)) ([337aca1](https://github.com/HankHuang0516/EClaw/commit/337aca153d5a1cd7e888c065f00ae54db7872d91))
* **rental:** add listing soft pause ([#2781](https://github.com/HankHuang0516/EClaw/issues/2781)) ([6586b72](https://github.com/HankHuang0516/EClaw/commit/6586b72717ddb1637d91cd3242c8d2ff554f62b4))
* **portal:** add Nagoya 5D4N trip static cross-ref page ([#2689](https://github.com/HankHuang0516/EClaw/issues/2689)) ([2e0efb6](https://github.com/HankHuang0516/EClaw/commit/2e0efb6dcdaff52226cc8854a96747000b12bdff))
* **portal:** add Nagoya trip map links and image lightbox ([#2821](https://github.com/HankHuang0516/EClaw/issues/2821)) ([3e40955](https://github.com/HankHuang0516/EClaw/commit/3e40955650a05f45a6b9f7e39e73847705424a03))
* **portal/nagoya:** add parking shortcut buttons next to itinerary places ([#2826](https://github.com/HankHuang0516/EClaw/issues/2826)) ([63968c5](https://github.com/HankHuang0516/EClaw/commit/63968c554d046afc8d978de74e3aacbf7700500d))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **settings:** add rental roster management preview ([#2758](https://github.com/HankHuang0516/EClaw/issues/2758)) ([9706e59](https://github.com/HankHuang0516/EClaw/commit/9706e59ded140a90a6e02348124282bc69d89001))
* **rental:** add renter health chat indicator ([#2690](https://github.com/HankHuang0516/EClaw/issues/2690)) ([36cd2e9](https://github.com/HankHuang0516/EClaw/commit/36cd2e9802be4c7ebb03d3024617fa74aca48ffd))
* **ios:** add Tutorial & Intro entry in Settings ([#2800](https://github.com/HankHuang0516/EClaw/issues/2800)) ([ed83e51](https://github.com/HankHuang0516/EClaw/commit/ed83e51d043bf4cd5865f38dc95a91ed54820d6c))
* **landing:** add Watch Full Demo CTA below hero video ([#2799](https://github.com/HankHuang0516/EClaw/issues/2799)) ([66107c9](https://github.com/HankHuang0516/EClaw/commit/66107c954727551fd34d989a4674daaad9b63968))
* **footer:** add Watch Intro Video link in Info column ([#2798](https://github.com/HankHuang0516/EClaw/issues/2798)) ([d7c6d59](https://github.com/HankHuang0516/EClaw/commit/d7c6d596b69c6a5b257bf1f7a792a407ef9712ad))
* **i18n:** ar iter-2 — fill 623 missing keys against en source ([#2847](https://github.com/HankHuang0516/EClaw/issues/2847)) ([ee94a7a](https://github.com/HankHuang0516/EClaw/commit/ee94a7ae6812b5163efe4284ee4907ca32302f5c))
* **kanban:** backlog launch-gate flag to suppress L1/L2/L3 escalation ([#2855](https://github.com/HankHuang0516/EClaw/issues/2855)) ([cb8bf1b](https://github.com/HankHuang0516/EClaw/commit/cb8bf1bb6421f25214f65e129a8cadccc49cc266)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#4](https://github.com/HankHuang0516/EClaw/issues/4) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **companion:** bridge crafter-station/petdex gallery (1784 pets) ([#2601](https://github.com/HankHuang0516/EClaw/issues/2601)) ([2e245be](https://github.com/HankHuang0516/EClaw/commit/2e245bea6dd47ea7361b927d389188a3c23b6bb3))
* **promo:** chat avatar size feature landing page (self-hosted MP4) ([#2722](https://github.com/HankHuang0516/EClaw/issues/2722)) ([3852210](https://github.com/HankHuang0516/EClaw/commit/3852210d355704d018e3daca6b5f9512a011b210)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **kanban:** cron-spawn jitter + lane backpressure to prevent same-tick wedge ([#2791](https://github.com/HankHuang0516/EClaw/issues/2791)) ([9f414a7](https://github.com/HankHuang0516/EClaw/commit/9f414a731d6393672a0a4189c7b408c529ae5e12)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **promo:** embed daily eclaw video 2026-05-14 ([#2786](https://github.com/HankHuang0516/EClaw/issues/2786)) ([718a814](https://github.com/HankHuang0516/EClaw/commit/718a814ab16850bc2b33a1b303841e2c4378ecfa)), closes [#2782](https://github.com/HankHuang0516/EClaw/issues/2782) [#2693](https://github.com/HankHuang0516/EClaw/issues/2693)
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **info:** embed promo video at top of Quick Start tab ([#2797](https://github.com/HankHuang0516/EClaw/issues/2797)) ([047679f](https://github.com/HankHuang0516/EClaw/commit/047679fd57ab9949eaeacea414d5611e71afe041))
* **rental:** enforce strict rebind refunds ([#2703](https://github.com/HankHuang0516/EClaw/issues/2703)) ([a1859c5](https://github.com/HankHuang0516/EClaw/commit/a1859c50e6fb3991d7a8051491502d824a14a116))
* **portal:** group task chip actions ([#2825](https://github.com/HankHuang0516/EClaw/issues/2825)) ([5db5c59](https://github.com/HankHuang0516/EClaw/commit/5db5c59b32b8635f1412205faf0c2f9164d3d5d4))
* **portal:** info-guide-rules + info-guide-soul slide pair ([#2793](https://github.com/HankHuang0516/EClaw/issues/2793)) ([1c8bddc](https://github.com/HankHuang0516/EClaw/commit/1c8bddc4c185054b2b60088498e3d45509117127)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **chat:** link card previews to kanban ([#2754](https://github.com/HankHuang0516/EClaw/issues/2754)) ([2261240](https://github.com/HankHuang0516/EClaw/commit/22612402c2e95efb07246629e81a849be41ee9c7))
* **mission:** link notes to kanban cards ([#2723](https://github.com/HankHuang0516/EClaw/issues/2723)) ([b36dc18](https://github.com/HankHuang0516/EClaw/commit/b36dc18f3a8facf12e0b6046351c222f1e99dc55))
* **mindmap:** mission.html link to /portal/mindmap.html + deprecate /api/mission/mindmap ([#2685](https://github.com/HankHuang0516/EClaw/issues/2685)) ([11e297b](https://github.com/HankHuang0516/EClaw/commit/11e297bab1c9b56fcde3027d6500b7c58891bf18)), closes [#2680](https://github.com/HankHuang0516/EClaw/issues/2680) [#2684](https://github.com/HankHuang0516/EClaw/issues/2684)
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **settings:** per-entity nudge override UI (Phase 2) ([#2837](https://github.com/HankHuang0516/EClaw/issues/2837)) ([ea7662b](https://github.com/HankHuang0516/EClaw/commit/ea7662b0858882dae461e1387f711895924f9ab8)), closes [3/#4](https://github.com/HankHuang0516/EClaw/issues/4)
* **kanban:** per-entity nudge overrides (Phase 2 of card_e066cb6b) ([#2836](https://github.com/HankHuang0516/EClaw/issues/2836)) ([0425f80](https://github.com/HankHuang0516/EClaw/commit/0425f80bc1169c0d506b665659c8676695c45553))
* **avatar:** petdx render on card-holder my-cards (Phase 1b) ([#2621](https://github.com/HankHuang0516/EClaw/issues/2621)) ([f78ba8b](https://github.com/HankHuang0516/EClaw/commit/f78ba8b18acc426936ab6d8a82ca7541effea00d))
* **avatar:** petdx render on dashboard entity grid / org chart / bindings (Phase 1b) ([#2622](https://github.com/HankHuang0516/EClaw/issues/2622)) ([f417749](https://github.com/HankHuang0516/EClaw/commit/f41774914451048e8cd76e9ae30416a0642e173b)), closes [#2620](https://github.com/HankHuang0516/EClaw/issues/2620) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621)
* **avatar:** petdx render on kanban auto-assign / pulse / comment avatars (Phase 1b) ([#2624](https://github.com/HankHuang0516/EClaw/issues/2624)) ([6bff5f8](https://github.com/HankHuang0516/EClaw/commit/6bff5f80440d0bd91a6b1721cde9478d685c4d46))
* **avatar:** petdx render on mission skill/rule/soul entity dialogs (Phase 1b) ([#2623](https://github.com/HankHuang0516/EClaw/issues/2623)) ([129327b](https://github.com/HankHuang0516/EClaw/commit/129327bc7b91056659f1ab7e8d5e3f5260d951fb))
* **mindmap:** portal/mindmap.html force-graph prototype ([#129](https://github.com/HankHuang0516/EClaw/issues/129)) ([#2681](https://github.com/HankHuang0516/EClaw/issues/2681)) ([0f15e69](https://github.com/HankHuang0516/EClaw/commit/0f15e6930f0697c37fa08f3219edb8f9e499837f)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **portal:** redo nagoya trip page in professional tour-guide style ([#2691](https://github.com/HankHuang0516/EClaw/issues/2691)) ([b2378c0](https://github.com/HankHuang0516/EClaw/commit/b2378c06ee20fa9cccfdceceb1a4c9e0b3072f59))
* **i18n:** remove ms+hi orphan keys from i18n.js ([#2849](https://github.com/HankHuang0516/EClaw/issues/2849)) ([320176c](https://github.com/HankHuang0516/EClaw/commit/320176c06a3cfd8631e2a82ad02a6bd6a9af0389))
* **avatar:** render selected petdx companion in chat avatars ([#2620](https://github.com/HankHuang0516/EClaw/issues/2620)) ([0bdd046](https://github.com/HankHuang0516/EClaw/commit/0bdd046fe1b1c428e32edda366ff112c08927f4c))
* **home:** replace native home with WebView hosting dashboard.html ([#2634](https://github.com/HankHuang0516/EClaw/issues/2634)) ([e69ea81](https://github.com/HankHuang0516/EClaw/commit/e69ea8160c239b083a83d6dc83a4f1c3f901c863))
* **app:** route chat mission jumps through native tabs ([#2824](https://github.com/HankHuang0516/EClaw/issues/2824)) ([deb07b6](https://github.com/HankHuang0516/EClaw/commit/deb07b69a9ecca632fe27278de537f1d85234e94))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **chat:** support message deep links ([#2719](https://github.com/HankHuang0516/EClaw/issues/2719)) ([2dc0f1e](https://github.com/HankHuang0516/EClaw/commit/2dc0f1eeb259e1a0848db4a03186b989372cd91c))
* **mission:** support note deep links ([#2717](https://github.com/HankHuang0516/EClaw/issues/2717)) ([2efd3a5](https://github.com/HankHuang0516/EClaw/commit/2efd3a5e741217a07c0b0ac54a0ddd010e0ebe23))
* **share-chat:** twitter card + per-bot og:image/twitter:* in SSR ([#2609](https://github.com/HankHuang0516/EClaw/issues/2609)) ([6cdc853](https://github.com/HankHuang0516/EClaw/commit/6cdc853dc884cdb95bd47214942768981f218ae0))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))
* **settings:** wire petdx avatar into channel-account chips ([#2626](https://github.com/HankHuang0516/EClaw/issues/2626)) ([88aec77](https://github.com/HankHuang0516/EClaw/commit/88aec772628c240e97b336bb5820892ad632d1ae))
* **files:** wire petdx avatar into entity filter & per-file badges ([#2627](https://github.com/HankHuang0516/EClaw/issues/2627)) ([5b3e5cc](https://github.com/HankHuang0516/EClaw/commit/5b3e5cc542d9da69bb4e92500fd03a542ea33f00))
* **mindmap:** wrap hardcoded zh-TW UI strings with i18n t() ([#2607](https://github.com/HankHuang0516/EClaw/issues/2607)) ([166af87](https://github.com/HankHuang0516/EClaw/commit/166af8772b2121a24aaf34a83b3de970e9b3b571)), closes [#2606](https://github.com/HankHuang0516/EClaw/issues/2606)
* **i18n:** zh-TW backfill 8 keys (soft-pause + chat + invite + wallet) ([#2815](https://github.com/HankHuang0516/EClaw/issues/2815)) ([a2dd574](https://github.com/HankHuang0516/EClaw/commit/a2dd5743ce8d43a4b6ace9a2fd4b52568180d6c5))


### Performance Improvements

* **mindmap:** force-graph hardening for 1000/2000-node graphs ([#2684](https://github.com/HankHuang0516/EClaw/issues/2684)) ([da8b1c8](https://github.com/HankHuang0516/EClaw/commit/da8b1c8f947ab8bc8fa455c1962a91146623a1fc))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-20)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **notifications:** add kanban_done + kanban_done_auto toggles to Android Settings ([#2636](https://github.com/HankHuang0516/EClaw/issues/2636)) ([a710909](https://github.com/HankHuang0516/EClaw/commit/a7109095e3393b8564e7ef1b23d382a4fbb944b8))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **i18n:** ar block — fix 27 broken entries (CJK leaks + truncated HTML) ([#2851](https://github.com/HankHuang0516/EClaw/issues/2851)) ([5b19175](https://github.com/HankHuang0516/EClaw/commit/5b19175d712d00d16fcec00b749035c4beae7a5c))
* **chat:** atomic-load target bar (await contacts before first render) ([#2831](https://github.com/HankHuang0516/EClaw/issues/2831)) ([5f529e6](https://github.com/HankHuang0516/EClaw/commit/5f529e6b772eacc38ba1de69b44258a05f0d816a)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2](https://github.com/HankHuang0516/EClaw/issues/2)
* **rental:** bump handshake timeout to 60s + timeout-aware discovery fallback ([#2863](https://github.com/HankHuang0516/EClaw/issues/2863)) ([fd4322f](https://github.com/HankHuang0516/EClaw/commit/fd4322f8890f3c2dfca3acdae6a4b95f19c381f9)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **i18n:** clear batch 1 residual missing keys ([#2790](https://github.com/HankHuang0516/EClaw/issues/2790)) ([211030e](https://github.com/HankHuang0516/EClaw/commit/211030e0b0b6a865c11f0c4ed60dc4e356d43b7a))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **kanban:** comment input no longer overlaps last comment in card detail (PR [#2678](https://github.com/HankHuang0516/EClaw/issues/2678)) ([fba91fc](https://github.com/HankHuang0516/EClaw/commit/fba91fca15402b453a0db5ee857c0b16e6087055))
* **chat:** compact 20px avatar in target bar (App WebView only shows [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2](https://github.com/HankHuang0516/EClaw/issues/2)) ([#2830](https://github.com/HankHuang0516/EClaw/issues/2830)) ([42c7543](https://github.com/HankHuang0516/EClaw/commit/42c7543b4a78a7abf3f5f7535eb9bc6142cd0fe2)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **portal:** complete 401 redirect sweep + mobile UIUX truncation ([#2842](https://github.com/HankHuang0516/EClaw/issues/2842)) ([f9799ba](https://github.com/HankHuang0516/EClaw/commit/f9799ba42498b109f0a8a70e80836aa6da51e216)), closes [#2833](https://github.com/HankHuang0516/EClaw/issues/2833) [#2845](https://github.com/HankHuang0516/EClaw/issues/2845) [#2844](https://github.com/HankHuang0516/EClaw/issues/2844) [#2843](https://github.com/HankHuang0516/EClaw/issues/2843)
* **uiux:** continue qa mobile readability sweep ([#2854](https://github.com/HankHuang0516/EClaw/issues/2854)) ([57606ff](https://github.com/HankHuang0516/EClaw/commit/57606ffe3e543b07a026aacc53c4b470c9a7825b))
* **i18n:** cover dynamic portal wrapper keys ([#2807](https://github.com/HankHuang0516/EClaw/issues/2807)) ([4c711cc](https://github.com/HankHuang0516/EClaw/commit/4c711cc4009300ffe4e8933a98ee01cd0fdd6aeb))
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **rental:** don't pollute entity.message on push gateway timeout ([#2860](https://github.com/HankHuang0516/EClaw/issues/2860)) ([592ba44](https://github.com/HankHuang0516/EClaw/commit/592ba44f57536ee00011b6cbddaa6b129a7cbae9))
* **petdx:** drop dark-grey loading placeholder + preload sprite WEBP ([#2628](https://github.com/HankHuang0516/EClaw/issues/2628)) ([59cef38](https://github.com/HankHuang0516/EClaw/commit/59cef387bd69ca99d7d15c86a1364856d3849ad8)), closes [#1a1a1a](https://github.com/HankHuang0516/EClaw/issues/1a1a1a)
* **security:** escape innerHTML in chat modal error messages ([#2819](https://github.com/HankHuang0516/EClaw/issues/2819)) ([dce07ad](https://github.com/HankHuang0516/EClaw/commit/dce07adde64795916dba977ae23e46f3371ce7ed)), closes [#2809](https://github.com/HankHuang0516/EClaw/issues/2809) [#2810](https://github.com/HankHuang0516/EClaw/issues/2810) [#2809](https://github.com/HankHuang0516/EClaw/issues/2809) [#2810](https://github.com/HankHuang0516/EClaw/issues/2810)
* **entities:** expose botSecret to owner so wallpaper service can poll companions ([#2615](https://github.com/HankHuang0516/EClaw/issues/2615)) ([04470fc](https://github.com/HankHuang0516/EClaw/commit/04470fce8f8c3fce2b1ba8b243e776606f107502))
* **rental:** expose owner_public_code in marketplace so plaza CTA can route ([#2616](https://github.com/HankHuang0516/EClaw/issues/2616)) ([4d1372f](https://github.com/HankHuang0516/EClaw/commit/4d1372f717d93cab65543e87c852e74e9fb67071)), closes [#2610](https://github.com/HankHuang0516/EClaw/issues/2610)
* **mindmap:** fallback to device scope when entityId is null ([#2728](https://github.com/HankHuang0516/EClaw/issues/2728)) ([7572312](https://github.com/HankHuang0516/EClaw/commit/7572312433d3d75fc245eda48a28919ce14bd927))
* **i18n:** fill Spanish drift keys ([#2751](https://github.com/HankHuang0516/EClaw/issues/2751)) ([0ad0ee5](https://github.com/HankHuang0516/EClaw/commit/0ad0ee55f7fac3e6ac46d891539950dab4d553cc))
* **portal:** fit embedded org chart to mobile viewport ([#2674](https://github.com/HankHuang0516/EClaw/issues/2674)) ([1c4e1b4](https://github.com/HankHuang0516/EClaw/commit/1c4e1b413ea7027b4cd4b8ecda981b0d0e12e66b))
* **i18n:** fix 6 trailing-comma syntax errors in 10-locale batch ([#2771](https://github.com/HankHuang0516/EClaw/issues/2771)) ([b27c6ca](https://github.com/HankHuang0516/EClaw/commit/b27c6ca204bf813e406c54ce3a2532a5f1f031b3))
* **kanban:** GET card returns latest 50 comments + comments endpoint exposes total ([#2816](https://github.com/HankHuang0516/EClaw/issues/2816)) ([c4d83f7](https://github.com/HankHuang0516/EClaw/commit/c4d83f777a1cd26aea0936e4316aa35c52822eef))
* **sharechat:** guest verify-email modal + disabled Send for unverified ([#2865](https://github.com/HankHuang0516/EClaw/issues/2865)) ([cb3b061](https://github.com/HankHuang0516/EClaw/commit/cb3b0614e0f6160417d907753e66eceb2d666802))
* **uiux:** harden chat previews and roster preview ([#2769](https://github.com/HankHuang0516/EClaw/issues/2769)) ([466d4d3](https://github.com/HankHuang0516/EClaw/commit/466d4d3ef81c628d3f58db64323946053d7bf61c))
* **mention-parser:** ignore @-mentions inside markdown code spans ([#2645](https://github.com/HankHuang0516/EClaw/issues/2645)) ([8da19d4](https://github.com/HankHuang0516/EClaw/commit/8da19d4a79ceb4152bf2144ee0847c61ce3e1def)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **kanban:** lazy-load dependency chips via IntersectionObserver ([#2632](https://github.com/HankHuang0516/EClaw/issues/2632)) ([20586b4](https://github.com/HankHuang0516/EClaw/commit/20586b43357335f9eb6a190c02d58c8e36b58aba)), closes [#2631](https://github.com/HankHuang0516/EClaw/issues/2631)
* **kanban:** make card sorting deterministic ([#2756](https://github.com/HankHuang0516/EClaw/issues/2756)) ([48e2117](https://github.com/HankHuang0516/EClaw/commit/48e2117b64e37f05dc635e0a3b67bfd43cbe48f5))
* **org-chart:** notify affected bots on hierarchy change ([#2812](https://github.com/HankHuang0516/EClaw/issues/2812)) ([55675fd](https://github.com/HankHuang0516/EClaw/commit/55675fdf4487494d729a29524b32bd81b756a00c)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** notify reviewer on manual /move → review ([#2753](https://github.com/HankHuang0516/EClaw/issues/2753)) ([6cbbb4e](https://github.com/HankHuang0516/EClaw/commit/6cbbb4ee8c0d4d8ad54df2e9b5faaa3699bd530f))
* **wallpaper:** off-load spritesheet fetch to IO so per-petdx sprites actually render ([#2618](https://github.com/HankHuang0516/EClaw/issues/2618)) ([61b832c](https://github.com/HankHuang0516/EClaw/commit/61b832c9fa8a1d0caab810ccc942d85c63349267)), closes [#2615](https://github.com/HankHuang0516/EClaw/issues/2615) [#2577](https://github.com/HankHuang0516/EClaw/issues/2577)
* **security:** patch P0 sanitize-html XSS + P1 protobufjs + exam.html XSS ([#2829](https://github.com/HankHuang0516/EClaw/issues/2829)) ([c71b871](https://github.com/HankHuang0516/EClaw/commit/c71b871a045887375dd0d26d1a3280a0891a89ad))
* **portal:** petdx-browser cookie-session fallback for device-login ([#2757](https://github.com/HankHuang0516/EClaw/issues/2757)) ([ca275f4](https://github.com/HankHuang0516/EClaw/commit/ca275f4519835da0c7ad71c588908a18f6f138d8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **api:** platform-stats 500 + entity/lookup publicCode alias ([#2809](https://github.com/HankHuang0516/EClaw/issues/2809), [#2810](https://github.com/HankHuang0516/EClaw/issues/2810)) ([#2818](https://github.com/HankHuang0516/EClaw/issues/2818)) ([f99fd17](https://github.com/HankHuang0516/EClaw/commit/f99fd17b2b1c32d88daa2510ff66d714c1a53edc))
* **i18n:** positional format specifiers for feedback_result_logs (7 locales) ([#2597](https://github.com/HankHuang0516/EClaw/issues/2597)) ([21aedc7](https://github.com/HankHuang0516/EClaw/commit/21aedc7eebc7a2839e340136f38dfdfd4dabb9dc))
* **avatar-petdx:** preserve descriptor across transient API failures (flicker) ([#2625](https://github.com/HankHuang0516/EClaw/issues/2625)) ([7b1c606](https://github.com/HankHuang0516/EClaw/commit/7b1c606514f7698d72ec95cf6c556e4043966186))
* **chat:** preserve scroll anchor while reading history ([#2693](https://github.com/HankHuang0516/EClaw/issues/2693)) ([945fdb7](https://github.com/HankHuang0516/EClaw/commit/945fdb7192b791b31882e1e75568dd8b11e4686f))
* **promo:** pull video embed from /promo-chat-avatar.html ([#2724](https://github.com/HankHuang0516/EClaw/issues/2724)) ([2afabc8](https://github.com/HankHuang0516/EClaw/commit/2afabc8c5ff8b25218a7cb857e8adfa572c8e9d5))
* **kanban:** realign stale recurring schedules ([#2785](https://github.com/HankHuang0516/EClaw/issues/2785)) ([ab8ee25](https://github.com/HankHuang0516/EClaw/commit/ab8ee250a9b37f3d3e838bb01d8866c8d2b78231))
* **portal:** reduce QA-discovered request fanout ([#2656](https://github.com/HankHuang0516/EClaw/issues/2656)) ([1e46d6b](https://github.com/HankHuang0516/EClaw/commit/1e46d6bab61e58c65b452b6503d953f8dddeee75))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **portal:** remove org chart fit scale floor ([#2676](https://github.com/HankHuang0516/EClaw/issues/2676)) ([0f01606](https://github.com/HankHuang0516/EClaw/commit/0f016068b963bb5f800a02f28817c7174979d913))
* **rental:** remove phantom 'webhook test push' step from BIND_COMPLETE ([#2864](https://github.com/HankHuang0516/EClaw/issues/2864)) ([47f4a3e](https://github.com/HankHuang0516/EClaw/commit/47f4a3edf76aa95ebd06d8713cd44fda6eef9b5d))
* **i18n:** rename mm_empty_title → mm_state_empty_title in mindmap.html ([#2683](https://github.com/HankHuang0516/EClaw/issues/2683)) ([c79c109](https://github.com/HankHuang0516/EClaw/commit/c79c109bea23142e8a6d9ace976d105af1280ec9))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **chat:** render mention avatars with companion renderer ([#2633](https://github.com/HankHuang0516/EClaw/issues/2633)) ([03e205f](https://github.com/HankHuang0516/EClaw/commit/03e205f663ecd2c2f443d4009dd5af0093f0bbbb))
* **kanban:** reserve mobile comments panel height ([#2782](https://github.com/HankHuang0516/EClaw/issues/2782)) ([ce8662d](https://github.com/HankHuang0516/EClaw/commit/ce8662d362422fdd25037f1deb61dbed9425e2f9))
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* scheduled audit 2026-05-13 — 6 bugs, XSS, i18n ([#2668](https://github.com/HankHuang0516/EClaw/issues/2668)) ([21dd513](https://github.com/HankHuang0516/EClaw/commit/21dd513b4464738de29164265437435ba6cc4817)), closes [#2605](https://github.com/HankHuang0516/EClaw/issues/2605) [#2608](https://github.com/HankHuang0516/EClaw/issues/2608) [#2600](https://github.com/HankHuang0516/EClaw/issues/2600) [#2599](https://github.com/HankHuang0516/EClaw/issues/2599) [#2598](https://github.com/HankHuang0516/EClaw/issues/2598)
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **chat:** smart-chip preview falls back to inline c.comments when /comments fails (PR [#2677](https://github.com/HankHuang0516/EClaw/issues/2677)) ([7f4dffd](https://github.com/HankHuang0516/EClaw/commit/7f4dffd2c83ea86f296b8fa0610f0e67c9f1af11))
* **kanban:** stabilize comment detail viewport ([#2796](https://github.com/HankHuang0516/EClaw/issues/2796)) ([0a10aad](https://github.com/HankHuang0516/EClaw/commit/0a10aadb5a5b12ff23454c16d5c88183b94ad7d7))
* **wallpaper:** stop Android live wallpaper flashing default lobster on companion change ([#2629](https://github.com/HankHuang0516/EClaw/issues/2629)) ([8b4f66f](https://github.com/HankHuang0516/EClaw/commit/8b4f66fcb335bf43128f924b761b6337c817095b)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **chat:** stop chat.html bouncing to dashboard via /api/rental/health-status 401 race ([#2833](https://github.com/HankHuang0516/EClaw/issues/2833)) ([c422406](https://github.com/HankHuang0516/EClaw/commit/c4224067cdcfe7f3e22ab95007c7563dac4196ac))
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **app:** WebView pages honor app-selected locale via ?lang= URL param ([#2672](https://github.com/HankHuang0516/EClaw/issues/2672)) ([8ed8757](https://github.com/HankHuang0516/EClaw/commit/8ed8757aec5bf214e837cc0d81bf2b23f1993a91)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **share-chat:** wire rich CTA actions to msgInput ([#2867](https://github.com/HankHuang0516/EClaw/issues/2867)) ([df23b11](https://github.com/HankHuang0516/EClaw/commit/df23b1147d34c59a644a145bbd87c18b96400acc))


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* **community:** 1-click chat button on bot cards + utm tagging ([#2610](https://github.com/HankHuang0516/EClaw/issues/2610)) ([eee97b0](https://github.com/HankHuang0516/EClaw/commit/eee97b0e2e4e74945ec24f218a69a52800b97a66))
* **chat:** accept ?messageId= as deep-link alias ([#2838](https://github.com/HankHuang0516/EClaw/issues/2838)) ([1785a87](https://github.com/HankHuang0516/EClaw/commit/1785a87310426637fd10df83754fb9924c45207f))
* **chat:** add avatar size preference ([#2714](https://github.com/HankHuang0516/EClaw/issues/2714)) ([6fe164a](https://github.com/HankHuang0516/EClaw/commit/6fe164ad8b22fa576d2dd9ad37c0d9fc295b5a83))
* **dashboard:** add Claude and Codex channel guides ([#2640](https://github.com/HankHuang0516/EClaw/issues/2640)) ([c64e4c4](https://github.com/HankHuang0516/EClaw/commit/c64e4c4afc78db58c5cd578f00486dd7b2fd3311))
* **dashboard:** add Claude Code channel guide card ([#2667](https://github.com/HankHuang0516/EClaw/issues/2667)) ([d70d75c](https://github.com/HankHuang0516/EClaw/commit/d70d75c0c8caa8a540358a9aab4556b8c1927a5c))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* **kanban:** add device-scoped card tags ([#2773](https://github.com/HankHuang0516/EClaw/issues/2773)) ([53a387e](https://github.com/HankHuang0516/EClaw/commit/53a387e67ba7bb4f6bed1c427000c4ae8666577a))
* **portal:** add entity selector to petdx-browser ([#2602](https://github.com/HankHuang0516/EClaw/issues/2602)) ([3fa067e](https://github.com/HankHuang0516/EClaw/commit/3fa067e00b38829b48a37cecd33ee81a9a1122d9))
* **kanban:** add explicit card links ([#2721](https://github.com/HankHuang0516/EClaw/issues/2721)) ([ef9f812](https://github.com/HankHuang0516/EClaw/commit/ef9f812a3fcf39efd07fd158ce90951bdd045ac7))
* **kanban:** add explicit done-card reopen flow ([#2801](https://github.com/HankHuang0516/EClaw/issues/2801)) ([5080aac](https://github.com/HankHuang0516/EClaw/commit/5080aacb75047c0deaa379ee708ec85465afd57c))
* **mindmap:** add GET /api/mindmap/graph force-graph projection ([#2680](https://github.com/HankHuang0516/EClaw/issues/2680)) ([a00b2e7](https://github.com/HankHuang0516/EClaw/commit/a00b2e775af2c4c98cd157f760ad87aeeee469f0)), closes [#2679](https://github.com/HankHuang0516/EClaw/issues/2679) [#2679](https://github.com/HankHuang0516/EClaw/issues/2679)
* **dashboard:** add Hermes channel promo card ([#2708](https://github.com/HankHuang0516/EClaw/issues/2708)) ([337aca1](https://github.com/HankHuang0516/EClaw/commit/337aca153d5a1cd7e888c065f00ae54db7872d91))
* **rental:** add listing soft pause ([#2781](https://github.com/HankHuang0516/EClaw/issues/2781)) ([6586b72](https://github.com/HankHuang0516/EClaw/commit/6586b72717ddb1637d91cd3242c8d2ff554f62b4))
* **portal:** add Nagoya 5D4N trip static cross-ref page ([#2689](https://github.com/HankHuang0516/EClaw/issues/2689)) ([2e0efb6](https://github.com/HankHuang0516/EClaw/commit/2e0efb6dcdaff52226cc8854a96747000b12bdff))
* **portal:** add Nagoya trip map links and image lightbox ([#2821](https://github.com/HankHuang0516/EClaw/issues/2821)) ([3e40955](https://github.com/HankHuang0516/EClaw/commit/3e40955650a05f45a6b9f7e39e73847705424a03))
* **portal/nagoya:** add parking shortcut buttons next to itinerary places ([#2826](https://github.com/HankHuang0516/EClaw/issues/2826)) ([63968c5](https://github.com/HankHuang0516/EClaw/commit/63968c554d046afc8d978de74e3aacbf7700500d))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **settings:** add rental roster management preview ([#2758](https://github.com/HankHuang0516/EClaw/issues/2758)) ([9706e59](https://github.com/HankHuang0516/EClaw/commit/9706e59ded140a90a6e02348124282bc69d89001))
* **rental:** add renter health chat indicator ([#2690](https://github.com/HankHuang0516/EClaw/issues/2690)) ([36cd2e9](https://github.com/HankHuang0516/EClaw/commit/36cd2e9802be4c7ebb03d3024617fa74aca48ffd))
* **ios:** add Tutorial & Intro entry in Settings ([#2800](https://github.com/HankHuang0516/EClaw/issues/2800)) ([ed83e51](https://github.com/HankHuang0516/EClaw/commit/ed83e51d043bf4cd5865f38dc95a91ed54820d6c))
* **landing:** add Watch Full Demo CTA below hero video ([#2799](https://github.com/HankHuang0516/EClaw/issues/2799)) ([66107c9](https://github.com/HankHuang0516/EClaw/commit/66107c954727551fd34d989a4674daaad9b63968))
* **footer:** add Watch Intro Video link in Info column ([#2798](https://github.com/HankHuang0516/EClaw/issues/2798)) ([d7c6d59](https://github.com/HankHuang0516/EClaw/commit/d7c6d596b69c6a5b257bf1f7a792a407ef9712ad))
* **i18n:** ar iter-2 — fill 623 missing keys against en source ([#2847](https://github.com/HankHuang0516/EClaw/issues/2847)) ([ee94a7a](https://github.com/HankHuang0516/EClaw/commit/ee94a7ae6812b5163efe4284ee4907ca32302f5c))
* **kanban:** backlog launch-gate flag to suppress L1/L2/L3 escalation ([#2855](https://github.com/HankHuang0516/EClaw/issues/2855)) ([cb8bf1b](https://github.com/HankHuang0516/EClaw/commit/cb8bf1bb6421f25214f65e129a8cadccc49cc266)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#4](https://github.com/HankHuang0516/EClaw/issues/4) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **companion:** bridge crafter-station/petdex gallery (1784 pets) ([#2601](https://github.com/HankHuang0516/EClaw/issues/2601)) ([2e245be](https://github.com/HankHuang0516/EClaw/commit/2e245bea6dd47ea7361b927d389188a3c23b6bb3))
* **promo:** chat avatar size feature landing page (self-hosted MP4) ([#2722](https://github.com/HankHuang0516/EClaw/issues/2722)) ([3852210](https://github.com/HankHuang0516/EClaw/commit/3852210d355704d018e3daca6b5f9512a011b210)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **kanban:** cron-spawn jitter + lane backpressure to prevent same-tick wedge ([#2791](https://github.com/HankHuang0516/EClaw/issues/2791)) ([9f414a7](https://github.com/HankHuang0516/EClaw/commit/9f414a731d6393672a0a4189c7b408c529ae5e12)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **promo:** embed daily eclaw video 2026-05-14 ([#2786](https://github.com/HankHuang0516/EClaw/issues/2786)) ([718a814](https://github.com/HankHuang0516/EClaw/commit/718a814ab16850bc2b33a1b303841e2c4378ecfa)), closes [#2782](https://github.com/HankHuang0516/EClaw/issues/2782) [#2693](https://github.com/HankHuang0516/EClaw/issues/2693)
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **info:** embed promo video at top of Quick Start tab ([#2797](https://github.com/HankHuang0516/EClaw/issues/2797)) ([047679f](https://github.com/HankHuang0516/EClaw/commit/047679fd57ab9949eaeacea414d5611e71afe041))
* **rental:** enforce strict rebind refunds ([#2703](https://github.com/HankHuang0516/EClaw/issues/2703)) ([a1859c5](https://github.com/HankHuang0516/EClaw/commit/a1859c50e6fb3991d7a8051491502d824a14a116))
* **portal:** group task chip actions ([#2825](https://github.com/HankHuang0516/EClaw/issues/2825)) ([5db5c59](https://github.com/HankHuang0516/EClaw/commit/5db5c59b32b8635f1412205faf0c2f9164d3d5d4))
* **portal:** info-guide-rules + info-guide-soul slide pair ([#2793](https://github.com/HankHuang0516/EClaw/issues/2793)) ([1c8bddc](https://github.com/HankHuang0516/EClaw/commit/1c8bddc4c185054b2b60088498e3d45509117127)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **chat:** link card previews to kanban ([#2754](https://github.com/HankHuang0516/EClaw/issues/2754)) ([2261240](https://github.com/HankHuang0516/EClaw/commit/22612402c2e95efb07246629e81a849be41ee9c7))
* **mission:** link notes to kanban cards ([#2723](https://github.com/HankHuang0516/EClaw/issues/2723)) ([b36dc18](https://github.com/HankHuang0516/EClaw/commit/b36dc18f3a8facf12e0b6046351c222f1e99dc55))
* **mindmap:** mission.html link to /portal/mindmap.html + deprecate /api/mission/mindmap ([#2685](https://github.com/HankHuang0516/EClaw/issues/2685)) ([11e297b](https://github.com/HankHuang0516/EClaw/commit/11e297bab1c9b56fcde3027d6500b7c58891bf18)), closes [#2680](https://github.com/HankHuang0516/EClaw/issues/2680) [#2684](https://github.com/HankHuang0516/EClaw/issues/2684)
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **settings:** per-entity nudge override UI (Phase 2) ([#2837](https://github.com/HankHuang0516/EClaw/issues/2837)) ([ea7662b](https://github.com/HankHuang0516/EClaw/commit/ea7662b0858882dae461e1387f711895924f9ab8)), closes [3/#4](https://github.com/HankHuang0516/EClaw/issues/4)
* **kanban:** per-entity nudge overrides (Phase 2 of card_e066cb6b) ([#2836](https://github.com/HankHuang0516/EClaw/issues/2836)) ([0425f80](https://github.com/HankHuang0516/EClaw/commit/0425f80bc1169c0d506b665659c8676695c45553))
* **avatar:** petdx render on card-holder my-cards (Phase 1b) ([#2621](https://github.com/HankHuang0516/EClaw/issues/2621)) ([f78ba8b](https://github.com/HankHuang0516/EClaw/commit/f78ba8b18acc426936ab6d8a82ca7541effea00d))
* **avatar:** petdx render on dashboard entity grid / org chart / bindings (Phase 1b) ([#2622](https://github.com/HankHuang0516/EClaw/issues/2622)) ([f417749](https://github.com/HankHuang0516/EClaw/commit/f41774914451048e8cd76e9ae30416a0642e173b)), closes [#2620](https://github.com/HankHuang0516/EClaw/issues/2620) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621)
* **avatar:** petdx render on kanban auto-assign / pulse / comment avatars (Phase 1b) ([#2624](https://github.com/HankHuang0516/EClaw/issues/2624)) ([6bff5f8](https://github.com/HankHuang0516/EClaw/commit/6bff5f80440d0bd91a6b1721cde9478d685c4d46))
* **avatar:** petdx render on mission skill/rule/soul entity dialogs (Phase 1b) ([#2623](https://github.com/HankHuang0516/EClaw/issues/2623)) ([129327b](https://github.com/HankHuang0516/EClaw/commit/129327bc7b91056659f1ab7e8d5e3f5260d951fb))
* **mindmap:** portal/mindmap.html force-graph prototype ([#129](https://github.com/HankHuang0516/EClaw/issues/129)) ([#2681](https://github.com/HankHuang0516/EClaw/issues/2681)) ([0f15e69](https://github.com/HankHuang0516/EClaw/commit/0f15e6930f0697c37fa08f3219edb8f9e499837f)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **portal:** redo nagoya trip page in professional tour-guide style ([#2691](https://github.com/HankHuang0516/EClaw/issues/2691)) ([b2378c0](https://github.com/HankHuang0516/EClaw/commit/b2378c06ee20fa9cccfdceceb1a4c9e0b3072f59))
* **i18n:** remove ms+hi orphan keys from i18n.js ([#2849](https://github.com/HankHuang0516/EClaw/issues/2849)) ([320176c](https://github.com/HankHuang0516/EClaw/commit/320176c06a3cfd8631e2a82ad02a6bd6a9af0389))
* **avatar:** render selected petdx companion in chat avatars ([#2620](https://github.com/HankHuang0516/EClaw/issues/2620)) ([0bdd046](https://github.com/HankHuang0516/EClaw/commit/0bdd046fe1b1c428e32edda366ff112c08927f4c))
* **home:** replace native home with WebView hosting dashboard.html ([#2634](https://github.com/HankHuang0516/EClaw/issues/2634)) ([e69ea81](https://github.com/HankHuang0516/EClaw/commit/e69ea8160c239b083a83d6dc83a4f1c3f901c863))
* **app:** route chat mission jumps through native tabs ([#2824](https://github.com/HankHuang0516/EClaw/issues/2824)) ([deb07b6](https://github.com/HankHuang0516/EClaw/commit/deb07b69a9ecca632fe27278de537f1d85234e94))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **chat:** support message deep links ([#2719](https://github.com/HankHuang0516/EClaw/issues/2719)) ([2dc0f1e](https://github.com/HankHuang0516/EClaw/commit/2dc0f1eeb259e1a0848db4a03186b989372cd91c))
* **mission:** support note deep links ([#2717](https://github.com/HankHuang0516/EClaw/issues/2717)) ([2efd3a5](https://github.com/HankHuang0516/EClaw/commit/2efd3a5e741217a07c0b0ac54a0ddd010e0ebe23))
* **share-chat:** twitter card + per-bot og:image/twitter:* in SSR ([#2609](https://github.com/HankHuang0516/EClaw/issues/2609)) ([6cdc853](https://github.com/HankHuang0516/EClaw/commit/6cdc853dc884cdb95bd47214942768981f218ae0))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))
* **settings:** wire petdx avatar into channel-account chips ([#2626](https://github.com/HankHuang0516/EClaw/issues/2626)) ([88aec77](https://github.com/HankHuang0516/EClaw/commit/88aec772628c240e97b336bb5820892ad632d1ae))
* **files:** wire petdx avatar into entity filter & per-file badges ([#2627](https://github.com/HankHuang0516/EClaw/issues/2627)) ([5b3e5cc](https://github.com/HankHuang0516/EClaw/commit/5b3e5cc542d9da69bb4e92500fd03a542ea33f00))
* **mindmap:** wrap hardcoded zh-TW UI strings with i18n t() ([#2607](https://github.com/HankHuang0516/EClaw/issues/2607)) ([166af87](https://github.com/HankHuang0516/EClaw/commit/166af8772b2121a24aaf34a83b3de970e9b3b571)), closes [#2606](https://github.com/HankHuang0516/EClaw/issues/2606)
* **i18n:** zh-TW backfill 8 keys (soft-pause + chat + invite + wallet) ([#2815](https://github.com/HankHuang0516/EClaw/issues/2815)) ([a2dd574](https://github.com/HankHuang0516/EClaw/commit/a2dd5743ce8d43a4b6ace9a2fd4b52568180d6c5))


### Performance Improvements

* **mindmap:** force-graph hardening for 1000/2000-node graphs ([#2684](https://github.com/HankHuang0516/EClaw/issues/2684)) ([da8b1c8](https://github.com/HankHuang0516/EClaw/commit/da8b1c8f947ab8bc8fa455c1962a91146623a1fc))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-20)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **notifications:** add kanban_done + kanban_done_auto toggles to Android Settings ([#2636](https://github.com/HankHuang0516/EClaw/issues/2636)) ([a710909](https://github.com/HankHuang0516/EClaw/commit/a7109095e3393b8564e7ef1b23d382a4fbb944b8))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **i18n:** ar block — fix 27 broken entries (CJK leaks + truncated HTML) ([#2851](https://github.com/HankHuang0516/EClaw/issues/2851)) ([5b19175](https://github.com/HankHuang0516/EClaw/commit/5b19175d712d00d16fcec00b749035c4beae7a5c))
* **chat:** atomic-load target bar (await contacts before first render) ([#2831](https://github.com/HankHuang0516/EClaw/issues/2831)) ([5f529e6](https://github.com/HankHuang0516/EClaw/commit/5f529e6b772eacc38ba1de69b44258a05f0d816a)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2](https://github.com/HankHuang0516/EClaw/issues/2)
* **rental:** bump handshake timeout to 60s + timeout-aware discovery fallback ([#2863](https://github.com/HankHuang0516/EClaw/issues/2863)) ([fd4322f](https://github.com/HankHuang0516/EClaw/commit/fd4322f8890f3c2dfca3acdae6a4b95f19c381f9)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **i18n:** clear batch 1 residual missing keys ([#2790](https://github.com/HankHuang0516/EClaw/issues/2790)) ([211030e](https://github.com/HankHuang0516/EClaw/commit/211030e0b0b6a865c11f0c4ed60dc4e356d43b7a))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **kanban:** comment input no longer overlaps last comment in card detail (PR [#2678](https://github.com/HankHuang0516/EClaw/issues/2678)) ([fba91fc](https://github.com/HankHuang0516/EClaw/commit/fba91fca15402b453a0db5ee857c0b16e6087055))
* **chat:** compact 20px avatar in target bar (App WebView only shows [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2](https://github.com/HankHuang0516/EClaw/issues/2)) ([#2830](https://github.com/HankHuang0516/EClaw/issues/2830)) ([42c7543](https://github.com/HankHuang0516/EClaw/commit/42c7543b4a78a7abf3f5f7535eb9bc6142cd0fe2)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **portal:** complete 401 redirect sweep + mobile UIUX truncation ([#2842](https://github.com/HankHuang0516/EClaw/issues/2842)) ([f9799ba](https://github.com/HankHuang0516/EClaw/commit/f9799ba42498b109f0a8a70e80836aa6da51e216)), closes [#2833](https://github.com/HankHuang0516/EClaw/issues/2833) [#2845](https://github.com/HankHuang0516/EClaw/issues/2845) [#2844](https://github.com/HankHuang0516/EClaw/issues/2844) [#2843](https://github.com/HankHuang0516/EClaw/issues/2843)
* **uiux:** continue qa mobile readability sweep ([#2854](https://github.com/HankHuang0516/EClaw/issues/2854)) ([57606ff](https://github.com/HankHuang0516/EClaw/commit/57606ffe3e543b07a026aacc53c4b470c9a7825b))
* **i18n:** cover dynamic portal wrapper keys ([#2807](https://github.com/HankHuang0516/EClaw/issues/2807)) ([4c711cc](https://github.com/HankHuang0516/EClaw/commit/4c711cc4009300ffe4e8933a98ee01cd0fdd6aeb))
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **rental:** don't pollute entity.message on push gateway timeout ([#2860](https://github.com/HankHuang0516/EClaw/issues/2860)) ([592ba44](https://github.com/HankHuang0516/EClaw/commit/592ba44f57536ee00011b6cbddaa6b129a7cbae9))
* **petdx:** drop dark-grey loading placeholder + preload sprite WEBP ([#2628](https://github.com/HankHuang0516/EClaw/issues/2628)) ([59cef38](https://github.com/HankHuang0516/EClaw/commit/59cef387bd69ca99d7d15c86a1364856d3849ad8)), closes [#1a1a1a](https://github.com/HankHuang0516/EClaw/issues/1a1a1a)
* **security:** escape innerHTML in chat modal error messages ([#2819](https://github.com/HankHuang0516/EClaw/issues/2819)) ([dce07ad](https://github.com/HankHuang0516/EClaw/commit/dce07adde64795916dba977ae23e46f3371ce7ed)), closes [#2809](https://github.com/HankHuang0516/EClaw/issues/2809) [#2810](https://github.com/HankHuang0516/EClaw/issues/2810) [#2809](https://github.com/HankHuang0516/EClaw/issues/2809) [#2810](https://github.com/HankHuang0516/EClaw/issues/2810)
* **entities:** expose botSecret to owner so wallpaper service can poll companions ([#2615](https://github.com/HankHuang0516/EClaw/issues/2615)) ([04470fc](https://github.com/HankHuang0516/EClaw/commit/04470fce8f8c3fce2b1ba8b243e776606f107502))
* **rental:** expose owner_public_code in marketplace so plaza CTA can route ([#2616](https://github.com/HankHuang0516/EClaw/issues/2616)) ([4d1372f](https://github.com/HankHuang0516/EClaw/commit/4d1372f717d93cab65543e87c852e74e9fb67071)), closes [#2610](https://github.com/HankHuang0516/EClaw/issues/2610)
* **mindmap:** fallback to device scope when entityId is null ([#2728](https://github.com/HankHuang0516/EClaw/issues/2728)) ([7572312](https://github.com/HankHuang0516/EClaw/commit/7572312433d3d75fc245eda48a28919ce14bd927))
* **i18n:** fill Spanish drift keys ([#2751](https://github.com/HankHuang0516/EClaw/issues/2751)) ([0ad0ee5](https://github.com/HankHuang0516/EClaw/commit/0ad0ee55f7fac3e6ac46d891539950dab4d553cc))
* **portal:** fit embedded org chart to mobile viewport ([#2674](https://github.com/HankHuang0516/EClaw/issues/2674)) ([1c4e1b4](https://github.com/HankHuang0516/EClaw/commit/1c4e1b413ea7027b4cd4b8ecda981b0d0e12e66b))
* **i18n:** fix 6 trailing-comma syntax errors in 10-locale batch ([#2771](https://github.com/HankHuang0516/EClaw/issues/2771)) ([b27c6ca](https://github.com/HankHuang0516/EClaw/commit/b27c6ca204bf813e406c54ce3a2532a5f1f031b3))
* **kanban:** GET card returns latest 50 comments + comments endpoint exposes total ([#2816](https://github.com/HankHuang0516/EClaw/issues/2816)) ([c4d83f7](https://github.com/HankHuang0516/EClaw/commit/c4d83f777a1cd26aea0936e4316aa35c52822eef))
* **sharechat:** guest verify-email modal + disabled Send for unverified ([#2865](https://github.com/HankHuang0516/EClaw/issues/2865)) ([cb3b061](https://github.com/HankHuang0516/EClaw/commit/cb3b0614e0f6160417d907753e66eceb2d666802))
* **uiux:** harden chat previews and roster preview ([#2769](https://github.com/HankHuang0516/EClaw/issues/2769)) ([466d4d3](https://github.com/HankHuang0516/EClaw/commit/466d4d3ef81c628d3f58db64323946053d7bf61c))
* **mention-parser:** ignore @-mentions inside markdown code spans ([#2645](https://github.com/HankHuang0516/EClaw/issues/2645)) ([8da19d4](https://github.com/HankHuang0516/EClaw/commit/8da19d4a79ceb4152bf2144ee0847c61ce3e1def)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **kanban:** lazy-load dependency chips via IntersectionObserver ([#2632](https://github.com/HankHuang0516/EClaw/issues/2632)) ([20586b4](https://github.com/HankHuang0516/EClaw/commit/20586b43357335f9eb6a190c02d58c8e36b58aba)), closes [#2631](https://github.com/HankHuang0516/EClaw/issues/2631)
* **kanban:** make card sorting deterministic ([#2756](https://github.com/HankHuang0516/EClaw/issues/2756)) ([48e2117](https://github.com/HankHuang0516/EClaw/commit/48e2117b64e37f05dc635e0a3b67bfd43cbe48f5))
* **org-chart:** notify affected bots on hierarchy change ([#2812](https://github.com/HankHuang0516/EClaw/issues/2812)) ([55675fd](https://github.com/HankHuang0516/EClaw/commit/55675fdf4487494d729a29524b32bd81b756a00c)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** notify reviewer on manual /move → review ([#2753](https://github.com/HankHuang0516/EClaw/issues/2753)) ([6cbbb4e](https://github.com/HankHuang0516/EClaw/commit/6cbbb4ee8c0d4d8ad54df2e9b5faaa3699bd530f))
* **wallpaper:** off-load spritesheet fetch to IO so per-petdx sprites actually render ([#2618](https://github.com/HankHuang0516/EClaw/issues/2618)) ([61b832c](https://github.com/HankHuang0516/EClaw/commit/61b832c9fa8a1d0caab810ccc942d85c63349267)), closes [#2615](https://github.com/HankHuang0516/EClaw/issues/2615) [#2577](https://github.com/HankHuang0516/EClaw/issues/2577)
* **security:** patch P0 sanitize-html XSS + P1 protobufjs + exam.html XSS ([#2829](https://github.com/HankHuang0516/EClaw/issues/2829)) ([c71b871](https://github.com/HankHuang0516/EClaw/commit/c71b871a045887375dd0d26d1a3280a0891a89ad))
* **portal:** petdx-browser cookie-session fallback for device-login ([#2757](https://github.com/HankHuang0516/EClaw/issues/2757)) ([ca275f4](https://github.com/HankHuang0516/EClaw/commit/ca275f4519835da0c7ad71c588908a18f6f138d8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **api:** platform-stats 500 + entity/lookup publicCode alias ([#2809](https://github.com/HankHuang0516/EClaw/issues/2809), [#2810](https://github.com/HankHuang0516/EClaw/issues/2810)) ([#2818](https://github.com/HankHuang0516/EClaw/issues/2818)) ([f99fd17](https://github.com/HankHuang0516/EClaw/commit/f99fd17b2b1c32d88daa2510ff66d714c1a53edc))
* **i18n:** positional format specifiers for feedback_result_logs (7 locales) ([#2597](https://github.com/HankHuang0516/EClaw/issues/2597)) ([21aedc7](https://github.com/HankHuang0516/EClaw/commit/21aedc7eebc7a2839e340136f38dfdfd4dabb9dc))
* **avatar-petdx:** preserve descriptor across transient API failures (flicker) ([#2625](https://github.com/HankHuang0516/EClaw/issues/2625)) ([7b1c606](https://github.com/HankHuang0516/EClaw/commit/7b1c606514f7698d72ec95cf6c556e4043966186))
* **chat:** preserve scroll anchor while reading history ([#2693](https://github.com/HankHuang0516/EClaw/issues/2693)) ([945fdb7](https://github.com/HankHuang0516/EClaw/commit/945fdb7192b791b31882e1e75568dd8b11e4686f))
* **promo:** pull video embed from /promo-chat-avatar.html ([#2724](https://github.com/HankHuang0516/EClaw/issues/2724)) ([2afabc8](https://github.com/HankHuang0516/EClaw/commit/2afabc8c5ff8b25218a7cb857e8adfa572c8e9d5))
* **kanban:** realign stale recurring schedules ([#2785](https://github.com/HankHuang0516/EClaw/issues/2785)) ([ab8ee25](https://github.com/HankHuang0516/EClaw/commit/ab8ee250a9b37f3d3e838bb01d8866c8d2b78231))
* **portal:** reduce QA-discovered request fanout ([#2656](https://github.com/HankHuang0516/EClaw/issues/2656)) ([1e46d6b](https://github.com/HankHuang0516/EClaw/commit/1e46d6bab61e58c65b452b6503d953f8dddeee75))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **portal:** remove org chart fit scale floor ([#2676](https://github.com/HankHuang0516/EClaw/issues/2676)) ([0f01606](https://github.com/HankHuang0516/EClaw/commit/0f016068b963bb5f800a02f28817c7174979d913))
* **rental:** remove phantom 'webhook test push' step from BIND_COMPLETE ([#2864](https://github.com/HankHuang0516/EClaw/issues/2864)) ([47f4a3e](https://github.com/HankHuang0516/EClaw/commit/47f4a3edf76aa95ebd06d8713cd44fda6eef9b5d))
* **i18n:** rename mm_empty_title → mm_state_empty_title in mindmap.html ([#2683](https://github.com/HankHuang0516/EClaw/issues/2683)) ([c79c109](https://github.com/HankHuang0516/EClaw/commit/c79c109bea23142e8a6d9ace976d105af1280ec9))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **chat:** render mention avatars with companion renderer ([#2633](https://github.com/HankHuang0516/EClaw/issues/2633)) ([03e205f](https://github.com/HankHuang0516/EClaw/commit/03e205f663ecd2c2f443d4009dd5af0093f0bbbb))
* **kanban:** reserve mobile comments panel height ([#2782](https://github.com/HankHuang0516/EClaw/issues/2782)) ([ce8662d](https://github.com/HankHuang0516/EClaw/commit/ce8662d362422fdd25037f1deb61dbed9425e2f9))
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* scheduled audit 2026-05-13 — 6 bugs, XSS, i18n ([#2668](https://github.com/HankHuang0516/EClaw/issues/2668)) ([21dd513](https://github.com/HankHuang0516/EClaw/commit/21dd513b4464738de29164265437435ba6cc4817)), closes [#2605](https://github.com/HankHuang0516/EClaw/issues/2605) [#2608](https://github.com/HankHuang0516/EClaw/issues/2608) [#2600](https://github.com/HankHuang0516/EClaw/issues/2600) [#2599](https://github.com/HankHuang0516/EClaw/issues/2599) [#2598](https://github.com/HankHuang0516/EClaw/issues/2598)
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **chat:** smart-chip preview falls back to inline c.comments when /comments fails (PR [#2677](https://github.com/HankHuang0516/EClaw/issues/2677)) ([7f4dffd](https://github.com/HankHuang0516/EClaw/commit/7f4dffd2c83ea86f296b8fa0610f0e67c9f1af11))
* **kanban:** stabilize comment detail viewport ([#2796](https://github.com/HankHuang0516/EClaw/issues/2796)) ([0a10aad](https://github.com/HankHuang0516/EClaw/commit/0a10aadb5a5b12ff23454c16d5c88183b94ad7d7))
* **wallpaper:** stop Android live wallpaper flashing default lobster on companion change ([#2629](https://github.com/HankHuang0516/EClaw/issues/2629)) ([8b4f66f](https://github.com/HankHuang0516/EClaw/commit/8b4f66fcb335bf43128f924b761b6337c817095b)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **chat:** stop chat.html bouncing to dashboard via /api/rental/health-status 401 race ([#2833](https://github.com/HankHuang0516/EClaw/issues/2833)) ([c422406](https://github.com/HankHuang0516/EClaw/commit/c4224067cdcfe7f3e22ab95007c7563dac4196ac))
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **app:** WebView pages honor app-selected locale via ?lang= URL param ([#2672](https://github.com/HankHuang0516/EClaw/issues/2672)) ([8ed8757](https://github.com/HankHuang0516/EClaw/commit/8ed8757aec5bf214e837cc0d81bf2b23f1993a91)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* **community:** 1-click chat button on bot cards + utm tagging ([#2610](https://github.com/HankHuang0516/EClaw/issues/2610)) ([eee97b0](https://github.com/HankHuang0516/EClaw/commit/eee97b0e2e4e74945ec24f218a69a52800b97a66))
* **chat:** accept ?messageId= as deep-link alias ([#2838](https://github.com/HankHuang0516/EClaw/issues/2838)) ([1785a87](https://github.com/HankHuang0516/EClaw/commit/1785a87310426637fd10df83754fb9924c45207f))
* **chat:** add avatar size preference ([#2714](https://github.com/HankHuang0516/EClaw/issues/2714)) ([6fe164a](https://github.com/HankHuang0516/EClaw/commit/6fe164ad8b22fa576d2dd9ad37c0d9fc295b5a83))
* **dashboard:** add Claude and Codex channel guides ([#2640](https://github.com/HankHuang0516/EClaw/issues/2640)) ([c64e4c4](https://github.com/HankHuang0516/EClaw/commit/c64e4c4afc78db58c5cd578f00486dd7b2fd3311))
* **dashboard:** add Claude Code channel guide card ([#2667](https://github.com/HankHuang0516/EClaw/issues/2667)) ([d70d75c](https://github.com/HankHuang0516/EClaw/commit/d70d75c0c8caa8a540358a9aab4556b8c1927a5c))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* **kanban:** add device-scoped card tags ([#2773](https://github.com/HankHuang0516/EClaw/issues/2773)) ([53a387e](https://github.com/HankHuang0516/EClaw/commit/53a387e67ba7bb4f6bed1c427000c4ae8666577a))
* **portal:** add entity selector to petdx-browser ([#2602](https://github.com/HankHuang0516/EClaw/issues/2602)) ([3fa067e](https://github.com/HankHuang0516/EClaw/commit/3fa067e00b38829b48a37cecd33ee81a9a1122d9))
* **kanban:** add explicit card links ([#2721](https://github.com/HankHuang0516/EClaw/issues/2721)) ([ef9f812](https://github.com/HankHuang0516/EClaw/commit/ef9f812a3fcf39efd07fd158ce90951bdd045ac7))
* **kanban:** add explicit done-card reopen flow ([#2801](https://github.com/HankHuang0516/EClaw/issues/2801)) ([5080aac](https://github.com/HankHuang0516/EClaw/commit/5080aacb75047c0deaa379ee708ec85465afd57c))
* **mindmap:** add GET /api/mindmap/graph force-graph projection ([#2680](https://github.com/HankHuang0516/EClaw/issues/2680)) ([a00b2e7](https://github.com/HankHuang0516/EClaw/commit/a00b2e775af2c4c98cd157f760ad87aeeee469f0)), closes [#2679](https://github.com/HankHuang0516/EClaw/issues/2679) [#2679](https://github.com/HankHuang0516/EClaw/issues/2679)
* **dashboard:** add Hermes channel promo card ([#2708](https://github.com/HankHuang0516/EClaw/issues/2708)) ([337aca1](https://github.com/HankHuang0516/EClaw/commit/337aca153d5a1cd7e888c065f00ae54db7872d91))
* **rental:** add listing soft pause ([#2781](https://github.com/HankHuang0516/EClaw/issues/2781)) ([6586b72](https://github.com/HankHuang0516/EClaw/commit/6586b72717ddb1637d91cd3242c8d2ff554f62b4))
* **portal:** add Nagoya 5D4N trip static cross-ref page ([#2689](https://github.com/HankHuang0516/EClaw/issues/2689)) ([2e0efb6](https://github.com/HankHuang0516/EClaw/commit/2e0efb6dcdaff52226cc8854a96747000b12bdff))
* **portal:** add Nagoya trip map links and image lightbox ([#2821](https://github.com/HankHuang0516/EClaw/issues/2821)) ([3e40955](https://github.com/HankHuang0516/EClaw/commit/3e40955650a05f45a6b9f7e39e73847705424a03))
* **portal/nagoya:** add parking shortcut buttons next to itinerary places ([#2826](https://github.com/HankHuang0516/EClaw/issues/2826)) ([63968c5](https://github.com/HankHuang0516/EClaw/commit/63968c554d046afc8d978de74e3aacbf7700500d))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **settings:** add rental roster management preview ([#2758](https://github.com/HankHuang0516/EClaw/issues/2758)) ([9706e59](https://github.com/HankHuang0516/EClaw/commit/9706e59ded140a90a6e02348124282bc69d89001))
* **rental:** add renter health chat indicator ([#2690](https://github.com/HankHuang0516/EClaw/issues/2690)) ([36cd2e9](https://github.com/HankHuang0516/EClaw/commit/36cd2e9802be4c7ebb03d3024617fa74aca48ffd))
* **ios:** add Tutorial & Intro entry in Settings ([#2800](https://github.com/HankHuang0516/EClaw/issues/2800)) ([ed83e51](https://github.com/HankHuang0516/EClaw/commit/ed83e51d043bf4cd5865f38dc95a91ed54820d6c))
* **landing:** add Watch Full Demo CTA below hero video ([#2799](https://github.com/HankHuang0516/EClaw/issues/2799)) ([66107c9](https://github.com/HankHuang0516/EClaw/commit/66107c954727551fd34d989a4674daaad9b63968))
* **footer:** add Watch Intro Video link in Info column ([#2798](https://github.com/HankHuang0516/EClaw/issues/2798)) ([d7c6d59](https://github.com/HankHuang0516/EClaw/commit/d7c6d596b69c6a5b257bf1f7a792a407ef9712ad))
* **i18n:** ar iter-2 — fill 623 missing keys against en source ([#2847](https://github.com/HankHuang0516/EClaw/issues/2847)) ([ee94a7a](https://github.com/HankHuang0516/EClaw/commit/ee94a7ae6812b5163efe4284ee4907ca32302f5c))
* **kanban:** backlog launch-gate flag to suppress L1/L2/L3 escalation ([#2855](https://github.com/HankHuang0516/EClaw/issues/2855)) ([cb8bf1b](https://github.com/HankHuang0516/EClaw/commit/cb8bf1bb6421f25214f65e129a8cadccc49cc266)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#4](https://github.com/HankHuang0516/EClaw/issues/4) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **companion:** bridge crafter-station/petdex gallery (1784 pets) ([#2601](https://github.com/HankHuang0516/EClaw/issues/2601)) ([2e245be](https://github.com/HankHuang0516/EClaw/commit/2e245bea6dd47ea7361b927d389188a3c23b6bb3))
* **promo:** chat avatar size feature landing page (self-hosted MP4) ([#2722](https://github.com/HankHuang0516/EClaw/issues/2722)) ([3852210](https://github.com/HankHuang0516/EClaw/commit/3852210d355704d018e3daca6b5f9512a011b210)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **kanban:** cron-spawn jitter + lane backpressure to prevent same-tick wedge ([#2791](https://github.com/HankHuang0516/EClaw/issues/2791)) ([9f414a7](https://github.com/HankHuang0516/EClaw/commit/9f414a731d6393672a0a4189c7b408c529ae5e12)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **promo:** embed daily eclaw video 2026-05-14 ([#2786](https://github.com/HankHuang0516/EClaw/issues/2786)) ([718a814](https://github.com/HankHuang0516/EClaw/commit/718a814ab16850bc2b33a1b303841e2c4378ecfa)), closes [#2782](https://github.com/HankHuang0516/EClaw/issues/2782) [#2693](https://github.com/HankHuang0516/EClaw/issues/2693)
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **info:** embed promo video at top of Quick Start tab ([#2797](https://github.com/HankHuang0516/EClaw/issues/2797)) ([047679f](https://github.com/HankHuang0516/EClaw/commit/047679fd57ab9949eaeacea414d5611e71afe041))
* **rental:** enforce strict rebind refunds ([#2703](https://github.com/HankHuang0516/EClaw/issues/2703)) ([a1859c5](https://github.com/HankHuang0516/EClaw/commit/a1859c50e6fb3991d7a8051491502d824a14a116))
* **portal:** group task chip actions ([#2825](https://github.com/HankHuang0516/EClaw/issues/2825)) ([5db5c59](https://github.com/HankHuang0516/EClaw/commit/5db5c59b32b8635f1412205faf0c2f9164d3d5d4))
* **portal:** info-guide-rules + info-guide-soul slide pair ([#2793](https://github.com/HankHuang0516/EClaw/issues/2793)) ([1c8bddc](https://github.com/HankHuang0516/EClaw/commit/1c8bddc4c185054b2b60088498e3d45509117127)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **chat:** link card previews to kanban ([#2754](https://github.com/HankHuang0516/EClaw/issues/2754)) ([2261240](https://github.com/HankHuang0516/EClaw/commit/22612402c2e95efb07246629e81a849be41ee9c7))
* **mission:** link notes to kanban cards ([#2723](https://github.com/HankHuang0516/EClaw/issues/2723)) ([b36dc18](https://github.com/HankHuang0516/EClaw/commit/b36dc18f3a8facf12e0b6046351c222f1e99dc55))
* **mindmap:** mission.html link to /portal/mindmap.html + deprecate /api/mission/mindmap ([#2685](https://github.com/HankHuang0516/EClaw/issues/2685)) ([11e297b](https://github.com/HankHuang0516/EClaw/commit/11e297bab1c9b56fcde3027d6500b7c58891bf18)), closes [#2680](https://github.com/HankHuang0516/EClaw/issues/2680) [#2684](https://github.com/HankHuang0516/EClaw/issues/2684)
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **settings:** per-entity nudge override UI (Phase 2) ([#2837](https://github.com/HankHuang0516/EClaw/issues/2837)) ([ea7662b](https://github.com/HankHuang0516/EClaw/commit/ea7662b0858882dae461e1387f711895924f9ab8)), closes [3/#4](https://github.com/HankHuang0516/EClaw/issues/4)
* **kanban:** per-entity nudge overrides (Phase 2 of card_e066cb6b) ([#2836](https://github.com/HankHuang0516/EClaw/issues/2836)) ([0425f80](https://github.com/HankHuang0516/EClaw/commit/0425f80bc1169c0d506b665659c8676695c45553))
* **avatar:** petdx render on card-holder my-cards (Phase 1b) ([#2621](https://github.com/HankHuang0516/EClaw/issues/2621)) ([f78ba8b](https://github.com/HankHuang0516/EClaw/commit/f78ba8b18acc426936ab6d8a82ca7541effea00d))
* **avatar:** petdx render on dashboard entity grid / org chart / bindings (Phase 1b) ([#2622](https://github.com/HankHuang0516/EClaw/issues/2622)) ([f417749](https://github.com/HankHuang0516/EClaw/commit/f41774914451048e8cd76e9ae30416a0642e173b)), closes [#2620](https://github.com/HankHuang0516/EClaw/issues/2620) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621)
* **avatar:** petdx render on kanban auto-assign / pulse / comment avatars (Phase 1b) ([#2624](https://github.com/HankHuang0516/EClaw/issues/2624)) ([6bff5f8](https://github.com/HankHuang0516/EClaw/commit/6bff5f80440d0bd91a6b1721cde9478d685c4d46))
* **avatar:** petdx render on mission skill/rule/soul entity dialogs (Phase 1b) ([#2623](https://github.com/HankHuang0516/EClaw/issues/2623)) ([129327b](https://github.com/HankHuang0516/EClaw/commit/129327bc7b91056659f1ab7e8d5e3f5260d951fb))
* **mindmap:** portal/mindmap.html force-graph prototype ([#129](https://github.com/HankHuang0516/EClaw/issues/129)) ([#2681](https://github.com/HankHuang0516/EClaw/issues/2681)) ([0f15e69](https://github.com/HankHuang0516/EClaw/commit/0f15e6930f0697c37fa08f3219edb8f9e499837f)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **portal:** redo nagoya trip page in professional tour-guide style ([#2691](https://github.com/HankHuang0516/EClaw/issues/2691)) ([b2378c0](https://github.com/HankHuang0516/EClaw/commit/b2378c06ee20fa9cccfdceceb1a4c9e0b3072f59))
* **i18n:** remove ms+hi orphan keys from i18n.js ([#2849](https://github.com/HankHuang0516/EClaw/issues/2849)) ([320176c](https://github.com/HankHuang0516/EClaw/commit/320176c06a3cfd8631e2a82ad02a6bd6a9af0389))
* **avatar:** render selected petdx companion in chat avatars ([#2620](https://github.com/HankHuang0516/EClaw/issues/2620)) ([0bdd046](https://github.com/HankHuang0516/EClaw/commit/0bdd046fe1b1c428e32edda366ff112c08927f4c))
* **home:** replace native home with WebView hosting dashboard.html ([#2634](https://github.com/HankHuang0516/EClaw/issues/2634)) ([e69ea81](https://github.com/HankHuang0516/EClaw/commit/e69ea8160c239b083a83d6dc83a4f1c3f901c863))
* **app:** route chat mission jumps through native tabs ([#2824](https://github.com/HankHuang0516/EClaw/issues/2824)) ([deb07b6](https://github.com/HankHuang0516/EClaw/commit/deb07b69a9ecca632fe27278de537f1d85234e94))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **chat:** support message deep links ([#2719](https://github.com/HankHuang0516/EClaw/issues/2719)) ([2dc0f1e](https://github.com/HankHuang0516/EClaw/commit/2dc0f1eeb259e1a0848db4a03186b989372cd91c))
* **mission:** support note deep links ([#2717](https://github.com/HankHuang0516/EClaw/issues/2717)) ([2efd3a5](https://github.com/HankHuang0516/EClaw/commit/2efd3a5e741217a07c0b0ac54a0ddd010e0ebe23))
* **share-chat:** twitter card + per-bot og:image/twitter:* in SSR ([#2609](https://github.com/HankHuang0516/EClaw/issues/2609)) ([6cdc853](https://github.com/HankHuang0516/EClaw/commit/6cdc853dc884cdb95bd47214942768981f218ae0))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))
* **settings:** wire petdx avatar into channel-account chips ([#2626](https://github.com/HankHuang0516/EClaw/issues/2626)) ([88aec77](https://github.com/HankHuang0516/EClaw/commit/88aec772628c240e97b336bb5820892ad632d1ae))
* **files:** wire petdx avatar into entity filter & per-file badges ([#2627](https://github.com/HankHuang0516/EClaw/issues/2627)) ([5b3e5cc](https://github.com/HankHuang0516/EClaw/commit/5b3e5cc542d9da69bb4e92500fd03a542ea33f00))
* **mindmap:** wrap hardcoded zh-TW UI strings with i18n t() ([#2607](https://github.com/HankHuang0516/EClaw/issues/2607)) ([166af87](https://github.com/HankHuang0516/EClaw/commit/166af8772b2121a24aaf34a83b3de970e9b3b571)), closes [#2606](https://github.com/HankHuang0516/EClaw/issues/2606)
* **i18n:** zh-TW backfill 8 keys (soft-pause + chat + invite + wallet) ([#2815](https://github.com/HankHuang0516/EClaw/issues/2815)) ([a2dd574](https://github.com/HankHuang0516/EClaw/commit/a2dd5743ce8d43a4b6ace9a2fd4b52568180d6c5))


### Performance Improvements

* **mindmap:** force-graph hardening for 1000/2000-node graphs ([#2684](https://github.com/HankHuang0516/EClaw/issues/2684)) ([da8b1c8](https://github.com/HankHuang0516/EClaw/commit/da8b1c8f947ab8bc8fa455c1962a91146623a1fc))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-20)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **notifications:** add kanban_done + kanban_done_auto toggles to Android Settings ([#2636](https://github.com/HankHuang0516/EClaw/issues/2636)) ([a710909](https://github.com/HankHuang0516/EClaw/commit/a7109095e3393b8564e7ef1b23d382a4fbb944b8))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **i18n:** ar block — fix 27 broken entries (CJK leaks + truncated HTML) ([#2851](https://github.com/HankHuang0516/EClaw/issues/2851)) ([5b19175](https://github.com/HankHuang0516/EClaw/commit/5b19175d712d00d16fcec00b749035c4beae7a5c))
* **chat:** atomic-load target bar (await contacts before first render) ([#2831](https://github.com/HankHuang0516/EClaw/issues/2831)) ([5f529e6](https://github.com/HankHuang0516/EClaw/commit/5f529e6b772eacc38ba1de69b44258a05f0d816a)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2](https://github.com/HankHuang0516/EClaw/issues/2)
* **rental:** bump handshake timeout to 60s + timeout-aware discovery fallback ([#2863](https://github.com/HankHuang0516/EClaw/issues/2863)) ([fd4322f](https://github.com/HankHuang0516/EClaw/commit/fd4322f8890f3c2dfca3acdae6a4b95f19c381f9)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **i18n:** clear batch 1 residual missing keys ([#2790](https://github.com/HankHuang0516/EClaw/issues/2790)) ([211030e](https://github.com/HankHuang0516/EClaw/commit/211030e0b0b6a865c11f0c4ed60dc4e356d43b7a))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **kanban:** comment input no longer overlaps last comment in card detail (PR [#2678](https://github.com/HankHuang0516/EClaw/issues/2678)) ([fba91fc](https://github.com/HankHuang0516/EClaw/commit/fba91fca15402b453a0db5ee857c0b16e6087055))
* **chat:** compact 20px avatar in target bar (App WebView only shows [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2](https://github.com/HankHuang0516/EClaw/issues/2)) ([#2830](https://github.com/HankHuang0516/EClaw/issues/2830)) ([42c7543](https://github.com/HankHuang0516/EClaw/commit/42c7543b4a78a7abf3f5f7535eb9bc6142cd0fe2)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **portal:** complete 401 redirect sweep + mobile UIUX truncation ([#2842](https://github.com/HankHuang0516/EClaw/issues/2842)) ([f9799ba](https://github.com/HankHuang0516/EClaw/commit/f9799ba42498b109f0a8a70e80836aa6da51e216)), closes [#2833](https://github.com/HankHuang0516/EClaw/issues/2833) [#2845](https://github.com/HankHuang0516/EClaw/issues/2845) [#2844](https://github.com/HankHuang0516/EClaw/issues/2844) [#2843](https://github.com/HankHuang0516/EClaw/issues/2843)
* **uiux:** continue qa mobile readability sweep ([#2854](https://github.com/HankHuang0516/EClaw/issues/2854)) ([57606ff](https://github.com/HankHuang0516/EClaw/commit/57606ffe3e543b07a026aacc53c4b470c9a7825b))
* **i18n:** cover dynamic portal wrapper keys ([#2807](https://github.com/HankHuang0516/EClaw/issues/2807)) ([4c711cc](https://github.com/HankHuang0516/EClaw/commit/4c711cc4009300ffe4e8933a98ee01cd0fdd6aeb))
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **rental:** don't pollute entity.message on push gateway timeout ([#2860](https://github.com/HankHuang0516/EClaw/issues/2860)) ([592ba44](https://github.com/HankHuang0516/EClaw/commit/592ba44f57536ee00011b6cbddaa6b129a7cbae9))
* **petdx:** drop dark-grey loading placeholder + preload sprite WEBP ([#2628](https://github.com/HankHuang0516/EClaw/issues/2628)) ([59cef38](https://github.com/HankHuang0516/EClaw/commit/59cef387bd69ca99d7d15c86a1364856d3849ad8)), closes [#1a1a1a](https://github.com/HankHuang0516/EClaw/issues/1a1a1a)
* **security:** escape innerHTML in chat modal error messages ([#2819](https://github.com/HankHuang0516/EClaw/issues/2819)) ([dce07ad](https://github.com/HankHuang0516/EClaw/commit/dce07adde64795916dba977ae23e46f3371ce7ed)), closes [#2809](https://github.com/HankHuang0516/EClaw/issues/2809) [#2810](https://github.com/HankHuang0516/EClaw/issues/2810) [#2809](https://github.com/HankHuang0516/EClaw/issues/2809) [#2810](https://github.com/HankHuang0516/EClaw/issues/2810)
* **entities:** expose botSecret to owner so wallpaper service can poll companions ([#2615](https://github.com/HankHuang0516/EClaw/issues/2615)) ([04470fc](https://github.com/HankHuang0516/EClaw/commit/04470fce8f8c3fce2b1ba8b243e776606f107502))
* **rental:** expose owner_public_code in marketplace so plaza CTA can route ([#2616](https://github.com/HankHuang0516/EClaw/issues/2616)) ([4d1372f](https://github.com/HankHuang0516/EClaw/commit/4d1372f717d93cab65543e87c852e74e9fb67071)), closes [#2610](https://github.com/HankHuang0516/EClaw/issues/2610)
* **mindmap:** fallback to device scope when entityId is null ([#2728](https://github.com/HankHuang0516/EClaw/issues/2728)) ([7572312](https://github.com/HankHuang0516/EClaw/commit/7572312433d3d75fc245eda48a28919ce14bd927))
* **i18n:** fill Spanish drift keys ([#2751](https://github.com/HankHuang0516/EClaw/issues/2751)) ([0ad0ee5](https://github.com/HankHuang0516/EClaw/commit/0ad0ee55f7fac3e6ac46d891539950dab4d553cc))
* **portal:** fit embedded org chart to mobile viewport ([#2674](https://github.com/HankHuang0516/EClaw/issues/2674)) ([1c4e1b4](https://github.com/HankHuang0516/EClaw/commit/1c4e1b413ea7027b4cd4b8ecda981b0d0e12e66b))
* **i18n:** fix 6 trailing-comma syntax errors in 10-locale batch ([#2771](https://github.com/HankHuang0516/EClaw/issues/2771)) ([b27c6ca](https://github.com/HankHuang0516/EClaw/commit/b27c6ca204bf813e406c54ce3a2532a5f1f031b3))
* **kanban:** GET card returns latest 50 comments + comments endpoint exposes total ([#2816](https://github.com/HankHuang0516/EClaw/issues/2816)) ([c4d83f7](https://github.com/HankHuang0516/EClaw/commit/c4d83f777a1cd26aea0936e4316aa35c52822eef))
* **uiux:** harden chat previews and roster preview ([#2769](https://github.com/HankHuang0516/EClaw/issues/2769)) ([466d4d3](https://github.com/HankHuang0516/EClaw/commit/466d4d3ef81c628d3f58db64323946053d7bf61c))
* **mention-parser:** ignore @-mentions inside markdown code spans ([#2645](https://github.com/HankHuang0516/EClaw/issues/2645)) ([8da19d4](https://github.com/HankHuang0516/EClaw/commit/8da19d4a79ceb4152bf2144ee0847c61ce3e1def)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **kanban:** lazy-load dependency chips via IntersectionObserver ([#2632](https://github.com/HankHuang0516/EClaw/issues/2632)) ([20586b4](https://github.com/HankHuang0516/EClaw/commit/20586b43357335f9eb6a190c02d58c8e36b58aba)), closes [#2631](https://github.com/HankHuang0516/EClaw/issues/2631)
* **kanban:** make card sorting deterministic ([#2756](https://github.com/HankHuang0516/EClaw/issues/2756)) ([48e2117](https://github.com/HankHuang0516/EClaw/commit/48e2117b64e37f05dc635e0a3b67bfd43cbe48f5))
* **org-chart:** notify affected bots on hierarchy change ([#2812](https://github.com/HankHuang0516/EClaw/issues/2812)) ([55675fd](https://github.com/HankHuang0516/EClaw/commit/55675fdf4487494d729a29524b32bd81b756a00c)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** notify reviewer on manual /move → review ([#2753](https://github.com/HankHuang0516/EClaw/issues/2753)) ([6cbbb4e](https://github.com/HankHuang0516/EClaw/commit/6cbbb4ee8c0d4d8ad54df2e9b5faaa3699bd530f))
* **wallpaper:** off-load spritesheet fetch to IO so per-petdx sprites actually render ([#2618](https://github.com/HankHuang0516/EClaw/issues/2618)) ([61b832c](https://github.com/HankHuang0516/EClaw/commit/61b832c9fa8a1d0caab810ccc942d85c63349267)), closes [#2615](https://github.com/HankHuang0516/EClaw/issues/2615) [#2577](https://github.com/HankHuang0516/EClaw/issues/2577)
* **security:** patch P0 sanitize-html XSS + P1 protobufjs + exam.html XSS ([#2829](https://github.com/HankHuang0516/EClaw/issues/2829)) ([c71b871](https://github.com/HankHuang0516/EClaw/commit/c71b871a045887375dd0d26d1a3280a0891a89ad))
* **portal:** petdx-browser cookie-session fallback for device-login ([#2757](https://github.com/HankHuang0516/EClaw/issues/2757)) ([ca275f4](https://github.com/HankHuang0516/EClaw/commit/ca275f4519835da0c7ad71c588908a18f6f138d8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **api:** platform-stats 500 + entity/lookup publicCode alias ([#2809](https://github.com/HankHuang0516/EClaw/issues/2809), [#2810](https://github.com/HankHuang0516/EClaw/issues/2810)) ([#2818](https://github.com/HankHuang0516/EClaw/issues/2818)) ([f99fd17](https://github.com/HankHuang0516/EClaw/commit/f99fd17b2b1c32d88daa2510ff66d714c1a53edc))
* **i18n:** positional format specifiers for feedback_result_logs (7 locales) ([#2597](https://github.com/HankHuang0516/EClaw/issues/2597)) ([21aedc7](https://github.com/HankHuang0516/EClaw/commit/21aedc7eebc7a2839e340136f38dfdfd4dabb9dc))
* **avatar-petdx:** preserve descriptor across transient API failures (flicker) ([#2625](https://github.com/HankHuang0516/EClaw/issues/2625)) ([7b1c606](https://github.com/HankHuang0516/EClaw/commit/7b1c606514f7698d72ec95cf6c556e4043966186))
* **chat:** preserve scroll anchor while reading history ([#2693](https://github.com/HankHuang0516/EClaw/issues/2693)) ([945fdb7](https://github.com/HankHuang0516/EClaw/commit/945fdb7192b791b31882e1e75568dd8b11e4686f))
* **promo:** pull video embed from /promo-chat-avatar.html ([#2724](https://github.com/HankHuang0516/EClaw/issues/2724)) ([2afabc8](https://github.com/HankHuang0516/EClaw/commit/2afabc8c5ff8b25218a7cb857e8adfa572c8e9d5))
* **kanban:** realign stale recurring schedules ([#2785](https://github.com/HankHuang0516/EClaw/issues/2785)) ([ab8ee25](https://github.com/HankHuang0516/EClaw/commit/ab8ee250a9b37f3d3e838bb01d8866c8d2b78231))
* **portal:** reduce QA-discovered request fanout ([#2656](https://github.com/HankHuang0516/EClaw/issues/2656)) ([1e46d6b](https://github.com/HankHuang0516/EClaw/commit/1e46d6bab61e58c65b452b6503d953f8dddeee75))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **portal:** remove org chart fit scale floor ([#2676](https://github.com/HankHuang0516/EClaw/issues/2676)) ([0f01606](https://github.com/HankHuang0516/EClaw/commit/0f016068b963bb5f800a02f28817c7174979d913))
* **rental:** remove phantom 'webhook test push' step from BIND_COMPLETE ([#2864](https://github.com/HankHuang0516/EClaw/issues/2864)) ([47f4a3e](https://github.com/HankHuang0516/EClaw/commit/47f4a3edf76aa95ebd06d8713cd44fda6eef9b5d))
* **i18n:** rename mm_empty_title → mm_state_empty_title in mindmap.html ([#2683](https://github.com/HankHuang0516/EClaw/issues/2683)) ([c79c109](https://github.com/HankHuang0516/EClaw/commit/c79c109bea23142e8a6d9ace976d105af1280ec9))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **chat:** render mention avatars with companion renderer ([#2633](https://github.com/HankHuang0516/EClaw/issues/2633)) ([03e205f](https://github.com/HankHuang0516/EClaw/commit/03e205f663ecd2c2f443d4009dd5af0093f0bbbb))
* **kanban:** reserve mobile comments panel height ([#2782](https://github.com/HankHuang0516/EClaw/issues/2782)) ([ce8662d](https://github.com/HankHuang0516/EClaw/commit/ce8662d362422fdd25037f1deb61dbed9425e2f9))
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* scheduled audit 2026-05-13 — 6 bugs, XSS, i18n ([#2668](https://github.com/HankHuang0516/EClaw/issues/2668)) ([21dd513](https://github.com/HankHuang0516/EClaw/commit/21dd513b4464738de29164265437435ba6cc4817)), closes [#2605](https://github.com/HankHuang0516/EClaw/issues/2605) [#2608](https://github.com/HankHuang0516/EClaw/issues/2608) [#2600](https://github.com/HankHuang0516/EClaw/issues/2600) [#2599](https://github.com/HankHuang0516/EClaw/issues/2599) [#2598](https://github.com/HankHuang0516/EClaw/issues/2598)
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **chat:** smart-chip preview falls back to inline c.comments when /comments fails (PR [#2677](https://github.com/HankHuang0516/EClaw/issues/2677)) ([7f4dffd](https://github.com/HankHuang0516/EClaw/commit/7f4dffd2c83ea86f296b8fa0610f0e67c9f1af11))
* **kanban:** stabilize comment detail viewport ([#2796](https://github.com/HankHuang0516/EClaw/issues/2796)) ([0a10aad](https://github.com/HankHuang0516/EClaw/commit/0a10aadb5a5b12ff23454c16d5c88183b94ad7d7))
* **wallpaper:** stop Android live wallpaper flashing default lobster on companion change ([#2629](https://github.com/HankHuang0516/EClaw/issues/2629)) ([8b4f66f](https://github.com/HankHuang0516/EClaw/commit/8b4f66fcb335bf43128f924b761b6337c817095b)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **chat:** stop chat.html bouncing to dashboard via /api/rental/health-status 401 race ([#2833](https://github.com/HankHuang0516/EClaw/issues/2833)) ([c422406](https://github.com/HankHuang0516/EClaw/commit/c4224067cdcfe7f3e22ab95007c7563dac4196ac))
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **app:** WebView pages honor app-selected locale via ?lang= URL param ([#2672](https://github.com/HankHuang0516/EClaw/issues/2672)) ([8ed8757](https://github.com/HankHuang0516/EClaw/commit/8ed8757aec5bf214e837cc0d81bf2b23f1993a91)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* **community:** 1-click chat button on bot cards + utm tagging ([#2610](https://github.com/HankHuang0516/EClaw/issues/2610)) ([eee97b0](https://github.com/HankHuang0516/EClaw/commit/eee97b0e2e4e74945ec24f218a69a52800b97a66))
* **chat:** accept ?messageId= as deep-link alias ([#2838](https://github.com/HankHuang0516/EClaw/issues/2838)) ([1785a87](https://github.com/HankHuang0516/EClaw/commit/1785a87310426637fd10df83754fb9924c45207f))
* **chat:** add avatar size preference ([#2714](https://github.com/HankHuang0516/EClaw/issues/2714)) ([6fe164a](https://github.com/HankHuang0516/EClaw/commit/6fe164ad8b22fa576d2dd9ad37c0d9fc295b5a83))
* **dashboard:** add Claude and Codex channel guides ([#2640](https://github.com/HankHuang0516/EClaw/issues/2640)) ([c64e4c4](https://github.com/HankHuang0516/EClaw/commit/c64e4c4afc78db58c5cd578f00486dd7b2fd3311))
* **dashboard:** add Claude Code channel guide card ([#2667](https://github.com/HankHuang0516/EClaw/issues/2667)) ([d70d75c](https://github.com/HankHuang0516/EClaw/commit/d70d75c0c8caa8a540358a9aab4556b8c1927a5c))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* **kanban:** add device-scoped card tags ([#2773](https://github.com/HankHuang0516/EClaw/issues/2773)) ([53a387e](https://github.com/HankHuang0516/EClaw/commit/53a387e67ba7bb4f6bed1c427000c4ae8666577a))
* **portal:** add entity selector to petdx-browser ([#2602](https://github.com/HankHuang0516/EClaw/issues/2602)) ([3fa067e](https://github.com/HankHuang0516/EClaw/commit/3fa067e00b38829b48a37cecd33ee81a9a1122d9))
* **kanban:** add explicit card links ([#2721](https://github.com/HankHuang0516/EClaw/issues/2721)) ([ef9f812](https://github.com/HankHuang0516/EClaw/commit/ef9f812a3fcf39efd07fd158ce90951bdd045ac7))
* **kanban:** add explicit done-card reopen flow ([#2801](https://github.com/HankHuang0516/EClaw/issues/2801)) ([5080aac](https://github.com/HankHuang0516/EClaw/commit/5080aacb75047c0deaa379ee708ec85465afd57c))
* **mindmap:** add GET /api/mindmap/graph force-graph projection ([#2680](https://github.com/HankHuang0516/EClaw/issues/2680)) ([a00b2e7](https://github.com/HankHuang0516/EClaw/commit/a00b2e775af2c4c98cd157f760ad87aeeee469f0)), closes [#2679](https://github.com/HankHuang0516/EClaw/issues/2679) [#2679](https://github.com/HankHuang0516/EClaw/issues/2679)
* **dashboard:** add Hermes channel promo card ([#2708](https://github.com/HankHuang0516/EClaw/issues/2708)) ([337aca1](https://github.com/HankHuang0516/EClaw/commit/337aca153d5a1cd7e888c065f00ae54db7872d91))
* **rental:** add listing soft pause ([#2781](https://github.com/HankHuang0516/EClaw/issues/2781)) ([6586b72](https://github.com/HankHuang0516/EClaw/commit/6586b72717ddb1637d91cd3242c8d2ff554f62b4))
* **portal:** add Nagoya 5D4N trip static cross-ref page ([#2689](https://github.com/HankHuang0516/EClaw/issues/2689)) ([2e0efb6](https://github.com/HankHuang0516/EClaw/commit/2e0efb6dcdaff52226cc8854a96747000b12bdff))
* **portal:** add Nagoya trip map links and image lightbox ([#2821](https://github.com/HankHuang0516/EClaw/issues/2821)) ([3e40955](https://github.com/HankHuang0516/EClaw/commit/3e40955650a05f45a6b9f7e39e73847705424a03))
* **portal/nagoya:** add parking shortcut buttons next to itinerary places ([#2826](https://github.com/HankHuang0516/EClaw/issues/2826)) ([63968c5](https://github.com/HankHuang0516/EClaw/commit/63968c554d046afc8d978de74e3aacbf7700500d))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **settings:** add rental roster management preview ([#2758](https://github.com/HankHuang0516/EClaw/issues/2758)) ([9706e59](https://github.com/HankHuang0516/EClaw/commit/9706e59ded140a90a6e02348124282bc69d89001))
* **rental:** add renter health chat indicator ([#2690](https://github.com/HankHuang0516/EClaw/issues/2690)) ([36cd2e9](https://github.com/HankHuang0516/EClaw/commit/36cd2e9802be4c7ebb03d3024617fa74aca48ffd))
* **ios:** add Tutorial & Intro entry in Settings ([#2800](https://github.com/HankHuang0516/EClaw/issues/2800)) ([ed83e51](https://github.com/HankHuang0516/EClaw/commit/ed83e51d043bf4cd5865f38dc95a91ed54820d6c))
* **landing:** add Watch Full Demo CTA below hero video ([#2799](https://github.com/HankHuang0516/EClaw/issues/2799)) ([66107c9](https://github.com/HankHuang0516/EClaw/commit/66107c954727551fd34d989a4674daaad9b63968))
* **footer:** add Watch Intro Video link in Info column ([#2798](https://github.com/HankHuang0516/EClaw/issues/2798)) ([d7c6d59](https://github.com/HankHuang0516/EClaw/commit/d7c6d596b69c6a5b257bf1f7a792a407ef9712ad))
* **i18n:** ar iter-2 — fill 623 missing keys against en source ([#2847](https://github.com/HankHuang0516/EClaw/issues/2847)) ([ee94a7a](https://github.com/HankHuang0516/EClaw/commit/ee94a7ae6812b5163efe4284ee4907ca32302f5c))
* **kanban:** backlog launch-gate flag to suppress L1/L2/L3 escalation ([#2855](https://github.com/HankHuang0516/EClaw/issues/2855)) ([cb8bf1b](https://github.com/HankHuang0516/EClaw/commit/cb8bf1bb6421f25214f65e129a8cadccc49cc266)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#4](https://github.com/HankHuang0516/EClaw/issues/4) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **companion:** bridge crafter-station/petdex gallery (1784 pets) ([#2601](https://github.com/HankHuang0516/EClaw/issues/2601)) ([2e245be](https://github.com/HankHuang0516/EClaw/commit/2e245bea6dd47ea7361b927d389188a3c23b6bb3))
* **promo:** chat avatar size feature landing page (self-hosted MP4) ([#2722](https://github.com/HankHuang0516/EClaw/issues/2722)) ([3852210](https://github.com/HankHuang0516/EClaw/commit/3852210d355704d018e3daca6b5f9512a011b210)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **kanban:** cron-spawn jitter + lane backpressure to prevent same-tick wedge ([#2791](https://github.com/HankHuang0516/EClaw/issues/2791)) ([9f414a7](https://github.com/HankHuang0516/EClaw/commit/9f414a731d6393672a0a4189c7b408c529ae5e12)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **promo:** embed daily eclaw video 2026-05-14 ([#2786](https://github.com/HankHuang0516/EClaw/issues/2786)) ([718a814](https://github.com/HankHuang0516/EClaw/commit/718a814ab16850bc2b33a1b303841e2c4378ecfa)), closes [#2782](https://github.com/HankHuang0516/EClaw/issues/2782) [#2693](https://github.com/HankHuang0516/EClaw/issues/2693)
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **info:** embed promo video at top of Quick Start tab ([#2797](https://github.com/HankHuang0516/EClaw/issues/2797)) ([047679f](https://github.com/HankHuang0516/EClaw/commit/047679fd57ab9949eaeacea414d5611e71afe041))
* **rental:** enforce strict rebind refunds ([#2703](https://github.com/HankHuang0516/EClaw/issues/2703)) ([a1859c5](https://github.com/HankHuang0516/EClaw/commit/a1859c50e6fb3991d7a8051491502d824a14a116))
* **portal:** group task chip actions ([#2825](https://github.com/HankHuang0516/EClaw/issues/2825)) ([5db5c59](https://github.com/HankHuang0516/EClaw/commit/5db5c59b32b8635f1412205faf0c2f9164d3d5d4))
* **portal:** info-guide-rules + info-guide-soul slide pair ([#2793](https://github.com/HankHuang0516/EClaw/issues/2793)) ([1c8bddc](https://github.com/HankHuang0516/EClaw/commit/1c8bddc4c185054b2b60088498e3d45509117127)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **chat:** link card previews to kanban ([#2754](https://github.com/HankHuang0516/EClaw/issues/2754)) ([2261240](https://github.com/HankHuang0516/EClaw/commit/22612402c2e95efb07246629e81a849be41ee9c7))
* **mission:** link notes to kanban cards ([#2723](https://github.com/HankHuang0516/EClaw/issues/2723)) ([b36dc18](https://github.com/HankHuang0516/EClaw/commit/b36dc18f3a8facf12e0b6046351c222f1e99dc55))
* **mindmap:** mission.html link to /portal/mindmap.html + deprecate /api/mission/mindmap ([#2685](https://github.com/HankHuang0516/EClaw/issues/2685)) ([11e297b](https://github.com/HankHuang0516/EClaw/commit/11e297bab1c9b56fcde3027d6500b7c58891bf18)), closes [#2680](https://github.com/HankHuang0516/EClaw/issues/2680) [#2684](https://github.com/HankHuang0516/EClaw/issues/2684)
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **settings:** per-entity nudge override UI (Phase 2) ([#2837](https://github.com/HankHuang0516/EClaw/issues/2837)) ([ea7662b](https://github.com/HankHuang0516/EClaw/commit/ea7662b0858882dae461e1387f711895924f9ab8)), closes [3/#4](https://github.com/HankHuang0516/EClaw/issues/4)
* **kanban:** per-entity nudge overrides (Phase 2 of card_e066cb6b) ([#2836](https://github.com/HankHuang0516/EClaw/issues/2836)) ([0425f80](https://github.com/HankHuang0516/EClaw/commit/0425f80bc1169c0d506b665659c8676695c45553))
* **avatar:** petdx render on card-holder my-cards (Phase 1b) ([#2621](https://github.com/HankHuang0516/EClaw/issues/2621)) ([f78ba8b](https://github.com/HankHuang0516/EClaw/commit/f78ba8b18acc426936ab6d8a82ca7541effea00d))
* **avatar:** petdx render on dashboard entity grid / org chart / bindings (Phase 1b) ([#2622](https://github.com/HankHuang0516/EClaw/issues/2622)) ([f417749](https://github.com/HankHuang0516/EClaw/commit/f41774914451048e8cd76e9ae30416a0642e173b)), closes [#2620](https://github.com/HankHuang0516/EClaw/issues/2620) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621)
* **avatar:** petdx render on kanban auto-assign / pulse / comment avatars (Phase 1b) ([#2624](https://github.com/HankHuang0516/EClaw/issues/2624)) ([6bff5f8](https://github.com/HankHuang0516/EClaw/commit/6bff5f80440d0bd91a6b1721cde9478d685c4d46))
* **avatar:** petdx render on mission skill/rule/soul entity dialogs (Phase 1b) ([#2623](https://github.com/HankHuang0516/EClaw/issues/2623)) ([129327b](https://github.com/HankHuang0516/EClaw/commit/129327bc7b91056659f1ab7e8d5e3f5260d951fb))
* **mindmap:** portal/mindmap.html force-graph prototype ([#129](https://github.com/HankHuang0516/EClaw/issues/129)) ([#2681](https://github.com/HankHuang0516/EClaw/issues/2681)) ([0f15e69](https://github.com/HankHuang0516/EClaw/commit/0f15e6930f0697c37fa08f3219edb8f9e499837f)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **portal:** redo nagoya trip page in professional tour-guide style ([#2691](https://github.com/HankHuang0516/EClaw/issues/2691)) ([b2378c0](https://github.com/HankHuang0516/EClaw/commit/b2378c06ee20fa9cccfdceceb1a4c9e0b3072f59))
* **i18n:** remove ms+hi orphan keys from i18n.js ([#2849](https://github.com/HankHuang0516/EClaw/issues/2849)) ([320176c](https://github.com/HankHuang0516/EClaw/commit/320176c06a3cfd8631e2a82ad02a6bd6a9af0389))
* **avatar:** render selected petdx companion in chat avatars ([#2620](https://github.com/HankHuang0516/EClaw/issues/2620)) ([0bdd046](https://github.com/HankHuang0516/EClaw/commit/0bdd046fe1b1c428e32edda366ff112c08927f4c))
* **home:** replace native home with WebView hosting dashboard.html ([#2634](https://github.com/HankHuang0516/EClaw/issues/2634)) ([e69ea81](https://github.com/HankHuang0516/EClaw/commit/e69ea8160c239b083a83d6dc83a4f1c3f901c863))
* **app:** route chat mission jumps through native tabs ([#2824](https://github.com/HankHuang0516/EClaw/issues/2824)) ([deb07b6](https://github.com/HankHuang0516/EClaw/commit/deb07b69a9ecca632fe27278de537f1d85234e94))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **chat:** support message deep links ([#2719](https://github.com/HankHuang0516/EClaw/issues/2719)) ([2dc0f1e](https://github.com/HankHuang0516/EClaw/commit/2dc0f1eeb259e1a0848db4a03186b989372cd91c))
* **mission:** support note deep links ([#2717](https://github.com/HankHuang0516/EClaw/issues/2717)) ([2efd3a5](https://github.com/HankHuang0516/EClaw/commit/2efd3a5e741217a07c0b0ac54a0ddd010e0ebe23))
* **share-chat:** twitter card + per-bot og:image/twitter:* in SSR ([#2609](https://github.com/HankHuang0516/EClaw/issues/2609)) ([6cdc853](https://github.com/HankHuang0516/EClaw/commit/6cdc853dc884cdb95bd47214942768981f218ae0))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))
* **settings:** wire petdx avatar into channel-account chips ([#2626](https://github.com/HankHuang0516/EClaw/issues/2626)) ([88aec77](https://github.com/HankHuang0516/EClaw/commit/88aec772628c240e97b336bb5820892ad632d1ae))
* **files:** wire petdx avatar into entity filter & per-file badges ([#2627](https://github.com/HankHuang0516/EClaw/issues/2627)) ([5b3e5cc](https://github.com/HankHuang0516/EClaw/commit/5b3e5cc542d9da69bb4e92500fd03a542ea33f00))
* **mindmap:** wrap hardcoded zh-TW UI strings with i18n t() ([#2607](https://github.com/HankHuang0516/EClaw/issues/2607)) ([166af87](https://github.com/HankHuang0516/EClaw/commit/166af8772b2121a24aaf34a83b3de970e9b3b571)), closes [#2606](https://github.com/HankHuang0516/EClaw/issues/2606)
* **i18n:** zh-TW backfill 8 keys (soft-pause + chat + invite + wallet) ([#2815](https://github.com/HankHuang0516/EClaw/issues/2815)) ([a2dd574](https://github.com/HankHuang0516/EClaw/commit/a2dd5743ce8d43a4b6ace9a2fd4b52568180d6c5))


### Performance Improvements

* **mindmap:** force-graph hardening for 1000/2000-node graphs ([#2684](https://github.com/HankHuang0516/EClaw/issues/2684)) ([da8b1c8](https://github.com/HankHuang0516/EClaw/commit/da8b1c8f947ab8bc8fa455c1962a91146623a1fc))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-20)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **notifications:** add kanban_done + kanban_done_auto toggles to Android Settings ([#2636](https://github.com/HankHuang0516/EClaw/issues/2636)) ([a710909](https://github.com/HankHuang0516/EClaw/commit/a7109095e3393b8564e7ef1b23d382a4fbb944b8))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **i18n:** ar block — fix 27 broken entries (CJK leaks + truncated HTML) ([#2851](https://github.com/HankHuang0516/EClaw/issues/2851)) ([5b19175](https://github.com/HankHuang0516/EClaw/commit/5b19175d712d00d16fcec00b749035c4beae7a5c))
* **chat:** atomic-load target bar (await contacts before first render) ([#2831](https://github.com/HankHuang0516/EClaw/issues/2831)) ([5f529e6](https://github.com/HankHuang0516/EClaw/commit/5f529e6b772eacc38ba1de69b44258a05f0d816a)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2](https://github.com/HankHuang0516/EClaw/issues/2)
* **rental:** bump handshake timeout to 60s + timeout-aware discovery fallback ([#2863](https://github.com/HankHuang0516/EClaw/issues/2863)) ([fd4322f](https://github.com/HankHuang0516/EClaw/commit/fd4322f8890f3c2dfca3acdae6a4b95f19c381f9)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **i18n:** clear batch 1 residual missing keys ([#2790](https://github.com/HankHuang0516/EClaw/issues/2790)) ([211030e](https://github.com/HankHuang0516/EClaw/commit/211030e0b0b6a865c11f0c4ed60dc4e356d43b7a))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **kanban:** comment input no longer overlaps last comment in card detail (PR [#2678](https://github.com/HankHuang0516/EClaw/issues/2678)) ([fba91fc](https://github.com/HankHuang0516/EClaw/commit/fba91fca15402b453a0db5ee857c0b16e6087055))
* **chat:** compact 20px avatar in target bar (App WebView only shows [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2](https://github.com/HankHuang0516/EClaw/issues/2)) ([#2830](https://github.com/HankHuang0516/EClaw/issues/2830)) ([42c7543](https://github.com/HankHuang0516/EClaw/commit/42c7543b4a78a7abf3f5f7535eb9bc6142cd0fe2)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **portal:** complete 401 redirect sweep + mobile UIUX truncation ([#2842](https://github.com/HankHuang0516/EClaw/issues/2842)) ([f9799ba](https://github.com/HankHuang0516/EClaw/commit/f9799ba42498b109f0a8a70e80836aa6da51e216)), closes [#2833](https://github.com/HankHuang0516/EClaw/issues/2833) [#2845](https://github.com/HankHuang0516/EClaw/issues/2845) [#2844](https://github.com/HankHuang0516/EClaw/issues/2844) [#2843](https://github.com/HankHuang0516/EClaw/issues/2843)
* **uiux:** continue qa mobile readability sweep ([#2854](https://github.com/HankHuang0516/EClaw/issues/2854)) ([57606ff](https://github.com/HankHuang0516/EClaw/commit/57606ffe3e543b07a026aacc53c4b470c9a7825b))
* **i18n:** cover dynamic portal wrapper keys ([#2807](https://github.com/HankHuang0516/EClaw/issues/2807)) ([4c711cc](https://github.com/HankHuang0516/EClaw/commit/4c711cc4009300ffe4e8933a98ee01cd0fdd6aeb))
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **rental:** don't pollute entity.message on push gateway timeout ([#2860](https://github.com/HankHuang0516/EClaw/issues/2860)) ([592ba44](https://github.com/HankHuang0516/EClaw/commit/592ba44f57536ee00011b6cbddaa6b129a7cbae9))
* **petdx:** drop dark-grey loading placeholder + preload sprite WEBP ([#2628](https://github.com/HankHuang0516/EClaw/issues/2628)) ([59cef38](https://github.com/HankHuang0516/EClaw/commit/59cef387bd69ca99d7d15c86a1364856d3849ad8)), closes [#1a1a1a](https://github.com/HankHuang0516/EClaw/issues/1a1a1a)
* **security:** escape innerHTML in chat modal error messages ([#2819](https://github.com/HankHuang0516/EClaw/issues/2819)) ([dce07ad](https://github.com/HankHuang0516/EClaw/commit/dce07adde64795916dba977ae23e46f3371ce7ed)), closes [#2809](https://github.com/HankHuang0516/EClaw/issues/2809) [#2810](https://github.com/HankHuang0516/EClaw/issues/2810) [#2809](https://github.com/HankHuang0516/EClaw/issues/2809) [#2810](https://github.com/HankHuang0516/EClaw/issues/2810)
* **entities:** expose botSecret to owner so wallpaper service can poll companions ([#2615](https://github.com/HankHuang0516/EClaw/issues/2615)) ([04470fc](https://github.com/HankHuang0516/EClaw/commit/04470fce8f8c3fce2b1ba8b243e776606f107502))
* **rental:** expose owner_public_code in marketplace so plaza CTA can route ([#2616](https://github.com/HankHuang0516/EClaw/issues/2616)) ([4d1372f](https://github.com/HankHuang0516/EClaw/commit/4d1372f717d93cab65543e87c852e74e9fb67071)), closes [#2610](https://github.com/HankHuang0516/EClaw/issues/2610)
* **mindmap:** fallback to device scope when entityId is null ([#2728](https://github.com/HankHuang0516/EClaw/issues/2728)) ([7572312](https://github.com/HankHuang0516/EClaw/commit/7572312433d3d75fc245eda48a28919ce14bd927))
* **i18n:** fill Spanish drift keys ([#2751](https://github.com/HankHuang0516/EClaw/issues/2751)) ([0ad0ee5](https://github.com/HankHuang0516/EClaw/commit/0ad0ee55f7fac3e6ac46d891539950dab4d553cc))
* **portal:** fit embedded org chart to mobile viewport ([#2674](https://github.com/HankHuang0516/EClaw/issues/2674)) ([1c4e1b4](https://github.com/HankHuang0516/EClaw/commit/1c4e1b413ea7027b4cd4b8ecda981b0d0e12e66b))
* **i18n:** fix 6 trailing-comma syntax errors in 10-locale batch ([#2771](https://github.com/HankHuang0516/EClaw/issues/2771)) ([b27c6ca](https://github.com/HankHuang0516/EClaw/commit/b27c6ca204bf813e406c54ce3a2532a5f1f031b3))
* **kanban:** GET card returns latest 50 comments + comments endpoint exposes total ([#2816](https://github.com/HankHuang0516/EClaw/issues/2816)) ([c4d83f7](https://github.com/HankHuang0516/EClaw/commit/c4d83f777a1cd26aea0936e4316aa35c52822eef))
* **uiux:** harden chat previews and roster preview ([#2769](https://github.com/HankHuang0516/EClaw/issues/2769)) ([466d4d3](https://github.com/HankHuang0516/EClaw/commit/466d4d3ef81c628d3f58db64323946053d7bf61c))
* **mention-parser:** ignore @-mentions inside markdown code spans ([#2645](https://github.com/HankHuang0516/EClaw/issues/2645)) ([8da19d4](https://github.com/HankHuang0516/EClaw/commit/8da19d4a79ceb4152bf2144ee0847c61ce3e1def)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **kanban:** lazy-load dependency chips via IntersectionObserver ([#2632](https://github.com/HankHuang0516/EClaw/issues/2632)) ([20586b4](https://github.com/HankHuang0516/EClaw/commit/20586b43357335f9eb6a190c02d58c8e36b58aba)), closes [#2631](https://github.com/HankHuang0516/EClaw/issues/2631)
* **kanban:** make card sorting deterministic ([#2756](https://github.com/HankHuang0516/EClaw/issues/2756)) ([48e2117](https://github.com/HankHuang0516/EClaw/commit/48e2117b64e37f05dc635e0a3b67bfd43cbe48f5))
* **org-chart:** notify affected bots on hierarchy change ([#2812](https://github.com/HankHuang0516/EClaw/issues/2812)) ([55675fd](https://github.com/HankHuang0516/EClaw/commit/55675fdf4487494d729a29524b32bd81b756a00c)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** notify reviewer on manual /move → review ([#2753](https://github.com/HankHuang0516/EClaw/issues/2753)) ([6cbbb4e](https://github.com/HankHuang0516/EClaw/commit/6cbbb4ee8c0d4d8ad54df2e9b5faaa3699bd530f))
* **wallpaper:** off-load spritesheet fetch to IO so per-petdx sprites actually render ([#2618](https://github.com/HankHuang0516/EClaw/issues/2618)) ([61b832c](https://github.com/HankHuang0516/EClaw/commit/61b832c9fa8a1d0caab810ccc942d85c63349267)), closes [#2615](https://github.com/HankHuang0516/EClaw/issues/2615) [#2577](https://github.com/HankHuang0516/EClaw/issues/2577)
* **security:** patch P0 sanitize-html XSS + P1 protobufjs + exam.html XSS ([#2829](https://github.com/HankHuang0516/EClaw/issues/2829)) ([c71b871](https://github.com/HankHuang0516/EClaw/commit/c71b871a045887375dd0d26d1a3280a0891a89ad))
* **portal:** petdx-browser cookie-session fallback for device-login ([#2757](https://github.com/HankHuang0516/EClaw/issues/2757)) ([ca275f4](https://github.com/HankHuang0516/EClaw/commit/ca275f4519835da0c7ad71c588908a18f6f138d8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **api:** platform-stats 500 + entity/lookup publicCode alias ([#2809](https://github.com/HankHuang0516/EClaw/issues/2809), [#2810](https://github.com/HankHuang0516/EClaw/issues/2810)) ([#2818](https://github.com/HankHuang0516/EClaw/issues/2818)) ([f99fd17](https://github.com/HankHuang0516/EClaw/commit/f99fd17b2b1c32d88daa2510ff66d714c1a53edc))
* **i18n:** positional format specifiers for feedback_result_logs (7 locales) ([#2597](https://github.com/HankHuang0516/EClaw/issues/2597)) ([21aedc7](https://github.com/HankHuang0516/EClaw/commit/21aedc7eebc7a2839e340136f38dfdfd4dabb9dc))
* **avatar-petdx:** preserve descriptor across transient API failures (flicker) ([#2625](https://github.com/HankHuang0516/EClaw/issues/2625)) ([7b1c606](https://github.com/HankHuang0516/EClaw/commit/7b1c606514f7698d72ec95cf6c556e4043966186))
* **chat:** preserve scroll anchor while reading history ([#2693](https://github.com/HankHuang0516/EClaw/issues/2693)) ([945fdb7](https://github.com/HankHuang0516/EClaw/commit/945fdb7192b791b31882e1e75568dd8b11e4686f))
* **promo:** pull video embed from /promo-chat-avatar.html ([#2724](https://github.com/HankHuang0516/EClaw/issues/2724)) ([2afabc8](https://github.com/HankHuang0516/EClaw/commit/2afabc8c5ff8b25218a7cb857e8adfa572c8e9d5))
* **kanban:** realign stale recurring schedules ([#2785](https://github.com/HankHuang0516/EClaw/issues/2785)) ([ab8ee25](https://github.com/HankHuang0516/EClaw/commit/ab8ee250a9b37f3d3e838bb01d8866c8d2b78231))
* **portal:** reduce QA-discovered request fanout ([#2656](https://github.com/HankHuang0516/EClaw/issues/2656)) ([1e46d6b](https://github.com/HankHuang0516/EClaw/commit/1e46d6bab61e58c65b452b6503d953f8dddeee75))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **portal:** remove org chart fit scale floor ([#2676](https://github.com/HankHuang0516/EClaw/issues/2676)) ([0f01606](https://github.com/HankHuang0516/EClaw/commit/0f016068b963bb5f800a02f28817c7174979d913))
* **i18n:** rename mm_empty_title → mm_state_empty_title in mindmap.html ([#2683](https://github.com/HankHuang0516/EClaw/issues/2683)) ([c79c109](https://github.com/HankHuang0516/EClaw/commit/c79c109bea23142e8a6d9ace976d105af1280ec9))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **chat:** render mention avatars with companion renderer ([#2633](https://github.com/HankHuang0516/EClaw/issues/2633)) ([03e205f](https://github.com/HankHuang0516/EClaw/commit/03e205f663ecd2c2f443d4009dd5af0093f0bbbb))
* **kanban:** reserve mobile comments panel height ([#2782](https://github.com/HankHuang0516/EClaw/issues/2782)) ([ce8662d](https://github.com/HankHuang0516/EClaw/commit/ce8662d362422fdd25037f1deb61dbed9425e2f9))
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* scheduled audit 2026-05-13 — 6 bugs, XSS, i18n ([#2668](https://github.com/HankHuang0516/EClaw/issues/2668)) ([21dd513](https://github.com/HankHuang0516/EClaw/commit/21dd513b4464738de29164265437435ba6cc4817)), closes [#2605](https://github.com/HankHuang0516/EClaw/issues/2605) [#2608](https://github.com/HankHuang0516/EClaw/issues/2608) [#2600](https://github.com/HankHuang0516/EClaw/issues/2600) [#2599](https://github.com/HankHuang0516/EClaw/issues/2599) [#2598](https://github.com/HankHuang0516/EClaw/issues/2598)
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **chat:** smart-chip preview falls back to inline c.comments when /comments fails (PR [#2677](https://github.com/HankHuang0516/EClaw/issues/2677)) ([7f4dffd](https://github.com/HankHuang0516/EClaw/commit/7f4dffd2c83ea86f296b8fa0610f0e67c9f1af11))
* **kanban:** stabilize comment detail viewport ([#2796](https://github.com/HankHuang0516/EClaw/issues/2796)) ([0a10aad](https://github.com/HankHuang0516/EClaw/commit/0a10aadb5a5b12ff23454c16d5c88183b94ad7d7))
* **wallpaper:** stop Android live wallpaper flashing default lobster on companion change ([#2629](https://github.com/HankHuang0516/EClaw/issues/2629)) ([8b4f66f](https://github.com/HankHuang0516/EClaw/commit/8b4f66fcb335bf43128f924b761b6337c817095b)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **chat:** stop chat.html bouncing to dashboard via /api/rental/health-status 401 race ([#2833](https://github.com/HankHuang0516/EClaw/issues/2833)) ([c422406](https://github.com/HankHuang0516/EClaw/commit/c4224067cdcfe7f3e22ab95007c7563dac4196ac))
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **app:** WebView pages honor app-selected locale via ?lang= URL param ([#2672](https://github.com/HankHuang0516/EClaw/issues/2672)) ([8ed8757](https://github.com/HankHuang0516/EClaw/commit/8ed8757aec5bf214e837cc0d81bf2b23f1993a91)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* **community:** 1-click chat button on bot cards + utm tagging ([#2610](https://github.com/HankHuang0516/EClaw/issues/2610)) ([eee97b0](https://github.com/HankHuang0516/EClaw/commit/eee97b0e2e4e74945ec24f218a69a52800b97a66))
* **chat:** accept ?messageId= as deep-link alias ([#2838](https://github.com/HankHuang0516/EClaw/issues/2838)) ([1785a87](https://github.com/HankHuang0516/EClaw/commit/1785a87310426637fd10df83754fb9924c45207f))
* **chat:** add avatar size preference ([#2714](https://github.com/HankHuang0516/EClaw/issues/2714)) ([6fe164a](https://github.com/HankHuang0516/EClaw/commit/6fe164ad8b22fa576d2dd9ad37c0d9fc295b5a83))
* **dashboard:** add Claude and Codex channel guides ([#2640](https://github.com/HankHuang0516/EClaw/issues/2640)) ([c64e4c4](https://github.com/HankHuang0516/EClaw/commit/c64e4c4afc78db58c5cd578f00486dd7b2fd3311))
* **dashboard:** add Claude Code channel guide card ([#2667](https://github.com/HankHuang0516/EClaw/issues/2667)) ([d70d75c](https://github.com/HankHuang0516/EClaw/commit/d70d75c0c8caa8a540358a9aab4556b8c1927a5c))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* **kanban:** add device-scoped card tags ([#2773](https://github.com/HankHuang0516/EClaw/issues/2773)) ([53a387e](https://github.com/HankHuang0516/EClaw/commit/53a387e67ba7bb4f6bed1c427000c4ae8666577a))
* **portal:** add entity selector to petdx-browser ([#2602](https://github.com/HankHuang0516/EClaw/issues/2602)) ([3fa067e](https://github.com/HankHuang0516/EClaw/commit/3fa067e00b38829b48a37cecd33ee81a9a1122d9))
* **kanban:** add explicit card links ([#2721](https://github.com/HankHuang0516/EClaw/issues/2721)) ([ef9f812](https://github.com/HankHuang0516/EClaw/commit/ef9f812a3fcf39efd07fd158ce90951bdd045ac7))
* **kanban:** add explicit done-card reopen flow ([#2801](https://github.com/HankHuang0516/EClaw/issues/2801)) ([5080aac](https://github.com/HankHuang0516/EClaw/commit/5080aacb75047c0deaa379ee708ec85465afd57c))
* **mindmap:** add GET /api/mindmap/graph force-graph projection ([#2680](https://github.com/HankHuang0516/EClaw/issues/2680)) ([a00b2e7](https://github.com/HankHuang0516/EClaw/commit/a00b2e775af2c4c98cd157f760ad87aeeee469f0)), closes [#2679](https://github.com/HankHuang0516/EClaw/issues/2679) [#2679](https://github.com/HankHuang0516/EClaw/issues/2679)
* **dashboard:** add Hermes channel promo card ([#2708](https://github.com/HankHuang0516/EClaw/issues/2708)) ([337aca1](https://github.com/HankHuang0516/EClaw/commit/337aca153d5a1cd7e888c065f00ae54db7872d91))
* **rental:** add listing soft pause ([#2781](https://github.com/HankHuang0516/EClaw/issues/2781)) ([6586b72](https://github.com/HankHuang0516/EClaw/commit/6586b72717ddb1637d91cd3242c8d2ff554f62b4))
* **portal:** add Nagoya 5D4N trip static cross-ref page ([#2689](https://github.com/HankHuang0516/EClaw/issues/2689)) ([2e0efb6](https://github.com/HankHuang0516/EClaw/commit/2e0efb6dcdaff52226cc8854a96747000b12bdff))
* **portal:** add Nagoya trip map links and image lightbox ([#2821](https://github.com/HankHuang0516/EClaw/issues/2821)) ([3e40955](https://github.com/HankHuang0516/EClaw/commit/3e40955650a05f45a6b9f7e39e73847705424a03))
* **portal/nagoya:** add parking shortcut buttons next to itinerary places ([#2826](https://github.com/HankHuang0516/EClaw/issues/2826)) ([63968c5](https://github.com/HankHuang0516/EClaw/commit/63968c554d046afc8d978de74e3aacbf7700500d))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **settings:** add rental roster management preview ([#2758](https://github.com/HankHuang0516/EClaw/issues/2758)) ([9706e59](https://github.com/HankHuang0516/EClaw/commit/9706e59ded140a90a6e02348124282bc69d89001))
* **rental:** add renter health chat indicator ([#2690](https://github.com/HankHuang0516/EClaw/issues/2690)) ([36cd2e9](https://github.com/HankHuang0516/EClaw/commit/36cd2e9802be4c7ebb03d3024617fa74aca48ffd))
* **ios:** add Tutorial & Intro entry in Settings ([#2800](https://github.com/HankHuang0516/EClaw/issues/2800)) ([ed83e51](https://github.com/HankHuang0516/EClaw/commit/ed83e51d043bf4cd5865f38dc95a91ed54820d6c))
* **landing:** add Watch Full Demo CTA below hero video ([#2799](https://github.com/HankHuang0516/EClaw/issues/2799)) ([66107c9](https://github.com/HankHuang0516/EClaw/commit/66107c954727551fd34d989a4674daaad9b63968))
* **footer:** add Watch Intro Video link in Info column ([#2798](https://github.com/HankHuang0516/EClaw/issues/2798)) ([d7c6d59](https://github.com/HankHuang0516/EClaw/commit/d7c6d596b69c6a5b257bf1f7a792a407ef9712ad))
* **i18n:** ar iter-2 — fill 623 missing keys against en source ([#2847](https://github.com/HankHuang0516/EClaw/issues/2847)) ([ee94a7a](https://github.com/HankHuang0516/EClaw/commit/ee94a7ae6812b5163efe4284ee4907ca32302f5c))
* **kanban:** backlog launch-gate flag to suppress L1/L2/L3 escalation ([#2855](https://github.com/HankHuang0516/EClaw/issues/2855)) ([cb8bf1b](https://github.com/HankHuang0516/EClaw/commit/cb8bf1bb6421f25214f65e129a8cadccc49cc266)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#4](https://github.com/HankHuang0516/EClaw/issues/4) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **companion:** bridge crafter-station/petdex gallery (1784 pets) ([#2601](https://github.com/HankHuang0516/EClaw/issues/2601)) ([2e245be](https://github.com/HankHuang0516/EClaw/commit/2e245bea6dd47ea7361b927d389188a3c23b6bb3))
* **promo:** chat avatar size feature landing page (self-hosted MP4) ([#2722](https://github.com/HankHuang0516/EClaw/issues/2722)) ([3852210](https://github.com/HankHuang0516/EClaw/commit/3852210d355704d018e3daca6b5f9512a011b210)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **kanban:** cron-spawn jitter + lane backpressure to prevent same-tick wedge ([#2791](https://github.com/HankHuang0516/EClaw/issues/2791)) ([9f414a7](https://github.com/HankHuang0516/EClaw/commit/9f414a731d6393672a0a4189c7b408c529ae5e12)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **promo:** embed daily eclaw video 2026-05-14 ([#2786](https://github.com/HankHuang0516/EClaw/issues/2786)) ([718a814](https://github.com/HankHuang0516/EClaw/commit/718a814ab16850bc2b33a1b303841e2c4378ecfa)), closes [#2782](https://github.com/HankHuang0516/EClaw/issues/2782) [#2693](https://github.com/HankHuang0516/EClaw/issues/2693)
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **info:** embed promo video at top of Quick Start tab ([#2797](https://github.com/HankHuang0516/EClaw/issues/2797)) ([047679f](https://github.com/HankHuang0516/EClaw/commit/047679fd57ab9949eaeacea414d5611e71afe041))
* **rental:** enforce strict rebind refunds ([#2703](https://github.com/HankHuang0516/EClaw/issues/2703)) ([a1859c5](https://github.com/HankHuang0516/EClaw/commit/a1859c50e6fb3991d7a8051491502d824a14a116))
* **portal:** group task chip actions ([#2825](https://github.com/HankHuang0516/EClaw/issues/2825)) ([5db5c59](https://github.com/HankHuang0516/EClaw/commit/5db5c59b32b8635f1412205faf0c2f9164d3d5d4))
* **portal:** info-guide-rules + info-guide-soul slide pair ([#2793](https://github.com/HankHuang0516/EClaw/issues/2793)) ([1c8bddc](https://github.com/HankHuang0516/EClaw/commit/1c8bddc4c185054b2b60088498e3d45509117127)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **chat:** link card previews to kanban ([#2754](https://github.com/HankHuang0516/EClaw/issues/2754)) ([2261240](https://github.com/HankHuang0516/EClaw/commit/22612402c2e95efb07246629e81a849be41ee9c7))
* **mission:** link notes to kanban cards ([#2723](https://github.com/HankHuang0516/EClaw/issues/2723)) ([b36dc18](https://github.com/HankHuang0516/EClaw/commit/b36dc18f3a8facf12e0b6046351c222f1e99dc55))
* **mindmap:** mission.html link to /portal/mindmap.html + deprecate /api/mission/mindmap ([#2685](https://github.com/HankHuang0516/EClaw/issues/2685)) ([11e297b](https://github.com/HankHuang0516/EClaw/commit/11e297bab1c9b56fcde3027d6500b7c58891bf18)), closes [#2680](https://github.com/HankHuang0516/EClaw/issues/2680) [#2684](https://github.com/HankHuang0516/EClaw/issues/2684)
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **settings:** per-entity nudge override UI (Phase 2) ([#2837](https://github.com/HankHuang0516/EClaw/issues/2837)) ([ea7662b](https://github.com/HankHuang0516/EClaw/commit/ea7662b0858882dae461e1387f711895924f9ab8)), closes [3/#4](https://github.com/HankHuang0516/EClaw/issues/4)
* **kanban:** per-entity nudge overrides (Phase 2 of card_e066cb6b) ([#2836](https://github.com/HankHuang0516/EClaw/issues/2836)) ([0425f80](https://github.com/HankHuang0516/EClaw/commit/0425f80bc1169c0d506b665659c8676695c45553))
* **avatar:** petdx render on card-holder my-cards (Phase 1b) ([#2621](https://github.com/HankHuang0516/EClaw/issues/2621)) ([f78ba8b](https://github.com/HankHuang0516/EClaw/commit/f78ba8b18acc426936ab6d8a82ca7541effea00d))
* **avatar:** petdx render on dashboard entity grid / org chart / bindings (Phase 1b) ([#2622](https://github.com/HankHuang0516/EClaw/issues/2622)) ([f417749](https://github.com/HankHuang0516/EClaw/commit/f41774914451048e8cd76e9ae30416a0642e173b)), closes [#2620](https://github.com/HankHuang0516/EClaw/issues/2620) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621)
* **avatar:** petdx render on kanban auto-assign / pulse / comment avatars (Phase 1b) ([#2624](https://github.com/HankHuang0516/EClaw/issues/2624)) ([6bff5f8](https://github.com/HankHuang0516/EClaw/commit/6bff5f80440d0bd91a6b1721cde9478d685c4d46))
* **avatar:** petdx render on mission skill/rule/soul entity dialogs (Phase 1b) ([#2623](https://github.com/HankHuang0516/EClaw/issues/2623)) ([129327b](https://github.com/HankHuang0516/EClaw/commit/129327bc7b91056659f1ab7e8d5e3f5260d951fb))
* **mindmap:** portal/mindmap.html force-graph prototype ([#129](https://github.com/HankHuang0516/EClaw/issues/129)) ([#2681](https://github.com/HankHuang0516/EClaw/issues/2681)) ([0f15e69](https://github.com/HankHuang0516/EClaw/commit/0f15e6930f0697c37fa08f3219edb8f9e499837f)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **portal:** redo nagoya trip page in professional tour-guide style ([#2691](https://github.com/HankHuang0516/EClaw/issues/2691)) ([b2378c0](https://github.com/HankHuang0516/EClaw/commit/b2378c06ee20fa9cccfdceceb1a4c9e0b3072f59))
* **i18n:** remove ms+hi orphan keys from i18n.js ([#2849](https://github.com/HankHuang0516/EClaw/issues/2849)) ([320176c](https://github.com/HankHuang0516/EClaw/commit/320176c06a3cfd8631e2a82ad02a6bd6a9af0389))
* **avatar:** render selected petdx companion in chat avatars ([#2620](https://github.com/HankHuang0516/EClaw/issues/2620)) ([0bdd046](https://github.com/HankHuang0516/EClaw/commit/0bdd046fe1b1c428e32edda366ff112c08927f4c))
* **home:** replace native home with WebView hosting dashboard.html ([#2634](https://github.com/HankHuang0516/EClaw/issues/2634)) ([e69ea81](https://github.com/HankHuang0516/EClaw/commit/e69ea8160c239b083a83d6dc83a4f1c3f901c863))
* **app:** route chat mission jumps through native tabs ([#2824](https://github.com/HankHuang0516/EClaw/issues/2824)) ([deb07b6](https://github.com/HankHuang0516/EClaw/commit/deb07b69a9ecca632fe27278de537f1d85234e94))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **chat:** support message deep links ([#2719](https://github.com/HankHuang0516/EClaw/issues/2719)) ([2dc0f1e](https://github.com/HankHuang0516/EClaw/commit/2dc0f1eeb259e1a0848db4a03186b989372cd91c))
* **mission:** support note deep links ([#2717](https://github.com/HankHuang0516/EClaw/issues/2717)) ([2efd3a5](https://github.com/HankHuang0516/EClaw/commit/2efd3a5e741217a07c0b0ac54a0ddd010e0ebe23))
* **share-chat:** twitter card + per-bot og:image/twitter:* in SSR ([#2609](https://github.com/HankHuang0516/EClaw/issues/2609)) ([6cdc853](https://github.com/HankHuang0516/EClaw/commit/6cdc853dc884cdb95bd47214942768981f218ae0))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))
* **settings:** wire petdx avatar into channel-account chips ([#2626](https://github.com/HankHuang0516/EClaw/issues/2626)) ([88aec77](https://github.com/HankHuang0516/EClaw/commit/88aec772628c240e97b336bb5820892ad632d1ae))
* **files:** wire petdx avatar into entity filter & per-file badges ([#2627](https://github.com/HankHuang0516/EClaw/issues/2627)) ([5b3e5cc](https://github.com/HankHuang0516/EClaw/commit/5b3e5cc542d9da69bb4e92500fd03a542ea33f00))
* **mindmap:** wrap hardcoded zh-TW UI strings with i18n t() ([#2607](https://github.com/HankHuang0516/EClaw/issues/2607)) ([166af87](https://github.com/HankHuang0516/EClaw/commit/166af8772b2121a24aaf34a83b3de970e9b3b571)), closes [#2606](https://github.com/HankHuang0516/EClaw/issues/2606)
* **i18n:** zh-TW backfill 8 keys (soft-pause + chat + invite + wallet) ([#2815](https://github.com/HankHuang0516/EClaw/issues/2815)) ([a2dd574](https://github.com/HankHuang0516/EClaw/commit/a2dd5743ce8d43a4b6ace9a2fd4b52568180d6c5))


### Performance Improvements

* **mindmap:** force-graph hardening for 1000/2000-node graphs ([#2684](https://github.com/HankHuang0516/EClaw/issues/2684)) ([da8b1c8](https://github.com/HankHuang0516/EClaw/commit/da8b1c8f947ab8bc8fa455c1962a91146623a1fc))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-20)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **notifications:** add kanban_done + kanban_done_auto toggles to Android Settings ([#2636](https://github.com/HankHuang0516/EClaw/issues/2636)) ([a710909](https://github.com/HankHuang0516/EClaw/commit/a7109095e3393b8564e7ef1b23d382a4fbb944b8))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **i18n:** ar block — fix 27 broken entries (CJK leaks + truncated HTML) ([#2851](https://github.com/HankHuang0516/EClaw/issues/2851)) ([5b19175](https://github.com/HankHuang0516/EClaw/commit/5b19175d712d00d16fcec00b749035c4beae7a5c))
* **chat:** atomic-load target bar (await contacts before first render) ([#2831](https://github.com/HankHuang0516/EClaw/issues/2831)) ([5f529e6](https://github.com/HankHuang0516/EClaw/commit/5f529e6b772eacc38ba1de69b44258a05f0d816a)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2](https://github.com/HankHuang0516/EClaw/issues/2)
* **i18n:** clear batch 1 residual missing keys ([#2790](https://github.com/HankHuang0516/EClaw/issues/2790)) ([211030e](https://github.com/HankHuang0516/EClaw/commit/211030e0b0b6a865c11f0c4ed60dc4e356d43b7a))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **kanban:** comment input no longer overlaps last comment in card detail (PR [#2678](https://github.com/HankHuang0516/EClaw/issues/2678)) ([fba91fc](https://github.com/HankHuang0516/EClaw/commit/fba91fca15402b453a0db5ee857c0b16e6087055))
* **chat:** compact 20px avatar in target bar (App WebView only shows [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2](https://github.com/HankHuang0516/EClaw/issues/2)) ([#2830](https://github.com/HankHuang0516/EClaw/issues/2830)) ([42c7543](https://github.com/HankHuang0516/EClaw/commit/42c7543b4a78a7abf3f5f7535eb9bc6142cd0fe2)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **portal:** complete 401 redirect sweep + mobile UIUX truncation ([#2842](https://github.com/HankHuang0516/EClaw/issues/2842)) ([f9799ba](https://github.com/HankHuang0516/EClaw/commit/f9799ba42498b109f0a8a70e80836aa6da51e216)), closes [#2833](https://github.com/HankHuang0516/EClaw/issues/2833) [#2845](https://github.com/HankHuang0516/EClaw/issues/2845) [#2844](https://github.com/HankHuang0516/EClaw/issues/2844) [#2843](https://github.com/HankHuang0516/EClaw/issues/2843)
* **uiux:** continue qa mobile readability sweep ([#2854](https://github.com/HankHuang0516/EClaw/issues/2854)) ([57606ff](https://github.com/HankHuang0516/EClaw/commit/57606ffe3e543b07a026aacc53c4b470c9a7825b))
* **i18n:** cover dynamic portal wrapper keys ([#2807](https://github.com/HankHuang0516/EClaw/issues/2807)) ([4c711cc](https://github.com/HankHuang0516/EClaw/commit/4c711cc4009300ffe4e8933a98ee01cd0fdd6aeb))
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **rental:** don't pollute entity.message on push gateway timeout ([#2860](https://github.com/HankHuang0516/EClaw/issues/2860)) ([592ba44](https://github.com/HankHuang0516/EClaw/commit/592ba44f57536ee00011b6cbddaa6b129a7cbae9))
* **petdx:** drop dark-grey loading placeholder + preload sprite WEBP ([#2628](https://github.com/HankHuang0516/EClaw/issues/2628)) ([59cef38](https://github.com/HankHuang0516/EClaw/commit/59cef387bd69ca99d7d15c86a1364856d3849ad8)), closes [#1a1a1a](https://github.com/HankHuang0516/EClaw/issues/1a1a1a)
* **security:** escape innerHTML in chat modal error messages ([#2819](https://github.com/HankHuang0516/EClaw/issues/2819)) ([dce07ad](https://github.com/HankHuang0516/EClaw/commit/dce07adde64795916dba977ae23e46f3371ce7ed)), closes [#2809](https://github.com/HankHuang0516/EClaw/issues/2809) [#2810](https://github.com/HankHuang0516/EClaw/issues/2810) [#2809](https://github.com/HankHuang0516/EClaw/issues/2809) [#2810](https://github.com/HankHuang0516/EClaw/issues/2810)
* **entities:** expose botSecret to owner so wallpaper service can poll companions ([#2615](https://github.com/HankHuang0516/EClaw/issues/2615)) ([04470fc](https://github.com/HankHuang0516/EClaw/commit/04470fce8f8c3fce2b1ba8b243e776606f107502))
* **rental:** expose owner_public_code in marketplace so plaza CTA can route ([#2616](https://github.com/HankHuang0516/EClaw/issues/2616)) ([4d1372f](https://github.com/HankHuang0516/EClaw/commit/4d1372f717d93cab65543e87c852e74e9fb67071)), closes [#2610](https://github.com/HankHuang0516/EClaw/issues/2610)
* **mindmap:** fallback to device scope when entityId is null ([#2728](https://github.com/HankHuang0516/EClaw/issues/2728)) ([7572312](https://github.com/HankHuang0516/EClaw/commit/7572312433d3d75fc245eda48a28919ce14bd927))
* **i18n:** fill Spanish drift keys ([#2751](https://github.com/HankHuang0516/EClaw/issues/2751)) ([0ad0ee5](https://github.com/HankHuang0516/EClaw/commit/0ad0ee55f7fac3e6ac46d891539950dab4d553cc))
* **portal:** fit embedded org chart to mobile viewport ([#2674](https://github.com/HankHuang0516/EClaw/issues/2674)) ([1c4e1b4](https://github.com/HankHuang0516/EClaw/commit/1c4e1b413ea7027b4cd4b8ecda981b0d0e12e66b))
* **i18n:** fix 6 trailing-comma syntax errors in 10-locale batch ([#2771](https://github.com/HankHuang0516/EClaw/issues/2771)) ([b27c6ca](https://github.com/HankHuang0516/EClaw/commit/b27c6ca204bf813e406c54ce3a2532a5f1f031b3))
* **kanban:** GET card returns latest 50 comments + comments endpoint exposes total ([#2816](https://github.com/HankHuang0516/EClaw/issues/2816)) ([c4d83f7](https://github.com/HankHuang0516/EClaw/commit/c4d83f777a1cd26aea0936e4316aa35c52822eef))
* **uiux:** harden chat previews and roster preview ([#2769](https://github.com/HankHuang0516/EClaw/issues/2769)) ([466d4d3](https://github.com/HankHuang0516/EClaw/commit/466d4d3ef81c628d3f58db64323946053d7bf61c))
* **mention-parser:** ignore @-mentions inside markdown code spans ([#2645](https://github.com/HankHuang0516/EClaw/issues/2645)) ([8da19d4](https://github.com/HankHuang0516/EClaw/commit/8da19d4a79ceb4152bf2144ee0847c61ce3e1def)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **kanban:** lazy-load dependency chips via IntersectionObserver ([#2632](https://github.com/HankHuang0516/EClaw/issues/2632)) ([20586b4](https://github.com/HankHuang0516/EClaw/commit/20586b43357335f9eb6a190c02d58c8e36b58aba)), closes [#2631](https://github.com/HankHuang0516/EClaw/issues/2631)
* **kanban:** make card sorting deterministic ([#2756](https://github.com/HankHuang0516/EClaw/issues/2756)) ([48e2117](https://github.com/HankHuang0516/EClaw/commit/48e2117b64e37f05dc635e0a3b67bfd43cbe48f5))
* **org-chart:** notify affected bots on hierarchy change ([#2812](https://github.com/HankHuang0516/EClaw/issues/2812)) ([55675fd](https://github.com/HankHuang0516/EClaw/commit/55675fdf4487494d729a29524b32bd81b756a00c)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** notify reviewer on manual /move → review ([#2753](https://github.com/HankHuang0516/EClaw/issues/2753)) ([6cbbb4e](https://github.com/HankHuang0516/EClaw/commit/6cbbb4ee8c0d4d8ad54df2e9b5faaa3699bd530f))
* **wallpaper:** off-load spritesheet fetch to IO so per-petdx sprites actually render ([#2618](https://github.com/HankHuang0516/EClaw/issues/2618)) ([61b832c](https://github.com/HankHuang0516/EClaw/commit/61b832c9fa8a1d0caab810ccc942d85c63349267)), closes [#2615](https://github.com/HankHuang0516/EClaw/issues/2615) [#2577](https://github.com/HankHuang0516/EClaw/issues/2577)
* **security:** patch P0 sanitize-html XSS + P1 protobufjs + exam.html XSS ([#2829](https://github.com/HankHuang0516/EClaw/issues/2829)) ([c71b871](https://github.com/HankHuang0516/EClaw/commit/c71b871a045887375dd0d26d1a3280a0891a89ad))
* **portal:** petdx-browser cookie-session fallback for device-login ([#2757](https://github.com/HankHuang0516/EClaw/issues/2757)) ([ca275f4](https://github.com/HankHuang0516/EClaw/commit/ca275f4519835da0c7ad71c588908a18f6f138d8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **api:** platform-stats 500 + entity/lookup publicCode alias ([#2809](https://github.com/HankHuang0516/EClaw/issues/2809), [#2810](https://github.com/HankHuang0516/EClaw/issues/2810)) ([#2818](https://github.com/HankHuang0516/EClaw/issues/2818)) ([f99fd17](https://github.com/HankHuang0516/EClaw/commit/f99fd17b2b1c32d88daa2510ff66d714c1a53edc))
* **i18n:** positional format specifiers for feedback_result_logs (7 locales) ([#2597](https://github.com/HankHuang0516/EClaw/issues/2597)) ([21aedc7](https://github.com/HankHuang0516/EClaw/commit/21aedc7eebc7a2839e340136f38dfdfd4dabb9dc))
* **avatar-petdx:** preserve descriptor across transient API failures (flicker) ([#2625](https://github.com/HankHuang0516/EClaw/issues/2625)) ([7b1c606](https://github.com/HankHuang0516/EClaw/commit/7b1c606514f7698d72ec95cf6c556e4043966186))
* **chat:** preserve scroll anchor while reading history ([#2693](https://github.com/HankHuang0516/EClaw/issues/2693)) ([945fdb7](https://github.com/HankHuang0516/EClaw/commit/945fdb7192b791b31882e1e75568dd8b11e4686f))
* **promo:** pull video embed from /promo-chat-avatar.html ([#2724](https://github.com/HankHuang0516/EClaw/issues/2724)) ([2afabc8](https://github.com/HankHuang0516/EClaw/commit/2afabc8c5ff8b25218a7cb857e8adfa572c8e9d5))
* **kanban:** realign stale recurring schedules ([#2785](https://github.com/HankHuang0516/EClaw/issues/2785)) ([ab8ee25](https://github.com/HankHuang0516/EClaw/commit/ab8ee250a9b37f3d3e838bb01d8866c8d2b78231))
* **portal:** reduce QA-discovered request fanout ([#2656](https://github.com/HankHuang0516/EClaw/issues/2656)) ([1e46d6b](https://github.com/HankHuang0516/EClaw/commit/1e46d6bab61e58c65b452b6503d953f8dddeee75))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **portal:** remove org chart fit scale floor ([#2676](https://github.com/HankHuang0516/EClaw/issues/2676)) ([0f01606](https://github.com/HankHuang0516/EClaw/commit/0f016068b963bb5f800a02f28817c7174979d913))
* **i18n:** rename mm_empty_title → mm_state_empty_title in mindmap.html ([#2683](https://github.com/HankHuang0516/EClaw/issues/2683)) ([c79c109](https://github.com/HankHuang0516/EClaw/commit/c79c109bea23142e8a6d9ace976d105af1280ec9))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **chat:** render mention avatars with companion renderer ([#2633](https://github.com/HankHuang0516/EClaw/issues/2633)) ([03e205f](https://github.com/HankHuang0516/EClaw/commit/03e205f663ecd2c2f443d4009dd5af0093f0bbbb))
* **kanban:** reserve mobile comments panel height ([#2782](https://github.com/HankHuang0516/EClaw/issues/2782)) ([ce8662d](https://github.com/HankHuang0516/EClaw/commit/ce8662d362422fdd25037f1deb61dbed9425e2f9))
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* scheduled audit 2026-05-13 — 6 bugs, XSS, i18n ([#2668](https://github.com/HankHuang0516/EClaw/issues/2668)) ([21dd513](https://github.com/HankHuang0516/EClaw/commit/21dd513b4464738de29164265437435ba6cc4817)), closes [#2605](https://github.com/HankHuang0516/EClaw/issues/2605) [#2608](https://github.com/HankHuang0516/EClaw/issues/2608) [#2600](https://github.com/HankHuang0516/EClaw/issues/2600) [#2599](https://github.com/HankHuang0516/EClaw/issues/2599) [#2598](https://github.com/HankHuang0516/EClaw/issues/2598)
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **chat:** smart-chip preview falls back to inline c.comments when /comments fails (PR [#2677](https://github.com/HankHuang0516/EClaw/issues/2677)) ([7f4dffd](https://github.com/HankHuang0516/EClaw/commit/7f4dffd2c83ea86f296b8fa0610f0e67c9f1af11))
* **kanban:** stabilize comment detail viewport ([#2796](https://github.com/HankHuang0516/EClaw/issues/2796)) ([0a10aad](https://github.com/HankHuang0516/EClaw/commit/0a10aadb5a5b12ff23454c16d5c88183b94ad7d7))
* **wallpaper:** stop Android live wallpaper flashing default lobster on companion change ([#2629](https://github.com/HankHuang0516/EClaw/issues/2629)) ([8b4f66f](https://github.com/HankHuang0516/EClaw/commit/8b4f66fcb335bf43128f924b761b6337c817095b)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **chat:** stop chat.html bouncing to dashboard via /api/rental/health-status 401 race ([#2833](https://github.com/HankHuang0516/EClaw/issues/2833)) ([c422406](https://github.com/HankHuang0516/EClaw/commit/c4224067cdcfe7f3e22ab95007c7563dac4196ac))
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **app:** WebView pages honor app-selected locale via ?lang= URL param ([#2672](https://github.com/HankHuang0516/EClaw/issues/2672)) ([8ed8757](https://github.com/HankHuang0516/EClaw/commit/8ed8757aec5bf214e837cc0d81bf2b23f1993a91)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* **community:** 1-click chat button on bot cards + utm tagging ([#2610](https://github.com/HankHuang0516/EClaw/issues/2610)) ([eee97b0](https://github.com/HankHuang0516/EClaw/commit/eee97b0e2e4e74945ec24f218a69a52800b97a66))
* **chat:** accept ?messageId= as deep-link alias ([#2838](https://github.com/HankHuang0516/EClaw/issues/2838)) ([1785a87](https://github.com/HankHuang0516/EClaw/commit/1785a87310426637fd10df83754fb9924c45207f))
* **chat:** add avatar size preference ([#2714](https://github.com/HankHuang0516/EClaw/issues/2714)) ([6fe164a](https://github.com/HankHuang0516/EClaw/commit/6fe164ad8b22fa576d2dd9ad37c0d9fc295b5a83))
* **dashboard:** add Claude and Codex channel guides ([#2640](https://github.com/HankHuang0516/EClaw/issues/2640)) ([c64e4c4](https://github.com/HankHuang0516/EClaw/commit/c64e4c4afc78db58c5cd578f00486dd7b2fd3311))
* **dashboard:** add Claude Code channel guide card ([#2667](https://github.com/HankHuang0516/EClaw/issues/2667)) ([d70d75c](https://github.com/HankHuang0516/EClaw/commit/d70d75c0c8caa8a540358a9aab4556b8c1927a5c))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* **kanban:** add device-scoped card tags ([#2773](https://github.com/HankHuang0516/EClaw/issues/2773)) ([53a387e](https://github.com/HankHuang0516/EClaw/commit/53a387e67ba7bb4f6bed1c427000c4ae8666577a))
* **portal:** add entity selector to petdx-browser ([#2602](https://github.com/HankHuang0516/EClaw/issues/2602)) ([3fa067e](https://github.com/HankHuang0516/EClaw/commit/3fa067e00b38829b48a37cecd33ee81a9a1122d9))
* **kanban:** add explicit card links ([#2721](https://github.com/HankHuang0516/EClaw/issues/2721)) ([ef9f812](https://github.com/HankHuang0516/EClaw/commit/ef9f812a3fcf39efd07fd158ce90951bdd045ac7))
* **kanban:** add explicit done-card reopen flow ([#2801](https://github.com/HankHuang0516/EClaw/issues/2801)) ([5080aac](https://github.com/HankHuang0516/EClaw/commit/5080aacb75047c0deaa379ee708ec85465afd57c))
* **mindmap:** add GET /api/mindmap/graph force-graph projection ([#2680](https://github.com/HankHuang0516/EClaw/issues/2680)) ([a00b2e7](https://github.com/HankHuang0516/EClaw/commit/a00b2e775af2c4c98cd157f760ad87aeeee469f0)), closes [#2679](https://github.com/HankHuang0516/EClaw/issues/2679) [#2679](https://github.com/HankHuang0516/EClaw/issues/2679)
* **dashboard:** add Hermes channel promo card ([#2708](https://github.com/HankHuang0516/EClaw/issues/2708)) ([337aca1](https://github.com/HankHuang0516/EClaw/commit/337aca153d5a1cd7e888c065f00ae54db7872d91))
* **rental:** add listing soft pause ([#2781](https://github.com/HankHuang0516/EClaw/issues/2781)) ([6586b72](https://github.com/HankHuang0516/EClaw/commit/6586b72717ddb1637d91cd3242c8d2ff554f62b4))
* **portal:** add Nagoya 5D4N trip static cross-ref page ([#2689](https://github.com/HankHuang0516/EClaw/issues/2689)) ([2e0efb6](https://github.com/HankHuang0516/EClaw/commit/2e0efb6dcdaff52226cc8854a96747000b12bdff))
* **portal:** add Nagoya trip map links and image lightbox ([#2821](https://github.com/HankHuang0516/EClaw/issues/2821)) ([3e40955](https://github.com/HankHuang0516/EClaw/commit/3e40955650a05f45a6b9f7e39e73847705424a03))
* **portal/nagoya:** add parking shortcut buttons next to itinerary places ([#2826](https://github.com/HankHuang0516/EClaw/issues/2826)) ([63968c5](https://github.com/HankHuang0516/EClaw/commit/63968c554d046afc8d978de74e3aacbf7700500d))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **settings:** add rental roster management preview ([#2758](https://github.com/HankHuang0516/EClaw/issues/2758)) ([9706e59](https://github.com/HankHuang0516/EClaw/commit/9706e59ded140a90a6e02348124282bc69d89001))
* **rental:** add renter health chat indicator ([#2690](https://github.com/HankHuang0516/EClaw/issues/2690)) ([36cd2e9](https://github.com/HankHuang0516/EClaw/commit/36cd2e9802be4c7ebb03d3024617fa74aca48ffd))
* **ios:** add Tutorial & Intro entry in Settings ([#2800](https://github.com/HankHuang0516/EClaw/issues/2800)) ([ed83e51](https://github.com/HankHuang0516/EClaw/commit/ed83e51d043bf4cd5865f38dc95a91ed54820d6c))
* **landing:** add Watch Full Demo CTA below hero video ([#2799](https://github.com/HankHuang0516/EClaw/issues/2799)) ([66107c9](https://github.com/HankHuang0516/EClaw/commit/66107c954727551fd34d989a4674daaad9b63968))
* **footer:** add Watch Intro Video link in Info column ([#2798](https://github.com/HankHuang0516/EClaw/issues/2798)) ([d7c6d59](https://github.com/HankHuang0516/EClaw/commit/d7c6d596b69c6a5b257bf1f7a792a407ef9712ad))
* **i18n:** ar iter-2 — fill 623 missing keys against en source ([#2847](https://github.com/HankHuang0516/EClaw/issues/2847)) ([ee94a7a](https://github.com/HankHuang0516/EClaw/commit/ee94a7ae6812b5163efe4284ee4907ca32302f5c))
* **kanban:** backlog launch-gate flag to suppress L1/L2/L3 escalation ([#2855](https://github.com/HankHuang0516/EClaw/issues/2855)) ([cb8bf1b](https://github.com/HankHuang0516/EClaw/commit/cb8bf1bb6421f25214f65e129a8cadccc49cc266)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#4](https://github.com/HankHuang0516/EClaw/issues/4) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **companion:** bridge crafter-station/petdex gallery (1784 pets) ([#2601](https://github.com/HankHuang0516/EClaw/issues/2601)) ([2e245be](https://github.com/HankHuang0516/EClaw/commit/2e245bea6dd47ea7361b927d389188a3c23b6bb3))
* **promo:** chat avatar size feature landing page (self-hosted MP4) ([#2722](https://github.com/HankHuang0516/EClaw/issues/2722)) ([3852210](https://github.com/HankHuang0516/EClaw/commit/3852210d355704d018e3daca6b5f9512a011b210)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **kanban:** cron-spawn jitter + lane backpressure to prevent same-tick wedge ([#2791](https://github.com/HankHuang0516/EClaw/issues/2791)) ([9f414a7](https://github.com/HankHuang0516/EClaw/commit/9f414a731d6393672a0a4189c7b408c529ae5e12)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **promo:** embed daily eclaw video 2026-05-14 ([#2786](https://github.com/HankHuang0516/EClaw/issues/2786)) ([718a814](https://github.com/HankHuang0516/EClaw/commit/718a814ab16850bc2b33a1b303841e2c4378ecfa)), closes [#2782](https://github.com/HankHuang0516/EClaw/issues/2782) [#2693](https://github.com/HankHuang0516/EClaw/issues/2693)
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **info:** embed promo video at top of Quick Start tab ([#2797](https://github.com/HankHuang0516/EClaw/issues/2797)) ([047679f](https://github.com/HankHuang0516/EClaw/commit/047679fd57ab9949eaeacea414d5611e71afe041))
* **rental:** enforce strict rebind refunds ([#2703](https://github.com/HankHuang0516/EClaw/issues/2703)) ([a1859c5](https://github.com/HankHuang0516/EClaw/commit/a1859c50e6fb3991d7a8051491502d824a14a116))
* **portal:** group task chip actions ([#2825](https://github.com/HankHuang0516/EClaw/issues/2825)) ([5db5c59](https://github.com/HankHuang0516/EClaw/commit/5db5c59b32b8635f1412205faf0c2f9164d3d5d4))
* **portal:** info-guide-rules + info-guide-soul slide pair ([#2793](https://github.com/HankHuang0516/EClaw/issues/2793)) ([1c8bddc](https://github.com/HankHuang0516/EClaw/commit/1c8bddc4c185054b2b60088498e3d45509117127)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **chat:** link card previews to kanban ([#2754](https://github.com/HankHuang0516/EClaw/issues/2754)) ([2261240](https://github.com/HankHuang0516/EClaw/commit/22612402c2e95efb07246629e81a849be41ee9c7))
* **mission:** link notes to kanban cards ([#2723](https://github.com/HankHuang0516/EClaw/issues/2723)) ([b36dc18](https://github.com/HankHuang0516/EClaw/commit/b36dc18f3a8facf12e0b6046351c222f1e99dc55))
* **mindmap:** mission.html link to /portal/mindmap.html + deprecate /api/mission/mindmap ([#2685](https://github.com/HankHuang0516/EClaw/issues/2685)) ([11e297b](https://github.com/HankHuang0516/EClaw/commit/11e297bab1c9b56fcde3027d6500b7c58891bf18)), closes [#2680](https://github.com/HankHuang0516/EClaw/issues/2680) [#2684](https://github.com/HankHuang0516/EClaw/issues/2684)
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **settings:** per-entity nudge override UI (Phase 2) ([#2837](https://github.com/HankHuang0516/EClaw/issues/2837)) ([ea7662b](https://github.com/HankHuang0516/EClaw/commit/ea7662b0858882dae461e1387f711895924f9ab8)), closes [3/#4](https://github.com/HankHuang0516/EClaw/issues/4)
* **kanban:** per-entity nudge overrides (Phase 2 of card_e066cb6b) ([#2836](https://github.com/HankHuang0516/EClaw/issues/2836)) ([0425f80](https://github.com/HankHuang0516/EClaw/commit/0425f80bc1169c0d506b665659c8676695c45553))
* **avatar:** petdx render on card-holder my-cards (Phase 1b) ([#2621](https://github.com/HankHuang0516/EClaw/issues/2621)) ([f78ba8b](https://github.com/HankHuang0516/EClaw/commit/f78ba8b18acc426936ab6d8a82ca7541effea00d))
* **avatar:** petdx render on dashboard entity grid / org chart / bindings (Phase 1b) ([#2622](https://github.com/HankHuang0516/EClaw/issues/2622)) ([f417749](https://github.com/HankHuang0516/EClaw/commit/f41774914451048e8cd76e9ae30416a0642e173b)), closes [#2620](https://github.com/HankHuang0516/EClaw/issues/2620) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621)
* **avatar:** petdx render on kanban auto-assign / pulse / comment avatars (Phase 1b) ([#2624](https://github.com/HankHuang0516/EClaw/issues/2624)) ([6bff5f8](https://github.com/HankHuang0516/EClaw/commit/6bff5f80440d0bd91a6b1721cde9478d685c4d46))
* **avatar:** petdx render on mission skill/rule/soul entity dialogs (Phase 1b) ([#2623](https://github.com/HankHuang0516/EClaw/issues/2623)) ([129327b](https://github.com/HankHuang0516/EClaw/commit/129327bc7b91056659f1ab7e8d5e3f5260d951fb))
* **mindmap:** portal/mindmap.html force-graph prototype ([#129](https://github.com/HankHuang0516/EClaw/issues/129)) ([#2681](https://github.com/HankHuang0516/EClaw/issues/2681)) ([0f15e69](https://github.com/HankHuang0516/EClaw/commit/0f15e6930f0697c37fa08f3219edb8f9e499837f)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **portal:** redo nagoya trip page in professional tour-guide style ([#2691](https://github.com/HankHuang0516/EClaw/issues/2691)) ([b2378c0](https://github.com/HankHuang0516/EClaw/commit/b2378c06ee20fa9cccfdceceb1a4c9e0b3072f59))
* **i18n:** remove ms+hi orphan keys from i18n.js ([#2849](https://github.com/HankHuang0516/EClaw/issues/2849)) ([320176c](https://github.com/HankHuang0516/EClaw/commit/320176c06a3cfd8631e2a82ad02a6bd6a9af0389))
* **avatar:** render selected petdx companion in chat avatars ([#2620](https://github.com/HankHuang0516/EClaw/issues/2620)) ([0bdd046](https://github.com/HankHuang0516/EClaw/commit/0bdd046fe1b1c428e32edda366ff112c08927f4c))
* **home:** replace native home with WebView hosting dashboard.html ([#2634](https://github.com/HankHuang0516/EClaw/issues/2634)) ([e69ea81](https://github.com/HankHuang0516/EClaw/commit/e69ea8160c239b083a83d6dc83a4f1c3f901c863))
* **app:** route chat mission jumps through native tabs ([#2824](https://github.com/HankHuang0516/EClaw/issues/2824)) ([deb07b6](https://github.com/HankHuang0516/EClaw/commit/deb07b69a9ecca632fe27278de537f1d85234e94))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **chat:** support message deep links ([#2719](https://github.com/HankHuang0516/EClaw/issues/2719)) ([2dc0f1e](https://github.com/HankHuang0516/EClaw/commit/2dc0f1eeb259e1a0848db4a03186b989372cd91c))
* **mission:** support note deep links ([#2717](https://github.com/HankHuang0516/EClaw/issues/2717)) ([2efd3a5](https://github.com/HankHuang0516/EClaw/commit/2efd3a5e741217a07c0b0ac54a0ddd010e0ebe23))
* **share-chat:** twitter card + per-bot og:image/twitter:* in SSR ([#2609](https://github.com/HankHuang0516/EClaw/issues/2609)) ([6cdc853](https://github.com/HankHuang0516/EClaw/commit/6cdc853dc884cdb95bd47214942768981f218ae0))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))
* **settings:** wire petdx avatar into channel-account chips ([#2626](https://github.com/HankHuang0516/EClaw/issues/2626)) ([88aec77](https://github.com/HankHuang0516/EClaw/commit/88aec772628c240e97b336bb5820892ad632d1ae))
* **files:** wire petdx avatar into entity filter & per-file badges ([#2627](https://github.com/HankHuang0516/EClaw/issues/2627)) ([5b3e5cc](https://github.com/HankHuang0516/EClaw/commit/5b3e5cc542d9da69bb4e92500fd03a542ea33f00))
* **mindmap:** wrap hardcoded zh-TW UI strings with i18n t() ([#2607](https://github.com/HankHuang0516/EClaw/issues/2607)) ([166af87](https://github.com/HankHuang0516/EClaw/commit/166af8772b2121a24aaf34a83b3de970e9b3b571)), closes [#2606](https://github.com/HankHuang0516/EClaw/issues/2606)
* **i18n:** zh-TW backfill 8 keys (soft-pause + chat + invite + wallet) ([#2815](https://github.com/HankHuang0516/EClaw/issues/2815)) ([a2dd574](https://github.com/HankHuang0516/EClaw/commit/a2dd5743ce8d43a4b6ace9a2fd4b52568180d6c5))


### Performance Improvements

* **mindmap:** force-graph hardening for 1000/2000-node graphs ([#2684](https://github.com/HankHuang0516/EClaw/issues/2684)) ([da8b1c8](https://github.com/HankHuang0516/EClaw/commit/da8b1c8f947ab8bc8fa455c1962a91146623a1fc))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-20)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **notifications:** add kanban_done + kanban_done_auto toggles to Android Settings ([#2636](https://github.com/HankHuang0516/EClaw/issues/2636)) ([a710909](https://github.com/HankHuang0516/EClaw/commit/a7109095e3393b8564e7ef1b23d382a4fbb944b8))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **i18n:** ar block — fix 27 broken entries (CJK leaks + truncated HTML) ([#2851](https://github.com/HankHuang0516/EClaw/issues/2851)) ([5b19175](https://github.com/HankHuang0516/EClaw/commit/5b19175d712d00d16fcec00b749035c4beae7a5c))
* **chat:** atomic-load target bar (await contacts before first render) ([#2831](https://github.com/HankHuang0516/EClaw/issues/2831)) ([5f529e6](https://github.com/HankHuang0516/EClaw/commit/5f529e6b772eacc38ba1de69b44258a05f0d816a)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2](https://github.com/HankHuang0516/EClaw/issues/2)
* **i18n:** clear batch 1 residual missing keys ([#2790](https://github.com/HankHuang0516/EClaw/issues/2790)) ([211030e](https://github.com/HankHuang0516/EClaw/commit/211030e0b0b6a865c11f0c4ed60dc4e356d43b7a))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **kanban:** comment input no longer overlaps last comment in card detail (PR [#2678](https://github.com/HankHuang0516/EClaw/issues/2678)) ([fba91fc](https://github.com/HankHuang0516/EClaw/commit/fba91fca15402b453a0db5ee857c0b16e6087055))
* **chat:** compact 20px avatar in target bar (App WebView only shows [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2](https://github.com/HankHuang0516/EClaw/issues/2)) ([#2830](https://github.com/HankHuang0516/EClaw/issues/2830)) ([42c7543](https://github.com/HankHuang0516/EClaw/commit/42c7543b4a78a7abf3f5f7535eb9bc6142cd0fe2)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **portal:** complete 401 redirect sweep + mobile UIUX truncation ([#2842](https://github.com/HankHuang0516/EClaw/issues/2842)) ([f9799ba](https://github.com/HankHuang0516/EClaw/commit/f9799ba42498b109f0a8a70e80836aa6da51e216)), closes [#2833](https://github.com/HankHuang0516/EClaw/issues/2833) [#2845](https://github.com/HankHuang0516/EClaw/issues/2845) [#2844](https://github.com/HankHuang0516/EClaw/issues/2844) [#2843](https://github.com/HankHuang0516/EClaw/issues/2843)
* **uiux:** continue qa mobile readability sweep ([#2854](https://github.com/HankHuang0516/EClaw/issues/2854)) ([57606ff](https://github.com/HankHuang0516/EClaw/commit/57606ffe3e543b07a026aacc53c4b470c9a7825b))
* **i18n:** cover dynamic portal wrapper keys ([#2807](https://github.com/HankHuang0516/EClaw/issues/2807)) ([4c711cc](https://github.com/HankHuang0516/EClaw/commit/4c711cc4009300ffe4e8933a98ee01cd0fdd6aeb))
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **petdx:** drop dark-grey loading placeholder + preload sprite WEBP ([#2628](https://github.com/HankHuang0516/EClaw/issues/2628)) ([59cef38](https://github.com/HankHuang0516/EClaw/commit/59cef387bd69ca99d7d15c86a1364856d3849ad8)), closes [#1a1a1a](https://github.com/HankHuang0516/EClaw/issues/1a1a1a)
* **security:** escape innerHTML in chat modal error messages ([#2819](https://github.com/HankHuang0516/EClaw/issues/2819)) ([dce07ad](https://github.com/HankHuang0516/EClaw/commit/dce07adde64795916dba977ae23e46f3371ce7ed)), closes [#2809](https://github.com/HankHuang0516/EClaw/issues/2809) [#2810](https://github.com/HankHuang0516/EClaw/issues/2810) [#2809](https://github.com/HankHuang0516/EClaw/issues/2809) [#2810](https://github.com/HankHuang0516/EClaw/issues/2810)
* **entities:** expose botSecret to owner so wallpaper service can poll companions ([#2615](https://github.com/HankHuang0516/EClaw/issues/2615)) ([04470fc](https://github.com/HankHuang0516/EClaw/commit/04470fce8f8c3fce2b1ba8b243e776606f107502))
* **rental:** expose owner_public_code in marketplace so plaza CTA can route ([#2616](https://github.com/HankHuang0516/EClaw/issues/2616)) ([4d1372f](https://github.com/HankHuang0516/EClaw/commit/4d1372f717d93cab65543e87c852e74e9fb67071)), closes [#2610](https://github.com/HankHuang0516/EClaw/issues/2610)
* **mindmap:** fallback to device scope when entityId is null ([#2728](https://github.com/HankHuang0516/EClaw/issues/2728)) ([7572312](https://github.com/HankHuang0516/EClaw/commit/7572312433d3d75fc245eda48a28919ce14bd927))
* **i18n:** fill Spanish drift keys ([#2751](https://github.com/HankHuang0516/EClaw/issues/2751)) ([0ad0ee5](https://github.com/HankHuang0516/EClaw/commit/0ad0ee55f7fac3e6ac46d891539950dab4d553cc))
* **portal:** fit embedded org chart to mobile viewport ([#2674](https://github.com/HankHuang0516/EClaw/issues/2674)) ([1c4e1b4](https://github.com/HankHuang0516/EClaw/commit/1c4e1b413ea7027b4cd4b8ecda981b0d0e12e66b))
* **i18n:** fix 6 trailing-comma syntax errors in 10-locale batch ([#2771](https://github.com/HankHuang0516/EClaw/issues/2771)) ([b27c6ca](https://github.com/HankHuang0516/EClaw/commit/b27c6ca204bf813e406c54ce3a2532a5f1f031b3))
* **kanban:** GET card returns latest 50 comments + comments endpoint exposes total ([#2816](https://github.com/HankHuang0516/EClaw/issues/2816)) ([c4d83f7](https://github.com/HankHuang0516/EClaw/commit/c4d83f777a1cd26aea0936e4316aa35c52822eef))
* **uiux:** harden chat previews and roster preview ([#2769](https://github.com/HankHuang0516/EClaw/issues/2769)) ([466d4d3](https://github.com/HankHuang0516/EClaw/commit/466d4d3ef81c628d3f58db64323946053d7bf61c))
* **mention-parser:** ignore @-mentions inside markdown code spans ([#2645](https://github.com/HankHuang0516/EClaw/issues/2645)) ([8da19d4](https://github.com/HankHuang0516/EClaw/commit/8da19d4a79ceb4152bf2144ee0847c61ce3e1def)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **kanban:** lazy-load dependency chips via IntersectionObserver ([#2632](https://github.com/HankHuang0516/EClaw/issues/2632)) ([20586b4](https://github.com/HankHuang0516/EClaw/commit/20586b43357335f9eb6a190c02d58c8e36b58aba)), closes [#2631](https://github.com/HankHuang0516/EClaw/issues/2631)
* **kanban:** make card sorting deterministic ([#2756](https://github.com/HankHuang0516/EClaw/issues/2756)) ([48e2117](https://github.com/HankHuang0516/EClaw/commit/48e2117b64e37f05dc635e0a3b67bfd43cbe48f5))
* **org-chart:** notify affected bots on hierarchy change ([#2812](https://github.com/HankHuang0516/EClaw/issues/2812)) ([55675fd](https://github.com/HankHuang0516/EClaw/commit/55675fdf4487494d729a29524b32bd81b756a00c)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** notify reviewer on manual /move → review ([#2753](https://github.com/HankHuang0516/EClaw/issues/2753)) ([6cbbb4e](https://github.com/HankHuang0516/EClaw/commit/6cbbb4ee8c0d4d8ad54df2e9b5faaa3699bd530f))
* **wallpaper:** off-load spritesheet fetch to IO so per-petdx sprites actually render ([#2618](https://github.com/HankHuang0516/EClaw/issues/2618)) ([61b832c](https://github.com/HankHuang0516/EClaw/commit/61b832c9fa8a1d0caab810ccc942d85c63349267)), closes [#2615](https://github.com/HankHuang0516/EClaw/issues/2615) [#2577](https://github.com/HankHuang0516/EClaw/issues/2577)
* **security:** patch P0 sanitize-html XSS + P1 protobufjs + exam.html XSS ([#2829](https://github.com/HankHuang0516/EClaw/issues/2829)) ([c71b871](https://github.com/HankHuang0516/EClaw/commit/c71b871a045887375dd0d26d1a3280a0891a89ad))
* **portal:** petdx-browser cookie-session fallback for device-login ([#2757](https://github.com/HankHuang0516/EClaw/issues/2757)) ([ca275f4](https://github.com/HankHuang0516/EClaw/commit/ca275f4519835da0c7ad71c588908a18f6f138d8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **api:** platform-stats 500 + entity/lookup publicCode alias ([#2809](https://github.com/HankHuang0516/EClaw/issues/2809), [#2810](https://github.com/HankHuang0516/EClaw/issues/2810)) ([#2818](https://github.com/HankHuang0516/EClaw/issues/2818)) ([f99fd17](https://github.com/HankHuang0516/EClaw/commit/f99fd17b2b1c32d88daa2510ff66d714c1a53edc))
* **i18n:** positional format specifiers for feedback_result_logs (7 locales) ([#2597](https://github.com/HankHuang0516/EClaw/issues/2597)) ([21aedc7](https://github.com/HankHuang0516/EClaw/commit/21aedc7eebc7a2839e340136f38dfdfd4dabb9dc))
* **avatar-petdx:** preserve descriptor across transient API failures (flicker) ([#2625](https://github.com/HankHuang0516/EClaw/issues/2625)) ([7b1c606](https://github.com/HankHuang0516/EClaw/commit/7b1c606514f7698d72ec95cf6c556e4043966186))
* **chat:** preserve scroll anchor while reading history ([#2693](https://github.com/HankHuang0516/EClaw/issues/2693)) ([945fdb7](https://github.com/HankHuang0516/EClaw/commit/945fdb7192b791b31882e1e75568dd8b11e4686f))
* **promo:** pull video embed from /promo-chat-avatar.html ([#2724](https://github.com/HankHuang0516/EClaw/issues/2724)) ([2afabc8](https://github.com/HankHuang0516/EClaw/commit/2afabc8c5ff8b25218a7cb857e8adfa572c8e9d5))
* **kanban:** realign stale recurring schedules ([#2785](https://github.com/HankHuang0516/EClaw/issues/2785)) ([ab8ee25](https://github.com/HankHuang0516/EClaw/commit/ab8ee250a9b37f3d3e838bb01d8866c8d2b78231))
* **portal:** reduce QA-discovered request fanout ([#2656](https://github.com/HankHuang0516/EClaw/issues/2656)) ([1e46d6b](https://github.com/HankHuang0516/EClaw/commit/1e46d6bab61e58c65b452b6503d953f8dddeee75))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **portal:** remove org chart fit scale floor ([#2676](https://github.com/HankHuang0516/EClaw/issues/2676)) ([0f01606](https://github.com/HankHuang0516/EClaw/commit/0f016068b963bb5f800a02f28817c7174979d913))
* **i18n:** rename mm_empty_title → mm_state_empty_title in mindmap.html ([#2683](https://github.com/HankHuang0516/EClaw/issues/2683)) ([c79c109](https://github.com/HankHuang0516/EClaw/commit/c79c109bea23142e8a6d9ace976d105af1280ec9))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **chat:** render mention avatars with companion renderer ([#2633](https://github.com/HankHuang0516/EClaw/issues/2633)) ([03e205f](https://github.com/HankHuang0516/EClaw/commit/03e205f663ecd2c2f443d4009dd5af0093f0bbbb))
* **kanban:** reserve mobile comments panel height ([#2782](https://github.com/HankHuang0516/EClaw/issues/2782)) ([ce8662d](https://github.com/HankHuang0516/EClaw/commit/ce8662d362422fdd25037f1deb61dbed9425e2f9))
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* scheduled audit 2026-05-13 — 6 bugs, XSS, i18n ([#2668](https://github.com/HankHuang0516/EClaw/issues/2668)) ([21dd513](https://github.com/HankHuang0516/EClaw/commit/21dd513b4464738de29164265437435ba6cc4817)), closes [#2605](https://github.com/HankHuang0516/EClaw/issues/2605) [#2608](https://github.com/HankHuang0516/EClaw/issues/2608) [#2600](https://github.com/HankHuang0516/EClaw/issues/2600) [#2599](https://github.com/HankHuang0516/EClaw/issues/2599) [#2598](https://github.com/HankHuang0516/EClaw/issues/2598)
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **chat:** smart-chip preview falls back to inline c.comments when /comments fails (PR [#2677](https://github.com/HankHuang0516/EClaw/issues/2677)) ([7f4dffd](https://github.com/HankHuang0516/EClaw/commit/7f4dffd2c83ea86f296b8fa0610f0e67c9f1af11))
* **kanban:** stabilize comment detail viewport ([#2796](https://github.com/HankHuang0516/EClaw/issues/2796)) ([0a10aad](https://github.com/HankHuang0516/EClaw/commit/0a10aadb5a5b12ff23454c16d5c88183b94ad7d7))
* **wallpaper:** stop Android live wallpaper flashing default lobster on companion change ([#2629](https://github.com/HankHuang0516/EClaw/issues/2629)) ([8b4f66f](https://github.com/HankHuang0516/EClaw/commit/8b4f66fcb335bf43128f924b761b6337c817095b)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **chat:** stop chat.html bouncing to dashboard via /api/rental/health-status 401 race ([#2833](https://github.com/HankHuang0516/EClaw/issues/2833)) ([c422406](https://github.com/HankHuang0516/EClaw/commit/c4224067cdcfe7f3e22ab95007c7563dac4196ac))
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **app:** WebView pages honor app-selected locale via ?lang= URL param ([#2672](https://github.com/HankHuang0516/EClaw/issues/2672)) ([8ed8757](https://github.com/HankHuang0516/EClaw/commit/8ed8757aec5bf214e837cc0d81bf2b23f1993a91)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* **community:** 1-click chat button on bot cards + utm tagging ([#2610](https://github.com/HankHuang0516/EClaw/issues/2610)) ([eee97b0](https://github.com/HankHuang0516/EClaw/commit/eee97b0e2e4e74945ec24f218a69a52800b97a66))
* **chat:** accept ?messageId= as deep-link alias ([#2838](https://github.com/HankHuang0516/EClaw/issues/2838)) ([1785a87](https://github.com/HankHuang0516/EClaw/commit/1785a87310426637fd10df83754fb9924c45207f))
* **chat:** add avatar size preference ([#2714](https://github.com/HankHuang0516/EClaw/issues/2714)) ([6fe164a](https://github.com/HankHuang0516/EClaw/commit/6fe164ad8b22fa576d2dd9ad37c0d9fc295b5a83))
* **dashboard:** add Claude and Codex channel guides ([#2640](https://github.com/HankHuang0516/EClaw/issues/2640)) ([c64e4c4](https://github.com/HankHuang0516/EClaw/commit/c64e4c4afc78db58c5cd578f00486dd7b2fd3311))
* **dashboard:** add Claude Code channel guide card ([#2667](https://github.com/HankHuang0516/EClaw/issues/2667)) ([d70d75c](https://github.com/HankHuang0516/EClaw/commit/d70d75c0c8caa8a540358a9aab4556b8c1927a5c))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* **kanban:** add device-scoped card tags ([#2773](https://github.com/HankHuang0516/EClaw/issues/2773)) ([53a387e](https://github.com/HankHuang0516/EClaw/commit/53a387e67ba7bb4f6bed1c427000c4ae8666577a))
* **portal:** add entity selector to petdx-browser ([#2602](https://github.com/HankHuang0516/EClaw/issues/2602)) ([3fa067e](https://github.com/HankHuang0516/EClaw/commit/3fa067e00b38829b48a37cecd33ee81a9a1122d9))
* **kanban:** add explicit card links ([#2721](https://github.com/HankHuang0516/EClaw/issues/2721)) ([ef9f812](https://github.com/HankHuang0516/EClaw/commit/ef9f812a3fcf39efd07fd158ce90951bdd045ac7))
* **kanban:** add explicit done-card reopen flow ([#2801](https://github.com/HankHuang0516/EClaw/issues/2801)) ([5080aac](https://github.com/HankHuang0516/EClaw/commit/5080aacb75047c0deaa379ee708ec85465afd57c))
* **mindmap:** add GET /api/mindmap/graph force-graph projection ([#2680](https://github.com/HankHuang0516/EClaw/issues/2680)) ([a00b2e7](https://github.com/HankHuang0516/EClaw/commit/a00b2e775af2c4c98cd157f760ad87aeeee469f0)), closes [#2679](https://github.com/HankHuang0516/EClaw/issues/2679) [#2679](https://github.com/HankHuang0516/EClaw/issues/2679)
* **dashboard:** add Hermes channel promo card ([#2708](https://github.com/HankHuang0516/EClaw/issues/2708)) ([337aca1](https://github.com/HankHuang0516/EClaw/commit/337aca153d5a1cd7e888c065f00ae54db7872d91))
* **rental:** add listing soft pause ([#2781](https://github.com/HankHuang0516/EClaw/issues/2781)) ([6586b72](https://github.com/HankHuang0516/EClaw/commit/6586b72717ddb1637d91cd3242c8d2ff554f62b4))
* **portal:** add Nagoya 5D4N trip static cross-ref page ([#2689](https://github.com/HankHuang0516/EClaw/issues/2689)) ([2e0efb6](https://github.com/HankHuang0516/EClaw/commit/2e0efb6dcdaff52226cc8854a96747000b12bdff))
* **portal:** add Nagoya trip map links and image lightbox ([#2821](https://github.com/HankHuang0516/EClaw/issues/2821)) ([3e40955](https://github.com/HankHuang0516/EClaw/commit/3e40955650a05f45a6b9f7e39e73847705424a03))
* **portal/nagoya:** add parking shortcut buttons next to itinerary places ([#2826](https://github.com/HankHuang0516/EClaw/issues/2826)) ([63968c5](https://github.com/HankHuang0516/EClaw/commit/63968c554d046afc8d978de74e3aacbf7700500d))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **settings:** add rental roster management preview ([#2758](https://github.com/HankHuang0516/EClaw/issues/2758)) ([9706e59](https://github.com/HankHuang0516/EClaw/commit/9706e59ded140a90a6e02348124282bc69d89001))
* **rental:** add renter health chat indicator ([#2690](https://github.com/HankHuang0516/EClaw/issues/2690)) ([36cd2e9](https://github.com/HankHuang0516/EClaw/commit/36cd2e9802be4c7ebb03d3024617fa74aca48ffd))
* **ios:** add Tutorial & Intro entry in Settings ([#2800](https://github.com/HankHuang0516/EClaw/issues/2800)) ([ed83e51](https://github.com/HankHuang0516/EClaw/commit/ed83e51d043bf4cd5865f38dc95a91ed54820d6c))
* **landing:** add Watch Full Demo CTA below hero video ([#2799](https://github.com/HankHuang0516/EClaw/issues/2799)) ([66107c9](https://github.com/HankHuang0516/EClaw/commit/66107c954727551fd34d989a4674daaad9b63968))
* **footer:** add Watch Intro Video link in Info column ([#2798](https://github.com/HankHuang0516/EClaw/issues/2798)) ([d7c6d59](https://github.com/HankHuang0516/EClaw/commit/d7c6d596b69c6a5b257bf1f7a792a407ef9712ad))
* **i18n:** ar iter-2 — fill 623 missing keys against en source ([#2847](https://github.com/HankHuang0516/EClaw/issues/2847)) ([ee94a7a](https://github.com/HankHuang0516/EClaw/commit/ee94a7ae6812b5163efe4284ee4907ca32302f5c))
* **kanban:** backlog launch-gate flag to suppress L1/L2/L3 escalation ([#2855](https://github.com/HankHuang0516/EClaw/issues/2855)) ([cb8bf1b](https://github.com/HankHuang0516/EClaw/commit/cb8bf1bb6421f25214f65e129a8cadccc49cc266)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#4](https://github.com/HankHuang0516/EClaw/issues/4) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **companion:** bridge crafter-station/petdex gallery (1784 pets) ([#2601](https://github.com/HankHuang0516/EClaw/issues/2601)) ([2e245be](https://github.com/HankHuang0516/EClaw/commit/2e245bea6dd47ea7361b927d389188a3c23b6bb3))
* **promo:** chat avatar size feature landing page (self-hosted MP4) ([#2722](https://github.com/HankHuang0516/EClaw/issues/2722)) ([3852210](https://github.com/HankHuang0516/EClaw/commit/3852210d355704d018e3daca6b5f9512a011b210)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **kanban:** cron-spawn jitter + lane backpressure to prevent same-tick wedge ([#2791](https://github.com/HankHuang0516/EClaw/issues/2791)) ([9f414a7](https://github.com/HankHuang0516/EClaw/commit/9f414a731d6393672a0a4189c7b408c529ae5e12)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **promo:** embed daily eclaw video 2026-05-14 ([#2786](https://github.com/HankHuang0516/EClaw/issues/2786)) ([718a814](https://github.com/HankHuang0516/EClaw/commit/718a814ab16850bc2b33a1b303841e2c4378ecfa)), closes [#2782](https://github.com/HankHuang0516/EClaw/issues/2782) [#2693](https://github.com/HankHuang0516/EClaw/issues/2693)
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **info:** embed promo video at top of Quick Start tab ([#2797](https://github.com/HankHuang0516/EClaw/issues/2797)) ([047679f](https://github.com/HankHuang0516/EClaw/commit/047679fd57ab9949eaeacea414d5611e71afe041))
* **rental:** enforce strict rebind refunds ([#2703](https://github.com/HankHuang0516/EClaw/issues/2703)) ([a1859c5](https://github.com/HankHuang0516/EClaw/commit/a1859c50e6fb3991d7a8051491502d824a14a116))
* **portal:** group task chip actions ([#2825](https://github.com/HankHuang0516/EClaw/issues/2825)) ([5db5c59](https://github.com/HankHuang0516/EClaw/commit/5db5c59b32b8635f1412205faf0c2f9164d3d5d4))
* **portal:** info-guide-rules + info-guide-soul slide pair ([#2793](https://github.com/HankHuang0516/EClaw/issues/2793)) ([1c8bddc](https://github.com/HankHuang0516/EClaw/commit/1c8bddc4c185054b2b60088498e3d45509117127)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **chat:** link card previews to kanban ([#2754](https://github.com/HankHuang0516/EClaw/issues/2754)) ([2261240](https://github.com/HankHuang0516/EClaw/commit/22612402c2e95efb07246629e81a849be41ee9c7))
* **mission:** link notes to kanban cards ([#2723](https://github.com/HankHuang0516/EClaw/issues/2723)) ([b36dc18](https://github.com/HankHuang0516/EClaw/commit/b36dc18f3a8facf12e0b6046351c222f1e99dc55))
* **mindmap:** mission.html link to /portal/mindmap.html + deprecate /api/mission/mindmap ([#2685](https://github.com/HankHuang0516/EClaw/issues/2685)) ([11e297b](https://github.com/HankHuang0516/EClaw/commit/11e297bab1c9b56fcde3027d6500b7c58891bf18)), closes [#2680](https://github.com/HankHuang0516/EClaw/issues/2680) [#2684](https://github.com/HankHuang0516/EClaw/issues/2684)
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **settings:** per-entity nudge override UI (Phase 2) ([#2837](https://github.com/HankHuang0516/EClaw/issues/2837)) ([ea7662b](https://github.com/HankHuang0516/EClaw/commit/ea7662b0858882dae461e1387f711895924f9ab8)), closes [3/#4](https://github.com/HankHuang0516/EClaw/issues/4)
* **kanban:** per-entity nudge overrides (Phase 2 of card_e066cb6b) ([#2836](https://github.com/HankHuang0516/EClaw/issues/2836)) ([0425f80](https://github.com/HankHuang0516/EClaw/commit/0425f80bc1169c0d506b665659c8676695c45553))
* **avatar:** petdx render on card-holder my-cards (Phase 1b) ([#2621](https://github.com/HankHuang0516/EClaw/issues/2621)) ([f78ba8b](https://github.com/HankHuang0516/EClaw/commit/f78ba8b18acc426936ab6d8a82ca7541effea00d))
* **avatar:** petdx render on dashboard entity grid / org chart / bindings (Phase 1b) ([#2622](https://github.com/HankHuang0516/EClaw/issues/2622)) ([f417749](https://github.com/HankHuang0516/EClaw/commit/f41774914451048e8cd76e9ae30416a0642e173b)), closes [#2620](https://github.com/HankHuang0516/EClaw/issues/2620) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621)
* **avatar:** petdx render on kanban auto-assign / pulse / comment avatars (Phase 1b) ([#2624](https://github.com/HankHuang0516/EClaw/issues/2624)) ([6bff5f8](https://github.com/HankHuang0516/EClaw/commit/6bff5f80440d0bd91a6b1721cde9478d685c4d46))
* **avatar:** petdx render on mission skill/rule/soul entity dialogs (Phase 1b) ([#2623](https://github.com/HankHuang0516/EClaw/issues/2623)) ([129327b](https://github.com/HankHuang0516/EClaw/commit/129327bc7b91056659f1ab7e8d5e3f5260d951fb))
* **mindmap:** portal/mindmap.html force-graph prototype ([#129](https://github.com/HankHuang0516/EClaw/issues/129)) ([#2681](https://github.com/HankHuang0516/EClaw/issues/2681)) ([0f15e69](https://github.com/HankHuang0516/EClaw/commit/0f15e6930f0697c37fa08f3219edb8f9e499837f)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **portal:** redo nagoya trip page in professional tour-guide style ([#2691](https://github.com/HankHuang0516/EClaw/issues/2691)) ([b2378c0](https://github.com/HankHuang0516/EClaw/commit/b2378c06ee20fa9cccfdceceb1a4c9e0b3072f59))
* **i18n:** remove ms+hi orphan keys from i18n.js ([#2849](https://github.com/HankHuang0516/EClaw/issues/2849)) ([320176c](https://github.com/HankHuang0516/EClaw/commit/320176c06a3cfd8631e2a82ad02a6bd6a9af0389))
* **avatar:** render selected petdx companion in chat avatars ([#2620](https://github.com/HankHuang0516/EClaw/issues/2620)) ([0bdd046](https://github.com/HankHuang0516/EClaw/commit/0bdd046fe1b1c428e32edda366ff112c08927f4c))
* **home:** replace native home with WebView hosting dashboard.html ([#2634](https://github.com/HankHuang0516/EClaw/issues/2634)) ([e69ea81](https://github.com/HankHuang0516/EClaw/commit/e69ea8160c239b083a83d6dc83a4f1c3f901c863))
* **app:** route chat mission jumps through native tabs ([#2824](https://github.com/HankHuang0516/EClaw/issues/2824)) ([deb07b6](https://github.com/HankHuang0516/EClaw/commit/deb07b69a9ecca632fe27278de537f1d85234e94))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **chat:** support message deep links ([#2719](https://github.com/HankHuang0516/EClaw/issues/2719)) ([2dc0f1e](https://github.com/HankHuang0516/EClaw/commit/2dc0f1eeb259e1a0848db4a03186b989372cd91c))
* **mission:** support note deep links ([#2717](https://github.com/HankHuang0516/EClaw/issues/2717)) ([2efd3a5](https://github.com/HankHuang0516/EClaw/commit/2efd3a5e741217a07c0b0ac54a0ddd010e0ebe23))
* **share-chat:** twitter card + per-bot og:image/twitter:* in SSR ([#2609](https://github.com/HankHuang0516/EClaw/issues/2609)) ([6cdc853](https://github.com/HankHuang0516/EClaw/commit/6cdc853dc884cdb95bd47214942768981f218ae0))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))
* **settings:** wire petdx avatar into channel-account chips ([#2626](https://github.com/HankHuang0516/EClaw/issues/2626)) ([88aec77](https://github.com/HankHuang0516/EClaw/commit/88aec772628c240e97b336bb5820892ad632d1ae))
* **files:** wire petdx avatar into entity filter & per-file badges ([#2627](https://github.com/HankHuang0516/EClaw/issues/2627)) ([5b3e5cc](https://github.com/HankHuang0516/EClaw/commit/5b3e5cc542d9da69bb4e92500fd03a542ea33f00))
* **mindmap:** wrap hardcoded zh-TW UI strings with i18n t() ([#2607](https://github.com/HankHuang0516/EClaw/issues/2607)) ([166af87](https://github.com/HankHuang0516/EClaw/commit/166af8772b2121a24aaf34a83b3de970e9b3b571)), closes [#2606](https://github.com/HankHuang0516/EClaw/issues/2606)
* **i18n:** zh-TW backfill 8 keys (soft-pause + chat + invite + wallet) ([#2815](https://github.com/HankHuang0516/EClaw/issues/2815)) ([a2dd574](https://github.com/HankHuang0516/EClaw/commit/a2dd5743ce8d43a4b6ace9a2fd4b52568180d6c5))


### Performance Improvements

* **mindmap:** force-graph hardening for 1000/2000-node graphs ([#2684](https://github.com/HankHuang0516/EClaw/issues/2684)) ([da8b1c8](https://github.com/HankHuang0516/EClaw/commit/da8b1c8f947ab8bc8fa455c1962a91146623a1fc))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-20)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **notifications:** add kanban_done + kanban_done_auto toggles to Android Settings ([#2636](https://github.com/HankHuang0516/EClaw/issues/2636)) ([a710909](https://github.com/HankHuang0516/EClaw/commit/a7109095e3393b8564e7ef1b23d382a4fbb944b8))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **i18n:** ar block — fix 27 broken entries (CJK leaks + truncated HTML) ([#2851](https://github.com/HankHuang0516/EClaw/issues/2851)) ([5b19175](https://github.com/HankHuang0516/EClaw/commit/5b19175d712d00d16fcec00b749035c4beae7a5c))
* **chat:** atomic-load target bar (await contacts before first render) ([#2831](https://github.com/HankHuang0516/EClaw/issues/2831)) ([5f529e6](https://github.com/HankHuang0516/EClaw/commit/5f529e6b772eacc38ba1de69b44258a05f0d816a)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2](https://github.com/HankHuang0516/EClaw/issues/2)
* **i18n:** clear batch 1 residual missing keys ([#2790](https://github.com/HankHuang0516/EClaw/issues/2790)) ([211030e](https://github.com/HankHuang0516/EClaw/commit/211030e0b0b6a865c11f0c4ed60dc4e356d43b7a))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **kanban:** comment input no longer overlaps last comment in card detail (PR [#2678](https://github.com/HankHuang0516/EClaw/issues/2678)) ([fba91fc](https://github.com/HankHuang0516/EClaw/commit/fba91fca15402b453a0db5ee857c0b16e6087055))
* **chat:** compact 20px avatar in target bar (App WebView only shows [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2](https://github.com/HankHuang0516/EClaw/issues/2)) ([#2830](https://github.com/HankHuang0516/EClaw/issues/2830)) ([42c7543](https://github.com/HankHuang0516/EClaw/commit/42c7543b4a78a7abf3f5f7535eb9bc6142cd0fe2)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **portal:** complete 401 redirect sweep + mobile UIUX truncation ([#2842](https://github.com/HankHuang0516/EClaw/issues/2842)) ([f9799ba](https://github.com/HankHuang0516/EClaw/commit/f9799ba42498b109f0a8a70e80836aa6da51e216)), closes [#2833](https://github.com/HankHuang0516/EClaw/issues/2833) [#2845](https://github.com/HankHuang0516/EClaw/issues/2845) [#2844](https://github.com/HankHuang0516/EClaw/issues/2844) [#2843](https://github.com/HankHuang0516/EClaw/issues/2843)
* **uiux:** continue qa mobile readability sweep ([#2854](https://github.com/HankHuang0516/EClaw/issues/2854)) ([57606ff](https://github.com/HankHuang0516/EClaw/commit/57606ffe3e543b07a026aacc53c4b470c9a7825b))
* **i18n:** cover dynamic portal wrapper keys ([#2807](https://github.com/HankHuang0516/EClaw/issues/2807)) ([4c711cc](https://github.com/HankHuang0516/EClaw/commit/4c711cc4009300ffe4e8933a98ee01cd0fdd6aeb))
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **petdx:** drop dark-grey loading placeholder + preload sprite WEBP ([#2628](https://github.com/HankHuang0516/EClaw/issues/2628)) ([59cef38](https://github.com/HankHuang0516/EClaw/commit/59cef387bd69ca99d7d15c86a1364856d3849ad8)), closes [#1a1a1a](https://github.com/HankHuang0516/EClaw/issues/1a1a1a)
* **security:** escape innerHTML in chat modal error messages ([#2819](https://github.com/HankHuang0516/EClaw/issues/2819)) ([dce07ad](https://github.com/HankHuang0516/EClaw/commit/dce07adde64795916dba977ae23e46f3371ce7ed)), closes [#2809](https://github.com/HankHuang0516/EClaw/issues/2809) [#2810](https://github.com/HankHuang0516/EClaw/issues/2810) [#2809](https://github.com/HankHuang0516/EClaw/issues/2809) [#2810](https://github.com/HankHuang0516/EClaw/issues/2810)
* **entities:** expose botSecret to owner so wallpaper service can poll companions ([#2615](https://github.com/HankHuang0516/EClaw/issues/2615)) ([04470fc](https://github.com/HankHuang0516/EClaw/commit/04470fce8f8c3fce2b1ba8b243e776606f107502))
* **rental:** expose owner_public_code in marketplace so plaza CTA can route ([#2616](https://github.com/HankHuang0516/EClaw/issues/2616)) ([4d1372f](https://github.com/HankHuang0516/EClaw/commit/4d1372f717d93cab65543e87c852e74e9fb67071)), closes [#2610](https://github.com/HankHuang0516/EClaw/issues/2610)
* **mindmap:** fallback to device scope when entityId is null ([#2728](https://github.com/HankHuang0516/EClaw/issues/2728)) ([7572312](https://github.com/HankHuang0516/EClaw/commit/7572312433d3d75fc245eda48a28919ce14bd927))
* **i18n:** fill Spanish drift keys ([#2751](https://github.com/HankHuang0516/EClaw/issues/2751)) ([0ad0ee5](https://github.com/HankHuang0516/EClaw/commit/0ad0ee55f7fac3e6ac46d891539950dab4d553cc))
* **portal:** fit embedded org chart to mobile viewport ([#2674](https://github.com/HankHuang0516/EClaw/issues/2674)) ([1c4e1b4](https://github.com/HankHuang0516/EClaw/commit/1c4e1b413ea7027b4cd4b8ecda981b0d0e12e66b))
* **i18n:** fix 6 trailing-comma syntax errors in 10-locale batch ([#2771](https://github.com/HankHuang0516/EClaw/issues/2771)) ([b27c6ca](https://github.com/HankHuang0516/EClaw/commit/b27c6ca204bf813e406c54ce3a2532a5f1f031b3))
* **kanban:** GET card returns latest 50 comments + comments endpoint exposes total ([#2816](https://github.com/HankHuang0516/EClaw/issues/2816)) ([c4d83f7](https://github.com/HankHuang0516/EClaw/commit/c4d83f777a1cd26aea0936e4316aa35c52822eef))
* **uiux:** harden chat previews and roster preview ([#2769](https://github.com/HankHuang0516/EClaw/issues/2769)) ([466d4d3](https://github.com/HankHuang0516/EClaw/commit/466d4d3ef81c628d3f58db64323946053d7bf61c))
* **mention-parser:** ignore @-mentions inside markdown code spans ([#2645](https://github.com/HankHuang0516/EClaw/issues/2645)) ([8da19d4](https://github.com/HankHuang0516/EClaw/commit/8da19d4a79ceb4152bf2144ee0847c61ce3e1def)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **kanban:** lazy-load dependency chips via IntersectionObserver ([#2632](https://github.com/HankHuang0516/EClaw/issues/2632)) ([20586b4](https://github.com/HankHuang0516/EClaw/commit/20586b43357335f9eb6a190c02d58c8e36b58aba)), closes [#2631](https://github.com/HankHuang0516/EClaw/issues/2631)
* **kanban:** make card sorting deterministic ([#2756](https://github.com/HankHuang0516/EClaw/issues/2756)) ([48e2117](https://github.com/HankHuang0516/EClaw/commit/48e2117b64e37f05dc635e0a3b67bfd43cbe48f5))
* **org-chart:** notify affected bots on hierarchy change ([#2812](https://github.com/HankHuang0516/EClaw/issues/2812)) ([55675fd](https://github.com/HankHuang0516/EClaw/commit/55675fdf4487494d729a29524b32bd81b756a00c)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** notify reviewer on manual /move → review ([#2753](https://github.com/HankHuang0516/EClaw/issues/2753)) ([6cbbb4e](https://github.com/HankHuang0516/EClaw/commit/6cbbb4ee8c0d4d8ad54df2e9b5faaa3699bd530f))
* **wallpaper:** off-load spritesheet fetch to IO so per-petdx sprites actually render ([#2618](https://github.com/HankHuang0516/EClaw/issues/2618)) ([61b832c](https://github.com/HankHuang0516/EClaw/commit/61b832c9fa8a1d0caab810ccc942d85c63349267)), closes [#2615](https://github.com/HankHuang0516/EClaw/issues/2615) [#2577](https://github.com/HankHuang0516/EClaw/issues/2577)
* **security:** patch P0 sanitize-html XSS + P1 protobufjs + exam.html XSS ([#2829](https://github.com/HankHuang0516/EClaw/issues/2829)) ([c71b871](https://github.com/HankHuang0516/EClaw/commit/c71b871a045887375dd0d26d1a3280a0891a89ad))
* **portal:** petdx-browser cookie-session fallback for device-login ([#2757](https://github.com/HankHuang0516/EClaw/issues/2757)) ([ca275f4](https://github.com/HankHuang0516/EClaw/commit/ca275f4519835da0c7ad71c588908a18f6f138d8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **api:** platform-stats 500 + entity/lookup publicCode alias ([#2809](https://github.com/HankHuang0516/EClaw/issues/2809), [#2810](https://github.com/HankHuang0516/EClaw/issues/2810)) ([#2818](https://github.com/HankHuang0516/EClaw/issues/2818)) ([f99fd17](https://github.com/HankHuang0516/EClaw/commit/f99fd17b2b1c32d88daa2510ff66d714c1a53edc))
* **i18n:** positional format specifiers for feedback_result_logs (7 locales) ([#2597](https://github.com/HankHuang0516/EClaw/issues/2597)) ([21aedc7](https://github.com/HankHuang0516/EClaw/commit/21aedc7eebc7a2839e340136f38dfdfd4dabb9dc))
* **avatar-petdx:** preserve descriptor across transient API failures (flicker) ([#2625](https://github.com/HankHuang0516/EClaw/issues/2625)) ([7b1c606](https://github.com/HankHuang0516/EClaw/commit/7b1c606514f7698d72ec95cf6c556e4043966186))
* **chat:** preserve scroll anchor while reading history ([#2693](https://github.com/HankHuang0516/EClaw/issues/2693)) ([945fdb7](https://github.com/HankHuang0516/EClaw/commit/945fdb7192b791b31882e1e75568dd8b11e4686f))
* **promo:** pull video embed from /promo-chat-avatar.html ([#2724](https://github.com/HankHuang0516/EClaw/issues/2724)) ([2afabc8](https://github.com/HankHuang0516/EClaw/commit/2afabc8c5ff8b25218a7cb857e8adfa572c8e9d5))
* **kanban:** realign stale recurring schedules ([#2785](https://github.com/HankHuang0516/EClaw/issues/2785)) ([ab8ee25](https://github.com/HankHuang0516/EClaw/commit/ab8ee250a9b37f3d3e838bb01d8866c8d2b78231))
* **portal:** reduce QA-discovered request fanout ([#2656](https://github.com/HankHuang0516/EClaw/issues/2656)) ([1e46d6b](https://github.com/HankHuang0516/EClaw/commit/1e46d6bab61e58c65b452b6503d953f8dddeee75))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **portal:** remove org chart fit scale floor ([#2676](https://github.com/HankHuang0516/EClaw/issues/2676)) ([0f01606](https://github.com/HankHuang0516/EClaw/commit/0f016068b963bb5f800a02f28817c7174979d913))
* **i18n:** rename mm_empty_title → mm_state_empty_title in mindmap.html ([#2683](https://github.com/HankHuang0516/EClaw/issues/2683)) ([c79c109](https://github.com/HankHuang0516/EClaw/commit/c79c109bea23142e8a6d9ace976d105af1280ec9))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **chat:** render mention avatars with companion renderer ([#2633](https://github.com/HankHuang0516/EClaw/issues/2633)) ([03e205f](https://github.com/HankHuang0516/EClaw/commit/03e205f663ecd2c2f443d4009dd5af0093f0bbbb))
* **kanban:** reserve mobile comments panel height ([#2782](https://github.com/HankHuang0516/EClaw/issues/2782)) ([ce8662d](https://github.com/HankHuang0516/EClaw/commit/ce8662d362422fdd25037f1deb61dbed9425e2f9))
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* scheduled audit 2026-05-13 — 6 bugs, XSS, i18n ([#2668](https://github.com/HankHuang0516/EClaw/issues/2668)) ([21dd513](https://github.com/HankHuang0516/EClaw/commit/21dd513b4464738de29164265437435ba6cc4817)), closes [#2605](https://github.com/HankHuang0516/EClaw/issues/2605) [#2608](https://github.com/HankHuang0516/EClaw/issues/2608) [#2600](https://github.com/HankHuang0516/EClaw/issues/2600) [#2599](https://github.com/HankHuang0516/EClaw/issues/2599) [#2598](https://github.com/HankHuang0516/EClaw/issues/2598)
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **chat:** smart-chip preview falls back to inline c.comments when /comments fails (PR [#2677](https://github.com/HankHuang0516/EClaw/issues/2677)) ([7f4dffd](https://github.com/HankHuang0516/EClaw/commit/7f4dffd2c83ea86f296b8fa0610f0e67c9f1af11))
* **kanban:** stabilize comment detail viewport ([#2796](https://github.com/HankHuang0516/EClaw/issues/2796)) ([0a10aad](https://github.com/HankHuang0516/EClaw/commit/0a10aadb5a5b12ff23454c16d5c88183b94ad7d7))
* **wallpaper:** stop Android live wallpaper flashing default lobster on companion change ([#2629](https://github.com/HankHuang0516/EClaw/issues/2629)) ([8b4f66f](https://github.com/HankHuang0516/EClaw/commit/8b4f66fcb335bf43128f924b761b6337c817095b)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **chat:** stop chat.html bouncing to dashboard via /api/rental/health-status 401 race ([#2833](https://github.com/HankHuang0516/EClaw/issues/2833)) ([c422406](https://github.com/HankHuang0516/EClaw/commit/c4224067cdcfe7f3e22ab95007c7563dac4196ac))
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **app:** WebView pages honor app-selected locale via ?lang= URL param ([#2672](https://github.com/HankHuang0516/EClaw/issues/2672)) ([8ed8757](https://github.com/HankHuang0516/EClaw/commit/8ed8757aec5bf214e837cc0d81bf2b23f1993a91)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* **community:** 1-click chat button on bot cards + utm tagging ([#2610](https://github.com/HankHuang0516/EClaw/issues/2610)) ([eee97b0](https://github.com/HankHuang0516/EClaw/commit/eee97b0e2e4e74945ec24f218a69a52800b97a66))
* **chat:** accept ?messageId= as deep-link alias ([#2838](https://github.com/HankHuang0516/EClaw/issues/2838)) ([1785a87](https://github.com/HankHuang0516/EClaw/commit/1785a87310426637fd10df83754fb9924c45207f))
* **chat:** add avatar size preference ([#2714](https://github.com/HankHuang0516/EClaw/issues/2714)) ([6fe164a](https://github.com/HankHuang0516/EClaw/commit/6fe164ad8b22fa576d2dd9ad37c0d9fc295b5a83))
* **dashboard:** add Claude and Codex channel guides ([#2640](https://github.com/HankHuang0516/EClaw/issues/2640)) ([c64e4c4](https://github.com/HankHuang0516/EClaw/commit/c64e4c4afc78db58c5cd578f00486dd7b2fd3311))
* **dashboard:** add Claude Code channel guide card ([#2667](https://github.com/HankHuang0516/EClaw/issues/2667)) ([d70d75c](https://github.com/HankHuang0516/EClaw/commit/d70d75c0c8caa8a540358a9aab4556b8c1927a5c))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* **kanban:** add device-scoped card tags ([#2773](https://github.com/HankHuang0516/EClaw/issues/2773)) ([53a387e](https://github.com/HankHuang0516/EClaw/commit/53a387e67ba7bb4f6bed1c427000c4ae8666577a))
* **portal:** add entity selector to petdx-browser ([#2602](https://github.com/HankHuang0516/EClaw/issues/2602)) ([3fa067e](https://github.com/HankHuang0516/EClaw/commit/3fa067e00b38829b48a37cecd33ee81a9a1122d9))
* **kanban:** add explicit card links ([#2721](https://github.com/HankHuang0516/EClaw/issues/2721)) ([ef9f812](https://github.com/HankHuang0516/EClaw/commit/ef9f812a3fcf39efd07fd158ce90951bdd045ac7))
* **kanban:** add explicit done-card reopen flow ([#2801](https://github.com/HankHuang0516/EClaw/issues/2801)) ([5080aac](https://github.com/HankHuang0516/EClaw/commit/5080aacb75047c0deaa379ee708ec85465afd57c))
* **mindmap:** add GET /api/mindmap/graph force-graph projection ([#2680](https://github.com/HankHuang0516/EClaw/issues/2680)) ([a00b2e7](https://github.com/HankHuang0516/EClaw/commit/a00b2e775af2c4c98cd157f760ad87aeeee469f0)), closes [#2679](https://github.com/HankHuang0516/EClaw/issues/2679) [#2679](https://github.com/HankHuang0516/EClaw/issues/2679)
* **dashboard:** add Hermes channel promo card ([#2708](https://github.com/HankHuang0516/EClaw/issues/2708)) ([337aca1](https://github.com/HankHuang0516/EClaw/commit/337aca153d5a1cd7e888c065f00ae54db7872d91))
* **rental:** add listing soft pause ([#2781](https://github.com/HankHuang0516/EClaw/issues/2781)) ([6586b72](https://github.com/HankHuang0516/EClaw/commit/6586b72717ddb1637d91cd3242c8d2ff554f62b4))
* **portal:** add Nagoya 5D4N trip static cross-ref page ([#2689](https://github.com/HankHuang0516/EClaw/issues/2689)) ([2e0efb6](https://github.com/HankHuang0516/EClaw/commit/2e0efb6dcdaff52226cc8854a96747000b12bdff))
* **portal:** add Nagoya trip map links and image lightbox ([#2821](https://github.com/HankHuang0516/EClaw/issues/2821)) ([3e40955](https://github.com/HankHuang0516/EClaw/commit/3e40955650a05f45a6b9f7e39e73847705424a03))
* **portal/nagoya:** add parking shortcut buttons next to itinerary places ([#2826](https://github.com/HankHuang0516/EClaw/issues/2826)) ([63968c5](https://github.com/HankHuang0516/EClaw/commit/63968c554d046afc8d978de74e3aacbf7700500d))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **settings:** add rental roster management preview ([#2758](https://github.com/HankHuang0516/EClaw/issues/2758)) ([9706e59](https://github.com/HankHuang0516/EClaw/commit/9706e59ded140a90a6e02348124282bc69d89001))
* **rental:** add renter health chat indicator ([#2690](https://github.com/HankHuang0516/EClaw/issues/2690)) ([36cd2e9](https://github.com/HankHuang0516/EClaw/commit/36cd2e9802be4c7ebb03d3024617fa74aca48ffd))
* **ios:** add Tutorial & Intro entry in Settings ([#2800](https://github.com/HankHuang0516/EClaw/issues/2800)) ([ed83e51](https://github.com/HankHuang0516/EClaw/commit/ed83e51d043bf4cd5865f38dc95a91ed54820d6c))
* **landing:** add Watch Full Demo CTA below hero video ([#2799](https://github.com/HankHuang0516/EClaw/issues/2799)) ([66107c9](https://github.com/HankHuang0516/EClaw/commit/66107c954727551fd34d989a4674daaad9b63968))
* **footer:** add Watch Intro Video link in Info column ([#2798](https://github.com/HankHuang0516/EClaw/issues/2798)) ([d7c6d59](https://github.com/HankHuang0516/EClaw/commit/d7c6d596b69c6a5b257bf1f7a792a407ef9712ad))
* **i18n:** ar iter-2 — fill 623 missing keys against en source ([#2847](https://github.com/HankHuang0516/EClaw/issues/2847)) ([ee94a7a](https://github.com/HankHuang0516/EClaw/commit/ee94a7ae6812b5163efe4284ee4907ca32302f5c))
* **kanban:** backlog launch-gate flag to suppress L1/L2/L3 escalation ([#2855](https://github.com/HankHuang0516/EClaw/issues/2855)) ([cb8bf1b](https://github.com/HankHuang0516/EClaw/commit/cb8bf1bb6421f25214f65e129a8cadccc49cc266)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#4](https://github.com/HankHuang0516/EClaw/issues/4) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **companion:** bridge crafter-station/petdex gallery (1784 pets) ([#2601](https://github.com/HankHuang0516/EClaw/issues/2601)) ([2e245be](https://github.com/HankHuang0516/EClaw/commit/2e245bea6dd47ea7361b927d389188a3c23b6bb3))
* **promo:** chat avatar size feature landing page (self-hosted MP4) ([#2722](https://github.com/HankHuang0516/EClaw/issues/2722)) ([3852210](https://github.com/HankHuang0516/EClaw/commit/3852210d355704d018e3daca6b5f9512a011b210)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **kanban:** cron-spawn jitter + lane backpressure to prevent same-tick wedge ([#2791](https://github.com/HankHuang0516/EClaw/issues/2791)) ([9f414a7](https://github.com/HankHuang0516/EClaw/commit/9f414a731d6393672a0a4189c7b408c529ae5e12)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **promo:** embed daily eclaw video 2026-05-14 ([#2786](https://github.com/HankHuang0516/EClaw/issues/2786)) ([718a814](https://github.com/HankHuang0516/EClaw/commit/718a814ab16850bc2b33a1b303841e2c4378ecfa)), closes [#2782](https://github.com/HankHuang0516/EClaw/issues/2782) [#2693](https://github.com/HankHuang0516/EClaw/issues/2693)
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **info:** embed promo video at top of Quick Start tab ([#2797](https://github.com/HankHuang0516/EClaw/issues/2797)) ([047679f](https://github.com/HankHuang0516/EClaw/commit/047679fd57ab9949eaeacea414d5611e71afe041))
* **rental:** enforce strict rebind refunds ([#2703](https://github.com/HankHuang0516/EClaw/issues/2703)) ([a1859c5](https://github.com/HankHuang0516/EClaw/commit/a1859c50e6fb3991d7a8051491502d824a14a116))
* **portal:** group task chip actions ([#2825](https://github.com/HankHuang0516/EClaw/issues/2825)) ([5db5c59](https://github.com/HankHuang0516/EClaw/commit/5db5c59b32b8635f1412205faf0c2f9164d3d5d4))
* **portal:** info-guide-rules + info-guide-soul slide pair ([#2793](https://github.com/HankHuang0516/EClaw/issues/2793)) ([1c8bddc](https://github.com/HankHuang0516/EClaw/commit/1c8bddc4c185054b2b60088498e3d45509117127)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **chat:** link card previews to kanban ([#2754](https://github.com/HankHuang0516/EClaw/issues/2754)) ([2261240](https://github.com/HankHuang0516/EClaw/commit/22612402c2e95efb07246629e81a849be41ee9c7))
* **mission:** link notes to kanban cards ([#2723](https://github.com/HankHuang0516/EClaw/issues/2723)) ([b36dc18](https://github.com/HankHuang0516/EClaw/commit/b36dc18f3a8facf12e0b6046351c222f1e99dc55))
* **mindmap:** mission.html link to /portal/mindmap.html + deprecate /api/mission/mindmap ([#2685](https://github.com/HankHuang0516/EClaw/issues/2685)) ([11e297b](https://github.com/HankHuang0516/EClaw/commit/11e297bab1c9b56fcde3027d6500b7c58891bf18)), closes [#2680](https://github.com/HankHuang0516/EClaw/issues/2680) [#2684](https://github.com/HankHuang0516/EClaw/issues/2684)
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **settings:** per-entity nudge override UI (Phase 2) ([#2837](https://github.com/HankHuang0516/EClaw/issues/2837)) ([ea7662b](https://github.com/HankHuang0516/EClaw/commit/ea7662b0858882dae461e1387f711895924f9ab8)), closes [3/#4](https://github.com/HankHuang0516/EClaw/issues/4)
* **kanban:** per-entity nudge overrides (Phase 2 of card_e066cb6b) ([#2836](https://github.com/HankHuang0516/EClaw/issues/2836)) ([0425f80](https://github.com/HankHuang0516/EClaw/commit/0425f80bc1169c0d506b665659c8676695c45553))
* **avatar:** petdx render on card-holder my-cards (Phase 1b) ([#2621](https://github.com/HankHuang0516/EClaw/issues/2621)) ([f78ba8b](https://github.com/HankHuang0516/EClaw/commit/f78ba8b18acc426936ab6d8a82ca7541effea00d))
* **avatar:** petdx render on dashboard entity grid / org chart / bindings (Phase 1b) ([#2622](https://github.com/HankHuang0516/EClaw/issues/2622)) ([f417749](https://github.com/HankHuang0516/EClaw/commit/f41774914451048e8cd76e9ae30416a0642e173b)), closes [#2620](https://github.com/HankHuang0516/EClaw/issues/2620) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621)
* **avatar:** petdx render on kanban auto-assign / pulse / comment avatars (Phase 1b) ([#2624](https://github.com/HankHuang0516/EClaw/issues/2624)) ([6bff5f8](https://github.com/HankHuang0516/EClaw/commit/6bff5f80440d0bd91a6b1721cde9478d685c4d46))
* **avatar:** petdx render on mission skill/rule/soul entity dialogs (Phase 1b) ([#2623](https://github.com/HankHuang0516/EClaw/issues/2623)) ([129327b](https://github.com/HankHuang0516/EClaw/commit/129327bc7b91056659f1ab7e8d5e3f5260d951fb))
* **mindmap:** portal/mindmap.html force-graph prototype ([#129](https://github.com/HankHuang0516/EClaw/issues/129)) ([#2681](https://github.com/HankHuang0516/EClaw/issues/2681)) ([0f15e69](https://github.com/HankHuang0516/EClaw/commit/0f15e6930f0697c37fa08f3219edb8f9e499837f)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **portal:** redo nagoya trip page in professional tour-guide style ([#2691](https://github.com/HankHuang0516/EClaw/issues/2691)) ([b2378c0](https://github.com/HankHuang0516/EClaw/commit/b2378c06ee20fa9cccfdceceb1a4c9e0b3072f59))
* **i18n:** remove ms+hi orphan keys from i18n.js ([#2849](https://github.com/HankHuang0516/EClaw/issues/2849)) ([320176c](https://github.com/HankHuang0516/EClaw/commit/320176c06a3cfd8631e2a82ad02a6bd6a9af0389))
* **avatar:** render selected petdx companion in chat avatars ([#2620](https://github.com/HankHuang0516/EClaw/issues/2620)) ([0bdd046](https://github.com/HankHuang0516/EClaw/commit/0bdd046fe1b1c428e32edda366ff112c08927f4c))
* **home:** replace native home with WebView hosting dashboard.html ([#2634](https://github.com/HankHuang0516/EClaw/issues/2634)) ([e69ea81](https://github.com/HankHuang0516/EClaw/commit/e69ea8160c239b083a83d6dc83a4f1c3f901c863))
* **app:** route chat mission jumps through native tabs ([#2824](https://github.com/HankHuang0516/EClaw/issues/2824)) ([deb07b6](https://github.com/HankHuang0516/EClaw/commit/deb07b69a9ecca632fe27278de537f1d85234e94))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **chat:** support message deep links ([#2719](https://github.com/HankHuang0516/EClaw/issues/2719)) ([2dc0f1e](https://github.com/HankHuang0516/EClaw/commit/2dc0f1eeb259e1a0848db4a03186b989372cd91c))
* **mission:** support note deep links ([#2717](https://github.com/HankHuang0516/EClaw/issues/2717)) ([2efd3a5](https://github.com/HankHuang0516/EClaw/commit/2efd3a5e741217a07c0b0ac54a0ddd010e0ebe23))
* **share-chat:** twitter card + per-bot og:image/twitter:* in SSR ([#2609](https://github.com/HankHuang0516/EClaw/issues/2609)) ([6cdc853](https://github.com/HankHuang0516/EClaw/commit/6cdc853dc884cdb95bd47214942768981f218ae0))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))
* **settings:** wire petdx avatar into channel-account chips ([#2626](https://github.com/HankHuang0516/EClaw/issues/2626)) ([88aec77](https://github.com/HankHuang0516/EClaw/commit/88aec772628c240e97b336bb5820892ad632d1ae))
* **files:** wire petdx avatar into entity filter & per-file badges ([#2627](https://github.com/HankHuang0516/EClaw/issues/2627)) ([5b3e5cc](https://github.com/HankHuang0516/EClaw/commit/5b3e5cc542d9da69bb4e92500fd03a542ea33f00))
* **mindmap:** wrap hardcoded zh-TW UI strings with i18n t() ([#2607](https://github.com/HankHuang0516/EClaw/issues/2607)) ([166af87](https://github.com/HankHuang0516/EClaw/commit/166af8772b2121a24aaf34a83b3de970e9b3b571)), closes [#2606](https://github.com/HankHuang0516/EClaw/issues/2606)
* **i18n:** zh-TW backfill 8 keys (soft-pause + chat + invite + wallet) ([#2815](https://github.com/HankHuang0516/EClaw/issues/2815)) ([a2dd574](https://github.com/HankHuang0516/EClaw/commit/a2dd5743ce8d43a4b6ace9a2fd4b52568180d6c5))


### Performance Improvements

* **mindmap:** force-graph hardening for 1000/2000-node graphs ([#2684](https://github.com/HankHuang0516/EClaw/issues/2684)) ([da8b1c8](https://github.com/HankHuang0516/EClaw/commit/da8b1c8f947ab8bc8fa455c1962a91146623a1fc))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-20)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **notifications:** add kanban_done + kanban_done_auto toggles to Android Settings ([#2636](https://github.com/HankHuang0516/EClaw/issues/2636)) ([a710909](https://github.com/HankHuang0516/EClaw/commit/a7109095e3393b8564e7ef1b23d382a4fbb944b8))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **i18n:** ar block — fix 27 broken entries (CJK leaks + truncated HTML) ([#2851](https://github.com/HankHuang0516/EClaw/issues/2851)) ([5b19175](https://github.com/HankHuang0516/EClaw/commit/5b19175d712d00d16fcec00b749035c4beae7a5c))
* **chat:** atomic-load target bar (await contacts before first render) ([#2831](https://github.com/HankHuang0516/EClaw/issues/2831)) ([5f529e6](https://github.com/HankHuang0516/EClaw/commit/5f529e6b772eacc38ba1de69b44258a05f0d816a)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2](https://github.com/HankHuang0516/EClaw/issues/2)
* **i18n:** clear batch 1 residual missing keys ([#2790](https://github.com/HankHuang0516/EClaw/issues/2790)) ([211030e](https://github.com/HankHuang0516/EClaw/commit/211030e0b0b6a865c11f0c4ed60dc4e356d43b7a))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **kanban:** comment input no longer overlaps last comment in card detail (PR [#2678](https://github.com/HankHuang0516/EClaw/issues/2678)) ([fba91fc](https://github.com/HankHuang0516/EClaw/commit/fba91fca15402b453a0db5ee857c0b16e6087055))
* **chat:** compact 20px avatar in target bar (App WebView only shows [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2](https://github.com/HankHuang0516/EClaw/issues/2)) ([#2830](https://github.com/HankHuang0516/EClaw/issues/2830)) ([42c7543](https://github.com/HankHuang0516/EClaw/commit/42c7543b4a78a7abf3f5f7535eb9bc6142cd0fe2)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **portal:** complete 401 redirect sweep + mobile UIUX truncation ([#2842](https://github.com/HankHuang0516/EClaw/issues/2842)) ([f9799ba](https://github.com/HankHuang0516/EClaw/commit/f9799ba42498b109f0a8a70e80836aa6da51e216)), closes [#2833](https://github.com/HankHuang0516/EClaw/issues/2833) [#2845](https://github.com/HankHuang0516/EClaw/issues/2845) [#2844](https://github.com/HankHuang0516/EClaw/issues/2844) [#2843](https://github.com/HankHuang0516/EClaw/issues/2843)
* **uiux:** continue qa mobile readability sweep ([#2854](https://github.com/HankHuang0516/EClaw/issues/2854)) ([57606ff](https://github.com/HankHuang0516/EClaw/commit/57606ffe3e543b07a026aacc53c4b470c9a7825b))
* **i18n:** cover dynamic portal wrapper keys ([#2807](https://github.com/HankHuang0516/EClaw/issues/2807)) ([4c711cc](https://github.com/HankHuang0516/EClaw/commit/4c711cc4009300ffe4e8933a98ee01cd0fdd6aeb))
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **petdx:** drop dark-grey loading placeholder + preload sprite WEBP ([#2628](https://github.com/HankHuang0516/EClaw/issues/2628)) ([59cef38](https://github.com/HankHuang0516/EClaw/commit/59cef387bd69ca99d7d15c86a1364856d3849ad8)), closes [#1a1a1a](https://github.com/HankHuang0516/EClaw/issues/1a1a1a)
* **security:** escape innerHTML in chat modal error messages ([#2819](https://github.com/HankHuang0516/EClaw/issues/2819)) ([dce07ad](https://github.com/HankHuang0516/EClaw/commit/dce07adde64795916dba977ae23e46f3371ce7ed)), closes [#2809](https://github.com/HankHuang0516/EClaw/issues/2809) [#2810](https://github.com/HankHuang0516/EClaw/issues/2810) [#2809](https://github.com/HankHuang0516/EClaw/issues/2809) [#2810](https://github.com/HankHuang0516/EClaw/issues/2810)
* **entities:** expose botSecret to owner so wallpaper service can poll companions ([#2615](https://github.com/HankHuang0516/EClaw/issues/2615)) ([04470fc](https://github.com/HankHuang0516/EClaw/commit/04470fce8f8c3fce2b1ba8b243e776606f107502))
* **rental:** expose owner_public_code in marketplace so plaza CTA can route ([#2616](https://github.com/HankHuang0516/EClaw/issues/2616)) ([4d1372f](https://github.com/HankHuang0516/EClaw/commit/4d1372f717d93cab65543e87c852e74e9fb67071)), closes [#2610](https://github.com/HankHuang0516/EClaw/issues/2610)
* **mindmap:** fallback to device scope when entityId is null ([#2728](https://github.com/HankHuang0516/EClaw/issues/2728)) ([7572312](https://github.com/HankHuang0516/EClaw/commit/7572312433d3d75fc245eda48a28919ce14bd927))
* **i18n:** fill Spanish drift keys ([#2751](https://github.com/HankHuang0516/EClaw/issues/2751)) ([0ad0ee5](https://github.com/HankHuang0516/EClaw/commit/0ad0ee55f7fac3e6ac46d891539950dab4d553cc))
* **portal:** fit embedded org chart to mobile viewport ([#2674](https://github.com/HankHuang0516/EClaw/issues/2674)) ([1c4e1b4](https://github.com/HankHuang0516/EClaw/commit/1c4e1b413ea7027b4cd4b8ecda981b0d0e12e66b))
* **i18n:** fix 6 trailing-comma syntax errors in 10-locale batch ([#2771](https://github.com/HankHuang0516/EClaw/issues/2771)) ([b27c6ca](https://github.com/HankHuang0516/EClaw/commit/b27c6ca204bf813e406c54ce3a2532a5f1f031b3))
* **kanban:** GET card returns latest 50 comments + comments endpoint exposes total ([#2816](https://github.com/HankHuang0516/EClaw/issues/2816)) ([c4d83f7](https://github.com/HankHuang0516/EClaw/commit/c4d83f777a1cd26aea0936e4316aa35c52822eef))
* **uiux:** harden chat previews and roster preview ([#2769](https://github.com/HankHuang0516/EClaw/issues/2769)) ([466d4d3](https://github.com/HankHuang0516/EClaw/commit/466d4d3ef81c628d3f58db64323946053d7bf61c))
* **mention-parser:** ignore @-mentions inside markdown code spans ([#2645](https://github.com/HankHuang0516/EClaw/issues/2645)) ([8da19d4](https://github.com/HankHuang0516/EClaw/commit/8da19d4a79ceb4152bf2144ee0847c61ce3e1def)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **kanban:** lazy-load dependency chips via IntersectionObserver ([#2632](https://github.com/HankHuang0516/EClaw/issues/2632)) ([20586b4](https://github.com/HankHuang0516/EClaw/commit/20586b43357335f9eb6a190c02d58c8e36b58aba)), closes [#2631](https://github.com/HankHuang0516/EClaw/issues/2631)
* **kanban:** make card sorting deterministic ([#2756](https://github.com/HankHuang0516/EClaw/issues/2756)) ([48e2117](https://github.com/HankHuang0516/EClaw/commit/48e2117b64e37f05dc635e0a3b67bfd43cbe48f5))
* **org-chart:** notify affected bots on hierarchy change ([#2812](https://github.com/HankHuang0516/EClaw/issues/2812)) ([55675fd](https://github.com/HankHuang0516/EClaw/commit/55675fdf4487494d729a29524b32bd81b756a00c)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** notify reviewer on manual /move → review ([#2753](https://github.com/HankHuang0516/EClaw/issues/2753)) ([6cbbb4e](https://github.com/HankHuang0516/EClaw/commit/6cbbb4ee8c0d4d8ad54df2e9b5faaa3699bd530f))
* **wallpaper:** off-load spritesheet fetch to IO so per-petdx sprites actually render ([#2618](https://github.com/HankHuang0516/EClaw/issues/2618)) ([61b832c](https://github.com/HankHuang0516/EClaw/commit/61b832c9fa8a1d0caab810ccc942d85c63349267)), closes [#2615](https://github.com/HankHuang0516/EClaw/issues/2615) [#2577](https://github.com/HankHuang0516/EClaw/issues/2577)
* **security:** patch P0 sanitize-html XSS + P1 protobufjs + exam.html XSS ([#2829](https://github.com/HankHuang0516/EClaw/issues/2829)) ([c71b871](https://github.com/HankHuang0516/EClaw/commit/c71b871a045887375dd0d26d1a3280a0891a89ad))
* **portal:** petdx-browser cookie-session fallback for device-login ([#2757](https://github.com/HankHuang0516/EClaw/issues/2757)) ([ca275f4](https://github.com/HankHuang0516/EClaw/commit/ca275f4519835da0c7ad71c588908a18f6f138d8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **api:** platform-stats 500 + entity/lookup publicCode alias ([#2809](https://github.com/HankHuang0516/EClaw/issues/2809), [#2810](https://github.com/HankHuang0516/EClaw/issues/2810)) ([#2818](https://github.com/HankHuang0516/EClaw/issues/2818)) ([f99fd17](https://github.com/HankHuang0516/EClaw/commit/f99fd17b2b1c32d88daa2510ff66d714c1a53edc))
* **i18n:** positional format specifiers for feedback_result_logs (7 locales) ([#2597](https://github.com/HankHuang0516/EClaw/issues/2597)) ([21aedc7](https://github.com/HankHuang0516/EClaw/commit/21aedc7eebc7a2839e340136f38dfdfd4dabb9dc))
* **avatar-petdx:** preserve descriptor across transient API failures (flicker) ([#2625](https://github.com/HankHuang0516/EClaw/issues/2625)) ([7b1c606](https://github.com/HankHuang0516/EClaw/commit/7b1c606514f7698d72ec95cf6c556e4043966186))
* **chat:** preserve scroll anchor while reading history ([#2693](https://github.com/HankHuang0516/EClaw/issues/2693)) ([945fdb7](https://github.com/HankHuang0516/EClaw/commit/945fdb7192b791b31882e1e75568dd8b11e4686f))
* **promo:** pull video embed from /promo-chat-avatar.html ([#2724](https://github.com/HankHuang0516/EClaw/issues/2724)) ([2afabc8](https://github.com/HankHuang0516/EClaw/commit/2afabc8c5ff8b25218a7cb857e8adfa572c8e9d5))
* **kanban:** realign stale recurring schedules ([#2785](https://github.com/HankHuang0516/EClaw/issues/2785)) ([ab8ee25](https://github.com/HankHuang0516/EClaw/commit/ab8ee250a9b37f3d3e838bb01d8866c8d2b78231))
* **portal:** reduce QA-discovered request fanout ([#2656](https://github.com/HankHuang0516/EClaw/issues/2656)) ([1e46d6b](https://github.com/HankHuang0516/EClaw/commit/1e46d6bab61e58c65b452b6503d953f8dddeee75))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **portal:** remove org chart fit scale floor ([#2676](https://github.com/HankHuang0516/EClaw/issues/2676)) ([0f01606](https://github.com/HankHuang0516/EClaw/commit/0f016068b963bb5f800a02f28817c7174979d913))
* **i18n:** rename mm_empty_title → mm_state_empty_title in mindmap.html ([#2683](https://github.com/HankHuang0516/EClaw/issues/2683)) ([c79c109](https://github.com/HankHuang0516/EClaw/commit/c79c109bea23142e8a6d9ace976d105af1280ec9))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **chat:** render mention avatars with companion renderer ([#2633](https://github.com/HankHuang0516/EClaw/issues/2633)) ([03e205f](https://github.com/HankHuang0516/EClaw/commit/03e205f663ecd2c2f443d4009dd5af0093f0bbbb))
* **kanban:** reserve mobile comments panel height ([#2782](https://github.com/HankHuang0516/EClaw/issues/2782)) ([ce8662d](https://github.com/HankHuang0516/EClaw/commit/ce8662d362422fdd25037f1deb61dbed9425e2f9))
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* scheduled audit 2026-05-13 — 6 bugs, XSS, i18n ([#2668](https://github.com/HankHuang0516/EClaw/issues/2668)) ([21dd513](https://github.com/HankHuang0516/EClaw/commit/21dd513b4464738de29164265437435ba6cc4817)), closes [#2605](https://github.com/HankHuang0516/EClaw/issues/2605) [#2608](https://github.com/HankHuang0516/EClaw/issues/2608) [#2600](https://github.com/HankHuang0516/EClaw/issues/2600) [#2599](https://github.com/HankHuang0516/EClaw/issues/2599) [#2598](https://github.com/HankHuang0516/EClaw/issues/2598)
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **chat:** smart-chip preview falls back to inline c.comments when /comments fails (PR [#2677](https://github.com/HankHuang0516/EClaw/issues/2677)) ([7f4dffd](https://github.com/HankHuang0516/EClaw/commit/7f4dffd2c83ea86f296b8fa0610f0e67c9f1af11))
* **kanban:** stabilize comment detail viewport ([#2796](https://github.com/HankHuang0516/EClaw/issues/2796)) ([0a10aad](https://github.com/HankHuang0516/EClaw/commit/0a10aadb5a5b12ff23454c16d5c88183b94ad7d7))
* **wallpaper:** stop Android live wallpaper flashing default lobster on companion change ([#2629](https://github.com/HankHuang0516/EClaw/issues/2629)) ([8b4f66f](https://github.com/HankHuang0516/EClaw/commit/8b4f66fcb335bf43128f924b761b6337c817095b)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **chat:** stop chat.html bouncing to dashboard via /api/rental/health-status 401 race ([#2833](https://github.com/HankHuang0516/EClaw/issues/2833)) ([c422406](https://github.com/HankHuang0516/EClaw/commit/c4224067cdcfe7f3e22ab95007c7563dac4196ac))
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **app:** WebView pages honor app-selected locale via ?lang= URL param ([#2672](https://github.com/HankHuang0516/EClaw/issues/2672)) ([8ed8757](https://github.com/HankHuang0516/EClaw/commit/8ed8757aec5bf214e837cc0d81bf2b23f1993a91)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* **community:** 1-click chat button on bot cards + utm tagging ([#2610](https://github.com/HankHuang0516/EClaw/issues/2610)) ([eee97b0](https://github.com/HankHuang0516/EClaw/commit/eee97b0e2e4e74945ec24f218a69a52800b97a66))
* **chat:** accept ?messageId= as deep-link alias ([#2838](https://github.com/HankHuang0516/EClaw/issues/2838)) ([1785a87](https://github.com/HankHuang0516/EClaw/commit/1785a87310426637fd10df83754fb9924c45207f))
* **chat:** add avatar size preference ([#2714](https://github.com/HankHuang0516/EClaw/issues/2714)) ([6fe164a](https://github.com/HankHuang0516/EClaw/commit/6fe164ad8b22fa576d2dd9ad37c0d9fc295b5a83))
* **dashboard:** add Claude and Codex channel guides ([#2640](https://github.com/HankHuang0516/EClaw/issues/2640)) ([c64e4c4](https://github.com/HankHuang0516/EClaw/commit/c64e4c4afc78db58c5cd578f00486dd7b2fd3311))
* **dashboard:** add Claude Code channel guide card ([#2667](https://github.com/HankHuang0516/EClaw/issues/2667)) ([d70d75c](https://github.com/HankHuang0516/EClaw/commit/d70d75c0c8caa8a540358a9aab4556b8c1927a5c))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* **kanban:** add device-scoped card tags ([#2773](https://github.com/HankHuang0516/EClaw/issues/2773)) ([53a387e](https://github.com/HankHuang0516/EClaw/commit/53a387e67ba7bb4f6bed1c427000c4ae8666577a))
* **portal:** add entity selector to petdx-browser ([#2602](https://github.com/HankHuang0516/EClaw/issues/2602)) ([3fa067e](https://github.com/HankHuang0516/EClaw/commit/3fa067e00b38829b48a37cecd33ee81a9a1122d9))
* **kanban:** add explicit card links ([#2721](https://github.com/HankHuang0516/EClaw/issues/2721)) ([ef9f812](https://github.com/HankHuang0516/EClaw/commit/ef9f812a3fcf39efd07fd158ce90951bdd045ac7))
* **kanban:** add explicit done-card reopen flow ([#2801](https://github.com/HankHuang0516/EClaw/issues/2801)) ([5080aac](https://github.com/HankHuang0516/EClaw/commit/5080aacb75047c0deaa379ee708ec85465afd57c))
* **mindmap:** add GET /api/mindmap/graph force-graph projection ([#2680](https://github.com/HankHuang0516/EClaw/issues/2680)) ([a00b2e7](https://github.com/HankHuang0516/EClaw/commit/a00b2e775af2c4c98cd157f760ad87aeeee469f0)), closes [#2679](https://github.com/HankHuang0516/EClaw/issues/2679) [#2679](https://github.com/HankHuang0516/EClaw/issues/2679)
* **dashboard:** add Hermes channel promo card ([#2708](https://github.com/HankHuang0516/EClaw/issues/2708)) ([337aca1](https://github.com/HankHuang0516/EClaw/commit/337aca153d5a1cd7e888c065f00ae54db7872d91))
* **rental:** add listing soft pause ([#2781](https://github.com/HankHuang0516/EClaw/issues/2781)) ([6586b72](https://github.com/HankHuang0516/EClaw/commit/6586b72717ddb1637d91cd3242c8d2ff554f62b4))
* **portal:** add Nagoya 5D4N trip static cross-ref page ([#2689](https://github.com/HankHuang0516/EClaw/issues/2689)) ([2e0efb6](https://github.com/HankHuang0516/EClaw/commit/2e0efb6dcdaff52226cc8854a96747000b12bdff))
* **portal:** add Nagoya trip map links and image lightbox ([#2821](https://github.com/HankHuang0516/EClaw/issues/2821)) ([3e40955](https://github.com/HankHuang0516/EClaw/commit/3e40955650a05f45a6b9f7e39e73847705424a03))
* **portal/nagoya:** add parking shortcut buttons next to itinerary places ([#2826](https://github.com/HankHuang0516/EClaw/issues/2826)) ([63968c5](https://github.com/HankHuang0516/EClaw/commit/63968c554d046afc8d978de74e3aacbf7700500d))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **settings:** add rental roster management preview ([#2758](https://github.com/HankHuang0516/EClaw/issues/2758)) ([9706e59](https://github.com/HankHuang0516/EClaw/commit/9706e59ded140a90a6e02348124282bc69d89001))
* **rental:** add renter health chat indicator ([#2690](https://github.com/HankHuang0516/EClaw/issues/2690)) ([36cd2e9](https://github.com/HankHuang0516/EClaw/commit/36cd2e9802be4c7ebb03d3024617fa74aca48ffd))
* **ios:** add Tutorial & Intro entry in Settings ([#2800](https://github.com/HankHuang0516/EClaw/issues/2800)) ([ed83e51](https://github.com/HankHuang0516/EClaw/commit/ed83e51d043bf4cd5865f38dc95a91ed54820d6c))
* **landing:** add Watch Full Demo CTA below hero video ([#2799](https://github.com/HankHuang0516/EClaw/issues/2799)) ([66107c9](https://github.com/HankHuang0516/EClaw/commit/66107c954727551fd34d989a4674daaad9b63968))
* **footer:** add Watch Intro Video link in Info column ([#2798](https://github.com/HankHuang0516/EClaw/issues/2798)) ([d7c6d59](https://github.com/HankHuang0516/EClaw/commit/d7c6d596b69c6a5b257bf1f7a792a407ef9712ad))
* **i18n:** ar iter-2 — fill 623 missing keys against en source ([#2847](https://github.com/HankHuang0516/EClaw/issues/2847)) ([ee94a7a](https://github.com/HankHuang0516/EClaw/commit/ee94a7ae6812b5163efe4284ee4907ca32302f5c))
* **companion:** bridge crafter-station/petdex gallery (1784 pets) ([#2601](https://github.com/HankHuang0516/EClaw/issues/2601)) ([2e245be](https://github.com/HankHuang0516/EClaw/commit/2e245bea6dd47ea7361b927d389188a3c23b6bb3))
* **promo:** chat avatar size feature landing page (self-hosted MP4) ([#2722](https://github.com/HankHuang0516/EClaw/issues/2722)) ([3852210](https://github.com/HankHuang0516/EClaw/commit/3852210d355704d018e3daca6b5f9512a011b210)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **kanban:** cron-spawn jitter + lane backpressure to prevent same-tick wedge ([#2791](https://github.com/HankHuang0516/EClaw/issues/2791)) ([9f414a7](https://github.com/HankHuang0516/EClaw/commit/9f414a731d6393672a0a4189c7b408c529ae5e12)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **promo:** embed daily eclaw video 2026-05-14 ([#2786](https://github.com/HankHuang0516/EClaw/issues/2786)) ([718a814](https://github.com/HankHuang0516/EClaw/commit/718a814ab16850bc2b33a1b303841e2c4378ecfa)), closes [#2782](https://github.com/HankHuang0516/EClaw/issues/2782) [#2693](https://github.com/HankHuang0516/EClaw/issues/2693)
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **info:** embed promo video at top of Quick Start tab ([#2797](https://github.com/HankHuang0516/EClaw/issues/2797)) ([047679f](https://github.com/HankHuang0516/EClaw/commit/047679fd57ab9949eaeacea414d5611e71afe041))
* **rental:** enforce strict rebind refunds ([#2703](https://github.com/HankHuang0516/EClaw/issues/2703)) ([a1859c5](https://github.com/HankHuang0516/EClaw/commit/a1859c50e6fb3991d7a8051491502d824a14a116))
* **portal:** group task chip actions ([#2825](https://github.com/HankHuang0516/EClaw/issues/2825)) ([5db5c59](https://github.com/HankHuang0516/EClaw/commit/5db5c59b32b8635f1412205faf0c2f9164d3d5d4))
* **portal:** info-guide-rules + info-guide-soul slide pair ([#2793](https://github.com/HankHuang0516/EClaw/issues/2793)) ([1c8bddc](https://github.com/HankHuang0516/EClaw/commit/1c8bddc4c185054b2b60088498e3d45509117127)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **chat:** link card previews to kanban ([#2754](https://github.com/HankHuang0516/EClaw/issues/2754)) ([2261240](https://github.com/HankHuang0516/EClaw/commit/22612402c2e95efb07246629e81a849be41ee9c7))
* **mission:** link notes to kanban cards ([#2723](https://github.com/HankHuang0516/EClaw/issues/2723)) ([b36dc18](https://github.com/HankHuang0516/EClaw/commit/b36dc18f3a8facf12e0b6046351c222f1e99dc55))
* **mindmap:** mission.html link to /portal/mindmap.html + deprecate /api/mission/mindmap ([#2685](https://github.com/HankHuang0516/EClaw/issues/2685)) ([11e297b](https://github.com/HankHuang0516/EClaw/commit/11e297bab1c9b56fcde3027d6500b7c58891bf18)), closes [#2680](https://github.com/HankHuang0516/EClaw/issues/2680) [#2684](https://github.com/HankHuang0516/EClaw/issues/2684)
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **settings:** per-entity nudge override UI (Phase 2) ([#2837](https://github.com/HankHuang0516/EClaw/issues/2837)) ([ea7662b](https://github.com/HankHuang0516/EClaw/commit/ea7662b0858882dae461e1387f711895924f9ab8)), closes [3/#4](https://github.com/HankHuang0516/EClaw/issues/4)
* **kanban:** per-entity nudge overrides (Phase 2 of card_e066cb6b) ([#2836](https://github.com/HankHuang0516/EClaw/issues/2836)) ([0425f80](https://github.com/HankHuang0516/EClaw/commit/0425f80bc1169c0d506b665659c8676695c45553))
* **avatar:** petdx render on card-holder my-cards (Phase 1b) ([#2621](https://github.com/HankHuang0516/EClaw/issues/2621)) ([f78ba8b](https://github.com/HankHuang0516/EClaw/commit/f78ba8b18acc426936ab6d8a82ca7541effea00d))
* **avatar:** petdx render on dashboard entity grid / org chart / bindings (Phase 1b) ([#2622](https://github.com/HankHuang0516/EClaw/issues/2622)) ([f417749](https://github.com/HankHuang0516/EClaw/commit/f41774914451048e8cd76e9ae30416a0642e173b)), closes [#2620](https://github.com/HankHuang0516/EClaw/issues/2620) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621)
* **avatar:** petdx render on kanban auto-assign / pulse / comment avatars (Phase 1b) ([#2624](https://github.com/HankHuang0516/EClaw/issues/2624)) ([6bff5f8](https://github.com/HankHuang0516/EClaw/commit/6bff5f80440d0bd91a6b1721cde9478d685c4d46))
* **avatar:** petdx render on mission skill/rule/soul entity dialogs (Phase 1b) ([#2623](https://github.com/HankHuang0516/EClaw/issues/2623)) ([129327b](https://github.com/HankHuang0516/EClaw/commit/129327bc7b91056659f1ab7e8d5e3f5260d951fb))
* **mindmap:** portal/mindmap.html force-graph prototype ([#129](https://github.com/HankHuang0516/EClaw/issues/129)) ([#2681](https://github.com/HankHuang0516/EClaw/issues/2681)) ([0f15e69](https://github.com/HankHuang0516/EClaw/commit/0f15e6930f0697c37fa08f3219edb8f9e499837f)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **portal:** redo nagoya trip page in professional tour-guide style ([#2691](https://github.com/HankHuang0516/EClaw/issues/2691)) ([b2378c0](https://github.com/HankHuang0516/EClaw/commit/b2378c06ee20fa9cccfdceceb1a4c9e0b3072f59))
* **i18n:** remove ms+hi orphan keys from i18n.js ([#2849](https://github.com/HankHuang0516/EClaw/issues/2849)) ([320176c](https://github.com/HankHuang0516/EClaw/commit/320176c06a3cfd8631e2a82ad02a6bd6a9af0389))
* **avatar:** render selected petdx companion in chat avatars ([#2620](https://github.com/HankHuang0516/EClaw/issues/2620)) ([0bdd046](https://github.com/HankHuang0516/EClaw/commit/0bdd046fe1b1c428e32edda366ff112c08927f4c))
* **home:** replace native home with WebView hosting dashboard.html ([#2634](https://github.com/HankHuang0516/EClaw/issues/2634)) ([e69ea81](https://github.com/HankHuang0516/EClaw/commit/e69ea8160c239b083a83d6dc83a4f1c3f901c863))
* **app:** route chat mission jumps through native tabs ([#2824](https://github.com/HankHuang0516/EClaw/issues/2824)) ([deb07b6](https://github.com/HankHuang0516/EClaw/commit/deb07b69a9ecca632fe27278de537f1d85234e94))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **chat:** support message deep links ([#2719](https://github.com/HankHuang0516/EClaw/issues/2719)) ([2dc0f1e](https://github.com/HankHuang0516/EClaw/commit/2dc0f1eeb259e1a0848db4a03186b989372cd91c))
* **mission:** support note deep links ([#2717](https://github.com/HankHuang0516/EClaw/issues/2717)) ([2efd3a5](https://github.com/HankHuang0516/EClaw/commit/2efd3a5e741217a07c0b0ac54a0ddd010e0ebe23))
* **share-chat:** twitter card + per-bot og:image/twitter:* in SSR ([#2609](https://github.com/HankHuang0516/EClaw/issues/2609)) ([6cdc853](https://github.com/HankHuang0516/EClaw/commit/6cdc853dc884cdb95bd47214942768981f218ae0))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))
* **settings:** wire petdx avatar into channel-account chips ([#2626](https://github.com/HankHuang0516/EClaw/issues/2626)) ([88aec77](https://github.com/HankHuang0516/EClaw/commit/88aec772628c240e97b336bb5820892ad632d1ae))
* **files:** wire petdx avatar into entity filter & per-file badges ([#2627](https://github.com/HankHuang0516/EClaw/issues/2627)) ([5b3e5cc](https://github.com/HankHuang0516/EClaw/commit/5b3e5cc542d9da69bb4e92500fd03a542ea33f00))
* **mindmap:** wrap hardcoded zh-TW UI strings with i18n t() ([#2607](https://github.com/HankHuang0516/EClaw/issues/2607)) ([166af87](https://github.com/HankHuang0516/EClaw/commit/166af8772b2121a24aaf34a83b3de970e9b3b571)), closes [#2606](https://github.com/HankHuang0516/EClaw/issues/2606)
* **i18n:** zh-TW backfill 8 keys (soft-pause + chat + invite + wallet) ([#2815](https://github.com/HankHuang0516/EClaw/issues/2815)) ([a2dd574](https://github.com/HankHuang0516/EClaw/commit/a2dd5743ce8d43a4b6ace9a2fd4b52568180d6c5))


### Performance Improvements

* **mindmap:** force-graph hardening for 1000/2000-node graphs ([#2684](https://github.com/HankHuang0516/EClaw/issues/2684)) ([da8b1c8](https://github.com/HankHuang0516/EClaw/commit/da8b1c8f947ab8bc8fa455c1962a91146623a1fc))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-20)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **notifications:** add kanban_done + kanban_done_auto toggles to Android Settings ([#2636](https://github.com/HankHuang0516/EClaw/issues/2636)) ([a710909](https://github.com/HankHuang0516/EClaw/commit/a7109095e3393b8564e7ef1b23d382a4fbb944b8))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **i18n:** ar block — fix 27 broken entries (CJK leaks + truncated HTML) ([#2851](https://github.com/HankHuang0516/EClaw/issues/2851)) ([5b19175](https://github.com/HankHuang0516/EClaw/commit/5b19175d712d00d16fcec00b749035c4beae7a5c))
* **chat:** atomic-load target bar (await contacts before first render) ([#2831](https://github.com/HankHuang0516/EClaw/issues/2831)) ([5f529e6](https://github.com/HankHuang0516/EClaw/commit/5f529e6b772eacc38ba1de69b44258a05f0d816a)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2](https://github.com/HankHuang0516/EClaw/issues/2)
* **i18n:** clear batch 1 residual missing keys ([#2790](https://github.com/HankHuang0516/EClaw/issues/2790)) ([211030e](https://github.com/HankHuang0516/EClaw/commit/211030e0b0b6a865c11f0c4ed60dc4e356d43b7a))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **kanban:** comment input no longer overlaps last comment in card detail (PR [#2678](https://github.com/HankHuang0516/EClaw/issues/2678)) ([fba91fc](https://github.com/HankHuang0516/EClaw/commit/fba91fca15402b453a0db5ee857c0b16e6087055))
* **chat:** compact 20px avatar in target bar (App WebView only shows [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2](https://github.com/HankHuang0516/EClaw/issues/2)) ([#2830](https://github.com/HankHuang0516/EClaw/issues/2830)) ([42c7543](https://github.com/HankHuang0516/EClaw/commit/42c7543b4a78a7abf3f5f7535eb9bc6142cd0fe2)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **portal:** complete 401 redirect sweep + mobile UIUX truncation ([#2842](https://github.com/HankHuang0516/EClaw/issues/2842)) ([f9799ba](https://github.com/HankHuang0516/EClaw/commit/f9799ba42498b109f0a8a70e80836aa6da51e216)), closes [#2833](https://github.com/HankHuang0516/EClaw/issues/2833) [#2845](https://github.com/HankHuang0516/EClaw/issues/2845) [#2844](https://github.com/HankHuang0516/EClaw/issues/2844) [#2843](https://github.com/HankHuang0516/EClaw/issues/2843)
* **i18n:** cover dynamic portal wrapper keys ([#2807](https://github.com/HankHuang0516/EClaw/issues/2807)) ([4c711cc](https://github.com/HankHuang0516/EClaw/commit/4c711cc4009300ffe4e8933a98ee01cd0fdd6aeb))
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **petdx:** drop dark-grey loading placeholder + preload sprite WEBP ([#2628](https://github.com/HankHuang0516/EClaw/issues/2628)) ([59cef38](https://github.com/HankHuang0516/EClaw/commit/59cef387bd69ca99d7d15c86a1364856d3849ad8)), closes [#1a1a1a](https://github.com/HankHuang0516/EClaw/issues/1a1a1a)
* **security:** escape innerHTML in chat modal error messages ([#2819](https://github.com/HankHuang0516/EClaw/issues/2819)) ([dce07ad](https://github.com/HankHuang0516/EClaw/commit/dce07adde64795916dba977ae23e46f3371ce7ed)), closes [#2809](https://github.com/HankHuang0516/EClaw/issues/2809) [#2810](https://github.com/HankHuang0516/EClaw/issues/2810) [#2809](https://github.com/HankHuang0516/EClaw/issues/2809) [#2810](https://github.com/HankHuang0516/EClaw/issues/2810)
* **entities:** expose botSecret to owner so wallpaper service can poll companions ([#2615](https://github.com/HankHuang0516/EClaw/issues/2615)) ([04470fc](https://github.com/HankHuang0516/EClaw/commit/04470fce8f8c3fce2b1ba8b243e776606f107502))
* **rental:** expose owner_public_code in marketplace so plaza CTA can route ([#2616](https://github.com/HankHuang0516/EClaw/issues/2616)) ([4d1372f](https://github.com/HankHuang0516/EClaw/commit/4d1372f717d93cab65543e87c852e74e9fb67071)), closes [#2610](https://github.com/HankHuang0516/EClaw/issues/2610)
* **mindmap:** fallback to device scope when entityId is null ([#2728](https://github.com/HankHuang0516/EClaw/issues/2728)) ([7572312](https://github.com/HankHuang0516/EClaw/commit/7572312433d3d75fc245eda48a28919ce14bd927))
* **i18n:** fill Spanish drift keys ([#2751](https://github.com/HankHuang0516/EClaw/issues/2751)) ([0ad0ee5](https://github.com/HankHuang0516/EClaw/commit/0ad0ee55f7fac3e6ac46d891539950dab4d553cc))
* **portal:** fit embedded org chart to mobile viewport ([#2674](https://github.com/HankHuang0516/EClaw/issues/2674)) ([1c4e1b4](https://github.com/HankHuang0516/EClaw/commit/1c4e1b413ea7027b4cd4b8ecda981b0d0e12e66b))
* **i18n:** fix 6 trailing-comma syntax errors in 10-locale batch ([#2771](https://github.com/HankHuang0516/EClaw/issues/2771)) ([b27c6ca](https://github.com/HankHuang0516/EClaw/commit/b27c6ca204bf813e406c54ce3a2532a5f1f031b3))
* **kanban:** GET card returns latest 50 comments + comments endpoint exposes total ([#2816](https://github.com/HankHuang0516/EClaw/issues/2816)) ([c4d83f7](https://github.com/HankHuang0516/EClaw/commit/c4d83f777a1cd26aea0936e4316aa35c52822eef))
* **uiux:** harden chat previews and roster preview ([#2769](https://github.com/HankHuang0516/EClaw/issues/2769)) ([466d4d3](https://github.com/HankHuang0516/EClaw/commit/466d4d3ef81c628d3f58db64323946053d7bf61c))
* **mention-parser:** ignore @-mentions inside markdown code spans ([#2645](https://github.com/HankHuang0516/EClaw/issues/2645)) ([8da19d4](https://github.com/HankHuang0516/EClaw/commit/8da19d4a79ceb4152bf2144ee0847c61ce3e1def)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **kanban:** lazy-load dependency chips via IntersectionObserver ([#2632](https://github.com/HankHuang0516/EClaw/issues/2632)) ([20586b4](https://github.com/HankHuang0516/EClaw/commit/20586b43357335f9eb6a190c02d58c8e36b58aba)), closes [#2631](https://github.com/HankHuang0516/EClaw/issues/2631)
* **kanban:** make card sorting deterministic ([#2756](https://github.com/HankHuang0516/EClaw/issues/2756)) ([48e2117](https://github.com/HankHuang0516/EClaw/commit/48e2117b64e37f05dc635e0a3b67bfd43cbe48f5))
* **org-chart:** notify affected bots on hierarchy change ([#2812](https://github.com/HankHuang0516/EClaw/issues/2812)) ([55675fd](https://github.com/HankHuang0516/EClaw/commit/55675fdf4487494d729a29524b32bd81b756a00c)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** notify reviewer on manual /move → review ([#2753](https://github.com/HankHuang0516/EClaw/issues/2753)) ([6cbbb4e](https://github.com/HankHuang0516/EClaw/commit/6cbbb4ee8c0d4d8ad54df2e9b5faaa3699bd530f))
* **wallpaper:** off-load spritesheet fetch to IO so per-petdx sprites actually render ([#2618](https://github.com/HankHuang0516/EClaw/issues/2618)) ([61b832c](https://github.com/HankHuang0516/EClaw/commit/61b832c9fa8a1d0caab810ccc942d85c63349267)), closes [#2615](https://github.com/HankHuang0516/EClaw/issues/2615) [#2577](https://github.com/HankHuang0516/EClaw/issues/2577)
* **security:** patch P0 sanitize-html XSS + P1 protobufjs + exam.html XSS ([#2829](https://github.com/HankHuang0516/EClaw/issues/2829)) ([c71b871](https://github.com/HankHuang0516/EClaw/commit/c71b871a045887375dd0d26d1a3280a0891a89ad))
* **portal:** petdx-browser cookie-session fallback for device-login ([#2757](https://github.com/HankHuang0516/EClaw/issues/2757)) ([ca275f4](https://github.com/HankHuang0516/EClaw/commit/ca275f4519835da0c7ad71c588908a18f6f138d8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **api:** platform-stats 500 + entity/lookup publicCode alias ([#2809](https://github.com/HankHuang0516/EClaw/issues/2809), [#2810](https://github.com/HankHuang0516/EClaw/issues/2810)) ([#2818](https://github.com/HankHuang0516/EClaw/issues/2818)) ([f99fd17](https://github.com/HankHuang0516/EClaw/commit/f99fd17b2b1c32d88daa2510ff66d714c1a53edc))
* **i18n:** positional format specifiers for feedback_result_logs (7 locales) ([#2597](https://github.com/HankHuang0516/EClaw/issues/2597)) ([21aedc7](https://github.com/HankHuang0516/EClaw/commit/21aedc7eebc7a2839e340136f38dfdfd4dabb9dc))
* **avatar-petdx:** preserve descriptor across transient API failures (flicker) ([#2625](https://github.com/HankHuang0516/EClaw/issues/2625)) ([7b1c606](https://github.com/HankHuang0516/EClaw/commit/7b1c606514f7698d72ec95cf6c556e4043966186))
* **chat:** preserve scroll anchor while reading history ([#2693](https://github.com/HankHuang0516/EClaw/issues/2693)) ([945fdb7](https://github.com/HankHuang0516/EClaw/commit/945fdb7192b791b31882e1e75568dd8b11e4686f))
* **promo:** pull video embed from /promo-chat-avatar.html ([#2724](https://github.com/HankHuang0516/EClaw/issues/2724)) ([2afabc8](https://github.com/HankHuang0516/EClaw/commit/2afabc8c5ff8b25218a7cb857e8adfa572c8e9d5))
* **kanban:** realign stale recurring schedules ([#2785](https://github.com/HankHuang0516/EClaw/issues/2785)) ([ab8ee25](https://github.com/HankHuang0516/EClaw/commit/ab8ee250a9b37f3d3e838bb01d8866c8d2b78231))
* **portal:** reduce QA-discovered request fanout ([#2656](https://github.com/HankHuang0516/EClaw/issues/2656)) ([1e46d6b](https://github.com/HankHuang0516/EClaw/commit/1e46d6bab61e58c65b452b6503d953f8dddeee75))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **portal:** remove org chart fit scale floor ([#2676](https://github.com/HankHuang0516/EClaw/issues/2676)) ([0f01606](https://github.com/HankHuang0516/EClaw/commit/0f016068b963bb5f800a02f28817c7174979d913))
* **i18n:** rename mm_empty_title → mm_state_empty_title in mindmap.html ([#2683](https://github.com/HankHuang0516/EClaw/issues/2683)) ([c79c109](https://github.com/HankHuang0516/EClaw/commit/c79c109bea23142e8a6d9ace976d105af1280ec9))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **chat:** render mention avatars with companion renderer ([#2633](https://github.com/HankHuang0516/EClaw/issues/2633)) ([03e205f](https://github.com/HankHuang0516/EClaw/commit/03e205f663ecd2c2f443d4009dd5af0093f0bbbb))
* **kanban:** reserve mobile comments panel height ([#2782](https://github.com/HankHuang0516/EClaw/issues/2782)) ([ce8662d](https://github.com/HankHuang0516/EClaw/commit/ce8662d362422fdd25037f1deb61dbed9425e2f9))
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* scheduled audit 2026-05-13 — 6 bugs, XSS, i18n ([#2668](https://github.com/HankHuang0516/EClaw/issues/2668)) ([21dd513](https://github.com/HankHuang0516/EClaw/commit/21dd513b4464738de29164265437435ba6cc4817)), closes [#2605](https://github.com/HankHuang0516/EClaw/issues/2605) [#2608](https://github.com/HankHuang0516/EClaw/issues/2608) [#2600](https://github.com/HankHuang0516/EClaw/issues/2600) [#2599](https://github.com/HankHuang0516/EClaw/issues/2599) [#2598](https://github.com/HankHuang0516/EClaw/issues/2598)
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **chat:** smart-chip preview falls back to inline c.comments when /comments fails (PR [#2677](https://github.com/HankHuang0516/EClaw/issues/2677)) ([7f4dffd](https://github.com/HankHuang0516/EClaw/commit/7f4dffd2c83ea86f296b8fa0610f0e67c9f1af11))
* **kanban:** stabilize comment detail viewport ([#2796](https://github.com/HankHuang0516/EClaw/issues/2796)) ([0a10aad](https://github.com/HankHuang0516/EClaw/commit/0a10aadb5a5b12ff23454c16d5c88183b94ad7d7))
* **wallpaper:** stop Android live wallpaper flashing default lobster on companion change ([#2629](https://github.com/HankHuang0516/EClaw/issues/2629)) ([8b4f66f](https://github.com/HankHuang0516/EClaw/commit/8b4f66fcb335bf43128f924b761b6337c817095b)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **chat:** stop chat.html bouncing to dashboard via /api/rental/health-status 401 race ([#2833](https://github.com/HankHuang0516/EClaw/issues/2833)) ([c422406](https://github.com/HankHuang0516/EClaw/commit/c4224067cdcfe7f3e22ab95007c7563dac4196ac))
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **app:** WebView pages honor app-selected locale via ?lang= URL param ([#2672](https://github.com/HankHuang0516/EClaw/issues/2672)) ([8ed8757](https://github.com/HankHuang0516/EClaw/commit/8ed8757aec5bf214e837cc0d81bf2b23f1993a91)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* **community:** 1-click chat button on bot cards + utm tagging ([#2610](https://github.com/HankHuang0516/EClaw/issues/2610)) ([eee97b0](https://github.com/HankHuang0516/EClaw/commit/eee97b0e2e4e74945ec24f218a69a52800b97a66))
* **chat:** accept ?messageId= as deep-link alias ([#2838](https://github.com/HankHuang0516/EClaw/issues/2838)) ([1785a87](https://github.com/HankHuang0516/EClaw/commit/1785a87310426637fd10df83754fb9924c45207f))
* **chat:** add avatar size preference ([#2714](https://github.com/HankHuang0516/EClaw/issues/2714)) ([6fe164a](https://github.com/HankHuang0516/EClaw/commit/6fe164ad8b22fa576d2dd9ad37c0d9fc295b5a83))
* **dashboard:** add Claude and Codex channel guides ([#2640](https://github.com/HankHuang0516/EClaw/issues/2640)) ([c64e4c4](https://github.com/HankHuang0516/EClaw/commit/c64e4c4afc78db58c5cd578f00486dd7b2fd3311))
* **dashboard:** add Claude Code channel guide card ([#2667](https://github.com/HankHuang0516/EClaw/issues/2667)) ([d70d75c](https://github.com/HankHuang0516/EClaw/commit/d70d75c0c8caa8a540358a9aab4556b8c1927a5c))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* **kanban:** add device-scoped card tags ([#2773](https://github.com/HankHuang0516/EClaw/issues/2773)) ([53a387e](https://github.com/HankHuang0516/EClaw/commit/53a387e67ba7bb4f6bed1c427000c4ae8666577a))
* **portal:** add entity selector to petdx-browser ([#2602](https://github.com/HankHuang0516/EClaw/issues/2602)) ([3fa067e](https://github.com/HankHuang0516/EClaw/commit/3fa067e00b38829b48a37cecd33ee81a9a1122d9))
* **kanban:** add explicit card links ([#2721](https://github.com/HankHuang0516/EClaw/issues/2721)) ([ef9f812](https://github.com/HankHuang0516/EClaw/commit/ef9f812a3fcf39efd07fd158ce90951bdd045ac7))
* **kanban:** add explicit done-card reopen flow ([#2801](https://github.com/HankHuang0516/EClaw/issues/2801)) ([5080aac](https://github.com/HankHuang0516/EClaw/commit/5080aacb75047c0deaa379ee708ec85465afd57c))
* **mindmap:** add GET /api/mindmap/graph force-graph projection ([#2680](https://github.com/HankHuang0516/EClaw/issues/2680)) ([a00b2e7](https://github.com/HankHuang0516/EClaw/commit/a00b2e775af2c4c98cd157f760ad87aeeee469f0)), closes [#2679](https://github.com/HankHuang0516/EClaw/issues/2679) [#2679](https://github.com/HankHuang0516/EClaw/issues/2679)
* **dashboard:** add Hermes channel promo card ([#2708](https://github.com/HankHuang0516/EClaw/issues/2708)) ([337aca1](https://github.com/HankHuang0516/EClaw/commit/337aca153d5a1cd7e888c065f00ae54db7872d91))
* **rental:** add listing soft pause ([#2781](https://github.com/HankHuang0516/EClaw/issues/2781)) ([6586b72](https://github.com/HankHuang0516/EClaw/commit/6586b72717ddb1637d91cd3242c8d2ff554f62b4))
* **portal:** add Nagoya 5D4N trip static cross-ref page ([#2689](https://github.com/HankHuang0516/EClaw/issues/2689)) ([2e0efb6](https://github.com/HankHuang0516/EClaw/commit/2e0efb6dcdaff52226cc8854a96747000b12bdff))
* **portal:** add Nagoya trip map links and image lightbox ([#2821](https://github.com/HankHuang0516/EClaw/issues/2821)) ([3e40955](https://github.com/HankHuang0516/EClaw/commit/3e40955650a05f45a6b9f7e39e73847705424a03))
* **portal/nagoya:** add parking shortcut buttons next to itinerary places ([#2826](https://github.com/HankHuang0516/EClaw/issues/2826)) ([63968c5](https://github.com/HankHuang0516/EClaw/commit/63968c554d046afc8d978de74e3aacbf7700500d))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **settings:** add rental roster management preview ([#2758](https://github.com/HankHuang0516/EClaw/issues/2758)) ([9706e59](https://github.com/HankHuang0516/EClaw/commit/9706e59ded140a90a6e02348124282bc69d89001))
* **rental:** add renter health chat indicator ([#2690](https://github.com/HankHuang0516/EClaw/issues/2690)) ([36cd2e9](https://github.com/HankHuang0516/EClaw/commit/36cd2e9802be4c7ebb03d3024617fa74aca48ffd))
* **ios:** add Tutorial & Intro entry in Settings ([#2800](https://github.com/HankHuang0516/EClaw/issues/2800)) ([ed83e51](https://github.com/HankHuang0516/EClaw/commit/ed83e51d043bf4cd5865f38dc95a91ed54820d6c))
* **landing:** add Watch Full Demo CTA below hero video ([#2799](https://github.com/HankHuang0516/EClaw/issues/2799)) ([66107c9](https://github.com/HankHuang0516/EClaw/commit/66107c954727551fd34d989a4674daaad9b63968))
* **footer:** add Watch Intro Video link in Info column ([#2798](https://github.com/HankHuang0516/EClaw/issues/2798)) ([d7c6d59](https://github.com/HankHuang0516/EClaw/commit/d7c6d596b69c6a5b257bf1f7a792a407ef9712ad))
* **i18n:** ar iter-2 — fill 623 missing keys against en source ([#2847](https://github.com/HankHuang0516/EClaw/issues/2847)) ([ee94a7a](https://github.com/HankHuang0516/EClaw/commit/ee94a7ae6812b5163efe4284ee4907ca32302f5c))
* **companion:** bridge crafter-station/petdex gallery (1784 pets) ([#2601](https://github.com/HankHuang0516/EClaw/issues/2601)) ([2e245be](https://github.com/HankHuang0516/EClaw/commit/2e245bea6dd47ea7361b927d389188a3c23b6bb3))
* **promo:** chat avatar size feature landing page (self-hosted MP4) ([#2722](https://github.com/HankHuang0516/EClaw/issues/2722)) ([3852210](https://github.com/HankHuang0516/EClaw/commit/3852210d355704d018e3daca6b5f9512a011b210)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **kanban:** cron-spawn jitter + lane backpressure to prevent same-tick wedge ([#2791](https://github.com/HankHuang0516/EClaw/issues/2791)) ([9f414a7](https://github.com/HankHuang0516/EClaw/commit/9f414a731d6393672a0a4189c7b408c529ae5e12)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **promo:** embed daily eclaw video 2026-05-14 ([#2786](https://github.com/HankHuang0516/EClaw/issues/2786)) ([718a814](https://github.com/HankHuang0516/EClaw/commit/718a814ab16850bc2b33a1b303841e2c4378ecfa)), closes [#2782](https://github.com/HankHuang0516/EClaw/issues/2782) [#2693](https://github.com/HankHuang0516/EClaw/issues/2693)
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **info:** embed promo video at top of Quick Start tab ([#2797](https://github.com/HankHuang0516/EClaw/issues/2797)) ([047679f](https://github.com/HankHuang0516/EClaw/commit/047679fd57ab9949eaeacea414d5611e71afe041))
* **rental:** enforce strict rebind refunds ([#2703](https://github.com/HankHuang0516/EClaw/issues/2703)) ([a1859c5](https://github.com/HankHuang0516/EClaw/commit/a1859c50e6fb3991d7a8051491502d824a14a116))
* **portal:** group task chip actions ([#2825](https://github.com/HankHuang0516/EClaw/issues/2825)) ([5db5c59](https://github.com/HankHuang0516/EClaw/commit/5db5c59b32b8635f1412205faf0c2f9164d3d5d4))
* **portal:** info-guide-rules + info-guide-soul slide pair ([#2793](https://github.com/HankHuang0516/EClaw/issues/2793)) ([1c8bddc](https://github.com/HankHuang0516/EClaw/commit/1c8bddc4c185054b2b60088498e3d45509117127)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **chat:** link card previews to kanban ([#2754](https://github.com/HankHuang0516/EClaw/issues/2754)) ([2261240](https://github.com/HankHuang0516/EClaw/commit/22612402c2e95efb07246629e81a849be41ee9c7))
* **mission:** link notes to kanban cards ([#2723](https://github.com/HankHuang0516/EClaw/issues/2723)) ([b36dc18](https://github.com/HankHuang0516/EClaw/commit/b36dc18f3a8facf12e0b6046351c222f1e99dc55))
* **mindmap:** mission.html link to /portal/mindmap.html + deprecate /api/mission/mindmap ([#2685](https://github.com/HankHuang0516/EClaw/issues/2685)) ([11e297b](https://github.com/HankHuang0516/EClaw/commit/11e297bab1c9b56fcde3027d6500b7c58891bf18)), closes [#2680](https://github.com/HankHuang0516/EClaw/issues/2680) [#2684](https://github.com/HankHuang0516/EClaw/issues/2684)
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **settings:** per-entity nudge override UI (Phase 2) ([#2837](https://github.com/HankHuang0516/EClaw/issues/2837)) ([ea7662b](https://github.com/HankHuang0516/EClaw/commit/ea7662b0858882dae461e1387f711895924f9ab8)), closes [3/#4](https://github.com/HankHuang0516/EClaw/issues/4)
* **kanban:** per-entity nudge overrides (Phase 2 of card_e066cb6b) ([#2836](https://github.com/HankHuang0516/EClaw/issues/2836)) ([0425f80](https://github.com/HankHuang0516/EClaw/commit/0425f80bc1169c0d506b665659c8676695c45553))
* **avatar:** petdx render on card-holder my-cards (Phase 1b) ([#2621](https://github.com/HankHuang0516/EClaw/issues/2621)) ([f78ba8b](https://github.com/HankHuang0516/EClaw/commit/f78ba8b18acc426936ab6d8a82ca7541effea00d))
* **avatar:** petdx render on dashboard entity grid / org chart / bindings (Phase 1b) ([#2622](https://github.com/HankHuang0516/EClaw/issues/2622)) ([f417749](https://github.com/HankHuang0516/EClaw/commit/f41774914451048e8cd76e9ae30416a0642e173b)), closes [#2620](https://github.com/HankHuang0516/EClaw/issues/2620) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621)
* **avatar:** petdx render on kanban auto-assign / pulse / comment avatars (Phase 1b) ([#2624](https://github.com/HankHuang0516/EClaw/issues/2624)) ([6bff5f8](https://github.com/HankHuang0516/EClaw/commit/6bff5f80440d0bd91a6b1721cde9478d685c4d46))
* **avatar:** petdx render on mission skill/rule/soul entity dialogs (Phase 1b) ([#2623](https://github.com/HankHuang0516/EClaw/issues/2623)) ([129327b](https://github.com/HankHuang0516/EClaw/commit/129327bc7b91056659f1ab7e8d5e3f5260d951fb))
* **mindmap:** portal/mindmap.html force-graph prototype ([#129](https://github.com/HankHuang0516/EClaw/issues/129)) ([#2681](https://github.com/HankHuang0516/EClaw/issues/2681)) ([0f15e69](https://github.com/HankHuang0516/EClaw/commit/0f15e6930f0697c37fa08f3219edb8f9e499837f)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **portal:** redo nagoya trip page in professional tour-guide style ([#2691](https://github.com/HankHuang0516/EClaw/issues/2691)) ([b2378c0](https://github.com/HankHuang0516/EClaw/commit/b2378c06ee20fa9cccfdceceb1a4c9e0b3072f59))
* **i18n:** remove ms+hi orphan keys from i18n.js ([#2849](https://github.com/HankHuang0516/EClaw/issues/2849)) ([320176c](https://github.com/HankHuang0516/EClaw/commit/320176c06a3cfd8631e2a82ad02a6bd6a9af0389))
* **avatar:** render selected petdx companion in chat avatars ([#2620](https://github.com/HankHuang0516/EClaw/issues/2620)) ([0bdd046](https://github.com/HankHuang0516/EClaw/commit/0bdd046fe1b1c428e32edda366ff112c08927f4c))
* **home:** replace native home with WebView hosting dashboard.html ([#2634](https://github.com/HankHuang0516/EClaw/issues/2634)) ([e69ea81](https://github.com/HankHuang0516/EClaw/commit/e69ea8160c239b083a83d6dc83a4f1c3f901c863))
* **app:** route chat mission jumps through native tabs ([#2824](https://github.com/HankHuang0516/EClaw/issues/2824)) ([deb07b6](https://github.com/HankHuang0516/EClaw/commit/deb07b69a9ecca632fe27278de537f1d85234e94))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **chat:** support message deep links ([#2719](https://github.com/HankHuang0516/EClaw/issues/2719)) ([2dc0f1e](https://github.com/HankHuang0516/EClaw/commit/2dc0f1eeb259e1a0848db4a03186b989372cd91c))
* **mission:** support note deep links ([#2717](https://github.com/HankHuang0516/EClaw/issues/2717)) ([2efd3a5](https://github.com/HankHuang0516/EClaw/commit/2efd3a5e741217a07c0b0ac54a0ddd010e0ebe23))
* **share-chat:** twitter card + per-bot og:image/twitter:* in SSR ([#2609](https://github.com/HankHuang0516/EClaw/issues/2609)) ([6cdc853](https://github.com/HankHuang0516/EClaw/commit/6cdc853dc884cdb95bd47214942768981f218ae0))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))
* **settings:** wire petdx avatar into channel-account chips ([#2626](https://github.com/HankHuang0516/EClaw/issues/2626)) ([88aec77](https://github.com/HankHuang0516/EClaw/commit/88aec772628c240e97b336bb5820892ad632d1ae))
* **files:** wire petdx avatar into entity filter & per-file badges ([#2627](https://github.com/HankHuang0516/EClaw/issues/2627)) ([5b3e5cc](https://github.com/HankHuang0516/EClaw/commit/5b3e5cc542d9da69bb4e92500fd03a542ea33f00))
* **mindmap:** wrap hardcoded zh-TW UI strings with i18n t() ([#2607](https://github.com/HankHuang0516/EClaw/issues/2607)) ([166af87](https://github.com/HankHuang0516/EClaw/commit/166af8772b2121a24aaf34a83b3de970e9b3b571)), closes [#2606](https://github.com/HankHuang0516/EClaw/issues/2606)
* **i18n:** zh-TW backfill 8 keys (soft-pause + chat + invite + wallet) ([#2815](https://github.com/HankHuang0516/EClaw/issues/2815)) ([a2dd574](https://github.com/HankHuang0516/EClaw/commit/a2dd5743ce8d43a4b6ace9a2fd4b52568180d6c5))


### Performance Improvements

* **mindmap:** force-graph hardening for 1000/2000-node graphs ([#2684](https://github.com/HankHuang0516/EClaw/issues/2684)) ([da8b1c8](https://github.com/HankHuang0516/EClaw/commit/da8b1c8f947ab8bc8fa455c1962a91146623a1fc))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-19)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **notifications:** add kanban_done + kanban_done_auto toggles to Android Settings ([#2636](https://github.com/HankHuang0516/EClaw/issues/2636)) ([a710909](https://github.com/HankHuang0516/EClaw/commit/a7109095e3393b8564e7ef1b23d382a4fbb944b8))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **chat:** atomic-load target bar (await contacts before first render) ([#2831](https://github.com/HankHuang0516/EClaw/issues/2831)) ([5f529e6](https://github.com/HankHuang0516/EClaw/commit/5f529e6b772eacc38ba1de69b44258a05f0d816a)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2](https://github.com/HankHuang0516/EClaw/issues/2)
* **i18n:** clear batch 1 residual missing keys ([#2790](https://github.com/HankHuang0516/EClaw/issues/2790)) ([211030e](https://github.com/HankHuang0516/EClaw/commit/211030e0b0b6a865c11f0c4ed60dc4e356d43b7a))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **kanban:** comment input no longer overlaps last comment in card detail (PR [#2678](https://github.com/HankHuang0516/EClaw/issues/2678)) ([fba91fc](https://github.com/HankHuang0516/EClaw/commit/fba91fca15402b453a0db5ee857c0b16e6087055))
* **chat:** compact 20px avatar in target bar (App WebView only shows [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2](https://github.com/HankHuang0516/EClaw/issues/2)) ([#2830](https://github.com/HankHuang0516/EClaw/issues/2830)) ([42c7543](https://github.com/HankHuang0516/EClaw/commit/42c7543b4a78a7abf3f5f7535eb9bc6142cd0fe2)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **portal:** complete 401 redirect sweep + mobile UIUX truncation ([#2842](https://github.com/HankHuang0516/EClaw/issues/2842)) ([f9799ba](https://github.com/HankHuang0516/EClaw/commit/f9799ba42498b109f0a8a70e80836aa6da51e216)), closes [#2833](https://github.com/HankHuang0516/EClaw/issues/2833) [#2845](https://github.com/HankHuang0516/EClaw/issues/2845) [#2844](https://github.com/HankHuang0516/EClaw/issues/2844) [#2843](https://github.com/HankHuang0516/EClaw/issues/2843)
* **i18n:** cover dynamic portal wrapper keys ([#2807](https://github.com/HankHuang0516/EClaw/issues/2807)) ([4c711cc](https://github.com/HankHuang0516/EClaw/commit/4c711cc4009300ffe4e8933a98ee01cd0fdd6aeb))
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **petdx:** drop dark-grey loading placeholder + preload sprite WEBP ([#2628](https://github.com/HankHuang0516/EClaw/issues/2628)) ([59cef38](https://github.com/HankHuang0516/EClaw/commit/59cef387bd69ca99d7d15c86a1364856d3849ad8)), closes [#1a1a1a](https://github.com/HankHuang0516/EClaw/issues/1a1a1a)
* **security:** escape innerHTML in chat modal error messages ([#2819](https://github.com/HankHuang0516/EClaw/issues/2819)) ([dce07ad](https://github.com/HankHuang0516/EClaw/commit/dce07adde64795916dba977ae23e46f3371ce7ed)), closes [#2809](https://github.com/HankHuang0516/EClaw/issues/2809) [#2810](https://github.com/HankHuang0516/EClaw/issues/2810) [#2809](https://github.com/HankHuang0516/EClaw/issues/2809) [#2810](https://github.com/HankHuang0516/EClaw/issues/2810)
* **entities:** expose botSecret to owner so wallpaper service can poll companions ([#2615](https://github.com/HankHuang0516/EClaw/issues/2615)) ([04470fc](https://github.com/HankHuang0516/EClaw/commit/04470fce8f8c3fce2b1ba8b243e776606f107502))
* **rental:** expose owner_public_code in marketplace so plaza CTA can route ([#2616](https://github.com/HankHuang0516/EClaw/issues/2616)) ([4d1372f](https://github.com/HankHuang0516/EClaw/commit/4d1372f717d93cab65543e87c852e74e9fb67071)), closes [#2610](https://github.com/HankHuang0516/EClaw/issues/2610)
* **mindmap:** fallback to device scope when entityId is null ([#2728](https://github.com/HankHuang0516/EClaw/issues/2728)) ([7572312](https://github.com/HankHuang0516/EClaw/commit/7572312433d3d75fc245eda48a28919ce14bd927))
* **i18n:** fill Spanish drift keys ([#2751](https://github.com/HankHuang0516/EClaw/issues/2751)) ([0ad0ee5](https://github.com/HankHuang0516/EClaw/commit/0ad0ee55f7fac3e6ac46d891539950dab4d553cc))
* **portal:** fit embedded org chart to mobile viewport ([#2674](https://github.com/HankHuang0516/EClaw/issues/2674)) ([1c4e1b4](https://github.com/HankHuang0516/EClaw/commit/1c4e1b413ea7027b4cd4b8ecda981b0d0e12e66b))
* **i18n:** fix 6 trailing-comma syntax errors in 10-locale batch ([#2771](https://github.com/HankHuang0516/EClaw/issues/2771)) ([b27c6ca](https://github.com/HankHuang0516/EClaw/commit/b27c6ca204bf813e406c54ce3a2532a5f1f031b3))
* **kanban:** GET card returns latest 50 comments + comments endpoint exposes total ([#2816](https://github.com/HankHuang0516/EClaw/issues/2816)) ([c4d83f7](https://github.com/HankHuang0516/EClaw/commit/c4d83f777a1cd26aea0936e4316aa35c52822eef))
* **uiux:** harden chat previews and roster preview ([#2769](https://github.com/HankHuang0516/EClaw/issues/2769)) ([466d4d3](https://github.com/HankHuang0516/EClaw/commit/466d4d3ef81c628d3f58db64323946053d7bf61c))
* **mention-parser:** ignore @-mentions inside markdown code spans ([#2645](https://github.com/HankHuang0516/EClaw/issues/2645)) ([8da19d4](https://github.com/HankHuang0516/EClaw/commit/8da19d4a79ceb4152bf2144ee0847c61ce3e1def)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **kanban:** lazy-load dependency chips via IntersectionObserver ([#2632](https://github.com/HankHuang0516/EClaw/issues/2632)) ([20586b4](https://github.com/HankHuang0516/EClaw/commit/20586b43357335f9eb6a190c02d58c8e36b58aba)), closes [#2631](https://github.com/HankHuang0516/EClaw/issues/2631)
* **kanban:** make card sorting deterministic ([#2756](https://github.com/HankHuang0516/EClaw/issues/2756)) ([48e2117](https://github.com/HankHuang0516/EClaw/commit/48e2117b64e37f05dc635e0a3b67bfd43cbe48f5))
* **org-chart:** notify affected bots on hierarchy change ([#2812](https://github.com/HankHuang0516/EClaw/issues/2812)) ([55675fd](https://github.com/HankHuang0516/EClaw/commit/55675fdf4487494d729a29524b32bd81b756a00c)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** notify reviewer on manual /move → review ([#2753](https://github.com/HankHuang0516/EClaw/issues/2753)) ([6cbbb4e](https://github.com/HankHuang0516/EClaw/commit/6cbbb4ee8c0d4d8ad54df2e9b5faaa3699bd530f))
* **wallpaper:** off-load spritesheet fetch to IO so per-petdx sprites actually render ([#2618](https://github.com/HankHuang0516/EClaw/issues/2618)) ([61b832c](https://github.com/HankHuang0516/EClaw/commit/61b832c9fa8a1d0caab810ccc942d85c63349267)), closes [#2615](https://github.com/HankHuang0516/EClaw/issues/2615) [#2577](https://github.com/HankHuang0516/EClaw/issues/2577)
* **security:** patch P0 sanitize-html XSS + P1 protobufjs + exam.html XSS ([#2829](https://github.com/HankHuang0516/EClaw/issues/2829)) ([c71b871](https://github.com/HankHuang0516/EClaw/commit/c71b871a045887375dd0d26d1a3280a0891a89ad))
* **portal:** petdx-browser cookie-session fallback for device-login ([#2757](https://github.com/HankHuang0516/EClaw/issues/2757)) ([ca275f4](https://github.com/HankHuang0516/EClaw/commit/ca275f4519835da0c7ad71c588908a18f6f138d8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **api:** platform-stats 500 + entity/lookup publicCode alias ([#2809](https://github.com/HankHuang0516/EClaw/issues/2809), [#2810](https://github.com/HankHuang0516/EClaw/issues/2810)) ([#2818](https://github.com/HankHuang0516/EClaw/issues/2818)) ([f99fd17](https://github.com/HankHuang0516/EClaw/commit/f99fd17b2b1c32d88daa2510ff66d714c1a53edc))
* **i18n:** positional format specifiers for feedback_result_logs (7 locales) ([#2597](https://github.com/HankHuang0516/EClaw/issues/2597)) ([21aedc7](https://github.com/HankHuang0516/EClaw/commit/21aedc7eebc7a2839e340136f38dfdfd4dabb9dc))
* **avatar-petdx:** preserve descriptor across transient API failures (flicker) ([#2625](https://github.com/HankHuang0516/EClaw/issues/2625)) ([7b1c606](https://github.com/HankHuang0516/EClaw/commit/7b1c606514f7698d72ec95cf6c556e4043966186))
* **chat:** preserve scroll anchor while reading history ([#2693](https://github.com/HankHuang0516/EClaw/issues/2693)) ([945fdb7](https://github.com/HankHuang0516/EClaw/commit/945fdb7192b791b31882e1e75568dd8b11e4686f))
* **promo:** pull video embed from /promo-chat-avatar.html ([#2724](https://github.com/HankHuang0516/EClaw/issues/2724)) ([2afabc8](https://github.com/HankHuang0516/EClaw/commit/2afabc8c5ff8b25218a7cb857e8adfa572c8e9d5))
* **kanban:** realign stale recurring schedules ([#2785](https://github.com/HankHuang0516/EClaw/issues/2785)) ([ab8ee25](https://github.com/HankHuang0516/EClaw/commit/ab8ee250a9b37f3d3e838bb01d8866c8d2b78231))
* **portal:** reduce QA-discovered request fanout ([#2656](https://github.com/HankHuang0516/EClaw/issues/2656)) ([1e46d6b](https://github.com/HankHuang0516/EClaw/commit/1e46d6bab61e58c65b452b6503d953f8dddeee75))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **portal:** remove org chart fit scale floor ([#2676](https://github.com/HankHuang0516/EClaw/issues/2676)) ([0f01606](https://github.com/HankHuang0516/EClaw/commit/0f016068b963bb5f800a02f28817c7174979d913))
* **i18n:** rename mm_empty_title → mm_state_empty_title in mindmap.html ([#2683](https://github.com/HankHuang0516/EClaw/issues/2683)) ([c79c109](https://github.com/HankHuang0516/EClaw/commit/c79c109bea23142e8a6d9ace976d105af1280ec9))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **chat:** render mention avatars with companion renderer ([#2633](https://github.com/HankHuang0516/EClaw/issues/2633)) ([03e205f](https://github.com/HankHuang0516/EClaw/commit/03e205f663ecd2c2f443d4009dd5af0093f0bbbb))
* **kanban:** reserve mobile comments panel height ([#2782](https://github.com/HankHuang0516/EClaw/issues/2782)) ([ce8662d](https://github.com/HankHuang0516/EClaw/commit/ce8662d362422fdd25037f1deb61dbed9425e2f9))
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* scheduled audit 2026-05-13 — 6 bugs, XSS, i18n ([#2668](https://github.com/HankHuang0516/EClaw/issues/2668)) ([21dd513](https://github.com/HankHuang0516/EClaw/commit/21dd513b4464738de29164265437435ba6cc4817)), closes [#2605](https://github.com/HankHuang0516/EClaw/issues/2605) [#2608](https://github.com/HankHuang0516/EClaw/issues/2608) [#2600](https://github.com/HankHuang0516/EClaw/issues/2600) [#2599](https://github.com/HankHuang0516/EClaw/issues/2599) [#2598](https://github.com/HankHuang0516/EClaw/issues/2598)
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **chat:** smart-chip preview falls back to inline c.comments when /comments fails (PR [#2677](https://github.com/HankHuang0516/EClaw/issues/2677)) ([7f4dffd](https://github.com/HankHuang0516/EClaw/commit/7f4dffd2c83ea86f296b8fa0610f0e67c9f1af11))
* **kanban:** stabilize comment detail viewport ([#2796](https://github.com/HankHuang0516/EClaw/issues/2796)) ([0a10aad](https://github.com/HankHuang0516/EClaw/commit/0a10aadb5a5b12ff23454c16d5c88183b94ad7d7))
* **wallpaper:** stop Android live wallpaper flashing default lobster on companion change ([#2629](https://github.com/HankHuang0516/EClaw/issues/2629)) ([8b4f66f](https://github.com/HankHuang0516/EClaw/commit/8b4f66fcb335bf43128f924b761b6337c817095b)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **chat:** stop chat.html bouncing to dashboard via /api/rental/health-status 401 race ([#2833](https://github.com/HankHuang0516/EClaw/issues/2833)) ([c422406](https://github.com/HankHuang0516/EClaw/commit/c4224067cdcfe7f3e22ab95007c7563dac4196ac))
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **app:** WebView pages honor app-selected locale via ?lang= URL param ([#2672](https://github.com/HankHuang0516/EClaw/issues/2672)) ([8ed8757](https://github.com/HankHuang0516/EClaw/commit/8ed8757aec5bf214e837cc0d81bf2b23f1993a91)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* **community:** 1-click chat button on bot cards + utm tagging ([#2610](https://github.com/HankHuang0516/EClaw/issues/2610)) ([eee97b0](https://github.com/HankHuang0516/EClaw/commit/eee97b0e2e4e74945ec24f218a69a52800b97a66))
* **chat:** accept ?messageId= as deep-link alias ([#2838](https://github.com/HankHuang0516/EClaw/issues/2838)) ([1785a87](https://github.com/HankHuang0516/EClaw/commit/1785a87310426637fd10df83754fb9924c45207f))
* **chat:** add avatar size preference ([#2714](https://github.com/HankHuang0516/EClaw/issues/2714)) ([6fe164a](https://github.com/HankHuang0516/EClaw/commit/6fe164ad8b22fa576d2dd9ad37c0d9fc295b5a83))
* **dashboard:** add Claude and Codex channel guides ([#2640](https://github.com/HankHuang0516/EClaw/issues/2640)) ([c64e4c4](https://github.com/HankHuang0516/EClaw/commit/c64e4c4afc78db58c5cd578f00486dd7b2fd3311))
* **dashboard:** add Claude Code channel guide card ([#2667](https://github.com/HankHuang0516/EClaw/issues/2667)) ([d70d75c](https://github.com/HankHuang0516/EClaw/commit/d70d75c0c8caa8a540358a9aab4556b8c1927a5c))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* **kanban:** add device-scoped card tags ([#2773](https://github.com/HankHuang0516/EClaw/issues/2773)) ([53a387e](https://github.com/HankHuang0516/EClaw/commit/53a387e67ba7bb4f6bed1c427000c4ae8666577a))
* **portal:** add entity selector to petdx-browser ([#2602](https://github.com/HankHuang0516/EClaw/issues/2602)) ([3fa067e](https://github.com/HankHuang0516/EClaw/commit/3fa067e00b38829b48a37cecd33ee81a9a1122d9))
* **kanban:** add explicit card links ([#2721](https://github.com/HankHuang0516/EClaw/issues/2721)) ([ef9f812](https://github.com/HankHuang0516/EClaw/commit/ef9f812a3fcf39efd07fd158ce90951bdd045ac7))
* **kanban:** add explicit done-card reopen flow ([#2801](https://github.com/HankHuang0516/EClaw/issues/2801)) ([5080aac](https://github.com/HankHuang0516/EClaw/commit/5080aacb75047c0deaa379ee708ec85465afd57c))
* **mindmap:** add GET /api/mindmap/graph force-graph projection ([#2680](https://github.com/HankHuang0516/EClaw/issues/2680)) ([a00b2e7](https://github.com/HankHuang0516/EClaw/commit/a00b2e775af2c4c98cd157f760ad87aeeee469f0)), closes [#2679](https://github.com/HankHuang0516/EClaw/issues/2679) [#2679](https://github.com/HankHuang0516/EClaw/issues/2679)
* **dashboard:** add Hermes channel promo card ([#2708](https://github.com/HankHuang0516/EClaw/issues/2708)) ([337aca1](https://github.com/HankHuang0516/EClaw/commit/337aca153d5a1cd7e888c065f00ae54db7872d91))
* **rental:** add listing soft pause ([#2781](https://github.com/HankHuang0516/EClaw/issues/2781)) ([6586b72](https://github.com/HankHuang0516/EClaw/commit/6586b72717ddb1637d91cd3242c8d2ff554f62b4))
* **portal:** add Nagoya 5D4N trip static cross-ref page ([#2689](https://github.com/HankHuang0516/EClaw/issues/2689)) ([2e0efb6](https://github.com/HankHuang0516/EClaw/commit/2e0efb6dcdaff52226cc8854a96747000b12bdff))
* **portal:** add Nagoya trip map links and image lightbox ([#2821](https://github.com/HankHuang0516/EClaw/issues/2821)) ([3e40955](https://github.com/HankHuang0516/EClaw/commit/3e40955650a05f45a6b9f7e39e73847705424a03))
* **portal/nagoya:** add parking shortcut buttons next to itinerary places ([#2826](https://github.com/HankHuang0516/EClaw/issues/2826)) ([63968c5](https://github.com/HankHuang0516/EClaw/commit/63968c554d046afc8d978de74e3aacbf7700500d))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **settings:** add rental roster management preview ([#2758](https://github.com/HankHuang0516/EClaw/issues/2758)) ([9706e59](https://github.com/HankHuang0516/EClaw/commit/9706e59ded140a90a6e02348124282bc69d89001))
* **rental:** add renter health chat indicator ([#2690](https://github.com/HankHuang0516/EClaw/issues/2690)) ([36cd2e9](https://github.com/HankHuang0516/EClaw/commit/36cd2e9802be4c7ebb03d3024617fa74aca48ffd))
* **ios:** add Tutorial & Intro entry in Settings ([#2800](https://github.com/HankHuang0516/EClaw/issues/2800)) ([ed83e51](https://github.com/HankHuang0516/EClaw/commit/ed83e51d043bf4cd5865f38dc95a91ed54820d6c))
* **landing:** add Watch Full Demo CTA below hero video ([#2799](https://github.com/HankHuang0516/EClaw/issues/2799)) ([66107c9](https://github.com/HankHuang0516/EClaw/commit/66107c954727551fd34d989a4674daaad9b63968))
* **footer:** add Watch Intro Video link in Info column ([#2798](https://github.com/HankHuang0516/EClaw/issues/2798)) ([d7c6d59](https://github.com/HankHuang0516/EClaw/commit/d7c6d596b69c6a5b257bf1f7a792a407ef9712ad))
* **i18n:** ar iter-2 — fill 623 missing keys against en source ([#2847](https://github.com/HankHuang0516/EClaw/issues/2847)) ([ee94a7a](https://github.com/HankHuang0516/EClaw/commit/ee94a7ae6812b5163efe4284ee4907ca32302f5c))
* **companion:** bridge crafter-station/petdex gallery (1784 pets) ([#2601](https://github.com/HankHuang0516/EClaw/issues/2601)) ([2e245be](https://github.com/HankHuang0516/EClaw/commit/2e245bea6dd47ea7361b927d389188a3c23b6bb3))
* **promo:** chat avatar size feature landing page (self-hosted MP4) ([#2722](https://github.com/HankHuang0516/EClaw/issues/2722)) ([3852210](https://github.com/HankHuang0516/EClaw/commit/3852210d355704d018e3daca6b5f9512a011b210)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **kanban:** cron-spawn jitter + lane backpressure to prevent same-tick wedge ([#2791](https://github.com/HankHuang0516/EClaw/issues/2791)) ([9f414a7](https://github.com/HankHuang0516/EClaw/commit/9f414a731d6393672a0a4189c7b408c529ae5e12)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **promo:** embed daily eclaw video 2026-05-14 ([#2786](https://github.com/HankHuang0516/EClaw/issues/2786)) ([718a814](https://github.com/HankHuang0516/EClaw/commit/718a814ab16850bc2b33a1b303841e2c4378ecfa)), closes [#2782](https://github.com/HankHuang0516/EClaw/issues/2782) [#2693](https://github.com/HankHuang0516/EClaw/issues/2693)
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **info:** embed promo video at top of Quick Start tab ([#2797](https://github.com/HankHuang0516/EClaw/issues/2797)) ([047679f](https://github.com/HankHuang0516/EClaw/commit/047679fd57ab9949eaeacea414d5611e71afe041))
* **rental:** enforce strict rebind refunds ([#2703](https://github.com/HankHuang0516/EClaw/issues/2703)) ([a1859c5](https://github.com/HankHuang0516/EClaw/commit/a1859c50e6fb3991d7a8051491502d824a14a116))
* **portal:** group task chip actions ([#2825](https://github.com/HankHuang0516/EClaw/issues/2825)) ([5db5c59](https://github.com/HankHuang0516/EClaw/commit/5db5c59b32b8635f1412205faf0c2f9164d3d5d4))
* **portal:** info-guide-rules + info-guide-soul slide pair ([#2793](https://github.com/HankHuang0516/EClaw/issues/2793)) ([1c8bddc](https://github.com/HankHuang0516/EClaw/commit/1c8bddc4c185054b2b60088498e3d45509117127)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **chat:** link card previews to kanban ([#2754](https://github.com/HankHuang0516/EClaw/issues/2754)) ([2261240](https://github.com/HankHuang0516/EClaw/commit/22612402c2e95efb07246629e81a849be41ee9c7))
* **mission:** link notes to kanban cards ([#2723](https://github.com/HankHuang0516/EClaw/issues/2723)) ([b36dc18](https://github.com/HankHuang0516/EClaw/commit/b36dc18f3a8facf12e0b6046351c222f1e99dc55))
* **mindmap:** mission.html link to /portal/mindmap.html + deprecate /api/mission/mindmap ([#2685](https://github.com/HankHuang0516/EClaw/issues/2685)) ([11e297b](https://github.com/HankHuang0516/EClaw/commit/11e297bab1c9b56fcde3027d6500b7c58891bf18)), closes [#2680](https://github.com/HankHuang0516/EClaw/issues/2680) [#2684](https://github.com/HankHuang0516/EClaw/issues/2684)
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **settings:** per-entity nudge override UI (Phase 2) ([#2837](https://github.com/HankHuang0516/EClaw/issues/2837)) ([ea7662b](https://github.com/HankHuang0516/EClaw/commit/ea7662b0858882dae461e1387f711895924f9ab8)), closes [3/#4](https://github.com/HankHuang0516/EClaw/issues/4)
* **kanban:** per-entity nudge overrides (Phase 2 of card_e066cb6b) ([#2836](https://github.com/HankHuang0516/EClaw/issues/2836)) ([0425f80](https://github.com/HankHuang0516/EClaw/commit/0425f80bc1169c0d506b665659c8676695c45553))
* **avatar:** petdx render on card-holder my-cards (Phase 1b) ([#2621](https://github.com/HankHuang0516/EClaw/issues/2621)) ([f78ba8b](https://github.com/HankHuang0516/EClaw/commit/f78ba8b18acc426936ab6d8a82ca7541effea00d))
* **avatar:** petdx render on dashboard entity grid / org chart / bindings (Phase 1b) ([#2622](https://github.com/HankHuang0516/EClaw/issues/2622)) ([f417749](https://github.com/HankHuang0516/EClaw/commit/f41774914451048e8cd76e9ae30416a0642e173b)), closes [#2620](https://github.com/HankHuang0516/EClaw/issues/2620) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621)
* **avatar:** petdx render on kanban auto-assign / pulse / comment avatars (Phase 1b) ([#2624](https://github.com/HankHuang0516/EClaw/issues/2624)) ([6bff5f8](https://github.com/HankHuang0516/EClaw/commit/6bff5f80440d0bd91a6b1721cde9478d685c4d46))
* **avatar:** petdx render on mission skill/rule/soul entity dialogs (Phase 1b) ([#2623](https://github.com/HankHuang0516/EClaw/issues/2623)) ([129327b](https://github.com/HankHuang0516/EClaw/commit/129327bc7b91056659f1ab7e8d5e3f5260d951fb))
* **mindmap:** portal/mindmap.html force-graph prototype ([#129](https://github.com/HankHuang0516/EClaw/issues/129)) ([#2681](https://github.com/HankHuang0516/EClaw/issues/2681)) ([0f15e69](https://github.com/HankHuang0516/EClaw/commit/0f15e6930f0697c37fa08f3219edb8f9e499837f)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **portal:** redo nagoya trip page in professional tour-guide style ([#2691](https://github.com/HankHuang0516/EClaw/issues/2691)) ([b2378c0](https://github.com/HankHuang0516/EClaw/commit/b2378c06ee20fa9cccfdceceb1a4c9e0b3072f59))
* **i18n:** remove ms+hi orphan keys from i18n.js ([#2849](https://github.com/HankHuang0516/EClaw/issues/2849)) ([320176c](https://github.com/HankHuang0516/EClaw/commit/320176c06a3cfd8631e2a82ad02a6bd6a9af0389))
* **avatar:** render selected petdx companion in chat avatars ([#2620](https://github.com/HankHuang0516/EClaw/issues/2620)) ([0bdd046](https://github.com/HankHuang0516/EClaw/commit/0bdd046fe1b1c428e32edda366ff112c08927f4c))
* **home:** replace native home with WebView hosting dashboard.html ([#2634](https://github.com/HankHuang0516/EClaw/issues/2634)) ([e69ea81](https://github.com/HankHuang0516/EClaw/commit/e69ea8160c239b083a83d6dc83a4f1c3f901c863))
* **app:** route chat mission jumps through native tabs ([#2824](https://github.com/HankHuang0516/EClaw/issues/2824)) ([deb07b6](https://github.com/HankHuang0516/EClaw/commit/deb07b69a9ecca632fe27278de537f1d85234e94))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **chat:** support message deep links ([#2719](https://github.com/HankHuang0516/EClaw/issues/2719)) ([2dc0f1e](https://github.com/HankHuang0516/EClaw/commit/2dc0f1eeb259e1a0848db4a03186b989372cd91c))
* **mission:** support note deep links ([#2717](https://github.com/HankHuang0516/EClaw/issues/2717)) ([2efd3a5](https://github.com/HankHuang0516/EClaw/commit/2efd3a5e741217a07c0b0ac54a0ddd010e0ebe23))
* **share-chat:** twitter card + per-bot og:image/twitter:* in SSR ([#2609](https://github.com/HankHuang0516/EClaw/issues/2609)) ([6cdc853](https://github.com/HankHuang0516/EClaw/commit/6cdc853dc884cdb95bd47214942768981f218ae0))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))
* **settings:** wire petdx avatar into channel-account chips ([#2626](https://github.com/HankHuang0516/EClaw/issues/2626)) ([88aec77](https://github.com/HankHuang0516/EClaw/commit/88aec772628c240e97b336bb5820892ad632d1ae))
* **files:** wire petdx avatar into entity filter & per-file badges ([#2627](https://github.com/HankHuang0516/EClaw/issues/2627)) ([5b3e5cc](https://github.com/HankHuang0516/EClaw/commit/5b3e5cc542d9da69bb4e92500fd03a542ea33f00))
* **mindmap:** wrap hardcoded zh-TW UI strings with i18n t() ([#2607](https://github.com/HankHuang0516/EClaw/issues/2607)) ([166af87](https://github.com/HankHuang0516/EClaw/commit/166af8772b2121a24aaf34a83b3de970e9b3b571)), closes [#2606](https://github.com/HankHuang0516/EClaw/issues/2606)
* **i18n:** zh-TW backfill 8 keys (soft-pause + chat + invite + wallet) ([#2815](https://github.com/HankHuang0516/EClaw/issues/2815)) ([a2dd574](https://github.com/HankHuang0516/EClaw/commit/a2dd5743ce8d43a4b6ace9a2fd4b52568180d6c5))


### Performance Improvements

* **mindmap:** force-graph hardening for 1000/2000-node graphs ([#2684](https://github.com/HankHuang0516/EClaw/issues/2684)) ([da8b1c8](https://github.com/HankHuang0516/EClaw/commit/da8b1c8f947ab8bc8fa455c1962a91146623a1fc))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-19)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **notifications:** add kanban_done + kanban_done_auto toggles to Android Settings ([#2636](https://github.com/HankHuang0516/EClaw/issues/2636)) ([a710909](https://github.com/HankHuang0516/EClaw/commit/a7109095e3393b8564e7ef1b23d382a4fbb944b8))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **chat:** atomic-load target bar (await contacts before first render) ([#2831](https://github.com/HankHuang0516/EClaw/issues/2831)) ([5f529e6](https://github.com/HankHuang0516/EClaw/commit/5f529e6b772eacc38ba1de69b44258a05f0d816a)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2](https://github.com/HankHuang0516/EClaw/issues/2)
* **i18n:** clear batch 1 residual missing keys ([#2790](https://github.com/HankHuang0516/EClaw/issues/2790)) ([211030e](https://github.com/HankHuang0516/EClaw/commit/211030e0b0b6a865c11f0c4ed60dc4e356d43b7a))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **kanban:** comment input no longer overlaps last comment in card detail (PR [#2678](https://github.com/HankHuang0516/EClaw/issues/2678)) ([fba91fc](https://github.com/HankHuang0516/EClaw/commit/fba91fca15402b453a0db5ee857c0b16e6087055))
* **chat:** compact 20px avatar in target bar (App WebView only shows [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2](https://github.com/HankHuang0516/EClaw/issues/2)) ([#2830](https://github.com/HankHuang0516/EClaw/issues/2830)) ([42c7543](https://github.com/HankHuang0516/EClaw/commit/42c7543b4a78a7abf3f5f7535eb9bc6142cd0fe2)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **portal:** complete 401 redirect sweep + mobile UIUX truncation ([#2842](https://github.com/HankHuang0516/EClaw/issues/2842)) ([f9799ba](https://github.com/HankHuang0516/EClaw/commit/f9799ba42498b109f0a8a70e80836aa6da51e216)), closes [#2833](https://github.com/HankHuang0516/EClaw/issues/2833) [#2845](https://github.com/HankHuang0516/EClaw/issues/2845) [#2844](https://github.com/HankHuang0516/EClaw/issues/2844) [#2843](https://github.com/HankHuang0516/EClaw/issues/2843)
* **i18n:** cover dynamic portal wrapper keys ([#2807](https://github.com/HankHuang0516/EClaw/issues/2807)) ([4c711cc](https://github.com/HankHuang0516/EClaw/commit/4c711cc4009300ffe4e8933a98ee01cd0fdd6aeb))
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **petdx:** drop dark-grey loading placeholder + preload sprite WEBP ([#2628](https://github.com/HankHuang0516/EClaw/issues/2628)) ([59cef38](https://github.com/HankHuang0516/EClaw/commit/59cef387bd69ca99d7d15c86a1364856d3849ad8)), closes [#1a1a1a](https://github.com/HankHuang0516/EClaw/issues/1a1a1a)
* **security:** escape innerHTML in chat modal error messages ([#2819](https://github.com/HankHuang0516/EClaw/issues/2819)) ([dce07ad](https://github.com/HankHuang0516/EClaw/commit/dce07adde64795916dba977ae23e46f3371ce7ed)), closes [#2809](https://github.com/HankHuang0516/EClaw/issues/2809) [#2810](https://github.com/HankHuang0516/EClaw/issues/2810) [#2809](https://github.com/HankHuang0516/EClaw/issues/2809) [#2810](https://github.com/HankHuang0516/EClaw/issues/2810)
* **entities:** expose botSecret to owner so wallpaper service can poll companions ([#2615](https://github.com/HankHuang0516/EClaw/issues/2615)) ([04470fc](https://github.com/HankHuang0516/EClaw/commit/04470fce8f8c3fce2b1ba8b243e776606f107502))
* **rental:** expose owner_public_code in marketplace so plaza CTA can route ([#2616](https://github.com/HankHuang0516/EClaw/issues/2616)) ([4d1372f](https://github.com/HankHuang0516/EClaw/commit/4d1372f717d93cab65543e87c852e74e9fb67071)), closes [#2610](https://github.com/HankHuang0516/EClaw/issues/2610)
* **mindmap:** fallback to device scope when entityId is null ([#2728](https://github.com/HankHuang0516/EClaw/issues/2728)) ([7572312](https://github.com/HankHuang0516/EClaw/commit/7572312433d3d75fc245eda48a28919ce14bd927))
* **i18n:** fill Spanish drift keys ([#2751](https://github.com/HankHuang0516/EClaw/issues/2751)) ([0ad0ee5](https://github.com/HankHuang0516/EClaw/commit/0ad0ee55f7fac3e6ac46d891539950dab4d553cc))
* **portal:** fit embedded org chart to mobile viewport ([#2674](https://github.com/HankHuang0516/EClaw/issues/2674)) ([1c4e1b4](https://github.com/HankHuang0516/EClaw/commit/1c4e1b413ea7027b4cd4b8ecda981b0d0e12e66b))
* **i18n:** fix 6 trailing-comma syntax errors in 10-locale batch ([#2771](https://github.com/HankHuang0516/EClaw/issues/2771)) ([b27c6ca](https://github.com/HankHuang0516/EClaw/commit/b27c6ca204bf813e406c54ce3a2532a5f1f031b3))
* **kanban:** GET card returns latest 50 comments + comments endpoint exposes total ([#2816](https://github.com/HankHuang0516/EClaw/issues/2816)) ([c4d83f7](https://github.com/HankHuang0516/EClaw/commit/c4d83f777a1cd26aea0936e4316aa35c52822eef))
* **uiux:** harden chat previews and roster preview ([#2769](https://github.com/HankHuang0516/EClaw/issues/2769)) ([466d4d3](https://github.com/HankHuang0516/EClaw/commit/466d4d3ef81c628d3f58db64323946053d7bf61c))
* **mention-parser:** ignore @-mentions inside markdown code spans ([#2645](https://github.com/HankHuang0516/EClaw/issues/2645)) ([8da19d4](https://github.com/HankHuang0516/EClaw/commit/8da19d4a79ceb4152bf2144ee0847c61ce3e1def)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **kanban:** lazy-load dependency chips via IntersectionObserver ([#2632](https://github.com/HankHuang0516/EClaw/issues/2632)) ([20586b4](https://github.com/HankHuang0516/EClaw/commit/20586b43357335f9eb6a190c02d58c8e36b58aba)), closes [#2631](https://github.com/HankHuang0516/EClaw/issues/2631)
* **kanban:** make card sorting deterministic ([#2756](https://github.com/HankHuang0516/EClaw/issues/2756)) ([48e2117](https://github.com/HankHuang0516/EClaw/commit/48e2117b64e37f05dc635e0a3b67bfd43cbe48f5))
* **org-chart:** notify affected bots on hierarchy change ([#2812](https://github.com/HankHuang0516/EClaw/issues/2812)) ([55675fd](https://github.com/HankHuang0516/EClaw/commit/55675fdf4487494d729a29524b32bd81b756a00c)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** notify reviewer on manual /move → review ([#2753](https://github.com/HankHuang0516/EClaw/issues/2753)) ([6cbbb4e](https://github.com/HankHuang0516/EClaw/commit/6cbbb4ee8c0d4d8ad54df2e9b5faaa3699bd530f))
* **wallpaper:** off-load spritesheet fetch to IO so per-petdx sprites actually render ([#2618](https://github.com/HankHuang0516/EClaw/issues/2618)) ([61b832c](https://github.com/HankHuang0516/EClaw/commit/61b832c9fa8a1d0caab810ccc942d85c63349267)), closes [#2615](https://github.com/HankHuang0516/EClaw/issues/2615) [#2577](https://github.com/HankHuang0516/EClaw/issues/2577)
* **security:** patch P0 sanitize-html XSS + P1 protobufjs + exam.html XSS ([#2829](https://github.com/HankHuang0516/EClaw/issues/2829)) ([c71b871](https://github.com/HankHuang0516/EClaw/commit/c71b871a045887375dd0d26d1a3280a0891a89ad))
* **portal:** petdx-browser cookie-session fallback for device-login ([#2757](https://github.com/HankHuang0516/EClaw/issues/2757)) ([ca275f4](https://github.com/HankHuang0516/EClaw/commit/ca275f4519835da0c7ad71c588908a18f6f138d8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **api:** platform-stats 500 + entity/lookup publicCode alias ([#2809](https://github.com/HankHuang0516/EClaw/issues/2809), [#2810](https://github.com/HankHuang0516/EClaw/issues/2810)) ([#2818](https://github.com/HankHuang0516/EClaw/issues/2818)) ([f99fd17](https://github.com/HankHuang0516/EClaw/commit/f99fd17b2b1c32d88daa2510ff66d714c1a53edc))
* **i18n:** positional format specifiers for feedback_result_logs (7 locales) ([#2597](https://github.com/HankHuang0516/EClaw/issues/2597)) ([21aedc7](https://github.com/HankHuang0516/EClaw/commit/21aedc7eebc7a2839e340136f38dfdfd4dabb9dc))
* **avatar-petdx:** preserve descriptor across transient API failures (flicker) ([#2625](https://github.com/HankHuang0516/EClaw/issues/2625)) ([7b1c606](https://github.com/HankHuang0516/EClaw/commit/7b1c606514f7698d72ec95cf6c556e4043966186))
* **chat:** preserve scroll anchor while reading history ([#2693](https://github.com/HankHuang0516/EClaw/issues/2693)) ([945fdb7](https://github.com/HankHuang0516/EClaw/commit/945fdb7192b791b31882e1e75568dd8b11e4686f))
* **promo:** pull video embed from /promo-chat-avatar.html ([#2724](https://github.com/HankHuang0516/EClaw/issues/2724)) ([2afabc8](https://github.com/HankHuang0516/EClaw/commit/2afabc8c5ff8b25218a7cb857e8adfa572c8e9d5))
* **kanban:** realign stale recurring schedules ([#2785](https://github.com/HankHuang0516/EClaw/issues/2785)) ([ab8ee25](https://github.com/HankHuang0516/EClaw/commit/ab8ee250a9b37f3d3e838bb01d8866c8d2b78231))
* **portal:** reduce QA-discovered request fanout ([#2656](https://github.com/HankHuang0516/EClaw/issues/2656)) ([1e46d6b](https://github.com/HankHuang0516/EClaw/commit/1e46d6bab61e58c65b452b6503d953f8dddeee75))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **portal:** remove org chart fit scale floor ([#2676](https://github.com/HankHuang0516/EClaw/issues/2676)) ([0f01606](https://github.com/HankHuang0516/EClaw/commit/0f016068b963bb5f800a02f28817c7174979d913))
* **i18n:** rename mm_empty_title → mm_state_empty_title in mindmap.html ([#2683](https://github.com/HankHuang0516/EClaw/issues/2683)) ([c79c109](https://github.com/HankHuang0516/EClaw/commit/c79c109bea23142e8a6d9ace976d105af1280ec9))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **chat:** render mention avatars with companion renderer ([#2633](https://github.com/HankHuang0516/EClaw/issues/2633)) ([03e205f](https://github.com/HankHuang0516/EClaw/commit/03e205f663ecd2c2f443d4009dd5af0093f0bbbb))
* **kanban:** reserve mobile comments panel height ([#2782](https://github.com/HankHuang0516/EClaw/issues/2782)) ([ce8662d](https://github.com/HankHuang0516/EClaw/commit/ce8662d362422fdd25037f1deb61dbed9425e2f9))
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* scheduled audit 2026-05-13 — 6 bugs, XSS, i18n ([#2668](https://github.com/HankHuang0516/EClaw/issues/2668)) ([21dd513](https://github.com/HankHuang0516/EClaw/commit/21dd513b4464738de29164265437435ba6cc4817)), closes [#2605](https://github.com/HankHuang0516/EClaw/issues/2605) [#2608](https://github.com/HankHuang0516/EClaw/issues/2608) [#2600](https://github.com/HankHuang0516/EClaw/issues/2600) [#2599](https://github.com/HankHuang0516/EClaw/issues/2599) [#2598](https://github.com/HankHuang0516/EClaw/issues/2598)
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **chat:** smart-chip preview falls back to inline c.comments when /comments fails (PR [#2677](https://github.com/HankHuang0516/EClaw/issues/2677)) ([7f4dffd](https://github.com/HankHuang0516/EClaw/commit/7f4dffd2c83ea86f296b8fa0610f0e67c9f1af11))
* **kanban:** stabilize comment detail viewport ([#2796](https://github.com/HankHuang0516/EClaw/issues/2796)) ([0a10aad](https://github.com/HankHuang0516/EClaw/commit/0a10aadb5a5b12ff23454c16d5c88183b94ad7d7))
* **wallpaper:** stop Android live wallpaper flashing default lobster on companion change ([#2629](https://github.com/HankHuang0516/EClaw/issues/2629)) ([8b4f66f](https://github.com/HankHuang0516/EClaw/commit/8b4f66fcb335bf43128f924b761b6337c817095b)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **chat:** stop chat.html bouncing to dashboard via /api/rental/health-status 401 race ([#2833](https://github.com/HankHuang0516/EClaw/issues/2833)) ([c422406](https://github.com/HankHuang0516/EClaw/commit/c4224067cdcfe7f3e22ab95007c7563dac4196ac))
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **app:** WebView pages honor app-selected locale via ?lang= URL param ([#2672](https://github.com/HankHuang0516/EClaw/issues/2672)) ([8ed8757](https://github.com/HankHuang0516/EClaw/commit/8ed8757aec5bf214e837cc0d81bf2b23f1993a91)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* **community:** 1-click chat button on bot cards + utm tagging ([#2610](https://github.com/HankHuang0516/EClaw/issues/2610)) ([eee97b0](https://github.com/HankHuang0516/EClaw/commit/eee97b0e2e4e74945ec24f218a69a52800b97a66))
* **chat:** accept ?messageId= as deep-link alias ([#2838](https://github.com/HankHuang0516/EClaw/issues/2838)) ([1785a87](https://github.com/HankHuang0516/EClaw/commit/1785a87310426637fd10df83754fb9924c45207f))
* **chat:** add avatar size preference ([#2714](https://github.com/HankHuang0516/EClaw/issues/2714)) ([6fe164a](https://github.com/HankHuang0516/EClaw/commit/6fe164ad8b22fa576d2dd9ad37c0d9fc295b5a83))
* **dashboard:** add Claude and Codex channel guides ([#2640](https://github.com/HankHuang0516/EClaw/issues/2640)) ([c64e4c4](https://github.com/HankHuang0516/EClaw/commit/c64e4c4afc78db58c5cd578f00486dd7b2fd3311))
* **dashboard:** add Claude Code channel guide card ([#2667](https://github.com/HankHuang0516/EClaw/issues/2667)) ([d70d75c](https://github.com/HankHuang0516/EClaw/commit/d70d75c0c8caa8a540358a9aab4556b8c1927a5c))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* **kanban:** add device-scoped card tags ([#2773](https://github.com/HankHuang0516/EClaw/issues/2773)) ([53a387e](https://github.com/HankHuang0516/EClaw/commit/53a387e67ba7bb4f6bed1c427000c4ae8666577a))
* **portal:** add entity selector to petdx-browser ([#2602](https://github.com/HankHuang0516/EClaw/issues/2602)) ([3fa067e](https://github.com/HankHuang0516/EClaw/commit/3fa067e00b38829b48a37cecd33ee81a9a1122d9))
* **kanban:** add explicit card links ([#2721](https://github.com/HankHuang0516/EClaw/issues/2721)) ([ef9f812](https://github.com/HankHuang0516/EClaw/commit/ef9f812a3fcf39efd07fd158ce90951bdd045ac7))
* **kanban:** add explicit done-card reopen flow ([#2801](https://github.com/HankHuang0516/EClaw/issues/2801)) ([5080aac](https://github.com/HankHuang0516/EClaw/commit/5080aacb75047c0deaa379ee708ec85465afd57c))
* **mindmap:** add GET /api/mindmap/graph force-graph projection ([#2680](https://github.com/HankHuang0516/EClaw/issues/2680)) ([a00b2e7](https://github.com/HankHuang0516/EClaw/commit/a00b2e775af2c4c98cd157f760ad87aeeee469f0)), closes [#2679](https://github.com/HankHuang0516/EClaw/issues/2679) [#2679](https://github.com/HankHuang0516/EClaw/issues/2679)
* **dashboard:** add Hermes channel promo card ([#2708](https://github.com/HankHuang0516/EClaw/issues/2708)) ([337aca1](https://github.com/HankHuang0516/EClaw/commit/337aca153d5a1cd7e888c065f00ae54db7872d91))
* **rental:** add listing soft pause ([#2781](https://github.com/HankHuang0516/EClaw/issues/2781)) ([6586b72](https://github.com/HankHuang0516/EClaw/commit/6586b72717ddb1637d91cd3242c8d2ff554f62b4))
* **portal:** add Nagoya 5D4N trip static cross-ref page ([#2689](https://github.com/HankHuang0516/EClaw/issues/2689)) ([2e0efb6](https://github.com/HankHuang0516/EClaw/commit/2e0efb6dcdaff52226cc8854a96747000b12bdff))
* **portal:** add Nagoya trip map links and image lightbox ([#2821](https://github.com/HankHuang0516/EClaw/issues/2821)) ([3e40955](https://github.com/HankHuang0516/EClaw/commit/3e40955650a05f45a6b9f7e39e73847705424a03))
* **portal/nagoya:** add parking shortcut buttons next to itinerary places ([#2826](https://github.com/HankHuang0516/EClaw/issues/2826)) ([63968c5](https://github.com/HankHuang0516/EClaw/commit/63968c554d046afc8d978de74e3aacbf7700500d))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **settings:** add rental roster management preview ([#2758](https://github.com/HankHuang0516/EClaw/issues/2758)) ([9706e59](https://github.com/HankHuang0516/EClaw/commit/9706e59ded140a90a6e02348124282bc69d89001))
* **rental:** add renter health chat indicator ([#2690](https://github.com/HankHuang0516/EClaw/issues/2690)) ([36cd2e9](https://github.com/HankHuang0516/EClaw/commit/36cd2e9802be4c7ebb03d3024617fa74aca48ffd))
* **ios:** add Tutorial & Intro entry in Settings ([#2800](https://github.com/HankHuang0516/EClaw/issues/2800)) ([ed83e51](https://github.com/HankHuang0516/EClaw/commit/ed83e51d043bf4cd5865f38dc95a91ed54820d6c))
* **landing:** add Watch Full Demo CTA below hero video ([#2799](https://github.com/HankHuang0516/EClaw/issues/2799)) ([66107c9](https://github.com/HankHuang0516/EClaw/commit/66107c954727551fd34d989a4674daaad9b63968))
* **footer:** add Watch Intro Video link in Info column ([#2798](https://github.com/HankHuang0516/EClaw/issues/2798)) ([d7c6d59](https://github.com/HankHuang0516/EClaw/commit/d7c6d596b69c6a5b257bf1f7a792a407ef9712ad))
* **i18n:** ar iter-2 — fill 623 missing keys against en source ([#2847](https://github.com/HankHuang0516/EClaw/issues/2847)) ([ee94a7a](https://github.com/HankHuang0516/EClaw/commit/ee94a7ae6812b5163efe4284ee4907ca32302f5c))
* **companion:** bridge crafter-station/petdex gallery (1784 pets) ([#2601](https://github.com/HankHuang0516/EClaw/issues/2601)) ([2e245be](https://github.com/HankHuang0516/EClaw/commit/2e245bea6dd47ea7361b927d389188a3c23b6bb3))
* **promo:** chat avatar size feature landing page (self-hosted MP4) ([#2722](https://github.com/HankHuang0516/EClaw/issues/2722)) ([3852210](https://github.com/HankHuang0516/EClaw/commit/3852210d355704d018e3daca6b5f9512a011b210)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **kanban:** cron-spawn jitter + lane backpressure to prevent same-tick wedge ([#2791](https://github.com/HankHuang0516/EClaw/issues/2791)) ([9f414a7](https://github.com/HankHuang0516/EClaw/commit/9f414a731d6393672a0a4189c7b408c529ae5e12)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **promo:** embed daily eclaw video 2026-05-14 ([#2786](https://github.com/HankHuang0516/EClaw/issues/2786)) ([718a814](https://github.com/HankHuang0516/EClaw/commit/718a814ab16850bc2b33a1b303841e2c4378ecfa)), closes [#2782](https://github.com/HankHuang0516/EClaw/issues/2782) [#2693](https://github.com/HankHuang0516/EClaw/issues/2693)
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **info:** embed promo video at top of Quick Start tab ([#2797](https://github.com/HankHuang0516/EClaw/issues/2797)) ([047679f](https://github.com/HankHuang0516/EClaw/commit/047679fd57ab9949eaeacea414d5611e71afe041))
* **rental:** enforce strict rebind refunds ([#2703](https://github.com/HankHuang0516/EClaw/issues/2703)) ([a1859c5](https://github.com/HankHuang0516/EClaw/commit/a1859c50e6fb3991d7a8051491502d824a14a116))
* **portal:** group task chip actions ([#2825](https://github.com/HankHuang0516/EClaw/issues/2825)) ([5db5c59](https://github.com/HankHuang0516/EClaw/commit/5db5c59b32b8635f1412205faf0c2f9164d3d5d4))
* **portal:** info-guide-rules + info-guide-soul slide pair ([#2793](https://github.com/HankHuang0516/EClaw/issues/2793)) ([1c8bddc](https://github.com/HankHuang0516/EClaw/commit/1c8bddc4c185054b2b60088498e3d45509117127)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **chat:** link card previews to kanban ([#2754](https://github.com/HankHuang0516/EClaw/issues/2754)) ([2261240](https://github.com/HankHuang0516/EClaw/commit/22612402c2e95efb07246629e81a849be41ee9c7))
* **mission:** link notes to kanban cards ([#2723](https://github.com/HankHuang0516/EClaw/issues/2723)) ([b36dc18](https://github.com/HankHuang0516/EClaw/commit/b36dc18f3a8facf12e0b6046351c222f1e99dc55))
* **mindmap:** mission.html link to /portal/mindmap.html + deprecate /api/mission/mindmap ([#2685](https://github.com/HankHuang0516/EClaw/issues/2685)) ([11e297b](https://github.com/HankHuang0516/EClaw/commit/11e297bab1c9b56fcde3027d6500b7c58891bf18)), closes [#2680](https://github.com/HankHuang0516/EClaw/issues/2680) [#2684](https://github.com/HankHuang0516/EClaw/issues/2684)
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **settings:** per-entity nudge override UI (Phase 2) ([#2837](https://github.com/HankHuang0516/EClaw/issues/2837)) ([ea7662b](https://github.com/HankHuang0516/EClaw/commit/ea7662b0858882dae461e1387f711895924f9ab8)), closes [3/#4](https://github.com/HankHuang0516/EClaw/issues/4)
* **kanban:** per-entity nudge overrides (Phase 2 of card_e066cb6b) ([#2836](https://github.com/HankHuang0516/EClaw/issues/2836)) ([0425f80](https://github.com/HankHuang0516/EClaw/commit/0425f80bc1169c0d506b665659c8676695c45553))
* **avatar:** petdx render on card-holder my-cards (Phase 1b) ([#2621](https://github.com/HankHuang0516/EClaw/issues/2621)) ([f78ba8b](https://github.com/HankHuang0516/EClaw/commit/f78ba8b18acc426936ab6d8a82ca7541effea00d))
* **avatar:** petdx render on dashboard entity grid / org chart / bindings (Phase 1b) ([#2622](https://github.com/HankHuang0516/EClaw/issues/2622)) ([f417749](https://github.com/HankHuang0516/EClaw/commit/f41774914451048e8cd76e9ae30416a0642e173b)), closes [#2620](https://github.com/HankHuang0516/EClaw/issues/2620) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621)
* **avatar:** petdx render on kanban auto-assign / pulse / comment avatars (Phase 1b) ([#2624](https://github.com/HankHuang0516/EClaw/issues/2624)) ([6bff5f8](https://github.com/HankHuang0516/EClaw/commit/6bff5f80440d0bd91a6b1721cde9478d685c4d46))
* **avatar:** petdx render on mission skill/rule/soul entity dialogs (Phase 1b) ([#2623](https://github.com/HankHuang0516/EClaw/issues/2623)) ([129327b](https://github.com/HankHuang0516/EClaw/commit/129327bc7b91056659f1ab7e8d5e3f5260d951fb))
* **mindmap:** portal/mindmap.html force-graph prototype ([#129](https://github.com/HankHuang0516/EClaw/issues/129)) ([#2681](https://github.com/HankHuang0516/EClaw/issues/2681)) ([0f15e69](https://github.com/HankHuang0516/EClaw/commit/0f15e6930f0697c37fa08f3219edb8f9e499837f)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **portal:** redo nagoya trip page in professional tour-guide style ([#2691](https://github.com/HankHuang0516/EClaw/issues/2691)) ([b2378c0](https://github.com/HankHuang0516/EClaw/commit/b2378c06ee20fa9cccfdceceb1a4c9e0b3072f59))
* **avatar:** render selected petdx companion in chat avatars ([#2620](https://github.com/HankHuang0516/EClaw/issues/2620)) ([0bdd046](https://github.com/HankHuang0516/EClaw/commit/0bdd046fe1b1c428e32edda366ff112c08927f4c))
* **home:** replace native home with WebView hosting dashboard.html ([#2634](https://github.com/HankHuang0516/EClaw/issues/2634)) ([e69ea81](https://github.com/HankHuang0516/EClaw/commit/e69ea8160c239b083a83d6dc83a4f1c3f901c863))
* **app:** route chat mission jumps through native tabs ([#2824](https://github.com/HankHuang0516/EClaw/issues/2824)) ([deb07b6](https://github.com/HankHuang0516/EClaw/commit/deb07b69a9ecca632fe27278de537f1d85234e94))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **chat:** support message deep links ([#2719](https://github.com/HankHuang0516/EClaw/issues/2719)) ([2dc0f1e](https://github.com/HankHuang0516/EClaw/commit/2dc0f1eeb259e1a0848db4a03186b989372cd91c))
* **mission:** support note deep links ([#2717](https://github.com/HankHuang0516/EClaw/issues/2717)) ([2efd3a5](https://github.com/HankHuang0516/EClaw/commit/2efd3a5e741217a07c0b0ac54a0ddd010e0ebe23))
* **share-chat:** twitter card + per-bot og:image/twitter:* in SSR ([#2609](https://github.com/HankHuang0516/EClaw/issues/2609)) ([6cdc853](https://github.com/HankHuang0516/EClaw/commit/6cdc853dc884cdb95bd47214942768981f218ae0))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))
* **settings:** wire petdx avatar into channel-account chips ([#2626](https://github.com/HankHuang0516/EClaw/issues/2626)) ([88aec77](https://github.com/HankHuang0516/EClaw/commit/88aec772628c240e97b336bb5820892ad632d1ae))
* **files:** wire petdx avatar into entity filter & per-file badges ([#2627](https://github.com/HankHuang0516/EClaw/issues/2627)) ([5b3e5cc](https://github.com/HankHuang0516/EClaw/commit/5b3e5cc542d9da69bb4e92500fd03a542ea33f00))
* **mindmap:** wrap hardcoded zh-TW UI strings with i18n t() ([#2607](https://github.com/HankHuang0516/EClaw/issues/2607)) ([166af87](https://github.com/HankHuang0516/EClaw/commit/166af8772b2121a24aaf34a83b3de970e9b3b571)), closes [#2606](https://github.com/HankHuang0516/EClaw/issues/2606)
* **i18n:** zh-TW backfill 8 keys (soft-pause + chat + invite + wallet) ([#2815](https://github.com/HankHuang0516/EClaw/issues/2815)) ([a2dd574](https://github.com/HankHuang0516/EClaw/commit/a2dd5743ce8d43a4b6ace9a2fd4b52568180d6c5))


### Performance Improvements

* **mindmap:** force-graph hardening for 1000/2000-node graphs ([#2684](https://github.com/HankHuang0516/EClaw/issues/2684)) ([da8b1c8](https://github.com/HankHuang0516/EClaw/commit/da8b1c8f947ab8bc8fa455c1962a91146623a1fc))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-19)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **notifications:** add kanban_done + kanban_done_auto toggles to Android Settings ([#2636](https://github.com/HankHuang0516/EClaw/issues/2636)) ([a710909](https://github.com/HankHuang0516/EClaw/commit/a7109095e3393b8564e7ef1b23d382a4fbb944b8))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **chat:** atomic-load target bar (await contacts before first render) ([#2831](https://github.com/HankHuang0516/EClaw/issues/2831)) ([5f529e6](https://github.com/HankHuang0516/EClaw/commit/5f529e6b772eacc38ba1de69b44258a05f0d816a)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2](https://github.com/HankHuang0516/EClaw/issues/2)
* **i18n:** clear batch 1 residual missing keys ([#2790](https://github.com/HankHuang0516/EClaw/issues/2790)) ([211030e](https://github.com/HankHuang0516/EClaw/commit/211030e0b0b6a865c11f0c4ed60dc4e356d43b7a))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **kanban:** comment input no longer overlaps last comment in card detail (PR [#2678](https://github.com/HankHuang0516/EClaw/issues/2678)) ([fba91fc](https://github.com/HankHuang0516/EClaw/commit/fba91fca15402b453a0db5ee857c0b16e6087055))
* **chat:** compact 20px avatar in target bar (App WebView only shows [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2](https://github.com/HankHuang0516/EClaw/issues/2)) ([#2830](https://github.com/HankHuang0516/EClaw/issues/2830)) ([42c7543](https://github.com/HankHuang0516/EClaw/commit/42c7543b4a78a7abf3f5f7535eb9bc6142cd0fe2)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **portal:** complete 401 redirect sweep + mobile UIUX truncation ([#2842](https://github.com/HankHuang0516/EClaw/issues/2842)) ([f9799ba](https://github.com/HankHuang0516/EClaw/commit/f9799ba42498b109f0a8a70e80836aa6da51e216)), closes [#2833](https://github.com/HankHuang0516/EClaw/issues/2833) [#2845](https://github.com/HankHuang0516/EClaw/issues/2845) [#2844](https://github.com/HankHuang0516/EClaw/issues/2844) [#2843](https://github.com/HankHuang0516/EClaw/issues/2843)
* **i18n:** cover dynamic portal wrapper keys ([#2807](https://github.com/HankHuang0516/EClaw/issues/2807)) ([4c711cc](https://github.com/HankHuang0516/EClaw/commit/4c711cc4009300ffe4e8933a98ee01cd0fdd6aeb))
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **petdx:** drop dark-grey loading placeholder + preload sprite WEBP ([#2628](https://github.com/HankHuang0516/EClaw/issues/2628)) ([59cef38](https://github.com/HankHuang0516/EClaw/commit/59cef387bd69ca99d7d15c86a1364856d3849ad8)), closes [#1a1a1a](https://github.com/HankHuang0516/EClaw/issues/1a1a1a)
* **security:** escape innerHTML in chat modal error messages ([#2819](https://github.com/HankHuang0516/EClaw/issues/2819)) ([dce07ad](https://github.com/HankHuang0516/EClaw/commit/dce07adde64795916dba977ae23e46f3371ce7ed)), closes [#2809](https://github.com/HankHuang0516/EClaw/issues/2809) [#2810](https://github.com/HankHuang0516/EClaw/issues/2810) [#2809](https://github.com/HankHuang0516/EClaw/issues/2809) [#2810](https://github.com/HankHuang0516/EClaw/issues/2810)
* **entities:** expose botSecret to owner so wallpaper service can poll companions ([#2615](https://github.com/HankHuang0516/EClaw/issues/2615)) ([04470fc](https://github.com/HankHuang0516/EClaw/commit/04470fce8f8c3fce2b1ba8b243e776606f107502))
* **rental:** expose owner_public_code in marketplace so plaza CTA can route ([#2616](https://github.com/HankHuang0516/EClaw/issues/2616)) ([4d1372f](https://github.com/HankHuang0516/EClaw/commit/4d1372f717d93cab65543e87c852e74e9fb67071)), closes [#2610](https://github.com/HankHuang0516/EClaw/issues/2610)
* **mindmap:** fallback to device scope when entityId is null ([#2728](https://github.com/HankHuang0516/EClaw/issues/2728)) ([7572312](https://github.com/HankHuang0516/EClaw/commit/7572312433d3d75fc245eda48a28919ce14bd927))
* **i18n:** fill Spanish drift keys ([#2751](https://github.com/HankHuang0516/EClaw/issues/2751)) ([0ad0ee5](https://github.com/HankHuang0516/EClaw/commit/0ad0ee55f7fac3e6ac46d891539950dab4d553cc))
* **portal:** fit embedded org chart to mobile viewport ([#2674](https://github.com/HankHuang0516/EClaw/issues/2674)) ([1c4e1b4](https://github.com/HankHuang0516/EClaw/commit/1c4e1b413ea7027b4cd4b8ecda981b0d0e12e66b))
* **i18n:** fix 6 trailing-comma syntax errors in 10-locale batch ([#2771](https://github.com/HankHuang0516/EClaw/issues/2771)) ([b27c6ca](https://github.com/HankHuang0516/EClaw/commit/b27c6ca204bf813e406c54ce3a2532a5f1f031b3))
* **kanban:** GET card returns latest 50 comments + comments endpoint exposes total ([#2816](https://github.com/HankHuang0516/EClaw/issues/2816)) ([c4d83f7](https://github.com/HankHuang0516/EClaw/commit/c4d83f777a1cd26aea0936e4316aa35c52822eef))
* **uiux:** harden chat previews and roster preview ([#2769](https://github.com/HankHuang0516/EClaw/issues/2769)) ([466d4d3](https://github.com/HankHuang0516/EClaw/commit/466d4d3ef81c628d3f58db64323946053d7bf61c))
* **mention-parser:** ignore @-mentions inside markdown code spans ([#2645](https://github.com/HankHuang0516/EClaw/issues/2645)) ([8da19d4](https://github.com/HankHuang0516/EClaw/commit/8da19d4a79ceb4152bf2144ee0847c61ce3e1def)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **kanban:** lazy-load dependency chips via IntersectionObserver ([#2632](https://github.com/HankHuang0516/EClaw/issues/2632)) ([20586b4](https://github.com/HankHuang0516/EClaw/commit/20586b43357335f9eb6a190c02d58c8e36b58aba)), closes [#2631](https://github.com/HankHuang0516/EClaw/issues/2631)
* **kanban:** make card sorting deterministic ([#2756](https://github.com/HankHuang0516/EClaw/issues/2756)) ([48e2117](https://github.com/HankHuang0516/EClaw/commit/48e2117b64e37f05dc635e0a3b67bfd43cbe48f5))
* **org-chart:** notify affected bots on hierarchy change ([#2812](https://github.com/HankHuang0516/EClaw/issues/2812)) ([55675fd](https://github.com/HankHuang0516/EClaw/commit/55675fdf4487494d729a29524b32bd81b756a00c)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** notify reviewer on manual /move → review ([#2753](https://github.com/HankHuang0516/EClaw/issues/2753)) ([6cbbb4e](https://github.com/HankHuang0516/EClaw/commit/6cbbb4ee8c0d4d8ad54df2e9b5faaa3699bd530f))
* **wallpaper:** off-load spritesheet fetch to IO so per-petdx sprites actually render ([#2618](https://github.com/HankHuang0516/EClaw/issues/2618)) ([61b832c](https://github.com/HankHuang0516/EClaw/commit/61b832c9fa8a1d0caab810ccc942d85c63349267)), closes [#2615](https://github.com/HankHuang0516/EClaw/issues/2615) [#2577](https://github.com/HankHuang0516/EClaw/issues/2577)
* **security:** patch P0 sanitize-html XSS + P1 protobufjs + exam.html XSS ([#2829](https://github.com/HankHuang0516/EClaw/issues/2829)) ([c71b871](https://github.com/HankHuang0516/EClaw/commit/c71b871a045887375dd0d26d1a3280a0891a89ad))
* **portal:** petdx-browser cookie-session fallback for device-login ([#2757](https://github.com/HankHuang0516/EClaw/issues/2757)) ([ca275f4](https://github.com/HankHuang0516/EClaw/commit/ca275f4519835da0c7ad71c588908a18f6f138d8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **api:** platform-stats 500 + entity/lookup publicCode alias ([#2809](https://github.com/HankHuang0516/EClaw/issues/2809), [#2810](https://github.com/HankHuang0516/EClaw/issues/2810)) ([#2818](https://github.com/HankHuang0516/EClaw/issues/2818)) ([f99fd17](https://github.com/HankHuang0516/EClaw/commit/f99fd17b2b1c32d88daa2510ff66d714c1a53edc))
* **i18n:** positional format specifiers for feedback_result_logs (7 locales) ([#2597](https://github.com/HankHuang0516/EClaw/issues/2597)) ([21aedc7](https://github.com/HankHuang0516/EClaw/commit/21aedc7eebc7a2839e340136f38dfdfd4dabb9dc))
* **avatar-petdx:** preserve descriptor across transient API failures (flicker) ([#2625](https://github.com/HankHuang0516/EClaw/issues/2625)) ([7b1c606](https://github.com/HankHuang0516/EClaw/commit/7b1c606514f7698d72ec95cf6c556e4043966186))
* **chat:** preserve scroll anchor while reading history ([#2693](https://github.com/HankHuang0516/EClaw/issues/2693)) ([945fdb7](https://github.com/HankHuang0516/EClaw/commit/945fdb7192b791b31882e1e75568dd8b11e4686f))
* **promo:** pull video embed from /promo-chat-avatar.html ([#2724](https://github.com/HankHuang0516/EClaw/issues/2724)) ([2afabc8](https://github.com/HankHuang0516/EClaw/commit/2afabc8c5ff8b25218a7cb857e8adfa572c8e9d5))
* **kanban:** realign stale recurring schedules ([#2785](https://github.com/HankHuang0516/EClaw/issues/2785)) ([ab8ee25](https://github.com/HankHuang0516/EClaw/commit/ab8ee250a9b37f3d3e838bb01d8866c8d2b78231))
* **portal:** reduce QA-discovered request fanout ([#2656](https://github.com/HankHuang0516/EClaw/issues/2656)) ([1e46d6b](https://github.com/HankHuang0516/EClaw/commit/1e46d6bab61e58c65b452b6503d953f8dddeee75))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **portal:** remove org chart fit scale floor ([#2676](https://github.com/HankHuang0516/EClaw/issues/2676)) ([0f01606](https://github.com/HankHuang0516/EClaw/commit/0f016068b963bb5f800a02f28817c7174979d913))
* **i18n:** rename mm_empty_title → mm_state_empty_title in mindmap.html ([#2683](https://github.com/HankHuang0516/EClaw/issues/2683)) ([c79c109](https://github.com/HankHuang0516/EClaw/commit/c79c109bea23142e8a6d9ace976d105af1280ec9))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **chat:** render mention avatars with companion renderer ([#2633](https://github.com/HankHuang0516/EClaw/issues/2633)) ([03e205f](https://github.com/HankHuang0516/EClaw/commit/03e205f663ecd2c2f443d4009dd5af0093f0bbbb))
* **kanban:** reserve mobile comments panel height ([#2782](https://github.com/HankHuang0516/EClaw/issues/2782)) ([ce8662d](https://github.com/HankHuang0516/EClaw/commit/ce8662d362422fdd25037f1deb61dbed9425e2f9))
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* scheduled audit 2026-05-13 — 6 bugs, XSS, i18n ([#2668](https://github.com/HankHuang0516/EClaw/issues/2668)) ([21dd513](https://github.com/HankHuang0516/EClaw/commit/21dd513b4464738de29164265437435ba6cc4817)), closes [#2605](https://github.com/HankHuang0516/EClaw/issues/2605) [#2608](https://github.com/HankHuang0516/EClaw/issues/2608) [#2600](https://github.com/HankHuang0516/EClaw/issues/2600) [#2599](https://github.com/HankHuang0516/EClaw/issues/2599) [#2598](https://github.com/HankHuang0516/EClaw/issues/2598)
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **chat:** smart-chip preview falls back to inline c.comments when /comments fails (PR [#2677](https://github.com/HankHuang0516/EClaw/issues/2677)) ([7f4dffd](https://github.com/HankHuang0516/EClaw/commit/7f4dffd2c83ea86f296b8fa0610f0e67c9f1af11))
* **kanban:** stabilize comment detail viewport ([#2796](https://github.com/HankHuang0516/EClaw/issues/2796)) ([0a10aad](https://github.com/HankHuang0516/EClaw/commit/0a10aadb5a5b12ff23454c16d5c88183b94ad7d7))
* **wallpaper:** stop Android live wallpaper flashing default lobster on companion change ([#2629](https://github.com/HankHuang0516/EClaw/issues/2629)) ([8b4f66f](https://github.com/HankHuang0516/EClaw/commit/8b4f66fcb335bf43128f924b761b6337c817095b)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **chat:** stop chat.html bouncing to dashboard via /api/rental/health-status 401 race ([#2833](https://github.com/HankHuang0516/EClaw/issues/2833)) ([c422406](https://github.com/HankHuang0516/EClaw/commit/c4224067cdcfe7f3e22ab95007c7563dac4196ac))
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **app:** WebView pages honor app-selected locale via ?lang= URL param ([#2672](https://github.com/HankHuang0516/EClaw/issues/2672)) ([8ed8757](https://github.com/HankHuang0516/EClaw/commit/8ed8757aec5bf214e837cc0d81bf2b23f1993a91)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* **community:** 1-click chat button on bot cards + utm tagging ([#2610](https://github.com/HankHuang0516/EClaw/issues/2610)) ([eee97b0](https://github.com/HankHuang0516/EClaw/commit/eee97b0e2e4e74945ec24f218a69a52800b97a66))
* **chat:** accept ?messageId= as deep-link alias ([#2838](https://github.com/HankHuang0516/EClaw/issues/2838)) ([1785a87](https://github.com/HankHuang0516/EClaw/commit/1785a87310426637fd10df83754fb9924c45207f))
* **chat:** add avatar size preference ([#2714](https://github.com/HankHuang0516/EClaw/issues/2714)) ([6fe164a](https://github.com/HankHuang0516/EClaw/commit/6fe164ad8b22fa576d2dd9ad37c0d9fc295b5a83))
* **dashboard:** add Claude and Codex channel guides ([#2640](https://github.com/HankHuang0516/EClaw/issues/2640)) ([c64e4c4](https://github.com/HankHuang0516/EClaw/commit/c64e4c4afc78db58c5cd578f00486dd7b2fd3311))
* **dashboard:** add Claude Code channel guide card ([#2667](https://github.com/HankHuang0516/EClaw/issues/2667)) ([d70d75c](https://github.com/HankHuang0516/EClaw/commit/d70d75c0c8caa8a540358a9aab4556b8c1927a5c))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* **kanban:** add device-scoped card tags ([#2773](https://github.com/HankHuang0516/EClaw/issues/2773)) ([53a387e](https://github.com/HankHuang0516/EClaw/commit/53a387e67ba7bb4f6bed1c427000c4ae8666577a))
* **portal:** add entity selector to petdx-browser ([#2602](https://github.com/HankHuang0516/EClaw/issues/2602)) ([3fa067e](https://github.com/HankHuang0516/EClaw/commit/3fa067e00b38829b48a37cecd33ee81a9a1122d9))
* **kanban:** add explicit card links ([#2721](https://github.com/HankHuang0516/EClaw/issues/2721)) ([ef9f812](https://github.com/HankHuang0516/EClaw/commit/ef9f812a3fcf39efd07fd158ce90951bdd045ac7))
* **kanban:** add explicit done-card reopen flow ([#2801](https://github.com/HankHuang0516/EClaw/issues/2801)) ([5080aac](https://github.com/HankHuang0516/EClaw/commit/5080aacb75047c0deaa379ee708ec85465afd57c))
* **mindmap:** add GET /api/mindmap/graph force-graph projection ([#2680](https://github.com/HankHuang0516/EClaw/issues/2680)) ([a00b2e7](https://github.com/HankHuang0516/EClaw/commit/a00b2e775af2c4c98cd157f760ad87aeeee469f0)), closes [#2679](https://github.com/HankHuang0516/EClaw/issues/2679) [#2679](https://github.com/HankHuang0516/EClaw/issues/2679)
* **dashboard:** add Hermes channel promo card ([#2708](https://github.com/HankHuang0516/EClaw/issues/2708)) ([337aca1](https://github.com/HankHuang0516/EClaw/commit/337aca153d5a1cd7e888c065f00ae54db7872d91))
* **rental:** add listing soft pause ([#2781](https://github.com/HankHuang0516/EClaw/issues/2781)) ([6586b72](https://github.com/HankHuang0516/EClaw/commit/6586b72717ddb1637d91cd3242c8d2ff554f62b4))
* **portal:** add Nagoya 5D4N trip static cross-ref page ([#2689](https://github.com/HankHuang0516/EClaw/issues/2689)) ([2e0efb6](https://github.com/HankHuang0516/EClaw/commit/2e0efb6dcdaff52226cc8854a96747000b12bdff))
* **portal:** add Nagoya trip map links and image lightbox ([#2821](https://github.com/HankHuang0516/EClaw/issues/2821)) ([3e40955](https://github.com/HankHuang0516/EClaw/commit/3e40955650a05f45a6b9f7e39e73847705424a03))
* **portal/nagoya:** add parking shortcut buttons next to itinerary places ([#2826](https://github.com/HankHuang0516/EClaw/issues/2826)) ([63968c5](https://github.com/HankHuang0516/EClaw/commit/63968c554d046afc8d978de74e3aacbf7700500d))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **settings:** add rental roster management preview ([#2758](https://github.com/HankHuang0516/EClaw/issues/2758)) ([9706e59](https://github.com/HankHuang0516/EClaw/commit/9706e59ded140a90a6e02348124282bc69d89001))
* **rental:** add renter health chat indicator ([#2690](https://github.com/HankHuang0516/EClaw/issues/2690)) ([36cd2e9](https://github.com/HankHuang0516/EClaw/commit/36cd2e9802be4c7ebb03d3024617fa74aca48ffd))
* **ios:** add Tutorial & Intro entry in Settings ([#2800](https://github.com/HankHuang0516/EClaw/issues/2800)) ([ed83e51](https://github.com/HankHuang0516/EClaw/commit/ed83e51d043bf4cd5865f38dc95a91ed54820d6c))
* **landing:** add Watch Full Demo CTA below hero video ([#2799](https://github.com/HankHuang0516/EClaw/issues/2799)) ([66107c9](https://github.com/HankHuang0516/EClaw/commit/66107c954727551fd34d989a4674daaad9b63968))
* **footer:** add Watch Intro Video link in Info column ([#2798](https://github.com/HankHuang0516/EClaw/issues/2798)) ([d7c6d59](https://github.com/HankHuang0516/EClaw/commit/d7c6d596b69c6a5b257bf1f7a792a407ef9712ad))
* **companion:** bridge crafter-station/petdex gallery (1784 pets) ([#2601](https://github.com/HankHuang0516/EClaw/issues/2601)) ([2e245be](https://github.com/HankHuang0516/EClaw/commit/2e245bea6dd47ea7361b927d389188a3c23b6bb3))
* **promo:** chat avatar size feature landing page (self-hosted MP4) ([#2722](https://github.com/HankHuang0516/EClaw/issues/2722)) ([3852210](https://github.com/HankHuang0516/EClaw/commit/3852210d355704d018e3daca6b5f9512a011b210)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **kanban:** cron-spawn jitter + lane backpressure to prevent same-tick wedge ([#2791](https://github.com/HankHuang0516/EClaw/issues/2791)) ([9f414a7](https://github.com/HankHuang0516/EClaw/commit/9f414a731d6393672a0a4189c7b408c529ae5e12)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **promo:** embed daily eclaw video 2026-05-14 ([#2786](https://github.com/HankHuang0516/EClaw/issues/2786)) ([718a814](https://github.com/HankHuang0516/EClaw/commit/718a814ab16850bc2b33a1b303841e2c4378ecfa)), closes [#2782](https://github.com/HankHuang0516/EClaw/issues/2782) [#2693](https://github.com/HankHuang0516/EClaw/issues/2693)
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **info:** embed promo video at top of Quick Start tab ([#2797](https://github.com/HankHuang0516/EClaw/issues/2797)) ([047679f](https://github.com/HankHuang0516/EClaw/commit/047679fd57ab9949eaeacea414d5611e71afe041))
* **rental:** enforce strict rebind refunds ([#2703](https://github.com/HankHuang0516/EClaw/issues/2703)) ([a1859c5](https://github.com/HankHuang0516/EClaw/commit/a1859c50e6fb3991d7a8051491502d824a14a116))
* **portal:** group task chip actions ([#2825](https://github.com/HankHuang0516/EClaw/issues/2825)) ([5db5c59](https://github.com/HankHuang0516/EClaw/commit/5db5c59b32b8635f1412205faf0c2f9164d3d5d4))
* **portal:** info-guide-rules + info-guide-soul slide pair ([#2793](https://github.com/HankHuang0516/EClaw/issues/2793)) ([1c8bddc](https://github.com/HankHuang0516/EClaw/commit/1c8bddc4c185054b2b60088498e3d45509117127)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **chat:** link card previews to kanban ([#2754](https://github.com/HankHuang0516/EClaw/issues/2754)) ([2261240](https://github.com/HankHuang0516/EClaw/commit/22612402c2e95efb07246629e81a849be41ee9c7))
* **mission:** link notes to kanban cards ([#2723](https://github.com/HankHuang0516/EClaw/issues/2723)) ([b36dc18](https://github.com/HankHuang0516/EClaw/commit/b36dc18f3a8facf12e0b6046351c222f1e99dc55))
* **mindmap:** mission.html link to /portal/mindmap.html + deprecate /api/mission/mindmap ([#2685](https://github.com/HankHuang0516/EClaw/issues/2685)) ([11e297b](https://github.com/HankHuang0516/EClaw/commit/11e297bab1c9b56fcde3027d6500b7c58891bf18)), closes [#2680](https://github.com/HankHuang0516/EClaw/issues/2680) [#2684](https://github.com/HankHuang0516/EClaw/issues/2684)
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **settings:** per-entity nudge override UI (Phase 2) ([#2837](https://github.com/HankHuang0516/EClaw/issues/2837)) ([ea7662b](https://github.com/HankHuang0516/EClaw/commit/ea7662b0858882dae461e1387f711895924f9ab8)), closes [3/#4](https://github.com/HankHuang0516/EClaw/issues/4)
* **kanban:** per-entity nudge overrides (Phase 2 of card_e066cb6b) ([#2836](https://github.com/HankHuang0516/EClaw/issues/2836)) ([0425f80](https://github.com/HankHuang0516/EClaw/commit/0425f80bc1169c0d506b665659c8676695c45553))
* **avatar:** petdx render on card-holder my-cards (Phase 1b) ([#2621](https://github.com/HankHuang0516/EClaw/issues/2621)) ([f78ba8b](https://github.com/HankHuang0516/EClaw/commit/f78ba8b18acc426936ab6d8a82ca7541effea00d))
* **avatar:** petdx render on dashboard entity grid / org chart / bindings (Phase 1b) ([#2622](https://github.com/HankHuang0516/EClaw/issues/2622)) ([f417749](https://github.com/HankHuang0516/EClaw/commit/f41774914451048e8cd76e9ae30416a0642e173b)), closes [#2620](https://github.com/HankHuang0516/EClaw/issues/2620) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621)
* **avatar:** petdx render on kanban auto-assign / pulse / comment avatars (Phase 1b) ([#2624](https://github.com/HankHuang0516/EClaw/issues/2624)) ([6bff5f8](https://github.com/HankHuang0516/EClaw/commit/6bff5f80440d0bd91a6b1721cde9478d685c4d46))
* **avatar:** petdx render on mission skill/rule/soul entity dialogs (Phase 1b) ([#2623](https://github.com/HankHuang0516/EClaw/issues/2623)) ([129327b](https://github.com/HankHuang0516/EClaw/commit/129327bc7b91056659f1ab7e8d5e3f5260d951fb))
* **mindmap:** portal/mindmap.html force-graph prototype ([#129](https://github.com/HankHuang0516/EClaw/issues/129)) ([#2681](https://github.com/HankHuang0516/EClaw/issues/2681)) ([0f15e69](https://github.com/HankHuang0516/EClaw/commit/0f15e6930f0697c37fa08f3219edb8f9e499837f)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **portal:** redo nagoya trip page in professional tour-guide style ([#2691](https://github.com/HankHuang0516/EClaw/issues/2691)) ([b2378c0](https://github.com/HankHuang0516/EClaw/commit/b2378c06ee20fa9cccfdceceb1a4c9e0b3072f59))
* **avatar:** render selected petdx companion in chat avatars ([#2620](https://github.com/HankHuang0516/EClaw/issues/2620)) ([0bdd046](https://github.com/HankHuang0516/EClaw/commit/0bdd046fe1b1c428e32edda366ff112c08927f4c))
* **home:** replace native home with WebView hosting dashboard.html ([#2634](https://github.com/HankHuang0516/EClaw/issues/2634)) ([e69ea81](https://github.com/HankHuang0516/EClaw/commit/e69ea8160c239b083a83d6dc83a4f1c3f901c863))
* **app:** route chat mission jumps through native tabs ([#2824](https://github.com/HankHuang0516/EClaw/issues/2824)) ([deb07b6](https://github.com/HankHuang0516/EClaw/commit/deb07b69a9ecca632fe27278de537f1d85234e94))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **chat:** support message deep links ([#2719](https://github.com/HankHuang0516/EClaw/issues/2719)) ([2dc0f1e](https://github.com/HankHuang0516/EClaw/commit/2dc0f1eeb259e1a0848db4a03186b989372cd91c))
* **mission:** support note deep links ([#2717](https://github.com/HankHuang0516/EClaw/issues/2717)) ([2efd3a5](https://github.com/HankHuang0516/EClaw/commit/2efd3a5e741217a07c0b0ac54a0ddd010e0ebe23))
* **share-chat:** twitter card + per-bot og:image/twitter:* in SSR ([#2609](https://github.com/HankHuang0516/EClaw/issues/2609)) ([6cdc853](https://github.com/HankHuang0516/EClaw/commit/6cdc853dc884cdb95bd47214942768981f218ae0))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))
* **settings:** wire petdx avatar into channel-account chips ([#2626](https://github.com/HankHuang0516/EClaw/issues/2626)) ([88aec77](https://github.com/HankHuang0516/EClaw/commit/88aec772628c240e97b336bb5820892ad632d1ae))
* **files:** wire petdx avatar into entity filter & per-file badges ([#2627](https://github.com/HankHuang0516/EClaw/issues/2627)) ([5b3e5cc](https://github.com/HankHuang0516/EClaw/commit/5b3e5cc542d9da69bb4e92500fd03a542ea33f00))
* **mindmap:** wrap hardcoded zh-TW UI strings with i18n t() ([#2607](https://github.com/HankHuang0516/EClaw/issues/2607)) ([166af87](https://github.com/HankHuang0516/EClaw/commit/166af8772b2121a24aaf34a83b3de970e9b3b571)), closes [#2606](https://github.com/HankHuang0516/EClaw/issues/2606)
* **i18n:** zh-TW backfill 8 keys (soft-pause + chat + invite + wallet) ([#2815](https://github.com/HankHuang0516/EClaw/issues/2815)) ([a2dd574](https://github.com/HankHuang0516/EClaw/commit/a2dd5743ce8d43a4b6ace9a2fd4b52568180d6c5))


### Performance Improvements

* **mindmap:** force-graph hardening for 1000/2000-node graphs ([#2684](https://github.com/HankHuang0516/EClaw/issues/2684)) ([da8b1c8](https://github.com/HankHuang0516/EClaw/commit/da8b1c8f947ab8bc8fa455c1962a91146623a1fc))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-19)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **notifications:** add kanban_done + kanban_done_auto toggles to Android Settings ([#2636](https://github.com/HankHuang0516/EClaw/issues/2636)) ([a710909](https://github.com/HankHuang0516/EClaw/commit/a7109095e3393b8564e7ef1b23d382a4fbb944b8))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **chat:** atomic-load target bar (await contacts before first render) ([#2831](https://github.com/HankHuang0516/EClaw/issues/2831)) ([5f529e6](https://github.com/HankHuang0516/EClaw/commit/5f529e6b772eacc38ba1de69b44258a05f0d816a)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2](https://github.com/HankHuang0516/EClaw/issues/2)
* **i18n:** clear batch 1 residual missing keys ([#2790](https://github.com/HankHuang0516/EClaw/issues/2790)) ([211030e](https://github.com/HankHuang0516/EClaw/commit/211030e0b0b6a865c11f0c4ed60dc4e356d43b7a))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **kanban:** comment input no longer overlaps last comment in card detail (PR [#2678](https://github.com/HankHuang0516/EClaw/issues/2678)) ([fba91fc](https://github.com/HankHuang0516/EClaw/commit/fba91fca15402b453a0db5ee857c0b16e6087055))
* **chat:** compact 20px avatar in target bar (App WebView only shows [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2](https://github.com/HankHuang0516/EClaw/issues/2)) ([#2830](https://github.com/HankHuang0516/EClaw/issues/2830)) ([42c7543](https://github.com/HankHuang0516/EClaw/commit/42c7543b4a78a7abf3f5f7535eb9bc6142cd0fe2)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **i18n:** cover dynamic portal wrapper keys ([#2807](https://github.com/HankHuang0516/EClaw/issues/2807)) ([4c711cc](https://github.com/HankHuang0516/EClaw/commit/4c711cc4009300ffe4e8933a98ee01cd0fdd6aeb))
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **petdx:** drop dark-grey loading placeholder + preload sprite WEBP ([#2628](https://github.com/HankHuang0516/EClaw/issues/2628)) ([59cef38](https://github.com/HankHuang0516/EClaw/commit/59cef387bd69ca99d7d15c86a1364856d3849ad8)), closes [#1a1a1a](https://github.com/HankHuang0516/EClaw/issues/1a1a1a)
* **security:** escape innerHTML in chat modal error messages ([#2819](https://github.com/HankHuang0516/EClaw/issues/2819)) ([dce07ad](https://github.com/HankHuang0516/EClaw/commit/dce07adde64795916dba977ae23e46f3371ce7ed)), closes [#2809](https://github.com/HankHuang0516/EClaw/issues/2809) [#2810](https://github.com/HankHuang0516/EClaw/issues/2810) [#2809](https://github.com/HankHuang0516/EClaw/issues/2809) [#2810](https://github.com/HankHuang0516/EClaw/issues/2810)
* **entities:** expose botSecret to owner so wallpaper service can poll companions ([#2615](https://github.com/HankHuang0516/EClaw/issues/2615)) ([04470fc](https://github.com/HankHuang0516/EClaw/commit/04470fce8f8c3fce2b1ba8b243e776606f107502))
* **rental:** expose owner_public_code in marketplace so plaza CTA can route ([#2616](https://github.com/HankHuang0516/EClaw/issues/2616)) ([4d1372f](https://github.com/HankHuang0516/EClaw/commit/4d1372f717d93cab65543e87c852e74e9fb67071)), closes [#2610](https://github.com/HankHuang0516/EClaw/issues/2610)
* **mindmap:** fallback to device scope when entityId is null ([#2728](https://github.com/HankHuang0516/EClaw/issues/2728)) ([7572312](https://github.com/HankHuang0516/EClaw/commit/7572312433d3d75fc245eda48a28919ce14bd927))
* **i18n:** fill Spanish drift keys ([#2751](https://github.com/HankHuang0516/EClaw/issues/2751)) ([0ad0ee5](https://github.com/HankHuang0516/EClaw/commit/0ad0ee55f7fac3e6ac46d891539950dab4d553cc))
* **portal:** fit embedded org chart to mobile viewport ([#2674](https://github.com/HankHuang0516/EClaw/issues/2674)) ([1c4e1b4](https://github.com/HankHuang0516/EClaw/commit/1c4e1b413ea7027b4cd4b8ecda981b0d0e12e66b))
* **i18n:** fix 6 trailing-comma syntax errors in 10-locale batch ([#2771](https://github.com/HankHuang0516/EClaw/issues/2771)) ([b27c6ca](https://github.com/HankHuang0516/EClaw/commit/b27c6ca204bf813e406c54ce3a2532a5f1f031b3))
* **kanban:** GET card returns latest 50 comments + comments endpoint exposes total ([#2816](https://github.com/HankHuang0516/EClaw/issues/2816)) ([c4d83f7](https://github.com/HankHuang0516/EClaw/commit/c4d83f777a1cd26aea0936e4316aa35c52822eef))
* **uiux:** harden chat previews and roster preview ([#2769](https://github.com/HankHuang0516/EClaw/issues/2769)) ([466d4d3](https://github.com/HankHuang0516/EClaw/commit/466d4d3ef81c628d3f58db64323946053d7bf61c))
* **mention-parser:** ignore @-mentions inside markdown code spans ([#2645](https://github.com/HankHuang0516/EClaw/issues/2645)) ([8da19d4](https://github.com/HankHuang0516/EClaw/commit/8da19d4a79ceb4152bf2144ee0847c61ce3e1def)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **kanban:** lazy-load dependency chips via IntersectionObserver ([#2632](https://github.com/HankHuang0516/EClaw/issues/2632)) ([20586b4](https://github.com/HankHuang0516/EClaw/commit/20586b43357335f9eb6a190c02d58c8e36b58aba)), closes [#2631](https://github.com/HankHuang0516/EClaw/issues/2631)
* **kanban:** make card sorting deterministic ([#2756](https://github.com/HankHuang0516/EClaw/issues/2756)) ([48e2117](https://github.com/HankHuang0516/EClaw/commit/48e2117b64e37f05dc635e0a3b67bfd43cbe48f5))
* **org-chart:** notify affected bots on hierarchy change ([#2812](https://github.com/HankHuang0516/EClaw/issues/2812)) ([55675fd](https://github.com/HankHuang0516/EClaw/commit/55675fdf4487494d729a29524b32bd81b756a00c)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** notify reviewer on manual /move → review ([#2753](https://github.com/HankHuang0516/EClaw/issues/2753)) ([6cbbb4e](https://github.com/HankHuang0516/EClaw/commit/6cbbb4ee8c0d4d8ad54df2e9b5faaa3699bd530f))
* **wallpaper:** off-load spritesheet fetch to IO so per-petdx sprites actually render ([#2618](https://github.com/HankHuang0516/EClaw/issues/2618)) ([61b832c](https://github.com/HankHuang0516/EClaw/commit/61b832c9fa8a1d0caab810ccc942d85c63349267)), closes [#2615](https://github.com/HankHuang0516/EClaw/issues/2615) [#2577](https://github.com/HankHuang0516/EClaw/issues/2577)
* **security:** patch P0 sanitize-html XSS + P1 protobufjs + exam.html XSS ([#2829](https://github.com/HankHuang0516/EClaw/issues/2829)) ([c71b871](https://github.com/HankHuang0516/EClaw/commit/c71b871a045887375dd0d26d1a3280a0891a89ad))
* **portal:** petdx-browser cookie-session fallback for device-login ([#2757](https://github.com/HankHuang0516/EClaw/issues/2757)) ([ca275f4](https://github.com/HankHuang0516/EClaw/commit/ca275f4519835da0c7ad71c588908a18f6f138d8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **api:** platform-stats 500 + entity/lookup publicCode alias ([#2809](https://github.com/HankHuang0516/EClaw/issues/2809), [#2810](https://github.com/HankHuang0516/EClaw/issues/2810)) ([#2818](https://github.com/HankHuang0516/EClaw/issues/2818)) ([f99fd17](https://github.com/HankHuang0516/EClaw/commit/f99fd17b2b1c32d88daa2510ff66d714c1a53edc))
* **i18n:** positional format specifiers for feedback_result_logs (7 locales) ([#2597](https://github.com/HankHuang0516/EClaw/issues/2597)) ([21aedc7](https://github.com/HankHuang0516/EClaw/commit/21aedc7eebc7a2839e340136f38dfdfd4dabb9dc))
* **avatar-petdx:** preserve descriptor across transient API failures (flicker) ([#2625](https://github.com/HankHuang0516/EClaw/issues/2625)) ([7b1c606](https://github.com/HankHuang0516/EClaw/commit/7b1c606514f7698d72ec95cf6c556e4043966186))
* **chat:** preserve scroll anchor while reading history ([#2693](https://github.com/HankHuang0516/EClaw/issues/2693)) ([945fdb7](https://github.com/HankHuang0516/EClaw/commit/945fdb7192b791b31882e1e75568dd8b11e4686f))
* **promo:** pull video embed from /promo-chat-avatar.html ([#2724](https://github.com/HankHuang0516/EClaw/issues/2724)) ([2afabc8](https://github.com/HankHuang0516/EClaw/commit/2afabc8c5ff8b25218a7cb857e8adfa572c8e9d5))
* **kanban:** realign stale recurring schedules ([#2785](https://github.com/HankHuang0516/EClaw/issues/2785)) ([ab8ee25](https://github.com/HankHuang0516/EClaw/commit/ab8ee250a9b37f3d3e838bb01d8866c8d2b78231))
* **portal:** reduce QA-discovered request fanout ([#2656](https://github.com/HankHuang0516/EClaw/issues/2656)) ([1e46d6b](https://github.com/HankHuang0516/EClaw/commit/1e46d6bab61e58c65b452b6503d953f8dddeee75))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **portal:** remove org chart fit scale floor ([#2676](https://github.com/HankHuang0516/EClaw/issues/2676)) ([0f01606](https://github.com/HankHuang0516/EClaw/commit/0f016068b963bb5f800a02f28817c7174979d913))
* **i18n:** rename mm_empty_title → mm_state_empty_title in mindmap.html ([#2683](https://github.com/HankHuang0516/EClaw/issues/2683)) ([c79c109](https://github.com/HankHuang0516/EClaw/commit/c79c109bea23142e8a6d9ace976d105af1280ec9))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **chat:** render mention avatars with companion renderer ([#2633](https://github.com/HankHuang0516/EClaw/issues/2633)) ([03e205f](https://github.com/HankHuang0516/EClaw/commit/03e205f663ecd2c2f443d4009dd5af0093f0bbbb))
* **kanban:** reserve mobile comments panel height ([#2782](https://github.com/HankHuang0516/EClaw/issues/2782)) ([ce8662d](https://github.com/HankHuang0516/EClaw/commit/ce8662d362422fdd25037f1deb61dbed9425e2f9))
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* scheduled audit 2026-05-13 — 6 bugs, XSS, i18n ([#2668](https://github.com/HankHuang0516/EClaw/issues/2668)) ([21dd513](https://github.com/HankHuang0516/EClaw/commit/21dd513b4464738de29164265437435ba6cc4817)), closes [#2605](https://github.com/HankHuang0516/EClaw/issues/2605) [#2608](https://github.com/HankHuang0516/EClaw/issues/2608) [#2600](https://github.com/HankHuang0516/EClaw/issues/2600) [#2599](https://github.com/HankHuang0516/EClaw/issues/2599) [#2598](https://github.com/HankHuang0516/EClaw/issues/2598)
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **chat:** smart-chip preview falls back to inline c.comments when /comments fails (PR [#2677](https://github.com/HankHuang0516/EClaw/issues/2677)) ([7f4dffd](https://github.com/HankHuang0516/EClaw/commit/7f4dffd2c83ea86f296b8fa0610f0e67c9f1af11))
* **kanban:** stabilize comment detail viewport ([#2796](https://github.com/HankHuang0516/EClaw/issues/2796)) ([0a10aad](https://github.com/HankHuang0516/EClaw/commit/0a10aadb5a5b12ff23454c16d5c88183b94ad7d7))
* **wallpaper:** stop Android live wallpaper flashing default lobster on companion change ([#2629](https://github.com/HankHuang0516/EClaw/issues/2629)) ([8b4f66f](https://github.com/HankHuang0516/EClaw/commit/8b4f66fcb335bf43128f924b761b6337c817095b)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **chat:** stop chat.html bouncing to dashboard via /api/rental/health-status 401 race ([#2833](https://github.com/HankHuang0516/EClaw/issues/2833)) ([c422406](https://github.com/HankHuang0516/EClaw/commit/c4224067cdcfe7f3e22ab95007c7563dac4196ac))
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **app:** WebView pages honor app-selected locale via ?lang= URL param ([#2672](https://github.com/HankHuang0516/EClaw/issues/2672)) ([8ed8757](https://github.com/HankHuang0516/EClaw/commit/8ed8757aec5bf214e837cc0d81bf2b23f1993a91)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* **community:** 1-click chat button on bot cards + utm tagging ([#2610](https://github.com/HankHuang0516/EClaw/issues/2610)) ([eee97b0](https://github.com/HankHuang0516/EClaw/commit/eee97b0e2e4e74945ec24f218a69a52800b97a66))
* **chat:** accept ?messageId= as deep-link alias ([#2838](https://github.com/HankHuang0516/EClaw/issues/2838)) ([1785a87](https://github.com/HankHuang0516/EClaw/commit/1785a87310426637fd10df83754fb9924c45207f))
* **chat:** add avatar size preference ([#2714](https://github.com/HankHuang0516/EClaw/issues/2714)) ([6fe164a](https://github.com/HankHuang0516/EClaw/commit/6fe164ad8b22fa576d2dd9ad37c0d9fc295b5a83))
* **dashboard:** add Claude and Codex channel guides ([#2640](https://github.com/HankHuang0516/EClaw/issues/2640)) ([c64e4c4](https://github.com/HankHuang0516/EClaw/commit/c64e4c4afc78db58c5cd578f00486dd7b2fd3311))
* **dashboard:** add Claude Code channel guide card ([#2667](https://github.com/HankHuang0516/EClaw/issues/2667)) ([d70d75c](https://github.com/HankHuang0516/EClaw/commit/d70d75c0c8caa8a540358a9aab4556b8c1927a5c))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* **kanban:** add device-scoped card tags ([#2773](https://github.com/HankHuang0516/EClaw/issues/2773)) ([53a387e](https://github.com/HankHuang0516/EClaw/commit/53a387e67ba7bb4f6bed1c427000c4ae8666577a))
* **portal:** add entity selector to petdx-browser ([#2602](https://github.com/HankHuang0516/EClaw/issues/2602)) ([3fa067e](https://github.com/HankHuang0516/EClaw/commit/3fa067e00b38829b48a37cecd33ee81a9a1122d9))
* **kanban:** add explicit card links ([#2721](https://github.com/HankHuang0516/EClaw/issues/2721)) ([ef9f812](https://github.com/HankHuang0516/EClaw/commit/ef9f812a3fcf39efd07fd158ce90951bdd045ac7))
* **kanban:** add explicit done-card reopen flow ([#2801](https://github.com/HankHuang0516/EClaw/issues/2801)) ([5080aac](https://github.com/HankHuang0516/EClaw/commit/5080aacb75047c0deaa379ee708ec85465afd57c))
* **mindmap:** add GET /api/mindmap/graph force-graph projection ([#2680](https://github.com/HankHuang0516/EClaw/issues/2680)) ([a00b2e7](https://github.com/HankHuang0516/EClaw/commit/a00b2e775af2c4c98cd157f760ad87aeeee469f0)), closes [#2679](https://github.com/HankHuang0516/EClaw/issues/2679) [#2679](https://github.com/HankHuang0516/EClaw/issues/2679)
* **dashboard:** add Hermes channel promo card ([#2708](https://github.com/HankHuang0516/EClaw/issues/2708)) ([337aca1](https://github.com/HankHuang0516/EClaw/commit/337aca153d5a1cd7e888c065f00ae54db7872d91))
* **rental:** add listing soft pause ([#2781](https://github.com/HankHuang0516/EClaw/issues/2781)) ([6586b72](https://github.com/HankHuang0516/EClaw/commit/6586b72717ddb1637d91cd3242c8d2ff554f62b4))
* **portal:** add Nagoya 5D4N trip static cross-ref page ([#2689](https://github.com/HankHuang0516/EClaw/issues/2689)) ([2e0efb6](https://github.com/HankHuang0516/EClaw/commit/2e0efb6dcdaff52226cc8854a96747000b12bdff))
* **portal:** add Nagoya trip map links and image lightbox ([#2821](https://github.com/HankHuang0516/EClaw/issues/2821)) ([3e40955](https://github.com/HankHuang0516/EClaw/commit/3e40955650a05f45a6b9f7e39e73847705424a03))
* **portal/nagoya:** add parking shortcut buttons next to itinerary places ([#2826](https://github.com/HankHuang0516/EClaw/issues/2826)) ([63968c5](https://github.com/HankHuang0516/EClaw/commit/63968c554d046afc8d978de74e3aacbf7700500d))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **settings:** add rental roster management preview ([#2758](https://github.com/HankHuang0516/EClaw/issues/2758)) ([9706e59](https://github.com/HankHuang0516/EClaw/commit/9706e59ded140a90a6e02348124282bc69d89001))
* **rental:** add renter health chat indicator ([#2690](https://github.com/HankHuang0516/EClaw/issues/2690)) ([36cd2e9](https://github.com/HankHuang0516/EClaw/commit/36cd2e9802be4c7ebb03d3024617fa74aca48ffd))
* **ios:** add Tutorial & Intro entry in Settings ([#2800](https://github.com/HankHuang0516/EClaw/issues/2800)) ([ed83e51](https://github.com/HankHuang0516/EClaw/commit/ed83e51d043bf4cd5865f38dc95a91ed54820d6c))
* **landing:** add Watch Full Demo CTA below hero video ([#2799](https://github.com/HankHuang0516/EClaw/issues/2799)) ([66107c9](https://github.com/HankHuang0516/EClaw/commit/66107c954727551fd34d989a4674daaad9b63968))
* **footer:** add Watch Intro Video link in Info column ([#2798](https://github.com/HankHuang0516/EClaw/issues/2798)) ([d7c6d59](https://github.com/HankHuang0516/EClaw/commit/d7c6d596b69c6a5b257bf1f7a792a407ef9712ad))
* **companion:** bridge crafter-station/petdex gallery (1784 pets) ([#2601](https://github.com/HankHuang0516/EClaw/issues/2601)) ([2e245be](https://github.com/HankHuang0516/EClaw/commit/2e245bea6dd47ea7361b927d389188a3c23b6bb3))
* **promo:** chat avatar size feature landing page (self-hosted MP4) ([#2722](https://github.com/HankHuang0516/EClaw/issues/2722)) ([3852210](https://github.com/HankHuang0516/EClaw/commit/3852210d355704d018e3daca6b5f9512a011b210)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **kanban:** cron-spawn jitter + lane backpressure to prevent same-tick wedge ([#2791](https://github.com/HankHuang0516/EClaw/issues/2791)) ([9f414a7](https://github.com/HankHuang0516/EClaw/commit/9f414a731d6393672a0a4189c7b408c529ae5e12)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **promo:** embed daily eclaw video 2026-05-14 ([#2786](https://github.com/HankHuang0516/EClaw/issues/2786)) ([718a814](https://github.com/HankHuang0516/EClaw/commit/718a814ab16850bc2b33a1b303841e2c4378ecfa)), closes [#2782](https://github.com/HankHuang0516/EClaw/issues/2782) [#2693](https://github.com/HankHuang0516/EClaw/issues/2693)
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **info:** embed promo video at top of Quick Start tab ([#2797](https://github.com/HankHuang0516/EClaw/issues/2797)) ([047679f](https://github.com/HankHuang0516/EClaw/commit/047679fd57ab9949eaeacea414d5611e71afe041))
* **rental:** enforce strict rebind refunds ([#2703](https://github.com/HankHuang0516/EClaw/issues/2703)) ([a1859c5](https://github.com/HankHuang0516/EClaw/commit/a1859c50e6fb3991d7a8051491502d824a14a116))
* **portal:** group task chip actions ([#2825](https://github.com/HankHuang0516/EClaw/issues/2825)) ([5db5c59](https://github.com/HankHuang0516/EClaw/commit/5db5c59b32b8635f1412205faf0c2f9164d3d5d4))
* **portal:** info-guide-rules + info-guide-soul slide pair ([#2793](https://github.com/HankHuang0516/EClaw/issues/2793)) ([1c8bddc](https://github.com/HankHuang0516/EClaw/commit/1c8bddc4c185054b2b60088498e3d45509117127)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **chat:** link card previews to kanban ([#2754](https://github.com/HankHuang0516/EClaw/issues/2754)) ([2261240](https://github.com/HankHuang0516/EClaw/commit/22612402c2e95efb07246629e81a849be41ee9c7))
* **mission:** link notes to kanban cards ([#2723](https://github.com/HankHuang0516/EClaw/issues/2723)) ([b36dc18](https://github.com/HankHuang0516/EClaw/commit/b36dc18f3a8facf12e0b6046351c222f1e99dc55))
* **mindmap:** mission.html link to /portal/mindmap.html + deprecate /api/mission/mindmap ([#2685](https://github.com/HankHuang0516/EClaw/issues/2685)) ([11e297b](https://github.com/HankHuang0516/EClaw/commit/11e297bab1c9b56fcde3027d6500b7c58891bf18)), closes [#2680](https://github.com/HankHuang0516/EClaw/issues/2680) [#2684](https://github.com/HankHuang0516/EClaw/issues/2684)
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **settings:** per-entity nudge override UI (Phase 2) ([#2837](https://github.com/HankHuang0516/EClaw/issues/2837)) ([ea7662b](https://github.com/HankHuang0516/EClaw/commit/ea7662b0858882dae461e1387f711895924f9ab8)), closes [3/#4](https://github.com/HankHuang0516/EClaw/issues/4)
* **kanban:** per-entity nudge overrides (Phase 2 of card_e066cb6b) ([#2836](https://github.com/HankHuang0516/EClaw/issues/2836)) ([0425f80](https://github.com/HankHuang0516/EClaw/commit/0425f80bc1169c0d506b665659c8676695c45553))
* **avatar:** petdx render on card-holder my-cards (Phase 1b) ([#2621](https://github.com/HankHuang0516/EClaw/issues/2621)) ([f78ba8b](https://github.com/HankHuang0516/EClaw/commit/f78ba8b18acc426936ab6d8a82ca7541effea00d))
* **avatar:** petdx render on dashboard entity grid / org chart / bindings (Phase 1b) ([#2622](https://github.com/HankHuang0516/EClaw/issues/2622)) ([f417749](https://github.com/HankHuang0516/EClaw/commit/f41774914451048e8cd76e9ae30416a0642e173b)), closes [#2620](https://github.com/HankHuang0516/EClaw/issues/2620) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621)
* **avatar:** petdx render on kanban auto-assign / pulse / comment avatars (Phase 1b) ([#2624](https://github.com/HankHuang0516/EClaw/issues/2624)) ([6bff5f8](https://github.com/HankHuang0516/EClaw/commit/6bff5f80440d0bd91a6b1721cde9478d685c4d46))
* **avatar:** petdx render on mission skill/rule/soul entity dialogs (Phase 1b) ([#2623](https://github.com/HankHuang0516/EClaw/issues/2623)) ([129327b](https://github.com/HankHuang0516/EClaw/commit/129327bc7b91056659f1ab7e8d5e3f5260d951fb))
* **mindmap:** portal/mindmap.html force-graph prototype ([#129](https://github.com/HankHuang0516/EClaw/issues/129)) ([#2681](https://github.com/HankHuang0516/EClaw/issues/2681)) ([0f15e69](https://github.com/HankHuang0516/EClaw/commit/0f15e6930f0697c37fa08f3219edb8f9e499837f)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **portal:** redo nagoya trip page in professional tour-guide style ([#2691](https://github.com/HankHuang0516/EClaw/issues/2691)) ([b2378c0](https://github.com/HankHuang0516/EClaw/commit/b2378c06ee20fa9cccfdceceb1a4c9e0b3072f59))
* **avatar:** render selected petdx companion in chat avatars ([#2620](https://github.com/HankHuang0516/EClaw/issues/2620)) ([0bdd046](https://github.com/HankHuang0516/EClaw/commit/0bdd046fe1b1c428e32edda366ff112c08927f4c))
* **home:** replace native home with WebView hosting dashboard.html ([#2634](https://github.com/HankHuang0516/EClaw/issues/2634)) ([e69ea81](https://github.com/HankHuang0516/EClaw/commit/e69ea8160c239b083a83d6dc83a4f1c3f901c863))
* **app:** route chat mission jumps through native tabs ([#2824](https://github.com/HankHuang0516/EClaw/issues/2824)) ([deb07b6](https://github.com/HankHuang0516/EClaw/commit/deb07b69a9ecca632fe27278de537f1d85234e94))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **chat:** support message deep links ([#2719](https://github.com/HankHuang0516/EClaw/issues/2719)) ([2dc0f1e](https://github.com/HankHuang0516/EClaw/commit/2dc0f1eeb259e1a0848db4a03186b989372cd91c))
* **mission:** support note deep links ([#2717](https://github.com/HankHuang0516/EClaw/issues/2717)) ([2efd3a5](https://github.com/HankHuang0516/EClaw/commit/2efd3a5e741217a07c0b0ac54a0ddd010e0ebe23))
* **share-chat:** twitter card + per-bot og:image/twitter:* in SSR ([#2609](https://github.com/HankHuang0516/EClaw/issues/2609)) ([6cdc853](https://github.com/HankHuang0516/EClaw/commit/6cdc853dc884cdb95bd47214942768981f218ae0))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))
* **settings:** wire petdx avatar into channel-account chips ([#2626](https://github.com/HankHuang0516/EClaw/issues/2626)) ([88aec77](https://github.com/HankHuang0516/EClaw/commit/88aec772628c240e97b336bb5820892ad632d1ae))
* **files:** wire petdx avatar into entity filter & per-file badges ([#2627](https://github.com/HankHuang0516/EClaw/issues/2627)) ([5b3e5cc](https://github.com/HankHuang0516/EClaw/commit/5b3e5cc542d9da69bb4e92500fd03a542ea33f00))
* **mindmap:** wrap hardcoded zh-TW UI strings with i18n t() ([#2607](https://github.com/HankHuang0516/EClaw/issues/2607)) ([166af87](https://github.com/HankHuang0516/EClaw/commit/166af8772b2121a24aaf34a83b3de970e9b3b571)), closes [#2606](https://github.com/HankHuang0516/EClaw/issues/2606)
* **i18n:** zh-TW backfill 8 keys (soft-pause + chat + invite + wallet) ([#2815](https://github.com/HankHuang0516/EClaw/issues/2815)) ([a2dd574](https://github.com/HankHuang0516/EClaw/commit/a2dd5743ce8d43a4b6ace9a2fd4b52568180d6c5))


### Performance Improvements

* **mindmap:** force-graph hardening for 1000/2000-node graphs ([#2684](https://github.com/HankHuang0516/EClaw/issues/2684)) ([da8b1c8](https://github.com/HankHuang0516/EClaw/commit/da8b1c8f947ab8bc8fa455c1962a91146623a1fc))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-19)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **notifications:** add kanban_done + kanban_done_auto toggles to Android Settings ([#2636](https://github.com/HankHuang0516/EClaw/issues/2636)) ([a710909](https://github.com/HankHuang0516/EClaw/commit/a7109095e3393b8564e7ef1b23d382a4fbb944b8))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **chat:** atomic-load target bar (await contacts before first render) ([#2831](https://github.com/HankHuang0516/EClaw/issues/2831)) ([5f529e6](https://github.com/HankHuang0516/EClaw/commit/5f529e6b772eacc38ba1de69b44258a05f0d816a)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2](https://github.com/HankHuang0516/EClaw/issues/2)
* **i18n:** clear batch 1 residual missing keys ([#2790](https://github.com/HankHuang0516/EClaw/issues/2790)) ([211030e](https://github.com/HankHuang0516/EClaw/commit/211030e0b0b6a865c11f0c4ed60dc4e356d43b7a))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **kanban:** comment input no longer overlaps last comment in card detail (PR [#2678](https://github.com/HankHuang0516/EClaw/issues/2678)) ([fba91fc](https://github.com/HankHuang0516/EClaw/commit/fba91fca15402b453a0db5ee857c0b16e6087055))
* **chat:** compact 20px avatar in target bar (App WebView only shows [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2](https://github.com/HankHuang0516/EClaw/issues/2)) ([#2830](https://github.com/HankHuang0516/EClaw/issues/2830)) ([42c7543](https://github.com/HankHuang0516/EClaw/commit/42c7543b4a78a7abf3f5f7535eb9bc6142cd0fe2)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **i18n:** cover dynamic portal wrapper keys ([#2807](https://github.com/HankHuang0516/EClaw/issues/2807)) ([4c711cc](https://github.com/HankHuang0516/EClaw/commit/4c711cc4009300ffe4e8933a98ee01cd0fdd6aeb))
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **petdx:** drop dark-grey loading placeholder + preload sprite WEBP ([#2628](https://github.com/HankHuang0516/EClaw/issues/2628)) ([59cef38](https://github.com/HankHuang0516/EClaw/commit/59cef387bd69ca99d7d15c86a1364856d3849ad8)), closes [#1a1a1a](https://github.com/HankHuang0516/EClaw/issues/1a1a1a)
* **security:** escape innerHTML in chat modal error messages ([#2819](https://github.com/HankHuang0516/EClaw/issues/2819)) ([dce07ad](https://github.com/HankHuang0516/EClaw/commit/dce07adde64795916dba977ae23e46f3371ce7ed)), closes [#2809](https://github.com/HankHuang0516/EClaw/issues/2809) [#2810](https://github.com/HankHuang0516/EClaw/issues/2810) [#2809](https://github.com/HankHuang0516/EClaw/issues/2809) [#2810](https://github.com/HankHuang0516/EClaw/issues/2810)
* **entities:** expose botSecret to owner so wallpaper service can poll companions ([#2615](https://github.com/HankHuang0516/EClaw/issues/2615)) ([04470fc](https://github.com/HankHuang0516/EClaw/commit/04470fce8f8c3fce2b1ba8b243e776606f107502))
* **rental:** expose owner_public_code in marketplace so plaza CTA can route ([#2616](https://github.com/HankHuang0516/EClaw/issues/2616)) ([4d1372f](https://github.com/HankHuang0516/EClaw/commit/4d1372f717d93cab65543e87c852e74e9fb67071)), closes [#2610](https://github.com/HankHuang0516/EClaw/issues/2610)
* **mindmap:** fallback to device scope when entityId is null ([#2728](https://github.com/HankHuang0516/EClaw/issues/2728)) ([7572312](https://github.com/HankHuang0516/EClaw/commit/7572312433d3d75fc245eda48a28919ce14bd927))
* **i18n:** fill Spanish drift keys ([#2751](https://github.com/HankHuang0516/EClaw/issues/2751)) ([0ad0ee5](https://github.com/HankHuang0516/EClaw/commit/0ad0ee55f7fac3e6ac46d891539950dab4d553cc))
* **portal:** fit embedded org chart to mobile viewport ([#2674](https://github.com/HankHuang0516/EClaw/issues/2674)) ([1c4e1b4](https://github.com/HankHuang0516/EClaw/commit/1c4e1b413ea7027b4cd4b8ecda981b0d0e12e66b))
* **i18n:** fix 6 trailing-comma syntax errors in 10-locale batch ([#2771](https://github.com/HankHuang0516/EClaw/issues/2771)) ([b27c6ca](https://github.com/HankHuang0516/EClaw/commit/b27c6ca204bf813e406c54ce3a2532a5f1f031b3))
* **kanban:** GET card returns latest 50 comments + comments endpoint exposes total ([#2816](https://github.com/HankHuang0516/EClaw/issues/2816)) ([c4d83f7](https://github.com/HankHuang0516/EClaw/commit/c4d83f777a1cd26aea0936e4316aa35c52822eef))
* **uiux:** harden chat previews and roster preview ([#2769](https://github.com/HankHuang0516/EClaw/issues/2769)) ([466d4d3](https://github.com/HankHuang0516/EClaw/commit/466d4d3ef81c628d3f58db64323946053d7bf61c))
* **mention-parser:** ignore @-mentions inside markdown code spans ([#2645](https://github.com/HankHuang0516/EClaw/issues/2645)) ([8da19d4](https://github.com/HankHuang0516/EClaw/commit/8da19d4a79ceb4152bf2144ee0847c61ce3e1def)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **kanban:** lazy-load dependency chips via IntersectionObserver ([#2632](https://github.com/HankHuang0516/EClaw/issues/2632)) ([20586b4](https://github.com/HankHuang0516/EClaw/commit/20586b43357335f9eb6a190c02d58c8e36b58aba)), closes [#2631](https://github.com/HankHuang0516/EClaw/issues/2631)
* **kanban:** make card sorting deterministic ([#2756](https://github.com/HankHuang0516/EClaw/issues/2756)) ([48e2117](https://github.com/HankHuang0516/EClaw/commit/48e2117b64e37f05dc635e0a3b67bfd43cbe48f5))
* **org-chart:** notify affected bots on hierarchy change ([#2812](https://github.com/HankHuang0516/EClaw/issues/2812)) ([55675fd](https://github.com/HankHuang0516/EClaw/commit/55675fdf4487494d729a29524b32bd81b756a00c)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** notify reviewer on manual /move → review ([#2753](https://github.com/HankHuang0516/EClaw/issues/2753)) ([6cbbb4e](https://github.com/HankHuang0516/EClaw/commit/6cbbb4ee8c0d4d8ad54df2e9b5faaa3699bd530f))
* **wallpaper:** off-load spritesheet fetch to IO so per-petdx sprites actually render ([#2618](https://github.com/HankHuang0516/EClaw/issues/2618)) ([61b832c](https://github.com/HankHuang0516/EClaw/commit/61b832c9fa8a1d0caab810ccc942d85c63349267)), closes [#2615](https://github.com/HankHuang0516/EClaw/issues/2615) [#2577](https://github.com/HankHuang0516/EClaw/issues/2577)
* **security:** patch P0 sanitize-html XSS + P1 protobufjs + exam.html XSS ([#2829](https://github.com/HankHuang0516/EClaw/issues/2829)) ([c71b871](https://github.com/HankHuang0516/EClaw/commit/c71b871a045887375dd0d26d1a3280a0891a89ad))
* **portal:** petdx-browser cookie-session fallback for device-login ([#2757](https://github.com/HankHuang0516/EClaw/issues/2757)) ([ca275f4](https://github.com/HankHuang0516/EClaw/commit/ca275f4519835da0c7ad71c588908a18f6f138d8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **api:** platform-stats 500 + entity/lookup publicCode alias ([#2809](https://github.com/HankHuang0516/EClaw/issues/2809), [#2810](https://github.com/HankHuang0516/EClaw/issues/2810)) ([#2818](https://github.com/HankHuang0516/EClaw/issues/2818)) ([f99fd17](https://github.com/HankHuang0516/EClaw/commit/f99fd17b2b1c32d88daa2510ff66d714c1a53edc))
* **i18n:** positional format specifiers for feedback_result_logs (7 locales) ([#2597](https://github.com/HankHuang0516/EClaw/issues/2597)) ([21aedc7](https://github.com/HankHuang0516/EClaw/commit/21aedc7eebc7a2839e340136f38dfdfd4dabb9dc))
* **avatar-petdx:** preserve descriptor across transient API failures (flicker) ([#2625](https://github.com/HankHuang0516/EClaw/issues/2625)) ([7b1c606](https://github.com/HankHuang0516/EClaw/commit/7b1c606514f7698d72ec95cf6c556e4043966186))
* **chat:** preserve scroll anchor while reading history ([#2693](https://github.com/HankHuang0516/EClaw/issues/2693)) ([945fdb7](https://github.com/HankHuang0516/EClaw/commit/945fdb7192b791b31882e1e75568dd8b11e4686f))
* **promo:** pull video embed from /promo-chat-avatar.html ([#2724](https://github.com/HankHuang0516/EClaw/issues/2724)) ([2afabc8](https://github.com/HankHuang0516/EClaw/commit/2afabc8c5ff8b25218a7cb857e8adfa572c8e9d5))
* **kanban:** realign stale recurring schedules ([#2785](https://github.com/HankHuang0516/EClaw/issues/2785)) ([ab8ee25](https://github.com/HankHuang0516/EClaw/commit/ab8ee250a9b37f3d3e838bb01d8866c8d2b78231))
* **portal:** reduce QA-discovered request fanout ([#2656](https://github.com/HankHuang0516/EClaw/issues/2656)) ([1e46d6b](https://github.com/HankHuang0516/EClaw/commit/1e46d6bab61e58c65b452b6503d953f8dddeee75))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **portal:** remove org chart fit scale floor ([#2676](https://github.com/HankHuang0516/EClaw/issues/2676)) ([0f01606](https://github.com/HankHuang0516/EClaw/commit/0f016068b963bb5f800a02f28817c7174979d913))
* **i18n:** rename mm_empty_title → mm_state_empty_title in mindmap.html ([#2683](https://github.com/HankHuang0516/EClaw/issues/2683)) ([c79c109](https://github.com/HankHuang0516/EClaw/commit/c79c109bea23142e8a6d9ace976d105af1280ec9))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **chat:** render mention avatars with companion renderer ([#2633](https://github.com/HankHuang0516/EClaw/issues/2633)) ([03e205f](https://github.com/HankHuang0516/EClaw/commit/03e205f663ecd2c2f443d4009dd5af0093f0bbbb))
* **kanban:** reserve mobile comments panel height ([#2782](https://github.com/HankHuang0516/EClaw/issues/2782)) ([ce8662d](https://github.com/HankHuang0516/EClaw/commit/ce8662d362422fdd25037f1deb61dbed9425e2f9))
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* scheduled audit 2026-05-13 — 6 bugs, XSS, i18n ([#2668](https://github.com/HankHuang0516/EClaw/issues/2668)) ([21dd513](https://github.com/HankHuang0516/EClaw/commit/21dd513b4464738de29164265437435ba6cc4817)), closes [#2605](https://github.com/HankHuang0516/EClaw/issues/2605) [#2608](https://github.com/HankHuang0516/EClaw/issues/2608) [#2600](https://github.com/HankHuang0516/EClaw/issues/2600) [#2599](https://github.com/HankHuang0516/EClaw/issues/2599) [#2598](https://github.com/HankHuang0516/EClaw/issues/2598)
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **chat:** smart-chip preview falls back to inline c.comments when /comments fails (PR [#2677](https://github.com/HankHuang0516/EClaw/issues/2677)) ([7f4dffd](https://github.com/HankHuang0516/EClaw/commit/7f4dffd2c83ea86f296b8fa0610f0e67c9f1af11))
* **kanban:** stabilize comment detail viewport ([#2796](https://github.com/HankHuang0516/EClaw/issues/2796)) ([0a10aad](https://github.com/HankHuang0516/EClaw/commit/0a10aadb5a5b12ff23454c16d5c88183b94ad7d7))
* **wallpaper:** stop Android live wallpaper flashing default lobster on companion change ([#2629](https://github.com/HankHuang0516/EClaw/issues/2629)) ([8b4f66f](https://github.com/HankHuang0516/EClaw/commit/8b4f66fcb335bf43128f924b761b6337c817095b)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **chat:** stop chat.html bouncing to dashboard via /api/rental/health-status 401 race ([#2833](https://github.com/HankHuang0516/EClaw/issues/2833)) ([c422406](https://github.com/HankHuang0516/EClaw/commit/c4224067cdcfe7f3e22ab95007c7563dac4196ac))
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **app:** WebView pages honor app-selected locale via ?lang= URL param ([#2672](https://github.com/HankHuang0516/EClaw/issues/2672)) ([8ed8757](https://github.com/HankHuang0516/EClaw/commit/8ed8757aec5bf214e837cc0d81bf2b23f1993a91)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* **community:** 1-click chat button on bot cards + utm tagging ([#2610](https://github.com/HankHuang0516/EClaw/issues/2610)) ([eee97b0](https://github.com/HankHuang0516/EClaw/commit/eee97b0e2e4e74945ec24f218a69a52800b97a66))
* **chat:** accept ?messageId= as deep-link alias ([#2838](https://github.com/HankHuang0516/EClaw/issues/2838)) ([1785a87](https://github.com/HankHuang0516/EClaw/commit/1785a87310426637fd10df83754fb9924c45207f))
* **chat:** add avatar size preference ([#2714](https://github.com/HankHuang0516/EClaw/issues/2714)) ([6fe164a](https://github.com/HankHuang0516/EClaw/commit/6fe164ad8b22fa576d2dd9ad37c0d9fc295b5a83))
* **dashboard:** add Claude and Codex channel guides ([#2640](https://github.com/HankHuang0516/EClaw/issues/2640)) ([c64e4c4](https://github.com/HankHuang0516/EClaw/commit/c64e4c4afc78db58c5cd578f00486dd7b2fd3311))
* **dashboard:** add Claude Code channel guide card ([#2667](https://github.com/HankHuang0516/EClaw/issues/2667)) ([d70d75c](https://github.com/HankHuang0516/EClaw/commit/d70d75c0c8caa8a540358a9aab4556b8c1927a5c))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* **kanban:** add device-scoped card tags ([#2773](https://github.com/HankHuang0516/EClaw/issues/2773)) ([53a387e](https://github.com/HankHuang0516/EClaw/commit/53a387e67ba7bb4f6bed1c427000c4ae8666577a))
* **portal:** add entity selector to petdx-browser ([#2602](https://github.com/HankHuang0516/EClaw/issues/2602)) ([3fa067e](https://github.com/HankHuang0516/EClaw/commit/3fa067e00b38829b48a37cecd33ee81a9a1122d9))
* **kanban:** add explicit card links ([#2721](https://github.com/HankHuang0516/EClaw/issues/2721)) ([ef9f812](https://github.com/HankHuang0516/EClaw/commit/ef9f812a3fcf39efd07fd158ce90951bdd045ac7))
* **kanban:** add explicit done-card reopen flow ([#2801](https://github.com/HankHuang0516/EClaw/issues/2801)) ([5080aac](https://github.com/HankHuang0516/EClaw/commit/5080aacb75047c0deaa379ee708ec85465afd57c))
* **mindmap:** add GET /api/mindmap/graph force-graph projection ([#2680](https://github.com/HankHuang0516/EClaw/issues/2680)) ([a00b2e7](https://github.com/HankHuang0516/EClaw/commit/a00b2e775af2c4c98cd157f760ad87aeeee469f0)), closes [#2679](https://github.com/HankHuang0516/EClaw/issues/2679) [#2679](https://github.com/HankHuang0516/EClaw/issues/2679)
* **dashboard:** add Hermes channel promo card ([#2708](https://github.com/HankHuang0516/EClaw/issues/2708)) ([337aca1](https://github.com/HankHuang0516/EClaw/commit/337aca153d5a1cd7e888c065f00ae54db7872d91))
* **rental:** add listing soft pause ([#2781](https://github.com/HankHuang0516/EClaw/issues/2781)) ([6586b72](https://github.com/HankHuang0516/EClaw/commit/6586b72717ddb1637d91cd3242c8d2ff554f62b4))
* **portal:** add Nagoya 5D4N trip static cross-ref page ([#2689](https://github.com/HankHuang0516/EClaw/issues/2689)) ([2e0efb6](https://github.com/HankHuang0516/EClaw/commit/2e0efb6dcdaff52226cc8854a96747000b12bdff))
* **portal:** add Nagoya trip map links and image lightbox ([#2821](https://github.com/HankHuang0516/EClaw/issues/2821)) ([3e40955](https://github.com/HankHuang0516/EClaw/commit/3e40955650a05f45a6b9f7e39e73847705424a03))
* **portal/nagoya:** add parking shortcut buttons next to itinerary places ([#2826](https://github.com/HankHuang0516/EClaw/issues/2826)) ([63968c5](https://github.com/HankHuang0516/EClaw/commit/63968c554d046afc8d978de74e3aacbf7700500d))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **settings:** add rental roster management preview ([#2758](https://github.com/HankHuang0516/EClaw/issues/2758)) ([9706e59](https://github.com/HankHuang0516/EClaw/commit/9706e59ded140a90a6e02348124282bc69d89001))
* **rental:** add renter health chat indicator ([#2690](https://github.com/HankHuang0516/EClaw/issues/2690)) ([36cd2e9](https://github.com/HankHuang0516/EClaw/commit/36cd2e9802be4c7ebb03d3024617fa74aca48ffd))
* **ios:** add Tutorial & Intro entry in Settings ([#2800](https://github.com/HankHuang0516/EClaw/issues/2800)) ([ed83e51](https://github.com/HankHuang0516/EClaw/commit/ed83e51d043bf4cd5865f38dc95a91ed54820d6c))
* **landing:** add Watch Full Demo CTA below hero video ([#2799](https://github.com/HankHuang0516/EClaw/issues/2799)) ([66107c9](https://github.com/HankHuang0516/EClaw/commit/66107c954727551fd34d989a4674daaad9b63968))
* **footer:** add Watch Intro Video link in Info column ([#2798](https://github.com/HankHuang0516/EClaw/issues/2798)) ([d7c6d59](https://github.com/HankHuang0516/EClaw/commit/d7c6d596b69c6a5b257bf1f7a792a407ef9712ad))
* **companion:** bridge crafter-station/petdex gallery (1784 pets) ([#2601](https://github.com/HankHuang0516/EClaw/issues/2601)) ([2e245be](https://github.com/HankHuang0516/EClaw/commit/2e245bea6dd47ea7361b927d389188a3c23b6bb3))
* **promo:** chat avatar size feature landing page (self-hosted MP4) ([#2722](https://github.com/HankHuang0516/EClaw/issues/2722)) ([3852210](https://github.com/HankHuang0516/EClaw/commit/3852210d355704d018e3daca6b5f9512a011b210)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **kanban:** cron-spawn jitter + lane backpressure to prevent same-tick wedge ([#2791](https://github.com/HankHuang0516/EClaw/issues/2791)) ([9f414a7](https://github.com/HankHuang0516/EClaw/commit/9f414a731d6393672a0a4189c7b408c529ae5e12)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **promo:** embed daily eclaw video 2026-05-14 ([#2786](https://github.com/HankHuang0516/EClaw/issues/2786)) ([718a814](https://github.com/HankHuang0516/EClaw/commit/718a814ab16850bc2b33a1b303841e2c4378ecfa)), closes [#2782](https://github.com/HankHuang0516/EClaw/issues/2782) [#2693](https://github.com/HankHuang0516/EClaw/issues/2693)
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **info:** embed promo video at top of Quick Start tab ([#2797](https://github.com/HankHuang0516/EClaw/issues/2797)) ([047679f](https://github.com/HankHuang0516/EClaw/commit/047679fd57ab9949eaeacea414d5611e71afe041))
* **rental:** enforce strict rebind refunds ([#2703](https://github.com/HankHuang0516/EClaw/issues/2703)) ([a1859c5](https://github.com/HankHuang0516/EClaw/commit/a1859c50e6fb3991d7a8051491502d824a14a116))
* **portal:** group task chip actions ([#2825](https://github.com/HankHuang0516/EClaw/issues/2825)) ([5db5c59](https://github.com/HankHuang0516/EClaw/commit/5db5c59b32b8635f1412205faf0c2f9164d3d5d4))
* **portal:** info-guide-rules + info-guide-soul slide pair ([#2793](https://github.com/HankHuang0516/EClaw/issues/2793)) ([1c8bddc](https://github.com/HankHuang0516/EClaw/commit/1c8bddc4c185054b2b60088498e3d45509117127)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **chat:** link card previews to kanban ([#2754](https://github.com/HankHuang0516/EClaw/issues/2754)) ([2261240](https://github.com/HankHuang0516/EClaw/commit/22612402c2e95efb07246629e81a849be41ee9c7))
* **mission:** link notes to kanban cards ([#2723](https://github.com/HankHuang0516/EClaw/issues/2723)) ([b36dc18](https://github.com/HankHuang0516/EClaw/commit/b36dc18f3a8facf12e0b6046351c222f1e99dc55))
* **mindmap:** mission.html link to /portal/mindmap.html + deprecate /api/mission/mindmap ([#2685](https://github.com/HankHuang0516/EClaw/issues/2685)) ([11e297b](https://github.com/HankHuang0516/EClaw/commit/11e297bab1c9b56fcde3027d6500b7c58891bf18)), closes [#2680](https://github.com/HankHuang0516/EClaw/issues/2680) [#2684](https://github.com/HankHuang0516/EClaw/issues/2684)
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **settings:** per-entity nudge override UI (Phase 2) ([#2837](https://github.com/HankHuang0516/EClaw/issues/2837)) ([ea7662b](https://github.com/HankHuang0516/EClaw/commit/ea7662b0858882dae461e1387f711895924f9ab8)), closes [3/#4](https://github.com/HankHuang0516/EClaw/issues/4)
* **kanban:** per-entity nudge overrides (Phase 2 of card_e066cb6b) ([#2836](https://github.com/HankHuang0516/EClaw/issues/2836)) ([0425f80](https://github.com/HankHuang0516/EClaw/commit/0425f80bc1169c0d506b665659c8676695c45553))
* **avatar:** petdx render on card-holder my-cards (Phase 1b) ([#2621](https://github.com/HankHuang0516/EClaw/issues/2621)) ([f78ba8b](https://github.com/HankHuang0516/EClaw/commit/f78ba8b18acc426936ab6d8a82ca7541effea00d))
* **avatar:** petdx render on dashboard entity grid / org chart / bindings (Phase 1b) ([#2622](https://github.com/HankHuang0516/EClaw/issues/2622)) ([f417749](https://github.com/HankHuang0516/EClaw/commit/f41774914451048e8cd76e9ae30416a0642e173b)), closes [#2620](https://github.com/HankHuang0516/EClaw/issues/2620) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621)
* **avatar:** petdx render on kanban auto-assign / pulse / comment avatars (Phase 1b) ([#2624](https://github.com/HankHuang0516/EClaw/issues/2624)) ([6bff5f8](https://github.com/HankHuang0516/EClaw/commit/6bff5f80440d0bd91a6b1721cde9478d685c4d46))
* **avatar:** petdx render on mission skill/rule/soul entity dialogs (Phase 1b) ([#2623](https://github.com/HankHuang0516/EClaw/issues/2623)) ([129327b](https://github.com/HankHuang0516/EClaw/commit/129327bc7b91056659f1ab7e8d5e3f5260d951fb))
* **mindmap:** portal/mindmap.html force-graph prototype ([#129](https://github.com/HankHuang0516/EClaw/issues/129)) ([#2681](https://github.com/HankHuang0516/EClaw/issues/2681)) ([0f15e69](https://github.com/HankHuang0516/EClaw/commit/0f15e6930f0697c37fa08f3219edb8f9e499837f)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **portal:** redo nagoya trip page in professional tour-guide style ([#2691](https://github.com/HankHuang0516/EClaw/issues/2691)) ([b2378c0](https://github.com/HankHuang0516/EClaw/commit/b2378c06ee20fa9cccfdceceb1a4c9e0b3072f59))
* **avatar:** render selected petdx companion in chat avatars ([#2620](https://github.com/HankHuang0516/EClaw/issues/2620)) ([0bdd046](https://github.com/HankHuang0516/EClaw/commit/0bdd046fe1b1c428e32edda366ff112c08927f4c))
* **home:** replace native home with WebView hosting dashboard.html ([#2634](https://github.com/HankHuang0516/EClaw/issues/2634)) ([e69ea81](https://github.com/HankHuang0516/EClaw/commit/e69ea8160c239b083a83d6dc83a4f1c3f901c863))
* **app:** route chat mission jumps through native tabs ([#2824](https://github.com/HankHuang0516/EClaw/issues/2824)) ([deb07b6](https://github.com/HankHuang0516/EClaw/commit/deb07b69a9ecca632fe27278de537f1d85234e94))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **chat:** support message deep links ([#2719](https://github.com/HankHuang0516/EClaw/issues/2719)) ([2dc0f1e](https://github.com/HankHuang0516/EClaw/commit/2dc0f1eeb259e1a0848db4a03186b989372cd91c))
* **mission:** support note deep links ([#2717](https://github.com/HankHuang0516/EClaw/issues/2717)) ([2efd3a5](https://github.com/HankHuang0516/EClaw/commit/2efd3a5e741217a07c0b0ac54a0ddd010e0ebe23))
* **share-chat:** twitter card + per-bot og:image/twitter:* in SSR ([#2609](https://github.com/HankHuang0516/EClaw/issues/2609)) ([6cdc853](https://github.com/HankHuang0516/EClaw/commit/6cdc853dc884cdb95bd47214942768981f218ae0))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))
* **settings:** wire petdx avatar into channel-account chips ([#2626](https://github.com/HankHuang0516/EClaw/issues/2626)) ([88aec77](https://github.com/HankHuang0516/EClaw/commit/88aec772628c240e97b336bb5820892ad632d1ae))
* **files:** wire petdx avatar into entity filter & per-file badges ([#2627](https://github.com/HankHuang0516/EClaw/issues/2627)) ([5b3e5cc](https://github.com/HankHuang0516/EClaw/commit/5b3e5cc542d9da69bb4e92500fd03a542ea33f00))
* **mindmap:** wrap hardcoded zh-TW UI strings with i18n t() ([#2607](https://github.com/HankHuang0516/EClaw/issues/2607)) ([166af87](https://github.com/HankHuang0516/EClaw/commit/166af8772b2121a24aaf34a83b3de970e9b3b571)), closes [#2606](https://github.com/HankHuang0516/EClaw/issues/2606)
* **i18n:** zh-TW backfill 8 keys (soft-pause + chat + invite + wallet) ([#2815](https://github.com/HankHuang0516/EClaw/issues/2815)) ([a2dd574](https://github.com/HankHuang0516/EClaw/commit/a2dd5743ce8d43a4b6ace9a2fd4b52568180d6c5))


### Performance Improvements

* **mindmap:** force-graph hardening for 1000/2000-node graphs ([#2684](https://github.com/HankHuang0516/EClaw/issues/2684)) ([da8b1c8](https://github.com/HankHuang0516/EClaw/commit/da8b1c8f947ab8bc8fa455c1962a91146623a1fc))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-19)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **notifications:** add kanban_done + kanban_done_auto toggles to Android Settings ([#2636](https://github.com/HankHuang0516/EClaw/issues/2636)) ([a710909](https://github.com/HankHuang0516/EClaw/commit/a7109095e3393b8564e7ef1b23d382a4fbb944b8))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **chat:** atomic-load target bar (await contacts before first render) ([#2831](https://github.com/HankHuang0516/EClaw/issues/2831)) ([5f529e6](https://github.com/HankHuang0516/EClaw/commit/5f529e6b772eacc38ba1de69b44258a05f0d816a)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2](https://github.com/HankHuang0516/EClaw/issues/2)
* **i18n:** clear batch 1 residual missing keys ([#2790](https://github.com/HankHuang0516/EClaw/issues/2790)) ([211030e](https://github.com/HankHuang0516/EClaw/commit/211030e0b0b6a865c11f0c4ed60dc4e356d43b7a))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **kanban:** comment input no longer overlaps last comment in card detail (PR [#2678](https://github.com/HankHuang0516/EClaw/issues/2678)) ([fba91fc](https://github.com/HankHuang0516/EClaw/commit/fba91fca15402b453a0db5ee857c0b16e6087055))
* **chat:** compact 20px avatar in target bar (App WebView only shows [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2](https://github.com/HankHuang0516/EClaw/issues/2)) ([#2830](https://github.com/HankHuang0516/EClaw/issues/2830)) ([42c7543](https://github.com/HankHuang0516/EClaw/commit/42c7543b4a78a7abf3f5f7535eb9bc6142cd0fe2)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **i18n:** cover dynamic portal wrapper keys ([#2807](https://github.com/HankHuang0516/EClaw/issues/2807)) ([4c711cc](https://github.com/HankHuang0516/EClaw/commit/4c711cc4009300ffe4e8933a98ee01cd0fdd6aeb))
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **petdx:** drop dark-grey loading placeholder + preload sprite WEBP ([#2628](https://github.com/HankHuang0516/EClaw/issues/2628)) ([59cef38](https://github.com/HankHuang0516/EClaw/commit/59cef387bd69ca99d7d15c86a1364856d3849ad8)), closes [#1a1a1a](https://github.com/HankHuang0516/EClaw/issues/1a1a1a)
* **security:** escape innerHTML in chat modal error messages ([#2819](https://github.com/HankHuang0516/EClaw/issues/2819)) ([dce07ad](https://github.com/HankHuang0516/EClaw/commit/dce07adde64795916dba977ae23e46f3371ce7ed)), closes [#2809](https://github.com/HankHuang0516/EClaw/issues/2809) [#2810](https://github.com/HankHuang0516/EClaw/issues/2810) [#2809](https://github.com/HankHuang0516/EClaw/issues/2809) [#2810](https://github.com/HankHuang0516/EClaw/issues/2810)
* **entities:** expose botSecret to owner so wallpaper service can poll companions ([#2615](https://github.com/HankHuang0516/EClaw/issues/2615)) ([04470fc](https://github.com/HankHuang0516/EClaw/commit/04470fce8f8c3fce2b1ba8b243e776606f107502))
* **rental:** expose owner_public_code in marketplace so plaza CTA can route ([#2616](https://github.com/HankHuang0516/EClaw/issues/2616)) ([4d1372f](https://github.com/HankHuang0516/EClaw/commit/4d1372f717d93cab65543e87c852e74e9fb67071)), closes [#2610](https://github.com/HankHuang0516/EClaw/issues/2610)
* **mindmap:** fallback to device scope when entityId is null ([#2728](https://github.com/HankHuang0516/EClaw/issues/2728)) ([7572312](https://github.com/HankHuang0516/EClaw/commit/7572312433d3d75fc245eda48a28919ce14bd927))
* **i18n:** fill Spanish drift keys ([#2751](https://github.com/HankHuang0516/EClaw/issues/2751)) ([0ad0ee5](https://github.com/HankHuang0516/EClaw/commit/0ad0ee55f7fac3e6ac46d891539950dab4d553cc))
* **portal:** fit embedded org chart to mobile viewport ([#2674](https://github.com/HankHuang0516/EClaw/issues/2674)) ([1c4e1b4](https://github.com/HankHuang0516/EClaw/commit/1c4e1b413ea7027b4cd4b8ecda981b0d0e12e66b))
* **i18n:** fix 6 trailing-comma syntax errors in 10-locale batch ([#2771](https://github.com/HankHuang0516/EClaw/issues/2771)) ([b27c6ca](https://github.com/HankHuang0516/EClaw/commit/b27c6ca204bf813e406c54ce3a2532a5f1f031b3))
* **kanban:** GET card returns latest 50 comments + comments endpoint exposes total ([#2816](https://github.com/HankHuang0516/EClaw/issues/2816)) ([c4d83f7](https://github.com/HankHuang0516/EClaw/commit/c4d83f777a1cd26aea0936e4316aa35c52822eef))
* **uiux:** harden chat previews and roster preview ([#2769](https://github.com/HankHuang0516/EClaw/issues/2769)) ([466d4d3](https://github.com/HankHuang0516/EClaw/commit/466d4d3ef81c628d3f58db64323946053d7bf61c))
* **mention-parser:** ignore @-mentions inside markdown code spans ([#2645](https://github.com/HankHuang0516/EClaw/issues/2645)) ([8da19d4](https://github.com/HankHuang0516/EClaw/commit/8da19d4a79ceb4152bf2144ee0847c61ce3e1def)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **kanban:** lazy-load dependency chips via IntersectionObserver ([#2632](https://github.com/HankHuang0516/EClaw/issues/2632)) ([20586b4](https://github.com/HankHuang0516/EClaw/commit/20586b43357335f9eb6a190c02d58c8e36b58aba)), closes [#2631](https://github.com/HankHuang0516/EClaw/issues/2631)
* **kanban:** make card sorting deterministic ([#2756](https://github.com/HankHuang0516/EClaw/issues/2756)) ([48e2117](https://github.com/HankHuang0516/EClaw/commit/48e2117b64e37f05dc635e0a3b67bfd43cbe48f5))
* **org-chart:** notify affected bots on hierarchy change ([#2812](https://github.com/HankHuang0516/EClaw/issues/2812)) ([55675fd](https://github.com/HankHuang0516/EClaw/commit/55675fdf4487494d729a29524b32bd81b756a00c)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** notify reviewer on manual /move → review ([#2753](https://github.com/HankHuang0516/EClaw/issues/2753)) ([6cbbb4e](https://github.com/HankHuang0516/EClaw/commit/6cbbb4ee8c0d4d8ad54df2e9b5faaa3699bd530f))
* **wallpaper:** off-load spritesheet fetch to IO so per-petdx sprites actually render ([#2618](https://github.com/HankHuang0516/EClaw/issues/2618)) ([61b832c](https://github.com/HankHuang0516/EClaw/commit/61b832c9fa8a1d0caab810ccc942d85c63349267)), closes [#2615](https://github.com/HankHuang0516/EClaw/issues/2615) [#2577](https://github.com/HankHuang0516/EClaw/issues/2577)
* **security:** patch P0 sanitize-html XSS + P1 protobufjs + exam.html XSS ([#2829](https://github.com/HankHuang0516/EClaw/issues/2829)) ([c71b871](https://github.com/HankHuang0516/EClaw/commit/c71b871a045887375dd0d26d1a3280a0891a89ad))
* **portal:** petdx-browser cookie-session fallback for device-login ([#2757](https://github.com/HankHuang0516/EClaw/issues/2757)) ([ca275f4](https://github.com/HankHuang0516/EClaw/commit/ca275f4519835da0c7ad71c588908a18f6f138d8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **api:** platform-stats 500 + entity/lookup publicCode alias ([#2809](https://github.com/HankHuang0516/EClaw/issues/2809), [#2810](https://github.com/HankHuang0516/EClaw/issues/2810)) ([#2818](https://github.com/HankHuang0516/EClaw/issues/2818)) ([f99fd17](https://github.com/HankHuang0516/EClaw/commit/f99fd17b2b1c32d88daa2510ff66d714c1a53edc))
* **i18n:** positional format specifiers for feedback_result_logs (7 locales) ([#2597](https://github.com/HankHuang0516/EClaw/issues/2597)) ([21aedc7](https://github.com/HankHuang0516/EClaw/commit/21aedc7eebc7a2839e340136f38dfdfd4dabb9dc))
* **avatar-petdx:** preserve descriptor across transient API failures (flicker) ([#2625](https://github.com/HankHuang0516/EClaw/issues/2625)) ([7b1c606](https://github.com/HankHuang0516/EClaw/commit/7b1c606514f7698d72ec95cf6c556e4043966186))
* **chat:** preserve scroll anchor while reading history ([#2693](https://github.com/HankHuang0516/EClaw/issues/2693)) ([945fdb7](https://github.com/HankHuang0516/EClaw/commit/945fdb7192b791b31882e1e75568dd8b11e4686f))
* **promo:** pull video embed from /promo-chat-avatar.html ([#2724](https://github.com/HankHuang0516/EClaw/issues/2724)) ([2afabc8](https://github.com/HankHuang0516/EClaw/commit/2afabc8c5ff8b25218a7cb857e8adfa572c8e9d5))
* **kanban:** realign stale recurring schedules ([#2785](https://github.com/HankHuang0516/EClaw/issues/2785)) ([ab8ee25](https://github.com/HankHuang0516/EClaw/commit/ab8ee250a9b37f3d3e838bb01d8866c8d2b78231))
* **portal:** reduce QA-discovered request fanout ([#2656](https://github.com/HankHuang0516/EClaw/issues/2656)) ([1e46d6b](https://github.com/HankHuang0516/EClaw/commit/1e46d6bab61e58c65b452b6503d953f8dddeee75))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **portal:** remove org chart fit scale floor ([#2676](https://github.com/HankHuang0516/EClaw/issues/2676)) ([0f01606](https://github.com/HankHuang0516/EClaw/commit/0f016068b963bb5f800a02f28817c7174979d913))
* **i18n:** rename mm_empty_title → mm_state_empty_title in mindmap.html ([#2683](https://github.com/HankHuang0516/EClaw/issues/2683)) ([c79c109](https://github.com/HankHuang0516/EClaw/commit/c79c109bea23142e8a6d9ace976d105af1280ec9))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **chat:** render mention avatars with companion renderer ([#2633](https://github.com/HankHuang0516/EClaw/issues/2633)) ([03e205f](https://github.com/HankHuang0516/EClaw/commit/03e205f663ecd2c2f443d4009dd5af0093f0bbbb))
* **kanban:** reserve mobile comments panel height ([#2782](https://github.com/HankHuang0516/EClaw/issues/2782)) ([ce8662d](https://github.com/HankHuang0516/EClaw/commit/ce8662d362422fdd25037f1deb61dbed9425e2f9))
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* scheduled audit 2026-05-13 — 6 bugs, XSS, i18n ([#2668](https://github.com/HankHuang0516/EClaw/issues/2668)) ([21dd513](https://github.com/HankHuang0516/EClaw/commit/21dd513b4464738de29164265437435ba6cc4817)), closes [#2605](https://github.com/HankHuang0516/EClaw/issues/2605) [#2608](https://github.com/HankHuang0516/EClaw/issues/2608) [#2600](https://github.com/HankHuang0516/EClaw/issues/2600) [#2599](https://github.com/HankHuang0516/EClaw/issues/2599) [#2598](https://github.com/HankHuang0516/EClaw/issues/2598)
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **chat:** smart-chip preview falls back to inline c.comments when /comments fails (PR [#2677](https://github.com/HankHuang0516/EClaw/issues/2677)) ([7f4dffd](https://github.com/HankHuang0516/EClaw/commit/7f4dffd2c83ea86f296b8fa0610f0e67c9f1af11))
* **kanban:** stabilize comment detail viewport ([#2796](https://github.com/HankHuang0516/EClaw/issues/2796)) ([0a10aad](https://github.com/HankHuang0516/EClaw/commit/0a10aadb5a5b12ff23454c16d5c88183b94ad7d7))
* **wallpaper:** stop Android live wallpaper flashing default lobster on companion change ([#2629](https://github.com/HankHuang0516/EClaw/issues/2629)) ([8b4f66f](https://github.com/HankHuang0516/EClaw/commit/8b4f66fcb335bf43128f924b761b6337c817095b)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **chat:** stop chat.html bouncing to dashboard via /api/rental/health-status 401 race ([#2833](https://github.com/HankHuang0516/EClaw/issues/2833)) ([c422406](https://github.com/HankHuang0516/EClaw/commit/c4224067cdcfe7f3e22ab95007c7563dac4196ac))
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **app:** WebView pages honor app-selected locale via ?lang= URL param ([#2672](https://github.com/HankHuang0516/EClaw/issues/2672)) ([8ed8757](https://github.com/HankHuang0516/EClaw/commit/8ed8757aec5bf214e837cc0d81bf2b23f1993a91)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* **community:** 1-click chat button on bot cards + utm tagging ([#2610](https://github.com/HankHuang0516/EClaw/issues/2610)) ([eee97b0](https://github.com/HankHuang0516/EClaw/commit/eee97b0e2e4e74945ec24f218a69a52800b97a66))
* **chat:** add avatar size preference ([#2714](https://github.com/HankHuang0516/EClaw/issues/2714)) ([6fe164a](https://github.com/HankHuang0516/EClaw/commit/6fe164ad8b22fa576d2dd9ad37c0d9fc295b5a83))
* **dashboard:** add Claude and Codex channel guides ([#2640](https://github.com/HankHuang0516/EClaw/issues/2640)) ([c64e4c4](https://github.com/HankHuang0516/EClaw/commit/c64e4c4afc78db58c5cd578f00486dd7b2fd3311))
* **dashboard:** add Claude Code channel guide card ([#2667](https://github.com/HankHuang0516/EClaw/issues/2667)) ([d70d75c](https://github.com/HankHuang0516/EClaw/commit/d70d75c0c8caa8a540358a9aab4556b8c1927a5c))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* **kanban:** add device-scoped card tags ([#2773](https://github.com/HankHuang0516/EClaw/issues/2773)) ([53a387e](https://github.com/HankHuang0516/EClaw/commit/53a387e67ba7bb4f6bed1c427000c4ae8666577a))
* **portal:** add entity selector to petdx-browser ([#2602](https://github.com/HankHuang0516/EClaw/issues/2602)) ([3fa067e](https://github.com/HankHuang0516/EClaw/commit/3fa067e00b38829b48a37cecd33ee81a9a1122d9))
* **kanban:** add explicit card links ([#2721](https://github.com/HankHuang0516/EClaw/issues/2721)) ([ef9f812](https://github.com/HankHuang0516/EClaw/commit/ef9f812a3fcf39efd07fd158ce90951bdd045ac7))
* **kanban:** add explicit done-card reopen flow ([#2801](https://github.com/HankHuang0516/EClaw/issues/2801)) ([5080aac](https://github.com/HankHuang0516/EClaw/commit/5080aacb75047c0deaa379ee708ec85465afd57c))
* **mindmap:** add GET /api/mindmap/graph force-graph projection ([#2680](https://github.com/HankHuang0516/EClaw/issues/2680)) ([a00b2e7](https://github.com/HankHuang0516/EClaw/commit/a00b2e775af2c4c98cd157f760ad87aeeee469f0)), closes [#2679](https://github.com/HankHuang0516/EClaw/issues/2679) [#2679](https://github.com/HankHuang0516/EClaw/issues/2679)
* **dashboard:** add Hermes channel promo card ([#2708](https://github.com/HankHuang0516/EClaw/issues/2708)) ([337aca1](https://github.com/HankHuang0516/EClaw/commit/337aca153d5a1cd7e888c065f00ae54db7872d91))
* **rental:** add listing soft pause ([#2781](https://github.com/HankHuang0516/EClaw/issues/2781)) ([6586b72](https://github.com/HankHuang0516/EClaw/commit/6586b72717ddb1637d91cd3242c8d2ff554f62b4))
* **portal:** add Nagoya 5D4N trip static cross-ref page ([#2689](https://github.com/HankHuang0516/EClaw/issues/2689)) ([2e0efb6](https://github.com/HankHuang0516/EClaw/commit/2e0efb6dcdaff52226cc8854a96747000b12bdff))
* **portal:** add Nagoya trip map links and image lightbox ([#2821](https://github.com/HankHuang0516/EClaw/issues/2821)) ([3e40955](https://github.com/HankHuang0516/EClaw/commit/3e40955650a05f45a6b9f7e39e73847705424a03))
* **portal/nagoya:** add parking shortcut buttons next to itinerary places ([#2826](https://github.com/HankHuang0516/EClaw/issues/2826)) ([63968c5](https://github.com/HankHuang0516/EClaw/commit/63968c554d046afc8d978de74e3aacbf7700500d))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **settings:** add rental roster management preview ([#2758](https://github.com/HankHuang0516/EClaw/issues/2758)) ([9706e59](https://github.com/HankHuang0516/EClaw/commit/9706e59ded140a90a6e02348124282bc69d89001))
* **rental:** add renter health chat indicator ([#2690](https://github.com/HankHuang0516/EClaw/issues/2690)) ([36cd2e9](https://github.com/HankHuang0516/EClaw/commit/36cd2e9802be4c7ebb03d3024617fa74aca48ffd))
* **ios:** add Tutorial & Intro entry in Settings ([#2800](https://github.com/HankHuang0516/EClaw/issues/2800)) ([ed83e51](https://github.com/HankHuang0516/EClaw/commit/ed83e51d043bf4cd5865f38dc95a91ed54820d6c))
* **landing:** add Watch Full Demo CTA below hero video ([#2799](https://github.com/HankHuang0516/EClaw/issues/2799)) ([66107c9](https://github.com/HankHuang0516/EClaw/commit/66107c954727551fd34d989a4674daaad9b63968))
* **footer:** add Watch Intro Video link in Info column ([#2798](https://github.com/HankHuang0516/EClaw/issues/2798)) ([d7c6d59](https://github.com/HankHuang0516/EClaw/commit/d7c6d596b69c6a5b257bf1f7a792a407ef9712ad))
* **companion:** bridge crafter-station/petdex gallery (1784 pets) ([#2601](https://github.com/HankHuang0516/EClaw/issues/2601)) ([2e245be](https://github.com/HankHuang0516/EClaw/commit/2e245bea6dd47ea7361b927d389188a3c23b6bb3))
* **promo:** chat avatar size feature landing page (self-hosted MP4) ([#2722](https://github.com/HankHuang0516/EClaw/issues/2722)) ([3852210](https://github.com/HankHuang0516/EClaw/commit/3852210d355704d018e3daca6b5f9512a011b210)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **kanban:** cron-spawn jitter + lane backpressure to prevent same-tick wedge ([#2791](https://github.com/HankHuang0516/EClaw/issues/2791)) ([9f414a7](https://github.com/HankHuang0516/EClaw/commit/9f414a731d6393672a0a4189c7b408c529ae5e12)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **promo:** embed daily eclaw video 2026-05-14 ([#2786](https://github.com/HankHuang0516/EClaw/issues/2786)) ([718a814](https://github.com/HankHuang0516/EClaw/commit/718a814ab16850bc2b33a1b303841e2c4378ecfa)), closes [#2782](https://github.com/HankHuang0516/EClaw/issues/2782) [#2693](https://github.com/HankHuang0516/EClaw/issues/2693)
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **info:** embed promo video at top of Quick Start tab ([#2797](https://github.com/HankHuang0516/EClaw/issues/2797)) ([047679f](https://github.com/HankHuang0516/EClaw/commit/047679fd57ab9949eaeacea414d5611e71afe041))
* **rental:** enforce strict rebind refunds ([#2703](https://github.com/HankHuang0516/EClaw/issues/2703)) ([a1859c5](https://github.com/HankHuang0516/EClaw/commit/a1859c50e6fb3991d7a8051491502d824a14a116))
* **portal:** group task chip actions ([#2825](https://github.com/HankHuang0516/EClaw/issues/2825)) ([5db5c59](https://github.com/HankHuang0516/EClaw/commit/5db5c59b32b8635f1412205faf0c2f9164d3d5d4))
* **portal:** info-guide-rules + info-guide-soul slide pair ([#2793](https://github.com/HankHuang0516/EClaw/issues/2793)) ([1c8bddc](https://github.com/HankHuang0516/EClaw/commit/1c8bddc4c185054b2b60088498e3d45509117127)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **chat:** link card previews to kanban ([#2754](https://github.com/HankHuang0516/EClaw/issues/2754)) ([2261240](https://github.com/HankHuang0516/EClaw/commit/22612402c2e95efb07246629e81a849be41ee9c7))
* **mission:** link notes to kanban cards ([#2723](https://github.com/HankHuang0516/EClaw/issues/2723)) ([b36dc18](https://github.com/HankHuang0516/EClaw/commit/b36dc18f3a8facf12e0b6046351c222f1e99dc55))
* **mindmap:** mission.html link to /portal/mindmap.html + deprecate /api/mission/mindmap ([#2685](https://github.com/HankHuang0516/EClaw/issues/2685)) ([11e297b](https://github.com/HankHuang0516/EClaw/commit/11e297bab1c9b56fcde3027d6500b7c58891bf18)), closes [#2680](https://github.com/HankHuang0516/EClaw/issues/2680) [#2684](https://github.com/HankHuang0516/EClaw/issues/2684)
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **settings:** per-entity nudge override UI (Phase 2) ([#2837](https://github.com/HankHuang0516/EClaw/issues/2837)) ([ea7662b](https://github.com/HankHuang0516/EClaw/commit/ea7662b0858882dae461e1387f711895924f9ab8)), closes [3/#4](https://github.com/HankHuang0516/EClaw/issues/4)
* **kanban:** per-entity nudge overrides (Phase 2 of card_e066cb6b) ([#2836](https://github.com/HankHuang0516/EClaw/issues/2836)) ([0425f80](https://github.com/HankHuang0516/EClaw/commit/0425f80bc1169c0d506b665659c8676695c45553))
* **avatar:** petdx render on card-holder my-cards (Phase 1b) ([#2621](https://github.com/HankHuang0516/EClaw/issues/2621)) ([f78ba8b](https://github.com/HankHuang0516/EClaw/commit/f78ba8b18acc426936ab6d8a82ca7541effea00d))
* **avatar:** petdx render on dashboard entity grid / org chart / bindings (Phase 1b) ([#2622](https://github.com/HankHuang0516/EClaw/issues/2622)) ([f417749](https://github.com/HankHuang0516/EClaw/commit/f41774914451048e8cd76e9ae30416a0642e173b)), closes [#2620](https://github.com/HankHuang0516/EClaw/issues/2620) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621)
* **avatar:** petdx render on kanban auto-assign / pulse / comment avatars (Phase 1b) ([#2624](https://github.com/HankHuang0516/EClaw/issues/2624)) ([6bff5f8](https://github.com/HankHuang0516/EClaw/commit/6bff5f80440d0bd91a6b1721cde9478d685c4d46))
* **avatar:** petdx render on mission skill/rule/soul entity dialogs (Phase 1b) ([#2623](https://github.com/HankHuang0516/EClaw/issues/2623)) ([129327b](https://github.com/HankHuang0516/EClaw/commit/129327bc7b91056659f1ab7e8d5e3f5260d951fb))
* **mindmap:** portal/mindmap.html force-graph prototype ([#129](https://github.com/HankHuang0516/EClaw/issues/129)) ([#2681](https://github.com/HankHuang0516/EClaw/issues/2681)) ([0f15e69](https://github.com/HankHuang0516/EClaw/commit/0f15e6930f0697c37fa08f3219edb8f9e499837f)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **portal:** redo nagoya trip page in professional tour-guide style ([#2691](https://github.com/HankHuang0516/EClaw/issues/2691)) ([b2378c0](https://github.com/HankHuang0516/EClaw/commit/b2378c06ee20fa9cccfdceceb1a4c9e0b3072f59))
* **avatar:** render selected petdx companion in chat avatars ([#2620](https://github.com/HankHuang0516/EClaw/issues/2620)) ([0bdd046](https://github.com/HankHuang0516/EClaw/commit/0bdd046fe1b1c428e32edda366ff112c08927f4c))
* **home:** replace native home with WebView hosting dashboard.html ([#2634](https://github.com/HankHuang0516/EClaw/issues/2634)) ([e69ea81](https://github.com/HankHuang0516/EClaw/commit/e69ea8160c239b083a83d6dc83a4f1c3f901c863))
* **app:** route chat mission jumps through native tabs ([#2824](https://github.com/HankHuang0516/EClaw/issues/2824)) ([deb07b6](https://github.com/HankHuang0516/EClaw/commit/deb07b69a9ecca632fe27278de537f1d85234e94))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **chat:** support message deep links ([#2719](https://github.com/HankHuang0516/EClaw/issues/2719)) ([2dc0f1e](https://github.com/HankHuang0516/EClaw/commit/2dc0f1eeb259e1a0848db4a03186b989372cd91c))
* **mission:** support note deep links ([#2717](https://github.com/HankHuang0516/EClaw/issues/2717)) ([2efd3a5](https://github.com/HankHuang0516/EClaw/commit/2efd3a5e741217a07c0b0ac54a0ddd010e0ebe23))
* **share-chat:** twitter card + per-bot og:image/twitter:* in SSR ([#2609](https://github.com/HankHuang0516/EClaw/issues/2609)) ([6cdc853](https://github.com/HankHuang0516/EClaw/commit/6cdc853dc884cdb95bd47214942768981f218ae0))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))
* **settings:** wire petdx avatar into channel-account chips ([#2626](https://github.com/HankHuang0516/EClaw/issues/2626)) ([88aec77](https://github.com/HankHuang0516/EClaw/commit/88aec772628c240e97b336bb5820892ad632d1ae))
* **files:** wire petdx avatar into entity filter & per-file badges ([#2627](https://github.com/HankHuang0516/EClaw/issues/2627)) ([5b3e5cc](https://github.com/HankHuang0516/EClaw/commit/5b3e5cc542d9da69bb4e92500fd03a542ea33f00))
* **mindmap:** wrap hardcoded zh-TW UI strings with i18n t() ([#2607](https://github.com/HankHuang0516/EClaw/issues/2607)) ([166af87](https://github.com/HankHuang0516/EClaw/commit/166af8772b2121a24aaf34a83b3de970e9b3b571)), closes [#2606](https://github.com/HankHuang0516/EClaw/issues/2606)
* **i18n:** zh-TW backfill 8 keys (soft-pause + chat + invite + wallet) ([#2815](https://github.com/HankHuang0516/EClaw/issues/2815)) ([a2dd574](https://github.com/HankHuang0516/EClaw/commit/a2dd5743ce8d43a4b6ace9a2fd4b52568180d6c5))


### Performance Improvements

* **mindmap:** force-graph hardening for 1000/2000-node graphs ([#2684](https://github.com/HankHuang0516/EClaw/issues/2684)) ([da8b1c8](https://github.com/HankHuang0516/EClaw/commit/da8b1c8f947ab8bc8fa455c1962a91146623a1fc))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-19)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **notifications:** add kanban_done + kanban_done_auto toggles to Android Settings ([#2636](https://github.com/HankHuang0516/EClaw/issues/2636)) ([a710909](https://github.com/HankHuang0516/EClaw/commit/a7109095e3393b8564e7ef1b23d382a4fbb944b8))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **chat:** atomic-load target bar (await contacts before first render) ([#2831](https://github.com/HankHuang0516/EClaw/issues/2831)) ([5f529e6](https://github.com/HankHuang0516/EClaw/commit/5f529e6b772eacc38ba1de69b44258a05f0d816a)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2](https://github.com/HankHuang0516/EClaw/issues/2)
* **i18n:** clear batch 1 residual missing keys ([#2790](https://github.com/HankHuang0516/EClaw/issues/2790)) ([211030e](https://github.com/HankHuang0516/EClaw/commit/211030e0b0b6a865c11f0c4ed60dc4e356d43b7a))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **kanban:** comment input no longer overlaps last comment in card detail (PR [#2678](https://github.com/HankHuang0516/EClaw/issues/2678)) ([fba91fc](https://github.com/HankHuang0516/EClaw/commit/fba91fca15402b453a0db5ee857c0b16e6087055))
* **chat:** compact 20px avatar in target bar (App WebView only shows [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2](https://github.com/HankHuang0516/EClaw/issues/2)) ([#2830](https://github.com/HankHuang0516/EClaw/issues/2830)) ([42c7543](https://github.com/HankHuang0516/EClaw/commit/42c7543b4a78a7abf3f5f7535eb9bc6142cd0fe2)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **i18n:** cover dynamic portal wrapper keys ([#2807](https://github.com/HankHuang0516/EClaw/issues/2807)) ([4c711cc](https://github.com/HankHuang0516/EClaw/commit/4c711cc4009300ffe4e8933a98ee01cd0fdd6aeb))
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **petdx:** drop dark-grey loading placeholder + preload sprite WEBP ([#2628](https://github.com/HankHuang0516/EClaw/issues/2628)) ([59cef38](https://github.com/HankHuang0516/EClaw/commit/59cef387bd69ca99d7d15c86a1364856d3849ad8)), closes [#1a1a1a](https://github.com/HankHuang0516/EClaw/issues/1a1a1a)
* **security:** escape innerHTML in chat modal error messages ([#2819](https://github.com/HankHuang0516/EClaw/issues/2819)) ([dce07ad](https://github.com/HankHuang0516/EClaw/commit/dce07adde64795916dba977ae23e46f3371ce7ed)), closes [#2809](https://github.com/HankHuang0516/EClaw/issues/2809) [#2810](https://github.com/HankHuang0516/EClaw/issues/2810) [#2809](https://github.com/HankHuang0516/EClaw/issues/2809) [#2810](https://github.com/HankHuang0516/EClaw/issues/2810)
* **entities:** expose botSecret to owner so wallpaper service can poll companions ([#2615](https://github.com/HankHuang0516/EClaw/issues/2615)) ([04470fc](https://github.com/HankHuang0516/EClaw/commit/04470fce8f8c3fce2b1ba8b243e776606f107502))
* **rental:** expose owner_public_code in marketplace so plaza CTA can route ([#2616](https://github.com/HankHuang0516/EClaw/issues/2616)) ([4d1372f](https://github.com/HankHuang0516/EClaw/commit/4d1372f717d93cab65543e87c852e74e9fb67071)), closes [#2610](https://github.com/HankHuang0516/EClaw/issues/2610)
* **mindmap:** fallback to device scope when entityId is null ([#2728](https://github.com/HankHuang0516/EClaw/issues/2728)) ([7572312](https://github.com/HankHuang0516/EClaw/commit/7572312433d3d75fc245eda48a28919ce14bd927))
* **i18n:** fill Spanish drift keys ([#2751](https://github.com/HankHuang0516/EClaw/issues/2751)) ([0ad0ee5](https://github.com/HankHuang0516/EClaw/commit/0ad0ee55f7fac3e6ac46d891539950dab4d553cc))
* **portal:** fit embedded org chart to mobile viewport ([#2674](https://github.com/HankHuang0516/EClaw/issues/2674)) ([1c4e1b4](https://github.com/HankHuang0516/EClaw/commit/1c4e1b413ea7027b4cd4b8ecda981b0d0e12e66b))
* **i18n:** fix 6 trailing-comma syntax errors in 10-locale batch ([#2771](https://github.com/HankHuang0516/EClaw/issues/2771)) ([b27c6ca](https://github.com/HankHuang0516/EClaw/commit/b27c6ca204bf813e406c54ce3a2532a5f1f031b3))
* **kanban:** GET card returns latest 50 comments + comments endpoint exposes total ([#2816](https://github.com/HankHuang0516/EClaw/issues/2816)) ([c4d83f7](https://github.com/HankHuang0516/EClaw/commit/c4d83f777a1cd26aea0936e4316aa35c52822eef))
* **uiux:** harden chat previews and roster preview ([#2769](https://github.com/HankHuang0516/EClaw/issues/2769)) ([466d4d3](https://github.com/HankHuang0516/EClaw/commit/466d4d3ef81c628d3f58db64323946053d7bf61c))
* **mention-parser:** ignore @-mentions inside markdown code spans ([#2645](https://github.com/HankHuang0516/EClaw/issues/2645)) ([8da19d4](https://github.com/HankHuang0516/EClaw/commit/8da19d4a79ceb4152bf2144ee0847c61ce3e1def)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **kanban:** lazy-load dependency chips via IntersectionObserver ([#2632](https://github.com/HankHuang0516/EClaw/issues/2632)) ([20586b4](https://github.com/HankHuang0516/EClaw/commit/20586b43357335f9eb6a190c02d58c8e36b58aba)), closes [#2631](https://github.com/HankHuang0516/EClaw/issues/2631)
* **kanban:** make card sorting deterministic ([#2756](https://github.com/HankHuang0516/EClaw/issues/2756)) ([48e2117](https://github.com/HankHuang0516/EClaw/commit/48e2117b64e37f05dc635e0a3b67bfd43cbe48f5))
* **org-chart:** notify affected bots on hierarchy change ([#2812](https://github.com/HankHuang0516/EClaw/issues/2812)) ([55675fd](https://github.com/HankHuang0516/EClaw/commit/55675fdf4487494d729a29524b32bd81b756a00c)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** notify reviewer on manual /move → review ([#2753](https://github.com/HankHuang0516/EClaw/issues/2753)) ([6cbbb4e](https://github.com/HankHuang0516/EClaw/commit/6cbbb4ee8c0d4d8ad54df2e9b5faaa3699bd530f))
* **wallpaper:** off-load spritesheet fetch to IO so per-petdx sprites actually render ([#2618](https://github.com/HankHuang0516/EClaw/issues/2618)) ([61b832c](https://github.com/HankHuang0516/EClaw/commit/61b832c9fa8a1d0caab810ccc942d85c63349267)), closes [#2615](https://github.com/HankHuang0516/EClaw/issues/2615) [#2577](https://github.com/HankHuang0516/EClaw/issues/2577)
* **security:** patch P0 sanitize-html XSS + P1 protobufjs + exam.html XSS ([#2829](https://github.com/HankHuang0516/EClaw/issues/2829)) ([c71b871](https://github.com/HankHuang0516/EClaw/commit/c71b871a045887375dd0d26d1a3280a0891a89ad))
* **portal:** petdx-browser cookie-session fallback for device-login ([#2757](https://github.com/HankHuang0516/EClaw/issues/2757)) ([ca275f4](https://github.com/HankHuang0516/EClaw/commit/ca275f4519835da0c7ad71c588908a18f6f138d8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **api:** platform-stats 500 + entity/lookup publicCode alias ([#2809](https://github.com/HankHuang0516/EClaw/issues/2809), [#2810](https://github.com/HankHuang0516/EClaw/issues/2810)) ([#2818](https://github.com/HankHuang0516/EClaw/issues/2818)) ([f99fd17](https://github.com/HankHuang0516/EClaw/commit/f99fd17b2b1c32d88daa2510ff66d714c1a53edc))
* **i18n:** positional format specifiers for feedback_result_logs (7 locales) ([#2597](https://github.com/HankHuang0516/EClaw/issues/2597)) ([21aedc7](https://github.com/HankHuang0516/EClaw/commit/21aedc7eebc7a2839e340136f38dfdfd4dabb9dc))
* **avatar-petdx:** preserve descriptor across transient API failures (flicker) ([#2625](https://github.com/HankHuang0516/EClaw/issues/2625)) ([7b1c606](https://github.com/HankHuang0516/EClaw/commit/7b1c606514f7698d72ec95cf6c556e4043966186))
* **chat:** preserve scroll anchor while reading history ([#2693](https://github.com/HankHuang0516/EClaw/issues/2693)) ([945fdb7](https://github.com/HankHuang0516/EClaw/commit/945fdb7192b791b31882e1e75568dd8b11e4686f))
* **promo:** pull video embed from /promo-chat-avatar.html ([#2724](https://github.com/HankHuang0516/EClaw/issues/2724)) ([2afabc8](https://github.com/HankHuang0516/EClaw/commit/2afabc8c5ff8b25218a7cb857e8adfa572c8e9d5))
* **kanban:** realign stale recurring schedules ([#2785](https://github.com/HankHuang0516/EClaw/issues/2785)) ([ab8ee25](https://github.com/HankHuang0516/EClaw/commit/ab8ee250a9b37f3d3e838bb01d8866c8d2b78231))
* **portal:** reduce QA-discovered request fanout ([#2656](https://github.com/HankHuang0516/EClaw/issues/2656)) ([1e46d6b](https://github.com/HankHuang0516/EClaw/commit/1e46d6bab61e58c65b452b6503d953f8dddeee75))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **portal:** remove org chart fit scale floor ([#2676](https://github.com/HankHuang0516/EClaw/issues/2676)) ([0f01606](https://github.com/HankHuang0516/EClaw/commit/0f016068b963bb5f800a02f28817c7174979d913))
* **i18n:** rename mm_empty_title → mm_state_empty_title in mindmap.html ([#2683](https://github.com/HankHuang0516/EClaw/issues/2683)) ([c79c109](https://github.com/HankHuang0516/EClaw/commit/c79c109bea23142e8a6d9ace976d105af1280ec9))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **chat:** render mention avatars with companion renderer ([#2633](https://github.com/HankHuang0516/EClaw/issues/2633)) ([03e205f](https://github.com/HankHuang0516/EClaw/commit/03e205f663ecd2c2f443d4009dd5af0093f0bbbb))
* **kanban:** reserve mobile comments panel height ([#2782](https://github.com/HankHuang0516/EClaw/issues/2782)) ([ce8662d](https://github.com/HankHuang0516/EClaw/commit/ce8662d362422fdd25037f1deb61dbed9425e2f9))
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* scheduled audit 2026-05-13 — 6 bugs, XSS, i18n ([#2668](https://github.com/HankHuang0516/EClaw/issues/2668)) ([21dd513](https://github.com/HankHuang0516/EClaw/commit/21dd513b4464738de29164265437435ba6cc4817)), closes [#2605](https://github.com/HankHuang0516/EClaw/issues/2605) [#2608](https://github.com/HankHuang0516/EClaw/issues/2608) [#2600](https://github.com/HankHuang0516/EClaw/issues/2600) [#2599](https://github.com/HankHuang0516/EClaw/issues/2599) [#2598](https://github.com/HankHuang0516/EClaw/issues/2598)
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **chat:** smart-chip preview falls back to inline c.comments when /comments fails (PR [#2677](https://github.com/HankHuang0516/EClaw/issues/2677)) ([7f4dffd](https://github.com/HankHuang0516/EClaw/commit/7f4dffd2c83ea86f296b8fa0610f0e67c9f1af11))
* **kanban:** stabilize comment detail viewport ([#2796](https://github.com/HankHuang0516/EClaw/issues/2796)) ([0a10aad](https://github.com/HankHuang0516/EClaw/commit/0a10aadb5a5b12ff23454c16d5c88183b94ad7d7))
* **wallpaper:** stop Android live wallpaper flashing default lobster on companion change ([#2629](https://github.com/HankHuang0516/EClaw/issues/2629)) ([8b4f66f](https://github.com/HankHuang0516/EClaw/commit/8b4f66fcb335bf43128f924b761b6337c817095b)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **chat:** stop chat.html bouncing to dashboard via /api/rental/health-status 401 race ([#2833](https://github.com/HankHuang0516/EClaw/issues/2833)) ([c422406](https://github.com/HankHuang0516/EClaw/commit/c4224067cdcfe7f3e22ab95007c7563dac4196ac))
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **app:** WebView pages honor app-selected locale via ?lang= URL param ([#2672](https://github.com/HankHuang0516/EClaw/issues/2672)) ([8ed8757](https://github.com/HankHuang0516/EClaw/commit/8ed8757aec5bf214e837cc0d81bf2b23f1993a91)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* **community:** 1-click chat button on bot cards + utm tagging ([#2610](https://github.com/HankHuang0516/EClaw/issues/2610)) ([eee97b0](https://github.com/HankHuang0516/EClaw/commit/eee97b0e2e4e74945ec24f218a69a52800b97a66))
* **chat:** add avatar size preference ([#2714](https://github.com/HankHuang0516/EClaw/issues/2714)) ([6fe164a](https://github.com/HankHuang0516/EClaw/commit/6fe164ad8b22fa576d2dd9ad37c0d9fc295b5a83))
* **dashboard:** add Claude and Codex channel guides ([#2640](https://github.com/HankHuang0516/EClaw/issues/2640)) ([c64e4c4](https://github.com/HankHuang0516/EClaw/commit/c64e4c4afc78db58c5cd578f00486dd7b2fd3311))
* **dashboard:** add Claude Code channel guide card ([#2667](https://github.com/HankHuang0516/EClaw/issues/2667)) ([d70d75c](https://github.com/HankHuang0516/EClaw/commit/d70d75c0c8caa8a540358a9aab4556b8c1927a5c))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* **kanban:** add device-scoped card tags ([#2773](https://github.com/HankHuang0516/EClaw/issues/2773)) ([53a387e](https://github.com/HankHuang0516/EClaw/commit/53a387e67ba7bb4f6bed1c427000c4ae8666577a))
* **portal:** add entity selector to petdx-browser ([#2602](https://github.com/HankHuang0516/EClaw/issues/2602)) ([3fa067e](https://github.com/HankHuang0516/EClaw/commit/3fa067e00b38829b48a37cecd33ee81a9a1122d9))
* **kanban:** add explicit card links ([#2721](https://github.com/HankHuang0516/EClaw/issues/2721)) ([ef9f812](https://github.com/HankHuang0516/EClaw/commit/ef9f812a3fcf39efd07fd158ce90951bdd045ac7))
* **kanban:** add explicit done-card reopen flow ([#2801](https://github.com/HankHuang0516/EClaw/issues/2801)) ([5080aac](https://github.com/HankHuang0516/EClaw/commit/5080aacb75047c0deaa379ee708ec85465afd57c))
* **mindmap:** add GET /api/mindmap/graph force-graph projection ([#2680](https://github.com/HankHuang0516/EClaw/issues/2680)) ([a00b2e7](https://github.com/HankHuang0516/EClaw/commit/a00b2e775af2c4c98cd157f760ad87aeeee469f0)), closes [#2679](https://github.com/HankHuang0516/EClaw/issues/2679) [#2679](https://github.com/HankHuang0516/EClaw/issues/2679)
* **dashboard:** add Hermes channel promo card ([#2708](https://github.com/HankHuang0516/EClaw/issues/2708)) ([337aca1](https://github.com/HankHuang0516/EClaw/commit/337aca153d5a1cd7e888c065f00ae54db7872d91))
* **rental:** add listing soft pause ([#2781](https://github.com/HankHuang0516/EClaw/issues/2781)) ([6586b72](https://github.com/HankHuang0516/EClaw/commit/6586b72717ddb1637d91cd3242c8d2ff554f62b4))
* **portal:** add Nagoya 5D4N trip static cross-ref page ([#2689](https://github.com/HankHuang0516/EClaw/issues/2689)) ([2e0efb6](https://github.com/HankHuang0516/EClaw/commit/2e0efb6dcdaff52226cc8854a96747000b12bdff))
* **portal:** add Nagoya trip map links and image lightbox ([#2821](https://github.com/HankHuang0516/EClaw/issues/2821)) ([3e40955](https://github.com/HankHuang0516/EClaw/commit/3e40955650a05f45a6b9f7e39e73847705424a03))
* **portal/nagoya:** add parking shortcut buttons next to itinerary places ([#2826](https://github.com/HankHuang0516/EClaw/issues/2826)) ([63968c5](https://github.com/HankHuang0516/EClaw/commit/63968c554d046afc8d978de74e3aacbf7700500d))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **settings:** add rental roster management preview ([#2758](https://github.com/HankHuang0516/EClaw/issues/2758)) ([9706e59](https://github.com/HankHuang0516/EClaw/commit/9706e59ded140a90a6e02348124282bc69d89001))
* **rental:** add renter health chat indicator ([#2690](https://github.com/HankHuang0516/EClaw/issues/2690)) ([36cd2e9](https://github.com/HankHuang0516/EClaw/commit/36cd2e9802be4c7ebb03d3024617fa74aca48ffd))
* **ios:** add Tutorial & Intro entry in Settings ([#2800](https://github.com/HankHuang0516/EClaw/issues/2800)) ([ed83e51](https://github.com/HankHuang0516/EClaw/commit/ed83e51d043bf4cd5865f38dc95a91ed54820d6c))
* **landing:** add Watch Full Demo CTA below hero video ([#2799](https://github.com/HankHuang0516/EClaw/issues/2799)) ([66107c9](https://github.com/HankHuang0516/EClaw/commit/66107c954727551fd34d989a4674daaad9b63968))
* **footer:** add Watch Intro Video link in Info column ([#2798](https://github.com/HankHuang0516/EClaw/issues/2798)) ([d7c6d59](https://github.com/HankHuang0516/EClaw/commit/d7c6d596b69c6a5b257bf1f7a792a407ef9712ad))
* **companion:** bridge crafter-station/petdex gallery (1784 pets) ([#2601](https://github.com/HankHuang0516/EClaw/issues/2601)) ([2e245be](https://github.com/HankHuang0516/EClaw/commit/2e245bea6dd47ea7361b927d389188a3c23b6bb3))
* **promo:** chat avatar size feature landing page (self-hosted MP4) ([#2722](https://github.com/HankHuang0516/EClaw/issues/2722)) ([3852210](https://github.com/HankHuang0516/EClaw/commit/3852210d355704d018e3daca6b5f9512a011b210)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **kanban:** cron-spawn jitter + lane backpressure to prevent same-tick wedge ([#2791](https://github.com/HankHuang0516/EClaw/issues/2791)) ([9f414a7](https://github.com/HankHuang0516/EClaw/commit/9f414a731d6393672a0a4189c7b408c529ae5e12)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **promo:** embed daily eclaw video 2026-05-14 ([#2786](https://github.com/HankHuang0516/EClaw/issues/2786)) ([718a814](https://github.com/HankHuang0516/EClaw/commit/718a814ab16850bc2b33a1b303841e2c4378ecfa)), closes [#2782](https://github.com/HankHuang0516/EClaw/issues/2782) [#2693](https://github.com/HankHuang0516/EClaw/issues/2693)
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **info:** embed promo video at top of Quick Start tab ([#2797](https://github.com/HankHuang0516/EClaw/issues/2797)) ([047679f](https://github.com/HankHuang0516/EClaw/commit/047679fd57ab9949eaeacea414d5611e71afe041))
* **rental:** enforce strict rebind refunds ([#2703](https://github.com/HankHuang0516/EClaw/issues/2703)) ([a1859c5](https://github.com/HankHuang0516/EClaw/commit/a1859c50e6fb3991d7a8051491502d824a14a116))
* **portal:** group task chip actions ([#2825](https://github.com/HankHuang0516/EClaw/issues/2825)) ([5db5c59](https://github.com/HankHuang0516/EClaw/commit/5db5c59b32b8635f1412205faf0c2f9164d3d5d4))
* **portal:** info-guide-rules + info-guide-soul slide pair ([#2793](https://github.com/HankHuang0516/EClaw/issues/2793)) ([1c8bddc](https://github.com/HankHuang0516/EClaw/commit/1c8bddc4c185054b2b60088498e3d45509117127)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **chat:** link card previews to kanban ([#2754](https://github.com/HankHuang0516/EClaw/issues/2754)) ([2261240](https://github.com/HankHuang0516/EClaw/commit/22612402c2e95efb07246629e81a849be41ee9c7))
* **mission:** link notes to kanban cards ([#2723](https://github.com/HankHuang0516/EClaw/issues/2723)) ([b36dc18](https://github.com/HankHuang0516/EClaw/commit/b36dc18f3a8facf12e0b6046351c222f1e99dc55))
* **mindmap:** mission.html link to /portal/mindmap.html + deprecate /api/mission/mindmap ([#2685](https://github.com/HankHuang0516/EClaw/issues/2685)) ([11e297b](https://github.com/HankHuang0516/EClaw/commit/11e297bab1c9b56fcde3027d6500b7c58891bf18)), closes [#2680](https://github.com/HankHuang0516/EClaw/issues/2680) [#2684](https://github.com/HankHuang0516/EClaw/issues/2684)
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **kanban:** per-entity nudge overrides (Phase 2 of card_e066cb6b) ([#2836](https://github.com/HankHuang0516/EClaw/issues/2836)) ([0425f80](https://github.com/HankHuang0516/EClaw/commit/0425f80bc1169c0d506b665659c8676695c45553))
* **avatar:** petdx render on card-holder my-cards (Phase 1b) ([#2621](https://github.com/HankHuang0516/EClaw/issues/2621)) ([f78ba8b](https://github.com/HankHuang0516/EClaw/commit/f78ba8b18acc426936ab6d8a82ca7541effea00d))
* **avatar:** petdx render on dashboard entity grid / org chart / bindings (Phase 1b) ([#2622](https://github.com/HankHuang0516/EClaw/issues/2622)) ([f417749](https://github.com/HankHuang0516/EClaw/commit/f41774914451048e8cd76e9ae30416a0642e173b)), closes [#2620](https://github.com/HankHuang0516/EClaw/issues/2620) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621)
* **avatar:** petdx render on kanban auto-assign / pulse / comment avatars (Phase 1b) ([#2624](https://github.com/HankHuang0516/EClaw/issues/2624)) ([6bff5f8](https://github.com/HankHuang0516/EClaw/commit/6bff5f80440d0bd91a6b1721cde9478d685c4d46))
* **avatar:** petdx render on mission skill/rule/soul entity dialogs (Phase 1b) ([#2623](https://github.com/HankHuang0516/EClaw/issues/2623)) ([129327b](https://github.com/HankHuang0516/EClaw/commit/129327bc7b91056659f1ab7e8d5e3f5260d951fb))
* **mindmap:** portal/mindmap.html force-graph prototype ([#129](https://github.com/HankHuang0516/EClaw/issues/129)) ([#2681](https://github.com/HankHuang0516/EClaw/issues/2681)) ([0f15e69](https://github.com/HankHuang0516/EClaw/commit/0f15e6930f0697c37fa08f3219edb8f9e499837f)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **portal:** redo nagoya trip page in professional tour-guide style ([#2691](https://github.com/HankHuang0516/EClaw/issues/2691)) ([b2378c0](https://github.com/HankHuang0516/EClaw/commit/b2378c06ee20fa9cccfdceceb1a4c9e0b3072f59))
* **avatar:** render selected petdx companion in chat avatars ([#2620](https://github.com/HankHuang0516/EClaw/issues/2620)) ([0bdd046](https://github.com/HankHuang0516/EClaw/commit/0bdd046fe1b1c428e32edda366ff112c08927f4c))
* **home:** replace native home with WebView hosting dashboard.html ([#2634](https://github.com/HankHuang0516/EClaw/issues/2634)) ([e69ea81](https://github.com/HankHuang0516/EClaw/commit/e69ea8160c239b083a83d6dc83a4f1c3f901c863))
* **app:** route chat mission jumps through native tabs ([#2824](https://github.com/HankHuang0516/EClaw/issues/2824)) ([deb07b6](https://github.com/HankHuang0516/EClaw/commit/deb07b69a9ecca632fe27278de537f1d85234e94))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **chat:** support message deep links ([#2719](https://github.com/HankHuang0516/EClaw/issues/2719)) ([2dc0f1e](https://github.com/HankHuang0516/EClaw/commit/2dc0f1eeb259e1a0848db4a03186b989372cd91c))
* **mission:** support note deep links ([#2717](https://github.com/HankHuang0516/EClaw/issues/2717)) ([2efd3a5](https://github.com/HankHuang0516/EClaw/commit/2efd3a5e741217a07c0b0ac54a0ddd010e0ebe23))
* **share-chat:** twitter card + per-bot og:image/twitter:* in SSR ([#2609](https://github.com/HankHuang0516/EClaw/issues/2609)) ([6cdc853](https://github.com/HankHuang0516/EClaw/commit/6cdc853dc884cdb95bd47214942768981f218ae0))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))
* **settings:** wire petdx avatar into channel-account chips ([#2626](https://github.com/HankHuang0516/EClaw/issues/2626)) ([88aec77](https://github.com/HankHuang0516/EClaw/commit/88aec772628c240e97b336bb5820892ad632d1ae))
* **files:** wire petdx avatar into entity filter & per-file badges ([#2627](https://github.com/HankHuang0516/EClaw/issues/2627)) ([5b3e5cc](https://github.com/HankHuang0516/EClaw/commit/5b3e5cc542d9da69bb4e92500fd03a542ea33f00))
* **mindmap:** wrap hardcoded zh-TW UI strings with i18n t() ([#2607](https://github.com/HankHuang0516/EClaw/issues/2607)) ([166af87](https://github.com/HankHuang0516/EClaw/commit/166af8772b2121a24aaf34a83b3de970e9b3b571)), closes [#2606](https://github.com/HankHuang0516/EClaw/issues/2606)
* **i18n:** zh-TW backfill 8 keys (soft-pause + chat + invite + wallet) ([#2815](https://github.com/HankHuang0516/EClaw/issues/2815)) ([a2dd574](https://github.com/HankHuang0516/EClaw/commit/a2dd5743ce8d43a4b6ace9a2fd4b52568180d6c5))


### Performance Improvements

* **mindmap:** force-graph hardening for 1000/2000-node graphs ([#2684](https://github.com/HankHuang0516/EClaw/issues/2684)) ([da8b1c8](https://github.com/HankHuang0516/EClaw/commit/da8b1c8f947ab8bc8fa455c1962a91146623a1fc))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-19)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **notifications:** add kanban_done + kanban_done_auto toggles to Android Settings ([#2636](https://github.com/HankHuang0516/EClaw/issues/2636)) ([a710909](https://github.com/HankHuang0516/EClaw/commit/a7109095e3393b8564e7ef1b23d382a4fbb944b8))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **chat:** atomic-load target bar (await contacts before first render) ([#2831](https://github.com/HankHuang0516/EClaw/issues/2831)) ([5f529e6](https://github.com/HankHuang0516/EClaw/commit/5f529e6b772eacc38ba1de69b44258a05f0d816a)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2](https://github.com/HankHuang0516/EClaw/issues/2)
* **i18n:** clear batch 1 residual missing keys ([#2790](https://github.com/HankHuang0516/EClaw/issues/2790)) ([211030e](https://github.com/HankHuang0516/EClaw/commit/211030e0b0b6a865c11f0c4ed60dc4e356d43b7a))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **kanban:** comment input no longer overlaps last comment in card detail (PR [#2678](https://github.com/HankHuang0516/EClaw/issues/2678)) ([fba91fc](https://github.com/HankHuang0516/EClaw/commit/fba91fca15402b453a0db5ee857c0b16e6087055))
* **chat:** compact 20px avatar in target bar (App WebView only shows [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2](https://github.com/HankHuang0516/EClaw/issues/2)) ([#2830](https://github.com/HankHuang0516/EClaw/issues/2830)) ([42c7543](https://github.com/HankHuang0516/EClaw/commit/42c7543b4a78a7abf3f5f7535eb9bc6142cd0fe2)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **i18n:** cover dynamic portal wrapper keys ([#2807](https://github.com/HankHuang0516/EClaw/issues/2807)) ([4c711cc](https://github.com/HankHuang0516/EClaw/commit/4c711cc4009300ffe4e8933a98ee01cd0fdd6aeb))
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **petdx:** drop dark-grey loading placeholder + preload sprite WEBP ([#2628](https://github.com/HankHuang0516/EClaw/issues/2628)) ([59cef38](https://github.com/HankHuang0516/EClaw/commit/59cef387bd69ca99d7d15c86a1364856d3849ad8)), closes [#1a1a1a](https://github.com/HankHuang0516/EClaw/issues/1a1a1a)
* **security:** escape innerHTML in chat modal error messages ([#2819](https://github.com/HankHuang0516/EClaw/issues/2819)) ([dce07ad](https://github.com/HankHuang0516/EClaw/commit/dce07adde64795916dba977ae23e46f3371ce7ed)), closes [#2809](https://github.com/HankHuang0516/EClaw/issues/2809) [#2810](https://github.com/HankHuang0516/EClaw/issues/2810) [#2809](https://github.com/HankHuang0516/EClaw/issues/2809) [#2810](https://github.com/HankHuang0516/EClaw/issues/2810)
* **entities:** expose botSecret to owner so wallpaper service can poll companions ([#2615](https://github.com/HankHuang0516/EClaw/issues/2615)) ([04470fc](https://github.com/HankHuang0516/EClaw/commit/04470fce8f8c3fce2b1ba8b243e776606f107502))
* **rental:** expose owner_public_code in marketplace so plaza CTA can route ([#2616](https://github.com/HankHuang0516/EClaw/issues/2616)) ([4d1372f](https://github.com/HankHuang0516/EClaw/commit/4d1372f717d93cab65543e87c852e74e9fb67071)), closes [#2610](https://github.com/HankHuang0516/EClaw/issues/2610)
* **mindmap:** fallback to device scope when entityId is null ([#2728](https://github.com/HankHuang0516/EClaw/issues/2728)) ([7572312](https://github.com/HankHuang0516/EClaw/commit/7572312433d3d75fc245eda48a28919ce14bd927))
* **i18n:** fill Spanish drift keys ([#2751](https://github.com/HankHuang0516/EClaw/issues/2751)) ([0ad0ee5](https://github.com/HankHuang0516/EClaw/commit/0ad0ee55f7fac3e6ac46d891539950dab4d553cc))
* **portal:** fit embedded org chart to mobile viewport ([#2674](https://github.com/HankHuang0516/EClaw/issues/2674)) ([1c4e1b4](https://github.com/HankHuang0516/EClaw/commit/1c4e1b413ea7027b4cd4b8ecda981b0d0e12e66b))
* **i18n:** fix 6 trailing-comma syntax errors in 10-locale batch ([#2771](https://github.com/HankHuang0516/EClaw/issues/2771)) ([b27c6ca](https://github.com/HankHuang0516/EClaw/commit/b27c6ca204bf813e406c54ce3a2532a5f1f031b3))
* **kanban:** GET card returns latest 50 comments + comments endpoint exposes total ([#2816](https://github.com/HankHuang0516/EClaw/issues/2816)) ([c4d83f7](https://github.com/HankHuang0516/EClaw/commit/c4d83f777a1cd26aea0936e4316aa35c52822eef))
* **uiux:** harden chat previews and roster preview ([#2769](https://github.com/HankHuang0516/EClaw/issues/2769)) ([466d4d3](https://github.com/HankHuang0516/EClaw/commit/466d4d3ef81c628d3f58db64323946053d7bf61c))
* **mention-parser:** ignore @-mentions inside markdown code spans ([#2645](https://github.com/HankHuang0516/EClaw/issues/2645)) ([8da19d4](https://github.com/HankHuang0516/EClaw/commit/8da19d4a79ceb4152bf2144ee0847c61ce3e1def)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **kanban:** lazy-load dependency chips via IntersectionObserver ([#2632](https://github.com/HankHuang0516/EClaw/issues/2632)) ([20586b4](https://github.com/HankHuang0516/EClaw/commit/20586b43357335f9eb6a190c02d58c8e36b58aba)), closes [#2631](https://github.com/HankHuang0516/EClaw/issues/2631)
* **kanban:** make card sorting deterministic ([#2756](https://github.com/HankHuang0516/EClaw/issues/2756)) ([48e2117](https://github.com/HankHuang0516/EClaw/commit/48e2117b64e37f05dc635e0a3b67bfd43cbe48f5))
* **org-chart:** notify affected bots on hierarchy change ([#2812](https://github.com/HankHuang0516/EClaw/issues/2812)) ([55675fd](https://github.com/HankHuang0516/EClaw/commit/55675fdf4487494d729a29524b32bd81b756a00c)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** notify reviewer on manual /move → review ([#2753](https://github.com/HankHuang0516/EClaw/issues/2753)) ([6cbbb4e](https://github.com/HankHuang0516/EClaw/commit/6cbbb4ee8c0d4d8ad54df2e9b5faaa3699bd530f))
* **wallpaper:** off-load spritesheet fetch to IO so per-petdx sprites actually render ([#2618](https://github.com/HankHuang0516/EClaw/issues/2618)) ([61b832c](https://github.com/HankHuang0516/EClaw/commit/61b832c9fa8a1d0caab810ccc942d85c63349267)), closes [#2615](https://github.com/HankHuang0516/EClaw/issues/2615) [#2577](https://github.com/HankHuang0516/EClaw/issues/2577)
* **security:** patch P0 sanitize-html XSS + P1 protobufjs + exam.html XSS ([#2829](https://github.com/HankHuang0516/EClaw/issues/2829)) ([c71b871](https://github.com/HankHuang0516/EClaw/commit/c71b871a045887375dd0d26d1a3280a0891a89ad))
* **portal:** petdx-browser cookie-session fallback for device-login ([#2757](https://github.com/HankHuang0516/EClaw/issues/2757)) ([ca275f4](https://github.com/HankHuang0516/EClaw/commit/ca275f4519835da0c7ad71c588908a18f6f138d8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **api:** platform-stats 500 + entity/lookup publicCode alias ([#2809](https://github.com/HankHuang0516/EClaw/issues/2809), [#2810](https://github.com/HankHuang0516/EClaw/issues/2810)) ([#2818](https://github.com/HankHuang0516/EClaw/issues/2818)) ([f99fd17](https://github.com/HankHuang0516/EClaw/commit/f99fd17b2b1c32d88daa2510ff66d714c1a53edc))
* **i18n:** positional format specifiers for feedback_result_logs (7 locales) ([#2597](https://github.com/HankHuang0516/EClaw/issues/2597)) ([21aedc7](https://github.com/HankHuang0516/EClaw/commit/21aedc7eebc7a2839e340136f38dfdfd4dabb9dc))
* **avatar-petdx:** preserve descriptor across transient API failures (flicker) ([#2625](https://github.com/HankHuang0516/EClaw/issues/2625)) ([7b1c606](https://github.com/HankHuang0516/EClaw/commit/7b1c606514f7698d72ec95cf6c556e4043966186))
* **chat:** preserve scroll anchor while reading history ([#2693](https://github.com/HankHuang0516/EClaw/issues/2693)) ([945fdb7](https://github.com/HankHuang0516/EClaw/commit/945fdb7192b791b31882e1e75568dd8b11e4686f))
* **promo:** pull video embed from /promo-chat-avatar.html ([#2724](https://github.com/HankHuang0516/EClaw/issues/2724)) ([2afabc8](https://github.com/HankHuang0516/EClaw/commit/2afabc8c5ff8b25218a7cb857e8adfa572c8e9d5))
* **kanban:** realign stale recurring schedules ([#2785](https://github.com/HankHuang0516/EClaw/issues/2785)) ([ab8ee25](https://github.com/HankHuang0516/EClaw/commit/ab8ee250a9b37f3d3e838bb01d8866c8d2b78231))
* **portal:** reduce QA-discovered request fanout ([#2656](https://github.com/HankHuang0516/EClaw/issues/2656)) ([1e46d6b](https://github.com/HankHuang0516/EClaw/commit/1e46d6bab61e58c65b452b6503d953f8dddeee75))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **portal:** remove org chart fit scale floor ([#2676](https://github.com/HankHuang0516/EClaw/issues/2676)) ([0f01606](https://github.com/HankHuang0516/EClaw/commit/0f016068b963bb5f800a02f28817c7174979d913))
* **i18n:** rename mm_empty_title → mm_state_empty_title in mindmap.html ([#2683](https://github.com/HankHuang0516/EClaw/issues/2683)) ([c79c109](https://github.com/HankHuang0516/EClaw/commit/c79c109bea23142e8a6d9ace976d105af1280ec9))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **chat:** render mention avatars with companion renderer ([#2633](https://github.com/HankHuang0516/EClaw/issues/2633)) ([03e205f](https://github.com/HankHuang0516/EClaw/commit/03e205f663ecd2c2f443d4009dd5af0093f0bbbb))
* **kanban:** reserve mobile comments panel height ([#2782](https://github.com/HankHuang0516/EClaw/issues/2782)) ([ce8662d](https://github.com/HankHuang0516/EClaw/commit/ce8662d362422fdd25037f1deb61dbed9425e2f9))
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* scheduled audit 2026-05-13 — 6 bugs, XSS, i18n ([#2668](https://github.com/HankHuang0516/EClaw/issues/2668)) ([21dd513](https://github.com/HankHuang0516/EClaw/commit/21dd513b4464738de29164265437435ba6cc4817)), closes [#2605](https://github.com/HankHuang0516/EClaw/issues/2605) [#2608](https://github.com/HankHuang0516/EClaw/issues/2608) [#2600](https://github.com/HankHuang0516/EClaw/issues/2600) [#2599](https://github.com/HankHuang0516/EClaw/issues/2599) [#2598](https://github.com/HankHuang0516/EClaw/issues/2598)
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **chat:** smart-chip preview falls back to inline c.comments when /comments fails (PR [#2677](https://github.com/HankHuang0516/EClaw/issues/2677)) ([7f4dffd](https://github.com/HankHuang0516/EClaw/commit/7f4dffd2c83ea86f296b8fa0610f0e67c9f1af11))
* **kanban:** stabilize comment detail viewport ([#2796](https://github.com/HankHuang0516/EClaw/issues/2796)) ([0a10aad](https://github.com/HankHuang0516/EClaw/commit/0a10aadb5a5b12ff23454c16d5c88183b94ad7d7))
* **wallpaper:** stop Android live wallpaper flashing default lobster on companion change ([#2629](https://github.com/HankHuang0516/EClaw/issues/2629)) ([8b4f66f](https://github.com/HankHuang0516/EClaw/commit/8b4f66fcb335bf43128f924b761b6337c817095b)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **chat:** stop chat.html bouncing to dashboard via /api/rental/health-status 401 race ([#2833](https://github.com/HankHuang0516/EClaw/issues/2833)) ([c422406](https://github.com/HankHuang0516/EClaw/commit/c4224067cdcfe7f3e22ab95007c7563dac4196ac))
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **app:** WebView pages honor app-selected locale via ?lang= URL param ([#2672](https://github.com/HankHuang0516/EClaw/issues/2672)) ([8ed8757](https://github.com/HankHuang0516/EClaw/commit/8ed8757aec5bf214e837cc0d81bf2b23f1993a91)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* **community:** 1-click chat button on bot cards + utm tagging ([#2610](https://github.com/HankHuang0516/EClaw/issues/2610)) ([eee97b0](https://github.com/HankHuang0516/EClaw/commit/eee97b0e2e4e74945ec24f218a69a52800b97a66))
* **chat:** add avatar size preference ([#2714](https://github.com/HankHuang0516/EClaw/issues/2714)) ([6fe164a](https://github.com/HankHuang0516/EClaw/commit/6fe164ad8b22fa576d2dd9ad37c0d9fc295b5a83))
* **dashboard:** add Claude and Codex channel guides ([#2640](https://github.com/HankHuang0516/EClaw/issues/2640)) ([c64e4c4](https://github.com/HankHuang0516/EClaw/commit/c64e4c4afc78db58c5cd578f00486dd7b2fd3311))
* **dashboard:** add Claude Code channel guide card ([#2667](https://github.com/HankHuang0516/EClaw/issues/2667)) ([d70d75c](https://github.com/HankHuang0516/EClaw/commit/d70d75c0c8caa8a540358a9aab4556b8c1927a5c))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* **kanban:** add device-scoped card tags ([#2773](https://github.com/HankHuang0516/EClaw/issues/2773)) ([53a387e](https://github.com/HankHuang0516/EClaw/commit/53a387e67ba7bb4f6bed1c427000c4ae8666577a))
* **portal:** add entity selector to petdx-browser ([#2602](https://github.com/HankHuang0516/EClaw/issues/2602)) ([3fa067e](https://github.com/HankHuang0516/EClaw/commit/3fa067e00b38829b48a37cecd33ee81a9a1122d9))
* **kanban:** add explicit card links ([#2721](https://github.com/HankHuang0516/EClaw/issues/2721)) ([ef9f812](https://github.com/HankHuang0516/EClaw/commit/ef9f812a3fcf39efd07fd158ce90951bdd045ac7))
* **kanban:** add explicit done-card reopen flow ([#2801](https://github.com/HankHuang0516/EClaw/issues/2801)) ([5080aac](https://github.com/HankHuang0516/EClaw/commit/5080aacb75047c0deaa379ee708ec85465afd57c))
* **mindmap:** add GET /api/mindmap/graph force-graph projection ([#2680](https://github.com/HankHuang0516/EClaw/issues/2680)) ([a00b2e7](https://github.com/HankHuang0516/EClaw/commit/a00b2e775af2c4c98cd157f760ad87aeeee469f0)), closes [#2679](https://github.com/HankHuang0516/EClaw/issues/2679) [#2679](https://github.com/HankHuang0516/EClaw/issues/2679)
* **dashboard:** add Hermes channel promo card ([#2708](https://github.com/HankHuang0516/EClaw/issues/2708)) ([337aca1](https://github.com/HankHuang0516/EClaw/commit/337aca153d5a1cd7e888c065f00ae54db7872d91))
* **rental:** add listing soft pause ([#2781](https://github.com/HankHuang0516/EClaw/issues/2781)) ([6586b72](https://github.com/HankHuang0516/EClaw/commit/6586b72717ddb1637d91cd3242c8d2ff554f62b4))
* **portal:** add Nagoya 5D4N trip static cross-ref page ([#2689](https://github.com/HankHuang0516/EClaw/issues/2689)) ([2e0efb6](https://github.com/HankHuang0516/EClaw/commit/2e0efb6dcdaff52226cc8854a96747000b12bdff))
* **portal:** add Nagoya trip map links and image lightbox ([#2821](https://github.com/HankHuang0516/EClaw/issues/2821)) ([3e40955](https://github.com/HankHuang0516/EClaw/commit/3e40955650a05f45a6b9f7e39e73847705424a03))
* **portal/nagoya:** add parking shortcut buttons next to itinerary places ([#2826](https://github.com/HankHuang0516/EClaw/issues/2826)) ([63968c5](https://github.com/HankHuang0516/EClaw/commit/63968c554d046afc8d978de74e3aacbf7700500d))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **settings:** add rental roster management preview ([#2758](https://github.com/HankHuang0516/EClaw/issues/2758)) ([9706e59](https://github.com/HankHuang0516/EClaw/commit/9706e59ded140a90a6e02348124282bc69d89001))
* **rental:** add renter health chat indicator ([#2690](https://github.com/HankHuang0516/EClaw/issues/2690)) ([36cd2e9](https://github.com/HankHuang0516/EClaw/commit/36cd2e9802be4c7ebb03d3024617fa74aca48ffd))
* **ios:** add Tutorial & Intro entry in Settings ([#2800](https://github.com/HankHuang0516/EClaw/issues/2800)) ([ed83e51](https://github.com/HankHuang0516/EClaw/commit/ed83e51d043bf4cd5865f38dc95a91ed54820d6c))
* **landing:** add Watch Full Demo CTA below hero video ([#2799](https://github.com/HankHuang0516/EClaw/issues/2799)) ([66107c9](https://github.com/HankHuang0516/EClaw/commit/66107c954727551fd34d989a4674daaad9b63968))
* **footer:** add Watch Intro Video link in Info column ([#2798](https://github.com/HankHuang0516/EClaw/issues/2798)) ([d7c6d59](https://github.com/HankHuang0516/EClaw/commit/d7c6d596b69c6a5b257bf1f7a792a407ef9712ad))
* **companion:** bridge crafter-station/petdex gallery (1784 pets) ([#2601](https://github.com/HankHuang0516/EClaw/issues/2601)) ([2e245be](https://github.com/HankHuang0516/EClaw/commit/2e245bea6dd47ea7361b927d389188a3c23b6bb3))
* **promo:** chat avatar size feature landing page (self-hosted MP4) ([#2722](https://github.com/HankHuang0516/EClaw/issues/2722)) ([3852210](https://github.com/HankHuang0516/EClaw/commit/3852210d355704d018e3daca6b5f9512a011b210)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **kanban:** cron-spawn jitter + lane backpressure to prevent same-tick wedge ([#2791](https://github.com/HankHuang0516/EClaw/issues/2791)) ([9f414a7](https://github.com/HankHuang0516/EClaw/commit/9f414a731d6393672a0a4189c7b408c529ae5e12)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **promo:** embed daily eclaw video 2026-05-14 ([#2786](https://github.com/HankHuang0516/EClaw/issues/2786)) ([718a814](https://github.com/HankHuang0516/EClaw/commit/718a814ab16850bc2b33a1b303841e2c4378ecfa)), closes [#2782](https://github.com/HankHuang0516/EClaw/issues/2782) [#2693](https://github.com/HankHuang0516/EClaw/issues/2693)
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **info:** embed promo video at top of Quick Start tab ([#2797](https://github.com/HankHuang0516/EClaw/issues/2797)) ([047679f](https://github.com/HankHuang0516/EClaw/commit/047679fd57ab9949eaeacea414d5611e71afe041))
* **rental:** enforce strict rebind refunds ([#2703](https://github.com/HankHuang0516/EClaw/issues/2703)) ([a1859c5](https://github.com/HankHuang0516/EClaw/commit/a1859c50e6fb3991d7a8051491502d824a14a116))
* **portal:** group task chip actions ([#2825](https://github.com/HankHuang0516/EClaw/issues/2825)) ([5db5c59](https://github.com/HankHuang0516/EClaw/commit/5db5c59b32b8635f1412205faf0c2f9164d3d5d4))
* **portal:** info-guide-rules + info-guide-soul slide pair ([#2793](https://github.com/HankHuang0516/EClaw/issues/2793)) ([1c8bddc](https://github.com/HankHuang0516/EClaw/commit/1c8bddc4c185054b2b60088498e3d45509117127)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **chat:** link card previews to kanban ([#2754](https://github.com/HankHuang0516/EClaw/issues/2754)) ([2261240](https://github.com/HankHuang0516/EClaw/commit/22612402c2e95efb07246629e81a849be41ee9c7))
* **mission:** link notes to kanban cards ([#2723](https://github.com/HankHuang0516/EClaw/issues/2723)) ([b36dc18](https://github.com/HankHuang0516/EClaw/commit/b36dc18f3a8facf12e0b6046351c222f1e99dc55))
* **mindmap:** mission.html link to /portal/mindmap.html + deprecate /api/mission/mindmap ([#2685](https://github.com/HankHuang0516/EClaw/issues/2685)) ([11e297b](https://github.com/HankHuang0516/EClaw/commit/11e297bab1c9b56fcde3027d6500b7c58891bf18)), closes [#2680](https://github.com/HankHuang0516/EClaw/issues/2680) [#2684](https://github.com/HankHuang0516/EClaw/issues/2684)
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **avatar:** petdx render on card-holder my-cards (Phase 1b) ([#2621](https://github.com/HankHuang0516/EClaw/issues/2621)) ([f78ba8b](https://github.com/HankHuang0516/EClaw/commit/f78ba8b18acc426936ab6d8a82ca7541effea00d))
* **avatar:** petdx render on dashboard entity grid / org chart / bindings (Phase 1b) ([#2622](https://github.com/HankHuang0516/EClaw/issues/2622)) ([f417749](https://github.com/HankHuang0516/EClaw/commit/f41774914451048e8cd76e9ae30416a0642e173b)), closes [#2620](https://github.com/HankHuang0516/EClaw/issues/2620) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621)
* **avatar:** petdx render on kanban auto-assign / pulse / comment avatars (Phase 1b) ([#2624](https://github.com/HankHuang0516/EClaw/issues/2624)) ([6bff5f8](https://github.com/HankHuang0516/EClaw/commit/6bff5f80440d0bd91a6b1721cde9478d685c4d46))
* **avatar:** petdx render on mission skill/rule/soul entity dialogs (Phase 1b) ([#2623](https://github.com/HankHuang0516/EClaw/issues/2623)) ([129327b](https://github.com/HankHuang0516/EClaw/commit/129327bc7b91056659f1ab7e8d5e3f5260d951fb))
* **mindmap:** portal/mindmap.html force-graph prototype ([#129](https://github.com/HankHuang0516/EClaw/issues/129)) ([#2681](https://github.com/HankHuang0516/EClaw/issues/2681)) ([0f15e69](https://github.com/HankHuang0516/EClaw/commit/0f15e6930f0697c37fa08f3219edb8f9e499837f)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **portal:** redo nagoya trip page in professional tour-guide style ([#2691](https://github.com/HankHuang0516/EClaw/issues/2691)) ([b2378c0](https://github.com/HankHuang0516/EClaw/commit/b2378c06ee20fa9cccfdceceb1a4c9e0b3072f59))
* **avatar:** render selected petdx companion in chat avatars ([#2620](https://github.com/HankHuang0516/EClaw/issues/2620)) ([0bdd046](https://github.com/HankHuang0516/EClaw/commit/0bdd046fe1b1c428e32edda366ff112c08927f4c))
* **home:** replace native home with WebView hosting dashboard.html ([#2634](https://github.com/HankHuang0516/EClaw/issues/2634)) ([e69ea81](https://github.com/HankHuang0516/EClaw/commit/e69ea8160c239b083a83d6dc83a4f1c3f901c863))
* **app:** route chat mission jumps through native tabs ([#2824](https://github.com/HankHuang0516/EClaw/issues/2824)) ([deb07b6](https://github.com/HankHuang0516/EClaw/commit/deb07b69a9ecca632fe27278de537f1d85234e94))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **chat:** support message deep links ([#2719](https://github.com/HankHuang0516/EClaw/issues/2719)) ([2dc0f1e](https://github.com/HankHuang0516/EClaw/commit/2dc0f1eeb259e1a0848db4a03186b989372cd91c))
* **mission:** support note deep links ([#2717](https://github.com/HankHuang0516/EClaw/issues/2717)) ([2efd3a5](https://github.com/HankHuang0516/EClaw/commit/2efd3a5e741217a07c0b0ac54a0ddd010e0ebe23))
* **share-chat:** twitter card + per-bot og:image/twitter:* in SSR ([#2609](https://github.com/HankHuang0516/EClaw/issues/2609)) ([6cdc853](https://github.com/HankHuang0516/EClaw/commit/6cdc853dc884cdb95bd47214942768981f218ae0))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))
* **settings:** wire petdx avatar into channel-account chips ([#2626](https://github.com/HankHuang0516/EClaw/issues/2626)) ([88aec77](https://github.com/HankHuang0516/EClaw/commit/88aec772628c240e97b336bb5820892ad632d1ae))
* **files:** wire petdx avatar into entity filter & per-file badges ([#2627](https://github.com/HankHuang0516/EClaw/issues/2627)) ([5b3e5cc](https://github.com/HankHuang0516/EClaw/commit/5b3e5cc542d9da69bb4e92500fd03a542ea33f00))
* **mindmap:** wrap hardcoded zh-TW UI strings with i18n t() ([#2607](https://github.com/HankHuang0516/EClaw/issues/2607)) ([166af87](https://github.com/HankHuang0516/EClaw/commit/166af8772b2121a24aaf34a83b3de970e9b3b571)), closes [#2606](https://github.com/HankHuang0516/EClaw/issues/2606)
* **i18n:** zh-TW backfill 8 keys (soft-pause + chat + invite + wallet) ([#2815](https://github.com/HankHuang0516/EClaw/issues/2815)) ([a2dd574](https://github.com/HankHuang0516/EClaw/commit/a2dd5743ce8d43a4b6ace9a2fd4b52568180d6c5))


### Performance Improvements

* **mindmap:** force-graph hardening for 1000/2000-node graphs ([#2684](https://github.com/HankHuang0516/EClaw/issues/2684)) ([da8b1c8](https://github.com/HankHuang0516/EClaw/commit/da8b1c8f947ab8bc8fa455c1962a91146623a1fc))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-19)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **notifications:** add kanban_done + kanban_done_auto toggles to Android Settings ([#2636](https://github.com/HankHuang0516/EClaw/issues/2636)) ([a710909](https://github.com/HankHuang0516/EClaw/commit/a7109095e3393b8564e7ef1b23d382a4fbb944b8))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **chat:** atomic-load target bar (await contacts before first render) ([#2831](https://github.com/HankHuang0516/EClaw/issues/2831)) ([5f529e6](https://github.com/HankHuang0516/EClaw/commit/5f529e6b772eacc38ba1de69b44258a05f0d816a)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2](https://github.com/HankHuang0516/EClaw/issues/2)
* **i18n:** clear batch 1 residual missing keys ([#2790](https://github.com/HankHuang0516/EClaw/issues/2790)) ([211030e](https://github.com/HankHuang0516/EClaw/commit/211030e0b0b6a865c11f0c4ed60dc4e356d43b7a))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **kanban:** comment input no longer overlaps last comment in card detail (PR [#2678](https://github.com/HankHuang0516/EClaw/issues/2678)) ([fba91fc](https://github.com/HankHuang0516/EClaw/commit/fba91fca15402b453a0db5ee857c0b16e6087055))
* **chat:** compact 20px avatar in target bar (App WebView only shows [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2](https://github.com/HankHuang0516/EClaw/issues/2)) ([#2830](https://github.com/HankHuang0516/EClaw/issues/2830)) ([42c7543](https://github.com/HankHuang0516/EClaw/commit/42c7543b4a78a7abf3f5f7535eb9bc6142cd0fe2)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **i18n:** cover dynamic portal wrapper keys ([#2807](https://github.com/HankHuang0516/EClaw/issues/2807)) ([4c711cc](https://github.com/HankHuang0516/EClaw/commit/4c711cc4009300ffe4e8933a98ee01cd0fdd6aeb))
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **petdx:** drop dark-grey loading placeholder + preload sprite WEBP ([#2628](https://github.com/HankHuang0516/EClaw/issues/2628)) ([59cef38](https://github.com/HankHuang0516/EClaw/commit/59cef387bd69ca99d7d15c86a1364856d3849ad8)), closes [#1a1a1a](https://github.com/HankHuang0516/EClaw/issues/1a1a1a)
* **security:** escape innerHTML in chat modal error messages ([#2819](https://github.com/HankHuang0516/EClaw/issues/2819)) ([dce07ad](https://github.com/HankHuang0516/EClaw/commit/dce07adde64795916dba977ae23e46f3371ce7ed)), closes [#2809](https://github.com/HankHuang0516/EClaw/issues/2809) [#2810](https://github.com/HankHuang0516/EClaw/issues/2810) [#2809](https://github.com/HankHuang0516/EClaw/issues/2809) [#2810](https://github.com/HankHuang0516/EClaw/issues/2810)
* **entities:** expose botSecret to owner so wallpaper service can poll companions ([#2615](https://github.com/HankHuang0516/EClaw/issues/2615)) ([04470fc](https://github.com/HankHuang0516/EClaw/commit/04470fce8f8c3fce2b1ba8b243e776606f107502))
* **rental:** expose owner_public_code in marketplace so plaza CTA can route ([#2616](https://github.com/HankHuang0516/EClaw/issues/2616)) ([4d1372f](https://github.com/HankHuang0516/EClaw/commit/4d1372f717d93cab65543e87c852e74e9fb67071)), closes [#2610](https://github.com/HankHuang0516/EClaw/issues/2610)
* **mindmap:** fallback to device scope when entityId is null ([#2728](https://github.com/HankHuang0516/EClaw/issues/2728)) ([7572312](https://github.com/HankHuang0516/EClaw/commit/7572312433d3d75fc245eda48a28919ce14bd927))
* **i18n:** fill Spanish drift keys ([#2751](https://github.com/HankHuang0516/EClaw/issues/2751)) ([0ad0ee5](https://github.com/HankHuang0516/EClaw/commit/0ad0ee55f7fac3e6ac46d891539950dab4d553cc))
* **portal:** fit embedded org chart to mobile viewport ([#2674](https://github.com/HankHuang0516/EClaw/issues/2674)) ([1c4e1b4](https://github.com/HankHuang0516/EClaw/commit/1c4e1b413ea7027b4cd4b8ecda981b0d0e12e66b))
* **i18n:** fix 6 trailing-comma syntax errors in 10-locale batch ([#2771](https://github.com/HankHuang0516/EClaw/issues/2771)) ([b27c6ca](https://github.com/HankHuang0516/EClaw/commit/b27c6ca204bf813e406c54ce3a2532a5f1f031b3))
* **kanban:** GET card returns latest 50 comments + comments endpoint exposes total ([#2816](https://github.com/HankHuang0516/EClaw/issues/2816)) ([c4d83f7](https://github.com/HankHuang0516/EClaw/commit/c4d83f777a1cd26aea0936e4316aa35c52822eef))
* **uiux:** harden chat previews and roster preview ([#2769](https://github.com/HankHuang0516/EClaw/issues/2769)) ([466d4d3](https://github.com/HankHuang0516/EClaw/commit/466d4d3ef81c628d3f58db64323946053d7bf61c))
* **mention-parser:** ignore @-mentions inside markdown code spans ([#2645](https://github.com/HankHuang0516/EClaw/issues/2645)) ([8da19d4](https://github.com/HankHuang0516/EClaw/commit/8da19d4a79ceb4152bf2144ee0847c61ce3e1def)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **kanban:** lazy-load dependency chips via IntersectionObserver ([#2632](https://github.com/HankHuang0516/EClaw/issues/2632)) ([20586b4](https://github.com/HankHuang0516/EClaw/commit/20586b43357335f9eb6a190c02d58c8e36b58aba)), closes [#2631](https://github.com/HankHuang0516/EClaw/issues/2631)
* **kanban:** make card sorting deterministic ([#2756](https://github.com/HankHuang0516/EClaw/issues/2756)) ([48e2117](https://github.com/HankHuang0516/EClaw/commit/48e2117b64e37f05dc635e0a3b67bfd43cbe48f5))
* **org-chart:** notify affected bots on hierarchy change ([#2812](https://github.com/HankHuang0516/EClaw/issues/2812)) ([55675fd](https://github.com/HankHuang0516/EClaw/commit/55675fdf4487494d729a29524b32bd81b756a00c)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** notify reviewer on manual /move → review ([#2753](https://github.com/HankHuang0516/EClaw/issues/2753)) ([6cbbb4e](https://github.com/HankHuang0516/EClaw/commit/6cbbb4ee8c0d4d8ad54df2e9b5faaa3699bd530f))
* **wallpaper:** off-load spritesheet fetch to IO so per-petdx sprites actually render ([#2618](https://github.com/HankHuang0516/EClaw/issues/2618)) ([61b832c](https://github.com/HankHuang0516/EClaw/commit/61b832c9fa8a1d0caab810ccc942d85c63349267)), closes [#2615](https://github.com/HankHuang0516/EClaw/issues/2615) [#2577](https://github.com/HankHuang0516/EClaw/issues/2577)
* **security:** patch P0 sanitize-html XSS + P1 protobufjs + exam.html XSS ([#2829](https://github.com/HankHuang0516/EClaw/issues/2829)) ([c71b871](https://github.com/HankHuang0516/EClaw/commit/c71b871a045887375dd0d26d1a3280a0891a89ad))
* **portal:** petdx-browser cookie-session fallback for device-login ([#2757](https://github.com/HankHuang0516/EClaw/issues/2757)) ([ca275f4](https://github.com/HankHuang0516/EClaw/commit/ca275f4519835da0c7ad71c588908a18f6f138d8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **api:** platform-stats 500 + entity/lookup publicCode alias ([#2809](https://github.com/HankHuang0516/EClaw/issues/2809), [#2810](https://github.com/HankHuang0516/EClaw/issues/2810)) ([#2818](https://github.com/HankHuang0516/EClaw/issues/2818)) ([f99fd17](https://github.com/HankHuang0516/EClaw/commit/f99fd17b2b1c32d88daa2510ff66d714c1a53edc))
* **i18n:** positional format specifiers for feedback_result_logs (7 locales) ([#2597](https://github.com/HankHuang0516/EClaw/issues/2597)) ([21aedc7](https://github.com/HankHuang0516/EClaw/commit/21aedc7eebc7a2839e340136f38dfdfd4dabb9dc))
* **avatar-petdx:** preserve descriptor across transient API failures (flicker) ([#2625](https://github.com/HankHuang0516/EClaw/issues/2625)) ([7b1c606](https://github.com/HankHuang0516/EClaw/commit/7b1c606514f7698d72ec95cf6c556e4043966186))
* **chat:** preserve scroll anchor while reading history ([#2693](https://github.com/HankHuang0516/EClaw/issues/2693)) ([945fdb7](https://github.com/HankHuang0516/EClaw/commit/945fdb7192b791b31882e1e75568dd8b11e4686f))
* **promo:** pull video embed from /promo-chat-avatar.html ([#2724](https://github.com/HankHuang0516/EClaw/issues/2724)) ([2afabc8](https://github.com/HankHuang0516/EClaw/commit/2afabc8c5ff8b25218a7cb857e8adfa572c8e9d5))
* **kanban:** realign stale recurring schedules ([#2785](https://github.com/HankHuang0516/EClaw/issues/2785)) ([ab8ee25](https://github.com/HankHuang0516/EClaw/commit/ab8ee250a9b37f3d3e838bb01d8866c8d2b78231))
* **portal:** reduce QA-discovered request fanout ([#2656](https://github.com/HankHuang0516/EClaw/issues/2656)) ([1e46d6b](https://github.com/HankHuang0516/EClaw/commit/1e46d6bab61e58c65b452b6503d953f8dddeee75))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **portal:** remove org chart fit scale floor ([#2676](https://github.com/HankHuang0516/EClaw/issues/2676)) ([0f01606](https://github.com/HankHuang0516/EClaw/commit/0f016068b963bb5f800a02f28817c7174979d913))
* **i18n:** rename mm_empty_title → mm_state_empty_title in mindmap.html ([#2683](https://github.com/HankHuang0516/EClaw/issues/2683)) ([c79c109](https://github.com/HankHuang0516/EClaw/commit/c79c109bea23142e8a6d9ace976d105af1280ec9))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **chat:** render mention avatars with companion renderer ([#2633](https://github.com/HankHuang0516/EClaw/issues/2633)) ([03e205f](https://github.com/HankHuang0516/EClaw/commit/03e205f663ecd2c2f443d4009dd5af0093f0bbbb))
* **kanban:** reserve mobile comments panel height ([#2782](https://github.com/HankHuang0516/EClaw/issues/2782)) ([ce8662d](https://github.com/HankHuang0516/EClaw/commit/ce8662d362422fdd25037f1deb61dbed9425e2f9))
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* scheduled audit 2026-05-13 — 6 bugs, XSS, i18n ([#2668](https://github.com/HankHuang0516/EClaw/issues/2668)) ([21dd513](https://github.com/HankHuang0516/EClaw/commit/21dd513b4464738de29164265437435ba6cc4817)), closes [#2605](https://github.com/HankHuang0516/EClaw/issues/2605) [#2608](https://github.com/HankHuang0516/EClaw/issues/2608) [#2600](https://github.com/HankHuang0516/EClaw/issues/2600) [#2599](https://github.com/HankHuang0516/EClaw/issues/2599) [#2598](https://github.com/HankHuang0516/EClaw/issues/2598)
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **chat:** smart-chip preview falls back to inline c.comments when /comments fails (PR [#2677](https://github.com/HankHuang0516/EClaw/issues/2677)) ([7f4dffd](https://github.com/HankHuang0516/EClaw/commit/7f4dffd2c83ea86f296b8fa0610f0e67c9f1af11))
* **kanban:** stabilize comment detail viewport ([#2796](https://github.com/HankHuang0516/EClaw/issues/2796)) ([0a10aad](https://github.com/HankHuang0516/EClaw/commit/0a10aadb5a5b12ff23454c16d5c88183b94ad7d7))
* **wallpaper:** stop Android live wallpaper flashing default lobster on companion change ([#2629](https://github.com/HankHuang0516/EClaw/issues/2629)) ([8b4f66f](https://github.com/HankHuang0516/EClaw/commit/8b4f66fcb335bf43128f924b761b6337c817095b)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **chat:** stop chat.html bouncing to dashboard via /api/rental/health-status 401 race ([#2833](https://github.com/HankHuang0516/EClaw/issues/2833)) ([c422406](https://github.com/HankHuang0516/EClaw/commit/c4224067cdcfe7f3e22ab95007c7563dac4196ac))
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **app:** WebView pages honor app-selected locale via ?lang= URL param ([#2672](https://github.com/HankHuang0516/EClaw/issues/2672)) ([8ed8757](https://github.com/HankHuang0516/EClaw/commit/8ed8757aec5bf214e837cc0d81bf2b23f1993a91)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* **community:** 1-click chat button on bot cards + utm tagging ([#2610](https://github.com/HankHuang0516/EClaw/issues/2610)) ([eee97b0](https://github.com/HankHuang0516/EClaw/commit/eee97b0e2e4e74945ec24f218a69a52800b97a66))
* **chat:** add avatar size preference ([#2714](https://github.com/HankHuang0516/EClaw/issues/2714)) ([6fe164a](https://github.com/HankHuang0516/EClaw/commit/6fe164ad8b22fa576d2dd9ad37c0d9fc295b5a83))
* **dashboard:** add Claude and Codex channel guides ([#2640](https://github.com/HankHuang0516/EClaw/issues/2640)) ([c64e4c4](https://github.com/HankHuang0516/EClaw/commit/c64e4c4afc78db58c5cd578f00486dd7b2fd3311))
* **dashboard:** add Claude Code channel guide card ([#2667](https://github.com/HankHuang0516/EClaw/issues/2667)) ([d70d75c](https://github.com/HankHuang0516/EClaw/commit/d70d75c0c8caa8a540358a9aab4556b8c1927a5c))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* **kanban:** add device-scoped card tags ([#2773](https://github.com/HankHuang0516/EClaw/issues/2773)) ([53a387e](https://github.com/HankHuang0516/EClaw/commit/53a387e67ba7bb4f6bed1c427000c4ae8666577a))
* **portal:** add entity selector to petdx-browser ([#2602](https://github.com/HankHuang0516/EClaw/issues/2602)) ([3fa067e](https://github.com/HankHuang0516/EClaw/commit/3fa067e00b38829b48a37cecd33ee81a9a1122d9))
* **kanban:** add explicit card links ([#2721](https://github.com/HankHuang0516/EClaw/issues/2721)) ([ef9f812](https://github.com/HankHuang0516/EClaw/commit/ef9f812a3fcf39efd07fd158ce90951bdd045ac7))
* **kanban:** add explicit done-card reopen flow ([#2801](https://github.com/HankHuang0516/EClaw/issues/2801)) ([5080aac](https://github.com/HankHuang0516/EClaw/commit/5080aacb75047c0deaa379ee708ec85465afd57c))
* **mindmap:** add GET /api/mindmap/graph force-graph projection ([#2680](https://github.com/HankHuang0516/EClaw/issues/2680)) ([a00b2e7](https://github.com/HankHuang0516/EClaw/commit/a00b2e775af2c4c98cd157f760ad87aeeee469f0)), closes [#2679](https://github.com/HankHuang0516/EClaw/issues/2679) [#2679](https://github.com/HankHuang0516/EClaw/issues/2679)
* **dashboard:** add Hermes channel promo card ([#2708](https://github.com/HankHuang0516/EClaw/issues/2708)) ([337aca1](https://github.com/HankHuang0516/EClaw/commit/337aca153d5a1cd7e888c065f00ae54db7872d91))
* **rental:** add listing soft pause ([#2781](https://github.com/HankHuang0516/EClaw/issues/2781)) ([6586b72](https://github.com/HankHuang0516/EClaw/commit/6586b72717ddb1637d91cd3242c8d2ff554f62b4))
* **portal:** add Nagoya 5D4N trip static cross-ref page ([#2689](https://github.com/HankHuang0516/EClaw/issues/2689)) ([2e0efb6](https://github.com/HankHuang0516/EClaw/commit/2e0efb6dcdaff52226cc8854a96747000b12bdff))
* **portal:** add Nagoya trip map links and image lightbox ([#2821](https://github.com/HankHuang0516/EClaw/issues/2821)) ([3e40955](https://github.com/HankHuang0516/EClaw/commit/3e40955650a05f45a6b9f7e39e73847705424a03))
* **portal/nagoya:** add parking shortcut buttons next to itinerary places ([#2826](https://github.com/HankHuang0516/EClaw/issues/2826)) ([63968c5](https://github.com/HankHuang0516/EClaw/commit/63968c554d046afc8d978de74e3aacbf7700500d))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **settings:** add rental roster management preview ([#2758](https://github.com/HankHuang0516/EClaw/issues/2758)) ([9706e59](https://github.com/HankHuang0516/EClaw/commit/9706e59ded140a90a6e02348124282bc69d89001))
* **rental:** add renter health chat indicator ([#2690](https://github.com/HankHuang0516/EClaw/issues/2690)) ([36cd2e9](https://github.com/HankHuang0516/EClaw/commit/36cd2e9802be4c7ebb03d3024617fa74aca48ffd))
* **ios:** add Tutorial & Intro entry in Settings ([#2800](https://github.com/HankHuang0516/EClaw/issues/2800)) ([ed83e51](https://github.com/HankHuang0516/EClaw/commit/ed83e51d043bf4cd5865f38dc95a91ed54820d6c))
* **landing:** add Watch Full Demo CTA below hero video ([#2799](https://github.com/HankHuang0516/EClaw/issues/2799)) ([66107c9](https://github.com/HankHuang0516/EClaw/commit/66107c954727551fd34d989a4674daaad9b63968))
* **footer:** add Watch Intro Video link in Info column ([#2798](https://github.com/HankHuang0516/EClaw/issues/2798)) ([d7c6d59](https://github.com/HankHuang0516/EClaw/commit/d7c6d596b69c6a5b257bf1f7a792a407ef9712ad))
* **companion:** bridge crafter-station/petdex gallery (1784 pets) ([#2601](https://github.com/HankHuang0516/EClaw/issues/2601)) ([2e245be](https://github.com/HankHuang0516/EClaw/commit/2e245bea6dd47ea7361b927d389188a3c23b6bb3))
* **promo:** chat avatar size feature landing page (self-hosted MP4) ([#2722](https://github.com/HankHuang0516/EClaw/issues/2722)) ([3852210](https://github.com/HankHuang0516/EClaw/commit/3852210d355704d018e3daca6b5f9512a011b210)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **kanban:** cron-spawn jitter + lane backpressure to prevent same-tick wedge ([#2791](https://github.com/HankHuang0516/EClaw/issues/2791)) ([9f414a7](https://github.com/HankHuang0516/EClaw/commit/9f414a731d6393672a0a4189c7b408c529ae5e12)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **promo:** embed daily eclaw video 2026-05-14 ([#2786](https://github.com/HankHuang0516/EClaw/issues/2786)) ([718a814](https://github.com/HankHuang0516/EClaw/commit/718a814ab16850bc2b33a1b303841e2c4378ecfa)), closes [#2782](https://github.com/HankHuang0516/EClaw/issues/2782) [#2693](https://github.com/HankHuang0516/EClaw/issues/2693)
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **info:** embed promo video at top of Quick Start tab ([#2797](https://github.com/HankHuang0516/EClaw/issues/2797)) ([047679f](https://github.com/HankHuang0516/EClaw/commit/047679fd57ab9949eaeacea414d5611e71afe041))
* **rental:** enforce strict rebind refunds ([#2703](https://github.com/HankHuang0516/EClaw/issues/2703)) ([a1859c5](https://github.com/HankHuang0516/EClaw/commit/a1859c50e6fb3991d7a8051491502d824a14a116))
* **portal:** group task chip actions ([#2825](https://github.com/HankHuang0516/EClaw/issues/2825)) ([5db5c59](https://github.com/HankHuang0516/EClaw/commit/5db5c59b32b8635f1412205faf0c2f9164d3d5d4))
* **portal:** info-guide-rules + info-guide-soul slide pair ([#2793](https://github.com/HankHuang0516/EClaw/issues/2793)) ([1c8bddc](https://github.com/HankHuang0516/EClaw/commit/1c8bddc4c185054b2b60088498e3d45509117127)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **chat:** link card previews to kanban ([#2754](https://github.com/HankHuang0516/EClaw/issues/2754)) ([2261240](https://github.com/HankHuang0516/EClaw/commit/22612402c2e95efb07246629e81a849be41ee9c7))
* **mission:** link notes to kanban cards ([#2723](https://github.com/HankHuang0516/EClaw/issues/2723)) ([b36dc18](https://github.com/HankHuang0516/EClaw/commit/b36dc18f3a8facf12e0b6046351c222f1e99dc55))
* **mindmap:** mission.html link to /portal/mindmap.html + deprecate /api/mission/mindmap ([#2685](https://github.com/HankHuang0516/EClaw/issues/2685)) ([11e297b](https://github.com/HankHuang0516/EClaw/commit/11e297bab1c9b56fcde3027d6500b7c58891bf18)), closes [#2680](https://github.com/HankHuang0516/EClaw/issues/2680) [#2684](https://github.com/HankHuang0516/EClaw/issues/2684)
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **avatar:** petdx render on card-holder my-cards (Phase 1b) ([#2621](https://github.com/HankHuang0516/EClaw/issues/2621)) ([f78ba8b](https://github.com/HankHuang0516/EClaw/commit/f78ba8b18acc426936ab6d8a82ca7541effea00d))
* **avatar:** petdx render on dashboard entity grid / org chart / bindings (Phase 1b) ([#2622](https://github.com/HankHuang0516/EClaw/issues/2622)) ([f417749](https://github.com/HankHuang0516/EClaw/commit/f41774914451048e8cd76e9ae30416a0642e173b)), closes [#2620](https://github.com/HankHuang0516/EClaw/issues/2620) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621)
* **avatar:** petdx render on kanban auto-assign / pulse / comment avatars (Phase 1b) ([#2624](https://github.com/HankHuang0516/EClaw/issues/2624)) ([6bff5f8](https://github.com/HankHuang0516/EClaw/commit/6bff5f80440d0bd91a6b1721cde9478d685c4d46))
* **avatar:** petdx render on mission skill/rule/soul entity dialogs (Phase 1b) ([#2623](https://github.com/HankHuang0516/EClaw/issues/2623)) ([129327b](https://github.com/HankHuang0516/EClaw/commit/129327bc7b91056659f1ab7e8d5e3f5260d951fb))
* **mindmap:** portal/mindmap.html force-graph prototype ([#129](https://github.com/HankHuang0516/EClaw/issues/129)) ([#2681](https://github.com/HankHuang0516/EClaw/issues/2681)) ([0f15e69](https://github.com/HankHuang0516/EClaw/commit/0f15e6930f0697c37fa08f3219edb8f9e499837f)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **portal:** redo nagoya trip page in professional tour-guide style ([#2691](https://github.com/HankHuang0516/EClaw/issues/2691)) ([b2378c0](https://github.com/HankHuang0516/EClaw/commit/b2378c06ee20fa9cccfdceceb1a4c9e0b3072f59))
* **avatar:** render selected petdx companion in chat avatars ([#2620](https://github.com/HankHuang0516/EClaw/issues/2620)) ([0bdd046](https://github.com/HankHuang0516/EClaw/commit/0bdd046fe1b1c428e32edda366ff112c08927f4c))
* **home:** replace native home with WebView hosting dashboard.html ([#2634](https://github.com/HankHuang0516/EClaw/issues/2634)) ([e69ea81](https://github.com/HankHuang0516/EClaw/commit/e69ea8160c239b083a83d6dc83a4f1c3f901c863))
* **app:** route chat mission jumps through native tabs ([#2824](https://github.com/HankHuang0516/EClaw/issues/2824)) ([deb07b6](https://github.com/HankHuang0516/EClaw/commit/deb07b69a9ecca632fe27278de537f1d85234e94))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **chat:** support message deep links ([#2719](https://github.com/HankHuang0516/EClaw/issues/2719)) ([2dc0f1e](https://github.com/HankHuang0516/EClaw/commit/2dc0f1eeb259e1a0848db4a03186b989372cd91c))
* **mission:** support note deep links ([#2717](https://github.com/HankHuang0516/EClaw/issues/2717)) ([2efd3a5](https://github.com/HankHuang0516/EClaw/commit/2efd3a5e741217a07c0b0ac54a0ddd010e0ebe23))
* **share-chat:** twitter card + per-bot og:image/twitter:* in SSR ([#2609](https://github.com/HankHuang0516/EClaw/issues/2609)) ([6cdc853](https://github.com/HankHuang0516/EClaw/commit/6cdc853dc884cdb95bd47214942768981f218ae0))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))
* **settings:** wire petdx avatar into channel-account chips ([#2626](https://github.com/HankHuang0516/EClaw/issues/2626)) ([88aec77](https://github.com/HankHuang0516/EClaw/commit/88aec772628c240e97b336bb5820892ad632d1ae))
* **files:** wire petdx avatar into entity filter & per-file badges ([#2627](https://github.com/HankHuang0516/EClaw/issues/2627)) ([5b3e5cc](https://github.com/HankHuang0516/EClaw/commit/5b3e5cc542d9da69bb4e92500fd03a542ea33f00))
* **mindmap:** wrap hardcoded zh-TW UI strings with i18n t() ([#2607](https://github.com/HankHuang0516/EClaw/issues/2607)) ([166af87](https://github.com/HankHuang0516/EClaw/commit/166af8772b2121a24aaf34a83b3de970e9b3b571)), closes [#2606](https://github.com/HankHuang0516/EClaw/issues/2606)
* **i18n:** zh-TW backfill 8 keys (soft-pause + chat + invite + wallet) ([#2815](https://github.com/HankHuang0516/EClaw/issues/2815)) ([a2dd574](https://github.com/HankHuang0516/EClaw/commit/a2dd5743ce8d43a4b6ace9a2fd4b52568180d6c5))


### Performance Improvements

* **mindmap:** force-graph hardening for 1000/2000-node graphs ([#2684](https://github.com/HankHuang0516/EClaw/issues/2684)) ([da8b1c8](https://github.com/HankHuang0516/EClaw/commit/da8b1c8f947ab8bc8fa455c1962a91146623a1fc))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-17)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **notifications:** add kanban_done + kanban_done_auto toggles to Android Settings ([#2636](https://github.com/HankHuang0516/EClaw/issues/2636)) ([a710909](https://github.com/HankHuang0516/EClaw/commit/a7109095e3393b8564e7ef1b23d382a4fbb944b8))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **chat:** atomic-load target bar (await contacts before first render) ([#2831](https://github.com/HankHuang0516/EClaw/issues/2831)) ([5f529e6](https://github.com/HankHuang0516/EClaw/commit/5f529e6b772eacc38ba1de69b44258a05f0d816a)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2](https://github.com/HankHuang0516/EClaw/issues/2)
* **i18n:** clear batch 1 residual missing keys ([#2790](https://github.com/HankHuang0516/EClaw/issues/2790)) ([211030e](https://github.com/HankHuang0516/EClaw/commit/211030e0b0b6a865c11f0c4ed60dc4e356d43b7a))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **kanban:** comment input no longer overlaps last comment in card detail (PR [#2678](https://github.com/HankHuang0516/EClaw/issues/2678)) ([fba91fc](https://github.com/HankHuang0516/EClaw/commit/fba91fca15402b453a0db5ee857c0b16e6087055))
* **chat:** compact 20px avatar in target bar (App WebView only shows [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2](https://github.com/HankHuang0516/EClaw/issues/2)) ([#2830](https://github.com/HankHuang0516/EClaw/issues/2830)) ([42c7543](https://github.com/HankHuang0516/EClaw/commit/42c7543b4a78a7abf3f5f7535eb9bc6142cd0fe2)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **i18n:** cover dynamic portal wrapper keys ([#2807](https://github.com/HankHuang0516/EClaw/issues/2807)) ([4c711cc](https://github.com/HankHuang0516/EClaw/commit/4c711cc4009300ffe4e8933a98ee01cd0fdd6aeb))
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **petdx:** drop dark-grey loading placeholder + preload sprite WEBP ([#2628](https://github.com/HankHuang0516/EClaw/issues/2628)) ([59cef38](https://github.com/HankHuang0516/EClaw/commit/59cef387bd69ca99d7d15c86a1364856d3849ad8)), closes [#1a1a1a](https://github.com/HankHuang0516/EClaw/issues/1a1a1a)
* **security:** escape innerHTML in chat modal error messages ([#2819](https://github.com/HankHuang0516/EClaw/issues/2819)) ([dce07ad](https://github.com/HankHuang0516/EClaw/commit/dce07adde64795916dba977ae23e46f3371ce7ed)), closes [#2809](https://github.com/HankHuang0516/EClaw/issues/2809) [#2810](https://github.com/HankHuang0516/EClaw/issues/2810) [#2809](https://github.com/HankHuang0516/EClaw/issues/2809) [#2810](https://github.com/HankHuang0516/EClaw/issues/2810)
* **entities:** expose botSecret to owner so wallpaper service can poll companions ([#2615](https://github.com/HankHuang0516/EClaw/issues/2615)) ([04470fc](https://github.com/HankHuang0516/EClaw/commit/04470fce8f8c3fce2b1ba8b243e776606f107502))
* **rental:** expose owner_public_code in marketplace so plaza CTA can route ([#2616](https://github.com/HankHuang0516/EClaw/issues/2616)) ([4d1372f](https://github.com/HankHuang0516/EClaw/commit/4d1372f717d93cab65543e87c852e74e9fb67071)), closes [#2610](https://github.com/HankHuang0516/EClaw/issues/2610)
* **mindmap:** fallback to device scope when entityId is null ([#2728](https://github.com/HankHuang0516/EClaw/issues/2728)) ([7572312](https://github.com/HankHuang0516/EClaw/commit/7572312433d3d75fc245eda48a28919ce14bd927))
* **i18n:** fill Spanish drift keys ([#2751](https://github.com/HankHuang0516/EClaw/issues/2751)) ([0ad0ee5](https://github.com/HankHuang0516/EClaw/commit/0ad0ee55f7fac3e6ac46d891539950dab4d553cc))
* **portal:** fit embedded org chart to mobile viewport ([#2674](https://github.com/HankHuang0516/EClaw/issues/2674)) ([1c4e1b4](https://github.com/HankHuang0516/EClaw/commit/1c4e1b413ea7027b4cd4b8ecda981b0d0e12e66b))
* **i18n:** fix 6 trailing-comma syntax errors in 10-locale batch ([#2771](https://github.com/HankHuang0516/EClaw/issues/2771)) ([b27c6ca](https://github.com/HankHuang0516/EClaw/commit/b27c6ca204bf813e406c54ce3a2532a5f1f031b3))
* **kanban:** GET card returns latest 50 comments + comments endpoint exposes total ([#2816](https://github.com/HankHuang0516/EClaw/issues/2816)) ([c4d83f7](https://github.com/HankHuang0516/EClaw/commit/c4d83f777a1cd26aea0936e4316aa35c52822eef))
* **uiux:** harden chat previews and roster preview ([#2769](https://github.com/HankHuang0516/EClaw/issues/2769)) ([466d4d3](https://github.com/HankHuang0516/EClaw/commit/466d4d3ef81c628d3f58db64323946053d7bf61c))
* **mention-parser:** ignore @-mentions inside markdown code spans ([#2645](https://github.com/HankHuang0516/EClaw/issues/2645)) ([8da19d4](https://github.com/HankHuang0516/EClaw/commit/8da19d4a79ceb4152bf2144ee0847c61ce3e1def)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **kanban:** lazy-load dependency chips via IntersectionObserver ([#2632](https://github.com/HankHuang0516/EClaw/issues/2632)) ([20586b4](https://github.com/HankHuang0516/EClaw/commit/20586b43357335f9eb6a190c02d58c8e36b58aba)), closes [#2631](https://github.com/HankHuang0516/EClaw/issues/2631)
* **kanban:** make card sorting deterministic ([#2756](https://github.com/HankHuang0516/EClaw/issues/2756)) ([48e2117](https://github.com/HankHuang0516/EClaw/commit/48e2117b64e37f05dc635e0a3b67bfd43cbe48f5))
* **org-chart:** notify affected bots on hierarchy change ([#2812](https://github.com/HankHuang0516/EClaw/issues/2812)) ([55675fd](https://github.com/HankHuang0516/EClaw/commit/55675fdf4487494d729a29524b32bd81b756a00c)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** notify reviewer on manual /move → review ([#2753](https://github.com/HankHuang0516/EClaw/issues/2753)) ([6cbbb4e](https://github.com/HankHuang0516/EClaw/commit/6cbbb4ee8c0d4d8ad54df2e9b5faaa3699bd530f))
* **wallpaper:** off-load spritesheet fetch to IO so per-petdx sprites actually render ([#2618](https://github.com/HankHuang0516/EClaw/issues/2618)) ([61b832c](https://github.com/HankHuang0516/EClaw/commit/61b832c9fa8a1d0caab810ccc942d85c63349267)), closes [#2615](https://github.com/HankHuang0516/EClaw/issues/2615) [#2577](https://github.com/HankHuang0516/EClaw/issues/2577)
* **security:** patch P0 sanitize-html XSS + P1 protobufjs + exam.html XSS ([#2829](https://github.com/HankHuang0516/EClaw/issues/2829)) ([c71b871](https://github.com/HankHuang0516/EClaw/commit/c71b871a045887375dd0d26d1a3280a0891a89ad))
* **portal:** petdx-browser cookie-session fallback for device-login ([#2757](https://github.com/HankHuang0516/EClaw/issues/2757)) ([ca275f4](https://github.com/HankHuang0516/EClaw/commit/ca275f4519835da0c7ad71c588908a18f6f138d8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **api:** platform-stats 500 + entity/lookup publicCode alias ([#2809](https://github.com/HankHuang0516/EClaw/issues/2809), [#2810](https://github.com/HankHuang0516/EClaw/issues/2810)) ([#2818](https://github.com/HankHuang0516/EClaw/issues/2818)) ([f99fd17](https://github.com/HankHuang0516/EClaw/commit/f99fd17b2b1c32d88daa2510ff66d714c1a53edc))
* **i18n:** positional format specifiers for feedback_result_logs (7 locales) ([#2597](https://github.com/HankHuang0516/EClaw/issues/2597)) ([21aedc7](https://github.com/HankHuang0516/EClaw/commit/21aedc7eebc7a2839e340136f38dfdfd4dabb9dc))
* **avatar-petdx:** preserve descriptor across transient API failures (flicker) ([#2625](https://github.com/HankHuang0516/EClaw/issues/2625)) ([7b1c606](https://github.com/HankHuang0516/EClaw/commit/7b1c606514f7698d72ec95cf6c556e4043966186))
* **chat:** preserve scroll anchor while reading history ([#2693](https://github.com/HankHuang0516/EClaw/issues/2693)) ([945fdb7](https://github.com/HankHuang0516/EClaw/commit/945fdb7192b791b31882e1e75568dd8b11e4686f))
* **promo:** pull video embed from /promo-chat-avatar.html ([#2724](https://github.com/HankHuang0516/EClaw/issues/2724)) ([2afabc8](https://github.com/HankHuang0516/EClaw/commit/2afabc8c5ff8b25218a7cb857e8adfa572c8e9d5))
* **kanban:** realign stale recurring schedules ([#2785](https://github.com/HankHuang0516/EClaw/issues/2785)) ([ab8ee25](https://github.com/HankHuang0516/EClaw/commit/ab8ee250a9b37f3d3e838bb01d8866c8d2b78231))
* **portal:** reduce QA-discovered request fanout ([#2656](https://github.com/HankHuang0516/EClaw/issues/2656)) ([1e46d6b](https://github.com/HankHuang0516/EClaw/commit/1e46d6bab61e58c65b452b6503d953f8dddeee75))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **portal:** remove org chart fit scale floor ([#2676](https://github.com/HankHuang0516/EClaw/issues/2676)) ([0f01606](https://github.com/HankHuang0516/EClaw/commit/0f016068b963bb5f800a02f28817c7174979d913))
* **i18n:** rename mm_empty_title → mm_state_empty_title in mindmap.html ([#2683](https://github.com/HankHuang0516/EClaw/issues/2683)) ([c79c109](https://github.com/HankHuang0516/EClaw/commit/c79c109bea23142e8a6d9ace976d105af1280ec9))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **chat:** render mention avatars with companion renderer ([#2633](https://github.com/HankHuang0516/EClaw/issues/2633)) ([03e205f](https://github.com/HankHuang0516/EClaw/commit/03e205f663ecd2c2f443d4009dd5af0093f0bbbb))
* **kanban:** reserve mobile comments panel height ([#2782](https://github.com/HankHuang0516/EClaw/issues/2782)) ([ce8662d](https://github.com/HankHuang0516/EClaw/commit/ce8662d362422fdd25037f1deb61dbed9425e2f9))
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* scheduled audit 2026-05-13 — 6 bugs, XSS, i18n ([#2668](https://github.com/HankHuang0516/EClaw/issues/2668)) ([21dd513](https://github.com/HankHuang0516/EClaw/commit/21dd513b4464738de29164265437435ba6cc4817)), closes [#2605](https://github.com/HankHuang0516/EClaw/issues/2605) [#2608](https://github.com/HankHuang0516/EClaw/issues/2608) [#2600](https://github.com/HankHuang0516/EClaw/issues/2600) [#2599](https://github.com/HankHuang0516/EClaw/issues/2599) [#2598](https://github.com/HankHuang0516/EClaw/issues/2598)
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **chat:** smart-chip preview falls back to inline c.comments when /comments fails (PR [#2677](https://github.com/HankHuang0516/EClaw/issues/2677)) ([7f4dffd](https://github.com/HankHuang0516/EClaw/commit/7f4dffd2c83ea86f296b8fa0610f0e67c9f1af11))
* **kanban:** stabilize comment detail viewport ([#2796](https://github.com/HankHuang0516/EClaw/issues/2796)) ([0a10aad](https://github.com/HankHuang0516/EClaw/commit/0a10aadb5a5b12ff23454c16d5c88183b94ad7d7))
* **wallpaper:** stop Android live wallpaper flashing default lobster on companion change ([#2629](https://github.com/HankHuang0516/EClaw/issues/2629)) ([8b4f66f](https://github.com/HankHuang0516/EClaw/commit/8b4f66fcb335bf43128f924b761b6337c817095b)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **chat:** stop chat.html bouncing to dashboard via /api/rental/health-status 401 race ([#2833](https://github.com/HankHuang0516/EClaw/issues/2833)) ([c422406](https://github.com/HankHuang0516/EClaw/commit/c4224067cdcfe7f3e22ab95007c7563dac4196ac))
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **app:** WebView pages honor app-selected locale via ?lang= URL param ([#2672](https://github.com/HankHuang0516/EClaw/issues/2672)) ([8ed8757](https://github.com/HankHuang0516/EClaw/commit/8ed8757aec5bf214e837cc0d81bf2b23f1993a91)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* **community:** 1-click chat button on bot cards + utm tagging ([#2610](https://github.com/HankHuang0516/EClaw/issues/2610)) ([eee97b0](https://github.com/HankHuang0516/EClaw/commit/eee97b0e2e4e74945ec24f218a69a52800b97a66))
* **chat:** add avatar size preference ([#2714](https://github.com/HankHuang0516/EClaw/issues/2714)) ([6fe164a](https://github.com/HankHuang0516/EClaw/commit/6fe164ad8b22fa576d2dd9ad37c0d9fc295b5a83))
* **dashboard:** add Claude and Codex channel guides ([#2640](https://github.com/HankHuang0516/EClaw/issues/2640)) ([c64e4c4](https://github.com/HankHuang0516/EClaw/commit/c64e4c4afc78db58c5cd578f00486dd7b2fd3311))
* **dashboard:** add Claude Code channel guide card ([#2667](https://github.com/HankHuang0516/EClaw/issues/2667)) ([d70d75c](https://github.com/HankHuang0516/EClaw/commit/d70d75c0c8caa8a540358a9aab4556b8c1927a5c))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* **kanban:** add device-scoped card tags ([#2773](https://github.com/HankHuang0516/EClaw/issues/2773)) ([53a387e](https://github.com/HankHuang0516/EClaw/commit/53a387e67ba7bb4f6bed1c427000c4ae8666577a))
* **portal:** add entity selector to petdx-browser ([#2602](https://github.com/HankHuang0516/EClaw/issues/2602)) ([3fa067e](https://github.com/HankHuang0516/EClaw/commit/3fa067e00b38829b48a37cecd33ee81a9a1122d9))
* **kanban:** add explicit card links ([#2721](https://github.com/HankHuang0516/EClaw/issues/2721)) ([ef9f812](https://github.com/HankHuang0516/EClaw/commit/ef9f812a3fcf39efd07fd158ce90951bdd045ac7))
* **kanban:** add explicit done-card reopen flow ([#2801](https://github.com/HankHuang0516/EClaw/issues/2801)) ([5080aac](https://github.com/HankHuang0516/EClaw/commit/5080aacb75047c0deaa379ee708ec85465afd57c))
* **mindmap:** add GET /api/mindmap/graph force-graph projection ([#2680](https://github.com/HankHuang0516/EClaw/issues/2680)) ([a00b2e7](https://github.com/HankHuang0516/EClaw/commit/a00b2e775af2c4c98cd157f760ad87aeeee469f0)), closes [#2679](https://github.com/HankHuang0516/EClaw/issues/2679) [#2679](https://github.com/HankHuang0516/EClaw/issues/2679)
* **dashboard:** add Hermes channel promo card ([#2708](https://github.com/HankHuang0516/EClaw/issues/2708)) ([337aca1](https://github.com/HankHuang0516/EClaw/commit/337aca153d5a1cd7e888c065f00ae54db7872d91))
* **rental:** add listing soft pause ([#2781](https://github.com/HankHuang0516/EClaw/issues/2781)) ([6586b72](https://github.com/HankHuang0516/EClaw/commit/6586b72717ddb1637d91cd3242c8d2ff554f62b4))
* **portal:** add Nagoya 5D4N trip static cross-ref page ([#2689](https://github.com/HankHuang0516/EClaw/issues/2689)) ([2e0efb6](https://github.com/HankHuang0516/EClaw/commit/2e0efb6dcdaff52226cc8854a96747000b12bdff))
* **portal:** add Nagoya trip map links and image lightbox ([#2821](https://github.com/HankHuang0516/EClaw/issues/2821)) ([3e40955](https://github.com/HankHuang0516/EClaw/commit/3e40955650a05f45a6b9f7e39e73847705424a03))
* **portal/nagoya:** add parking shortcut buttons next to itinerary places ([#2826](https://github.com/HankHuang0516/EClaw/issues/2826)) ([63968c5](https://github.com/HankHuang0516/EClaw/commit/63968c554d046afc8d978de74e3aacbf7700500d))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **settings:** add rental roster management preview ([#2758](https://github.com/HankHuang0516/EClaw/issues/2758)) ([9706e59](https://github.com/HankHuang0516/EClaw/commit/9706e59ded140a90a6e02348124282bc69d89001))
* **rental:** add renter health chat indicator ([#2690](https://github.com/HankHuang0516/EClaw/issues/2690)) ([36cd2e9](https://github.com/HankHuang0516/EClaw/commit/36cd2e9802be4c7ebb03d3024617fa74aca48ffd))
* **ios:** add Tutorial & Intro entry in Settings ([#2800](https://github.com/HankHuang0516/EClaw/issues/2800)) ([ed83e51](https://github.com/HankHuang0516/EClaw/commit/ed83e51d043bf4cd5865f38dc95a91ed54820d6c))
* **landing:** add Watch Full Demo CTA below hero video ([#2799](https://github.com/HankHuang0516/EClaw/issues/2799)) ([66107c9](https://github.com/HankHuang0516/EClaw/commit/66107c954727551fd34d989a4674daaad9b63968))
* **footer:** add Watch Intro Video link in Info column ([#2798](https://github.com/HankHuang0516/EClaw/issues/2798)) ([d7c6d59](https://github.com/HankHuang0516/EClaw/commit/d7c6d596b69c6a5b257bf1f7a792a407ef9712ad))
* **companion:** bridge crafter-station/petdex gallery (1784 pets) ([#2601](https://github.com/HankHuang0516/EClaw/issues/2601)) ([2e245be](https://github.com/HankHuang0516/EClaw/commit/2e245bea6dd47ea7361b927d389188a3c23b6bb3))
* **promo:** chat avatar size feature landing page (self-hosted MP4) ([#2722](https://github.com/HankHuang0516/EClaw/issues/2722)) ([3852210](https://github.com/HankHuang0516/EClaw/commit/3852210d355704d018e3daca6b5f9512a011b210)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **kanban:** cron-spawn jitter + lane backpressure to prevent same-tick wedge ([#2791](https://github.com/HankHuang0516/EClaw/issues/2791)) ([9f414a7](https://github.com/HankHuang0516/EClaw/commit/9f414a731d6393672a0a4189c7b408c529ae5e12)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **promo:** embed daily eclaw video 2026-05-14 ([#2786](https://github.com/HankHuang0516/EClaw/issues/2786)) ([718a814](https://github.com/HankHuang0516/EClaw/commit/718a814ab16850bc2b33a1b303841e2c4378ecfa)), closes [#2782](https://github.com/HankHuang0516/EClaw/issues/2782) [#2693](https://github.com/HankHuang0516/EClaw/issues/2693)
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **info:** embed promo video at top of Quick Start tab ([#2797](https://github.com/HankHuang0516/EClaw/issues/2797)) ([047679f](https://github.com/HankHuang0516/EClaw/commit/047679fd57ab9949eaeacea414d5611e71afe041))
* **rental:** enforce strict rebind refunds ([#2703](https://github.com/HankHuang0516/EClaw/issues/2703)) ([a1859c5](https://github.com/HankHuang0516/EClaw/commit/a1859c50e6fb3991d7a8051491502d824a14a116))
* **portal:** group task chip actions ([#2825](https://github.com/HankHuang0516/EClaw/issues/2825)) ([5db5c59](https://github.com/HankHuang0516/EClaw/commit/5db5c59b32b8635f1412205faf0c2f9164d3d5d4))
* **portal:** info-guide-rules + info-guide-soul slide pair ([#2793](https://github.com/HankHuang0516/EClaw/issues/2793)) ([1c8bddc](https://github.com/HankHuang0516/EClaw/commit/1c8bddc4c185054b2b60088498e3d45509117127)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **chat:** link card previews to kanban ([#2754](https://github.com/HankHuang0516/EClaw/issues/2754)) ([2261240](https://github.com/HankHuang0516/EClaw/commit/22612402c2e95efb07246629e81a849be41ee9c7))
* **mission:** link notes to kanban cards ([#2723](https://github.com/HankHuang0516/EClaw/issues/2723)) ([b36dc18](https://github.com/HankHuang0516/EClaw/commit/b36dc18f3a8facf12e0b6046351c222f1e99dc55))
* **mindmap:** mission.html link to /portal/mindmap.html + deprecate /api/mission/mindmap ([#2685](https://github.com/HankHuang0516/EClaw/issues/2685)) ([11e297b](https://github.com/HankHuang0516/EClaw/commit/11e297bab1c9b56fcde3027d6500b7c58891bf18)), closes [#2680](https://github.com/HankHuang0516/EClaw/issues/2680) [#2684](https://github.com/HankHuang0516/EClaw/issues/2684)
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **avatar:** petdx render on card-holder my-cards (Phase 1b) ([#2621](https://github.com/HankHuang0516/EClaw/issues/2621)) ([f78ba8b](https://github.com/HankHuang0516/EClaw/commit/f78ba8b18acc426936ab6d8a82ca7541effea00d))
* **avatar:** petdx render on dashboard entity grid / org chart / bindings (Phase 1b) ([#2622](https://github.com/HankHuang0516/EClaw/issues/2622)) ([f417749](https://github.com/HankHuang0516/EClaw/commit/f41774914451048e8cd76e9ae30416a0642e173b)), closes [#2620](https://github.com/HankHuang0516/EClaw/issues/2620) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621)
* **avatar:** petdx render on kanban auto-assign / pulse / comment avatars (Phase 1b) ([#2624](https://github.com/HankHuang0516/EClaw/issues/2624)) ([6bff5f8](https://github.com/HankHuang0516/EClaw/commit/6bff5f80440d0bd91a6b1721cde9478d685c4d46))
* **avatar:** petdx render on mission skill/rule/soul entity dialogs (Phase 1b) ([#2623](https://github.com/HankHuang0516/EClaw/issues/2623)) ([129327b](https://github.com/HankHuang0516/EClaw/commit/129327bc7b91056659f1ab7e8d5e3f5260d951fb))
* **mindmap:** portal/mindmap.html force-graph prototype ([#129](https://github.com/HankHuang0516/EClaw/issues/129)) ([#2681](https://github.com/HankHuang0516/EClaw/issues/2681)) ([0f15e69](https://github.com/HankHuang0516/EClaw/commit/0f15e6930f0697c37fa08f3219edb8f9e499837f)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **portal:** redo nagoya trip page in professional tour-guide style ([#2691](https://github.com/HankHuang0516/EClaw/issues/2691)) ([b2378c0](https://github.com/HankHuang0516/EClaw/commit/b2378c06ee20fa9cccfdceceb1a4c9e0b3072f59))
* **avatar:** render selected petdx companion in chat avatars ([#2620](https://github.com/HankHuang0516/EClaw/issues/2620)) ([0bdd046](https://github.com/HankHuang0516/EClaw/commit/0bdd046fe1b1c428e32edda366ff112c08927f4c))
* **home:** replace native home with WebView hosting dashboard.html ([#2634](https://github.com/HankHuang0516/EClaw/issues/2634)) ([e69ea81](https://github.com/HankHuang0516/EClaw/commit/e69ea8160c239b083a83d6dc83a4f1c3f901c863))
* **app:** route chat mission jumps through native tabs ([#2824](https://github.com/HankHuang0516/EClaw/issues/2824)) ([deb07b6](https://github.com/HankHuang0516/EClaw/commit/deb07b69a9ecca632fe27278de537f1d85234e94))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **chat:** support message deep links ([#2719](https://github.com/HankHuang0516/EClaw/issues/2719)) ([2dc0f1e](https://github.com/HankHuang0516/EClaw/commit/2dc0f1eeb259e1a0848db4a03186b989372cd91c))
* **mission:** support note deep links ([#2717](https://github.com/HankHuang0516/EClaw/issues/2717)) ([2efd3a5](https://github.com/HankHuang0516/EClaw/commit/2efd3a5e741217a07c0b0ac54a0ddd010e0ebe23))
* **share-chat:** twitter card + per-bot og:image/twitter:* in SSR ([#2609](https://github.com/HankHuang0516/EClaw/issues/2609)) ([6cdc853](https://github.com/HankHuang0516/EClaw/commit/6cdc853dc884cdb95bd47214942768981f218ae0))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))
* **settings:** wire petdx avatar into channel-account chips ([#2626](https://github.com/HankHuang0516/EClaw/issues/2626)) ([88aec77](https://github.com/HankHuang0516/EClaw/commit/88aec772628c240e97b336bb5820892ad632d1ae))
* **files:** wire petdx avatar into entity filter & per-file badges ([#2627](https://github.com/HankHuang0516/EClaw/issues/2627)) ([5b3e5cc](https://github.com/HankHuang0516/EClaw/commit/5b3e5cc542d9da69bb4e92500fd03a542ea33f00))
* **mindmap:** wrap hardcoded zh-TW UI strings with i18n t() ([#2607](https://github.com/HankHuang0516/EClaw/issues/2607)) ([166af87](https://github.com/HankHuang0516/EClaw/commit/166af8772b2121a24aaf34a83b3de970e9b3b571)), closes [#2606](https://github.com/HankHuang0516/EClaw/issues/2606)
* **i18n:** zh-TW backfill 8 keys (soft-pause + chat + invite + wallet) ([#2815](https://github.com/HankHuang0516/EClaw/issues/2815)) ([a2dd574](https://github.com/HankHuang0516/EClaw/commit/a2dd5743ce8d43a4b6ace9a2fd4b52568180d6c5))


### Performance Improvements

* **mindmap:** force-graph hardening for 1000/2000-node graphs ([#2684](https://github.com/HankHuang0516/EClaw/issues/2684)) ([da8b1c8](https://github.com/HankHuang0516/EClaw/commit/da8b1c8f947ab8bc8fa455c1962a91146623a1fc))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-16)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **notifications:** add kanban_done + kanban_done_auto toggles to Android Settings ([#2636](https://github.com/HankHuang0516/EClaw/issues/2636)) ([a710909](https://github.com/HankHuang0516/EClaw/commit/a7109095e3393b8564e7ef1b23d382a4fbb944b8))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **chat:** atomic-load target bar (await contacts before first render) ([#2831](https://github.com/HankHuang0516/EClaw/issues/2831)) ([5f529e6](https://github.com/HankHuang0516/EClaw/commit/5f529e6b772eacc38ba1de69b44258a05f0d816a)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2](https://github.com/HankHuang0516/EClaw/issues/2)
* **i18n:** clear batch 1 residual missing keys ([#2790](https://github.com/HankHuang0516/EClaw/issues/2790)) ([211030e](https://github.com/HankHuang0516/EClaw/commit/211030e0b0b6a865c11f0c4ed60dc4e356d43b7a))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **kanban:** comment input no longer overlaps last comment in card detail (PR [#2678](https://github.com/HankHuang0516/EClaw/issues/2678)) ([fba91fc](https://github.com/HankHuang0516/EClaw/commit/fba91fca15402b453a0db5ee857c0b16e6087055))
* **chat:** compact 20px avatar in target bar (App WebView only shows [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2](https://github.com/HankHuang0516/EClaw/issues/2)) ([#2830](https://github.com/HankHuang0516/EClaw/issues/2830)) ([42c7543](https://github.com/HankHuang0516/EClaw/commit/42c7543b4a78a7abf3f5f7535eb9bc6142cd0fe2)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **i18n:** cover dynamic portal wrapper keys ([#2807](https://github.com/HankHuang0516/EClaw/issues/2807)) ([4c711cc](https://github.com/HankHuang0516/EClaw/commit/4c711cc4009300ffe4e8933a98ee01cd0fdd6aeb))
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **petdx:** drop dark-grey loading placeholder + preload sprite WEBP ([#2628](https://github.com/HankHuang0516/EClaw/issues/2628)) ([59cef38](https://github.com/HankHuang0516/EClaw/commit/59cef387bd69ca99d7d15c86a1364856d3849ad8)), closes [#1a1a1a](https://github.com/HankHuang0516/EClaw/issues/1a1a1a)
* **security:** escape innerHTML in chat modal error messages ([#2819](https://github.com/HankHuang0516/EClaw/issues/2819)) ([dce07ad](https://github.com/HankHuang0516/EClaw/commit/dce07adde64795916dba977ae23e46f3371ce7ed)), closes [#2809](https://github.com/HankHuang0516/EClaw/issues/2809) [#2810](https://github.com/HankHuang0516/EClaw/issues/2810) [#2809](https://github.com/HankHuang0516/EClaw/issues/2809) [#2810](https://github.com/HankHuang0516/EClaw/issues/2810)
* **entities:** expose botSecret to owner so wallpaper service can poll companions ([#2615](https://github.com/HankHuang0516/EClaw/issues/2615)) ([04470fc](https://github.com/HankHuang0516/EClaw/commit/04470fce8f8c3fce2b1ba8b243e776606f107502))
* **rental:** expose owner_public_code in marketplace so plaza CTA can route ([#2616](https://github.com/HankHuang0516/EClaw/issues/2616)) ([4d1372f](https://github.com/HankHuang0516/EClaw/commit/4d1372f717d93cab65543e87c852e74e9fb67071)), closes [#2610](https://github.com/HankHuang0516/EClaw/issues/2610)
* **mindmap:** fallback to device scope when entityId is null ([#2728](https://github.com/HankHuang0516/EClaw/issues/2728)) ([7572312](https://github.com/HankHuang0516/EClaw/commit/7572312433d3d75fc245eda48a28919ce14bd927))
* **i18n:** fill Spanish drift keys ([#2751](https://github.com/HankHuang0516/EClaw/issues/2751)) ([0ad0ee5](https://github.com/HankHuang0516/EClaw/commit/0ad0ee55f7fac3e6ac46d891539950dab4d553cc))
* **portal:** fit embedded org chart to mobile viewport ([#2674](https://github.com/HankHuang0516/EClaw/issues/2674)) ([1c4e1b4](https://github.com/HankHuang0516/EClaw/commit/1c4e1b413ea7027b4cd4b8ecda981b0d0e12e66b))
* **i18n:** fix 6 trailing-comma syntax errors in 10-locale batch ([#2771](https://github.com/HankHuang0516/EClaw/issues/2771)) ([b27c6ca](https://github.com/HankHuang0516/EClaw/commit/b27c6ca204bf813e406c54ce3a2532a5f1f031b3))
* **kanban:** GET card returns latest 50 comments + comments endpoint exposes total ([#2816](https://github.com/HankHuang0516/EClaw/issues/2816)) ([c4d83f7](https://github.com/HankHuang0516/EClaw/commit/c4d83f777a1cd26aea0936e4316aa35c52822eef))
* **uiux:** harden chat previews and roster preview ([#2769](https://github.com/HankHuang0516/EClaw/issues/2769)) ([466d4d3](https://github.com/HankHuang0516/EClaw/commit/466d4d3ef81c628d3f58db64323946053d7bf61c))
* **mention-parser:** ignore @-mentions inside markdown code spans ([#2645](https://github.com/HankHuang0516/EClaw/issues/2645)) ([8da19d4](https://github.com/HankHuang0516/EClaw/commit/8da19d4a79ceb4152bf2144ee0847c61ce3e1def)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **kanban:** lazy-load dependency chips via IntersectionObserver ([#2632](https://github.com/HankHuang0516/EClaw/issues/2632)) ([20586b4](https://github.com/HankHuang0516/EClaw/commit/20586b43357335f9eb6a190c02d58c8e36b58aba)), closes [#2631](https://github.com/HankHuang0516/EClaw/issues/2631)
* **kanban:** make card sorting deterministic ([#2756](https://github.com/HankHuang0516/EClaw/issues/2756)) ([48e2117](https://github.com/HankHuang0516/EClaw/commit/48e2117b64e37f05dc635e0a3b67bfd43cbe48f5))
* **org-chart:** notify affected bots on hierarchy change ([#2812](https://github.com/HankHuang0516/EClaw/issues/2812)) ([55675fd](https://github.com/HankHuang0516/EClaw/commit/55675fdf4487494d729a29524b32bd81b756a00c)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** notify reviewer on manual /move → review ([#2753](https://github.com/HankHuang0516/EClaw/issues/2753)) ([6cbbb4e](https://github.com/HankHuang0516/EClaw/commit/6cbbb4ee8c0d4d8ad54df2e9b5faaa3699bd530f))
* **wallpaper:** off-load spritesheet fetch to IO so per-petdx sprites actually render ([#2618](https://github.com/HankHuang0516/EClaw/issues/2618)) ([61b832c](https://github.com/HankHuang0516/EClaw/commit/61b832c9fa8a1d0caab810ccc942d85c63349267)), closes [#2615](https://github.com/HankHuang0516/EClaw/issues/2615) [#2577](https://github.com/HankHuang0516/EClaw/issues/2577)
* **security:** patch P0 sanitize-html XSS + P1 protobufjs + exam.html XSS ([#2829](https://github.com/HankHuang0516/EClaw/issues/2829)) ([c71b871](https://github.com/HankHuang0516/EClaw/commit/c71b871a045887375dd0d26d1a3280a0891a89ad))
* **portal:** petdx-browser cookie-session fallback for device-login ([#2757](https://github.com/HankHuang0516/EClaw/issues/2757)) ([ca275f4](https://github.com/HankHuang0516/EClaw/commit/ca275f4519835da0c7ad71c588908a18f6f138d8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **api:** platform-stats 500 + entity/lookup publicCode alias ([#2809](https://github.com/HankHuang0516/EClaw/issues/2809), [#2810](https://github.com/HankHuang0516/EClaw/issues/2810)) ([#2818](https://github.com/HankHuang0516/EClaw/issues/2818)) ([f99fd17](https://github.com/HankHuang0516/EClaw/commit/f99fd17b2b1c32d88daa2510ff66d714c1a53edc))
* **i18n:** positional format specifiers for feedback_result_logs (7 locales) ([#2597](https://github.com/HankHuang0516/EClaw/issues/2597)) ([21aedc7](https://github.com/HankHuang0516/EClaw/commit/21aedc7eebc7a2839e340136f38dfdfd4dabb9dc))
* **avatar-petdx:** preserve descriptor across transient API failures (flicker) ([#2625](https://github.com/HankHuang0516/EClaw/issues/2625)) ([7b1c606](https://github.com/HankHuang0516/EClaw/commit/7b1c606514f7698d72ec95cf6c556e4043966186))
* **chat:** preserve scroll anchor while reading history ([#2693](https://github.com/HankHuang0516/EClaw/issues/2693)) ([945fdb7](https://github.com/HankHuang0516/EClaw/commit/945fdb7192b791b31882e1e75568dd8b11e4686f))
* **promo:** pull video embed from /promo-chat-avatar.html ([#2724](https://github.com/HankHuang0516/EClaw/issues/2724)) ([2afabc8](https://github.com/HankHuang0516/EClaw/commit/2afabc8c5ff8b25218a7cb857e8adfa572c8e9d5))
* **kanban:** realign stale recurring schedules ([#2785](https://github.com/HankHuang0516/EClaw/issues/2785)) ([ab8ee25](https://github.com/HankHuang0516/EClaw/commit/ab8ee250a9b37f3d3e838bb01d8866c8d2b78231))
* **portal:** reduce QA-discovered request fanout ([#2656](https://github.com/HankHuang0516/EClaw/issues/2656)) ([1e46d6b](https://github.com/HankHuang0516/EClaw/commit/1e46d6bab61e58c65b452b6503d953f8dddeee75))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **portal:** remove org chart fit scale floor ([#2676](https://github.com/HankHuang0516/EClaw/issues/2676)) ([0f01606](https://github.com/HankHuang0516/EClaw/commit/0f016068b963bb5f800a02f28817c7174979d913))
* **i18n:** rename mm_empty_title → mm_state_empty_title in mindmap.html ([#2683](https://github.com/HankHuang0516/EClaw/issues/2683)) ([c79c109](https://github.com/HankHuang0516/EClaw/commit/c79c109bea23142e8a6d9ace976d105af1280ec9))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **chat:** render mention avatars with companion renderer ([#2633](https://github.com/HankHuang0516/EClaw/issues/2633)) ([03e205f](https://github.com/HankHuang0516/EClaw/commit/03e205f663ecd2c2f443d4009dd5af0093f0bbbb))
* **kanban:** reserve mobile comments panel height ([#2782](https://github.com/HankHuang0516/EClaw/issues/2782)) ([ce8662d](https://github.com/HankHuang0516/EClaw/commit/ce8662d362422fdd25037f1deb61dbed9425e2f9))
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* scheduled audit 2026-05-13 — 6 bugs, XSS, i18n ([#2668](https://github.com/HankHuang0516/EClaw/issues/2668)) ([21dd513](https://github.com/HankHuang0516/EClaw/commit/21dd513b4464738de29164265437435ba6cc4817)), closes [#2605](https://github.com/HankHuang0516/EClaw/issues/2605) [#2608](https://github.com/HankHuang0516/EClaw/issues/2608) [#2600](https://github.com/HankHuang0516/EClaw/issues/2600) [#2599](https://github.com/HankHuang0516/EClaw/issues/2599) [#2598](https://github.com/HankHuang0516/EClaw/issues/2598)
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **chat:** smart-chip preview falls back to inline c.comments when /comments fails (PR [#2677](https://github.com/HankHuang0516/EClaw/issues/2677)) ([7f4dffd](https://github.com/HankHuang0516/EClaw/commit/7f4dffd2c83ea86f296b8fa0610f0e67c9f1af11))
* **kanban:** stabilize comment detail viewport ([#2796](https://github.com/HankHuang0516/EClaw/issues/2796)) ([0a10aad](https://github.com/HankHuang0516/EClaw/commit/0a10aadb5a5b12ff23454c16d5c88183b94ad7d7))
* **wallpaper:** stop Android live wallpaper flashing default lobster on companion change ([#2629](https://github.com/HankHuang0516/EClaw/issues/2629)) ([8b4f66f](https://github.com/HankHuang0516/EClaw/commit/8b4f66fcb335bf43128f924b761b6337c817095b)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **app:** WebView pages honor app-selected locale via ?lang= URL param ([#2672](https://github.com/HankHuang0516/EClaw/issues/2672)) ([8ed8757](https://github.com/HankHuang0516/EClaw/commit/8ed8757aec5bf214e837cc0d81bf2b23f1993a91)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* **community:** 1-click chat button on bot cards + utm tagging ([#2610](https://github.com/HankHuang0516/EClaw/issues/2610)) ([eee97b0](https://github.com/HankHuang0516/EClaw/commit/eee97b0e2e4e74945ec24f218a69a52800b97a66))
* **chat:** add avatar size preference ([#2714](https://github.com/HankHuang0516/EClaw/issues/2714)) ([6fe164a](https://github.com/HankHuang0516/EClaw/commit/6fe164ad8b22fa576d2dd9ad37c0d9fc295b5a83))
* **dashboard:** add Claude and Codex channel guides ([#2640](https://github.com/HankHuang0516/EClaw/issues/2640)) ([c64e4c4](https://github.com/HankHuang0516/EClaw/commit/c64e4c4afc78db58c5cd578f00486dd7b2fd3311))
* **dashboard:** add Claude Code channel guide card ([#2667](https://github.com/HankHuang0516/EClaw/issues/2667)) ([d70d75c](https://github.com/HankHuang0516/EClaw/commit/d70d75c0c8caa8a540358a9aab4556b8c1927a5c))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* **kanban:** add device-scoped card tags ([#2773](https://github.com/HankHuang0516/EClaw/issues/2773)) ([53a387e](https://github.com/HankHuang0516/EClaw/commit/53a387e67ba7bb4f6bed1c427000c4ae8666577a))
* **portal:** add entity selector to petdx-browser ([#2602](https://github.com/HankHuang0516/EClaw/issues/2602)) ([3fa067e](https://github.com/HankHuang0516/EClaw/commit/3fa067e00b38829b48a37cecd33ee81a9a1122d9))
* **kanban:** add explicit card links ([#2721](https://github.com/HankHuang0516/EClaw/issues/2721)) ([ef9f812](https://github.com/HankHuang0516/EClaw/commit/ef9f812a3fcf39efd07fd158ce90951bdd045ac7))
* **kanban:** add explicit done-card reopen flow ([#2801](https://github.com/HankHuang0516/EClaw/issues/2801)) ([5080aac](https://github.com/HankHuang0516/EClaw/commit/5080aacb75047c0deaa379ee708ec85465afd57c))
* **mindmap:** add GET /api/mindmap/graph force-graph projection ([#2680](https://github.com/HankHuang0516/EClaw/issues/2680)) ([a00b2e7](https://github.com/HankHuang0516/EClaw/commit/a00b2e775af2c4c98cd157f760ad87aeeee469f0)), closes [#2679](https://github.com/HankHuang0516/EClaw/issues/2679) [#2679](https://github.com/HankHuang0516/EClaw/issues/2679)
* **dashboard:** add Hermes channel promo card ([#2708](https://github.com/HankHuang0516/EClaw/issues/2708)) ([337aca1](https://github.com/HankHuang0516/EClaw/commit/337aca153d5a1cd7e888c065f00ae54db7872d91))
* **rental:** add listing soft pause ([#2781](https://github.com/HankHuang0516/EClaw/issues/2781)) ([6586b72](https://github.com/HankHuang0516/EClaw/commit/6586b72717ddb1637d91cd3242c8d2ff554f62b4))
* **portal:** add Nagoya 5D4N trip static cross-ref page ([#2689](https://github.com/HankHuang0516/EClaw/issues/2689)) ([2e0efb6](https://github.com/HankHuang0516/EClaw/commit/2e0efb6dcdaff52226cc8854a96747000b12bdff))
* **portal:** add Nagoya trip map links and image lightbox ([#2821](https://github.com/HankHuang0516/EClaw/issues/2821)) ([3e40955](https://github.com/HankHuang0516/EClaw/commit/3e40955650a05f45a6b9f7e39e73847705424a03))
* **portal/nagoya:** add parking shortcut buttons next to itinerary places ([#2826](https://github.com/HankHuang0516/EClaw/issues/2826)) ([63968c5](https://github.com/HankHuang0516/EClaw/commit/63968c554d046afc8d978de74e3aacbf7700500d))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **settings:** add rental roster management preview ([#2758](https://github.com/HankHuang0516/EClaw/issues/2758)) ([9706e59](https://github.com/HankHuang0516/EClaw/commit/9706e59ded140a90a6e02348124282bc69d89001))
* **rental:** add renter health chat indicator ([#2690](https://github.com/HankHuang0516/EClaw/issues/2690)) ([36cd2e9](https://github.com/HankHuang0516/EClaw/commit/36cd2e9802be4c7ebb03d3024617fa74aca48ffd))
* **ios:** add Tutorial & Intro entry in Settings ([#2800](https://github.com/HankHuang0516/EClaw/issues/2800)) ([ed83e51](https://github.com/HankHuang0516/EClaw/commit/ed83e51d043bf4cd5865f38dc95a91ed54820d6c))
* **landing:** add Watch Full Demo CTA below hero video ([#2799](https://github.com/HankHuang0516/EClaw/issues/2799)) ([66107c9](https://github.com/HankHuang0516/EClaw/commit/66107c954727551fd34d989a4674daaad9b63968))
* **footer:** add Watch Intro Video link in Info column ([#2798](https://github.com/HankHuang0516/EClaw/issues/2798)) ([d7c6d59](https://github.com/HankHuang0516/EClaw/commit/d7c6d596b69c6a5b257bf1f7a792a407ef9712ad))
* **companion:** bridge crafter-station/petdex gallery (1784 pets) ([#2601](https://github.com/HankHuang0516/EClaw/issues/2601)) ([2e245be](https://github.com/HankHuang0516/EClaw/commit/2e245bea6dd47ea7361b927d389188a3c23b6bb3))
* **promo:** chat avatar size feature landing page (self-hosted MP4) ([#2722](https://github.com/HankHuang0516/EClaw/issues/2722)) ([3852210](https://github.com/HankHuang0516/EClaw/commit/3852210d355704d018e3daca6b5f9512a011b210)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **kanban:** cron-spawn jitter + lane backpressure to prevent same-tick wedge ([#2791](https://github.com/HankHuang0516/EClaw/issues/2791)) ([9f414a7](https://github.com/HankHuang0516/EClaw/commit/9f414a731d6393672a0a4189c7b408c529ae5e12)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **promo:** embed daily eclaw video 2026-05-14 ([#2786](https://github.com/HankHuang0516/EClaw/issues/2786)) ([718a814](https://github.com/HankHuang0516/EClaw/commit/718a814ab16850bc2b33a1b303841e2c4378ecfa)), closes [#2782](https://github.com/HankHuang0516/EClaw/issues/2782) [#2693](https://github.com/HankHuang0516/EClaw/issues/2693)
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **info:** embed promo video at top of Quick Start tab ([#2797](https://github.com/HankHuang0516/EClaw/issues/2797)) ([047679f](https://github.com/HankHuang0516/EClaw/commit/047679fd57ab9949eaeacea414d5611e71afe041))
* **rental:** enforce strict rebind refunds ([#2703](https://github.com/HankHuang0516/EClaw/issues/2703)) ([a1859c5](https://github.com/HankHuang0516/EClaw/commit/a1859c50e6fb3991d7a8051491502d824a14a116))
* **portal:** group task chip actions ([#2825](https://github.com/HankHuang0516/EClaw/issues/2825)) ([5db5c59](https://github.com/HankHuang0516/EClaw/commit/5db5c59b32b8635f1412205faf0c2f9164d3d5d4))
* **portal:** info-guide-rules + info-guide-soul slide pair ([#2793](https://github.com/HankHuang0516/EClaw/issues/2793)) ([1c8bddc](https://github.com/HankHuang0516/EClaw/commit/1c8bddc4c185054b2b60088498e3d45509117127)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **chat:** link card previews to kanban ([#2754](https://github.com/HankHuang0516/EClaw/issues/2754)) ([2261240](https://github.com/HankHuang0516/EClaw/commit/22612402c2e95efb07246629e81a849be41ee9c7))
* **mission:** link notes to kanban cards ([#2723](https://github.com/HankHuang0516/EClaw/issues/2723)) ([b36dc18](https://github.com/HankHuang0516/EClaw/commit/b36dc18f3a8facf12e0b6046351c222f1e99dc55))
* **mindmap:** mission.html link to /portal/mindmap.html + deprecate /api/mission/mindmap ([#2685](https://github.com/HankHuang0516/EClaw/issues/2685)) ([11e297b](https://github.com/HankHuang0516/EClaw/commit/11e297bab1c9b56fcde3027d6500b7c58891bf18)), closes [#2680](https://github.com/HankHuang0516/EClaw/issues/2680) [#2684](https://github.com/HankHuang0516/EClaw/issues/2684)
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **avatar:** petdx render on card-holder my-cards (Phase 1b) ([#2621](https://github.com/HankHuang0516/EClaw/issues/2621)) ([f78ba8b](https://github.com/HankHuang0516/EClaw/commit/f78ba8b18acc426936ab6d8a82ca7541effea00d))
* **avatar:** petdx render on dashboard entity grid / org chart / bindings (Phase 1b) ([#2622](https://github.com/HankHuang0516/EClaw/issues/2622)) ([f417749](https://github.com/HankHuang0516/EClaw/commit/f41774914451048e8cd76e9ae30416a0642e173b)), closes [#2620](https://github.com/HankHuang0516/EClaw/issues/2620) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621)
* **avatar:** petdx render on kanban auto-assign / pulse / comment avatars (Phase 1b) ([#2624](https://github.com/HankHuang0516/EClaw/issues/2624)) ([6bff5f8](https://github.com/HankHuang0516/EClaw/commit/6bff5f80440d0bd91a6b1721cde9478d685c4d46))
* **avatar:** petdx render on mission skill/rule/soul entity dialogs (Phase 1b) ([#2623](https://github.com/HankHuang0516/EClaw/issues/2623)) ([129327b](https://github.com/HankHuang0516/EClaw/commit/129327bc7b91056659f1ab7e8d5e3f5260d951fb))
* **mindmap:** portal/mindmap.html force-graph prototype ([#129](https://github.com/HankHuang0516/EClaw/issues/129)) ([#2681](https://github.com/HankHuang0516/EClaw/issues/2681)) ([0f15e69](https://github.com/HankHuang0516/EClaw/commit/0f15e6930f0697c37fa08f3219edb8f9e499837f)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **portal:** redo nagoya trip page in professional tour-guide style ([#2691](https://github.com/HankHuang0516/EClaw/issues/2691)) ([b2378c0](https://github.com/HankHuang0516/EClaw/commit/b2378c06ee20fa9cccfdceceb1a4c9e0b3072f59))
* **avatar:** render selected petdx companion in chat avatars ([#2620](https://github.com/HankHuang0516/EClaw/issues/2620)) ([0bdd046](https://github.com/HankHuang0516/EClaw/commit/0bdd046fe1b1c428e32edda366ff112c08927f4c))
* **home:** replace native home with WebView hosting dashboard.html ([#2634](https://github.com/HankHuang0516/EClaw/issues/2634)) ([e69ea81](https://github.com/HankHuang0516/EClaw/commit/e69ea8160c239b083a83d6dc83a4f1c3f901c863))
* **app:** route chat mission jumps through native tabs ([#2824](https://github.com/HankHuang0516/EClaw/issues/2824)) ([deb07b6](https://github.com/HankHuang0516/EClaw/commit/deb07b69a9ecca632fe27278de537f1d85234e94))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **chat:** support message deep links ([#2719](https://github.com/HankHuang0516/EClaw/issues/2719)) ([2dc0f1e](https://github.com/HankHuang0516/EClaw/commit/2dc0f1eeb259e1a0848db4a03186b989372cd91c))
* **mission:** support note deep links ([#2717](https://github.com/HankHuang0516/EClaw/issues/2717)) ([2efd3a5](https://github.com/HankHuang0516/EClaw/commit/2efd3a5e741217a07c0b0ac54a0ddd010e0ebe23))
* **share-chat:** twitter card + per-bot og:image/twitter:* in SSR ([#2609](https://github.com/HankHuang0516/EClaw/issues/2609)) ([6cdc853](https://github.com/HankHuang0516/EClaw/commit/6cdc853dc884cdb95bd47214942768981f218ae0))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))
* **settings:** wire petdx avatar into channel-account chips ([#2626](https://github.com/HankHuang0516/EClaw/issues/2626)) ([88aec77](https://github.com/HankHuang0516/EClaw/commit/88aec772628c240e97b336bb5820892ad632d1ae))
* **files:** wire petdx avatar into entity filter & per-file badges ([#2627](https://github.com/HankHuang0516/EClaw/issues/2627)) ([5b3e5cc](https://github.com/HankHuang0516/EClaw/commit/5b3e5cc542d9da69bb4e92500fd03a542ea33f00))
* **mindmap:** wrap hardcoded zh-TW UI strings with i18n t() ([#2607](https://github.com/HankHuang0516/EClaw/issues/2607)) ([166af87](https://github.com/HankHuang0516/EClaw/commit/166af8772b2121a24aaf34a83b3de970e9b3b571)), closes [#2606](https://github.com/HankHuang0516/EClaw/issues/2606)
* **i18n:** zh-TW backfill 8 keys (soft-pause + chat + invite + wallet) ([#2815](https://github.com/HankHuang0516/EClaw/issues/2815)) ([a2dd574](https://github.com/HankHuang0516/EClaw/commit/a2dd5743ce8d43a4b6ace9a2fd4b52568180d6c5))


### Performance Improvements

* **mindmap:** force-graph hardening for 1000/2000-node graphs ([#2684](https://github.com/HankHuang0516/EClaw/issues/2684)) ([da8b1c8](https://github.com/HankHuang0516/EClaw/commit/da8b1c8f947ab8bc8fa455c1962a91146623a1fc))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-16)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **notifications:** add kanban_done + kanban_done_auto toggles to Android Settings ([#2636](https://github.com/HankHuang0516/EClaw/issues/2636)) ([a710909](https://github.com/HankHuang0516/EClaw/commit/a7109095e3393b8564e7ef1b23d382a4fbb944b8))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **i18n:** clear batch 1 residual missing keys ([#2790](https://github.com/HankHuang0516/EClaw/issues/2790)) ([211030e](https://github.com/HankHuang0516/EClaw/commit/211030e0b0b6a865c11f0c4ed60dc4e356d43b7a))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **kanban:** comment input no longer overlaps last comment in card detail (PR [#2678](https://github.com/HankHuang0516/EClaw/issues/2678)) ([fba91fc](https://github.com/HankHuang0516/EClaw/commit/fba91fca15402b453a0db5ee857c0b16e6087055))
* **chat:** compact 20px avatar in target bar (App WebView only shows [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2](https://github.com/HankHuang0516/EClaw/issues/2)) ([#2830](https://github.com/HankHuang0516/EClaw/issues/2830)) ([42c7543](https://github.com/HankHuang0516/EClaw/commit/42c7543b4a78a7abf3f5f7535eb9bc6142cd0fe2)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **i18n:** cover dynamic portal wrapper keys ([#2807](https://github.com/HankHuang0516/EClaw/issues/2807)) ([4c711cc](https://github.com/HankHuang0516/EClaw/commit/4c711cc4009300ffe4e8933a98ee01cd0fdd6aeb))
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **petdx:** drop dark-grey loading placeholder + preload sprite WEBP ([#2628](https://github.com/HankHuang0516/EClaw/issues/2628)) ([59cef38](https://github.com/HankHuang0516/EClaw/commit/59cef387bd69ca99d7d15c86a1364856d3849ad8)), closes [#1a1a1a](https://github.com/HankHuang0516/EClaw/issues/1a1a1a)
* **security:** escape innerHTML in chat modal error messages ([#2819](https://github.com/HankHuang0516/EClaw/issues/2819)) ([dce07ad](https://github.com/HankHuang0516/EClaw/commit/dce07adde64795916dba977ae23e46f3371ce7ed)), closes [#2809](https://github.com/HankHuang0516/EClaw/issues/2809) [#2810](https://github.com/HankHuang0516/EClaw/issues/2810) [#2809](https://github.com/HankHuang0516/EClaw/issues/2809) [#2810](https://github.com/HankHuang0516/EClaw/issues/2810)
* **entities:** expose botSecret to owner so wallpaper service can poll companions ([#2615](https://github.com/HankHuang0516/EClaw/issues/2615)) ([04470fc](https://github.com/HankHuang0516/EClaw/commit/04470fce8f8c3fce2b1ba8b243e776606f107502))
* **rental:** expose owner_public_code in marketplace so plaza CTA can route ([#2616](https://github.com/HankHuang0516/EClaw/issues/2616)) ([4d1372f](https://github.com/HankHuang0516/EClaw/commit/4d1372f717d93cab65543e87c852e74e9fb67071)), closes [#2610](https://github.com/HankHuang0516/EClaw/issues/2610)
* **mindmap:** fallback to device scope when entityId is null ([#2728](https://github.com/HankHuang0516/EClaw/issues/2728)) ([7572312](https://github.com/HankHuang0516/EClaw/commit/7572312433d3d75fc245eda48a28919ce14bd927))
* **i18n:** fill Spanish drift keys ([#2751](https://github.com/HankHuang0516/EClaw/issues/2751)) ([0ad0ee5](https://github.com/HankHuang0516/EClaw/commit/0ad0ee55f7fac3e6ac46d891539950dab4d553cc))
* **portal:** fit embedded org chart to mobile viewport ([#2674](https://github.com/HankHuang0516/EClaw/issues/2674)) ([1c4e1b4](https://github.com/HankHuang0516/EClaw/commit/1c4e1b413ea7027b4cd4b8ecda981b0d0e12e66b))
* **i18n:** fix 6 trailing-comma syntax errors in 10-locale batch ([#2771](https://github.com/HankHuang0516/EClaw/issues/2771)) ([b27c6ca](https://github.com/HankHuang0516/EClaw/commit/b27c6ca204bf813e406c54ce3a2532a5f1f031b3))
* **kanban:** GET card returns latest 50 comments + comments endpoint exposes total ([#2816](https://github.com/HankHuang0516/EClaw/issues/2816)) ([c4d83f7](https://github.com/HankHuang0516/EClaw/commit/c4d83f777a1cd26aea0936e4316aa35c52822eef))
* **uiux:** harden chat previews and roster preview ([#2769](https://github.com/HankHuang0516/EClaw/issues/2769)) ([466d4d3](https://github.com/HankHuang0516/EClaw/commit/466d4d3ef81c628d3f58db64323946053d7bf61c))
* **mention-parser:** ignore @-mentions inside markdown code spans ([#2645](https://github.com/HankHuang0516/EClaw/issues/2645)) ([8da19d4](https://github.com/HankHuang0516/EClaw/commit/8da19d4a79ceb4152bf2144ee0847c61ce3e1def)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **kanban:** lazy-load dependency chips via IntersectionObserver ([#2632](https://github.com/HankHuang0516/EClaw/issues/2632)) ([20586b4](https://github.com/HankHuang0516/EClaw/commit/20586b43357335f9eb6a190c02d58c8e36b58aba)), closes [#2631](https://github.com/HankHuang0516/EClaw/issues/2631)
* **kanban:** make card sorting deterministic ([#2756](https://github.com/HankHuang0516/EClaw/issues/2756)) ([48e2117](https://github.com/HankHuang0516/EClaw/commit/48e2117b64e37f05dc635e0a3b67bfd43cbe48f5))
* **org-chart:** notify affected bots on hierarchy change ([#2812](https://github.com/HankHuang0516/EClaw/issues/2812)) ([55675fd](https://github.com/HankHuang0516/EClaw/commit/55675fdf4487494d729a29524b32bd81b756a00c)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** notify reviewer on manual /move → review ([#2753](https://github.com/HankHuang0516/EClaw/issues/2753)) ([6cbbb4e](https://github.com/HankHuang0516/EClaw/commit/6cbbb4ee8c0d4d8ad54df2e9b5faaa3699bd530f))
* **wallpaper:** off-load spritesheet fetch to IO so per-petdx sprites actually render ([#2618](https://github.com/HankHuang0516/EClaw/issues/2618)) ([61b832c](https://github.com/HankHuang0516/EClaw/commit/61b832c9fa8a1d0caab810ccc942d85c63349267)), closes [#2615](https://github.com/HankHuang0516/EClaw/issues/2615) [#2577](https://github.com/HankHuang0516/EClaw/issues/2577)
* **security:** patch P0 sanitize-html XSS + P1 protobufjs + exam.html XSS ([#2829](https://github.com/HankHuang0516/EClaw/issues/2829)) ([c71b871](https://github.com/HankHuang0516/EClaw/commit/c71b871a045887375dd0d26d1a3280a0891a89ad))
* **portal:** petdx-browser cookie-session fallback for device-login ([#2757](https://github.com/HankHuang0516/EClaw/issues/2757)) ([ca275f4](https://github.com/HankHuang0516/EClaw/commit/ca275f4519835da0c7ad71c588908a18f6f138d8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **api:** platform-stats 500 + entity/lookup publicCode alias ([#2809](https://github.com/HankHuang0516/EClaw/issues/2809), [#2810](https://github.com/HankHuang0516/EClaw/issues/2810)) ([#2818](https://github.com/HankHuang0516/EClaw/issues/2818)) ([f99fd17](https://github.com/HankHuang0516/EClaw/commit/f99fd17b2b1c32d88daa2510ff66d714c1a53edc))
* **i18n:** positional format specifiers for feedback_result_logs (7 locales) ([#2597](https://github.com/HankHuang0516/EClaw/issues/2597)) ([21aedc7](https://github.com/HankHuang0516/EClaw/commit/21aedc7eebc7a2839e340136f38dfdfd4dabb9dc))
* **avatar-petdx:** preserve descriptor across transient API failures (flicker) ([#2625](https://github.com/HankHuang0516/EClaw/issues/2625)) ([7b1c606](https://github.com/HankHuang0516/EClaw/commit/7b1c606514f7698d72ec95cf6c556e4043966186))
* **chat:** preserve scroll anchor while reading history ([#2693](https://github.com/HankHuang0516/EClaw/issues/2693)) ([945fdb7](https://github.com/HankHuang0516/EClaw/commit/945fdb7192b791b31882e1e75568dd8b11e4686f))
* **promo:** pull video embed from /promo-chat-avatar.html ([#2724](https://github.com/HankHuang0516/EClaw/issues/2724)) ([2afabc8](https://github.com/HankHuang0516/EClaw/commit/2afabc8c5ff8b25218a7cb857e8adfa572c8e9d5))
* **kanban:** realign stale recurring schedules ([#2785](https://github.com/HankHuang0516/EClaw/issues/2785)) ([ab8ee25](https://github.com/HankHuang0516/EClaw/commit/ab8ee250a9b37f3d3e838bb01d8866c8d2b78231))
* **portal:** reduce QA-discovered request fanout ([#2656](https://github.com/HankHuang0516/EClaw/issues/2656)) ([1e46d6b](https://github.com/HankHuang0516/EClaw/commit/1e46d6bab61e58c65b452b6503d953f8dddeee75))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **portal:** remove org chart fit scale floor ([#2676](https://github.com/HankHuang0516/EClaw/issues/2676)) ([0f01606](https://github.com/HankHuang0516/EClaw/commit/0f016068b963bb5f800a02f28817c7174979d913))
* **i18n:** rename mm_empty_title → mm_state_empty_title in mindmap.html ([#2683](https://github.com/HankHuang0516/EClaw/issues/2683)) ([c79c109](https://github.com/HankHuang0516/EClaw/commit/c79c109bea23142e8a6d9ace976d105af1280ec9))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **chat:** render mention avatars with companion renderer ([#2633](https://github.com/HankHuang0516/EClaw/issues/2633)) ([03e205f](https://github.com/HankHuang0516/EClaw/commit/03e205f663ecd2c2f443d4009dd5af0093f0bbbb))
* **kanban:** reserve mobile comments panel height ([#2782](https://github.com/HankHuang0516/EClaw/issues/2782)) ([ce8662d](https://github.com/HankHuang0516/EClaw/commit/ce8662d362422fdd25037f1deb61dbed9425e2f9))
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* scheduled audit 2026-05-13 — 6 bugs, XSS, i18n ([#2668](https://github.com/HankHuang0516/EClaw/issues/2668)) ([21dd513](https://github.com/HankHuang0516/EClaw/commit/21dd513b4464738de29164265437435ba6cc4817)), closes [#2605](https://github.com/HankHuang0516/EClaw/issues/2605) [#2608](https://github.com/HankHuang0516/EClaw/issues/2608) [#2600](https://github.com/HankHuang0516/EClaw/issues/2600) [#2599](https://github.com/HankHuang0516/EClaw/issues/2599) [#2598](https://github.com/HankHuang0516/EClaw/issues/2598)
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **chat:** smart-chip preview falls back to inline c.comments when /comments fails (PR [#2677](https://github.com/HankHuang0516/EClaw/issues/2677)) ([7f4dffd](https://github.com/HankHuang0516/EClaw/commit/7f4dffd2c83ea86f296b8fa0610f0e67c9f1af11))
* **kanban:** stabilize comment detail viewport ([#2796](https://github.com/HankHuang0516/EClaw/issues/2796)) ([0a10aad](https://github.com/HankHuang0516/EClaw/commit/0a10aadb5a5b12ff23454c16d5c88183b94ad7d7))
* **wallpaper:** stop Android live wallpaper flashing default lobster on companion change ([#2629](https://github.com/HankHuang0516/EClaw/issues/2629)) ([8b4f66f](https://github.com/HankHuang0516/EClaw/commit/8b4f66fcb335bf43128f924b761b6337c817095b)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **app:** WebView pages honor app-selected locale via ?lang= URL param ([#2672](https://github.com/HankHuang0516/EClaw/issues/2672)) ([8ed8757](https://github.com/HankHuang0516/EClaw/commit/8ed8757aec5bf214e837cc0d81bf2b23f1993a91)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* **community:** 1-click chat button on bot cards + utm tagging ([#2610](https://github.com/HankHuang0516/EClaw/issues/2610)) ([eee97b0](https://github.com/HankHuang0516/EClaw/commit/eee97b0e2e4e74945ec24f218a69a52800b97a66))
* **chat:** add avatar size preference ([#2714](https://github.com/HankHuang0516/EClaw/issues/2714)) ([6fe164a](https://github.com/HankHuang0516/EClaw/commit/6fe164ad8b22fa576d2dd9ad37c0d9fc295b5a83))
* **dashboard:** add Claude and Codex channel guides ([#2640](https://github.com/HankHuang0516/EClaw/issues/2640)) ([c64e4c4](https://github.com/HankHuang0516/EClaw/commit/c64e4c4afc78db58c5cd578f00486dd7b2fd3311))
* **dashboard:** add Claude Code channel guide card ([#2667](https://github.com/HankHuang0516/EClaw/issues/2667)) ([d70d75c](https://github.com/HankHuang0516/EClaw/commit/d70d75c0c8caa8a540358a9aab4556b8c1927a5c))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* **kanban:** add device-scoped card tags ([#2773](https://github.com/HankHuang0516/EClaw/issues/2773)) ([53a387e](https://github.com/HankHuang0516/EClaw/commit/53a387e67ba7bb4f6bed1c427000c4ae8666577a))
* **portal:** add entity selector to petdx-browser ([#2602](https://github.com/HankHuang0516/EClaw/issues/2602)) ([3fa067e](https://github.com/HankHuang0516/EClaw/commit/3fa067e00b38829b48a37cecd33ee81a9a1122d9))
* **kanban:** add explicit card links ([#2721](https://github.com/HankHuang0516/EClaw/issues/2721)) ([ef9f812](https://github.com/HankHuang0516/EClaw/commit/ef9f812a3fcf39efd07fd158ce90951bdd045ac7))
* **kanban:** add explicit done-card reopen flow ([#2801](https://github.com/HankHuang0516/EClaw/issues/2801)) ([5080aac](https://github.com/HankHuang0516/EClaw/commit/5080aacb75047c0deaa379ee708ec85465afd57c))
* **mindmap:** add GET /api/mindmap/graph force-graph projection ([#2680](https://github.com/HankHuang0516/EClaw/issues/2680)) ([a00b2e7](https://github.com/HankHuang0516/EClaw/commit/a00b2e775af2c4c98cd157f760ad87aeeee469f0)), closes [#2679](https://github.com/HankHuang0516/EClaw/issues/2679) [#2679](https://github.com/HankHuang0516/EClaw/issues/2679)
* **dashboard:** add Hermes channel promo card ([#2708](https://github.com/HankHuang0516/EClaw/issues/2708)) ([337aca1](https://github.com/HankHuang0516/EClaw/commit/337aca153d5a1cd7e888c065f00ae54db7872d91))
* **rental:** add listing soft pause ([#2781](https://github.com/HankHuang0516/EClaw/issues/2781)) ([6586b72](https://github.com/HankHuang0516/EClaw/commit/6586b72717ddb1637d91cd3242c8d2ff554f62b4))
* **portal:** add Nagoya 5D4N trip static cross-ref page ([#2689](https://github.com/HankHuang0516/EClaw/issues/2689)) ([2e0efb6](https://github.com/HankHuang0516/EClaw/commit/2e0efb6dcdaff52226cc8854a96747000b12bdff))
* **portal:** add Nagoya trip map links and image lightbox ([#2821](https://github.com/HankHuang0516/EClaw/issues/2821)) ([3e40955](https://github.com/HankHuang0516/EClaw/commit/3e40955650a05f45a6b9f7e39e73847705424a03))
* **portal/nagoya:** add parking shortcut buttons next to itinerary places ([#2826](https://github.com/HankHuang0516/EClaw/issues/2826)) ([63968c5](https://github.com/HankHuang0516/EClaw/commit/63968c554d046afc8d978de74e3aacbf7700500d))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **settings:** add rental roster management preview ([#2758](https://github.com/HankHuang0516/EClaw/issues/2758)) ([9706e59](https://github.com/HankHuang0516/EClaw/commit/9706e59ded140a90a6e02348124282bc69d89001))
* **rental:** add renter health chat indicator ([#2690](https://github.com/HankHuang0516/EClaw/issues/2690)) ([36cd2e9](https://github.com/HankHuang0516/EClaw/commit/36cd2e9802be4c7ebb03d3024617fa74aca48ffd))
* **ios:** add Tutorial & Intro entry in Settings ([#2800](https://github.com/HankHuang0516/EClaw/issues/2800)) ([ed83e51](https://github.com/HankHuang0516/EClaw/commit/ed83e51d043bf4cd5865f38dc95a91ed54820d6c))
* **landing:** add Watch Full Demo CTA below hero video ([#2799](https://github.com/HankHuang0516/EClaw/issues/2799)) ([66107c9](https://github.com/HankHuang0516/EClaw/commit/66107c954727551fd34d989a4674daaad9b63968))
* **footer:** add Watch Intro Video link in Info column ([#2798](https://github.com/HankHuang0516/EClaw/issues/2798)) ([d7c6d59](https://github.com/HankHuang0516/EClaw/commit/d7c6d596b69c6a5b257bf1f7a792a407ef9712ad))
* **companion:** bridge crafter-station/petdex gallery (1784 pets) ([#2601](https://github.com/HankHuang0516/EClaw/issues/2601)) ([2e245be](https://github.com/HankHuang0516/EClaw/commit/2e245bea6dd47ea7361b927d389188a3c23b6bb3))
* **promo:** chat avatar size feature landing page (self-hosted MP4) ([#2722](https://github.com/HankHuang0516/EClaw/issues/2722)) ([3852210](https://github.com/HankHuang0516/EClaw/commit/3852210d355704d018e3daca6b5f9512a011b210)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **kanban:** cron-spawn jitter + lane backpressure to prevent same-tick wedge ([#2791](https://github.com/HankHuang0516/EClaw/issues/2791)) ([9f414a7](https://github.com/HankHuang0516/EClaw/commit/9f414a731d6393672a0a4189c7b408c529ae5e12)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **promo:** embed daily eclaw video 2026-05-14 ([#2786](https://github.com/HankHuang0516/EClaw/issues/2786)) ([718a814](https://github.com/HankHuang0516/EClaw/commit/718a814ab16850bc2b33a1b303841e2c4378ecfa)), closes [#2782](https://github.com/HankHuang0516/EClaw/issues/2782) [#2693](https://github.com/HankHuang0516/EClaw/issues/2693)
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **info:** embed promo video at top of Quick Start tab ([#2797](https://github.com/HankHuang0516/EClaw/issues/2797)) ([047679f](https://github.com/HankHuang0516/EClaw/commit/047679fd57ab9949eaeacea414d5611e71afe041))
* **rental:** enforce strict rebind refunds ([#2703](https://github.com/HankHuang0516/EClaw/issues/2703)) ([a1859c5](https://github.com/HankHuang0516/EClaw/commit/a1859c50e6fb3991d7a8051491502d824a14a116))
* **portal:** group task chip actions ([#2825](https://github.com/HankHuang0516/EClaw/issues/2825)) ([5db5c59](https://github.com/HankHuang0516/EClaw/commit/5db5c59b32b8635f1412205faf0c2f9164d3d5d4))
* **portal:** info-guide-rules + info-guide-soul slide pair ([#2793](https://github.com/HankHuang0516/EClaw/issues/2793)) ([1c8bddc](https://github.com/HankHuang0516/EClaw/commit/1c8bddc4c185054b2b60088498e3d45509117127)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **chat:** link card previews to kanban ([#2754](https://github.com/HankHuang0516/EClaw/issues/2754)) ([2261240](https://github.com/HankHuang0516/EClaw/commit/22612402c2e95efb07246629e81a849be41ee9c7))
* **mission:** link notes to kanban cards ([#2723](https://github.com/HankHuang0516/EClaw/issues/2723)) ([b36dc18](https://github.com/HankHuang0516/EClaw/commit/b36dc18f3a8facf12e0b6046351c222f1e99dc55))
* **mindmap:** mission.html link to /portal/mindmap.html + deprecate /api/mission/mindmap ([#2685](https://github.com/HankHuang0516/EClaw/issues/2685)) ([11e297b](https://github.com/HankHuang0516/EClaw/commit/11e297bab1c9b56fcde3027d6500b7c58891bf18)), closes [#2680](https://github.com/HankHuang0516/EClaw/issues/2680) [#2684](https://github.com/HankHuang0516/EClaw/issues/2684)
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **avatar:** petdx render on card-holder my-cards (Phase 1b) ([#2621](https://github.com/HankHuang0516/EClaw/issues/2621)) ([f78ba8b](https://github.com/HankHuang0516/EClaw/commit/f78ba8b18acc426936ab6d8a82ca7541effea00d))
* **avatar:** petdx render on dashboard entity grid / org chart / bindings (Phase 1b) ([#2622](https://github.com/HankHuang0516/EClaw/issues/2622)) ([f417749](https://github.com/HankHuang0516/EClaw/commit/f41774914451048e8cd76e9ae30416a0642e173b)), closes [#2620](https://github.com/HankHuang0516/EClaw/issues/2620) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621)
* **avatar:** petdx render on kanban auto-assign / pulse / comment avatars (Phase 1b) ([#2624](https://github.com/HankHuang0516/EClaw/issues/2624)) ([6bff5f8](https://github.com/HankHuang0516/EClaw/commit/6bff5f80440d0bd91a6b1721cde9478d685c4d46))
* **avatar:** petdx render on mission skill/rule/soul entity dialogs (Phase 1b) ([#2623](https://github.com/HankHuang0516/EClaw/issues/2623)) ([129327b](https://github.com/HankHuang0516/EClaw/commit/129327bc7b91056659f1ab7e8d5e3f5260d951fb))
* **mindmap:** portal/mindmap.html force-graph prototype ([#129](https://github.com/HankHuang0516/EClaw/issues/129)) ([#2681](https://github.com/HankHuang0516/EClaw/issues/2681)) ([0f15e69](https://github.com/HankHuang0516/EClaw/commit/0f15e6930f0697c37fa08f3219edb8f9e499837f)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **portal:** redo nagoya trip page in professional tour-guide style ([#2691](https://github.com/HankHuang0516/EClaw/issues/2691)) ([b2378c0](https://github.com/HankHuang0516/EClaw/commit/b2378c06ee20fa9cccfdceceb1a4c9e0b3072f59))
* **avatar:** render selected petdx companion in chat avatars ([#2620](https://github.com/HankHuang0516/EClaw/issues/2620)) ([0bdd046](https://github.com/HankHuang0516/EClaw/commit/0bdd046fe1b1c428e32edda366ff112c08927f4c))
* **home:** replace native home with WebView hosting dashboard.html ([#2634](https://github.com/HankHuang0516/EClaw/issues/2634)) ([e69ea81](https://github.com/HankHuang0516/EClaw/commit/e69ea8160c239b083a83d6dc83a4f1c3f901c863))
* **app:** route chat mission jumps through native tabs ([#2824](https://github.com/HankHuang0516/EClaw/issues/2824)) ([deb07b6](https://github.com/HankHuang0516/EClaw/commit/deb07b69a9ecca632fe27278de537f1d85234e94))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **chat:** support message deep links ([#2719](https://github.com/HankHuang0516/EClaw/issues/2719)) ([2dc0f1e](https://github.com/HankHuang0516/EClaw/commit/2dc0f1eeb259e1a0848db4a03186b989372cd91c))
* **mission:** support note deep links ([#2717](https://github.com/HankHuang0516/EClaw/issues/2717)) ([2efd3a5](https://github.com/HankHuang0516/EClaw/commit/2efd3a5e741217a07c0b0ac54a0ddd010e0ebe23))
* **share-chat:** twitter card + per-bot og:image/twitter:* in SSR ([#2609](https://github.com/HankHuang0516/EClaw/issues/2609)) ([6cdc853](https://github.com/HankHuang0516/EClaw/commit/6cdc853dc884cdb95bd47214942768981f218ae0))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))
* **settings:** wire petdx avatar into channel-account chips ([#2626](https://github.com/HankHuang0516/EClaw/issues/2626)) ([88aec77](https://github.com/HankHuang0516/EClaw/commit/88aec772628c240e97b336bb5820892ad632d1ae))
* **files:** wire petdx avatar into entity filter & per-file badges ([#2627](https://github.com/HankHuang0516/EClaw/issues/2627)) ([5b3e5cc](https://github.com/HankHuang0516/EClaw/commit/5b3e5cc542d9da69bb4e92500fd03a542ea33f00))
* **mindmap:** wrap hardcoded zh-TW UI strings with i18n t() ([#2607](https://github.com/HankHuang0516/EClaw/issues/2607)) ([166af87](https://github.com/HankHuang0516/EClaw/commit/166af8772b2121a24aaf34a83b3de970e9b3b571)), closes [#2606](https://github.com/HankHuang0516/EClaw/issues/2606)
* **i18n:** zh-TW backfill 8 keys (soft-pause + chat + invite + wallet) ([#2815](https://github.com/HankHuang0516/EClaw/issues/2815)) ([a2dd574](https://github.com/HankHuang0516/EClaw/commit/a2dd5743ce8d43a4b6ace9a2fd4b52568180d6c5))


### Performance Improvements

* **mindmap:** force-graph hardening for 1000/2000-node graphs ([#2684](https://github.com/HankHuang0516/EClaw/issues/2684)) ([da8b1c8](https://github.com/HankHuang0516/EClaw/commit/da8b1c8f947ab8bc8fa455c1962a91146623a1fc))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-15)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **notifications:** add kanban_done + kanban_done_auto toggles to Android Settings ([#2636](https://github.com/HankHuang0516/EClaw/issues/2636)) ([a710909](https://github.com/HankHuang0516/EClaw/commit/a7109095e3393b8564e7ef1b23d382a4fbb944b8))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **i18n:** clear batch 1 residual missing keys ([#2790](https://github.com/HankHuang0516/EClaw/issues/2790)) ([211030e](https://github.com/HankHuang0516/EClaw/commit/211030e0b0b6a865c11f0c4ed60dc4e356d43b7a))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **kanban:** comment input no longer overlaps last comment in card detail (PR [#2678](https://github.com/HankHuang0516/EClaw/issues/2678)) ([fba91fc](https://github.com/HankHuang0516/EClaw/commit/fba91fca15402b453a0db5ee857c0b16e6087055))
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **i18n:** cover dynamic portal wrapper keys ([#2807](https://github.com/HankHuang0516/EClaw/issues/2807)) ([4c711cc](https://github.com/HankHuang0516/EClaw/commit/4c711cc4009300ffe4e8933a98ee01cd0fdd6aeb))
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **petdx:** drop dark-grey loading placeholder + preload sprite WEBP ([#2628](https://github.com/HankHuang0516/EClaw/issues/2628)) ([59cef38](https://github.com/HankHuang0516/EClaw/commit/59cef387bd69ca99d7d15c86a1364856d3849ad8)), closes [#1a1a1a](https://github.com/HankHuang0516/EClaw/issues/1a1a1a)
* **security:** escape innerHTML in chat modal error messages ([#2819](https://github.com/HankHuang0516/EClaw/issues/2819)) ([dce07ad](https://github.com/HankHuang0516/EClaw/commit/dce07adde64795916dba977ae23e46f3371ce7ed)), closes [#2809](https://github.com/HankHuang0516/EClaw/issues/2809) [#2810](https://github.com/HankHuang0516/EClaw/issues/2810) [#2809](https://github.com/HankHuang0516/EClaw/issues/2809) [#2810](https://github.com/HankHuang0516/EClaw/issues/2810)
* **entities:** expose botSecret to owner so wallpaper service can poll companions ([#2615](https://github.com/HankHuang0516/EClaw/issues/2615)) ([04470fc](https://github.com/HankHuang0516/EClaw/commit/04470fce8f8c3fce2b1ba8b243e776606f107502))
* **rental:** expose owner_public_code in marketplace so plaza CTA can route ([#2616](https://github.com/HankHuang0516/EClaw/issues/2616)) ([4d1372f](https://github.com/HankHuang0516/EClaw/commit/4d1372f717d93cab65543e87c852e74e9fb67071)), closes [#2610](https://github.com/HankHuang0516/EClaw/issues/2610)
* **mindmap:** fallback to device scope when entityId is null ([#2728](https://github.com/HankHuang0516/EClaw/issues/2728)) ([7572312](https://github.com/HankHuang0516/EClaw/commit/7572312433d3d75fc245eda48a28919ce14bd927))
* **i18n:** fill Spanish drift keys ([#2751](https://github.com/HankHuang0516/EClaw/issues/2751)) ([0ad0ee5](https://github.com/HankHuang0516/EClaw/commit/0ad0ee55f7fac3e6ac46d891539950dab4d553cc))
* **portal:** fit embedded org chart to mobile viewport ([#2674](https://github.com/HankHuang0516/EClaw/issues/2674)) ([1c4e1b4](https://github.com/HankHuang0516/EClaw/commit/1c4e1b413ea7027b4cd4b8ecda981b0d0e12e66b))
* **i18n:** fix 6 trailing-comma syntax errors in 10-locale batch ([#2771](https://github.com/HankHuang0516/EClaw/issues/2771)) ([b27c6ca](https://github.com/HankHuang0516/EClaw/commit/b27c6ca204bf813e406c54ce3a2532a5f1f031b3))
* **kanban:** GET card returns latest 50 comments + comments endpoint exposes total ([#2816](https://github.com/HankHuang0516/EClaw/issues/2816)) ([c4d83f7](https://github.com/HankHuang0516/EClaw/commit/c4d83f777a1cd26aea0936e4316aa35c52822eef))
* **uiux:** harden chat previews and roster preview ([#2769](https://github.com/HankHuang0516/EClaw/issues/2769)) ([466d4d3](https://github.com/HankHuang0516/EClaw/commit/466d4d3ef81c628d3f58db64323946053d7bf61c))
* **mention-parser:** ignore @-mentions inside markdown code spans ([#2645](https://github.com/HankHuang0516/EClaw/issues/2645)) ([8da19d4](https://github.com/HankHuang0516/EClaw/commit/8da19d4a79ceb4152bf2144ee0847c61ce3e1def)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **kanban:** lazy-load dependency chips via IntersectionObserver ([#2632](https://github.com/HankHuang0516/EClaw/issues/2632)) ([20586b4](https://github.com/HankHuang0516/EClaw/commit/20586b43357335f9eb6a190c02d58c8e36b58aba)), closes [#2631](https://github.com/HankHuang0516/EClaw/issues/2631)
* **kanban:** make card sorting deterministic ([#2756](https://github.com/HankHuang0516/EClaw/issues/2756)) ([48e2117](https://github.com/HankHuang0516/EClaw/commit/48e2117b64e37f05dc635e0a3b67bfd43cbe48f5))
* **org-chart:** notify affected bots on hierarchy change ([#2812](https://github.com/HankHuang0516/EClaw/issues/2812)) ([55675fd](https://github.com/HankHuang0516/EClaw/commit/55675fdf4487494d729a29524b32bd81b756a00c)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** notify reviewer on manual /move → review ([#2753](https://github.com/HankHuang0516/EClaw/issues/2753)) ([6cbbb4e](https://github.com/HankHuang0516/EClaw/commit/6cbbb4ee8c0d4d8ad54df2e9b5faaa3699bd530f))
* **wallpaper:** off-load spritesheet fetch to IO so per-petdx sprites actually render ([#2618](https://github.com/HankHuang0516/EClaw/issues/2618)) ([61b832c](https://github.com/HankHuang0516/EClaw/commit/61b832c9fa8a1d0caab810ccc942d85c63349267)), closes [#2615](https://github.com/HankHuang0516/EClaw/issues/2615) [#2577](https://github.com/HankHuang0516/EClaw/issues/2577)
* **security:** patch P0 sanitize-html XSS + P1 protobufjs + exam.html XSS ([#2829](https://github.com/HankHuang0516/EClaw/issues/2829)) ([c71b871](https://github.com/HankHuang0516/EClaw/commit/c71b871a045887375dd0d26d1a3280a0891a89ad))
* **portal:** petdx-browser cookie-session fallback for device-login ([#2757](https://github.com/HankHuang0516/EClaw/issues/2757)) ([ca275f4](https://github.com/HankHuang0516/EClaw/commit/ca275f4519835da0c7ad71c588908a18f6f138d8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **api:** platform-stats 500 + entity/lookup publicCode alias ([#2809](https://github.com/HankHuang0516/EClaw/issues/2809), [#2810](https://github.com/HankHuang0516/EClaw/issues/2810)) ([#2818](https://github.com/HankHuang0516/EClaw/issues/2818)) ([f99fd17](https://github.com/HankHuang0516/EClaw/commit/f99fd17b2b1c32d88daa2510ff66d714c1a53edc))
* **i18n:** positional format specifiers for feedback_result_logs (7 locales) ([#2597](https://github.com/HankHuang0516/EClaw/issues/2597)) ([21aedc7](https://github.com/HankHuang0516/EClaw/commit/21aedc7eebc7a2839e340136f38dfdfd4dabb9dc))
* **avatar-petdx:** preserve descriptor across transient API failures (flicker) ([#2625](https://github.com/HankHuang0516/EClaw/issues/2625)) ([7b1c606](https://github.com/HankHuang0516/EClaw/commit/7b1c606514f7698d72ec95cf6c556e4043966186))
* **chat:** preserve scroll anchor while reading history ([#2693](https://github.com/HankHuang0516/EClaw/issues/2693)) ([945fdb7](https://github.com/HankHuang0516/EClaw/commit/945fdb7192b791b31882e1e75568dd8b11e4686f))
* **promo:** pull video embed from /promo-chat-avatar.html ([#2724](https://github.com/HankHuang0516/EClaw/issues/2724)) ([2afabc8](https://github.com/HankHuang0516/EClaw/commit/2afabc8c5ff8b25218a7cb857e8adfa572c8e9d5))
* **kanban:** realign stale recurring schedules ([#2785](https://github.com/HankHuang0516/EClaw/issues/2785)) ([ab8ee25](https://github.com/HankHuang0516/EClaw/commit/ab8ee250a9b37f3d3e838bb01d8866c8d2b78231))
* **portal:** reduce QA-discovered request fanout ([#2656](https://github.com/HankHuang0516/EClaw/issues/2656)) ([1e46d6b](https://github.com/HankHuang0516/EClaw/commit/1e46d6bab61e58c65b452b6503d953f8dddeee75))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **portal:** remove org chart fit scale floor ([#2676](https://github.com/HankHuang0516/EClaw/issues/2676)) ([0f01606](https://github.com/HankHuang0516/EClaw/commit/0f016068b963bb5f800a02f28817c7174979d913))
* **i18n:** rename mm_empty_title → mm_state_empty_title in mindmap.html ([#2683](https://github.com/HankHuang0516/EClaw/issues/2683)) ([c79c109](https://github.com/HankHuang0516/EClaw/commit/c79c109bea23142e8a6d9ace976d105af1280ec9))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **chat:** render mention avatars with companion renderer ([#2633](https://github.com/HankHuang0516/EClaw/issues/2633)) ([03e205f](https://github.com/HankHuang0516/EClaw/commit/03e205f663ecd2c2f443d4009dd5af0093f0bbbb))
* **kanban:** reserve mobile comments panel height ([#2782](https://github.com/HankHuang0516/EClaw/issues/2782)) ([ce8662d](https://github.com/HankHuang0516/EClaw/commit/ce8662d362422fdd25037f1deb61dbed9425e2f9))
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* scheduled audit 2026-05-13 — 6 bugs, XSS, i18n ([#2668](https://github.com/HankHuang0516/EClaw/issues/2668)) ([21dd513](https://github.com/HankHuang0516/EClaw/commit/21dd513b4464738de29164265437435ba6cc4817)), closes [#2605](https://github.com/HankHuang0516/EClaw/issues/2605) [#2608](https://github.com/HankHuang0516/EClaw/issues/2608) [#2600](https://github.com/HankHuang0516/EClaw/issues/2600) [#2599](https://github.com/HankHuang0516/EClaw/issues/2599) [#2598](https://github.com/HankHuang0516/EClaw/issues/2598)
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **chat:** smart-chip preview falls back to inline c.comments when /comments fails (PR [#2677](https://github.com/HankHuang0516/EClaw/issues/2677)) ([7f4dffd](https://github.com/HankHuang0516/EClaw/commit/7f4dffd2c83ea86f296b8fa0610f0e67c9f1af11))
* **kanban:** stabilize comment detail viewport ([#2796](https://github.com/HankHuang0516/EClaw/issues/2796)) ([0a10aad](https://github.com/HankHuang0516/EClaw/commit/0a10aadb5a5b12ff23454c16d5c88183b94ad7d7))
* **wallpaper:** stop Android live wallpaper flashing default lobster on companion change ([#2629](https://github.com/HankHuang0516/EClaw/issues/2629)) ([8b4f66f](https://github.com/HankHuang0516/EClaw/commit/8b4f66fcb335bf43128f924b761b6337c817095b)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **app:** WebView pages honor app-selected locale via ?lang= URL param ([#2672](https://github.com/HankHuang0516/EClaw/issues/2672)) ([8ed8757](https://github.com/HankHuang0516/EClaw/commit/8ed8757aec5bf214e837cc0d81bf2b23f1993a91)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* **community:** 1-click chat button on bot cards + utm tagging ([#2610](https://github.com/HankHuang0516/EClaw/issues/2610)) ([eee97b0](https://github.com/HankHuang0516/EClaw/commit/eee97b0e2e4e74945ec24f218a69a52800b97a66))
* **chat:** add avatar size preference ([#2714](https://github.com/HankHuang0516/EClaw/issues/2714)) ([6fe164a](https://github.com/HankHuang0516/EClaw/commit/6fe164ad8b22fa576d2dd9ad37c0d9fc295b5a83))
* **dashboard:** add Claude and Codex channel guides ([#2640](https://github.com/HankHuang0516/EClaw/issues/2640)) ([c64e4c4](https://github.com/HankHuang0516/EClaw/commit/c64e4c4afc78db58c5cd578f00486dd7b2fd3311))
* **dashboard:** add Claude Code channel guide card ([#2667](https://github.com/HankHuang0516/EClaw/issues/2667)) ([d70d75c](https://github.com/HankHuang0516/EClaw/commit/d70d75c0c8caa8a540358a9aab4556b8c1927a5c))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* **kanban:** add device-scoped card tags ([#2773](https://github.com/HankHuang0516/EClaw/issues/2773)) ([53a387e](https://github.com/HankHuang0516/EClaw/commit/53a387e67ba7bb4f6bed1c427000c4ae8666577a))
* **portal:** add entity selector to petdx-browser ([#2602](https://github.com/HankHuang0516/EClaw/issues/2602)) ([3fa067e](https://github.com/HankHuang0516/EClaw/commit/3fa067e00b38829b48a37cecd33ee81a9a1122d9))
* **kanban:** add explicit card links ([#2721](https://github.com/HankHuang0516/EClaw/issues/2721)) ([ef9f812](https://github.com/HankHuang0516/EClaw/commit/ef9f812a3fcf39efd07fd158ce90951bdd045ac7))
* **kanban:** add explicit done-card reopen flow ([#2801](https://github.com/HankHuang0516/EClaw/issues/2801)) ([5080aac](https://github.com/HankHuang0516/EClaw/commit/5080aacb75047c0deaa379ee708ec85465afd57c))
* **mindmap:** add GET /api/mindmap/graph force-graph projection ([#2680](https://github.com/HankHuang0516/EClaw/issues/2680)) ([a00b2e7](https://github.com/HankHuang0516/EClaw/commit/a00b2e775af2c4c98cd157f760ad87aeeee469f0)), closes [#2679](https://github.com/HankHuang0516/EClaw/issues/2679) [#2679](https://github.com/HankHuang0516/EClaw/issues/2679)
* **dashboard:** add Hermes channel promo card ([#2708](https://github.com/HankHuang0516/EClaw/issues/2708)) ([337aca1](https://github.com/HankHuang0516/EClaw/commit/337aca153d5a1cd7e888c065f00ae54db7872d91))
* **rental:** add listing soft pause ([#2781](https://github.com/HankHuang0516/EClaw/issues/2781)) ([6586b72](https://github.com/HankHuang0516/EClaw/commit/6586b72717ddb1637d91cd3242c8d2ff554f62b4))
* **portal:** add Nagoya 5D4N trip static cross-ref page ([#2689](https://github.com/HankHuang0516/EClaw/issues/2689)) ([2e0efb6](https://github.com/HankHuang0516/EClaw/commit/2e0efb6dcdaff52226cc8854a96747000b12bdff))
* **portal:** add Nagoya trip map links and image lightbox ([#2821](https://github.com/HankHuang0516/EClaw/issues/2821)) ([3e40955](https://github.com/HankHuang0516/EClaw/commit/3e40955650a05f45a6b9f7e39e73847705424a03))
* **portal/nagoya:** add parking shortcut buttons next to itinerary places ([#2826](https://github.com/HankHuang0516/EClaw/issues/2826)) ([63968c5](https://github.com/HankHuang0516/EClaw/commit/63968c554d046afc8d978de74e3aacbf7700500d))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **settings:** add rental roster management preview ([#2758](https://github.com/HankHuang0516/EClaw/issues/2758)) ([9706e59](https://github.com/HankHuang0516/EClaw/commit/9706e59ded140a90a6e02348124282bc69d89001))
* **rental:** add renter health chat indicator ([#2690](https://github.com/HankHuang0516/EClaw/issues/2690)) ([36cd2e9](https://github.com/HankHuang0516/EClaw/commit/36cd2e9802be4c7ebb03d3024617fa74aca48ffd))
* **ios:** add Tutorial & Intro entry in Settings ([#2800](https://github.com/HankHuang0516/EClaw/issues/2800)) ([ed83e51](https://github.com/HankHuang0516/EClaw/commit/ed83e51d043bf4cd5865f38dc95a91ed54820d6c))
* **landing:** add Watch Full Demo CTA below hero video ([#2799](https://github.com/HankHuang0516/EClaw/issues/2799)) ([66107c9](https://github.com/HankHuang0516/EClaw/commit/66107c954727551fd34d989a4674daaad9b63968))
* **footer:** add Watch Intro Video link in Info column ([#2798](https://github.com/HankHuang0516/EClaw/issues/2798)) ([d7c6d59](https://github.com/HankHuang0516/EClaw/commit/d7c6d596b69c6a5b257bf1f7a792a407ef9712ad))
* **companion:** bridge crafter-station/petdex gallery (1784 pets) ([#2601](https://github.com/HankHuang0516/EClaw/issues/2601)) ([2e245be](https://github.com/HankHuang0516/EClaw/commit/2e245bea6dd47ea7361b927d389188a3c23b6bb3))
* **promo:** chat avatar size feature landing page (self-hosted MP4) ([#2722](https://github.com/HankHuang0516/EClaw/issues/2722)) ([3852210](https://github.com/HankHuang0516/EClaw/commit/3852210d355704d018e3daca6b5f9512a011b210)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **kanban:** cron-spawn jitter + lane backpressure to prevent same-tick wedge ([#2791](https://github.com/HankHuang0516/EClaw/issues/2791)) ([9f414a7](https://github.com/HankHuang0516/EClaw/commit/9f414a731d6393672a0a4189c7b408c529ae5e12)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **promo:** embed daily eclaw video 2026-05-14 ([#2786](https://github.com/HankHuang0516/EClaw/issues/2786)) ([718a814](https://github.com/HankHuang0516/EClaw/commit/718a814ab16850bc2b33a1b303841e2c4378ecfa)), closes [#2782](https://github.com/HankHuang0516/EClaw/issues/2782) [#2693](https://github.com/HankHuang0516/EClaw/issues/2693)
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **info:** embed promo video at top of Quick Start tab ([#2797](https://github.com/HankHuang0516/EClaw/issues/2797)) ([047679f](https://github.com/HankHuang0516/EClaw/commit/047679fd57ab9949eaeacea414d5611e71afe041))
* **rental:** enforce strict rebind refunds ([#2703](https://github.com/HankHuang0516/EClaw/issues/2703)) ([a1859c5](https://github.com/HankHuang0516/EClaw/commit/a1859c50e6fb3991d7a8051491502d824a14a116))
* **portal:** group task chip actions ([#2825](https://github.com/HankHuang0516/EClaw/issues/2825)) ([5db5c59](https://github.com/HankHuang0516/EClaw/commit/5db5c59b32b8635f1412205faf0c2f9164d3d5d4))
* **portal:** info-guide-rules + info-guide-soul slide pair ([#2793](https://github.com/HankHuang0516/EClaw/issues/2793)) ([1c8bddc](https://github.com/HankHuang0516/EClaw/commit/1c8bddc4c185054b2b60088498e3d45509117127)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **chat:** link card previews to kanban ([#2754](https://github.com/HankHuang0516/EClaw/issues/2754)) ([2261240](https://github.com/HankHuang0516/EClaw/commit/22612402c2e95efb07246629e81a849be41ee9c7))
* **mission:** link notes to kanban cards ([#2723](https://github.com/HankHuang0516/EClaw/issues/2723)) ([b36dc18](https://github.com/HankHuang0516/EClaw/commit/b36dc18f3a8facf12e0b6046351c222f1e99dc55))
* **mindmap:** mission.html link to /portal/mindmap.html + deprecate /api/mission/mindmap ([#2685](https://github.com/HankHuang0516/EClaw/issues/2685)) ([11e297b](https://github.com/HankHuang0516/EClaw/commit/11e297bab1c9b56fcde3027d6500b7c58891bf18)), closes [#2680](https://github.com/HankHuang0516/EClaw/issues/2680) [#2684](https://github.com/HankHuang0516/EClaw/issues/2684)
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **avatar:** petdx render on card-holder my-cards (Phase 1b) ([#2621](https://github.com/HankHuang0516/EClaw/issues/2621)) ([f78ba8b](https://github.com/HankHuang0516/EClaw/commit/f78ba8b18acc426936ab6d8a82ca7541effea00d))
* **avatar:** petdx render on dashboard entity grid / org chart / bindings (Phase 1b) ([#2622](https://github.com/HankHuang0516/EClaw/issues/2622)) ([f417749](https://github.com/HankHuang0516/EClaw/commit/f41774914451048e8cd76e9ae30416a0642e173b)), closes [#2620](https://github.com/HankHuang0516/EClaw/issues/2620) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621)
* **avatar:** petdx render on kanban auto-assign / pulse / comment avatars (Phase 1b) ([#2624](https://github.com/HankHuang0516/EClaw/issues/2624)) ([6bff5f8](https://github.com/HankHuang0516/EClaw/commit/6bff5f80440d0bd91a6b1721cde9478d685c4d46))
* **avatar:** petdx render on mission skill/rule/soul entity dialogs (Phase 1b) ([#2623](https://github.com/HankHuang0516/EClaw/issues/2623)) ([129327b](https://github.com/HankHuang0516/EClaw/commit/129327bc7b91056659f1ab7e8d5e3f5260d951fb))
* **mindmap:** portal/mindmap.html force-graph prototype ([#129](https://github.com/HankHuang0516/EClaw/issues/129)) ([#2681](https://github.com/HankHuang0516/EClaw/issues/2681)) ([0f15e69](https://github.com/HankHuang0516/EClaw/commit/0f15e6930f0697c37fa08f3219edb8f9e499837f)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **portal:** redo nagoya trip page in professional tour-guide style ([#2691](https://github.com/HankHuang0516/EClaw/issues/2691)) ([b2378c0](https://github.com/HankHuang0516/EClaw/commit/b2378c06ee20fa9cccfdceceb1a4c9e0b3072f59))
* **avatar:** render selected petdx companion in chat avatars ([#2620](https://github.com/HankHuang0516/EClaw/issues/2620)) ([0bdd046](https://github.com/HankHuang0516/EClaw/commit/0bdd046fe1b1c428e32edda366ff112c08927f4c))
* **home:** replace native home with WebView hosting dashboard.html ([#2634](https://github.com/HankHuang0516/EClaw/issues/2634)) ([e69ea81](https://github.com/HankHuang0516/EClaw/commit/e69ea8160c239b083a83d6dc83a4f1c3f901c863))
* **app:** route chat mission jumps through native tabs ([#2824](https://github.com/HankHuang0516/EClaw/issues/2824)) ([deb07b6](https://github.com/HankHuang0516/EClaw/commit/deb07b69a9ecca632fe27278de537f1d85234e94))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **chat:** support message deep links ([#2719](https://github.com/HankHuang0516/EClaw/issues/2719)) ([2dc0f1e](https://github.com/HankHuang0516/EClaw/commit/2dc0f1eeb259e1a0848db4a03186b989372cd91c))
* **mission:** support note deep links ([#2717](https://github.com/HankHuang0516/EClaw/issues/2717)) ([2efd3a5](https://github.com/HankHuang0516/EClaw/commit/2efd3a5e741217a07c0b0ac54a0ddd010e0ebe23))
* **share-chat:** twitter card + per-bot og:image/twitter:* in SSR ([#2609](https://github.com/HankHuang0516/EClaw/issues/2609)) ([6cdc853](https://github.com/HankHuang0516/EClaw/commit/6cdc853dc884cdb95bd47214942768981f218ae0))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))
* **settings:** wire petdx avatar into channel-account chips ([#2626](https://github.com/HankHuang0516/EClaw/issues/2626)) ([88aec77](https://github.com/HankHuang0516/EClaw/commit/88aec772628c240e97b336bb5820892ad632d1ae))
* **files:** wire petdx avatar into entity filter & per-file badges ([#2627](https://github.com/HankHuang0516/EClaw/issues/2627)) ([5b3e5cc](https://github.com/HankHuang0516/EClaw/commit/5b3e5cc542d9da69bb4e92500fd03a542ea33f00))
* **mindmap:** wrap hardcoded zh-TW UI strings with i18n t() ([#2607](https://github.com/HankHuang0516/EClaw/issues/2607)) ([166af87](https://github.com/HankHuang0516/EClaw/commit/166af8772b2121a24aaf34a83b3de970e9b3b571)), closes [#2606](https://github.com/HankHuang0516/EClaw/issues/2606)
* **i18n:** zh-TW backfill 8 keys (soft-pause + chat + invite + wallet) ([#2815](https://github.com/HankHuang0516/EClaw/issues/2815)) ([a2dd574](https://github.com/HankHuang0516/EClaw/commit/a2dd5743ce8d43a4b6ace9a2fd4b52568180d6c5))


### Performance Improvements

* **mindmap:** force-graph hardening for 1000/2000-node graphs ([#2684](https://github.com/HankHuang0516/EClaw/issues/2684)) ([da8b1c8](https://github.com/HankHuang0516/EClaw/commit/da8b1c8f947ab8bc8fa455c1962a91146623a1fc))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-15)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **notifications:** add kanban_done + kanban_done_auto toggles to Android Settings ([#2636](https://github.com/HankHuang0516/EClaw/issues/2636)) ([a710909](https://github.com/HankHuang0516/EClaw/commit/a7109095e3393b8564e7ef1b23d382a4fbb944b8))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **i18n:** clear batch 1 residual missing keys ([#2790](https://github.com/HankHuang0516/EClaw/issues/2790)) ([211030e](https://github.com/HankHuang0516/EClaw/commit/211030e0b0b6a865c11f0c4ed60dc4e356d43b7a))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **kanban:** comment input no longer overlaps last comment in card detail (PR [#2678](https://github.com/HankHuang0516/EClaw/issues/2678)) ([fba91fc](https://github.com/HankHuang0516/EClaw/commit/fba91fca15402b453a0db5ee857c0b16e6087055))
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **i18n:** cover dynamic portal wrapper keys ([#2807](https://github.com/HankHuang0516/EClaw/issues/2807)) ([4c711cc](https://github.com/HankHuang0516/EClaw/commit/4c711cc4009300ffe4e8933a98ee01cd0fdd6aeb))
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **petdx:** drop dark-grey loading placeholder + preload sprite WEBP ([#2628](https://github.com/HankHuang0516/EClaw/issues/2628)) ([59cef38](https://github.com/HankHuang0516/EClaw/commit/59cef387bd69ca99d7d15c86a1364856d3849ad8)), closes [#1a1a1a](https://github.com/HankHuang0516/EClaw/issues/1a1a1a)
* **security:** escape innerHTML in chat modal error messages ([#2819](https://github.com/HankHuang0516/EClaw/issues/2819)) ([dce07ad](https://github.com/HankHuang0516/EClaw/commit/dce07adde64795916dba977ae23e46f3371ce7ed)), closes [#2809](https://github.com/HankHuang0516/EClaw/issues/2809) [#2810](https://github.com/HankHuang0516/EClaw/issues/2810) [#2809](https://github.com/HankHuang0516/EClaw/issues/2809) [#2810](https://github.com/HankHuang0516/EClaw/issues/2810)
* **entities:** expose botSecret to owner so wallpaper service can poll companions ([#2615](https://github.com/HankHuang0516/EClaw/issues/2615)) ([04470fc](https://github.com/HankHuang0516/EClaw/commit/04470fce8f8c3fce2b1ba8b243e776606f107502))
* **rental:** expose owner_public_code in marketplace so plaza CTA can route ([#2616](https://github.com/HankHuang0516/EClaw/issues/2616)) ([4d1372f](https://github.com/HankHuang0516/EClaw/commit/4d1372f717d93cab65543e87c852e74e9fb67071)), closes [#2610](https://github.com/HankHuang0516/EClaw/issues/2610)
* **mindmap:** fallback to device scope when entityId is null ([#2728](https://github.com/HankHuang0516/EClaw/issues/2728)) ([7572312](https://github.com/HankHuang0516/EClaw/commit/7572312433d3d75fc245eda48a28919ce14bd927))
* **i18n:** fill Spanish drift keys ([#2751](https://github.com/HankHuang0516/EClaw/issues/2751)) ([0ad0ee5](https://github.com/HankHuang0516/EClaw/commit/0ad0ee55f7fac3e6ac46d891539950dab4d553cc))
* **portal:** fit embedded org chart to mobile viewport ([#2674](https://github.com/HankHuang0516/EClaw/issues/2674)) ([1c4e1b4](https://github.com/HankHuang0516/EClaw/commit/1c4e1b413ea7027b4cd4b8ecda981b0d0e12e66b))
* **i18n:** fix 6 trailing-comma syntax errors in 10-locale batch ([#2771](https://github.com/HankHuang0516/EClaw/issues/2771)) ([b27c6ca](https://github.com/HankHuang0516/EClaw/commit/b27c6ca204bf813e406c54ce3a2532a5f1f031b3))
* **kanban:** GET card returns latest 50 comments + comments endpoint exposes total ([#2816](https://github.com/HankHuang0516/EClaw/issues/2816)) ([c4d83f7](https://github.com/HankHuang0516/EClaw/commit/c4d83f777a1cd26aea0936e4316aa35c52822eef))
* **uiux:** harden chat previews and roster preview ([#2769](https://github.com/HankHuang0516/EClaw/issues/2769)) ([466d4d3](https://github.com/HankHuang0516/EClaw/commit/466d4d3ef81c628d3f58db64323946053d7bf61c))
* **mention-parser:** ignore @-mentions inside markdown code spans ([#2645](https://github.com/HankHuang0516/EClaw/issues/2645)) ([8da19d4](https://github.com/HankHuang0516/EClaw/commit/8da19d4a79ceb4152bf2144ee0847c61ce3e1def)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **kanban:** lazy-load dependency chips via IntersectionObserver ([#2632](https://github.com/HankHuang0516/EClaw/issues/2632)) ([20586b4](https://github.com/HankHuang0516/EClaw/commit/20586b43357335f9eb6a190c02d58c8e36b58aba)), closes [#2631](https://github.com/HankHuang0516/EClaw/issues/2631)
* **kanban:** make card sorting deterministic ([#2756](https://github.com/HankHuang0516/EClaw/issues/2756)) ([48e2117](https://github.com/HankHuang0516/EClaw/commit/48e2117b64e37f05dc635e0a3b67bfd43cbe48f5))
* **org-chart:** notify affected bots on hierarchy change ([#2812](https://github.com/HankHuang0516/EClaw/issues/2812)) ([55675fd](https://github.com/HankHuang0516/EClaw/commit/55675fdf4487494d729a29524b32bd81b756a00c)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** notify reviewer on manual /move → review ([#2753](https://github.com/HankHuang0516/EClaw/issues/2753)) ([6cbbb4e](https://github.com/HankHuang0516/EClaw/commit/6cbbb4ee8c0d4d8ad54df2e9b5faaa3699bd530f))
* **wallpaper:** off-load spritesheet fetch to IO so per-petdx sprites actually render ([#2618](https://github.com/HankHuang0516/EClaw/issues/2618)) ([61b832c](https://github.com/HankHuang0516/EClaw/commit/61b832c9fa8a1d0caab810ccc942d85c63349267)), closes [#2615](https://github.com/HankHuang0516/EClaw/issues/2615) [#2577](https://github.com/HankHuang0516/EClaw/issues/2577)
* **portal:** petdx-browser cookie-session fallback for device-login ([#2757](https://github.com/HankHuang0516/EClaw/issues/2757)) ([ca275f4](https://github.com/HankHuang0516/EClaw/commit/ca275f4519835da0c7ad71c588908a18f6f138d8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **api:** platform-stats 500 + entity/lookup publicCode alias ([#2809](https://github.com/HankHuang0516/EClaw/issues/2809), [#2810](https://github.com/HankHuang0516/EClaw/issues/2810)) ([#2818](https://github.com/HankHuang0516/EClaw/issues/2818)) ([f99fd17](https://github.com/HankHuang0516/EClaw/commit/f99fd17b2b1c32d88daa2510ff66d714c1a53edc))
* **i18n:** positional format specifiers for feedback_result_logs (7 locales) ([#2597](https://github.com/HankHuang0516/EClaw/issues/2597)) ([21aedc7](https://github.com/HankHuang0516/EClaw/commit/21aedc7eebc7a2839e340136f38dfdfd4dabb9dc))
* **avatar-petdx:** preserve descriptor across transient API failures (flicker) ([#2625](https://github.com/HankHuang0516/EClaw/issues/2625)) ([7b1c606](https://github.com/HankHuang0516/EClaw/commit/7b1c606514f7698d72ec95cf6c556e4043966186))
* **chat:** preserve scroll anchor while reading history ([#2693](https://github.com/HankHuang0516/EClaw/issues/2693)) ([945fdb7](https://github.com/HankHuang0516/EClaw/commit/945fdb7192b791b31882e1e75568dd8b11e4686f))
* **promo:** pull video embed from /promo-chat-avatar.html ([#2724](https://github.com/HankHuang0516/EClaw/issues/2724)) ([2afabc8](https://github.com/HankHuang0516/EClaw/commit/2afabc8c5ff8b25218a7cb857e8adfa572c8e9d5))
* **kanban:** realign stale recurring schedules ([#2785](https://github.com/HankHuang0516/EClaw/issues/2785)) ([ab8ee25](https://github.com/HankHuang0516/EClaw/commit/ab8ee250a9b37f3d3e838bb01d8866c8d2b78231))
* **portal:** reduce QA-discovered request fanout ([#2656](https://github.com/HankHuang0516/EClaw/issues/2656)) ([1e46d6b](https://github.com/HankHuang0516/EClaw/commit/1e46d6bab61e58c65b452b6503d953f8dddeee75))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **portal:** remove org chart fit scale floor ([#2676](https://github.com/HankHuang0516/EClaw/issues/2676)) ([0f01606](https://github.com/HankHuang0516/EClaw/commit/0f016068b963bb5f800a02f28817c7174979d913))
* **i18n:** rename mm_empty_title → mm_state_empty_title in mindmap.html ([#2683](https://github.com/HankHuang0516/EClaw/issues/2683)) ([c79c109](https://github.com/HankHuang0516/EClaw/commit/c79c109bea23142e8a6d9ace976d105af1280ec9))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **chat:** render mention avatars with companion renderer ([#2633](https://github.com/HankHuang0516/EClaw/issues/2633)) ([03e205f](https://github.com/HankHuang0516/EClaw/commit/03e205f663ecd2c2f443d4009dd5af0093f0bbbb))
* **kanban:** reserve mobile comments panel height ([#2782](https://github.com/HankHuang0516/EClaw/issues/2782)) ([ce8662d](https://github.com/HankHuang0516/EClaw/commit/ce8662d362422fdd25037f1deb61dbed9425e2f9))
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* scheduled audit 2026-05-13 — 6 bugs, XSS, i18n ([#2668](https://github.com/HankHuang0516/EClaw/issues/2668)) ([21dd513](https://github.com/HankHuang0516/EClaw/commit/21dd513b4464738de29164265437435ba6cc4817)), closes [#2605](https://github.com/HankHuang0516/EClaw/issues/2605) [#2608](https://github.com/HankHuang0516/EClaw/issues/2608) [#2600](https://github.com/HankHuang0516/EClaw/issues/2600) [#2599](https://github.com/HankHuang0516/EClaw/issues/2599) [#2598](https://github.com/HankHuang0516/EClaw/issues/2598)
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **chat:** smart-chip preview falls back to inline c.comments when /comments fails (PR [#2677](https://github.com/HankHuang0516/EClaw/issues/2677)) ([7f4dffd](https://github.com/HankHuang0516/EClaw/commit/7f4dffd2c83ea86f296b8fa0610f0e67c9f1af11))
* **kanban:** stabilize comment detail viewport ([#2796](https://github.com/HankHuang0516/EClaw/issues/2796)) ([0a10aad](https://github.com/HankHuang0516/EClaw/commit/0a10aadb5a5b12ff23454c16d5c88183b94ad7d7))
* **wallpaper:** stop Android live wallpaper flashing default lobster on companion change ([#2629](https://github.com/HankHuang0516/EClaw/issues/2629)) ([8b4f66f](https://github.com/HankHuang0516/EClaw/commit/8b4f66fcb335bf43128f924b761b6337c817095b)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **app:** WebView pages honor app-selected locale via ?lang= URL param ([#2672](https://github.com/HankHuang0516/EClaw/issues/2672)) ([8ed8757](https://github.com/HankHuang0516/EClaw/commit/8ed8757aec5bf214e837cc0d81bf2b23f1993a91)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* **community:** 1-click chat button on bot cards + utm tagging ([#2610](https://github.com/HankHuang0516/EClaw/issues/2610)) ([eee97b0](https://github.com/HankHuang0516/EClaw/commit/eee97b0e2e4e74945ec24f218a69a52800b97a66))
* **chat:** add avatar size preference ([#2714](https://github.com/HankHuang0516/EClaw/issues/2714)) ([6fe164a](https://github.com/HankHuang0516/EClaw/commit/6fe164ad8b22fa576d2dd9ad37c0d9fc295b5a83))
* **dashboard:** add Claude and Codex channel guides ([#2640](https://github.com/HankHuang0516/EClaw/issues/2640)) ([c64e4c4](https://github.com/HankHuang0516/EClaw/commit/c64e4c4afc78db58c5cd578f00486dd7b2fd3311))
* **dashboard:** add Claude Code channel guide card ([#2667](https://github.com/HankHuang0516/EClaw/issues/2667)) ([d70d75c](https://github.com/HankHuang0516/EClaw/commit/d70d75c0c8caa8a540358a9aab4556b8c1927a5c))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* **kanban:** add device-scoped card tags ([#2773](https://github.com/HankHuang0516/EClaw/issues/2773)) ([53a387e](https://github.com/HankHuang0516/EClaw/commit/53a387e67ba7bb4f6bed1c427000c4ae8666577a))
* **portal:** add entity selector to petdx-browser ([#2602](https://github.com/HankHuang0516/EClaw/issues/2602)) ([3fa067e](https://github.com/HankHuang0516/EClaw/commit/3fa067e00b38829b48a37cecd33ee81a9a1122d9))
* **kanban:** add explicit card links ([#2721](https://github.com/HankHuang0516/EClaw/issues/2721)) ([ef9f812](https://github.com/HankHuang0516/EClaw/commit/ef9f812a3fcf39efd07fd158ce90951bdd045ac7))
* **kanban:** add explicit done-card reopen flow ([#2801](https://github.com/HankHuang0516/EClaw/issues/2801)) ([5080aac](https://github.com/HankHuang0516/EClaw/commit/5080aacb75047c0deaa379ee708ec85465afd57c))
* **mindmap:** add GET /api/mindmap/graph force-graph projection ([#2680](https://github.com/HankHuang0516/EClaw/issues/2680)) ([a00b2e7](https://github.com/HankHuang0516/EClaw/commit/a00b2e775af2c4c98cd157f760ad87aeeee469f0)), closes [#2679](https://github.com/HankHuang0516/EClaw/issues/2679) [#2679](https://github.com/HankHuang0516/EClaw/issues/2679)
* **dashboard:** add Hermes channel promo card ([#2708](https://github.com/HankHuang0516/EClaw/issues/2708)) ([337aca1](https://github.com/HankHuang0516/EClaw/commit/337aca153d5a1cd7e888c065f00ae54db7872d91))
* **rental:** add listing soft pause ([#2781](https://github.com/HankHuang0516/EClaw/issues/2781)) ([6586b72](https://github.com/HankHuang0516/EClaw/commit/6586b72717ddb1637d91cd3242c8d2ff554f62b4))
* **portal:** add Nagoya 5D4N trip static cross-ref page ([#2689](https://github.com/HankHuang0516/EClaw/issues/2689)) ([2e0efb6](https://github.com/HankHuang0516/EClaw/commit/2e0efb6dcdaff52226cc8854a96747000b12bdff))
* **portal:** add Nagoya trip map links and image lightbox ([#2821](https://github.com/HankHuang0516/EClaw/issues/2821)) ([3e40955](https://github.com/HankHuang0516/EClaw/commit/3e40955650a05f45a6b9f7e39e73847705424a03))
* **portal/nagoya:** add parking shortcut buttons next to itinerary places ([#2826](https://github.com/HankHuang0516/EClaw/issues/2826)) ([63968c5](https://github.com/HankHuang0516/EClaw/commit/63968c554d046afc8d978de74e3aacbf7700500d))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **settings:** add rental roster management preview ([#2758](https://github.com/HankHuang0516/EClaw/issues/2758)) ([9706e59](https://github.com/HankHuang0516/EClaw/commit/9706e59ded140a90a6e02348124282bc69d89001))
* **rental:** add renter health chat indicator ([#2690](https://github.com/HankHuang0516/EClaw/issues/2690)) ([36cd2e9](https://github.com/HankHuang0516/EClaw/commit/36cd2e9802be4c7ebb03d3024617fa74aca48ffd))
* **ios:** add Tutorial & Intro entry in Settings ([#2800](https://github.com/HankHuang0516/EClaw/issues/2800)) ([ed83e51](https://github.com/HankHuang0516/EClaw/commit/ed83e51d043bf4cd5865f38dc95a91ed54820d6c))
* **landing:** add Watch Full Demo CTA below hero video ([#2799](https://github.com/HankHuang0516/EClaw/issues/2799)) ([66107c9](https://github.com/HankHuang0516/EClaw/commit/66107c954727551fd34d989a4674daaad9b63968))
* **footer:** add Watch Intro Video link in Info column ([#2798](https://github.com/HankHuang0516/EClaw/issues/2798)) ([d7c6d59](https://github.com/HankHuang0516/EClaw/commit/d7c6d596b69c6a5b257bf1f7a792a407ef9712ad))
* **companion:** bridge crafter-station/petdex gallery (1784 pets) ([#2601](https://github.com/HankHuang0516/EClaw/issues/2601)) ([2e245be](https://github.com/HankHuang0516/EClaw/commit/2e245bea6dd47ea7361b927d389188a3c23b6bb3))
* **promo:** chat avatar size feature landing page (self-hosted MP4) ([#2722](https://github.com/HankHuang0516/EClaw/issues/2722)) ([3852210](https://github.com/HankHuang0516/EClaw/commit/3852210d355704d018e3daca6b5f9512a011b210)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **kanban:** cron-spawn jitter + lane backpressure to prevent same-tick wedge ([#2791](https://github.com/HankHuang0516/EClaw/issues/2791)) ([9f414a7](https://github.com/HankHuang0516/EClaw/commit/9f414a731d6393672a0a4189c7b408c529ae5e12)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **promo:** embed daily eclaw video 2026-05-14 ([#2786](https://github.com/HankHuang0516/EClaw/issues/2786)) ([718a814](https://github.com/HankHuang0516/EClaw/commit/718a814ab16850bc2b33a1b303841e2c4378ecfa)), closes [#2782](https://github.com/HankHuang0516/EClaw/issues/2782) [#2693](https://github.com/HankHuang0516/EClaw/issues/2693)
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **info:** embed promo video at top of Quick Start tab ([#2797](https://github.com/HankHuang0516/EClaw/issues/2797)) ([047679f](https://github.com/HankHuang0516/EClaw/commit/047679fd57ab9949eaeacea414d5611e71afe041))
* **rental:** enforce strict rebind refunds ([#2703](https://github.com/HankHuang0516/EClaw/issues/2703)) ([a1859c5](https://github.com/HankHuang0516/EClaw/commit/a1859c50e6fb3991d7a8051491502d824a14a116))
* **portal:** group task chip actions ([#2825](https://github.com/HankHuang0516/EClaw/issues/2825)) ([5db5c59](https://github.com/HankHuang0516/EClaw/commit/5db5c59b32b8635f1412205faf0c2f9164d3d5d4))
* **portal:** info-guide-rules + info-guide-soul slide pair ([#2793](https://github.com/HankHuang0516/EClaw/issues/2793)) ([1c8bddc](https://github.com/HankHuang0516/EClaw/commit/1c8bddc4c185054b2b60088498e3d45509117127)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **chat:** link card previews to kanban ([#2754](https://github.com/HankHuang0516/EClaw/issues/2754)) ([2261240](https://github.com/HankHuang0516/EClaw/commit/22612402c2e95efb07246629e81a849be41ee9c7))
* **mission:** link notes to kanban cards ([#2723](https://github.com/HankHuang0516/EClaw/issues/2723)) ([b36dc18](https://github.com/HankHuang0516/EClaw/commit/b36dc18f3a8facf12e0b6046351c222f1e99dc55))
* **mindmap:** mission.html link to /portal/mindmap.html + deprecate /api/mission/mindmap ([#2685](https://github.com/HankHuang0516/EClaw/issues/2685)) ([11e297b](https://github.com/HankHuang0516/EClaw/commit/11e297bab1c9b56fcde3027d6500b7c58891bf18)), closes [#2680](https://github.com/HankHuang0516/EClaw/issues/2680) [#2684](https://github.com/HankHuang0516/EClaw/issues/2684)
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **avatar:** petdx render on card-holder my-cards (Phase 1b) ([#2621](https://github.com/HankHuang0516/EClaw/issues/2621)) ([f78ba8b](https://github.com/HankHuang0516/EClaw/commit/f78ba8b18acc426936ab6d8a82ca7541effea00d))
* **avatar:** petdx render on dashboard entity grid / org chart / bindings (Phase 1b) ([#2622](https://github.com/HankHuang0516/EClaw/issues/2622)) ([f417749](https://github.com/HankHuang0516/EClaw/commit/f41774914451048e8cd76e9ae30416a0642e173b)), closes [#2620](https://github.com/HankHuang0516/EClaw/issues/2620) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621)
* **avatar:** petdx render on kanban auto-assign / pulse / comment avatars (Phase 1b) ([#2624](https://github.com/HankHuang0516/EClaw/issues/2624)) ([6bff5f8](https://github.com/HankHuang0516/EClaw/commit/6bff5f80440d0bd91a6b1721cde9478d685c4d46))
* **avatar:** petdx render on mission skill/rule/soul entity dialogs (Phase 1b) ([#2623](https://github.com/HankHuang0516/EClaw/issues/2623)) ([129327b](https://github.com/HankHuang0516/EClaw/commit/129327bc7b91056659f1ab7e8d5e3f5260d951fb))
* **mindmap:** portal/mindmap.html force-graph prototype ([#129](https://github.com/HankHuang0516/EClaw/issues/129)) ([#2681](https://github.com/HankHuang0516/EClaw/issues/2681)) ([0f15e69](https://github.com/HankHuang0516/EClaw/commit/0f15e6930f0697c37fa08f3219edb8f9e499837f)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **portal:** redo nagoya trip page in professional tour-guide style ([#2691](https://github.com/HankHuang0516/EClaw/issues/2691)) ([b2378c0](https://github.com/HankHuang0516/EClaw/commit/b2378c06ee20fa9cccfdceceb1a4c9e0b3072f59))
* **avatar:** render selected petdx companion in chat avatars ([#2620](https://github.com/HankHuang0516/EClaw/issues/2620)) ([0bdd046](https://github.com/HankHuang0516/EClaw/commit/0bdd046fe1b1c428e32edda366ff112c08927f4c))
* **home:** replace native home with WebView hosting dashboard.html ([#2634](https://github.com/HankHuang0516/EClaw/issues/2634)) ([e69ea81](https://github.com/HankHuang0516/EClaw/commit/e69ea8160c239b083a83d6dc83a4f1c3f901c863))
* **app:** route chat mission jumps through native tabs ([#2824](https://github.com/HankHuang0516/EClaw/issues/2824)) ([deb07b6](https://github.com/HankHuang0516/EClaw/commit/deb07b69a9ecca632fe27278de537f1d85234e94))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **chat:** support message deep links ([#2719](https://github.com/HankHuang0516/EClaw/issues/2719)) ([2dc0f1e](https://github.com/HankHuang0516/EClaw/commit/2dc0f1eeb259e1a0848db4a03186b989372cd91c))
* **mission:** support note deep links ([#2717](https://github.com/HankHuang0516/EClaw/issues/2717)) ([2efd3a5](https://github.com/HankHuang0516/EClaw/commit/2efd3a5e741217a07c0b0ac54a0ddd010e0ebe23))
* **share-chat:** twitter card + per-bot og:image/twitter:* in SSR ([#2609](https://github.com/HankHuang0516/EClaw/issues/2609)) ([6cdc853](https://github.com/HankHuang0516/EClaw/commit/6cdc853dc884cdb95bd47214942768981f218ae0))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))
* **settings:** wire petdx avatar into channel-account chips ([#2626](https://github.com/HankHuang0516/EClaw/issues/2626)) ([88aec77](https://github.com/HankHuang0516/EClaw/commit/88aec772628c240e97b336bb5820892ad632d1ae))
* **files:** wire petdx avatar into entity filter & per-file badges ([#2627](https://github.com/HankHuang0516/EClaw/issues/2627)) ([5b3e5cc](https://github.com/HankHuang0516/EClaw/commit/5b3e5cc542d9da69bb4e92500fd03a542ea33f00))
* **mindmap:** wrap hardcoded zh-TW UI strings with i18n t() ([#2607](https://github.com/HankHuang0516/EClaw/issues/2607)) ([166af87](https://github.com/HankHuang0516/EClaw/commit/166af8772b2121a24aaf34a83b3de970e9b3b571)), closes [#2606](https://github.com/HankHuang0516/EClaw/issues/2606)
* **i18n:** zh-TW backfill 8 keys (soft-pause + chat + invite + wallet) ([#2815](https://github.com/HankHuang0516/EClaw/issues/2815)) ([a2dd574](https://github.com/HankHuang0516/EClaw/commit/a2dd5743ce8d43a4b6ace9a2fd4b52568180d6c5))


### Performance Improvements

* **mindmap:** force-graph hardening for 1000/2000-node graphs ([#2684](https://github.com/HankHuang0516/EClaw/issues/2684)) ([da8b1c8](https://github.com/HankHuang0516/EClaw/commit/da8b1c8f947ab8bc8fa455c1962a91146623a1fc))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-15)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **notifications:** add kanban_done + kanban_done_auto toggles to Android Settings ([#2636](https://github.com/HankHuang0516/EClaw/issues/2636)) ([a710909](https://github.com/HankHuang0516/EClaw/commit/a7109095e3393b8564e7ef1b23d382a4fbb944b8))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **i18n:** clear batch 1 residual missing keys ([#2790](https://github.com/HankHuang0516/EClaw/issues/2790)) ([211030e](https://github.com/HankHuang0516/EClaw/commit/211030e0b0b6a865c11f0c4ed60dc4e356d43b7a))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **kanban:** comment input no longer overlaps last comment in card detail (PR [#2678](https://github.com/HankHuang0516/EClaw/issues/2678)) ([fba91fc](https://github.com/HankHuang0516/EClaw/commit/fba91fca15402b453a0db5ee857c0b16e6087055))
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **i18n:** cover dynamic portal wrapper keys ([#2807](https://github.com/HankHuang0516/EClaw/issues/2807)) ([4c711cc](https://github.com/HankHuang0516/EClaw/commit/4c711cc4009300ffe4e8933a98ee01cd0fdd6aeb))
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **petdx:** drop dark-grey loading placeholder + preload sprite WEBP ([#2628](https://github.com/HankHuang0516/EClaw/issues/2628)) ([59cef38](https://github.com/HankHuang0516/EClaw/commit/59cef387bd69ca99d7d15c86a1364856d3849ad8)), closes [#1a1a1a](https://github.com/HankHuang0516/EClaw/issues/1a1a1a)
* **security:** escape innerHTML in chat modal error messages ([#2819](https://github.com/HankHuang0516/EClaw/issues/2819)) ([dce07ad](https://github.com/HankHuang0516/EClaw/commit/dce07adde64795916dba977ae23e46f3371ce7ed)), closes [#2809](https://github.com/HankHuang0516/EClaw/issues/2809) [#2810](https://github.com/HankHuang0516/EClaw/issues/2810) [#2809](https://github.com/HankHuang0516/EClaw/issues/2809) [#2810](https://github.com/HankHuang0516/EClaw/issues/2810)
* **entities:** expose botSecret to owner so wallpaper service can poll companions ([#2615](https://github.com/HankHuang0516/EClaw/issues/2615)) ([04470fc](https://github.com/HankHuang0516/EClaw/commit/04470fce8f8c3fce2b1ba8b243e776606f107502))
* **rental:** expose owner_public_code in marketplace so plaza CTA can route ([#2616](https://github.com/HankHuang0516/EClaw/issues/2616)) ([4d1372f](https://github.com/HankHuang0516/EClaw/commit/4d1372f717d93cab65543e87c852e74e9fb67071)), closes [#2610](https://github.com/HankHuang0516/EClaw/issues/2610)
* **mindmap:** fallback to device scope when entityId is null ([#2728](https://github.com/HankHuang0516/EClaw/issues/2728)) ([7572312](https://github.com/HankHuang0516/EClaw/commit/7572312433d3d75fc245eda48a28919ce14bd927))
* **i18n:** fill Spanish drift keys ([#2751](https://github.com/HankHuang0516/EClaw/issues/2751)) ([0ad0ee5](https://github.com/HankHuang0516/EClaw/commit/0ad0ee55f7fac3e6ac46d891539950dab4d553cc))
* **portal:** fit embedded org chart to mobile viewport ([#2674](https://github.com/HankHuang0516/EClaw/issues/2674)) ([1c4e1b4](https://github.com/HankHuang0516/EClaw/commit/1c4e1b413ea7027b4cd4b8ecda981b0d0e12e66b))
* **i18n:** fix 6 trailing-comma syntax errors in 10-locale batch ([#2771](https://github.com/HankHuang0516/EClaw/issues/2771)) ([b27c6ca](https://github.com/HankHuang0516/EClaw/commit/b27c6ca204bf813e406c54ce3a2532a5f1f031b3))
* **kanban:** GET card returns latest 50 comments + comments endpoint exposes total ([#2816](https://github.com/HankHuang0516/EClaw/issues/2816)) ([c4d83f7](https://github.com/HankHuang0516/EClaw/commit/c4d83f777a1cd26aea0936e4316aa35c52822eef))
* **uiux:** harden chat previews and roster preview ([#2769](https://github.com/HankHuang0516/EClaw/issues/2769)) ([466d4d3](https://github.com/HankHuang0516/EClaw/commit/466d4d3ef81c628d3f58db64323946053d7bf61c))
* **mention-parser:** ignore @-mentions inside markdown code spans ([#2645](https://github.com/HankHuang0516/EClaw/issues/2645)) ([8da19d4](https://github.com/HankHuang0516/EClaw/commit/8da19d4a79ceb4152bf2144ee0847c61ce3e1def)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **kanban:** lazy-load dependency chips via IntersectionObserver ([#2632](https://github.com/HankHuang0516/EClaw/issues/2632)) ([20586b4](https://github.com/HankHuang0516/EClaw/commit/20586b43357335f9eb6a190c02d58c8e36b58aba)), closes [#2631](https://github.com/HankHuang0516/EClaw/issues/2631)
* **kanban:** make card sorting deterministic ([#2756](https://github.com/HankHuang0516/EClaw/issues/2756)) ([48e2117](https://github.com/HankHuang0516/EClaw/commit/48e2117b64e37f05dc635e0a3b67bfd43cbe48f5))
* **org-chart:** notify affected bots on hierarchy change ([#2812](https://github.com/HankHuang0516/EClaw/issues/2812)) ([55675fd](https://github.com/HankHuang0516/EClaw/commit/55675fdf4487494d729a29524b32bd81b756a00c)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** notify reviewer on manual /move → review ([#2753](https://github.com/HankHuang0516/EClaw/issues/2753)) ([6cbbb4e](https://github.com/HankHuang0516/EClaw/commit/6cbbb4ee8c0d4d8ad54df2e9b5faaa3699bd530f))
* **wallpaper:** off-load spritesheet fetch to IO so per-petdx sprites actually render ([#2618](https://github.com/HankHuang0516/EClaw/issues/2618)) ([61b832c](https://github.com/HankHuang0516/EClaw/commit/61b832c9fa8a1d0caab810ccc942d85c63349267)), closes [#2615](https://github.com/HankHuang0516/EClaw/issues/2615) [#2577](https://github.com/HankHuang0516/EClaw/issues/2577)
* **portal:** petdx-browser cookie-session fallback for device-login ([#2757](https://github.com/HankHuang0516/EClaw/issues/2757)) ([ca275f4](https://github.com/HankHuang0516/EClaw/commit/ca275f4519835da0c7ad71c588908a18f6f138d8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **api:** platform-stats 500 + entity/lookup publicCode alias ([#2809](https://github.com/HankHuang0516/EClaw/issues/2809), [#2810](https://github.com/HankHuang0516/EClaw/issues/2810)) ([#2818](https://github.com/HankHuang0516/EClaw/issues/2818)) ([f99fd17](https://github.com/HankHuang0516/EClaw/commit/f99fd17b2b1c32d88daa2510ff66d714c1a53edc))
* **i18n:** positional format specifiers for feedback_result_logs (7 locales) ([#2597](https://github.com/HankHuang0516/EClaw/issues/2597)) ([21aedc7](https://github.com/HankHuang0516/EClaw/commit/21aedc7eebc7a2839e340136f38dfdfd4dabb9dc))
* **avatar-petdx:** preserve descriptor across transient API failures (flicker) ([#2625](https://github.com/HankHuang0516/EClaw/issues/2625)) ([7b1c606](https://github.com/HankHuang0516/EClaw/commit/7b1c606514f7698d72ec95cf6c556e4043966186))
* **chat:** preserve scroll anchor while reading history ([#2693](https://github.com/HankHuang0516/EClaw/issues/2693)) ([945fdb7](https://github.com/HankHuang0516/EClaw/commit/945fdb7192b791b31882e1e75568dd8b11e4686f))
* **promo:** pull video embed from /promo-chat-avatar.html ([#2724](https://github.com/HankHuang0516/EClaw/issues/2724)) ([2afabc8](https://github.com/HankHuang0516/EClaw/commit/2afabc8c5ff8b25218a7cb857e8adfa572c8e9d5))
* **kanban:** realign stale recurring schedules ([#2785](https://github.com/HankHuang0516/EClaw/issues/2785)) ([ab8ee25](https://github.com/HankHuang0516/EClaw/commit/ab8ee250a9b37f3d3e838bb01d8866c8d2b78231))
* **portal:** reduce QA-discovered request fanout ([#2656](https://github.com/HankHuang0516/EClaw/issues/2656)) ([1e46d6b](https://github.com/HankHuang0516/EClaw/commit/1e46d6bab61e58c65b452b6503d953f8dddeee75))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **portal:** remove org chart fit scale floor ([#2676](https://github.com/HankHuang0516/EClaw/issues/2676)) ([0f01606](https://github.com/HankHuang0516/EClaw/commit/0f016068b963bb5f800a02f28817c7174979d913))
* **i18n:** rename mm_empty_title → mm_state_empty_title in mindmap.html ([#2683](https://github.com/HankHuang0516/EClaw/issues/2683)) ([c79c109](https://github.com/HankHuang0516/EClaw/commit/c79c109bea23142e8a6d9ace976d105af1280ec9))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **chat:** render mention avatars with companion renderer ([#2633](https://github.com/HankHuang0516/EClaw/issues/2633)) ([03e205f](https://github.com/HankHuang0516/EClaw/commit/03e205f663ecd2c2f443d4009dd5af0093f0bbbb))
* **kanban:** reserve mobile comments panel height ([#2782](https://github.com/HankHuang0516/EClaw/issues/2782)) ([ce8662d](https://github.com/HankHuang0516/EClaw/commit/ce8662d362422fdd25037f1deb61dbed9425e2f9))
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* scheduled audit 2026-05-13 — 6 bugs, XSS, i18n ([#2668](https://github.com/HankHuang0516/EClaw/issues/2668)) ([21dd513](https://github.com/HankHuang0516/EClaw/commit/21dd513b4464738de29164265437435ba6cc4817)), closes [#2605](https://github.com/HankHuang0516/EClaw/issues/2605) [#2608](https://github.com/HankHuang0516/EClaw/issues/2608) [#2600](https://github.com/HankHuang0516/EClaw/issues/2600) [#2599](https://github.com/HankHuang0516/EClaw/issues/2599) [#2598](https://github.com/HankHuang0516/EClaw/issues/2598)
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **chat:** smart-chip preview falls back to inline c.comments when /comments fails (PR [#2677](https://github.com/HankHuang0516/EClaw/issues/2677)) ([7f4dffd](https://github.com/HankHuang0516/EClaw/commit/7f4dffd2c83ea86f296b8fa0610f0e67c9f1af11))
* **kanban:** stabilize comment detail viewport ([#2796](https://github.com/HankHuang0516/EClaw/issues/2796)) ([0a10aad](https://github.com/HankHuang0516/EClaw/commit/0a10aadb5a5b12ff23454c16d5c88183b94ad7d7))
* **wallpaper:** stop Android live wallpaper flashing default lobster on companion change ([#2629](https://github.com/HankHuang0516/EClaw/issues/2629)) ([8b4f66f](https://github.com/HankHuang0516/EClaw/commit/8b4f66fcb335bf43128f924b761b6337c817095b)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **app:** WebView pages honor app-selected locale via ?lang= URL param ([#2672](https://github.com/HankHuang0516/EClaw/issues/2672)) ([8ed8757](https://github.com/HankHuang0516/EClaw/commit/8ed8757aec5bf214e837cc0d81bf2b23f1993a91)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* **community:** 1-click chat button on bot cards + utm tagging ([#2610](https://github.com/HankHuang0516/EClaw/issues/2610)) ([eee97b0](https://github.com/HankHuang0516/EClaw/commit/eee97b0e2e4e74945ec24f218a69a52800b97a66))
* **chat:** add avatar size preference ([#2714](https://github.com/HankHuang0516/EClaw/issues/2714)) ([6fe164a](https://github.com/HankHuang0516/EClaw/commit/6fe164ad8b22fa576d2dd9ad37c0d9fc295b5a83))
* **dashboard:** add Claude and Codex channel guides ([#2640](https://github.com/HankHuang0516/EClaw/issues/2640)) ([c64e4c4](https://github.com/HankHuang0516/EClaw/commit/c64e4c4afc78db58c5cd578f00486dd7b2fd3311))
* **dashboard:** add Claude Code channel guide card ([#2667](https://github.com/HankHuang0516/EClaw/issues/2667)) ([d70d75c](https://github.com/HankHuang0516/EClaw/commit/d70d75c0c8caa8a540358a9aab4556b8c1927a5c))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* **kanban:** add device-scoped card tags ([#2773](https://github.com/HankHuang0516/EClaw/issues/2773)) ([53a387e](https://github.com/HankHuang0516/EClaw/commit/53a387e67ba7bb4f6bed1c427000c4ae8666577a))
* **portal:** add entity selector to petdx-browser ([#2602](https://github.com/HankHuang0516/EClaw/issues/2602)) ([3fa067e](https://github.com/HankHuang0516/EClaw/commit/3fa067e00b38829b48a37cecd33ee81a9a1122d9))
* **kanban:** add explicit card links ([#2721](https://github.com/HankHuang0516/EClaw/issues/2721)) ([ef9f812](https://github.com/HankHuang0516/EClaw/commit/ef9f812a3fcf39efd07fd158ce90951bdd045ac7))
* **kanban:** add explicit done-card reopen flow ([#2801](https://github.com/HankHuang0516/EClaw/issues/2801)) ([5080aac](https://github.com/HankHuang0516/EClaw/commit/5080aacb75047c0deaa379ee708ec85465afd57c))
* **mindmap:** add GET /api/mindmap/graph force-graph projection ([#2680](https://github.com/HankHuang0516/EClaw/issues/2680)) ([a00b2e7](https://github.com/HankHuang0516/EClaw/commit/a00b2e775af2c4c98cd157f760ad87aeeee469f0)), closes [#2679](https://github.com/HankHuang0516/EClaw/issues/2679) [#2679](https://github.com/HankHuang0516/EClaw/issues/2679)
* **dashboard:** add Hermes channel promo card ([#2708](https://github.com/HankHuang0516/EClaw/issues/2708)) ([337aca1](https://github.com/HankHuang0516/EClaw/commit/337aca153d5a1cd7e888c065f00ae54db7872d91))
* **rental:** add listing soft pause ([#2781](https://github.com/HankHuang0516/EClaw/issues/2781)) ([6586b72](https://github.com/HankHuang0516/EClaw/commit/6586b72717ddb1637d91cd3242c8d2ff554f62b4))
* **portal:** add Nagoya 5D4N trip static cross-ref page ([#2689](https://github.com/HankHuang0516/EClaw/issues/2689)) ([2e0efb6](https://github.com/HankHuang0516/EClaw/commit/2e0efb6dcdaff52226cc8854a96747000b12bdff))
* **portal:** add Nagoya trip map links and image lightbox ([#2821](https://github.com/HankHuang0516/EClaw/issues/2821)) ([3e40955](https://github.com/HankHuang0516/EClaw/commit/3e40955650a05f45a6b9f7e39e73847705424a03))
* **portal/nagoya:** add parking shortcut buttons next to itinerary places ([#2826](https://github.com/HankHuang0516/EClaw/issues/2826)) ([63968c5](https://github.com/HankHuang0516/EClaw/commit/63968c554d046afc8d978de74e3aacbf7700500d))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **settings:** add rental roster management preview ([#2758](https://github.com/HankHuang0516/EClaw/issues/2758)) ([9706e59](https://github.com/HankHuang0516/EClaw/commit/9706e59ded140a90a6e02348124282bc69d89001))
* **rental:** add renter health chat indicator ([#2690](https://github.com/HankHuang0516/EClaw/issues/2690)) ([36cd2e9](https://github.com/HankHuang0516/EClaw/commit/36cd2e9802be4c7ebb03d3024617fa74aca48ffd))
* **ios:** add Tutorial & Intro entry in Settings ([#2800](https://github.com/HankHuang0516/EClaw/issues/2800)) ([ed83e51](https://github.com/HankHuang0516/EClaw/commit/ed83e51d043bf4cd5865f38dc95a91ed54820d6c))
* **landing:** add Watch Full Demo CTA below hero video ([#2799](https://github.com/HankHuang0516/EClaw/issues/2799)) ([66107c9](https://github.com/HankHuang0516/EClaw/commit/66107c954727551fd34d989a4674daaad9b63968))
* **footer:** add Watch Intro Video link in Info column ([#2798](https://github.com/HankHuang0516/EClaw/issues/2798)) ([d7c6d59](https://github.com/HankHuang0516/EClaw/commit/d7c6d596b69c6a5b257bf1f7a792a407ef9712ad))
* **companion:** bridge crafter-station/petdex gallery (1784 pets) ([#2601](https://github.com/HankHuang0516/EClaw/issues/2601)) ([2e245be](https://github.com/HankHuang0516/EClaw/commit/2e245bea6dd47ea7361b927d389188a3c23b6bb3))
* **promo:** chat avatar size feature landing page (self-hosted MP4) ([#2722](https://github.com/HankHuang0516/EClaw/issues/2722)) ([3852210](https://github.com/HankHuang0516/EClaw/commit/3852210d355704d018e3daca6b5f9512a011b210)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **kanban:** cron-spawn jitter + lane backpressure to prevent same-tick wedge ([#2791](https://github.com/HankHuang0516/EClaw/issues/2791)) ([9f414a7](https://github.com/HankHuang0516/EClaw/commit/9f414a731d6393672a0a4189c7b408c529ae5e12)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **promo:** embed daily eclaw video 2026-05-14 ([#2786](https://github.com/HankHuang0516/EClaw/issues/2786)) ([718a814](https://github.com/HankHuang0516/EClaw/commit/718a814ab16850bc2b33a1b303841e2c4378ecfa)), closes [#2782](https://github.com/HankHuang0516/EClaw/issues/2782) [#2693](https://github.com/HankHuang0516/EClaw/issues/2693)
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **info:** embed promo video at top of Quick Start tab ([#2797](https://github.com/HankHuang0516/EClaw/issues/2797)) ([047679f](https://github.com/HankHuang0516/EClaw/commit/047679fd57ab9949eaeacea414d5611e71afe041))
* **rental:** enforce strict rebind refunds ([#2703](https://github.com/HankHuang0516/EClaw/issues/2703)) ([a1859c5](https://github.com/HankHuang0516/EClaw/commit/a1859c50e6fb3991d7a8051491502d824a14a116))
* **portal:** group task chip actions ([#2825](https://github.com/HankHuang0516/EClaw/issues/2825)) ([5db5c59](https://github.com/HankHuang0516/EClaw/commit/5db5c59b32b8635f1412205faf0c2f9164d3d5d4))
* **portal:** info-guide-rules + info-guide-soul slide pair ([#2793](https://github.com/HankHuang0516/EClaw/issues/2793)) ([1c8bddc](https://github.com/HankHuang0516/EClaw/commit/1c8bddc4c185054b2b60088498e3d45509117127)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **chat:** link card previews to kanban ([#2754](https://github.com/HankHuang0516/EClaw/issues/2754)) ([2261240](https://github.com/HankHuang0516/EClaw/commit/22612402c2e95efb07246629e81a849be41ee9c7))
* **mission:** link notes to kanban cards ([#2723](https://github.com/HankHuang0516/EClaw/issues/2723)) ([b36dc18](https://github.com/HankHuang0516/EClaw/commit/b36dc18f3a8facf12e0b6046351c222f1e99dc55))
* **mindmap:** mission.html link to /portal/mindmap.html + deprecate /api/mission/mindmap ([#2685](https://github.com/HankHuang0516/EClaw/issues/2685)) ([11e297b](https://github.com/HankHuang0516/EClaw/commit/11e297bab1c9b56fcde3027d6500b7c58891bf18)), closes [#2680](https://github.com/HankHuang0516/EClaw/issues/2680) [#2684](https://github.com/HankHuang0516/EClaw/issues/2684)
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **avatar:** petdx render on card-holder my-cards (Phase 1b) ([#2621](https://github.com/HankHuang0516/EClaw/issues/2621)) ([f78ba8b](https://github.com/HankHuang0516/EClaw/commit/f78ba8b18acc426936ab6d8a82ca7541effea00d))
* **avatar:** petdx render on dashboard entity grid / org chart / bindings (Phase 1b) ([#2622](https://github.com/HankHuang0516/EClaw/issues/2622)) ([f417749](https://github.com/HankHuang0516/EClaw/commit/f41774914451048e8cd76e9ae30416a0642e173b)), closes [#2620](https://github.com/HankHuang0516/EClaw/issues/2620) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621)
* **avatar:** petdx render on kanban auto-assign / pulse / comment avatars (Phase 1b) ([#2624](https://github.com/HankHuang0516/EClaw/issues/2624)) ([6bff5f8](https://github.com/HankHuang0516/EClaw/commit/6bff5f80440d0bd91a6b1721cde9478d685c4d46))
* **avatar:** petdx render on mission skill/rule/soul entity dialogs (Phase 1b) ([#2623](https://github.com/HankHuang0516/EClaw/issues/2623)) ([129327b](https://github.com/HankHuang0516/EClaw/commit/129327bc7b91056659f1ab7e8d5e3f5260d951fb))
* **mindmap:** portal/mindmap.html force-graph prototype ([#129](https://github.com/HankHuang0516/EClaw/issues/129)) ([#2681](https://github.com/HankHuang0516/EClaw/issues/2681)) ([0f15e69](https://github.com/HankHuang0516/EClaw/commit/0f15e6930f0697c37fa08f3219edb8f9e499837f)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **portal:** redo nagoya trip page in professional tour-guide style ([#2691](https://github.com/HankHuang0516/EClaw/issues/2691)) ([b2378c0](https://github.com/HankHuang0516/EClaw/commit/b2378c06ee20fa9cccfdceceb1a4c9e0b3072f59))
* **avatar:** render selected petdx companion in chat avatars ([#2620](https://github.com/HankHuang0516/EClaw/issues/2620)) ([0bdd046](https://github.com/HankHuang0516/EClaw/commit/0bdd046fe1b1c428e32edda366ff112c08927f4c))
* **home:** replace native home with WebView hosting dashboard.html ([#2634](https://github.com/HankHuang0516/EClaw/issues/2634)) ([e69ea81](https://github.com/HankHuang0516/EClaw/commit/e69ea8160c239b083a83d6dc83a4f1c3f901c863))
* **app:** route chat mission jumps through native tabs ([#2824](https://github.com/HankHuang0516/EClaw/issues/2824)) ([deb07b6](https://github.com/HankHuang0516/EClaw/commit/deb07b69a9ecca632fe27278de537f1d85234e94))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **chat:** support message deep links ([#2719](https://github.com/HankHuang0516/EClaw/issues/2719)) ([2dc0f1e](https://github.com/HankHuang0516/EClaw/commit/2dc0f1eeb259e1a0848db4a03186b989372cd91c))
* **mission:** support note deep links ([#2717](https://github.com/HankHuang0516/EClaw/issues/2717)) ([2efd3a5](https://github.com/HankHuang0516/EClaw/commit/2efd3a5e741217a07c0b0ac54a0ddd010e0ebe23))
* **share-chat:** twitter card + per-bot og:image/twitter:* in SSR ([#2609](https://github.com/HankHuang0516/EClaw/issues/2609)) ([6cdc853](https://github.com/HankHuang0516/EClaw/commit/6cdc853dc884cdb95bd47214942768981f218ae0))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))
* **settings:** wire petdx avatar into channel-account chips ([#2626](https://github.com/HankHuang0516/EClaw/issues/2626)) ([88aec77](https://github.com/HankHuang0516/EClaw/commit/88aec772628c240e97b336bb5820892ad632d1ae))
* **files:** wire petdx avatar into entity filter & per-file badges ([#2627](https://github.com/HankHuang0516/EClaw/issues/2627)) ([5b3e5cc](https://github.com/HankHuang0516/EClaw/commit/5b3e5cc542d9da69bb4e92500fd03a542ea33f00))
* **mindmap:** wrap hardcoded zh-TW UI strings with i18n t() ([#2607](https://github.com/HankHuang0516/EClaw/issues/2607)) ([166af87](https://github.com/HankHuang0516/EClaw/commit/166af8772b2121a24aaf34a83b3de970e9b3b571)), closes [#2606](https://github.com/HankHuang0516/EClaw/issues/2606)
* **i18n:** zh-TW backfill 8 keys (soft-pause + chat + invite + wallet) ([#2815](https://github.com/HankHuang0516/EClaw/issues/2815)) ([a2dd574](https://github.com/HankHuang0516/EClaw/commit/a2dd5743ce8d43a4b6ace9a2fd4b52568180d6c5))


### Performance Improvements

* **mindmap:** force-graph hardening for 1000/2000-node graphs ([#2684](https://github.com/HankHuang0516/EClaw/issues/2684)) ([da8b1c8](https://github.com/HankHuang0516/EClaw/commit/da8b1c8f947ab8bc8fa455c1962a91146623a1fc))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-15)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **notifications:** add kanban_done + kanban_done_auto toggles to Android Settings ([#2636](https://github.com/HankHuang0516/EClaw/issues/2636)) ([a710909](https://github.com/HankHuang0516/EClaw/commit/a7109095e3393b8564e7ef1b23d382a4fbb944b8))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **i18n:** clear batch 1 residual missing keys ([#2790](https://github.com/HankHuang0516/EClaw/issues/2790)) ([211030e](https://github.com/HankHuang0516/EClaw/commit/211030e0b0b6a865c11f0c4ed60dc4e356d43b7a))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **kanban:** comment input no longer overlaps last comment in card detail (PR [#2678](https://github.com/HankHuang0516/EClaw/issues/2678)) ([fba91fc](https://github.com/HankHuang0516/EClaw/commit/fba91fca15402b453a0db5ee857c0b16e6087055))
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **i18n:** cover dynamic portal wrapper keys ([#2807](https://github.com/HankHuang0516/EClaw/issues/2807)) ([4c711cc](https://github.com/HankHuang0516/EClaw/commit/4c711cc4009300ffe4e8933a98ee01cd0fdd6aeb))
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **petdx:** drop dark-grey loading placeholder + preload sprite WEBP ([#2628](https://github.com/HankHuang0516/EClaw/issues/2628)) ([59cef38](https://github.com/HankHuang0516/EClaw/commit/59cef387bd69ca99d7d15c86a1364856d3849ad8)), closes [#1a1a1a](https://github.com/HankHuang0516/EClaw/issues/1a1a1a)
* **security:** escape innerHTML in chat modal error messages ([#2819](https://github.com/HankHuang0516/EClaw/issues/2819)) ([dce07ad](https://github.com/HankHuang0516/EClaw/commit/dce07adde64795916dba977ae23e46f3371ce7ed)), closes [#2809](https://github.com/HankHuang0516/EClaw/issues/2809) [#2810](https://github.com/HankHuang0516/EClaw/issues/2810) [#2809](https://github.com/HankHuang0516/EClaw/issues/2809) [#2810](https://github.com/HankHuang0516/EClaw/issues/2810)
* **entities:** expose botSecret to owner so wallpaper service can poll companions ([#2615](https://github.com/HankHuang0516/EClaw/issues/2615)) ([04470fc](https://github.com/HankHuang0516/EClaw/commit/04470fce8f8c3fce2b1ba8b243e776606f107502))
* **rental:** expose owner_public_code in marketplace so plaza CTA can route ([#2616](https://github.com/HankHuang0516/EClaw/issues/2616)) ([4d1372f](https://github.com/HankHuang0516/EClaw/commit/4d1372f717d93cab65543e87c852e74e9fb67071)), closes [#2610](https://github.com/HankHuang0516/EClaw/issues/2610)
* **mindmap:** fallback to device scope when entityId is null ([#2728](https://github.com/HankHuang0516/EClaw/issues/2728)) ([7572312](https://github.com/HankHuang0516/EClaw/commit/7572312433d3d75fc245eda48a28919ce14bd927))
* **i18n:** fill Spanish drift keys ([#2751](https://github.com/HankHuang0516/EClaw/issues/2751)) ([0ad0ee5](https://github.com/HankHuang0516/EClaw/commit/0ad0ee55f7fac3e6ac46d891539950dab4d553cc))
* **portal:** fit embedded org chart to mobile viewport ([#2674](https://github.com/HankHuang0516/EClaw/issues/2674)) ([1c4e1b4](https://github.com/HankHuang0516/EClaw/commit/1c4e1b413ea7027b4cd4b8ecda981b0d0e12e66b))
* **i18n:** fix 6 trailing-comma syntax errors in 10-locale batch ([#2771](https://github.com/HankHuang0516/EClaw/issues/2771)) ([b27c6ca](https://github.com/HankHuang0516/EClaw/commit/b27c6ca204bf813e406c54ce3a2532a5f1f031b3))
* **kanban:** GET card returns latest 50 comments + comments endpoint exposes total ([#2816](https://github.com/HankHuang0516/EClaw/issues/2816)) ([c4d83f7](https://github.com/HankHuang0516/EClaw/commit/c4d83f777a1cd26aea0936e4316aa35c52822eef))
* **uiux:** harden chat previews and roster preview ([#2769](https://github.com/HankHuang0516/EClaw/issues/2769)) ([466d4d3](https://github.com/HankHuang0516/EClaw/commit/466d4d3ef81c628d3f58db64323946053d7bf61c))
* **mention-parser:** ignore @-mentions inside markdown code spans ([#2645](https://github.com/HankHuang0516/EClaw/issues/2645)) ([8da19d4](https://github.com/HankHuang0516/EClaw/commit/8da19d4a79ceb4152bf2144ee0847c61ce3e1def)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **kanban:** lazy-load dependency chips via IntersectionObserver ([#2632](https://github.com/HankHuang0516/EClaw/issues/2632)) ([20586b4](https://github.com/HankHuang0516/EClaw/commit/20586b43357335f9eb6a190c02d58c8e36b58aba)), closes [#2631](https://github.com/HankHuang0516/EClaw/issues/2631)
* **kanban:** make card sorting deterministic ([#2756](https://github.com/HankHuang0516/EClaw/issues/2756)) ([48e2117](https://github.com/HankHuang0516/EClaw/commit/48e2117b64e37f05dc635e0a3b67bfd43cbe48f5))
* **org-chart:** notify affected bots on hierarchy change ([#2812](https://github.com/HankHuang0516/EClaw/issues/2812)) ([55675fd](https://github.com/HankHuang0516/EClaw/commit/55675fdf4487494d729a29524b32bd81b756a00c)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** notify reviewer on manual /move → review ([#2753](https://github.com/HankHuang0516/EClaw/issues/2753)) ([6cbbb4e](https://github.com/HankHuang0516/EClaw/commit/6cbbb4ee8c0d4d8ad54df2e9b5faaa3699bd530f))
* **wallpaper:** off-load spritesheet fetch to IO so per-petdx sprites actually render ([#2618](https://github.com/HankHuang0516/EClaw/issues/2618)) ([61b832c](https://github.com/HankHuang0516/EClaw/commit/61b832c9fa8a1d0caab810ccc942d85c63349267)), closes [#2615](https://github.com/HankHuang0516/EClaw/issues/2615) [#2577](https://github.com/HankHuang0516/EClaw/issues/2577)
* **portal:** petdx-browser cookie-session fallback for device-login ([#2757](https://github.com/HankHuang0516/EClaw/issues/2757)) ([ca275f4](https://github.com/HankHuang0516/EClaw/commit/ca275f4519835da0c7ad71c588908a18f6f138d8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **api:** platform-stats 500 + entity/lookup publicCode alias ([#2809](https://github.com/HankHuang0516/EClaw/issues/2809), [#2810](https://github.com/HankHuang0516/EClaw/issues/2810)) ([#2818](https://github.com/HankHuang0516/EClaw/issues/2818)) ([f99fd17](https://github.com/HankHuang0516/EClaw/commit/f99fd17b2b1c32d88daa2510ff66d714c1a53edc))
* **i18n:** positional format specifiers for feedback_result_logs (7 locales) ([#2597](https://github.com/HankHuang0516/EClaw/issues/2597)) ([21aedc7](https://github.com/HankHuang0516/EClaw/commit/21aedc7eebc7a2839e340136f38dfdfd4dabb9dc))
* **avatar-petdx:** preserve descriptor across transient API failures (flicker) ([#2625](https://github.com/HankHuang0516/EClaw/issues/2625)) ([7b1c606](https://github.com/HankHuang0516/EClaw/commit/7b1c606514f7698d72ec95cf6c556e4043966186))
* **chat:** preserve scroll anchor while reading history ([#2693](https://github.com/HankHuang0516/EClaw/issues/2693)) ([945fdb7](https://github.com/HankHuang0516/EClaw/commit/945fdb7192b791b31882e1e75568dd8b11e4686f))
* **promo:** pull video embed from /promo-chat-avatar.html ([#2724](https://github.com/HankHuang0516/EClaw/issues/2724)) ([2afabc8](https://github.com/HankHuang0516/EClaw/commit/2afabc8c5ff8b25218a7cb857e8adfa572c8e9d5))
* **kanban:** realign stale recurring schedules ([#2785](https://github.com/HankHuang0516/EClaw/issues/2785)) ([ab8ee25](https://github.com/HankHuang0516/EClaw/commit/ab8ee250a9b37f3d3e838bb01d8866c8d2b78231))
* **portal:** reduce QA-discovered request fanout ([#2656](https://github.com/HankHuang0516/EClaw/issues/2656)) ([1e46d6b](https://github.com/HankHuang0516/EClaw/commit/1e46d6bab61e58c65b452b6503d953f8dddeee75))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **portal:** remove org chart fit scale floor ([#2676](https://github.com/HankHuang0516/EClaw/issues/2676)) ([0f01606](https://github.com/HankHuang0516/EClaw/commit/0f016068b963bb5f800a02f28817c7174979d913))
* **i18n:** rename mm_empty_title → mm_state_empty_title in mindmap.html ([#2683](https://github.com/HankHuang0516/EClaw/issues/2683)) ([c79c109](https://github.com/HankHuang0516/EClaw/commit/c79c109bea23142e8a6d9ace976d105af1280ec9))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **chat:** render mention avatars with companion renderer ([#2633](https://github.com/HankHuang0516/EClaw/issues/2633)) ([03e205f](https://github.com/HankHuang0516/EClaw/commit/03e205f663ecd2c2f443d4009dd5af0093f0bbbb))
* **kanban:** reserve mobile comments panel height ([#2782](https://github.com/HankHuang0516/EClaw/issues/2782)) ([ce8662d](https://github.com/HankHuang0516/EClaw/commit/ce8662d362422fdd25037f1deb61dbed9425e2f9))
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* scheduled audit 2026-05-13 — 6 bugs, XSS, i18n ([#2668](https://github.com/HankHuang0516/EClaw/issues/2668)) ([21dd513](https://github.com/HankHuang0516/EClaw/commit/21dd513b4464738de29164265437435ba6cc4817)), closes [#2605](https://github.com/HankHuang0516/EClaw/issues/2605) [#2608](https://github.com/HankHuang0516/EClaw/issues/2608) [#2600](https://github.com/HankHuang0516/EClaw/issues/2600) [#2599](https://github.com/HankHuang0516/EClaw/issues/2599) [#2598](https://github.com/HankHuang0516/EClaw/issues/2598)
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **chat:** smart-chip preview falls back to inline c.comments when /comments fails (PR [#2677](https://github.com/HankHuang0516/EClaw/issues/2677)) ([7f4dffd](https://github.com/HankHuang0516/EClaw/commit/7f4dffd2c83ea86f296b8fa0610f0e67c9f1af11))
* **kanban:** stabilize comment detail viewport ([#2796](https://github.com/HankHuang0516/EClaw/issues/2796)) ([0a10aad](https://github.com/HankHuang0516/EClaw/commit/0a10aadb5a5b12ff23454c16d5c88183b94ad7d7))
* **wallpaper:** stop Android live wallpaper flashing default lobster on companion change ([#2629](https://github.com/HankHuang0516/EClaw/issues/2629)) ([8b4f66f](https://github.com/HankHuang0516/EClaw/commit/8b4f66fcb335bf43128f924b761b6337c817095b)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **app:** WebView pages honor app-selected locale via ?lang= URL param ([#2672](https://github.com/HankHuang0516/EClaw/issues/2672)) ([8ed8757](https://github.com/HankHuang0516/EClaw/commit/8ed8757aec5bf214e837cc0d81bf2b23f1993a91)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* **community:** 1-click chat button on bot cards + utm tagging ([#2610](https://github.com/HankHuang0516/EClaw/issues/2610)) ([eee97b0](https://github.com/HankHuang0516/EClaw/commit/eee97b0e2e4e74945ec24f218a69a52800b97a66))
* **chat:** add avatar size preference ([#2714](https://github.com/HankHuang0516/EClaw/issues/2714)) ([6fe164a](https://github.com/HankHuang0516/EClaw/commit/6fe164ad8b22fa576d2dd9ad37c0d9fc295b5a83))
* **dashboard:** add Claude and Codex channel guides ([#2640](https://github.com/HankHuang0516/EClaw/issues/2640)) ([c64e4c4](https://github.com/HankHuang0516/EClaw/commit/c64e4c4afc78db58c5cd578f00486dd7b2fd3311))
* **dashboard:** add Claude Code channel guide card ([#2667](https://github.com/HankHuang0516/EClaw/issues/2667)) ([d70d75c](https://github.com/HankHuang0516/EClaw/commit/d70d75c0c8caa8a540358a9aab4556b8c1927a5c))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* **kanban:** add device-scoped card tags ([#2773](https://github.com/HankHuang0516/EClaw/issues/2773)) ([53a387e](https://github.com/HankHuang0516/EClaw/commit/53a387e67ba7bb4f6bed1c427000c4ae8666577a))
* **portal:** add entity selector to petdx-browser ([#2602](https://github.com/HankHuang0516/EClaw/issues/2602)) ([3fa067e](https://github.com/HankHuang0516/EClaw/commit/3fa067e00b38829b48a37cecd33ee81a9a1122d9))
* **kanban:** add explicit card links ([#2721](https://github.com/HankHuang0516/EClaw/issues/2721)) ([ef9f812](https://github.com/HankHuang0516/EClaw/commit/ef9f812a3fcf39efd07fd158ce90951bdd045ac7))
* **kanban:** add explicit done-card reopen flow ([#2801](https://github.com/HankHuang0516/EClaw/issues/2801)) ([5080aac](https://github.com/HankHuang0516/EClaw/commit/5080aacb75047c0deaa379ee708ec85465afd57c))
* **mindmap:** add GET /api/mindmap/graph force-graph projection ([#2680](https://github.com/HankHuang0516/EClaw/issues/2680)) ([a00b2e7](https://github.com/HankHuang0516/EClaw/commit/a00b2e775af2c4c98cd157f760ad87aeeee469f0)), closes [#2679](https://github.com/HankHuang0516/EClaw/issues/2679) [#2679](https://github.com/HankHuang0516/EClaw/issues/2679)
* **dashboard:** add Hermes channel promo card ([#2708](https://github.com/HankHuang0516/EClaw/issues/2708)) ([337aca1](https://github.com/HankHuang0516/EClaw/commit/337aca153d5a1cd7e888c065f00ae54db7872d91))
* **rental:** add listing soft pause ([#2781](https://github.com/HankHuang0516/EClaw/issues/2781)) ([6586b72](https://github.com/HankHuang0516/EClaw/commit/6586b72717ddb1637d91cd3242c8d2ff554f62b4))
* **portal:** add Nagoya 5D4N trip static cross-ref page ([#2689](https://github.com/HankHuang0516/EClaw/issues/2689)) ([2e0efb6](https://github.com/HankHuang0516/EClaw/commit/2e0efb6dcdaff52226cc8854a96747000b12bdff))
* **portal:** add Nagoya trip map links and image lightbox ([#2821](https://github.com/HankHuang0516/EClaw/issues/2821)) ([3e40955](https://github.com/HankHuang0516/EClaw/commit/3e40955650a05f45a6b9f7e39e73847705424a03))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **settings:** add rental roster management preview ([#2758](https://github.com/HankHuang0516/EClaw/issues/2758)) ([9706e59](https://github.com/HankHuang0516/EClaw/commit/9706e59ded140a90a6e02348124282bc69d89001))
* **rental:** add renter health chat indicator ([#2690](https://github.com/HankHuang0516/EClaw/issues/2690)) ([36cd2e9](https://github.com/HankHuang0516/EClaw/commit/36cd2e9802be4c7ebb03d3024617fa74aca48ffd))
* **ios:** add Tutorial & Intro entry in Settings ([#2800](https://github.com/HankHuang0516/EClaw/issues/2800)) ([ed83e51](https://github.com/HankHuang0516/EClaw/commit/ed83e51d043bf4cd5865f38dc95a91ed54820d6c))
* **landing:** add Watch Full Demo CTA below hero video ([#2799](https://github.com/HankHuang0516/EClaw/issues/2799)) ([66107c9](https://github.com/HankHuang0516/EClaw/commit/66107c954727551fd34d989a4674daaad9b63968))
* **footer:** add Watch Intro Video link in Info column ([#2798](https://github.com/HankHuang0516/EClaw/issues/2798)) ([d7c6d59](https://github.com/HankHuang0516/EClaw/commit/d7c6d596b69c6a5b257bf1f7a792a407ef9712ad))
* **companion:** bridge crafter-station/petdex gallery (1784 pets) ([#2601](https://github.com/HankHuang0516/EClaw/issues/2601)) ([2e245be](https://github.com/HankHuang0516/EClaw/commit/2e245bea6dd47ea7361b927d389188a3c23b6bb3))
* **promo:** chat avatar size feature landing page (self-hosted MP4) ([#2722](https://github.com/HankHuang0516/EClaw/issues/2722)) ([3852210](https://github.com/HankHuang0516/EClaw/commit/3852210d355704d018e3daca6b5f9512a011b210)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **kanban:** cron-spawn jitter + lane backpressure to prevent same-tick wedge ([#2791](https://github.com/HankHuang0516/EClaw/issues/2791)) ([9f414a7](https://github.com/HankHuang0516/EClaw/commit/9f414a731d6393672a0a4189c7b408c529ae5e12)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **promo:** embed daily eclaw video 2026-05-14 ([#2786](https://github.com/HankHuang0516/EClaw/issues/2786)) ([718a814](https://github.com/HankHuang0516/EClaw/commit/718a814ab16850bc2b33a1b303841e2c4378ecfa)), closes [#2782](https://github.com/HankHuang0516/EClaw/issues/2782) [#2693](https://github.com/HankHuang0516/EClaw/issues/2693)
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **info:** embed promo video at top of Quick Start tab ([#2797](https://github.com/HankHuang0516/EClaw/issues/2797)) ([047679f](https://github.com/HankHuang0516/EClaw/commit/047679fd57ab9949eaeacea414d5611e71afe041))
* **rental:** enforce strict rebind refunds ([#2703](https://github.com/HankHuang0516/EClaw/issues/2703)) ([a1859c5](https://github.com/HankHuang0516/EClaw/commit/a1859c50e6fb3991d7a8051491502d824a14a116))
* **portal:** group task chip actions ([#2825](https://github.com/HankHuang0516/EClaw/issues/2825)) ([5db5c59](https://github.com/HankHuang0516/EClaw/commit/5db5c59b32b8635f1412205faf0c2f9164d3d5d4))
* **portal:** info-guide-rules + info-guide-soul slide pair ([#2793](https://github.com/HankHuang0516/EClaw/issues/2793)) ([1c8bddc](https://github.com/HankHuang0516/EClaw/commit/1c8bddc4c185054b2b60088498e3d45509117127)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **chat:** link card previews to kanban ([#2754](https://github.com/HankHuang0516/EClaw/issues/2754)) ([2261240](https://github.com/HankHuang0516/EClaw/commit/22612402c2e95efb07246629e81a849be41ee9c7))
* **mission:** link notes to kanban cards ([#2723](https://github.com/HankHuang0516/EClaw/issues/2723)) ([b36dc18](https://github.com/HankHuang0516/EClaw/commit/b36dc18f3a8facf12e0b6046351c222f1e99dc55))
* **mindmap:** mission.html link to /portal/mindmap.html + deprecate /api/mission/mindmap ([#2685](https://github.com/HankHuang0516/EClaw/issues/2685)) ([11e297b](https://github.com/HankHuang0516/EClaw/commit/11e297bab1c9b56fcde3027d6500b7c58891bf18)), closes [#2680](https://github.com/HankHuang0516/EClaw/issues/2680) [#2684](https://github.com/HankHuang0516/EClaw/issues/2684)
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **avatar:** petdx render on card-holder my-cards (Phase 1b) ([#2621](https://github.com/HankHuang0516/EClaw/issues/2621)) ([f78ba8b](https://github.com/HankHuang0516/EClaw/commit/f78ba8b18acc426936ab6d8a82ca7541effea00d))
* **avatar:** petdx render on dashboard entity grid / org chart / bindings (Phase 1b) ([#2622](https://github.com/HankHuang0516/EClaw/issues/2622)) ([f417749](https://github.com/HankHuang0516/EClaw/commit/f41774914451048e8cd76e9ae30416a0642e173b)), closes [#2620](https://github.com/HankHuang0516/EClaw/issues/2620) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621)
* **avatar:** petdx render on kanban auto-assign / pulse / comment avatars (Phase 1b) ([#2624](https://github.com/HankHuang0516/EClaw/issues/2624)) ([6bff5f8](https://github.com/HankHuang0516/EClaw/commit/6bff5f80440d0bd91a6b1721cde9478d685c4d46))
* **avatar:** petdx render on mission skill/rule/soul entity dialogs (Phase 1b) ([#2623](https://github.com/HankHuang0516/EClaw/issues/2623)) ([129327b](https://github.com/HankHuang0516/EClaw/commit/129327bc7b91056659f1ab7e8d5e3f5260d951fb))
* **mindmap:** portal/mindmap.html force-graph prototype ([#129](https://github.com/HankHuang0516/EClaw/issues/129)) ([#2681](https://github.com/HankHuang0516/EClaw/issues/2681)) ([0f15e69](https://github.com/HankHuang0516/EClaw/commit/0f15e6930f0697c37fa08f3219edb8f9e499837f)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **portal:** redo nagoya trip page in professional tour-guide style ([#2691](https://github.com/HankHuang0516/EClaw/issues/2691)) ([b2378c0](https://github.com/HankHuang0516/EClaw/commit/b2378c06ee20fa9cccfdceceb1a4c9e0b3072f59))
* **avatar:** render selected petdx companion in chat avatars ([#2620](https://github.com/HankHuang0516/EClaw/issues/2620)) ([0bdd046](https://github.com/HankHuang0516/EClaw/commit/0bdd046fe1b1c428e32edda366ff112c08927f4c))
* **home:** replace native home with WebView hosting dashboard.html ([#2634](https://github.com/HankHuang0516/EClaw/issues/2634)) ([e69ea81](https://github.com/HankHuang0516/EClaw/commit/e69ea8160c239b083a83d6dc83a4f1c3f901c863))
* **app:** route chat mission jumps through native tabs ([#2824](https://github.com/HankHuang0516/EClaw/issues/2824)) ([deb07b6](https://github.com/HankHuang0516/EClaw/commit/deb07b69a9ecca632fe27278de537f1d85234e94))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **chat:** support message deep links ([#2719](https://github.com/HankHuang0516/EClaw/issues/2719)) ([2dc0f1e](https://github.com/HankHuang0516/EClaw/commit/2dc0f1eeb259e1a0848db4a03186b989372cd91c))
* **mission:** support note deep links ([#2717](https://github.com/HankHuang0516/EClaw/issues/2717)) ([2efd3a5](https://github.com/HankHuang0516/EClaw/commit/2efd3a5e741217a07c0b0ac54a0ddd010e0ebe23))
* **share-chat:** twitter card + per-bot og:image/twitter:* in SSR ([#2609](https://github.com/HankHuang0516/EClaw/issues/2609)) ([6cdc853](https://github.com/HankHuang0516/EClaw/commit/6cdc853dc884cdb95bd47214942768981f218ae0))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))
* **settings:** wire petdx avatar into channel-account chips ([#2626](https://github.com/HankHuang0516/EClaw/issues/2626)) ([88aec77](https://github.com/HankHuang0516/EClaw/commit/88aec772628c240e97b336bb5820892ad632d1ae))
* **files:** wire petdx avatar into entity filter & per-file badges ([#2627](https://github.com/HankHuang0516/EClaw/issues/2627)) ([5b3e5cc](https://github.com/HankHuang0516/EClaw/commit/5b3e5cc542d9da69bb4e92500fd03a542ea33f00))
* **mindmap:** wrap hardcoded zh-TW UI strings with i18n t() ([#2607](https://github.com/HankHuang0516/EClaw/issues/2607)) ([166af87](https://github.com/HankHuang0516/EClaw/commit/166af8772b2121a24aaf34a83b3de970e9b3b571)), closes [#2606](https://github.com/HankHuang0516/EClaw/issues/2606)
* **i18n:** zh-TW backfill 8 keys (soft-pause + chat + invite + wallet) ([#2815](https://github.com/HankHuang0516/EClaw/issues/2815)) ([a2dd574](https://github.com/HankHuang0516/EClaw/commit/a2dd5743ce8d43a4b6ace9a2fd4b52568180d6c5))


### Performance Improvements

* **mindmap:** force-graph hardening for 1000/2000-node graphs ([#2684](https://github.com/HankHuang0516/EClaw/issues/2684)) ([da8b1c8](https://github.com/HankHuang0516/EClaw/commit/da8b1c8f947ab8bc8fa455c1962a91146623a1fc))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-15)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **notifications:** add kanban_done + kanban_done_auto toggles to Android Settings ([#2636](https://github.com/HankHuang0516/EClaw/issues/2636)) ([a710909](https://github.com/HankHuang0516/EClaw/commit/a7109095e3393b8564e7ef1b23d382a4fbb944b8))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **i18n:** clear batch 1 residual missing keys ([#2790](https://github.com/HankHuang0516/EClaw/issues/2790)) ([211030e](https://github.com/HankHuang0516/EClaw/commit/211030e0b0b6a865c11f0c4ed60dc4e356d43b7a))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **kanban:** comment input no longer overlaps last comment in card detail (PR [#2678](https://github.com/HankHuang0516/EClaw/issues/2678)) ([fba91fc](https://github.com/HankHuang0516/EClaw/commit/fba91fca15402b453a0db5ee857c0b16e6087055))
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **i18n:** cover dynamic portal wrapper keys ([#2807](https://github.com/HankHuang0516/EClaw/issues/2807)) ([4c711cc](https://github.com/HankHuang0516/EClaw/commit/4c711cc4009300ffe4e8933a98ee01cd0fdd6aeb))
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **petdx:** drop dark-grey loading placeholder + preload sprite WEBP ([#2628](https://github.com/HankHuang0516/EClaw/issues/2628)) ([59cef38](https://github.com/HankHuang0516/EClaw/commit/59cef387bd69ca99d7d15c86a1364856d3849ad8)), closes [#1a1a1a](https://github.com/HankHuang0516/EClaw/issues/1a1a1a)
* **security:** escape innerHTML in chat modal error messages ([#2819](https://github.com/HankHuang0516/EClaw/issues/2819)) ([dce07ad](https://github.com/HankHuang0516/EClaw/commit/dce07adde64795916dba977ae23e46f3371ce7ed)), closes [#2809](https://github.com/HankHuang0516/EClaw/issues/2809) [#2810](https://github.com/HankHuang0516/EClaw/issues/2810) [#2809](https://github.com/HankHuang0516/EClaw/issues/2809) [#2810](https://github.com/HankHuang0516/EClaw/issues/2810)
* **entities:** expose botSecret to owner so wallpaper service can poll companions ([#2615](https://github.com/HankHuang0516/EClaw/issues/2615)) ([04470fc](https://github.com/HankHuang0516/EClaw/commit/04470fce8f8c3fce2b1ba8b243e776606f107502))
* **rental:** expose owner_public_code in marketplace so plaza CTA can route ([#2616](https://github.com/HankHuang0516/EClaw/issues/2616)) ([4d1372f](https://github.com/HankHuang0516/EClaw/commit/4d1372f717d93cab65543e87c852e74e9fb67071)), closes [#2610](https://github.com/HankHuang0516/EClaw/issues/2610)
* **mindmap:** fallback to device scope when entityId is null ([#2728](https://github.com/HankHuang0516/EClaw/issues/2728)) ([7572312](https://github.com/HankHuang0516/EClaw/commit/7572312433d3d75fc245eda48a28919ce14bd927))
* **i18n:** fill Spanish drift keys ([#2751](https://github.com/HankHuang0516/EClaw/issues/2751)) ([0ad0ee5](https://github.com/HankHuang0516/EClaw/commit/0ad0ee55f7fac3e6ac46d891539950dab4d553cc))
* **portal:** fit embedded org chart to mobile viewport ([#2674](https://github.com/HankHuang0516/EClaw/issues/2674)) ([1c4e1b4](https://github.com/HankHuang0516/EClaw/commit/1c4e1b413ea7027b4cd4b8ecda981b0d0e12e66b))
* **i18n:** fix 6 trailing-comma syntax errors in 10-locale batch ([#2771](https://github.com/HankHuang0516/EClaw/issues/2771)) ([b27c6ca](https://github.com/HankHuang0516/EClaw/commit/b27c6ca204bf813e406c54ce3a2532a5f1f031b3))
* **kanban:** GET card returns latest 50 comments + comments endpoint exposes total ([#2816](https://github.com/HankHuang0516/EClaw/issues/2816)) ([c4d83f7](https://github.com/HankHuang0516/EClaw/commit/c4d83f777a1cd26aea0936e4316aa35c52822eef))
* **uiux:** harden chat previews and roster preview ([#2769](https://github.com/HankHuang0516/EClaw/issues/2769)) ([466d4d3](https://github.com/HankHuang0516/EClaw/commit/466d4d3ef81c628d3f58db64323946053d7bf61c))
* **mention-parser:** ignore @-mentions inside markdown code spans ([#2645](https://github.com/HankHuang0516/EClaw/issues/2645)) ([8da19d4](https://github.com/HankHuang0516/EClaw/commit/8da19d4a79ceb4152bf2144ee0847c61ce3e1def)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **kanban:** lazy-load dependency chips via IntersectionObserver ([#2632](https://github.com/HankHuang0516/EClaw/issues/2632)) ([20586b4](https://github.com/HankHuang0516/EClaw/commit/20586b43357335f9eb6a190c02d58c8e36b58aba)), closes [#2631](https://github.com/HankHuang0516/EClaw/issues/2631)
* **kanban:** make card sorting deterministic ([#2756](https://github.com/HankHuang0516/EClaw/issues/2756)) ([48e2117](https://github.com/HankHuang0516/EClaw/commit/48e2117b64e37f05dc635e0a3b67bfd43cbe48f5))
* **org-chart:** notify affected bots on hierarchy change ([#2812](https://github.com/HankHuang0516/EClaw/issues/2812)) ([55675fd](https://github.com/HankHuang0516/EClaw/commit/55675fdf4487494d729a29524b32bd81b756a00c)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** notify reviewer on manual /move → review ([#2753](https://github.com/HankHuang0516/EClaw/issues/2753)) ([6cbbb4e](https://github.com/HankHuang0516/EClaw/commit/6cbbb4ee8c0d4d8ad54df2e9b5faaa3699bd530f))
* **wallpaper:** off-load spritesheet fetch to IO so per-petdx sprites actually render ([#2618](https://github.com/HankHuang0516/EClaw/issues/2618)) ([61b832c](https://github.com/HankHuang0516/EClaw/commit/61b832c9fa8a1d0caab810ccc942d85c63349267)), closes [#2615](https://github.com/HankHuang0516/EClaw/issues/2615) [#2577](https://github.com/HankHuang0516/EClaw/issues/2577)
* **portal:** petdx-browser cookie-session fallback for device-login ([#2757](https://github.com/HankHuang0516/EClaw/issues/2757)) ([ca275f4](https://github.com/HankHuang0516/EClaw/commit/ca275f4519835da0c7ad71c588908a18f6f138d8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **api:** platform-stats 500 + entity/lookup publicCode alias ([#2809](https://github.com/HankHuang0516/EClaw/issues/2809), [#2810](https://github.com/HankHuang0516/EClaw/issues/2810)) ([#2818](https://github.com/HankHuang0516/EClaw/issues/2818)) ([f99fd17](https://github.com/HankHuang0516/EClaw/commit/f99fd17b2b1c32d88daa2510ff66d714c1a53edc))
* **i18n:** positional format specifiers for feedback_result_logs (7 locales) ([#2597](https://github.com/HankHuang0516/EClaw/issues/2597)) ([21aedc7](https://github.com/HankHuang0516/EClaw/commit/21aedc7eebc7a2839e340136f38dfdfd4dabb9dc))
* **avatar-petdx:** preserve descriptor across transient API failures (flicker) ([#2625](https://github.com/HankHuang0516/EClaw/issues/2625)) ([7b1c606](https://github.com/HankHuang0516/EClaw/commit/7b1c606514f7698d72ec95cf6c556e4043966186))
* **chat:** preserve scroll anchor while reading history ([#2693](https://github.com/HankHuang0516/EClaw/issues/2693)) ([945fdb7](https://github.com/HankHuang0516/EClaw/commit/945fdb7192b791b31882e1e75568dd8b11e4686f))
* **promo:** pull video embed from /promo-chat-avatar.html ([#2724](https://github.com/HankHuang0516/EClaw/issues/2724)) ([2afabc8](https://github.com/HankHuang0516/EClaw/commit/2afabc8c5ff8b25218a7cb857e8adfa572c8e9d5))
* **kanban:** realign stale recurring schedules ([#2785](https://github.com/HankHuang0516/EClaw/issues/2785)) ([ab8ee25](https://github.com/HankHuang0516/EClaw/commit/ab8ee250a9b37f3d3e838bb01d8866c8d2b78231))
* **portal:** reduce QA-discovered request fanout ([#2656](https://github.com/HankHuang0516/EClaw/issues/2656)) ([1e46d6b](https://github.com/HankHuang0516/EClaw/commit/1e46d6bab61e58c65b452b6503d953f8dddeee75))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **portal:** remove org chart fit scale floor ([#2676](https://github.com/HankHuang0516/EClaw/issues/2676)) ([0f01606](https://github.com/HankHuang0516/EClaw/commit/0f016068b963bb5f800a02f28817c7174979d913))
* **i18n:** rename mm_empty_title → mm_state_empty_title in mindmap.html ([#2683](https://github.com/HankHuang0516/EClaw/issues/2683)) ([c79c109](https://github.com/HankHuang0516/EClaw/commit/c79c109bea23142e8a6d9ace976d105af1280ec9))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **chat:** render mention avatars with companion renderer ([#2633](https://github.com/HankHuang0516/EClaw/issues/2633)) ([03e205f](https://github.com/HankHuang0516/EClaw/commit/03e205f663ecd2c2f443d4009dd5af0093f0bbbb))
* **kanban:** reserve mobile comments panel height ([#2782](https://github.com/HankHuang0516/EClaw/issues/2782)) ([ce8662d](https://github.com/HankHuang0516/EClaw/commit/ce8662d362422fdd25037f1deb61dbed9425e2f9))
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* scheduled audit 2026-05-13 — 6 bugs, XSS, i18n ([#2668](https://github.com/HankHuang0516/EClaw/issues/2668)) ([21dd513](https://github.com/HankHuang0516/EClaw/commit/21dd513b4464738de29164265437435ba6cc4817)), closes [#2605](https://github.com/HankHuang0516/EClaw/issues/2605) [#2608](https://github.com/HankHuang0516/EClaw/issues/2608) [#2600](https://github.com/HankHuang0516/EClaw/issues/2600) [#2599](https://github.com/HankHuang0516/EClaw/issues/2599) [#2598](https://github.com/HankHuang0516/EClaw/issues/2598)
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **chat:** smart-chip preview falls back to inline c.comments when /comments fails (PR [#2677](https://github.com/HankHuang0516/EClaw/issues/2677)) ([7f4dffd](https://github.com/HankHuang0516/EClaw/commit/7f4dffd2c83ea86f296b8fa0610f0e67c9f1af11))
* **kanban:** stabilize comment detail viewport ([#2796](https://github.com/HankHuang0516/EClaw/issues/2796)) ([0a10aad](https://github.com/HankHuang0516/EClaw/commit/0a10aadb5a5b12ff23454c16d5c88183b94ad7d7))
* **wallpaper:** stop Android live wallpaper flashing default lobster on companion change ([#2629](https://github.com/HankHuang0516/EClaw/issues/2629)) ([8b4f66f](https://github.com/HankHuang0516/EClaw/commit/8b4f66fcb335bf43128f924b761b6337c817095b)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **app:** WebView pages honor app-selected locale via ?lang= URL param ([#2672](https://github.com/HankHuang0516/EClaw/issues/2672)) ([8ed8757](https://github.com/HankHuang0516/EClaw/commit/8ed8757aec5bf214e837cc0d81bf2b23f1993a91)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* **community:** 1-click chat button on bot cards + utm tagging ([#2610](https://github.com/HankHuang0516/EClaw/issues/2610)) ([eee97b0](https://github.com/HankHuang0516/EClaw/commit/eee97b0e2e4e74945ec24f218a69a52800b97a66))
* **chat:** add avatar size preference ([#2714](https://github.com/HankHuang0516/EClaw/issues/2714)) ([6fe164a](https://github.com/HankHuang0516/EClaw/commit/6fe164ad8b22fa576d2dd9ad37c0d9fc295b5a83))
* **dashboard:** add Claude and Codex channel guides ([#2640](https://github.com/HankHuang0516/EClaw/issues/2640)) ([c64e4c4](https://github.com/HankHuang0516/EClaw/commit/c64e4c4afc78db58c5cd578f00486dd7b2fd3311))
* **dashboard:** add Claude Code channel guide card ([#2667](https://github.com/HankHuang0516/EClaw/issues/2667)) ([d70d75c](https://github.com/HankHuang0516/EClaw/commit/d70d75c0c8caa8a540358a9aab4556b8c1927a5c))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* **kanban:** add device-scoped card tags ([#2773](https://github.com/HankHuang0516/EClaw/issues/2773)) ([53a387e](https://github.com/HankHuang0516/EClaw/commit/53a387e67ba7bb4f6bed1c427000c4ae8666577a))
* **portal:** add entity selector to petdx-browser ([#2602](https://github.com/HankHuang0516/EClaw/issues/2602)) ([3fa067e](https://github.com/HankHuang0516/EClaw/commit/3fa067e00b38829b48a37cecd33ee81a9a1122d9))
* **kanban:** add explicit card links ([#2721](https://github.com/HankHuang0516/EClaw/issues/2721)) ([ef9f812](https://github.com/HankHuang0516/EClaw/commit/ef9f812a3fcf39efd07fd158ce90951bdd045ac7))
* **kanban:** add explicit done-card reopen flow ([#2801](https://github.com/HankHuang0516/EClaw/issues/2801)) ([5080aac](https://github.com/HankHuang0516/EClaw/commit/5080aacb75047c0deaa379ee708ec85465afd57c))
* **mindmap:** add GET /api/mindmap/graph force-graph projection ([#2680](https://github.com/HankHuang0516/EClaw/issues/2680)) ([a00b2e7](https://github.com/HankHuang0516/EClaw/commit/a00b2e775af2c4c98cd157f760ad87aeeee469f0)), closes [#2679](https://github.com/HankHuang0516/EClaw/issues/2679) [#2679](https://github.com/HankHuang0516/EClaw/issues/2679)
* **dashboard:** add Hermes channel promo card ([#2708](https://github.com/HankHuang0516/EClaw/issues/2708)) ([337aca1](https://github.com/HankHuang0516/EClaw/commit/337aca153d5a1cd7e888c065f00ae54db7872d91))
* **rental:** add listing soft pause ([#2781](https://github.com/HankHuang0516/EClaw/issues/2781)) ([6586b72](https://github.com/HankHuang0516/EClaw/commit/6586b72717ddb1637d91cd3242c8d2ff554f62b4))
* **portal:** add Nagoya 5D4N trip static cross-ref page ([#2689](https://github.com/HankHuang0516/EClaw/issues/2689)) ([2e0efb6](https://github.com/HankHuang0516/EClaw/commit/2e0efb6dcdaff52226cc8854a96747000b12bdff))
* **portal:** add Nagoya trip map links and image lightbox ([#2821](https://github.com/HankHuang0516/EClaw/issues/2821)) ([3e40955](https://github.com/HankHuang0516/EClaw/commit/3e40955650a05f45a6b9f7e39e73847705424a03))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **settings:** add rental roster management preview ([#2758](https://github.com/HankHuang0516/EClaw/issues/2758)) ([9706e59](https://github.com/HankHuang0516/EClaw/commit/9706e59ded140a90a6e02348124282bc69d89001))
* **rental:** add renter health chat indicator ([#2690](https://github.com/HankHuang0516/EClaw/issues/2690)) ([36cd2e9](https://github.com/HankHuang0516/EClaw/commit/36cd2e9802be4c7ebb03d3024617fa74aca48ffd))
* **ios:** add Tutorial & Intro entry in Settings ([#2800](https://github.com/HankHuang0516/EClaw/issues/2800)) ([ed83e51](https://github.com/HankHuang0516/EClaw/commit/ed83e51d043bf4cd5865f38dc95a91ed54820d6c))
* **landing:** add Watch Full Demo CTA below hero video ([#2799](https://github.com/HankHuang0516/EClaw/issues/2799)) ([66107c9](https://github.com/HankHuang0516/EClaw/commit/66107c954727551fd34d989a4674daaad9b63968))
* **footer:** add Watch Intro Video link in Info column ([#2798](https://github.com/HankHuang0516/EClaw/issues/2798)) ([d7c6d59](https://github.com/HankHuang0516/EClaw/commit/d7c6d596b69c6a5b257bf1f7a792a407ef9712ad))
* **companion:** bridge crafter-station/petdex gallery (1784 pets) ([#2601](https://github.com/HankHuang0516/EClaw/issues/2601)) ([2e245be](https://github.com/HankHuang0516/EClaw/commit/2e245bea6dd47ea7361b927d389188a3c23b6bb3))
* **promo:** chat avatar size feature landing page (self-hosted MP4) ([#2722](https://github.com/HankHuang0516/EClaw/issues/2722)) ([3852210](https://github.com/HankHuang0516/EClaw/commit/3852210d355704d018e3daca6b5f9512a011b210)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **kanban:** cron-spawn jitter + lane backpressure to prevent same-tick wedge ([#2791](https://github.com/HankHuang0516/EClaw/issues/2791)) ([9f414a7](https://github.com/HankHuang0516/EClaw/commit/9f414a731d6393672a0a4189c7b408c529ae5e12)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **promo:** embed daily eclaw video 2026-05-14 ([#2786](https://github.com/HankHuang0516/EClaw/issues/2786)) ([718a814](https://github.com/HankHuang0516/EClaw/commit/718a814ab16850bc2b33a1b303841e2c4378ecfa)), closes [#2782](https://github.com/HankHuang0516/EClaw/issues/2782) [#2693](https://github.com/HankHuang0516/EClaw/issues/2693)
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **info:** embed promo video at top of Quick Start tab ([#2797](https://github.com/HankHuang0516/EClaw/issues/2797)) ([047679f](https://github.com/HankHuang0516/EClaw/commit/047679fd57ab9949eaeacea414d5611e71afe041))
* **rental:** enforce strict rebind refunds ([#2703](https://github.com/HankHuang0516/EClaw/issues/2703)) ([a1859c5](https://github.com/HankHuang0516/EClaw/commit/a1859c50e6fb3991d7a8051491502d824a14a116))
* **portal:** info-guide-rules + info-guide-soul slide pair ([#2793](https://github.com/HankHuang0516/EClaw/issues/2793)) ([1c8bddc](https://github.com/HankHuang0516/EClaw/commit/1c8bddc4c185054b2b60088498e3d45509117127)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **chat:** link card previews to kanban ([#2754](https://github.com/HankHuang0516/EClaw/issues/2754)) ([2261240](https://github.com/HankHuang0516/EClaw/commit/22612402c2e95efb07246629e81a849be41ee9c7))
* **mission:** link notes to kanban cards ([#2723](https://github.com/HankHuang0516/EClaw/issues/2723)) ([b36dc18](https://github.com/HankHuang0516/EClaw/commit/b36dc18f3a8facf12e0b6046351c222f1e99dc55))
* **mindmap:** mission.html link to /portal/mindmap.html + deprecate /api/mission/mindmap ([#2685](https://github.com/HankHuang0516/EClaw/issues/2685)) ([11e297b](https://github.com/HankHuang0516/EClaw/commit/11e297bab1c9b56fcde3027d6500b7c58891bf18)), closes [#2680](https://github.com/HankHuang0516/EClaw/issues/2680) [#2684](https://github.com/HankHuang0516/EClaw/issues/2684)
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **avatar:** petdx render on card-holder my-cards (Phase 1b) ([#2621](https://github.com/HankHuang0516/EClaw/issues/2621)) ([f78ba8b](https://github.com/HankHuang0516/EClaw/commit/f78ba8b18acc426936ab6d8a82ca7541effea00d))
* **avatar:** petdx render on dashboard entity grid / org chart / bindings (Phase 1b) ([#2622](https://github.com/HankHuang0516/EClaw/issues/2622)) ([f417749](https://github.com/HankHuang0516/EClaw/commit/f41774914451048e8cd76e9ae30416a0642e173b)), closes [#2620](https://github.com/HankHuang0516/EClaw/issues/2620) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621)
* **avatar:** petdx render on kanban auto-assign / pulse / comment avatars (Phase 1b) ([#2624](https://github.com/HankHuang0516/EClaw/issues/2624)) ([6bff5f8](https://github.com/HankHuang0516/EClaw/commit/6bff5f80440d0bd91a6b1721cde9478d685c4d46))
* **avatar:** petdx render on mission skill/rule/soul entity dialogs (Phase 1b) ([#2623](https://github.com/HankHuang0516/EClaw/issues/2623)) ([129327b](https://github.com/HankHuang0516/EClaw/commit/129327bc7b91056659f1ab7e8d5e3f5260d951fb))
* **mindmap:** portal/mindmap.html force-graph prototype ([#129](https://github.com/HankHuang0516/EClaw/issues/129)) ([#2681](https://github.com/HankHuang0516/EClaw/issues/2681)) ([0f15e69](https://github.com/HankHuang0516/EClaw/commit/0f15e6930f0697c37fa08f3219edb8f9e499837f)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **portal:** redo nagoya trip page in professional tour-guide style ([#2691](https://github.com/HankHuang0516/EClaw/issues/2691)) ([b2378c0](https://github.com/HankHuang0516/EClaw/commit/b2378c06ee20fa9cccfdceceb1a4c9e0b3072f59))
* **avatar:** render selected petdx companion in chat avatars ([#2620](https://github.com/HankHuang0516/EClaw/issues/2620)) ([0bdd046](https://github.com/HankHuang0516/EClaw/commit/0bdd046fe1b1c428e32edda366ff112c08927f4c))
* **home:** replace native home with WebView hosting dashboard.html ([#2634](https://github.com/HankHuang0516/EClaw/issues/2634)) ([e69ea81](https://github.com/HankHuang0516/EClaw/commit/e69ea8160c239b083a83d6dc83a4f1c3f901c863))
* **app:** route chat mission jumps through native tabs ([#2824](https://github.com/HankHuang0516/EClaw/issues/2824)) ([deb07b6](https://github.com/HankHuang0516/EClaw/commit/deb07b69a9ecca632fe27278de537f1d85234e94))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **chat:** support message deep links ([#2719](https://github.com/HankHuang0516/EClaw/issues/2719)) ([2dc0f1e](https://github.com/HankHuang0516/EClaw/commit/2dc0f1eeb259e1a0848db4a03186b989372cd91c))
* **mission:** support note deep links ([#2717](https://github.com/HankHuang0516/EClaw/issues/2717)) ([2efd3a5](https://github.com/HankHuang0516/EClaw/commit/2efd3a5e741217a07c0b0ac54a0ddd010e0ebe23))
* **share-chat:** twitter card + per-bot og:image/twitter:* in SSR ([#2609](https://github.com/HankHuang0516/EClaw/issues/2609)) ([6cdc853](https://github.com/HankHuang0516/EClaw/commit/6cdc853dc884cdb95bd47214942768981f218ae0))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))
* **settings:** wire petdx avatar into channel-account chips ([#2626](https://github.com/HankHuang0516/EClaw/issues/2626)) ([88aec77](https://github.com/HankHuang0516/EClaw/commit/88aec772628c240e97b336bb5820892ad632d1ae))
* **files:** wire petdx avatar into entity filter & per-file badges ([#2627](https://github.com/HankHuang0516/EClaw/issues/2627)) ([5b3e5cc](https://github.com/HankHuang0516/EClaw/commit/5b3e5cc542d9da69bb4e92500fd03a542ea33f00))
* **mindmap:** wrap hardcoded zh-TW UI strings with i18n t() ([#2607](https://github.com/HankHuang0516/EClaw/issues/2607)) ([166af87](https://github.com/HankHuang0516/EClaw/commit/166af8772b2121a24aaf34a83b3de970e9b3b571)), closes [#2606](https://github.com/HankHuang0516/EClaw/issues/2606)
* **i18n:** zh-TW backfill 8 keys (soft-pause + chat + invite + wallet) ([#2815](https://github.com/HankHuang0516/EClaw/issues/2815)) ([a2dd574](https://github.com/HankHuang0516/EClaw/commit/a2dd5743ce8d43a4b6ace9a2fd4b52568180d6c5))


### Performance Improvements

* **mindmap:** force-graph hardening for 1000/2000-node graphs ([#2684](https://github.com/HankHuang0516/EClaw/issues/2684)) ([da8b1c8](https://github.com/HankHuang0516/EClaw/commit/da8b1c8f947ab8bc8fa455c1962a91146623a1fc))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-15)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **notifications:** add kanban_done + kanban_done_auto toggles to Android Settings ([#2636](https://github.com/HankHuang0516/EClaw/issues/2636)) ([a710909](https://github.com/HankHuang0516/EClaw/commit/a7109095e3393b8564e7ef1b23d382a4fbb944b8))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **i18n:** clear batch 1 residual missing keys ([#2790](https://github.com/HankHuang0516/EClaw/issues/2790)) ([211030e](https://github.com/HankHuang0516/EClaw/commit/211030e0b0b6a865c11f0c4ed60dc4e356d43b7a))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **kanban:** comment input no longer overlaps last comment in card detail (PR [#2678](https://github.com/HankHuang0516/EClaw/issues/2678)) ([fba91fc](https://github.com/HankHuang0516/EClaw/commit/fba91fca15402b453a0db5ee857c0b16e6087055))
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **i18n:** cover dynamic portal wrapper keys ([#2807](https://github.com/HankHuang0516/EClaw/issues/2807)) ([4c711cc](https://github.com/HankHuang0516/EClaw/commit/4c711cc4009300ffe4e8933a98ee01cd0fdd6aeb))
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **petdx:** drop dark-grey loading placeholder + preload sprite WEBP ([#2628](https://github.com/HankHuang0516/EClaw/issues/2628)) ([59cef38](https://github.com/HankHuang0516/EClaw/commit/59cef387bd69ca99d7d15c86a1364856d3849ad8)), closes [#1a1a1a](https://github.com/HankHuang0516/EClaw/issues/1a1a1a)
* **security:** escape innerHTML in chat modal error messages ([#2819](https://github.com/HankHuang0516/EClaw/issues/2819)) ([dce07ad](https://github.com/HankHuang0516/EClaw/commit/dce07adde64795916dba977ae23e46f3371ce7ed)), closes [#2809](https://github.com/HankHuang0516/EClaw/issues/2809) [#2810](https://github.com/HankHuang0516/EClaw/issues/2810) [#2809](https://github.com/HankHuang0516/EClaw/issues/2809) [#2810](https://github.com/HankHuang0516/EClaw/issues/2810)
* **entities:** expose botSecret to owner so wallpaper service can poll companions ([#2615](https://github.com/HankHuang0516/EClaw/issues/2615)) ([04470fc](https://github.com/HankHuang0516/EClaw/commit/04470fce8f8c3fce2b1ba8b243e776606f107502))
* **rental:** expose owner_public_code in marketplace so plaza CTA can route ([#2616](https://github.com/HankHuang0516/EClaw/issues/2616)) ([4d1372f](https://github.com/HankHuang0516/EClaw/commit/4d1372f717d93cab65543e87c852e74e9fb67071)), closes [#2610](https://github.com/HankHuang0516/EClaw/issues/2610)
* **mindmap:** fallback to device scope when entityId is null ([#2728](https://github.com/HankHuang0516/EClaw/issues/2728)) ([7572312](https://github.com/HankHuang0516/EClaw/commit/7572312433d3d75fc245eda48a28919ce14bd927))
* **i18n:** fill Spanish drift keys ([#2751](https://github.com/HankHuang0516/EClaw/issues/2751)) ([0ad0ee5](https://github.com/HankHuang0516/EClaw/commit/0ad0ee55f7fac3e6ac46d891539950dab4d553cc))
* **portal:** fit embedded org chart to mobile viewport ([#2674](https://github.com/HankHuang0516/EClaw/issues/2674)) ([1c4e1b4](https://github.com/HankHuang0516/EClaw/commit/1c4e1b413ea7027b4cd4b8ecda981b0d0e12e66b))
* **i18n:** fix 6 trailing-comma syntax errors in 10-locale batch ([#2771](https://github.com/HankHuang0516/EClaw/issues/2771)) ([b27c6ca](https://github.com/HankHuang0516/EClaw/commit/b27c6ca204bf813e406c54ce3a2532a5f1f031b3))
* **kanban:** GET card returns latest 50 comments + comments endpoint exposes total ([#2816](https://github.com/HankHuang0516/EClaw/issues/2816)) ([c4d83f7](https://github.com/HankHuang0516/EClaw/commit/c4d83f777a1cd26aea0936e4316aa35c52822eef))
* **uiux:** harden chat previews and roster preview ([#2769](https://github.com/HankHuang0516/EClaw/issues/2769)) ([466d4d3](https://github.com/HankHuang0516/EClaw/commit/466d4d3ef81c628d3f58db64323946053d7bf61c))
* **mention-parser:** ignore @-mentions inside markdown code spans ([#2645](https://github.com/HankHuang0516/EClaw/issues/2645)) ([8da19d4](https://github.com/HankHuang0516/EClaw/commit/8da19d4a79ceb4152bf2144ee0847c61ce3e1def)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **kanban:** lazy-load dependency chips via IntersectionObserver ([#2632](https://github.com/HankHuang0516/EClaw/issues/2632)) ([20586b4](https://github.com/HankHuang0516/EClaw/commit/20586b43357335f9eb6a190c02d58c8e36b58aba)), closes [#2631](https://github.com/HankHuang0516/EClaw/issues/2631)
* **kanban:** make card sorting deterministic ([#2756](https://github.com/HankHuang0516/EClaw/issues/2756)) ([48e2117](https://github.com/HankHuang0516/EClaw/commit/48e2117b64e37f05dc635e0a3b67bfd43cbe48f5))
* **org-chart:** notify affected bots on hierarchy change ([#2812](https://github.com/HankHuang0516/EClaw/issues/2812)) ([55675fd](https://github.com/HankHuang0516/EClaw/commit/55675fdf4487494d729a29524b32bd81b756a00c)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** notify reviewer on manual /move → review ([#2753](https://github.com/HankHuang0516/EClaw/issues/2753)) ([6cbbb4e](https://github.com/HankHuang0516/EClaw/commit/6cbbb4ee8c0d4d8ad54df2e9b5faaa3699bd530f))
* **wallpaper:** off-load spritesheet fetch to IO so per-petdx sprites actually render ([#2618](https://github.com/HankHuang0516/EClaw/issues/2618)) ([61b832c](https://github.com/HankHuang0516/EClaw/commit/61b832c9fa8a1d0caab810ccc942d85c63349267)), closes [#2615](https://github.com/HankHuang0516/EClaw/issues/2615) [#2577](https://github.com/HankHuang0516/EClaw/issues/2577)
* **portal:** petdx-browser cookie-session fallback for device-login ([#2757](https://github.com/HankHuang0516/EClaw/issues/2757)) ([ca275f4](https://github.com/HankHuang0516/EClaw/commit/ca275f4519835da0c7ad71c588908a18f6f138d8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **api:** platform-stats 500 + entity/lookup publicCode alias ([#2809](https://github.com/HankHuang0516/EClaw/issues/2809), [#2810](https://github.com/HankHuang0516/EClaw/issues/2810)) ([#2818](https://github.com/HankHuang0516/EClaw/issues/2818)) ([f99fd17](https://github.com/HankHuang0516/EClaw/commit/f99fd17b2b1c32d88daa2510ff66d714c1a53edc))
* **i18n:** positional format specifiers for feedback_result_logs (7 locales) ([#2597](https://github.com/HankHuang0516/EClaw/issues/2597)) ([21aedc7](https://github.com/HankHuang0516/EClaw/commit/21aedc7eebc7a2839e340136f38dfdfd4dabb9dc))
* **avatar-petdx:** preserve descriptor across transient API failures (flicker) ([#2625](https://github.com/HankHuang0516/EClaw/issues/2625)) ([7b1c606](https://github.com/HankHuang0516/EClaw/commit/7b1c606514f7698d72ec95cf6c556e4043966186))
* **chat:** preserve scroll anchor while reading history ([#2693](https://github.com/HankHuang0516/EClaw/issues/2693)) ([945fdb7](https://github.com/HankHuang0516/EClaw/commit/945fdb7192b791b31882e1e75568dd8b11e4686f))
* **promo:** pull video embed from /promo-chat-avatar.html ([#2724](https://github.com/HankHuang0516/EClaw/issues/2724)) ([2afabc8](https://github.com/HankHuang0516/EClaw/commit/2afabc8c5ff8b25218a7cb857e8adfa572c8e9d5))
* **kanban:** realign stale recurring schedules ([#2785](https://github.com/HankHuang0516/EClaw/issues/2785)) ([ab8ee25](https://github.com/HankHuang0516/EClaw/commit/ab8ee250a9b37f3d3e838bb01d8866c8d2b78231))
* **portal:** reduce QA-discovered request fanout ([#2656](https://github.com/HankHuang0516/EClaw/issues/2656)) ([1e46d6b](https://github.com/HankHuang0516/EClaw/commit/1e46d6bab61e58c65b452b6503d953f8dddeee75))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **portal:** remove org chart fit scale floor ([#2676](https://github.com/HankHuang0516/EClaw/issues/2676)) ([0f01606](https://github.com/HankHuang0516/EClaw/commit/0f016068b963bb5f800a02f28817c7174979d913))
* **i18n:** rename mm_empty_title → mm_state_empty_title in mindmap.html ([#2683](https://github.com/HankHuang0516/EClaw/issues/2683)) ([c79c109](https://github.com/HankHuang0516/EClaw/commit/c79c109bea23142e8a6d9ace976d105af1280ec9))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **chat:** render mention avatars with companion renderer ([#2633](https://github.com/HankHuang0516/EClaw/issues/2633)) ([03e205f](https://github.com/HankHuang0516/EClaw/commit/03e205f663ecd2c2f443d4009dd5af0093f0bbbb))
* **kanban:** reserve mobile comments panel height ([#2782](https://github.com/HankHuang0516/EClaw/issues/2782)) ([ce8662d](https://github.com/HankHuang0516/EClaw/commit/ce8662d362422fdd25037f1deb61dbed9425e2f9))
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* scheduled audit 2026-05-13 — 6 bugs, XSS, i18n ([#2668](https://github.com/HankHuang0516/EClaw/issues/2668)) ([21dd513](https://github.com/HankHuang0516/EClaw/commit/21dd513b4464738de29164265437435ba6cc4817)), closes [#2605](https://github.com/HankHuang0516/EClaw/issues/2605) [#2608](https://github.com/HankHuang0516/EClaw/issues/2608) [#2600](https://github.com/HankHuang0516/EClaw/issues/2600) [#2599](https://github.com/HankHuang0516/EClaw/issues/2599) [#2598](https://github.com/HankHuang0516/EClaw/issues/2598)
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **chat:** smart-chip preview falls back to inline c.comments when /comments fails (PR [#2677](https://github.com/HankHuang0516/EClaw/issues/2677)) ([7f4dffd](https://github.com/HankHuang0516/EClaw/commit/7f4dffd2c83ea86f296b8fa0610f0e67c9f1af11))
* **kanban:** stabilize comment detail viewport ([#2796](https://github.com/HankHuang0516/EClaw/issues/2796)) ([0a10aad](https://github.com/HankHuang0516/EClaw/commit/0a10aadb5a5b12ff23454c16d5c88183b94ad7d7))
* **wallpaper:** stop Android live wallpaper flashing default lobster on companion change ([#2629](https://github.com/HankHuang0516/EClaw/issues/2629)) ([8b4f66f](https://github.com/HankHuang0516/EClaw/commit/8b4f66fcb335bf43128f924b761b6337c817095b)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **app:** WebView pages honor app-selected locale via ?lang= URL param ([#2672](https://github.com/HankHuang0516/EClaw/issues/2672)) ([8ed8757](https://github.com/HankHuang0516/EClaw/commit/8ed8757aec5bf214e837cc0d81bf2b23f1993a91)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* **community:** 1-click chat button on bot cards + utm tagging ([#2610](https://github.com/HankHuang0516/EClaw/issues/2610)) ([eee97b0](https://github.com/HankHuang0516/EClaw/commit/eee97b0e2e4e74945ec24f218a69a52800b97a66))
* **chat:** add avatar size preference ([#2714](https://github.com/HankHuang0516/EClaw/issues/2714)) ([6fe164a](https://github.com/HankHuang0516/EClaw/commit/6fe164ad8b22fa576d2dd9ad37c0d9fc295b5a83))
* **dashboard:** add Claude and Codex channel guides ([#2640](https://github.com/HankHuang0516/EClaw/issues/2640)) ([c64e4c4](https://github.com/HankHuang0516/EClaw/commit/c64e4c4afc78db58c5cd578f00486dd7b2fd3311))
* **dashboard:** add Claude Code channel guide card ([#2667](https://github.com/HankHuang0516/EClaw/issues/2667)) ([d70d75c](https://github.com/HankHuang0516/EClaw/commit/d70d75c0c8caa8a540358a9aab4556b8c1927a5c))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* **kanban:** add device-scoped card tags ([#2773](https://github.com/HankHuang0516/EClaw/issues/2773)) ([53a387e](https://github.com/HankHuang0516/EClaw/commit/53a387e67ba7bb4f6bed1c427000c4ae8666577a))
* **portal:** add entity selector to petdx-browser ([#2602](https://github.com/HankHuang0516/EClaw/issues/2602)) ([3fa067e](https://github.com/HankHuang0516/EClaw/commit/3fa067e00b38829b48a37cecd33ee81a9a1122d9))
* **kanban:** add explicit card links ([#2721](https://github.com/HankHuang0516/EClaw/issues/2721)) ([ef9f812](https://github.com/HankHuang0516/EClaw/commit/ef9f812a3fcf39efd07fd158ce90951bdd045ac7))
* **kanban:** add explicit done-card reopen flow ([#2801](https://github.com/HankHuang0516/EClaw/issues/2801)) ([5080aac](https://github.com/HankHuang0516/EClaw/commit/5080aacb75047c0deaa379ee708ec85465afd57c))
* **mindmap:** add GET /api/mindmap/graph force-graph projection ([#2680](https://github.com/HankHuang0516/EClaw/issues/2680)) ([a00b2e7](https://github.com/HankHuang0516/EClaw/commit/a00b2e775af2c4c98cd157f760ad87aeeee469f0)), closes [#2679](https://github.com/HankHuang0516/EClaw/issues/2679) [#2679](https://github.com/HankHuang0516/EClaw/issues/2679)
* **dashboard:** add Hermes channel promo card ([#2708](https://github.com/HankHuang0516/EClaw/issues/2708)) ([337aca1](https://github.com/HankHuang0516/EClaw/commit/337aca153d5a1cd7e888c065f00ae54db7872d91))
* **rental:** add listing soft pause ([#2781](https://github.com/HankHuang0516/EClaw/issues/2781)) ([6586b72](https://github.com/HankHuang0516/EClaw/commit/6586b72717ddb1637d91cd3242c8d2ff554f62b4))
* **portal:** add Nagoya 5D4N trip static cross-ref page ([#2689](https://github.com/HankHuang0516/EClaw/issues/2689)) ([2e0efb6](https://github.com/HankHuang0516/EClaw/commit/2e0efb6dcdaff52226cc8854a96747000b12bdff))
* **portal:** add Nagoya trip map links and image lightbox ([#2821](https://github.com/HankHuang0516/EClaw/issues/2821)) ([3e40955](https://github.com/HankHuang0516/EClaw/commit/3e40955650a05f45a6b9f7e39e73847705424a03))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **settings:** add rental roster management preview ([#2758](https://github.com/HankHuang0516/EClaw/issues/2758)) ([9706e59](https://github.com/HankHuang0516/EClaw/commit/9706e59ded140a90a6e02348124282bc69d89001))
* **rental:** add renter health chat indicator ([#2690](https://github.com/HankHuang0516/EClaw/issues/2690)) ([36cd2e9](https://github.com/HankHuang0516/EClaw/commit/36cd2e9802be4c7ebb03d3024617fa74aca48ffd))
* **ios:** add Tutorial & Intro entry in Settings ([#2800](https://github.com/HankHuang0516/EClaw/issues/2800)) ([ed83e51](https://github.com/HankHuang0516/EClaw/commit/ed83e51d043bf4cd5865f38dc95a91ed54820d6c))
* **landing:** add Watch Full Demo CTA below hero video ([#2799](https://github.com/HankHuang0516/EClaw/issues/2799)) ([66107c9](https://github.com/HankHuang0516/EClaw/commit/66107c954727551fd34d989a4674daaad9b63968))
* **footer:** add Watch Intro Video link in Info column ([#2798](https://github.com/HankHuang0516/EClaw/issues/2798)) ([d7c6d59](https://github.com/HankHuang0516/EClaw/commit/d7c6d596b69c6a5b257bf1f7a792a407ef9712ad))
* **companion:** bridge crafter-station/petdex gallery (1784 pets) ([#2601](https://github.com/HankHuang0516/EClaw/issues/2601)) ([2e245be](https://github.com/HankHuang0516/EClaw/commit/2e245bea6dd47ea7361b927d389188a3c23b6bb3))
* **promo:** chat avatar size feature landing page (self-hosted MP4) ([#2722](https://github.com/HankHuang0516/EClaw/issues/2722)) ([3852210](https://github.com/HankHuang0516/EClaw/commit/3852210d355704d018e3daca6b5f9512a011b210)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **kanban:** cron-spawn jitter + lane backpressure to prevent same-tick wedge ([#2791](https://github.com/HankHuang0516/EClaw/issues/2791)) ([9f414a7](https://github.com/HankHuang0516/EClaw/commit/9f414a731d6393672a0a4189c7b408c529ae5e12)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **promo:** embed daily eclaw video 2026-05-14 ([#2786](https://github.com/HankHuang0516/EClaw/issues/2786)) ([718a814](https://github.com/HankHuang0516/EClaw/commit/718a814ab16850bc2b33a1b303841e2c4378ecfa)), closes [#2782](https://github.com/HankHuang0516/EClaw/issues/2782) [#2693](https://github.com/HankHuang0516/EClaw/issues/2693)
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **info:** embed promo video at top of Quick Start tab ([#2797](https://github.com/HankHuang0516/EClaw/issues/2797)) ([047679f](https://github.com/HankHuang0516/EClaw/commit/047679fd57ab9949eaeacea414d5611e71afe041))
* **rental:** enforce strict rebind refunds ([#2703](https://github.com/HankHuang0516/EClaw/issues/2703)) ([a1859c5](https://github.com/HankHuang0516/EClaw/commit/a1859c50e6fb3991d7a8051491502d824a14a116))
* **portal:** info-guide-rules + info-guide-soul slide pair ([#2793](https://github.com/HankHuang0516/EClaw/issues/2793)) ([1c8bddc](https://github.com/HankHuang0516/EClaw/commit/1c8bddc4c185054b2b60088498e3d45509117127)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **chat:** link card previews to kanban ([#2754](https://github.com/HankHuang0516/EClaw/issues/2754)) ([2261240](https://github.com/HankHuang0516/EClaw/commit/22612402c2e95efb07246629e81a849be41ee9c7))
* **mission:** link notes to kanban cards ([#2723](https://github.com/HankHuang0516/EClaw/issues/2723)) ([b36dc18](https://github.com/HankHuang0516/EClaw/commit/b36dc18f3a8facf12e0b6046351c222f1e99dc55))
* **mindmap:** mission.html link to /portal/mindmap.html + deprecate /api/mission/mindmap ([#2685](https://github.com/HankHuang0516/EClaw/issues/2685)) ([11e297b](https://github.com/HankHuang0516/EClaw/commit/11e297bab1c9b56fcde3027d6500b7c58891bf18)), closes [#2680](https://github.com/HankHuang0516/EClaw/issues/2680) [#2684](https://github.com/HankHuang0516/EClaw/issues/2684)
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **avatar:** petdx render on card-holder my-cards (Phase 1b) ([#2621](https://github.com/HankHuang0516/EClaw/issues/2621)) ([f78ba8b](https://github.com/HankHuang0516/EClaw/commit/f78ba8b18acc426936ab6d8a82ca7541effea00d))
* **avatar:** petdx render on dashboard entity grid / org chart / bindings (Phase 1b) ([#2622](https://github.com/HankHuang0516/EClaw/issues/2622)) ([f417749](https://github.com/HankHuang0516/EClaw/commit/f41774914451048e8cd76e9ae30416a0642e173b)), closes [#2620](https://github.com/HankHuang0516/EClaw/issues/2620) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621)
* **avatar:** petdx render on kanban auto-assign / pulse / comment avatars (Phase 1b) ([#2624](https://github.com/HankHuang0516/EClaw/issues/2624)) ([6bff5f8](https://github.com/HankHuang0516/EClaw/commit/6bff5f80440d0bd91a6b1721cde9478d685c4d46))
* **avatar:** petdx render on mission skill/rule/soul entity dialogs (Phase 1b) ([#2623](https://github.com/HankHuang0516/EClaw/issues/2623)) ([129327b](https://github.com/HankHuang0516/EClaw/commit/129327bc7b91056659f1ab7e8d5e3f5260d951fb))
* **mindmap:** portal/mindmap.html force-graph prototype ([#129](https://github.com/HankHuang0516/EClaw/issues/129)) ([#2681](https://github.com/HankHuang0516/EClaw/issues/2681)) ([0f15e69](https://github.com/HankHuang0516/EClaw/commit/0f15e6930f0697c37fa08f3219edb8f9e499837f)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **portal:** redo nagoya trip page in professional tour-guide style ([#2691](https://github.com/HankHuang0516/EClaw/issues/2691)) ([b2378c0](https://github.com/HankHuang0516/EClaw/commit/b2378c06ee20fa9cccfdceceb1a4c9e0b3072f59))
* **avatar:** render selected petdx companion in chat avatars ([#2620](https://github.com/HankHuang0516/EClaw/issues/2620)) ([0bdd046](https://github.com/HankHuang0516/EClaw/commit/0bdd046fe1b1c428e32edda366ff112c08927f4c))
* **home:** replace native home with WebView hosting dashboard.html ([#2634](https://github.com/HankHuang0516/EClaw/issues/2634)) ([e69ea81](https://github.com/HankHuang0516/EClaw/commit/e69ea8160c239b083a83d6dc83a4f1c3f901c863))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **chat:** support message deep links ([#2719](https://github.com/HankHuang0516/EClaw/issues/2719)) ([2dc0f1e](https://github.com/HankHuang0516/EClaw/commit/2dc0f1eeb259e1a0848db4a03186b989372cd91c))
* **mission:** support note deep links ([#2717](https://github.com/HankHuang0516/EClaw/issues/2717)) ([2efd3a5](https://github.com/HankHuang0516/EClaw/commit/2efd3a5e741217a07c0b0ac54a0ddd010e0ebe23))
* **share-chat:** twitter card + per-bot og:image/twitter:* in SSR ([#2609](https://github.com/HankHuang0516/EClaw/issues/2609)) ([6cdc853](https://github.com/HankHuang0516/EClaw/commit/6cdc853dc884cdb95bd47214942768981f218ae0))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))
* **settings:** wire petdx avatar into channel-account chips ([#2626](https://github.com/HankHuang0516/EClaw/issues/2626)) ([88aec77](https://github.com/HankHuang0516/EClaw/commit/88aec772628c240e97b336bb5820892ad632d1ae))
* **files:** wire petdx avatar into entity filter & per-file badges ([#2627](https://github.com/HankHuang0516/EClaw/issues/2627)) ([5b3e5cc](https://github.com/HankHuang0516/EClaw/commit/5b3e5cc542d9da69bb4e92500fd03a542ea33f00))
* **mindmap:** wrap hardcoded zh-TW UI strings with i18n t() ([#2607](https://github.com/HankHuang0516/EClaw/issues/2607)) ([166af87](https://github.com/HankHuang0516/EClaw/commit/166af8772b2121a24aaf34a83b3de970e9b3b571)), closes [#2606](https://github.com/HankHuang0516/EClaw/issues/2606)
* **i18n:** zh-TW backfill 8 keys (soft-pause + chat + invite + wallet) ([#2815](https://github.com/HankHuang0516/EClaw/issues/2815)) ([a2dd574](https://github.com/HankHuang0516/EClaw/commit/a2dd5743ce8d43a4b6ace9a2fd4b52568180d6c5))


### Performance Improvements

* **mindmap:** force-graph hardening for 1000/2000-node graphs ([#2684](https://github.com/HankHuang0516/EClaw/issues/2684)) ([da8b1c8](https://github.com/HankHuang0516/EClaw/commit/da8b1c8f947ab8bc8fa455c1962a91146623a1fc))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-14)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **notifications:** add kanban_done + kanban_done_auto toggles to Android Settings ([#2636](https://github.com/HankHuang0516/EClaw/issues/2636)) ([a710909](https://github.com/HankHuang0516/EClaw/commit/a7109095e3393b8564e7ef1b23d382a4fbb944b8))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **i18n:** clear batch 1 residual missing keys ([#2790](https://github.com/HankHuang0516/EClaw/issues/2790)) ([211030e](https://github.com/HankHuang0516/EClaw/commit/211030e0b0b6a865c11f0c4ed60dc4e356d43b7a))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **kanban:** comment input no longer overlaps last comment in card detail (PR [#2678](https://github.com/HankHuang0516/EClaw/issues/2678)) ([fba91fc](https://github.com/HankHuang0516/EClaw/commit/fba91fca15402b453a0db5ee857c0b16e6087055))
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **i18n:** cover dynamic portal wrapper keys ([#2807](https://github.com/HankHuang0516/EClaw/issues/2807)) ([4c711cc](https://github.com/HankHuang0516/EClaw/commit/4c711cc4009300ffe4e8933a98ee01cd0fdd6aeb))
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **petdx:** drop dark-grey loading placeholder + preload sprite WEBP ([#2628](https://github.com/HankHuang0516/EClaw/issues/2628)) ([59cef38](https://github.com/HankHuang0516/EClaw/commit/59cef387bd69ca99d7d15c86a1364856d3849ad8)), closes [#1a1a1a](https://github.com/HankHuang0516/EClaw/issues/1a1a1a)
* **security:** escape innerHTML in chat modal error messages ([#2819](https://github.com/HankHuang0516/EClaw/issues/2819)) ([dce07ad](https://github.com/HankHuang0516/EClaw/commit/dce07adde64795916dba977ae23e46f3371ce7ed)), closes [#2809](https://github.com/HankHuang0516/EClaw/issues/2809) [#2810](https://github.com/HankHuang0516/EClaw/issues/2810) [#2809](https://github.com/HankHuang0516/EClaw/issues/2809) [#2810](https://github.com/HankHuang0516/EClaw/issues/2810)
* **entities:** expose botSecret to owner so wallpaper service can poll companions ([#2615](https://github.com/HankHuang0516/EClaw/issues/2615)) ([04470fc](https://github.com/HankHuang0516/EClaw/commit/04470fce8f8c3fce2b1ba8b243e776606f107502))
* **rental:** expose owner_public_code in marketplace so plaza CTA can route ([#2616](https://github.com/HankHuang0516/EClaw/issues/2616)) ([4d1372f](https://github.com/HankHuang0516/EClaw/commit/4d1372f717d93cab65543e87c852e74e9fb67071)), closes [#2610](https://github.com/HankHuang0516/EClaw/issues/2610)
* **mindmap:** fallback to device scope when entityId is null ([#2728](https://github.com/HankHuang0516/EClaw/issues/2728)) ([7572312](https://github.com/HankHuang0516/EClaw/commit/7572312433d3d75fc245eda48a28919ce14bd927))
* **i18n:** fill Spanish drift keys ([#2751](https://github.com/HankHuang0516/EClaw/issues/2751)) ([0ad0ee5](https://github.com/HankHuang0516/EClaw/commit/0ad0ee55f7fac3e6ac46d891539950dab4d553cc))
* **portal:** fit embedded org chart to mobile viewport ([#2674](https://github.com/HankHuang0516/EClaw/issues/2674)) ([1c4e1b4](https://github.com/HankHuang0516/EClaw/commit/1c4e1b413ea7027b4cd4b8ecda981b0d0e12e66b))
* **i18n:** fix 6 trailing-comma syntax errors in 10-locale batch ([#2771](https://github.com/HankHuang0516/EClaw/issues/2771)) ([b27c6ca](https://github.com/HankHuang0516/EClaw/commit/b27c6ca204bf813e406c54ce3a2532a5f1f031b3))
* **kanban:** GET card returns latest 50 comments + comments endpoint exposes total ([#2816](https://github.com/HankHuang0516/EClaw/issues/2816)) ([c4d83f7](https://github.com/HankHuang0516/EClaw/commit/c4d83f777a1cd26aea0936e4316aa35c52822eef))
* **uiux:** harden chat previews and roster preview ([#2769](https://github.com/HankHuang0516/EClaw/issues/2769)) ([466d4d3](https://github.com/HankHuang0516/EClaw/commit/466d4d3ef81c628d3f58db64323946053d7bf61c))
* **mention-parser:** ignore @-mentions inside markdown code spans ([#2645](https://github.com/HankHuang0516/EClaw/issues/2645)) ([8da19d4](https://github.com/HankHuang0516/EClaw/commit/8da19d4a79ceb4152bf2144ee0847c61ce3e1def)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **kanban:** lazy-load dependency chips via IntersectionObserver ([#2632](https://github.com/HankHuang0516/EClaw/issues/2632)) ([20586b4](https://github.com/HankHuang0516/EClaw/commit/20586b43357335f9eb6a190c02d58c8e36b58aba)), closes [#2631](https://github.com/HankHuang0516/EClaw/issues/2631)
* **kanban:** make card sorting deterministic ([#2756](https://github.com/HankHuang0516/EClaw/issues/2756)) ([48e2117](https://github.com/HankHuang0516/EClaw/commit/48e2117b64e37f05dc635e0a3b67bfd43cbe48f5))
* **org-chart:** notify affected bots on hierarchy change ([#2812](https://github.com/HankHuang0516/EClaw/issues/2812)) ([55675fd](https://github.com/HankHuang0516/EClaw/commit/55675fdf4487494d729a29524b32bd81b756a00c)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** notify reviewer on manual /move → review ([#2753](https://github.com/HankHuang0516/EClaw/issues/2753)) ([6cbbb4e](https://github.com/HankHuang0516/EClaw/commit/6cbbb4ee8c0d4d8ad54df2e9b5faaa3699bd530f))
* **wallpaper:** off-load spritesheet fetch to IO so per-petdx sprites actually render ([#2618](https://github.com/HankHuang0516/EClaw/issues/2618)) ([61b832c](https://github.com/HankHuang0516/EClaw/commit/61b832c9fa8a1d0caab810ccc942d85c63349267)), closes [#2615](https://github.com/HankHuang0516/EClaw/issues/2615) [#2577](https://github.com/HankHuang0516/EClaw/issues/2577)
* **portal:** petdx-browser cookie-session fallback for device-login ([#2757](https://github.com/HankHuang0516/EClaw/issues/2757)) ([ca275f4](https://github.com/HankHuang0516/EClaw/commit/ca275f4519835da0c7ad71c588908a18f6f138d8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **api:** platform-stats 500 + entity/lookup publicCode alias ([#2809](https://github.com/HankHuang0516/EClaw/issues/2809), [#2810](https://github.com/HankHuang0516/EClaw/issues/2810)) ([#2818](https://github.com/HankHuang0516/EClaw/issues/2818)) ([f99fd17](https://github.com/HankHuang0516/EClaw/commit/f99fd17b2b1c32d88daa2510ff66d714c1a53edc))
* **i18n:** positional format specifiers for feedback_result_logs (7 locales) ([#2597](https://github.com/HankHuang0516/EClaw/issues/2597)) ([21aedc7](https://github.com/HankHuang0516/EClaw/commit/21aedc7eebc7a2839e340136f38dfdfd4dabb9dc))
* **avatar-petdx:** preserve descriptor across transient API failures (flicker) ([#2625](https://github.com/HankHuang0516/EClaw/issues/2625)) ([7b1c606](https://github.com/HankHuang0516/EClaw/commit/7b1c606514f7698d72ec95cf6c556e4043966186))
* **chat:** preserve scroll anchor while reading history ([#2693](https://github.com/HankHuang0516/EClaw/issues/2693)) ([945fdb7](https://github.com/HankHuang0516/EClaw/commit/945fdb7192b791b31882e1e75568dd8b11e4686f))
* **promo:** pull video embed from /promo-chat-avatar.html ([#2724](https://github.com/HankHuang0516/EClaw/issues/2724)) ([2afabc8](https://github.com/HankHuang0516/EClaw/commit/2afabc8c5ff8b25218a7cb857e8adfa572c8e9d5))
* **kanban:** realign stale recurring schedules ([#2785](https://github.com/HankHuang0516/EClaw/issues/2785)) ([ab8ee25](https://github.com/HankHuang0516/EClaw/commit/ab8ee250a9b37f3d3e838bb01d8866c8d2b78231))
* **portal:** reduce QA-discovered request fanout ([#2656](https://github.com/HankHuang0516/EClaw/issues/2656)) ([1e46d6b](https://github.com/HankHuang0516/EClaw/commit/1e46d6bab61e58c65b452b6503d953f8dddeee75))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **portal:** remove org chart fit scale floor ([#2676](https://github.com/HankHuang0516/EClaw/issues/2676)) ([0f01606](https://github.com/HankHuang0516/EClaw/commit/0f016068b963bb5f800a02f28817c7174979d913))
* **i18n:** rename mm_empty_title → mm_state_empty_title in mindmap.html ([#2683](https://github.com/HankHuang0516/EClaw/issues/2683)) ([c79c109](https://github.com/HankHuang0516/EClaw/commit/c79c109bea23142e8a6d9ace976d105af1280ec9))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **chat:** render mention avatars with companion renderer ([#2633](https://github.com/HankHuang0516/EClaw/issues/2633)) ([03e205f](https://github.com/HankHuang0516/EClaw/commit/03e205f663ecd2c2f443d4009dd5af0093f0bbbb))
* **kanban:** reserve mobile comments panel height ([#2782](https://github.com/HankHuang0516/EClaw/issues/2782)) ([ce8662d](https://github.com/HankHuang0516/EClaw/commit/ce8662d362422fdd25037f1deb61dbed9425e2f9))
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* scheduled audit 2026-05-13 — 6 bugs, XSS, i18n ([#2668](https://github.com/HankHuang0516/EClaw/issues/2668)) ([21dd513](https://github.com/HankHuang0516/EClaw/commit/21dd513b4464738de29164265437435ba6cc4817)), closes [#2605](https://github.com/HankHuang0516/EClaw/issues/2605) [#2608](https://github.com/HankHuang0516/EClaw/issues/2608) [#2600](https://github.com/HankHuang0516/EClaw/issues/2600) [#2599](https://github.com/HankHuang0516/EClaw/issues/2599) [#2598](https://github.com/HankHuang0516/EClaw/issues/2598)
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **chat:** smart-chip preview falls back to inline c.comments when /comments fails (PR [#2677](https://github.com/HankHuang0516/EClaw/issues/2677)) ([7f4dffd](https://github.com/HankHuang0516/EClaw/commit/7f4dffd2c83ea86f296b8fa0610f0e67c9f1af11))
* **kanban:** stabilize comment detail viewport ([#2796](https://github.com/HankHuang0516/EClaw/issues/2796)) ([0a10aad](https://github.com/HankHuang0516/EClaw/commit/0a10aadb5a5b12ff23454c16d5c88183b94ad7d7))
* **wallpaper:** stop Android live wallpaper flashing default lobster on companion change ([#2629](https://github.com/HankHuang0516/EClaw/issues/2629)) ([8b4f66f](https://github.com/HankHuang0516/EClaw/commit/8b4f66fcb335bf43128f924b761b6337c817095b)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **app:** WebView pages honor app-selected locale via ?lang= URL param ([#2672](https://github.com/HankHuang0516/EClaw/issues/2672)) ([8ed8757](https://github.com/HankHuang0516/EClaw/commit/8ed8757aec5bf214e837cc0d81bf2b23f1993a91)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* **community:** 1-click chat button on bot cards + utm tagging ([#2610](https://github.com/HankHuang0516/EClaw/issues/2610)) ([eee97b0](https://github.com/HankHuang0516/EClaw/commit/eee97b0e2e4e74945ec24f218a69a52800b97a66))
* **chat:** add avatar size preference ([#2714](https://github.com/HankHuang0516/EClaw/issues/2714)) ([6fe164a](https://github.com/HankHuang0516/EClaw/commit/6fe164ad8b22fa576d2dd9ad37c0d9fc295b5a83))
* **dashboard:** add Claude and Codex channel guides ([#2640](https://github.com/HankHuang0516/EClaw/issues/2640)) ([c64e4c4](https://github.com/HankHuang0516/EClaw/commit/c64e4c4afc78db58c5cd578f00486dd7b2fd3311))
* **dashboard:** add Claude Code channel guide card ([#2667](https://github.com/HankHuang0516/EClaw/issues/2667)) ([d70d75c](https://github.com/HankHuang0516/EClaw/commit/d70d75c0c8caa8a540358a9aab4556b8c1927a5c))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* **kanban:** add device-scoped card tags ([#2773](https://github.com/HankHuang0516/EClaw/issues/2773)) ([53a387e](https://github.com/HankHuang0516/EClaw/commit/53a387e67ba7bb4f6bed1c427000c4ae8666577a))
* **portal:** add entity selector to petdx-browser ([#2602](https://github.com/HankHuang0516/EClaw/issues/2602)) ([3fa067e](https://github.com/HankHuang0516/EClaw/commit/3fa067e00b38829b48a37cecd33ee81a9a1122d9))
* **kanban:** add explicit card links ([#2721](https://github.com/HankHuang0516/EClaw/issues/2721)) ([ef9f812](https://github.com/HankHuang0516/EClaw/commit/ef9f812a3fcf39efd07fd158ce90951bdd045ac7))
* **kanban:** add explicit done-card reopen flow ([#2801](https://github.com/HankHuang0516/EClaw/issues/2801)) ([5080aac](https://github.com/HankHuang0516/EClaw/commit/5080aacb75047c0deaa379ee708ec85465afd57c))
* **mindmap:** add GET /api/mindmap/graph force-graph projection ([#2680](https://github.com/HankHuang0516/EClaw/issues/2680)) ([a00b2e7](https://github.com/HankHuang0516/EClaw/commit/a00b2e775af2c4c98cd157f760ad87aeeee469f0)), closes [#2679](https://github.com/HankHuang0516/EClaw/issues/2679) [#2679](https://github.com/HankHuang0516/EClaw/issues/2679)
* **dashboard:** add Hermes channel promo card ([#2708](https://github.com/HankHuang0516/EClaw/issues/2708)) ([337aca1](https://github.com/HankHuang0516/EClaw/commit/337aca153d5a1cd7e888c065f00ae54db7872d91))
* **rental:** add listing soft pause ([#2781](https://github.com/HankHuang0516/EClaw/issues/2781)) ([6586b72](https://github.com/HankHuang0516/EClaw/commit/6586b72717ddb1637d91cd3242c8d2ff554f62b4))
* **portal:** add Nagoya 5D4N trip static cross-ref page ([#2689](https://github.com/HankHuang0516/EClaw/issues/2689)) ([2e0efb6](https://github.com/HankHuang0516/EClaw/commit/2e0efb6dcdaff52226cc8854a96747000b12bdff))
* **portal:** add Nagoya trip map links and image lightbox ([#2821](https://github.com/HankHuang0516/EClaw/issues/2821)) ([3e40955](https://github.com/HankHuang0516/EClaw/commit/3e40955650a05f45a6b9f7e39e73847705424a03))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **settings:** add rental roster management preview ([#2758](https://github.com/HankHuang0516/EClaw/issues/2758)) ([9706e59](https://github.com/HankHuang0516/EClaw/commit/9706e59ded140a90a6e02348124282bc69d89001))
* **rental:** add renter health chat indicator ([#2690](https://github.com/HankHuang0516/EClaw/issues/2690)) ([36cd2e9](https://github.com/HankHuang0516/EClaw/commit/36cd2e9802be4c7ebb03d3024617fa74aca48ffd))
* **ios:** add Tutorial & Intro entry in Settings ([#2800](https://github.com/HankHuang0516/EClaw/issues/2800)) ([ed83e51](https://github.com/HankHuang0516/EClaw/commit/ed83e51d043bf4cd5865f38dc95a91ed54820d6c))
* **landing:** add Watch Full Demo CTA below hero video ([#2799](https://github.com/HankHuang0516/EClaw/issues/2799)) ([66107c9](https://github.com/HankHuang0516/EClaw/commit/66107c954727551fd34d989a4674daaad9b63968))
* **footer:** add Watch Intro Video link in Info column ([#2798](https://github.com/HankHuang0516/EClaw/issues/2798)) ([d7c6d59](https://github.com/HankHuang0516/EClaw/commit/d7c6d596b69c6a5b257bf1f7a792a407ef9712ad))
* **companion:** bridge crafter-station/petdex gallery (1784 pets) ([#2601](https://github.com/HankHuang0516/EClaw/issues/2601)) ([2e245be](https://github.com/HankHuang0516/EClaw/commit/2e245bea6dd47ea7361b927d389188a3c23b6bb3))
* **promo:** chat avatar size feature landing page (self-hosted MP4) ([#2722](https://github.com/HankHuang0516/EClaw/issues/2722)) ([3852210](https://github.com/HankHuang0516/EClaw/commit/3852210d355704d018e3daca6b5f9512a011b210)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **kanban:** cron-spawn jitter + lane backpressure to prevent same-tick wedge ([#2791](https://github.com/HankHuang0516/EClaw/issues/2791)) ([9f414a7](https://github.com/HankHuang0516/EClaw/commit/9f414a731d6393672a0a4189c7b408c529ae5e12)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **promo:** embed daily eclaw video 2026-05-14 ([#2786](https://github.com/HankHuang0516/EClaw/issues/2786)) ([718a814](https://github.com/HankHuang0516/EClaw/commit/718a814ab16850bc2b33a1b303841e2c4378ecfa)), closes [#2782](https://github.com/HankHuang0516/EClaw/issues/2782) [#2693](https://github.com/HankHuang0516/EClaw/issues/2693)
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **info:** embed promo video at top of Quick Start tab ([#2797](https://github.com/HankHuang0516/EClaw/issues/2797)) ([047679f](https://github.com/HankHuang0516/EClaw/commit/047679fd57ab9949eaeacea414d5611e71afe041))
* **rental:** enforce strict rebind refunds ([#2703](https://github.com/HankHuang0516/EClaw/issues/2703)) ([a1859c5](https://github.com/HankHuang0516/EClaw/commit/a1859c50e6fb3991d7a8051491502d824a14a116))
* **portal:** info-guide-rules + info-guide-soul slide pair ([#2793](https://github.com/HankHuang0516/EClaw/issues/2793)) ([1c8bddc](https://github.com/HankHuang0516/EClaw/commit/1c8bddc4c185054b2b60088498e3d45509117127)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **chat:** link card previews to kanban ([#2754](https://github.com/HankHuang0516/EClaw/issues/2754)) ([2261240](https://github.com/HankHuang0516/EClaw/commit/22612402c2e95efb07246629e81a849be41ee9c7))
* **mission:** link notes to kanban cards ([#2723](https://github.com/HankHuang0516/EClaw/issues/2723)) ([b36dc18](https://github.com/HankHuang0516/EClaw/commit/b36dc18f3a8facf12e0b6046351c222f1e99dc55))
* **mindmap:** mission.html link to /portal/mindmap.html + deprecate /api/mission/mindmap ([#2685](https://github.com/HankHuang0516/EClaw/issues/2685)) ([11e297b](https://github.com/HankHuang0516/EClaw/commit/11e297bab1c9b56fcde3027d6500b7c58891bf18)), closes [#2680](https://github.com/HankHuang0516/EClaw/issues/2680) [#2684](https://github.com/HankHuang0516/EClaw/issues/2684)
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **avatar:** petdx render on card-holder my-cards (Phase 1b) ([#2621](https://github.com/HankHuang0516/EClaw/issues/2621)) ([f78ba8b](https://github.com/HankHuang0516/EClaw/commit/f78ba8b18acc426936ab6d8a82ca7541effea00d))
* **avatar:** petdx render on dashboard entity grid / org chart / bindings (Phase 1b) ([#2622](https://github.com/HankHuang0516/EClaw/issues/2622)) ([f417749](https://github.com/HankHuang0516/EClaw/commit/f41774914451048e8cd76e9ae30416a0642e173b)), closes [#2620](https://github.com/HankHuang0516/EClaw/issues/2620) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621)
* **avatar:** petdx render on kanban auto-assign / pulse / comment avatars (Phase 1b) ([#2624](https://github.com/HankHuang0516/EClaw/issues/2624)) ([6bff5f8](https://github.com/HankHuang0516/EClaw/commit/6bff5f80440d0bd91a6b1721cde9478d685c4d46))
* **avatar:** petdx render on mission skill/rule/soul entity dialogs (Phase 1b) ([#2623](https://github.com/HankHuang0516/EClaw/issues/2623)) ([129327b](https://github.com/HankHuang0516/EClaw/commit/129327bc7b91056659f1ab7e8d5e3f5260d951fb))
* **mindmap:** portal/mindmap.html force-graph prototype ([#129](https://github.com/HankHuang0516/EClaw/issues/129)) ([#2681](https://github.com/HankHuang0516/EClaw/issues/2681)) ([0f15e69](https://github.com/HankHuang0516/EClaw/commit/0f15e6930f0697c37fa08f3219edb8f9e499837f)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **portal:** redo nagoya trip page in professional tour-guide style ([#2691](https://github.com/HankHuang0516/EClaw/issues/2691)) ([b2378c0](https://github.com/HankHuang0516/EClaw/commit/b2378c06ee20fa9cccfdceceb1a4c9e0b3072f59))
* **avatar:** render selected petdx companion in chat avatars ([#2620](https://github.com/HankHuang0516/EClaw/issues/2620)) ([0bdd046](https://github.com/HankHuang0516/EClaw/commit/0bdd046fe1b1c428e32edda366ff112c08927f4c))
* **home:** replace native home with WebView hosting dashboard.html ([#2634](https://github.com/HankHuang0516/EClaw/issues/2634)) ([e69ea81](https://github.com/HankHuang0516/EClaw/commit/e69ea8160c239b083a83d6dc83a4f1c3f901c863))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **chat:** support message deep links ([#2719](https://github.com/HankHuang0516/EClaw/issues/2719)) ([2dc0f1e](https://github.com/HankHuang0516/EClaw/commit/2dc0f1eeb259e1a0848db4a03186b989372cd91c))
* **mission:** support note deep links ([#2717](https://github.com/HankHuang0516/EClaw/issues/2717)) ([2efd3a5](https://github.com/HankHuang0516/EClaw/commit/2efd3a5e741217a07c0b0ac54a0ddd010e0ebe23))
* **share-chat:** twitter card + per-bot og:image/twitter:* in SSR ([#2609](https://github.com/HankHuang0516/EClaw/issues/2609)) ([6cdc853](https://github.com/HankHuang0516/EClaw/commit/6cdc853dc884cdb95bd47214942768981f218ae0))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))
* **settings:** wire petdx avatar into channel-account chips ([#2626](https://github.com/HankHuang0516/EClaw/issues/2626)) ([88aec77](https://github.com/HankHuang0516/EClaw/commit/88aec772628c240e97b336bb5820892ad632d1ae))
* **files:** wire petdx avatar into entity filter & per-file badges ([#2627](https://github.com/HankHuang0516/EClaw/issues/2627)) ([5b3e5cc](https://github.com/HankHuang0516/EClaw/commit/5b3e5cc542d9da69bb4e92500fd03a542ea33f00))
* **mindmap:** wrap hardcoded zh-TW UI strings with i18n t() ([#2607](https://github.com/HankHuang0516/EClaw/issues/2607)) ([166af87](https://github.com/HankHuang0516/EClaw/commit/166af8772b2121a24aaf34a83b3de970e9b3b571)), closes [#2606](https://github.com/HankHuang0516/EClaw/issues/2606)
* **i18n:** zh-TW backfill 8 keys (soft-pause + chat + invite + wallet) ([#2815](https://github.com/HankHuang0516/EClaw/issues/2815)) ([a2dd574](https://github.com/HankHuang0516/EClaw/commit/a2dd5743ce8d43a4b6ace9a2fd4b52568180d6c5))


### Performance Improvements

* **mindmap:** force-graph hardening for 1000/2000-node graphs ([#2684](https://github.com/HankHuang0516/EClaw/issues/2684)) ([da8b1c8](https://github.com/HankHuang0516/EClaw/commit/da8b1c8f947ab8bc8fa455c1962a91146623a1fc))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-14)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **notifications:** add kanban_done + kanban_done_auto toggles to Android Settings ([#2636](https://github.com/HankHuang0516/EClaw/issues/2636)) ([a710909](https://github.com/HankHuang0516/EClaw/commit/a7109095e3393b8564e7ef1b23d382a4fbb944b8))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **i18n:** clear batch 1 residual missing keys ([#2790](https://github.com/HankHuang0516/EClaw/issues/2790)) ([211030e](https://github.com/HankHuang0516/EClaw/commit/211030e0b0b6a865c11f0c4ed60dc4e356d43b7a))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **kanban:** comment input no longer overlaps last comment in card detail (PR [#2678](https://github.com/HankHuang0516/EClaw/issues/2678)) ([fba91fc](https://github.com/HankHuang0516/EClaw/commit/fba91fca15402b453a0db5ee857c0b16e6087055))
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **i18n:** cover dynamic portal wrapper keys ([#2807](https://github.com/HankHuang0516/EClaw/issues/2807)) ([4c711cc](https://github.com/HankHuang0516/EClaw/commit/4c711cc4009300ffe4e8933a98ee01cd0fdd6aeb))
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **petdx:** drop dark-grey loading placeholder + preload sprite WEBP ([#2628](https://github.com/HankHuang0516/EClaw/issues/2628)) ([59cef38](https://github.com/HankHuang0516/EClaw/commit/59cef387bd69ca99d7d15c86a1364856d3849ad8)), closes [#1a1a1a](https://github.com/HankHuang0516/EClaw/issues/1a1a1a)
* **security:** escape innerHTML in chat modal error messages ([#2819](https://github.com/HankHuang0516/EClaw/issues/2819)) ([dce07ad](https://github.com/HankHuang0516/EClaw/commit/dce07adde64795916dba977ae23e46f3371ce7ed)), closes [#2809](https://github.com/HankHuang0516/EClaw/issues/2809) [#2810](https://github.com/HankHuang0516/EClaw/issues/2810) [#2809](https://github.com/HankHuang0516/EClaw/issues/2809) [#2810](https://github.com/HankHuang0516/EClaw/issues/2810)
* **entities:** expose botSecret to owner so wallpaper service can poll companions ([#2615](https://github.com/HankHuang0516/EClaw/issues/2615)) ([04470fc](https://github.com/HankHuang0516/EClaw/commit/04470fce8f8c3fce2b1ba8b243e776606f107502))
* **rental:** expose owner_public_code in marketplace so plaza CTA can route ([#2616](https://github.com/HankHuang0516/EClaw/issues/2616)) ([4d1372f](https://github.com/HankHuang0516/EClaw/commit/4d1372f717d93cab65543e87c852e74e9fb67071)), closes [#2610](https://github.com/HankHuang0516/EClaw/issues/2610)
* **mindmap:** fallback to device scope when entityId is null ([#2728](https://github.com/HankHuang0516/EClaw/issues/2728)) ([7572312](https://github.com/HankHuang0516/EClaw/commit/7572312433d3d75fc245eda48a28919ce14bd927))
* **i18n:** fill Spanish drift keys ([#2751](https://github.com/HankHuang0516/EClaw/issues/2751)) ([0ad0ee5](https://github.com/HankHuang0516/EClaw/commit/0ad0ee55f7fac3e6ac46d891539950dab4d553cc))
* **portal:** fit embedded org chart to mobile viewport ([#2674](https://github.com/HankHuang0516/EClaw/issues/2674)) ([1c4e1b4](https://github.com/HankHuang0516/EClaw/commit/1c4e1b413ea7027b4cd4b8ecda981b0d0e12e66b))
* **i18n:** fix 6 trailing-comma syntax errors in 10-locale batch ([#2771](https://github.com/HankHuang0516/EClaw/issues/2771)) ([b27c6ca](https://github.com/HankHuang0516/EClaw/commit/b27c6ca204bf813e406c54ce3a2532a5f1f031b3))
* **kanban:** GET card returns latest 50 comments + comments endpoint exposes total ([#2816](https://github.com/HankHuang0516/EClaw/issues/2816)) ([c4d83f7](https://github.com/HankHuang0516/EClaw/commit/c4d83f777a1cd26aea0936e4316aa35c52822eef))
* **uiux:** harden chat previews and roster preview ([#2769](https://github.com/HankHuang0516/EClaw/issues/2769)) ([466d4d3](https://github.com/HankHuang0516/EClaw/commit/466d4d3ef81c628d3f58db64323946053d7bf61c))
* **mention-parser:** ignore @-mentions inside markdown code spans ([#2645](https://github.com/HankHuang0516/EClaw/issues/2645)) ([8da19d4](https://github.com/HankHuang0516/EClaw/commit/8da19d4a79ceb4152bf2144ee0847c61ce3e1def)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **kanban:** lazy-load dependency chips via IntersectionObserver ([#2632](https://github.com/HankHuang0516/EClaw/issues/2632)) ([20586b4](https://github.com/HankHuang0516/EClaw/commit/20586b43357335f9eb6a190c02d58c8e36b58aba)), closes [#2631](https://github.com/HankHuang0516/EClaw/issues/2631)
* **kanban:** make card sorting deterministic ([#2756](https://github.com/HankHuang0516/EClaw/issues/2756)) ([48e2117](https://github.com/HankHuang0516/EClaw/commit/48e2117b64e37f05dc635e0a3b67bfd43cbe48f5))
* **org-chart:** notify affected bots on hierarchy change ([#2812](https://github.com/HankHuang0516/EClaw/issues/2812)) ([55675fd](https://github.com/HankHuang0516/EClaw/commit/55675fdf4487494d729a29524b32bd81b756a00c)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** notify reviewer on manual /move → review ([#2753](https://github.com/HankHuang0516/EClaw/issues/2753)) ([6cbbb4e](https://github.com/HankHuang0516/EClaw/commit/6cbbb4ee8c0d4d8ad54df2e9b5faaa3699bd530f))
* **wallpaper:** off-load spritesheet fetch to IO so per-petdx sprites actually render ([#2618](https://github.com/HankHuang0516/EClaw/issues/2618)) ([61b832c](https://github.com/HankHuang0516/EClaw/commit/61b832c9fa8a1d0caab810ccc942d85c63349267)), closes [#2615](https://github.com/HankHuang0516/EClaw/issues/2615) [#2577](https://github.com/HankHuang0516/EClaw/issues/2577)
* **portal:** petdx-browser cookie-session fallback for device-login ([#2757](https://github.com/HankHuang0516/EClaw/issues/2757)) ([ca275f4](https://github.com/HankHuang0516/EClaw/commit/ca275f4519835da0c7ad71c588908a18f6f138d8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **api:** platform-stats 500 + entity/lookup publicCode alias ([#2809](https://github.com/HankHuang0516/EClaw/issues/2809), [#2810](https://github.com/HankHuang0516/EClaw/issues/2810)) ([#2818](https://github.com/HankHuang0516/EClaw/issues/2818)) ([f99fd17](https://github.com/HankHuang0516/EClaw/commit/f99fd17b2b1c32d88daa2510ff66d714c1a53edc))
* **i18n:** positional format specifiers for feedback_result_logs (7 locales) ([#2597](https://github.com/HankHuang0516/EClaw/issues/2597)) ([21aedc7](https://github.com/HankHuang0516/EClaw/commit/21aedc7eebc7a2839e340136f38dfdfd4dabb9dc))
* **avatar-petdx:** preserve descriptor across transient API failures (flicker) ([#2625](https://github.com/HankHuang0516/EClaw/issues/2625)) ([7b1c606](https://github.com/HankHuang0516/EClaw/commit/7b1c606514f7698d72ec95cf6c556e4043966186))
* **chat:** preserve scroll anchor while reading history ([#2693](https://github.com/HankHuang0516/EClaw/issues/2693)) ([945fdb7](https://github.com/HankHuang0516/EClaw/commit/945fdb7192b791b31882e1e75568dd8b11e4686f))
* **promo:** pull video embed from /promo-chat-avatar.html ([#2724](https://github.com/HankHuang0516/EClaw/issues/2724)) ([2afabc8](https://github.com/HankHuang0516/EClaw/commit/2afabc8c5ff8b25218a7cb857e8adfa572c8e9d5))
* **kanban:** realign stale recurring schedules ([#2785](https://github.com/HankHuang0516/EClaw/issues/2785)) ([ab8ee25](https://github.com/HankHuang0516/EClaw/commit/ab8ee250a9b37f3d3e838bb01d8866c8d2b78231))
* **portal:** reduce QA-discovered request fanout ([#2656](https://github.com/HankHuang0516/EClaw/issues/2656)) ([1e46d6b](https://github.com/HankHuang0516/EClaw/commit/1e46d6bab61e58c65b452b6503d953f8dddeee75))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **portal:** remove org chart fit scale floor ([#2676](https://github.com/HankHuang0516/EClaw/issues/2676)) ([0f01606](https://github.com/HankHuang0516/EClaw/commit/0f016068b963bb5f800a02f28817c7174979d913))
* **i18n:** rename mm_empty_title → mm_state_empty_title in mindmap.html ([#2683](https://github.com/HankHuang0516/EClaw/issues/2683)) ([c79c109](https://github.com/HankHuang0516/EClaw/commit/c79c109bea23142e8a6d9ace976d105af1280ec9))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **chat:** render mention avatars with companion renderer ([#2633](https://github.com/HankHuang0516/EClaw/issues/2633)) ([03e205f](https://github.com/HankHuang0516/EClaw/commit/03e205f663ecd2c2f443d4009dd5af0093f0bbbb))
* **kanban:** reserve mobile comments panel height ([#2782](https://github.com/HankHuang0516/EClaw/issues/2782)) ([ce8662d](https://github.com/HankHuang0516/EClaw/commit/ce8662d362422fdd25037f1deb61dbed9425e2f9))
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* scheduled audit 2026-05-13 — 6 bugs, XSS, i18n ([#2668](https://github.com/HankHuang0516/EClaw/issues/2668)) ([21dd513](https://github.com/HankHuang0516/EClaw/commit/21dd513b4464738de29164265437435ba6cc4817)), closes [#2605](https://github.com/HankHuang0516/EClaw/issues/2605) [#2608](https://github.com/HankHuang0516/EClaw/issues/2608) [#2600](https://github.com/HankHuang0516/EClaw/issues/2600) [#2599](https://github.com/HankHuang0516/EClaw/issues/2599) [#2598](https://github.com/HankHuang0516/EClaw/issues/2598)
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **chat:** smart-chip preview falls back to inline c.comments when /comments fails (PR [#2677](https://github.com/HankHuang0516/EClaw/issues/2677)) ([7f4dffd](https://github.com/HankHuang0516/EClaw/commit/7f4dffd2c83ea86f296b8fa0610f0e67c9f1af11))
* **kanban:** stabilize comment detail viewport ([#2796](https://github.com/HankHuang0516/EClaw/issues/2796)) ([0a10aad](https://github.com/HankHuang0516/EClaw/commit/0a10aadb5a5b12ff23454c16d5c88183b94ad7d7))
* **wallpaper:** stop Android live wallpaper flashing default lobster on companion change ([#2629](https://github.com/HankHuang0516/EClaw/issues/2629)) ([8b4f66f](https://github.com/HankHuang0516/EClaw/commit/8b4f66fcb335bf43128f924b761b6337c817095b)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **app:** WebView pages honor app-selected locale via ?lang= URL param ([#2672](https://github.com/HankHuang0516/EClaw/issues/2672)) ([8ed8757](https://github.com/HankHuang0516/EClaw/commit/8ed8757aec5bf214e837cc0d81bf2b23f1993a91)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* **community:** 1-click chat button on bot cards + utm tagging ([#2610](https://github.com/HankHuang0516/EClaw/issues/2610)) ([eee97b0](https://github.com/HankHuang0516/EClaw/commit/eee97b0e2e4e74945ec24f218a69a52800b97a66))
* **chat:** add avatar size preference ([#2714](https://github.com/HankHuang0516/EClaw/issues/2714)) ([6fe164a](https://github.com/HankHuang0516/EClaw/commit/6fe164ad8b22fa576d2dd9ad37c0d9fc295b5a83))
* **dashboard:** add Claude and Codex channel guides ([#2640](https://github.com/HankHuang0516/EClaw/issues/2640)) ([c64e4c4](https://github.com/HankHuang0516/EClaw/commit/c64e4c4afc78db58c5cd578f00486dd7b2fd3311))
* **dashboard:** add Claude Code channel guide card ([#2667](https://github.com/HankHuang0516/EClaw/issues/2667)) ([d70d75c](https://github.com/HankHuang0516/EClaw/commit/d70d75c0c8caa8a540358a9aab4556b8c1927a5c))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* **kanban:** add device-scoped card tags ([#2773](https://github.com/HankHuang0516/EClaw/issues/2773)) ([53a387e](https://github.com/HankHuang0516/EClaw/commit/53a387e67ba7bb4f6bed1c427000c4ae8666577a))
* **portal:** add entity selector to petdx-browser ([#2602](https://github.com/HankHuang0516/EClaw/issues/2602)) ([3fa067e](https://github.com/HankHuang0516/EClaw/commit/3fa067e00b38829b48a37cecd33ee81a9a1122d9))
* **kanban:** add explicit card links ([#2721](https://github.com/HankHuang0516/EClaw/issues/2721)) ([ef9f812](https://github.com/HankHuang0516/EClaw/commit/ef9f812a3fcf39efd07fd158ce90951bdd045ac7))
* **kanban:** add explicit done-card reopen flow ([#2801](https://github.com/HankHuang0516/EClaw/issues/2801)) ([5080aac](https://github.com/HankHuang0516/EClaw/commit/5080aacb75047c0deaa379ee708ec85465afd57c))
* **mindmap:** add GET /api/mindmap/graph force-graph projection ([#2680](https://github.com/HankHuang0516/EClaw/issues/2680)) ([a00b2e7](https://github.com/HankHuang0516/EClaw/commit/a00b2e775af2c4c98cd157f760ad87aeeee469f0)), closes [#2679](https://github.com/HankHuang0516/EClaw/issues/2679) [#2679](https://github.com/HankHuang0516/EClaw/issues/2679)
* **dashboard:** add Hermes channel promo card ([#2708](https://github.com/HankHuang0516/EClaw/issues/2708)) ([337aca1](https://github.com/HankHuang0516/EClaw/commit/337aca153d5a1cd7e888c065f00ae54db7872d91))
* **rental:** add listing soft pause ([#2781](https://github.com/HankHuang0516/EClaw/issues/2781)) ([6586b72](https://github.com/HankHuang0516/EClaw/commit/6586b72717ddb1637d91cd3242c8d2ff554f62b4))
* **portal:** add Nagoya 5D4N trip static cross-ref page ([#2689](https://github.com/HankHuang0516/EClaw/issues/2689)) ([2e0efb6](https://github.com/HankHuang0516/EClaw/commit/2e0efb6dcdaff52226cc8854a96747000b12bdff))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **settings:** add rental roster management preview ([#2758](https://github.com/HankHuang0516/EClaw/issues/2758)) ([9706e59](https://github.com/HankHuang0516/EClaw/commit/9706e59ded140a90a6e02348124282bc69d89001))
* **rental:** add renter health chat indicator ([#2690](https://github.com/HankHuang0516/EClaw/issues/2690)) ([36cd2e9](https://github.com/HankHuang0516/EClaw/commit/36cd2e9802be4c7ebb03d3024617fa74aca48ffd))
* **ios:** add Tutorial & Intro entry in Settings ([#2800](https://github.com/HankHuang0516/EClaw/issues/2800)) ([ed83e51](https://github.com/HankHuang0516/EClaw/commit/ed83e51d043bf4cd5865f38dc95a91ed54820d6c))
* **landing:** add Watch Full Demo CTA below hero video ([#2799](https://github.com/HankHuang0516/EClaw/issues/2799)) ([66107c9](https://github.com/HankHuang0516/EClaw/commit/66107c954727551fd34d989a4674daaad9b63968))
* **footer:** add Watch Intro Video link in Info column ([#2798](https://github.com/HankHuang0516/EClaw/issues/2798)) ([d7c6d59](https://github.com/HankHuang0516/EClaw/commit/d7c6d596b69c6a5b257bf1f7a792a407ef9712ad))
* **companion:** bridge crafter-station/petdex gallery (1784 pets) ([#2601](https://github.com/HankHuang0516/EClaw/issues/2601)) ([2e245be](https://github.com/HankHuang0516/EClaw/commit/2e245bea6dd47ea7361b927d389188a3c23b6bb3))
* **promo:** chat avatar size feature landing page (self-hosted MP4) ([#2722](https://github.com/HankHuang0516/EClaw/issues/2722)) ([3852210](https://github.com/HankHuang0516/EClaw/commit/3852210d355704d018e3daca6b5f9512a011b210)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **kanban:** cron-spawn jitter + lane backpressure to prevent same-tick wedge ([#2791](https://github.com/HankHuang0516/EClaw/issues/2791)) ([9f414a7](https://github.com/HankHuang0516/EClaw/commit/9f414a731d6393672a0a4189c7b408c529ae5e12)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **promo:** embed daily eclaw video 2026-05-14 ([#2786](https://github.com/HankHuang0516/EClaw/issues/2786)) ([718a814](https://github.com/HankHuang0516/EClaw/commit/718a814ab16850bc2b33a1b303841e2c4378ecfa)), closes [#2782](https://github.com/HankHuang0516/EClaw/issues/2782) [#2693](https://github.com/HankHuang0516/EClaw/issues/2693)
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **info:** embed promo video at top of Quick Start tab ([#2797](https://github.com/HankHuang0516/EClaw/issues/2797)) ([047679f](https://github.com/HankHuang0516/EClaw/commit/047679fd57ab9949eaeacea414d5611e71afe041))
* **rental:** enforce strict rebind refunds ([#2703](https://github.com/HankHuang0516/EClaw/issues/2703)) ([a1859c5](https://github.com/HankHuang0516/EClaw/commit/a1859c50e6fb3991d7a8051491502d824a14a116))
* **portal:** info-guide-rules + info-guide-soul slide pair ([#2793](https://github.com/HankHuang0516/EClaw/issues/2793)) ([1c8bddc](https://github.com/HankHuang0516/EClaw/commit/1c8bddc4c185054b2b60088498e3d45509117127)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **chat:** link card previews to kanban ([#2754](https://github.com/HankHuang0516/EClaw/issues/2754)) ([2261240](https://github.com/HankHuang0516/EClaw/commit/22612402c2e95efb07246629e81a849be41ee9c7))
* **mission:** link notes to kanban cards ([#2723](https://github.com/HankHuang0516/EClaw/issues/2723)) ([b36dc18](https://github.com/HankHuang0516/EClaw/commit/b36dc18f3a8facf12e0b6046351c222f1e99dc55))
* **mindmap:** mission.html link to /portal/mindmap.html + deprecate /api/mission/mindmap ([#2685](https://github.com/HankHuang0516/EClaw/issues/2685)) ([11e297b](https://github.com/HankHuang0516/EClaw/commit/11e297bab1c9b56fcde3027d6500b7c58891bf18)), closes [#2680](https://github.com/HankHuang0516/EClaw/issues/2680) [#2684](https://github.com/HankHuang0516/EClaw/issues/2684)
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **avatar:** petdx render on card-holder my-cards (Phase 1b) ([#2621](https://github.com/HankHuang0516/EClaw/issues/2621)) ([f78ba8b](https://github.com/HankHuang0516/EClaw/commit/f78ba8b18acc426936ab6d8a82ca7541effea00d))
* **avatar:** petdx render on dashboard entity grid / org chart / bindings (Phase 1b) ([#2622](https://github.com/HankHuang0516/EClaw/issues/2622)) ([f417749](https://github.com/HankHuang0516/EClaw/commit/f41774914451048e8cd76e9ae30416a0642e173b)), closes [#2620](https://github.com/HankHuang0516/EClaw/issues/2620) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621)
* **avatar:** petdx render on kanban auto-assign / pulse / comment avatars (Phase 1b) ([#2624](https://github.com/HankHuang0516/EClaw/issues/2624)) ([6bff5f8](https://github.com/HankHuang0516/EClaw/commit/6bff5f80440d0bd91a6b1721cde9478d685c4d46))
* **avatar:** petdx render on mission skill/rule/soul entity dialogs (Phase 1b) ([#2623](https://github.com/HankHuang0516/EClaw/issues/2623)) ([129327b](https://github.com/HankHuang0516/EClaw/commit/129327bc7b91056659f1ab7e8d5e3f5260d951fb))
* **mindmap:** portal/mindmap.html force-graph prototype ([#129](https://github.com/HankHuang0516/EClaw/issues/129)) ([#2681](https://github.com/HankHuang0516/EClaw/issues/2681)) ([0f15e69](https://github.com/HankHuang0516/EClaw/commit/0f15e6930f0697c37fa08f3219edb8f9e499837f)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **portal:** redo nagoya trip page in professional tour-guide style ([#2691](https://github.com/HankHuang0516/EClaw/issues/2691)) ([b2378c0](https://github.com/HankHuang0516/EClaw/commit/b2378c06ee20fa9cccfdceceb1a4c9e0b3072f59))
* **avatar:** render selected petdx companion in chat avatars ([#2620](https://github.com/HankHuang0516/EClaw/issues/2620)) ([0bdd046](https://github.com/HankHuang0516/EClaw/commit/0bdd046fe1b1c428e32edda366ff112c08927f4c))
* **home:** replace native home with WebView hosting dashboard.html ([#2634](https://github.com/HankHuang0516/EClaw/issues/2634)) ([e69ea81](https://github.com/HankHuang0516/EClaw/commit/e69ea8160c239b083a83d6dc83a4f1c3f901c863))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **chat:** support message deep links ([#2719](https://github.com/HankHuang0516/EClaw/issues/2719)) ([2dc0f1e](https://github.com/HankHuang0516/EClaw/commit/2dc0f1eeb259e1a0848db4a03186b989372cd91c))
* **mission:** support note deep links ([#2717](https://github.com/HankHuang0516/EClaw/issues/2717)) ([2efd3a5](https://github.com/HankHuang0516/EClaw/commit/2efd3a5e741217a07c0b0ac54a0ddd010e0ebe23))
* **share-chat:** twitter card + per-bot og:image/twitter:* in SSR ([#2609](https://github.com/HankHuang0516/EClaw/issues/2609)) ([6cdc853](https://github.com/HankHuang0516/EClaw/commit/6cdc853dc884cdb95bd47214942768981f218ae0))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))
* **settings:** wire petdx avatar into channel-account chips ([#2626](https://github.com/HankHuang0516/EClaw/issues/2626)) ([88aec77](https://github.com/HankHuang0516/EClaw/commit/88aec772628c240e97b336bb5820892ad632d1ae))
* **files:** wire petdx avatar into entity filter & per-file badges ([#2627](https://github.com/HankHuang0516/EClaw/issues/2627)) ([5b3e5cc](https://github.com/HankHuang0516/EClaw/commit/5b3e5cc542d9da69bb4e92500fd03a542ea33f00))
* **mindmap:** wrap hardcoded zh-TW UI strings with i18n t() ([#2607](https://github.com/HankHuang0516/EClaw/issues/2607)) ([166af87](https://github.com/HankHuang0516/EClaw/commit/166af8772b2121a24aaf34a83b3de970e9b3b571)), closes [#2606](https://github.com/HankHuang0516/EClaw/issues/2606)
* **i18n:** zh-TW backfill 8 keys (soft-pause + chat + invite + wallet) ([#2815](https://github.com/HankHuang0516/EClaw/issues/2815)) ([a2dd574](https://github.com/HankHuang0516/EClaw/commit/a2dd5743ce8d43a4b6ace9a2fd4b52568180d6c5))


### Performance Improvements

* **mindmap:** force-graph hardening for 1000/2000-node graphs ([#2684](https://github.com/HankHuang0516/EClaw/issues/2684)) ([da8b1c8](https://github.com/HankHuang0516/EClaw/commit/da8b1c8f947ab8bc8fa455c1962a91146623a1fc))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-14)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **notifications:** add kanban_done + kanban_done_auto toggles to Android Settings ([#2636](https://github.com/HankHuang0516/EClaw/issues/2636)) ([a710909](https://github.com/HankHuang0516/EClaw/commit/a7109095e3393b8564e7ef1b23d382a4fbb944b8))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **i18n:** clear batch 1 residual missing keys ([#2790](https://github.com/HankHuang0516/EClaw/issues/2790)) ([211030e](https://github.com/HankHuang0516/EClaw/commit/211030e0b0b6a865c11f0c4ed60dc4e356d43b7a))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **kanban:** comment input no longer overlaps last comment in card detail (PR [#2678](https://github.com/HankHuang0516/EClaw/issues/2678)) ([fba91fc](https://github.com/HankHuang0516/EClaw/commit/fba91fca15402b453a0db5ee857c0b16e6087055))
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **i18n:** cover dynamic portal wrapper keys ([#2807](https://github.com/HankHuang0516/EClaw/issues/2807)) ([4c711cc](https://github.com/HankHuang0516/EClaw/commit/4c711cc4009300ffe4e8933a98ee01cd0fdd6aeb))
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **petdx:** drop dark-grey loading placeholder + preload sprite WEBP ([#2628](https://github.com/HankHuang0516/EClaw/issues/2628)) ([59cef38](https://github.com/HankHuang0516/EClaw/commit/59cef387bd69ca99d7d15c86a1364856d3849ad8)), closes [#1a1a1a](https://github.com/HankHuang0516/EClaw/issues/1a1a1a)
* **security:** escape innerHTML in chat modal error messages ([#2819](https://github.com/HankHuang0516/EClaw/issues/2819)) ([dce07ad](https://github.com/HankHuang0516/EClaw/commit/dce07adde64795916dba977ae23e46f3371ce7ed)), closes [#2809](https://github.com/HankHuang0516/EClaw/issues/2809) [#2810](https://github.com/HankHuang0516/EClaw/issues/2810) [#2809](https://github.com/HankHuang0516/EClaw/issues/2809) [#2810](https://github.com/HankHuang0516/EClaw/issues/2810)
* **entities:** expose botSecret to owner so wallpaper service can poll companions ([#2615](https://github.com/HankHuang0516/EClaw/issues/2615)) ([04470fc](https://github.com/HankHuang0516/EClaw/commit/04470fce8f8c3fce2b1ba8b243e776606f107502))
* **rental:** expose owner_public_code in marketplace so plaza CTA can route ([#2616](https://github.com/HankHuang0516/EClaw/issues/2616)) ([4d1372f](https://github.com/HankHuang0516/EClaw/commit/4d1372f717d93cab65543e87c852e74e9fb67071)), closes [#2610](https://github.com/HankHuang0516/EClaw/issues/2610)
* **mindmap:** fallback to device scope when entityId is null ([#2728](https://github.com/HankHuang0516/EClaw/issues/2728)) ([7572312](https://github.com/HankHuang0516/EClaw/commit/7572312433d3d75fc245eda48a28919ce14bd927))
* **i18n:** fill Spanish drift keys ([#2751](https://github.com/HankHuang0516/EClaw/issues/2751)) ([0ad0ee5](https://github.com/HankHuang0516/EClaw/commit/0ad0ee55f7fac3e6ac46d891539950dab4d553cc))
* **portal:** fit embedded org chart to mobile viewport ([#2674](https://github.com/HankHuang0516/EClaw/issues/2674)) ([1c4e1b4](https://github.com/HankHuang0516/EClaw/commit/1c4e1b413ea7027b4cd4b8ecda981b0d0e12e66b))
* **i18n:** fix 6 trailing-comma syntax errors in 10-locale batch ([#2771](https://github.com/HankHuang0516/EClaw/issues/2771)) ([b27c6ca](https://github.com/HankHuang0516/EClaw/commit/b27c6ca204bf813e406c54ce3a2532a5f1f031b3))
* **kanban:** GET card returns latest 50 comments + comments endpoint exposes total ([#2816](https://github.com/HankHuang0516/EClaw/issues/2816)) ([c4d83f7](https://github.com/HankHuang0516/EClaw/commit/c4d83f777a1cd26aea0936e4316aa35c52822eef))
* **uiux:** harden chat previews and roster preview ([#2769](https://github.com/HankHuang0516/EClaw/issues/2769)) ([466d4d3](https://github.com/HankHuang0516/EClaw/commit/466d4d3ef81c628d3f58db64323946053d7bf61c))
* **mention-parser:** ignore @-mentions inside markdown code spans ([#2645](https://github.com/HankHuang0516/EClaw/issues/2645)) ([8da19d4](https://github.com/HankHuang0516/EClaw/commit/8da19d4a79ceb4152bf2144ee0847c61ce3e1def)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **kanban:** lazy-load dependency chips via IntersectionObserver ([#2632](https://github.com/HankHuang0516/EClaw/issues/2632)) ([20586b4](https://github.com/HankHuang0516/EClaw/commit/20586b43357335f9eb6a190c02d58c8e36b58aba)), closes [#2631](https://github.com/HankHuang0516/EClaw/issues/2631)
* **kanban:** make card sorting deterministic ([#2756](https://github.com/HankHuang0516/EClaw/issues/2756)) ([48e2117](https://github.com/HankHuang0516/EClaw/commit/48e2117b64e37f05dc635e0a3b67bfd43cbe48f5))
* **org-chart:** notify affected bots on hierarchy change ([#2812](https://github.com/HankHuang0516/EClaw/issues/2812)) ([55675fd](https://github.com/HankHuang0516/EClaw/commit/55675fdf4487494d729a29524b32bd81b756a00c)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** notify reviewer on manual /move → review ([#2753](https://github.com/HankHuang0516/EClaw/issues/2753)) ([6cbbb4e](https://github.com/HankHuang0516/EClaw/commit/6cbbb4ee8c0d4d8ad54df2e9b5faaa3699bd530f))
* **wallpaper:** off-load spritesheet fetch to IO so per-petdx sprites actually render ([#2618](https://github.com/HankHuang0516/EClaw/issues/2618)) ([61b832c](https://github.com/HankHuang0516/EClaw/commit/61b832c9fa8a1d0caab810ccc942d85c63349267)), closes [#2615](https://github.com/HankHuang0516/EClaw/issues/2615) [#2577](https://github.com/HankHuang0516/EClaw/issues/2577)
* **portal:** petdx-browser cookie-session fallback for device-login ([#2757](https://github.com/HankHuang0516/EClaw/issues/2757)) ([ca275f4](https://github.com/HankHuang0516/EClaw/commit/ca275f4519835da0c7ad71c588908a18f6f138d8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **api:** platform-stats 500 + entity/lookup publicCode alias ([#2809](https://github.com/HankHuang0516/EClaw/issues/2809), [#2810](https://github.com/HankHuang0516/EClaw/issues/2810)) ([#2818](https://github.com/HankHuang0516/EClaw/issues/2818)) ([f99fd17](https://github.com/HankHuang0516/EClaw/commit/f99fd17b2b1c32d88daa2510ff66d714c1a53edc))
* **i18n:** positional format specifiers for feedback_result_logs (7 locales) ([#2597](https://github.com/HankHuang0516/EClaw/issues/2597)) ([21aedc7](https://github.com/HankHuang0516/EClaw/commit/21aedc7eebc7a2839e340136f38dfdfd4dabb9dc))
* **avatar-petdx:** preserve descriptor across transient API failures (flicker) ([#2625](https://github.com/HankHuang0516/EClaw/issues/2625)) ([7b1c606](https://github.com/HankHuang0516/EClaw/commit/7b1c606514f7698d72ec95cf6c556e4043966186))
* **chat:** preserve scroll anchor while reading history ([#2693](https://github.com/HankHuang0516/EClaw/issues/2693)) ([945fdb7](https://github.com/HankHuang0516/EClaw/commit/945fdb7192b791b31882e1e75568dd8b11e4686f))
* **promo:** pull video embed from /promo-chat-avatar.html ([#2724](https://github.com/HankHuang0516/EClaw/issues/2724)) ([2afabc8](https://github.com/HankHuang0516/EClaw/commit/2afabc8c5ff8b25218a7cb857e8adfa572c8e9d5))
* **kanban:** realign stale recurring schedules ([#2785](https://github.com/HankHuang0516/EClaw/issues/2785)) ([ab8ee25](https://github.com/HankHuang0516/EClaw/commit/ab8ee250a9b37f3d3e838bb01d8866c8d2b78231))
* **portal:** reduce QA-discovered request fanout ([#2656](https://github.com/HankHuang0516/EClaw/issues/2656)) ([1e46d6b](https://github.com/HankHuang0516/EClaw/commit/1e46d6bab61e58c65b452b6503d953f8dddeee75))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **portal:** remove org chart fit scale floor ([#2676](https://github.com/HankHuang0516/EClaw/issues/2676)) ([0f01606](https://github.com/HankHuang0516/EClaw/commit/0f016068b963bb5f800a02f28817c7174979d913))
* **i18n:** rename mm_empty_title → mm_state_empty_title in mindmap.html ([#2683](https://github.com/HankHuang0516/EClaw/issues/2683)) ([c79c109](https://github.com/HankHuang0516/EClaw/commit/c79c109bea23142e8a6d9ace976d105af1280ec9))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **chat:** render mention avatars with companion renderer ([#2633](https://github.com/HankHuang0516/EClaw/issues/2633)) ([03e205f](https://github.com/HankHuang0516/EClaw/commit/03e205f663ecd2c2f443d4009dd5af0093f0bbbb))
* **kanban:** reserve mobile comments panel height ([#2782](https://github.com/HankHuang0516/EClaw/issues/2782)) ([ce8662d](https://github.com/HankHuang0516/EClaw/commit/ce8662d362422fdd25037f1deb61dbed9425e2f9))
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* scheduled audit 2026-05-13 — 6 bugs, XSS, i18n ([#2668](https://github.com/HankHuang0516/EClaw/issues/2668)) ([21dd513](https://github.com/HankHuang0516/EClaw/commit/21dd513b4464738de29164265437435ba6cc4817)), closes [#2605](https://github.com/HankHuang0516/EClaw/issues/2605) [#2608](https://github.com/HankHuang0516/EClaw/issues/2608) [#2600](https://github.com/HankHuang0516/EClaw/issues/2600) [#2599](https://github.com/HankHuang0516/EClaw/issues/2599) [#2598](https://github.com/HankHuang0516/EClaw/issues/2598)
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **chat:** smart-chip preview falls back to inline c.comments when /comments fails (PR [#2677](https://github.com/HankHuang0516/EClaw/issues/2677)) ([7f4dffd](https://github.com/HankHuang0516/EClaw/commit/7f4dffd2c83ea86f296b8fa0610f0e67c9f1af11))
* **kanban:** stabilize comment detail viewport ([#2796](https://github.com/HankHuang0516/EClaw/issues/2796)) ([0a10aad](https://github.com/HankHuang0516/EClaw/commit/0a10aadb5a5b12ff23454c16d5c88183b94ad7d7))
* **wallpaper:** stop Android live wallpaper flashing default lobster on companion change ([#2629](https://github.com/HankHuang0516/EClaw/issues/2629)) ([8b4f66f](https://github.com/HankHuang0516/EClaw/commit/8b4f66fcb335bf43128f924b761b6337c817095b)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **app:** WebView pages honor app-selected locale via ?lang= URL param ([#2672](https://github.com/HankHuang0516/EClaw/issues/2672)) ([8ed8757](https://github.com/HankHuang0516/EClaw/commit/8ed8757aec5bf214e837cc0d81bf2b23f1993a91)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* **community:** 1-click chat button on bot cards + utm tagging ([#2610](https://github.com/HankHuang0516/EClaw/issues/2610)) ([eee97b0](https://github.com/HankHuang0516/EClaw/commit/eee97b0e2e4e74945ec24f218a69a52800b97a66))
* **chat:** add avatar size preference ([#2714](https://github.com/HankHuang0516/EClaw/issues/2714)) ([6fe164a](https://github.com/HankHuang0516/EClaw/commit/6fe164ad8b22fa576d2dd9ad37c0d9fc295b5a83))
* **dashboard:** add Claude and Codex channel guides ([#2640](https://github.com/HankHuang0516/EClaw/issues/2640)) ([c64e4c4](https://github.com/HankHuang0516/EClaw/commit/c64e4c4afc78db58c5cd578f00486dd7b2fd3311))
* **dashboard:** add Claude Code channel guide card ([#2667](https://github.com/HankHuang0516/EClaw/issues/2667)) ([d70d75c](https://github.com/HankHuang0516/EClaw/commit/d70d75c0c8caa8a540358a9aab4556b8c1927a5c))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* **kanban:** add device-scoped card tags ([#2773](https://github.com/HankHuang0516/EClaw/issues/2773)) ([53a387e](https://github.com/HankHuang0516/EClaw/commit/53a387e67ba7bb4f6bed1c427000c4ae8666577a))
* **portal:** add entity selector to petdx-browser ([#2602](https://github.com/HankHuang0516/EClaw/issues/2602)) ([3fa067e](https://github.com/HankHuang0516/EClaw/commit/3fa067e00b38829b48a37cecd33ee81a9a1122d9))
* **kanban:** add explicit card links ([#2721](https://github.com/HankHuang0516/EClaw/issues/2721)) ([ef9f812](https://github.com/HankHuang0516/EClaw/commit/ef9f812a3fcf39efd07fd158ce90951bdd045ac7))
* **kanban:** add explicit done-card reopen flow ([#2801](https://github.com/HankHuang0516/EClaw/issues/2801)) ([5080aac](https://github.com/HankHuang0516/EClaw/commit/5080aacb75047c0deaa379ee708ec85465afd57c))
* **mindmap:** add GET /api/mindmap/graph force-graph projection ([#2680](https://github.com/HankHuang0516/EClaw/issues/2680)) ([a00b2e7](https://github.com/HankHuang0516/EClaw/commit/a00b2e775af2c4c98cd157f760ad87aeeee469f0)), closes [#2679](https://github.com/HankHuang0516/EClaw/issues/2679) [#2679](https://github.com/HankHuang0516/EClaw/issues/2679)
* **dashboard:** add Hermes channel promo card ([#2708](https://github.com/HankHuang0516/EClaw/issues/2708)) ([337aca1](https://github.com/HankHuang0516/EClaw/commit/337aca153d5a1cd7e888c065f00ae54db7872d91))
* **rental:** add listing soft pause ([#2781](https://github.com/HankHuang0516/EClaw/issues/2781)) ([6586b72](https://github.com/HankHuang0516/EClaw/commit/6586b72717ddb1637d91cd3242c8d2ff554f62b4))
* **portal:** add Nagoya 5D4N trip static cross-ref page ([#2689](https://github.com/HankHuang0516/EClaw/issues/2689)) ([2e0efb6](https://github.com/HankHuang0516/EClaw/commit/2e0efb6dcdaff52226cc8854a96747000b12bdff))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **settings:** add rental roster management preview ([#2758](https://github.com/HankHuang0516/EClaw/issues/2758)) ([9706e59](https://github.com/HankHuang0516/EClaw/commit/9706e59ded140a90a6e02348124282bc69d89001))
* **rental:** add renter health chat indicator ([#2690](https://github.com/HankHuang0516/EClaw/issues/2690)) ([36cd2e9](https://github.com/HankHuang0516/EClaw/commit/36cd2e9802be4c7ebb03d3024617fa74aca48ffd))
* **ios:** add Tutorial & Intro entry in Settings ([#2800](https://github.com/HankHuang0516/EClaw/issues/2800)) ([ed83e51](https://github.com/HankHuang0516/EClaw/commit/ed83e51d043bf4cd5865f38dc95a91ed54820d6c))
* **landing:** add Watch Full Demo CTA below hero video ([#2799](https://github.com/HankHuang0516/EClaw/issues/2799)) ([66107c9](https://github.com/HankHuang0516/EClaw/commit/66107c954727551fd34d989a4674daaad9b63968))
* **footer:** add Watch Intro Video link in Info column ([#2798](https://github.com/HankHuang0516/EClaw/issues/2798)) ([d7c6d59](https://github.com/HankHuang0516/EClaw/commit/d7c6d596b69c6a5b257bf1f7a792a407ef9712ad))
* **companion:** bridge crafter-station/petdex gallery (1784 pets) ([#2601](https://github.com/HankHuang0516/EClaw/issues/2601)) ([2e245be](https://github.com/HankHuang0516/EClaw/commit/2e245bea6dd47ea7361b927d389188a3c23b6bb3))
* **promo:** chat avatar size feature landing page (self-hosted MP4) ([#2722](https://github.com/HankHuang0516/EClaw/issues/2722)) ([3852210](https://github.com/HankHuang0516/EClaw/commit/3852210d355704d018e3daca6b5f9512a011b210)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **kanban:** cron-spawn jitter + lane backpressure to prevent same-tick wedge ([#2791](https://github.com/HankHuang0516/EClaw/issues/2791)) ([9f414a7](https://github.com/HankHuang0516/EClaw/commit/9f414a731d6393672a0a4189c7b408c529ae5e12)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **promo:** embed daily eclaw video 2026-05-14 ([#2786](https://github.com/HankHuang0516/EClaw/issues/2786)) ([718a814](https://github.com/HankHuang0516/EClaw/commit/718a814ab16850bc2b33a1b303841e2c4378ecfa)), closes [#2782](https://github.com/HankHuang0516/EClaw/issues/2782) [#2693](https://github.com/HankHuang0516/EClaw/issues/2693)
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **info:** embed promo video at top of Quick Start tab ([#2797](https://github.com/HankHuang0516/EClaw/issues/2797)) ([047679f](https://github.com/HankHuang0516/EClaw/commit/047679fd57ab9949eaeacea414d5611e71afe041))
* **rental:** enforce strict rebind refunds ([#2703](https://github.com/HankHuang0516/EClaw/issues/2703)) ([a1859c5](https://github.com/HankHuang0516/EClaw/commit/a1859c50e6fb3991d7a8051491502d824a14a116))
* **portal:** info-guide-rules + info-guide-soul slide pair ([#2793](https://github.com/HankHuang0516/EClaw/issues/2793)) ([1c8bddc](https://github.com/HankHuang0516/EClaw/commit/1c8bddc4c185054b2b60088498e3d45509117127)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **chat:** link card previews to kanban ([#2754](https://github.com/HankHuang0516/EClaw/issues/2754)) ([2261240](https://github.com/HankHuang0516/EClaw/commit/22612402c2e95efb07246629e81a849be41ee9c7))
* **mission:** link notes to kanban cards ([#2723](https://github.com/HankHuang0516/EClaw/issues/2723)) ([b36dc18](https://github.com/HankHuang0516/EClaw/commit/b36dc18f3a8facf12e0b6046351c222f1e99dc55))
* **mindmap:** mission.html link to /portal/mindmap.html + deprecate /api/mission/mindmap ([#2685](https://github.com/HankHuang0516/EClaw/issues/2685)) ([11e297b](https://github.com/HankHuang0516/EClaw/commit/11e297bab1c9b56fcde3027d6500b7c58891bf18)), closes [#2680](https://github.com/HankHuang0516/EClaw/issues/2680) [#2684](https://github.com/HankHuang0516/EClaw/issues/2684)
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **avatar:** petdx render on card-holder my-cards (Phase 1b) ([#2621](https://github.com/HankHuang0516/EClaw/issues/2621)) ([f78ba8b](https://github.com/HankHuang0516/EClaw/commit/f78ba8b18acc426936ab6d8a82ca7541effea00d))
* **avatar:** petdx render on dashboard entity grid / org chart / bindings (Phase 1b) ([#2622](https://github.com/HankHuang0516/EClaw/issues/2622)) ([f417749](https://github.com/HankHuang0516/EClaw/commit/f41774914451048e8cd76e9ae30416a0642e173b)), closes [#2620](https://github.com/HankHuang0516/EClaw/issues/2620) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621)
* **avatar:** petdx render on kanban auto-assign / pulse / comment avatars (Phase 1b) ([#2624](https://github.com/HankHuang0516/EClaw/issues/2624)) ([6bff5f8](https://github.com/HankHuang0516/EClaw/commit/6bff5f80440d0bd91a6b1721cde9478d685c4d46))
* **avatar:** petdx render on mission skill/rule/soul entity dialogs (Phase 1b) ([#2623](https://github.com/HankHuang0516/EClaw/issues/2623)) ([129327b](https://github.com/HankHuang0516/EClaw/commit/129327bc7b91056659f1ab7e8d5e3f5260d951fb))
* **mindmap:** portal/mindmap.html force-graph prototype ([#129](https://github.com/HankHuang0516/EClaw/issues/129)) ([#2681](https://github.com/HankHuang0516/EClaw/issues/2681)) ([0f15e69](https://github.com/HankHuang0516/EClaw/commit/0f15e6930f0697c37fa08f3219edb8f9e499837f)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **portal:** redo nagoya trip page in professional tour-guide style ([#2691](https://github.com/HankHuang0516/EClaw/issues/2691)) ([b2378c0](https://github.com/HankHuang0516/EClaw/commit/b2378c06ee20fa9cccfdceceb1a4c9e0b3072f59))
* **avatar:** render selected petdx companion in chat avatars ([#2620](https://github.com/HankHuang0516/EClaw/issues/2620)) ([0bdd046](https://github.com/HankHuang0516/EClaw/commit/0bdd046fe1b1c428e32edda366ff112c08927f4c))
* **home:** replace native home with WebView hosting dashboard.html ([#2634](https://github.com/HankHuang0516/EClaw/issues/2634)) ([e69ea81](https://github.com/HankHuang0516/EClaw/commit/e69ea8160c239b083a83d6dc83a4f1c3f901c863))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **chat:** support message deep links ([#2719](https://github.com/HankHuang0516/EClaw/issues/2719)) ([2dc0f1e](https://github.com/HankHuang0516/EClaw/commit/2dc0f1eeb259e1a0848db4a03186b989372cd91c))
* **mission:** support note deep links ([#2717](https://github.com/HankHuang0516/EClaw/issues/2717)) ([2efd3a5](https://github.com/HankHuang0516/EClaw/commit/2efd3a5e741217a07c0b0ac54a0ddd010e0ebe23))
* **share-chat:** twitter card + per-bot og:image/twitter:* in SSR ([#2609](https://github.com/HankHuang0516/EClaw/issues/2609)) ([6cdc853](https://github.com/HankHuang0516/EClaw/commit/6cdc853dc884cdb95bd47214942768981f218ae0))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))
* **settings:** wire petdx avatar into channel-account chips ([#2626](https://github.com/HankHuang0516/EClaw/issues/2626)) ([88aec77](https://github.com/HankHuang0516/EClaw/commit/88aec772628c240e97b336bb5820892ad632d1ae))
* **files:** wire petdx avatar into entity filter & per-file badges ([#2627](https://github.com/HankHuang0516/EClaw/issues/2627)) ([5b3e5cc](https://github.com/HankHuang0516/EClaw/commit/5b3e5cc542d9da69bb4e92500fd03a542ea33f00))
* **mindmap:** wrap hardcoded zh-TW UI strings with i18n t() ([#2607](https://github.com/HankHuang0516/EClaw/issues/2607)) ([166af87](https://github.com/HankHuang0516/EClaw/commit/166af8772b2121a24aaf34a83b3de970e9b3b571)), closes [#2606](https://github.com/HankHuang0516/EClaw/issues/2606)
* **i18n:** zh-TW backfill 8 keys (soft-pause + chat + invite + wallet) ([#2815](https://github.com/HankHuang0516/EClaw/issues/2815)) ([a2dd574](https://github.com/HankHuang0516/EClaw/commit/a2dd5743ce8d43a4b6ace9a2fd4b52568180d6c5))


### Performance Improvements

* **mindmap:** force-graph hardening for 1000/2000-node graphs ([#2684](https://github.com/HankHuang0516/EClaw/issues/2684)) ([da8b1c8](https://github.com/HankHuang0516/EClaw/commit/da8b1c8f947ab8bc8fa455c1962a91146623a1fc))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-14)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **notifications:** add kanban_done + kanban_done_auto toggles to Android Settings ([#2636](https://github.com/HankHuang0516/EClaw/issues/2636)) ([a710909](https://github.com/HankHuang0516/EClaw/commit/a7109095e3393b8564e7ef1b23d382a4fbb944b8))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **i18n:** clear batch 1 residual missing keys ([#2790](https://github.com/HankHuang0516/EClaw/issues/2790)) ([211030e](https://github.com/HankHuang0516/EClaw/commit/211030e0b0b6a865c11f0c4ed60dc4e356d43b7a))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **kanban:** comment input no longer overlaps last comment in card detail (PR [#2678](https://github.com/HankHuang0516/EClaw/issues/2678)) ([fba91fc](https://github.com/HankHuang0516/EClaw/commit/fba91fca15402b453a0db5ee857c0b16e6087055))
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **i18n:** cover dynamic portal wrapper keys ([#2807](https://github.com/HankHuang0516/EClaw/issues/2807)) ([4c711cc](https://github.com/HankHuang0516/EClaw/commit/4c711cc4009300ffe4e8933a98ee01cd0fdd6aeb))
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **petdx:** drop dark-grey loading placeholder + preload sprite WEBP ([#2628](https://github.com/HankHuang0516/EClaw/issues/2628)) ([59cef38](https://github.com/HankHuang0516/EClaw/commit/59cef387bd69ca99d7d15c86a1364856d3849ad8)), closes [#1a1a1a](https://github.com/HankHuang0516/EClaw/issues/1a1a1a)
* **entities:** expose botSecret to owner so wallpaper service can poll companions ([#2615](https://github.com/HankHuang0516/EClaw/issues/2615)) ([04470fc](https://github.com/HankHuang0516/EClaw/commit/04470fce8f8c3fce2b1ba8b243e776606f107502))
* **rental:** expose owner_public_code in marketplace so plaza CTA can route ([#2616](https://github.com/HankHuang0516/EClaw/issues/2616)) ([4d1372f](https://github.com/HankHuang0516/EClaw/commit/4d1372f717d93cab65543e87c852e74e9fb67071)), closes [#2610](https://github.com/HankHuang0516/EClaw/issues/2610)
* **mindmap:** fallback to device scope when entityId is null ([#2728](https://github.com/HankHuang0516/EClaw/issues/2728)) ([7572312](https://github.com/HankHuang0516/EClaw/commit/7572312433d3d75fc245eda48a28919ce14bd927))
* **i18n:** fill Spanish drift keys ([#2751](https://github.com/HankHuang0516/EClaw/issues/2751)) ([0ad0ee5](https://github.com/HankHuang0516/EClaw/commit/0ad0ee55f7fac3e6ac46d891539950dab4d553cc))
* **portal:** fit embedded org chart to mobile viewport ([#2674](https://github.com/HankHuang0516/EClaw/issues/2674)) ([1c4e1b4](https://github.com/HankHuang0516/EClaw/commit/1c4e1b413ea7027b4cd4b8ecda981b0d0e12e66b))
* **i18n:** fix 6 trailing-comma syntax errors in 10-locale batch ([#2771](https://github.com/HankHuang0516/EClaw/issues/2771)) ([b27c6ca](https://github.com/HankHuang0516/EClaw/commit/b27c6ca204bf813e406c54ce3a2532a5f1f031b3))
* **kanban:** GET card returns latest 50 comments + comments endpoint exposes total ([#2816](https://github.com/HankHuang0516/EClaw/issues/2816)) ([c4d83f7](https://github.com/HankHuang0516/EClaw/commit/c4d83f777a1cd26aea0936e4316aa35c52822eef))
* **uiux:** harden chat previews and roster preview ([#2769](https://github.com/HankHuang0516/EClaw/issues/2769)) ([466d4d3](https://github.com/HankHuang0516/EClaw/commit/466d4d3ef81c628d3f58db64323946053d7bf61c))
* **mention-parser:** ignore @-mentions inside markdown code spans ([#2645](https://github.com/HankHuang0516/EClaw/issues/2645)) ([8da19d4](https://github.com/HankHuang0516/EClaw/commit/8da19d4a79ceb4152bf2144ee0847c61ce3e1def)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **kanban:** lazy-load dependency chips via IntersectionObserver ([#2632](https://github.com/HankHuang0516/EClaw/issues/2632)) ([20586b4](https://github.com/HankHuang0516/EClaw/commit/20586b43357335f9eb6a190c02d58c8e36b58aba)), closes [#2631](https://github.com/HankHuang0516/EClaw/issues/2631)
* **kanban:** make card sorting deterministic ([#2756](https://github.com/HankHuang0516/EClaw/issues/2756)) ([48e2117](https://github.com/HankHuang0516/EClaw/commit/48e2117b64e37f05dc635e0a3b67bfd43cbe48f5))
* **org-chart:** notify affected bots on hierarchy change ([#2812](https://github.com/HankHuang0516/EClaw/issues/2812)) ([55675fd](https://github.com/HankHuang0516/EClaw/commit/55675fdf4487494d729a29524b32bd81b756a00c)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** notify reviewer on manual /move → review ([#2753](https://github.com/HankHuang0516/EClaw/issues/2753)) ([6cbbb4e](https://github.com/HankHuang0516/EClaw/commit/6cbbb4ee8c0d4d8ad54df2e9b5faaa3699bd530f))
* **wallpaper:** off-load spritesheet fetch to IO so per-petdx sprites actually render ([#2618](https://github.com/HankHuang0516/EClaw/issues/2618)) ([61b832c](https://github.com/HankHuang0516/EClaw/commit/61b832c9fa8a1d0caab810ccc942d85c63349267)), closes [#2615](https://github.com/HankHuang0516/EClaw/issues/2615) [#2577](https://github.com/HankHuang0516/EClaw/issues/2577)
* **portal:** petdx-browser cookie-session fallback for device-login ([#2757](https://github.com/HankHuang0516/EClaw/issues/2757)) ([ca275f4](https://github.com/HankHuang0516/EClaw/commit/ca275f4519835da0c7ad71c588908a18f6f138d8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **api:** platform-stats 500 + entity/lookup publicCode alias ([#2809](https://github.com/HankHuang0516/EClaw/issues/2809), [#2810](https://github.com/HankHuang0516/EClaw/issues/2810)) ([#2818](https://github.com/HankHuang0516/EClaw/issues/2818)) ([f99fd17](https://github.com/HankHuang0516/EClaw/commit/f99fd17b2b1c32d88daa2510ff66d714c1a53edc))
* **i18n:** positional format specifiers for feedback_result_logs (7 locales) ([#2597](https://github.com/HankHuang0516/EClaw/issues/2597)) ([21aedc7](https://github.com/HankHuang0516/EClaw/commit/21aedc7eebc7a2839e340136f38dfdfd4dabb9dc))
* **avatar-petdx:** preserve descriptor across transient API failures (flicker) ([#2625](https://github.com/HankHuang0516/EClaw/issues/2625)) ([7b1c606](https://github.com/HankHuang0516/EClaw/commit/7b1c606514f7698d72ec95cf6c556e4043966186))
* **chat:** preserve scroll anchor while reading history ([#2693](https://github.com/HankHuang0516/EClaw/issues/2693)) ([945fdb7](https://github.com/HankHuang0516/EClaw/commit/945fdb7192b791b31882e1e75568dd8b11e4686f))
* **promo:** pull video embed from /promo-chat-avatar.html ([#2724](https://github.com/HankHuang0516/EClaw/issues/2724)) ([2afabc8](https://github.com/HankHuang0516/EClaw/commit/2afabc8c5ff8b25218a7cb857e8adfa572c8e9d5))
* **kanban:** realign stale recurring schedules ([#2785](https://github.com/HankHuang0516/EClaw/issues/2785)) ([ab8ee25](https://github.com/HankHuang0516/EClaw/commit/ab8ee250a9b37f3d3e838bb01d8866c8d2b78231))
* **portal:** reduce QA-discovered request fanout ([#2656](https://github.com/HankHuang0516/EClaw/issues/2656)) ([1e46d6b](https://github.com/HankHuang0516/EClaw/commit/1e46d6bab61e58c65b452b6503d953f8dddeee75))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **portal:** remove org chart fit scale floor ([#2676](https://github.com/HankHuang0516/EClaw/issues/2676)) ([0f01606](https://github.com/HankHuang0516/EClaw/commit/0f016068b963bb5f800a02f28817c7174979d913))
* **i18n:** rename mm_empty_title → mm_state_empty_title in mindmap.html ([#2683](https://github.com/HankHuang0516/EClaw/issues/2683)) ([c79c109](https://github.com/HankHuang0516/EClaw/commit/c79c109bea23142e8a6d9ace976d105af1280ec9))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **chat:** render mention avatars with companion renderer ([#2633](https://github.com/HankHuang0516/EClaw/issues/2633)) ([03e205f](https://github.com/HankHuang0516/EClaw/commit/03e205f663ecd2c2f443d4009dd5af0093f0bbbb))
* **kanban:** reserve mobile comments panel height ([#2782](https://github.com/HankHuang0516/EClaw/issues/2782)) ([ce8662d](https://github.com/HankHuang0516/EClaw/commit/ce8662d362422fdd25037f1deb61dbed9425e2f9))
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* scheduled audit 2026-05-13 — 6 bugs, XSS, i18n ([#2668](https://github.com/HankHuang0516/EClaw/issues/2668)) ([21dd513](https://github.com/HankHuang0516/EClaw/commit/21dd513b4464738de29164265437435ba6cc4817)), closes [#2605](https://github.com/HankHuang0516/EClaw/issues/2605) [#2608](https://github.com/HankHuang0516/EClaw/issues/2608) [#2600](https://github.com/HankHuang0516/EClaw/issues/2600) [#2599](https://github.com/HankHuang0516/EClaw/issues/2599) [#2598](https://github.com/HankHuang0516/EClaw/issues/2598)
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **chat:** smart-chip preview falls back to inline c.comments when /comments fails (PR [#2677](https://github.com/HankHuang0516/EClaw/issues/2677)) ([7f4dffd](https://github.com/HankHuang0516/EClaw/commit/7f4dffd2c83ea86f296b8fa0610f0e67c9f1af11))
* **kanban:** stabilize comment detail viewport ([#2796](https://github.com/HankHuang0516/EClaw/issues/2796)) ([0a10aad](https://github.com/HankHuang0516/EClaw/commit/0a10aadb5a5b12ff23454c16d5c88183b94ad7d7))
* **wallpaper:** stop Android live wallpaper flashing default lobster on companion change ([#2629](https://github.com/HankHuang0516/EClaw/issues/2629)) ([8b4f66f](https://github.com/HankHuang0516/EClaw/commit/8b4f66fcb335bf43128f924b761b6337c817095b)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **app:** WebView pages honor app-selected locale via ?lang= URL param ([#2672](https://github.com/HankHuang0516/EClaw/issues/2672)) ([8ed8757](https://github.com/HankHuang0516/EClaw/commit/8ed8757aec5bf214e837cc0d81bf2b23f1993a91)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* **community:** 1-click chat button on bot cards + utm tagging ([#2610](https://github.com/HankHuang0516/EClaw/issues/2610)) ([eee97b0](https://github.com/HankHuang0516/EClaw/commit/eee97b0e2e4e74945ec24f218a69a52800b97a66))
* **chat:** add avatar size preference ([#2714](https://github.com/HankHuang0516/EClaw/issues/2714)) ([6fe164a](https://github.com/HankHuang0516/EClaw/commit/6fe164ad8b22fa576d2dd9ad37c0d9fc295b5a83))
* **dashboard:** add Claude and Codex channel guides ([#2640](https://github.com/HankHuang0516/EClaw/issues/2640)) ([c64e4c4](https://github.com/HankHuang0516/EClaw/commit/c64e4c4afc78db58c5cd578f00486dd7b2fd3311))
* **dashboard:** add Claude Code channel guide card ([#2667](https://github.com/HankHuang0516/EClaw/issues/2667)) ([d70d75c](https://github.com/HankHuang0516/EClaw/commit/d70d75c0c8caa8a540358a9aab4556b8c1927a5c))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* **kanban:** add device-scoped card tags ([#2773](https://github.com/HankHuang0516/EClaw/issues/2773)) ([53a387e](https://github.com/HankHuang0516/EClaw/commit/53a387e67ba7bb4f6bed1c427000c4ae8666577a))
* **portal:** add entity selector to petdx-browser ([#2602](https://github.com/HankHuang0516/EClaw/issues/2602)) ([3fa067e](https://github.com/HankHuang0516/EClaw/commit/3fa067e00b38829b48a37cecd33ee81a9a1122d9))
* **kanban:** add explicit card links ([#2721](https://github.com/HankHuang0516/EClaw/issues/2721)) ([ef9f812](https://github.com/HankHuang0516/EClaw/commit/ef9f812a3fcf39efd07fd158ce90951bdd045ac7))
* **kanban:** add explicit done-card reopen flow ([#2801](https://github.com/HankHuang0516/EClaw/issues/2801)) ([5080aac](https://github.com/HankHuang0516/EClaw/commit/5080aacb75047c0deaa379ee708ec85465afd57c))
* **mindmap:** add GET /api/mindmap/graph force-graph projection ([#2680](https://github.com/HankHuang0516/EClaw/issues/2680)) ([a00b2e7](https://github.com/HankHuang0516/EClaw/commit/a00b2e775af2c4c98cd157f760ad87aeeee469f0)), closes [#2679](https://github.com/HankHuang0516/EClaw/issues/2679) [#2679](https://github.com/HankHuang0516/EClaw/issues/2679)
* **dashboard:** add Hermes channel promo card ([#2708](https://github.com/HankHuang0516/EClaw/issues/2708)) ([337aca1](https://github.com/HankHuang0516/EClaw/commit/337aca153d5a1cd7e888c065f00ae54db7872d91))
* **rental:** add listing soft pause ([#2781](https://github.com/HankHuang0516/EClaw/issues/2781)) ([6586b72](https://github.com/HankHuang0516/EClaw/commit/6586b72717ddb1637d91cd3242c8d2ff554f62b4))
* **portal:** add Nagoya 5D4N trip static cross-ref page ([#2689](https://github.com/HankHuang0516/EClaw/issues/2689)) ([2e0efb6](https://github.com/HankHuang0516/EClaw/commit/2e0efb6dcdaff52226cc8854a96747000b12bdff))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **settings:** add rental roster management preview ([#2758](https://github.com/HankHuang0516/EClaw/issues/2758)) ([9706e59](https://github.com/HankHuang0516/EClaw/commit/9706e59ded140a90a6e02348124282bc69d89001))
* **rental:** add renter health chat indicator ([#2690](https://github.com/HankHuang0516/EClaw/issues/2690)) ([36cd2e9](https://github.com/HankHuang0516/EClaw/commit/36cd2e9802be4c7ebb03d3024617fa74aca48ffd))
* **ios:** add Tutorial & Intro entry in Settings ([#2800](https://github.com/HankHuang0516/EClaw/issues/2800)) ([ed83e51](https://github.com/HankHuang0516/EClaw/commit/ed83e51d043bf4cd5865f38dc95a91ed54820d6c))
* **landing:** add Watch Full Demo CTA below hero video ([#2799](https://github.com/HankHuang0516/EClaw/issues/2799)) ([66107c9](https://github.com/HankHuang0516/EClaw/commit/66107c954727551fd34d989a4674daaad9b63968))
* **footer:** add Watch Intro Video link in Info column ([#2798](https://github.com/HankHuang0516/EClaw/issues/2798)) ([d7c6d59](https://github.com/HankHuang0516/EClaw/commit/d7c6d596b69c6a5b257bf1f7a792a407ef9712ad))
* **companion:** bridge crafter-station/petdex gallery (1784 pets) ([#2601](https://github.com/HankHuang0516/EClaw/issues/2601)) ([2e245be](https://github.com/HankHuang0516/EClaw/commit/2e245bea6dd47ea7361b927d389188a3c23b6bb3))
* **promo:** chat avatar size feature landing page (self-hosted MP4) ([#2722](https://github.com/HankHuang0516/EClaw/issues/2722)) ([3852210](https://github.com/HankHuang0516/EClaw/commit/3852210d355704d018e3daca6b5f9512a011b210)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **kanban:** cron-spawn jitter + lane backpressure to prevent same-tick wedge ([#2791](https://github.com/HankHuang0516/EClaw/issues/2791)) ([9f414a7](https://github.com/HankHuang0516/EClaw/commit/9f414a731d6393672a0a4189c7b408c529ae5e12)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **promo:** embed daily eclaw video 2026-05-14 ([#2786](https://github.com/HankHuang0516/EClaw/issues/2786)) ([718a814](https://github.com/HankHuang0516/EClaw/commit/718a814ab16850bc2b33a1b303841e2c4378ecfa)), closes [#2782](https://github.com/HankHuang0516/EClaw/issues/2782) [#2693](https://github.com/HankHuang0516/EClaw/issues/2693)
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **info:** embed promo video at top of Quick Start tab ([#2797](https://github.com/HankHuang0516/EClaw/issues/2797)) ([047679f](https://github.com/HankHuang0516/EClaw/commit/047679fd57ab9949eaeacea414d5611e71afe041))
* **rental:** enforce strict rebind refunds ([#2703](https://github.com/HankHuang0516/EClaw/issues/2703)) ([a1859c5](https://github.com/HankHuang0516/EClaw/commit/a1859c50e6fb3991d7a8051491502d824a14a116))
* **portal:** info-guide-rules + info-guide-soul slide pair ([#2793](https://github.com/HankHuang0516/EClaw/issues/2793)) ([1c8bddc](https://github.com/HankHuang0516/EClaw/commit/1c8bddc4c185054b2b60088498e3d45509117127)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **chat:** link card previews to kanban ([#2754](https://github.com/HankHuang0516/EClaw/issues/2754)) ([2261240](https://github.com/HankHuang0516/EClaw/commit/22612402c2e95efb07246629e81a849be41ee9c7))
* **mission:** link notes to kanban cards ([#2723](https://github.com/HankHuang0516/EClaw/issues/2723)) ([b36dc18](https://github.com/HankHuang0516/EClaw/commit/b36dc18f3a8facf12e0b6046351c222f1e99dc55))
* **mindmap:** mission.html link to /portal/mindmap.html + deprecate /api/mission/mindmap ([#2685](https://github.com/HankHuang0516/EClaw/issues/2685)) ([11e297b](https://github.com/HankHuang0516/EClaw/commit/11e297bab1c9b56fcde3027d6500b7c58891bf18)), closes [#2680](https://github.com/HankHuang0516/EClaw/issues/2680) [#2684](https://github.com/HankHuang0516/EClaw/issues/2684)
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **avatar:** petdx render on card-holder my-cards (Phase 1b) ([#2621](https://github.com/HankHuang0516/EClaw/issues/2621)) ([f78ba8b](https://github.com/HankHuang0516/EClaw/commit/f78ba8b18acc426936ab6d8a82ca7541effea00d))
* **avatar:** petdx render on dashboard entity grid / org chart / bindings (Phase 1b) ([#2622](https://github.com/HankHuang0516/EClaw/issues/2622)) ([f417749](https://github.com/HankHuang0516/EClaw/commit/f41774914451048e8cd76e9ae30416a0642e173b)), closes [#2620](https://github.com/HankHuang0516/EClaw/issues/2620) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621)
* **avatar:** petdx render on kanban auto-assign / pulse / comment avatars (Phase 1b) ([#2624](https://github.com/HankHuang0516/EClaw/issues/2624)) ([6bff5f8](https://github.com/HankHuang0516/EClaw/commit/6bff5f80440d0bd91a6b1721cde9478d685c4d46))
* **avatar:** petdx render on mission skill/rule/soul entity dialogs (Phase 1b) ([#2623](https://github.com/HankHuang0516/EClaw/issues/2623)) ([129327b](https://github.com/HankHuang0516/EClaw/commit/129327bc7b91056659f1ab7e8d5e3f5260d951fb))
* **mindmap:** portal/mindmap.html force-graph prototype ([#129](https://github.com/HankHuang0516/EClaw/issues/129)) ([#2681](https://github.com/HankHuang0516/EClaw/issues/2681)) ([0f15e69](https://github.com/HankHuang0516/EClaw/commit/0f15e6930f0697c37fa08f3219edb8f9e499837f)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **portal:** redo nagoya trip page in professional tour-guide style ([#2691](https://github.com/HankHuang0516/EClaw/issues/2691)) ([b2378c0](https://github.com/HankHuang0516/EClaw/commit/b2378c06ee20fa9cccfdceceb1a4c9e0b3072f59))
* **avatar:** render selected petdx companion in chat avatars ([#2620](https://github.com/HankHuang0516/EClaw/issues/2620)) ([0bdd046](https://github.com/HankHuang0516/EClaw/commit/0bdd046fe1b1c428e32edda366ff112c08927f4c))
* **home:** replace native home with WebView hosting dashboard.html ([#2634](https://github.com/HankHuang0516/EClaw/issues/2634)) ([e69ea81](https://github.com/HankHuang0516/EClaw/commit/e69ea8160c239b083a83d6dc83a4f1c3f901c863))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **chat:** support message deep links ([#2719](https://github.com/HankHuang0516/EClaw/issues/2719)) ([2dc0f1e](https://github.com/HankHuang0516/EClaw/commit/2dc0f1eeb259e1a0848db4a03186b989372cd91c))
* **mission:** support note deep links ([#2717](https://github.com/HankHuang0516/EClaw/issues/2717)) ([2efd3a5](https://github.com/HankHuang0516/EClaw/commit/2efd3a5e741217a07c0b0ac54a0ddd010e0ebe23))
* **share-chat:** twitter card + per-bot og:image/twitter:* in SSR ([#2609](https://github.com/HankHuang0516/EClaw/issues/2609)) ([6cdc853](https://github.com/HankHuang0516/EClaw/commit/6cdc853dc884cdb95bd47214942768981f218ae0))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))
* **settings:** wire petdx avatar into channel-account chips ([#2626](https://github.com/HankHuang0516/EClaw/issues/2626)) ([88aec77](https://github.com/HankHuang0516/EClaw/commit/88aec772628c240e97b336bb5820892ad632d1ae))
* **files:** wire petdx avatar into entity filter & per-file badges ([#2627](https://github.com/HankHuang0516/EClaw/issues/2627)) ([5b3e5cc](https://github.com/HankHuang0516/EClaw/commit/5b3e5cc542d9da69bb4e92500fd03a542ea33f00))
* **mindmap:** wrap hardcoded zh-TW UI strings with i18n t() ([#2607](https://github.com/HankHuang0516/EClaw/issues/2607)) ([166af87](https://github.com/HankHuang0516/EClaw/commit/166af8772b2121a24aaf34a83b3de970e9b3b571)), closes [#2606](https://github.com/HankHuang0516/EClaw/issues/2606)
* **i18n:** zh-TW backfill 8 keys (soft-pause + chat + invite + wallet) ([#2815](https://github.com/HankHuang0516/EClaw/issues/2815)) ([a2dd574](https://github.com/HankHuang0516/EClaw/commit/a2dd5743ce8d43a4b6ace9a2fd4b52568180d6c5))


### Performance Improvements

* **mindmap:** force-graph hardening for 1000/2000-node graphs ([#2684](https://github.com/HankHuang0516/EClaw/issues/2684)) ([da8b1c8](https://github.com/HankHuang0516/EClaw/commit/da8b1c8f947ab8bc8fa455c1962a91146623a1fc))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-14)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **notifications:** add kanban_done + kanban_done_auto toggles to Android Settings ([#2636](https://github.com/HankHuang0516/EClaw/issues/2636)) ([a710909](https://github.com/HankHuang0516/EClaw/commit/a7109095e3393b8564e7ef1b23d382a4fbb944b8))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **i18n:** clear batch 1 residual missing keys ([#2790](https://github.com/HankHuang0516/EClaw/issues/2790)) ([211030e](https://github.com/HankHuang0516/EClaw/commit/211030e0b0b6a865c11f0c4ed60dc4e356d43b7a))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **kanban:** comment input no longer overlaps last comment in card detail (PR [#2678](https://github.com/HankHuang0516/EClaw/issues/2678)) ([fba91fc](https://github.com/HankHuang0516/EClaw/commit/fba91fca15402b453a0db5ee857c0b16e6087055))
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **i18n:** cover dynamic portal wrapper keys ([#2807](https://github.com/HankHuang0516/EClaw/issues/2807)) ([4c711cc](https://github.com/HankHuang0516/EClaw/commit/4c711cc4009300ffe4e8933a98ee01cd0fdd6aeb))
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **petdx:** drop dark-grey loading placeholder + preload sprite WEBP ([#2628](https://github.com/HankHuang0516/EClaw/issues/2628)) ([59cef38](https://github.com/HankHuang0516/EClaw/commit/59cef387bd69ca99d7d15c86a1364856d3849ad8)), closes [#1a1a1a](https://github.com/HankHuang0516/EClaw/issues/1a1a1a)
* **entities:** expose botSecret to owner so wallpaper service can poll companions ([#2615](https://github.com/HankHuang0516/EClaw/issues/2615)) ([04470fc](https://github.com/HankHuang0516/EClaw/commit/04470fce8f8c3fce2b1ba8b243e776606f107502))
* **rental:** expose owner_public_code in marketplace so plaza CTA can route ([#2616](https://github.com/HankHuang0516/EClaw/issues/2616)) ([4d1372f](https://github.com/HankHuang0516/EClaw/commit/4d1372f717d93cab65543e87c852e74e9fb67071)), closes [#2610](https://github.com/HankHuang0516/EClaw/issues/2610)
* **mindmap:** fallback to device scope when entityId is null ([#2728](https://github.com/HankHuang0516/EClaw/issues/2728)) ([7572312](https://github.com/HankHuang0516/EClaw/commit/7572312433d3d75fc245eda48a28919ce14bd927))
* **i18n:** fill Spanish drift keys ([#2751](https://github.com/HankHuang0516/EClaw/issues/2751)) ([0ad0ee5](https://github.com/HankHuang0516/EClaw/commit/0ad0ee55f7fac3e6ac46d891539950dab4d553cc))
* **portal:** fit embedded org chart to mobile viewport ([#2674](https://github.com/HankHuang0516/EClaw/issues/2674)) ([1c4e1b4](https://github.com/HankHuang0516/EClaw/commit/1c4e1b413ea7027b4cd4b8ecda981b0d0e12e66b))
* **i18n:** fix 6 trailing-comma syntax errors in 10-locale batch ([#2771](https://github.com/HankHuang0516/EClaw/issues/2771)) ([b27c6ca](https://github.com/HankHuang0516/EClaw/commit/b27c6ca204bf813e406c54ce3a2532a5f1f031b3))
* **kanban:** GET card returns latest 50 comments + comments endpoint exposes total ([#2816](https://github.com/HankHuang0516/EClaw/issues/2816)) ([c4d83f7](https://github.com/HankHuang0516/EClaw/commit/c4d83f777a1cd26aea0936e4316aa35c52822eef))
* **uiux:** harden chat previews and roster preview ([#2769](https://github.com/HankHuang0516/EClaw/issues/2769)) ([466d4d3](https://github.com/HankHuang0516/EClaw/commit/466d4d3ef81c628d3f58db64323946053d7bf61c))
* **mention-parser:** ignore @-mentions inside markdown code spans ([#2645](https://github.com/HankHuang0516/EClaw/issues/2645)) ([8da19d4](https://github.com/HankHuang0516/EClaw/commit/8da19d4a79ceb4152bf2144ee0847c61ce3e1def)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **kanban:** lazy-load dependency chips via IntersectionObserver ([#2632](https://github.com/HankHuang0516/EClaw/issues/2632)) ([20586b4](https://github.com/HankHuang0516/EClaw/commit/20586b43357335f9eb6a190c02d58c8e36b58aba)), closes [#2631](https://github.com/HankHuang0516/EClaw/issues/2631)
* **kanban:** make card sorting deterministic ([#2756](https://github.com/HankHuang0516/EClaw/issues/2756)) ([48e2117](https://github.com/HankHuang0516/EClaw/commit/48e2117b64e37f05dc635e0a3b67bfd43cbe48f5))
* **org-chart:** notify affected bots on hierarchy change ([#2812](https://github.com/HankHuang0516/EClaw/issues/2812)) ([55675fd](https://github.com/HankHuang0516/EClaw/commit/55675fdf4487494d729a29524b32bd81b756a00c)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** notify reviewer on manual /move → review ([#2753](https://github.com/HankHuang0516/EClaw/issues/2753)) ([6cbbb4e](https://github.com/HankHuang0516/EClaw/commit/6cbbb4ee8c0d4d8ad54df2e9b5faaa3699bd530f))
* **wallpaper:** off-load spritesheet fetch to IO so per-petdx sprites actually render ([#2618](https://github.com/HankHuang0516/EClaw/issues/2618)) ([61b832c](https://github.com/HankHuang0516/EClaw/commit/61b832c9fa8a1d0caab810ccc942d85c63349267)), closes [#2615](https://github.com/HankHuang0516/EClaw/issues/2615) [#2577](https://github.com/HankHuang0516/EClaw/issues/2577)
* **portal:** petdx-browser cookie-session fallback for device-login ([#2757](https://github.com/HankHuang0516/EClaw/issues/2757)) ([ca275f4](https://github.com/HankHuang0516/EClaw/commit/ca275f4519835da0c7ad71c588908a18f6f138d8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **i18n:** positional format specifiers for feedback_result_logs (7 locales) ([#2597](https://github.com/HankHuang0516/EClaw/issues/2597)) ([21aedc7](https://github.com/HankHuang0516/EClaw/commit/21aedc7eebc7a2839e340136f38dfdfd4dabb9dc))
* **avatar-petdx:** preserve descriptor across transient API failures (flicker) ([#2625](https://github.com/HankHuang0516/EClaw/issues/2625)) ([7b1c606](https://github.com/HankHuang0516/EClaw/commit/7b1c606514f7698d72ec95cf6c556e4043966186))
* **chat:** preserve scroll anchor while reading history ([#2693](https://github.com/HankHuang0516/EClaw/issues/2693)) ([945fdb7](https://github.com/HankHuang0516/EClaw/commit/945fdb7192b791b31882e1e75568dd8b11e4686f))
* **promo:** pull video embed from /promo-chat-avatar.html ([#2724](https://github.com/HankHuang0516/EClaw/issues/2724)) ([2afabc8](https://github.com/HankHuang0516/EClaw/commit/2afabc8c5ff8b25218a7cb857e8adfa572c8e9d5))
* **kanban:** realign stale recurring schedules ([#2785](https://github.com/HankHuang0516/EClaw/issues/2785)) ([ab8ee25](https://github.com/HankHuang0516/EClaw/commit/ab8ee250a9b37f3d3e838bb01d8866c8d2b78231))
* **portal:** reduce QA-discovered request fanout ([#2656](https://github.com/HankHuang0516/EClaw/issues/2656)) ([1e46d6b](https://github.com/HankHuang0516/EClaw/commit/1e46d6bab61e58c65b452b6503d953f8dddeee75))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **portal:** remove org chart fit scale floor ([#2676](https://github.com/HankHuang0516/EClaw/issues/2676)) ([0f01606](https://github.com/HankHuang0516/EClaw/commit/0f016068b963bb5f800a02f28817c7174979d913))
* **i18n:** rename mm_empty_title → mm_state_empty_title in mindmap.html ([#2683](https://github.com/HankHuang0516/EClaw/issues/2683)) ([c79c109](https://github.com/HankHuang0516/EClaw/commit/c79c109bea23142e8a6d9ace976d105af1280ec9))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **chat:** render mention avatars with companion renderer ([#2633](https://github.com/HankHuang0516/EClaw/issues/2633)) ([03e205f](https://github.com/HankHuang0516/EClaw/commit/03e205f663ecd2c2f443d4009dd5af0093f0bbbb))
* **kanban:** reserve mobile comments panel height ([#2782](https://github.com/HankHuang0516/EClaw/issues/2782)) ([ce8662d](https://github.com/HankHuang0516/EClaw/commit/ce8662d362422fdd25037f1deb61dbed9425e2f9))
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* scheduled audit 2026-05-13 — 6 bugs, XSS, i18n ([#2668](https://github.com/HankHuang0516/EClaw/issues/2668)) ([21dd513](https://github.com/HankHuang0516/EClaw/commit/21dd513b4464738de29164265437435ba6cc4817)), closes [#2605](https://github.com/HankHuang0516/EClaw/issues/2605) [#2608](https://github.com/HankHuang0516/EClaw/issues/2608) [#2600](https://github.com/HankHuang0516/EClaw/issues/2600) [#2599](https://github.com/HankHuang0516/EClaw/issues/2599) [#2598](https://github.com/HankHuang0516/EClaw/issues/2598)
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **chat:** smart-chip preview falls back to inline c.comments when /comments fails (PR [#2677](https://github.com/HankHuang0516/EClaw/issues/2677)) ([7f4dffd](https://github.com/HankHuang0516/EClaw/commit/7f4dffd2c83ea86f296b8fa0610f0e67c9f1af11))
* **kanban:** stabilize comment detail viewport ([#2796](https://github.com/HankHuang0516/EClaw/issues/2796)) ([0a10aad](https://github.com/HankHuang0516/EClaw/commit/0a10aadb5a5b12ff23454c16d5c88183b94ad7d7))
* **wallpaper:** stop Android live wallpaper flashing default lobster on companion change ([#2629](https://github.com/HankHuang0516/EClaw/issues/2629)) ([8b4f66f](https://github.com/HankHuang0516/EClaw/commit/8b4f66fcb335bf43128f924b761b6337c817095b)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **app:** WebView pages honor app-selected locale via ?lang= URL param ([#2672](https://github.com/HankHuang0516/EClaw/issues/2672)) ([8ed8757](https://github.com/HankHuang0516/EClaw/commit/8ed8757aec5bf214e837cc0d81bf2b23f1993a91)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* **community:** 1-click chat button on bot cards + utm tagging ([#2610](https://github.com/HankHuang0516/EClaw/issues/2610)) ([eee97b0](https://github.com/HankHuang0516/EClaw/commit/eee97b0e2e4e74945ec24f218a69a52800b97a66))
* **chat:** add avatar size preference ([#2714](https://github.com/HankHuang0516/EClaw/issues/2714)) ([6fe164a](https://github.com/HankHuang0516/EClaw/commit/6fe164ad8b22fa576d2dd9ad37c0d9fc295b5a83))
* **dashboard:** add Claude and Codex channel guides ([#2640](https://github.com/HankHuang0516/EClaw/issues/2640)) ([c64e4c4](https://github.com/HankHuang0516/EClaw/commit/c64e4c4afc78db58c5cd578f00486dd7b2fd3311))
* **dashboard:** add Claude Code channel guide card ([#2667](https://github.com/HankHuang0516/EClaw/issues/2667)) ([d70d75c](https://github.com/HankHuang0516/EClaw/commit/d70d75c0c8caa8a540358a9aab4556b8c1927a5c))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* **kanban:** add device-scoped card tags ([#2773](https://github.com/HankHuang0516/EClaw/issues/2773)) ([53a387e](https://github.com/HankHuang0516/EClaw/commit/53a387e67ba7bb4f6bed1c427000c4ae8666577a))
* **portal:** add entity selector to petdx-browser ([#2602](https://github.com/HankHuang0516/EClaw/issues/2602)) ([3fa067e](https://github.com/HankHuang0516/EClaw/commit/3fa067e00b38829b48a37cecd33ee81a9a1122d9))
* **kanban:** add explicit card links ([#2721](https://github.com/HankHuang0516/EClaw/issues/2721)) ([ef9f812](https://github.com/HankHuang0516/EClaw/commit/ef9f812a3fcf39efd07fd158ce90951bdd045ac7))
* **kanban:** add explicit done-card reopen flow ([#2801](https://github.com/HankHuang0516/EClaw/issues/2801)) ([5080aac](https://github.com/HankHuang0516/EClaw/commit/5080aacb75047c0deaa379ee708ec85465afd57c))
* **mindmap:** add GET /api/mindmap/graph force-graph projection ([#2680](https://github.com/HankHuang0516/EClaw/issues/2680)) ([a00b2e7](https://github.com/HankHuang0516/EClaw/commit/a00b2e775af2c4c98cd157f760ad87aeeee469f0)), closes [#2679](https://github.com/HankHuang0516/EClaw/issues/2679) [#2679](https://github.com/HankHuang0516/EClaw/issues/2679)
* **dashboard:** add Hermes channel promo card ([#2708](https://github.com/HankHuang0516/EClaw/issues/2708)) ([337aca1](https://github.com/HankHuang0516/EClaw/commit/337aca153d5a1cd7e888c065f00ae54db7872d91))
* **rental:** add listing soft pause ([#2781](https://github.com/HankHuang0516/EClaw/issues/2781)) ([6586b72](https://github.com/HankHuang0516/EClaw/commit/6586b72717ddb1637d91cd3242c8d2ff554f62b4))
* **portal:** add Nagoya 5D4N trip static cross-ref page ([#2689](https://github.com/HankHuang0516/EClaw/issues/2689)) ([2e0efb6](https://github.com/HankHuang0516/EClaw/commit/2e0efb6dcdaff52226cc8854a96747000b12bdff))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **settings:** add rental roster management preview ([#2758](https://github.com/HankHuang0516/EClaw/issues/2758)) ([9706e59](https://github.com/HankHuang0516/EClaw/commit/9706e59ded140a90a6e02348124282bc69d89001))
* **rental:** add renter health chat indicator ([#2690](https://github.com/HankHuang0516/EClaw/issues/2690)) ([36cd2e9](https://github.com/HankHuang0516/EClaw/commit/36cd2e9802be4c7ebb03d3024617fa74aca48ffd))
* **ios:** add Tutorial & Intro entry in Settings ([#2800](https://github.com/HankHuang0516/EClaw/issues/2800)) ([ed83e51](https://github.com/HankHuang0516/EClaw/commit/ed83e51d043bf4cd5865f38dc95a91ed54820d6c))
* **landing:** add Watch Full Demo CTA below hero video ([#2799](https://github.com/HankHuang0516/EClaw/issues/2799)) ([66107c9](https://github.com/HankHuang0516/EClaw/commit/66107c954727551fd34d989a4674daaad9b63968))
* **footer:** add Watch Intro Video link in Info column ([#2798](https://github.com/HankHuang0516/EClaw/issues/2798)) ([d7c6d59](https://github.com/HankHuang0516/EClaw/commit/d7c6d596b69c6a5b257bf1f7a792a407ef9712ad))
* **companion:** bridge crafter-station/petdex gallery (1784 pets) ([#2601](https://github.com/HankHuang0516/EClaw/issues/2601)) ([2e245be](https://github.com/HankHuang0516/EClaw/commit/2e245bea6dd47ea7361b927d389188a3c23b6bb3))
* **promo:** chat avatar size feature landing page (self-hosted MP4) ([#2722](https://github.com/HankHuang0516/EClaw/issues/2722)) ([3852210](https://github.com/HankHuang0516/EClaw/commit/3852210d355704d018e3daca6b5f9512a011b210)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **kanban:** cron-spawn jitter + lane backpressure to prevent same-tick wedge ([#2791](https://github.com/HankHuang0516/EClaw/issues/2791)) ([9f414a7](https://github.com/HankHuang0516/EClaw/commit/9f414a731d6393672a0a4189c7b408c529ae5e12)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **promo:** embed daily eclaw video 2026-05-14 ([#2786](https://github.com/HankHuang0516/EClaw/issues/2786)) ([718a814](https://github.com/HankHuang0516/EClaw/commit/718a814ab16850bc2b33a1b303841e2c4378ecfa)), closes [#2782](https://github.com/HankHuang0516/EClaw/issues/2782) [#2693](https://github.com/HankHuang0516/EClaw/issues/2693)
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **info:** embed promo video at top of Quick Start tab ([#2797](https://github.com/HankHuang0516/EClaw/issues/2797)) ([047679f](https://github.com/HankHuang0516/EClaw/commit/047679fd57ab9949eaeacea414d5611e71afe041))
* **rental:** enforce strict rebind refunds ([#2703](https://github.com/HankHuang0516/EClaw/issues/2703)) ([a1859c5](https://github.com/HankHuang0516/EClaw/commit/a1859c50e6fb3991d7a8051491502d824a14a116))
* **portal:** info-guide-rules + info-guide-soul slide pair ([#2793](https://github.com/HankHuang0516/EClaw/issues/2793)) ([1c8bddc](https://github.com/HankHuang0516/EClaw/commit/1c8bddc4c185054b2b60088498e3d45509117127)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **chat:** link card previews to kanban ([#2754](https://github.com/HankHuang0516/EClaw/issues/2754)) ([2261240](https://github.com/HankHuang0516/EClaw/commit/22612402c2e95efb07246629e81a849be41ee9c7))
* **mission:** link notes to kanban cards ([#2723](https://github.com/HankHuang0516/EClaw/issues/2723)) ([b36dc18](https://github.com/HankHuang0516/EClaw/commit/b36dc18f3a8facf12e0b6046351c222f1e99dc55))
* **mindmap:** mission.html link to /portal/mindmap.html + deprecate /api/mission/mindmap ([#2685](https://github.com/HankHuang0516/EClaw/issues/2685)) ([11e297b](https://github.com/HankHuang0516/EClaw/commit/11e297bab1c9b56fcde3027d6500b7c58891bf18)), closes [#2680](https://github.com/HankHuang0516/EClaw/issues/2680) [#2684](https://github.com/HankHuang0516/EClaw/issues/2684)
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **avatar:** petdx render on card-holder my-cards (Phase 1b) ([#2621](https://github.com/HankHuang0516/EClaw/issues/2621)) ([f78ba8b](https://github.com/HankHuang0516/EClaw/commit/f78ba8b18acc426936ab6d8a82ca7541effea00d))
* **avatar:** petdx render on dashboard entity grid / org chart / bindings (Phase 1b) ([#2622](https://github.com/HankHuang0516/EClaw/issues/2622)) ([f417749](https://github.com/HankHuang0516/EClaw/commit/f41774914451048e8cd76e9ae30416a0642e173b)), closes [#2620](https://github.com/HankHuang0516/EClaw/issues/2620) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621)
* **avatar:** petdx render on kanban auto-assign / pulse / comment avatars (Phase 1b) ([#2624](https://github.com/HankHuang0516/EClaw/issues/2624)) ([6bff5f8](https://github.com/HankHuang0516/EClaw/commit/6bff5f80440d0bd91a6b1721cde9478d685c4d46))
* **avatar:** petdx render on mission skill/rule/soul entity dialogs (Phase 1b) ([#2623](https://github.com/HankHuang0516/EClaw/issues/2623)) ([129327b](https://github.com/HankHuang0516/EClaw/commit/129327bc7b91056659f1ab7e8d5e3f5260d951fb))
* **mindmap:** portal/mindmap.html force-graph prototype ([#129](https://github.com/HankHuang0516/EClaw/issues/129)) ([#2681](https://github.com/HankHuang0516/EClaw/issues/2681)) ([0f15e69](https://github.com/HankHuang0516/EClaw/commit/0f15e6930f0697c37fa08f3219edb8f9e499837f)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **portal:** redo nagoya trip page in professional tour-guide style ([#2691](https://github.com/HankHuang0516/EClaw/issues/2691)) ([b2378c0](https://github.com/HankHuang0516/EClaw/commit/b2378c06ee20fa9cccfdceceb1a4c9e0b3072f59))
* **avatar:** render selected petdx companion in chat avatars ([#2620](https://github.com/HankHuang0516/EClaw/issues/2620)) ([0bdd046](https://github.com/HankHuang0516/EClaw/commit/0bdd046fe1b1c428e32edda366ff112c08927f4c))
* **home:** replace native home with WebView hosting dashboard.html ([#2634](https://github.com/HankHuang0516/EClaw/issues/2634)) ([e69ea81](https://github.com/HankHuang0516/EClaw/commit/e69ea8160c239b083a83d6dc83a4f1c3f901c863))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **chat:** support message deep links ([#2719](https://github.com/HankHuang0516/EClaw/issues/2719)) ([2dc0f1e](https://github.com/HankHuang0516/EClaw/commit/2dc0f1eeb259e1a0848db4a03186b989372cd91c))
* **mission:** support note deep links ([#2717](https://github.com/HankHuang0516/EClaw/issues/2717)) ([2efd3a5](https://github.com/HankHuang0516/EClaw/commit/2efd3a5e741217a07c0b0ac54a0ddd010e0ebe23))
* **share-chat:** twitter card + per-bot og:image/twitter:* in SSR ([#2609](https://github.com/HankHuang0516/EClaw/issues/2609)) ([6cdc853](https://github.com/HankHuang0516/EClaw/commit/6cdc853dc884cdb95bd47214942768981f218ae0))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))
* **settings:** wire petdx avatar into channel-account chips ([#2626](https://github.com/HankHuang0516/EClaw/issues/2626)) ([88aec77](https://github.com/HankHuang0516/EClaw/commit/88aec772628c240e97b336bb5820892ad632d1ae))
* **files:** wire petdx avatar into entity filter & per-file badges ([#2627](https://github.com/HankHuang0516/EClaw/issues/2627)) ([5b3e5cc](https://github.com/HankHuang0516/EClaw/commit/5b3e5cc542d9da69bb4e92500fd03a542ea33f00))
* **mindmap:** wrap hardcoded zh-TW UI strings with i18n t() ([#2607](https://github.com/HankHuang0516/EClaw/issues/2607)) ([166af87](https://github.com/HankHuang0516/EClaw/commit/166af8772b2121a24aaf34a83b3de970e9b3b571)), closes [#2606](https://github.com/HankHuang0516/EClaw/issues/2606)
* **i18n:** zh-TW backfill 8 keys (soft-pause + chat + invite + wallet) ([#2815](https://github.com/HankHuang0516/EClaw/issues/2815)) ([a2dd574](https://github.com/HankHuang0516/EClaw/commit/a2dd5743ce8d43a4b6ace9a2fd4b52568180d6c5))


### Performance Improvements

* **mindmap:** force-graph hardening for 1000/2000-node graphs ([#2684](https://github.com/HankHuang0516/EClaw/issues/2684)) ([da8b1c8](https://github.com/HankHuang0516/EClaw/commit/da8b1c8f947ab8bc8fa455c1962a91146623a1fc))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-14)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **notifications:** add kanban_done + kanban_done_auto toggles to Android Settings ([#2636](https://github.com/HankHuang0516/EClaw/issues/2636)) ([a710909](https://github.com/HankHuang0516/EClaw/commit/a7109095e3393b8564e7ef1b23d382a4fbb944b8))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **i18n:** clear batch 1 residual missing keys ([#2790](https://github.com/HankHuang0516/EClaw/issues/2790)) ([211030e](https://github.com/HankHuang0516/EClaw/commit/211030e0b0b6a865c11f0c4ed60dc4e356d43b7a))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **kanban:** comment input no longer overlaps last comment in card detail (PR [#2678](https://github.com/HankHuang0516/EClaw/issues/2678)) ([fba91fc](https://github.com/HankHuang0516/EClaw/commit/fba91fca15402b453a0db5ee857c0b16e6087055))
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **i18n:** cover dynamic portal wrapper keys ([#2807](https://github.com/HankHuang0516/EClaw/issues/2807)) ([4c711cc](https://github.com/HankHuang0516/EClaw/commit/4c711cc4009300ffe4e8933a98ee01cd0fdd6aeb))
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **petdx:** drop dark-grey loading placeholder + preload sprite WEBP ([#2628](https://github.com/HankHuang0516/EClaw/issues/2628)) ([59cef38](https://github.com/HankHuang0516/EClaw/commit/59cef387bd69ca99d7d15c86a1364856d3849ad8)), closes [#1a1a1a](https://github.com/HankHuang0516/EClaw/issues/1a1a1a)
* **entities:** expose botSecret to owner so wallpaper service can poll companions ([#2615](https://github.com/HankHuang0516/EClaw/issues/2615)) ([04470fc](https://github.com/HankHuang0516/EClaw/commit/04470fce8f8c3fce2b1ba8b243e776606f107502))
* **rental:** expose owner_public_code in marketplace so plaza CTA can route ([#2616](https://github.com/HankHuang0516/EClaw/issues/2616)) ([4d1372f](https://github.com/HankHuang0516/EClaw/commit/4d1372f717d93cab65543e87c852e74e9fb67071)), closes [#2610](https://github.com/HankHuang0516/EClaw/issues/2610)
* **mindmap:** fallback to device scope when entityId is null ([#2728](https://github.com/HankHuang0516/EClaw/issues/2728)) ([7572312](https://github.com/HankHuang0516/EClaw/commit/7572312433d3d75fc245eda48a28919ce14bd927))
* **i18n:** fill Spanish drift keys ([#2751](https://github.com/HankHuang0516/EClaw/issues/2751)) ([0ad0ee5](https://github.com/HankHuang0516/EClaw/commit/0ad0ee55f7fac3e6ac46d891539950dab4d553cc))
* **portal:** fit embedded org chart to mobile viewport ([#2674](https://github.com/HankHuang0516/EClaw/issues/2674)) ([1c4e1b4](https://github.com/HankHuang0516/EClaw/commit/1c4e1b413ea7027b4cd4b8ecda981b0d0e12e66b))
* **i18n:** fix 6 trailing-comma syntax errors in 10-locale batch ([#2771](https://github.com/HankHuang0516/EClaw/issues/2771)) ([b27c6ca](https://github.com/HankHuang0516/EClaw/commit/b27c6ca204bf813e406c54ce3a2532a5f1f031b3))
* **kanban:** GET card returns latest 50 comments + comments endpoint exposes total ([#2816](https://github.com/HankHuang0516/EClaw/issues/2816)) ([c4d83f7](https://github.com/HankHuang0516/EClaw/commit/c4d83f777a1cd26aea0936e4316aa35c52822eef))
* **uiux:** harden chat previews and roster preview ([#2769](https://github.com/HankHuang0516/EClaw/issues/2769)) ([466d4d3](https://github.com/HankHuang0516/EClaw/commit/466d4d3ef81c628d3f58db64323946053d7bf61c))
* **mention-parser:** ignore @-mentions inside markdown code spans ([#2645](https://github.com/HankHuang0516/EClaw/issues/2645)) ([8da19d4](https://github.com/HankHuang0516/EClaw/commit/8da19d4a79ceb4152bf2144ee0847c61ce3e1def)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **kanban:** lazy-load dependency chips via IntersectionObserver ([#2632](https://github.com/HankHuang0516/EClaw/issues/2632)) ([20586b4](https://github.com/HankHuang0516/EClaw/commit/20586b43357335f9eb6a190c02d58c8e36b58aba)), closes [#2631](https://github.com/HankHuang0516/EClaw/issues/2631)
* **kanban:** make card sorting deterministic ([#2756](https://github.com/HankHuang0516/EClaw/issues/2756)) ([48e2117](https://github.com/HankHuang0516/EClaw/commit/48e2117b64e37f05dc635e0a3b67bfd43cbe48f5))
* **org-chart:** notify affected bots on hierarchy change ([#2812](https://github.com/HankHuang0516/EClaw/issues/2812)) ([55675fd](https://github.com/HankHuang0516/EClaw/commit/55675fdf4487494d729a29524b32bd81b756a00c)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** notify reviewer on manual /move → review ([#2753](https://github.com/HankHuang0516/EClaw/issues/2753)) ([6cbbb4e](https://github.com/HankHuang0516/EClaw/commit/6cbbb4ee8c0d4d8ad54df2e9b5faaa3699bd530f))
* **wallpaper:** off-load spritesheet fetch to IO so per-petdx sprites actually render ([#2618](https://github.com/HankHuang0516/EClaw/issues/2618)) ([61b832c](https://github.com/HankHuang0516/EClaw/commit/61b832c9fa8a1d0caab810ccc942d85c63349267)), closes [#2615](https://github.com/HankHuang0516/EClaw/issues/2615) [#2577](https://github.com/HankHuang0516/EClaw/issues/2577)
* **portal:** petdx-browser cookie-session fallback for device-login ([#2757](https://github.com/HankHuang0516/EClaw/issues/2757)) ([ca275f4](https://github.com/HankHuang0516/EClaw/commit/ca275f4519835da0c7ad71c588908a18f6f138d8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **i18n:** positional format specifiers for feedback_result_logs (7 locales) ([#2597](https://github.com/HankHuang0516/EClaw/issues/2597)) ([21aedc7](https://github.com/HankHuang0516/EClaw/commit/21aedc7eebc7a2839e340136f38dfdfd4dabb9dc))
* **avatar-petdx:** preserve descriptor across transient API failures (flicker) ([#2625](https://github.com/HankHuang0516/EClaw/issues/2625)) ([7b1c606](https://github.com/HankHuang0516/EClaw/commit/7b1c606514f7698d72ec95cf6c556e4043966186))
* **chat:** preserve scroll anchor while reading history ([#2693](https://github.com/HankHuang0516/EClaw/issues/2693)) ([945fdb7](https://github.com/HankHuang0516/EClaw/commit/945fdb7192b791b31882e1e75568dd8b11e4686f))
* **promo:** pull video embed from /promo-chat-avatar.html ([#2724](https://github.com/HankHuang0516/EClaw/issues/2724)) ([2afabc8](https://github.com/HankHuang0516/EClaw/commit/2afabc8c5ff8b25218a7cb857e8adfa572c8e9d5))
* **kanban:** realign stale recurring schedules ([#2785](https://github.com/HankHuang0516/EClaw/issues/2785)) ([ab8ee25](https://github.com/HankHuang0516/EClaw/commit/ab8ee250a9b37f3d3e838bb01d8866c8d2b78231))
* **portal:** reduce QA-discovered request fanout ([#2656](https://github.com/HankHuang0516/EClaw/issues/2656)) ([1e46d6b](https://github.com/HankHuang0516/EClaw/commit/1e46d6bab61e58c65b452b6503d953f8dddeee75))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **portal:** remove org chart fit scale floor ([#2676](https://github.com/HankHuang0516/EClaw/issues/2676)) ([0f01606](https://github.com/HankHuang0516/EClaw/commit/0f016068b963bb5f800a02f28817c7174979d913))
* **i18n:** rename mm_empty_title → mm_state_empty_title in mindmap.html ([#2683](https://github.com/HankHuang0516/EClaw/issues/2683)) ([c79c109](https://github.com/HankHuang0516/EClaw/commit/c79c109bea23142e8a6d9ace976d105af1280ec9))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **chat:** render mention avatars with companion renderer ([#2633](https://github.com/HankHuang0516/EClaw/issues/2633)) ([03e205f](https://github.com/HankHuang0516/EClaw/commit/03e205f663ecd2c2f443d4009dd5af0093f0bbbb))
* **kanban:** reserve mobile comments panel height ([#2782](https://github.com/HankHuang0516/EClaw/issues/2782)) ([ce8662d](https://github.com/HankHuang0516/EClaw/commit/ce8662d362422fdd25037f1deb61dbed9425e2f9))
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* scheduled audit 2026-05-13 — 6 bugs, XSS, i18n ([#2668](https://github.com/HankHuang0516/EClaw/issues/2668)) ([21dd513](https://github.com/HankHuang0516/EClaw/commit/21dd513b4464738de29164265437435ba6cc4817)), closes [#2605](https://github.com/HankHuang0516/EClaw/issues/2605) [#2608](https://github.com/HankHuang0516/EClaw/issues/2608) [#2600](https://github.com/HankHuang0516/EClaw/issues/2600) [#2599](https://github.com/HankHuang0516/EClaw/issues/2599) [#2598](https://github.com/HankHuang0516/EClaw/issues/2598)
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **chat:** smart-chip preview falls back to inline c.comments when /comments fails (PR [#2677](https://github.com/HankHuang0516/EClaw/issues/2677)) ([7f4dffd](https://github.com/HankHuang0516/EClaw/commit/7f4dffd2c83ea86f296b8fa0610f0e67c9f1af11))
* **kanban:** stabilize comment detail viewport ([#2796](https://github.com/HankHuang0516/EClaw/issues/2796)) ([0a10aad](https://github.com/HankHuang0516/EClaw/commit/0a10aadb5a5b12ff23454c16d5c88183b94ad7d7))
* **wallpaper:** stop Android live wallpaper flashing default lobster on companion change ([#2629](https://github.com/HankHuang0516/EClaw/issues/2629)) ([8b4f66f](https://github.com/HankHuang0516/EClaw/commit/8b4f66fcb335bf43128f924b761b6337c817095b)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **app:** WebView pages honor app-selected locale via ?lang= URL param ([#2672](https://github.com/HankHuang0516/EClaw/issues/2672)) ([8ed8757](https://github.com/HankHuang0516/EClaw/commit/8ed8757aec5bf214e837cc0d81bf2b23f1993a91)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* **community:** 1-click chat button on bot cards + utm tagging ([#2610](https://github.com/HankHuang0516/EClaw/issues/2610)) ([eee97b0](https://github.com/HankHuang0516/EClaw/commit/eee97b0e2e4e74945ec24f218a69a52800b97a66))
* **chat:** add avatar size preference ([#2714](https://github.com/HankHuang0516/EClaw/issues/2714)) ([6fe164a](https://github.com/HankHuang0516/EClaw/commit/6fe164ad8b22fa576d2dd9ad37c0d9fc295b5a83))
* **dashboard:** add Claude and Codex channel guides ([#2640](https://github.com/HankHuang0516/EClaw/issues/2640)) ([c64e4c4](https://github.com/HankHuang0516/EClaw/commit/c64e4c4afc78db58c5cd578f00486dd7b2fd3311))
* **dashboard:** add Claude Code channel guide card ([#2667](https://github.com/HankHuang0516/EClaw/issues/2667)) ([d70d75c](https://github.com/HankHuang0516/EClaw/commit/d70d75c0c8caa8a540358a9aab4556b8c1927a5c))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* **kanban:** add device-scoped card tags ([#2773](https://github.com/HankHuang0516/EClaw/issues/2773)) ([53a387e](https://github.com/HankHuang0516/EClaw/commit/53a387e67ba7bb4f6bed1c427000c4ae8666577a))
* **portal:** add entity selector to petdx-browser ([#2602](https://github.com/HankHuang0516/EClaw/issues/2602)) ([3fa067e](https://github.com/HankHuang0516/EClaw/commit/3fa067e00b38829b48a37cecd33ee81a9a1122d9))
* **kanban:** add explicit card links ([#2721](https://github.com/HankHuang0516/EClaw/issues/2721)) ([ef9f812](https://github.com/HankHuang0516/EClaw/commit/ef9f812a3fcf39efd07fd158ce90951bdd045ac7))
* **kanban:** add explicit done-card reopen flow ([#2801](https://github.com/HankHuang0516/EClaw/issues/2801)) ([5080aac](https://github.com/HankHuang0516/EClaw/commit/5080aacb75047c0deaa379ee708ec85465afd57c))
* **mindmap:** add GET /api/mindmap/graph force-graph projection ([#2680](https://github.com/HankHuang0516/EClaw/issues/2680)) ([a00b2e7](https://github.com/HankHuang0516/EClaw/commit/a00b2e775af2c4c98cd157f760ad87aeeee469f0)), closes [#2679](https://github.com/HankHuang0516/EClaw/issues/2679) [#2679](https://github.com/HankHuang0516/EClaw/issues/2679)
* **dashboard:** add Hermes channel promo card ([#2708](https://github.com/HankHuang0516/EClaw/issues/2708)) ([337aca1](https://github.com/HankHuang0516/EClaw/commit/337aca153d5a1cd7e888c065f00ae54db7872d91))
* **rental:** add listing soft pause ([#2781](https://github.com/HankHuang0516/EClaw/issues/2781)) ([6586b72](https://github.com/HankHuang0516/EClaw/commit/6586b72717ddb1637d91cd3242c8d2ff554f62b4))
* **portal:** add Nagoya 5D4N trip static cross-ref page ([#2689](https://github.com/HankHuang0516/EClaw/issues/2689)) ([2e0efb6](https://github.com/HankHuang0516/EClaw/commit/2e0efb6dcdaff52226cc8854a96747000b12bdff))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **settings:** add rental roster management preview ([#2758](https://github.com/HankHuang0516/EClaw/issues/2758)) ([9706e59](https://github.com/HankHuang0516/EClaw/commit/9706e59ded140a90a6e02348124282bc69d89001))
* **rental:** add renter health chat indicator ([#2690](https://github.com/HankHuang0516/EClaw/issues/2690)) ([36cd2e9](https://github.com/HankHuang0516/EClaw/commit/36cd2e9802be4c7ebb03d3024617fa74aca48ffd))
* **ios:** add Tutorial & Intro entry in Settings ([#2800](https://github.com/HankHuang0516/EClaw/issues/2800)) ([ed83e51](https://github.com/HankHuang0516/EClaw/commit/ed83e51d043bf4cd5865f38dc95a91ed54820d6c))
* **landing:** add Watch Full Demo CTA below hero video ([#2799](https://github.com/HankHuang0516/EClaw/issues/2799)) ([66107c9](https://github.com/HankHuang0516/EClaw/commit/66107c954727551fd34d989a4674daaad9b63968))
* **footer:** add Watch Intro Video link in Info column ([#2798](https://github.com/HankHuang0516/EClaw/issues/2798)) ([d7c6d59](https://github.com/HankHuang0516/EClaw/commit/d7c6d596b69c6a5b257bf1f7a792a407ef9712ad))
* **companion:** bridge crafter-station/petdex gallery (1784 pets) ([#2601](https://github.com/HankHuang0516/EClaw/issues/2601)) ([2e245be](https://github.com/HankHuang0516/EClaw/commit/2e245bea6dd47ea7361b927d389188a3c23b6bb3))
* **promo:** chat avatar size feature landing page (self-hosted MP4) ([#2722](https://github.com/HankHuang0516/EClaw/issues/2722)) ([3852210](https://github.com/HankHuang0516/EClaw/commit/3852210d355704d018e3daca6b5f9512a011b210)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **kanban:** cron-spawn jitter + lane backpressure to prevent same-tick wedge ([#2791](https://github.com/HankHuang0516/EClaw/issues/2791)) ([9f414a7](https://github.com/HankHuang0516/EClaw/commit/9f414a731d6393672a0a4189c7b408c529ae5e12)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **promo:** embed daily eclaw video 2026-05-14 ([#2786](https://github.com/HankHuang0516/EClaw/issues/2786)) ([718a814](https://github.com/HankHuang0516/EClaw/commit/718a814ab16850bc2b33a1b303841e2c4378ecfa)), closes [#2782](https://github.com/HankHuang0516/EClaw/issues/2782) [#2693](https://github.com/HankHuang0516/EClaw/issues/2693)
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **info:** embed promo video at top of Quick Start tab ([#2797](https://github.com/HankHuang0516/EClaw/issues/2797)) ([047679f](https://github.com/HankHuang0516/EClaw/commit/047679fd57ab9949eaeacea414d5611e71afe041))
* **rental:** enforce strict rebind refunds ([#2703](https://github.com/HankHuang0516/EClaw/issues/2703)) ([a1859c5](https://github.com/HankHuang0516/EClaw/commit/a1859c50e6fb3991d7a8051491502d824a14a116))
* **portal:** info-guide-rules + info-guide-soul slide pair ([#2793](https://github.com/HankHuang0516/EClaw/issues/2793)) ([1c8bddc](https://github.com/HankHuang0516/EClaw/commit/1c8bddc4c185054b2b60088498e3d45509117127)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **chat:** link card previews to kanban ([#2754](https://github.com/HankHuang0516/EClaw/issues/2754)) ([2261240](https://github.com/HankHuang0516/EClaw/commit/22612402c2e95efb07246629e81a849be41ee9c7))
* **mission:** link notes to kanban cards ([#2723](https://github.com/HankHuang0516/EClaw/issues/2723)) ([b36dc18](https://github.com/HankHuang0516/EClaw/commit/b36dc18f3a8facf12e0b6046351c222f1e99dc55))
* **mindmap:** mission.html link to /portal/mindmap.html + deprecate /api/mission/mindmap ([#2685](https://github.com/HankHuang0516/EClaw/issues/2685)) ([11e297b](https://github.com/HankHuang0516/EClaw/commit/11e297bab1c9b56fcde3027d6500b7c58891bf18)), closes [#2680](https://github.com/HankHuang0516/EClaw/issues/2680) [#2684](https://github.com/HankHuang0516/EClaw/issues/2684)
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **avatar:** petdx render on card-holder my-cards (Phase 1b) ([#2621](https://github.com/HankHuang0516/EClaw/issues/2621)) ([f78ba8b](https://github.com/HankHuang0516/EClaw/commit/f78ba8b18acc426936ab6d8a82ca7541effea00d))
* **avatar:** petdx render on dashboard entity grid / org chart / bindings (Phase 1b) ([#2622](https://github.com/HankHuang0516/EClaw/issues/2622)) ([f417749](https://github.com/HankHuang0516/EClaw/commit/f41774914451048e8cd76e9ae30416a0642e173b)), closes [#2620](https://github.com/HankHuang0516/EClaw/issues/2620) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621)
* **avatar:** petdx render on kanban auto-assign / pulse / comment avatars (Phase 1b) ([#2624](https://github.com/HankHuang0516/EClaw/issues/2624)) ([6bff5f8](https://github.com/HankHuang0516/EClaw/commit/6bff5f80440d0bd91a6b1721cde9478d685c4d46))
* **avatar:** petdx render on mission skill/rule/soul entity dialogs (Phase 1b) ([#2623](https://github.com/HankHuang0516/EClaw/issues/2623)) ([129327b](https://github.com/HankHuang0516/EClaw/commit/129327bc7b91056659f1ab7e8d5e3f5260d951fb))
* **mindmap:** portal/mindmap.html force-graph prototype ([#129](https://github.com/HankHuang0516/EClaw/issues/129)) ([#2681](https://github.com/HankHuang0516/EClaw/issues/2681)) ([0f15e69](https://github.com/HankHuang0516/EClaw/commit/0f15e6930f0697c37fa08f3219edb8f9e499837f)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **portal:** redo nagoya trip page in professional tour-guide style ([#2691](https://github.com/HankHuang0516/EClaw/issues/2691)) ([b2378c0](https://github.com/HankHuang0516/EClaw/commit/b2378c06ee20fa9cccfdceceb1a4c9e0b3072f59))
* **avatar:** render selected petdx companion in chat avatars ([#2620](https://github.com/HankHuang0516/EClaw/issues/2620)) ([0bdd046](https://github.com/HankHuang0516/EClaw/commit/0bdd046fe1b1c428e32edda366ff112c08927f4c))
* **home:** replace native home with WebView hosting dashboard.html ([#2634](https://github.com/HankHuang0516/EClaw/issues/2634)) ([e69ea81](https://github.com/HankHuang0516/EClaw/commit/e69ea8160c239b083a83d6dc83a4f1c3f901c863))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **chat:** support message deep links ([#2719](https://github.com/HankHuang0516/EClaw/issues/2719)) ([2dc0f1e](https://github.com/HankHuang0516/EClaw/commit/2dc0f1eeb259e1a0848db4a03186b989372cd91c))
* **mission:** support note deep links ([#2717](https://github.com/HankHuang0516/EClaw/issues/2717)) ([2efd3a5](https://github.com/HankHuang0516/EClaw/commit/2efd3a5e741217a07c0b0ac54a0ddd010e0ebe23))
* **share-chat:** twitter card + per-bot og:image/twitter:* in SSR ([#2609](https://github.com/HankHuang0516/EClaw/issues/2609)) ([6cdc853](https://github.com/HankHuang0516/EClaw/commit/6cdc853dc884cdb95bd47214942768981f218ae0))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))
* **settings:** wire petdx avatar into channel-account chips ([#2626](https://github.com/HankHuang0516/EClaw/issues/2626)) ([88aec77](https://github.com/HankHuang0516/EClaw/commit/88aec772628c240e97b336bb5820892ad632d1ae))
* **files:** wire petdx avatar into entity filter & per-file badges ([#2627](https://github.com/HankHuang0516/EClaw/issues/2627)) ([5b3e5cc](https://github.com/HankHuang0516/EClaw/commit/5b3e5cc542d9da69bb4e92500fd03a542ea33f00))
* **mindmap:** wrap hardcoded zh-TW UI strings with i18n t() ([#2607](https://github.com/HankHuang0516/EClaw/issues/2607)) ([166af87](https://github.com/HankHuang0516/EClaw/commit/166af8772b2121a24aaf34a83b3de970e9b3b571)), closes [#2606](https://github.com/HankHuang0516/EClaw/issues/2606)
* **i18n:** zh-TW backfill 8 keys (soft-pause + chat + invite + wallet) ([#2815](https://github.com/HankHuang0516/EClaw/issues/2815)) ([a2dd574](https://github.com/HankHuang0516/EClaw/commit/a2dd5743ce8d43a4b6ace9a2fd4b52568180d6c5))


### Performance Improvements

* **mindmap:** force-graph hardening for 1000/2000-node graphs ([#2684](https://github.com/HankHuang0516/EClaw/issues/2684)) ([da8b1c8](https://github.com/HankHuang0516/EClaw/commit/da8b1c8f947ab8bc8fa455c1962a91146623a1fc))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-14)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **notifications:** add kanban_done + kanban_done_auto toggles to Android Settings ([#2636](https://github.com/HankHuang0516/EClaw/issues/2636)) ([a710909](https://github.com/HankHuang0516/EClaw/commit/a7109095e3393b8564e7ef1b23d382a4fbb944b8))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **i18n:** clear batch 1 residual missing keys ([#2790](https://github.com/HankHuang0516/EClaw/issues/2790)) ([211030e](https://github.com/HankHuang0516/EClaw/commit/211030e0b0b6a865c11f0c4ed60dc4e356d43b7a))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **kanban:** comment input no longer overlaps last comment in card detail (PR [#2678](https://github.com/HankHuang0516/EClaw/issues/2678)) ([fba91fc](https://github.com/HankHuang0516/EClaw/commit/fba91fca15402b453a0db5ee857c0b16e6087055))
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **i18n:** cover dynamic portal wrapper keys ([#2807](https://github.com/HankHuang0516/EClaw/issues/2807)) ([4c711cc](https://github.com/HankHuang0516/EClaw/commit/4c711cc4009300ffe4e8933a98ee01cd0fdd6aeb))
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **petdx:** drop dark-grey loading placeholder + preload sprite WEBP ([#2628](https://github.com/HankHuang0516/EClaw/issues/2628)) ([59cef38](https://github.com/HankHuang0516/EClaw/commit/59cef387bd69ca99d7d15c86a1364856d3849ad8)), closes [#1a1a1a](https://github.com/HankHuang0516/EClaw/issues/1a1a1a)
* **entities:** expose botSecret to owner so wallpaper service can poll companions ([#2615](https://github.com/HankHuang0516/EClaw/issues/2615)) ([04470fc](https://github.com/HankHuang0516/EClaw/commit/04470fce8f8c3fce2b1ba8b243e776606f107502))
* **rental:** expose owner_public_code in marketplace so plaza CTA can route ([#2616](https://github.com/HankHuang0516/EClaw/issues/2616)) ([4d1372f](https://github.com/HankHuang0516/EClaw/commit/4d1372f717d93cab65543e87c852e74e9fb67071)), closes [#2610](https://github.com/HankHuang0516/EClaw/issues/2610)
* **mindmap:** fallback to device scope when entityId is null ([#2728](https://github.com/HankHuang0516/EClaw/issues/2728)) ([7572312](https://github.com/HankHuang0516/EClaw/commit/7572312433d3d75fc245eda48a28919ce14bd927))
* **i18n:** fill Spanish drift keys ([#2751](https://github.com/HankHuang0516/EClaw/issues/2751)) ([0ad0ee5](https://github.com/HankHuang0516/EClaw/commit/0ad0ee55f7fac3e6ac46d891539950dab4d553cc))
* **portal:** fit embedded org chart to mobile viewport ([#2674](https://github.com/HankHuang0516/EClaw/issues/2674)) ([1c4e1b4](https://github.com/HankHuang0516/EClaw/commit/1c4e1b413ea7027b4cd4b8ecda981b0d0e12e66b))
* **i18n:** fix 6 trailing-comma syntax errors in 10-locale batch ([#2771](https://github.com/HankHuang0516/EClaw/issues/2771)) ([b27c6ca](https://github.com/HankHuang0516/EClaw/commit/b27c6ca204bf813e406c54ce3a2532a5f1f031b3))
* **uiux:** harden chat previews and roster preview ([#2769](https://github.com/HankHuang0516/EClaw/issues/2769)) ([466d4d3](https://github.com/HankHuang0516/EClaw/commit/466d4d3ef81c628d3f58db64323946053d7bf61c))
* **mention-parser:** ignore @-mentions inside markdown code spans ([#2645](https://github.com/HankHuang0516/EClaw/issues/2645)) ([8da19d4](https://github.com/HankHuang0516/EClaw/commit/8da19d4a79ceb4152bf2144ee0847c61ce3e1def)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **kanban:** lazy-load dependency chips via IntersectionObserver ([#2632](https://github.com/HankHuang0516/EClaw/issues/2632)) ([20586b4](https://github.com/HankHuang0516/EClaw/commit/20586b43357335f9eb6a190c02d58c8e36b58aba)), closes [#2631](https://github.com/HankHuang0516/EClaw/issues/2631)
* **kanban:** make card sorting deterministic ([#2756](https://github.com/HankHuang0516/EClaw/issues/2756)) ([48e2117](https://github.com/HankHuang0516/EClaw/commit/48e2117b64e37f05dc635e0a3b67bfd43cbe48f5))
* **org-chart:** notify affected bots on hierarchy change ([#2812](https://github.com/HankHuang0516/EClaw/issues/2812)) ([55675fd](https://github.com/HankHuang0516/EClaw/commit/55675fdf4487494d729a29524b32bd81b756a00c)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** notify reviewer on manual /move → review ([#2753](https://github.com/HankHuang0516/EClaw/issues/2753)) ([6cbbb4e](https://github.com/HankHuang0516/EClaw/commit/6cbbb4ee8c0d4d8ad54df2e9b5faaa3699bd530f))
* **wallpaper:** off-load spritesheet fetch to IO so per-petdx sprites actually render ([#2618](https://github.com/HankHuang0516/EClaw/issues/2618)) ([61b832c](https://github.com/HankHuang0516/EClaw/commit/61b832c9fa8a1d0caab810ccc942d85c63349267)), closes [#2615](https://github.com/HankHuang0516/EClaw/issues/2615) [#2577](https://github.com/HankHuang0516/EClaw/issues/2577)
* **portal:** petdx-browser cookie-session fallback for device-login ([#2757](https://github.com/HankHuang0516/EClaw/issues/2757)) ([ca275f4](https://github.com/HankHuang0516/EClaw/commit/ca275f4519835da0c7ad71c588908a18f6f138d8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **i18n:** positional format specifiers for feedback_result_logs (7 locales) ([#2597](https://github.com/HankHuang0516/EClaw/issues/2597)) ([21aedc7](https://github.com/HankHuang0516/EClaw/commit/21aedc7eebc7a2839e340136f38dfdfd4dabb9dc))
* **avatar-petdx:** preserve descriptor across transient API failures (flicker) ([#2625](https://github.com/HankHuang0516/EClaw/issues/2625)) ([7b1c606](https://github.com/HankHuang0516/EClaw/commit/7b1c606514f7698d72ec95cf6c556e4043966186))
* **chat:** preserve scroll anchor while reading history ([#2693](https://github.com/HankHuang0516/EClaw/issues/2693)) ([945fdb7](https://github.com/HankHuang0516/EClaw/commit/945fdb7192b791b31882e1e75568dd8b11e4686f))
* **promo:** pull video embed from /promo-chat-avatar.html ([#2724](https://github.com/HankHuang0516/EClaw/issues/2724)) ([2afabc8](https://github.com/HankHuang0516/EClaw/commit/2afabc8c5ff8b25218a7cb857e8adfa572c8e9d5))
* **kanban:** realign stale recurring schedules ([#2785](https://github.com/HankHuang0516/EClaw/issues/2785)) ([ab8ee25](https://github.com/HankHuang0516/EClaw/commit/ab8ee250a9b37f3d3e838bb01d8866c8d2b78231))
* **portal:** reduce QA-discovered request fanout ([#2656](https://github.com/HankHuang0516/EClaw/issues/2656)) ([1e46d6b](https://github.com/HankHuang0516/EClaw/commit/1e46d6bab61e58c65b452b6503d953f8dddeee75))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **portal:** remove org chart fit scale floor ([#2676](https://github.com/HankHuang0516/EClaw/issues/2676)) ([0f01606](https://github.com/HankHuang0516/EClaw/commit/0f016068b963bb5f800a02f28817c7174979d913))
* **i18n:** rename mm_empty_title → mm_state_empty_title in mindmap.html ([#2683](https://github.com/HankHuang0516/EClaw/issues/2683)) ([c79c109](https://github.com/HankHuang0516/EClaw/commit/c79c109bea23142e8a6d9ace976d105af1280ec9))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **chat:** render mention avatars with companion renderer ([#2633](https://github.com/HankHuang0516/EClaw/issues/2633)) ([03e205f](https://github.com/HankHuang0516/EClaw/commit/03e205f663ecd2c2f443d4009dd5af0093f0bbbb))
* **kanban:** reserve mobile comments panel height ([#2782](https://github.com/HankHuang0516/EClaw/issues/2782)) ([ce8662d](https://github.com/HankHuang0516/EClaw/commit/ce8662d362422fdd25037f1deb61dbed9425e2f9))
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* scheduled audit 2026-05-13 — 6 bugs, XSS, i18n ([#2668](https://github.com/HankHuang0516/EClaw/issues/2668)) ([21dd513](https://github.com/HankHuang0516/EClaw/commit/21dd513b4464738de29164265437435ba6cc4817)), closes [#2605](https://github.com/HankHuang0516/EClaw/issues/2605) [#2608](https://github.com/HankHuang0516/EClaw/issues/2608) [#2600](https://github.com/HankHuang0516/EClaw/issues/2600) [#2599](https://github.com/HankHuang0516/EClaw/issues/2599) [#2598](https://github.com/HankHuang0516/EClaw/issues/2598)
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **chat:** smart-chip preview falls back to inline c.comments when /comments fails (PR [#2677](https://github.com/HankHuang0516/EClaw/issues/2677)) ([7f4dffd](https://github.com/HankHuang0516/EClaw/commit/7f4dffd2c83ea86f296b8fa0610f0e67c9f1af11))
* **kanban:** stabilize comment detail viewport ([#2796](https://github.com/HankHuang0516/EClaw/issues/2796)) ([0a10aad](https://github.com/HankHuang0516/EClaw/commit/0a10aadb5a5b12ff23454c16d5c88183b94ad7d7))
* **wallpaper:** stop Android live wallpaper flashing default lobster on companion change ([#2629](https://github.com/HankHuang0516/EClaw/issues/2629)) ([8b4f66f](https://github.com/HankHuang0516/EClaw/commit/8b4f66fcb335bf43128f924b761b6337c817095b)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **app:** WebView pages honor app-selected locale via ?lang= URL param ([#2672](https://github.com/HankHuang0516/EClaw/issues/2672)) ([8ed8757](https://github.com/HankHuang0516/EClaw/commit/8ed8757aec5bf214e837cc0d81bf2b23f1993a91)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* **community:** 1-click chat button on bot cards + utm tagging ([#2610](https://github.com/HankHuang0516/EClaw/issues/2610)) ([eee97b0](https://github.com/HankHuang0516/EClaw/commit/eee97b0e2e4e74945ec24f218a69a52800b97a66))
* **chat:** add avatar size preference ([#2714](https://github.com/HankHuang0516/EClaw/issues/2714)) ([6fe164a](https://github.com/HankHuang0516/EClaw/commit/6fe164ad8b22fa576d2dd9ad37c0d9fc295b5a83))
* **dashboard:** add Claude and Codex channel guides ([#2640](https://github.com/HankHuang0516/EClaw/issues/2640)) ([c64e4c4](https://github.com/HankHuang0516/EClaw/commit/c64e4c4afc78db58c5cd578f00486dd7b2fd3311))
* **dashboard:** add Claude Code channel guide card ([#2667](https://github.com/HankHuang0516/EClaw/issues/2667)) ([d70d75c](https://github.com/HankHuang0516/EClaw/commit/d70d75c0c8caa8a540358a9aab4556b8c1927a5c))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* **kanban:** add device-scoped card tags ([#2773](https://github.com/HankHuang0516/EClaw/issues/2773)) ([53a387e](https://github.com/HankHuang0516/EClaw/commit/53a387e67ba7bb4f6bed1c427000c4ae8666577a))
* **portal:** add entity selector to petdx-browser ([#2602](https://github.com/HankHuang0516/EClaw/issues/2602)) ([3fa067e](https://github.com/HankHuang0516/EClaw/commit/3fa067e00b38829b48a37cecd33ee81a9a1122d9))
* **kanban:** add explicit card links ([#2721](https://github.com/HankHuang0516/EClaw/issues/2721)) ([ef9f812](https://github.com/HankHuang0516/EClaw/commit/ef9f812a3fcf39efd07fd158ce90951bdd045ac7))
* **kanban:** add explicit done-card reopen flow ([#2801](https://github.com/HankHuang0516/EClaw/issues/2801)) ([5080aac](https://github.com/HankHuang0516/EClaw/commit/5080aacb75047c0deaa379ee708ec85465afd57c))
* **mindmap:** add GET /api/mindmap/graph force-graph projection ([#2680](https://github.com/HankHuang0516/EClaw/issues/2680)) ([a00b2e7](https://github.com/HankHuang0516/EClaw/commit/a00b2e775af2c4c98cd157f760ad87aeeee469f0)), closes [#2679](https://github.com/HankHuang0516/EClaw/issues/2679) [#2679](https://github.com/HankHuang0516/EClaw/issues/2679)
* **dashboard:** add Hermes channel promo card ([#2708](https://github.com/HankHuang0516/EClaw/issues/2708)) ([337aca1](https://github.com/HankHuang0516/EClaw/commit/337aca153d5a1cd7e888c065f00ae54db7872d91))
* **rental:** add listing soft pause ([#2781](https://github.com/HankHuang0516/EClaw/issues/2781)) ([6586b72](https://github.com/HankHuang0516/EClaw/commit/6586b72717ddb1637d91cd3242c8d2ff554f62b4))
* **portal:** add Nagoya 5D4N trip static cross-ref page ([#2689](https://github.com/HankHuang0516/EClaw/issues/2689)) ([2e0efb6](https://github.com/HankHuang0516/EClaw/commit/2e0efb6dcdaff52226cc8854a96747000b12bdff))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **settings:** add rental roster management preview ([#2758](https://github.com/HankHuang0516/EClaw/issues/2758)) ([9706e59](https://github.com/HankHuang0516/EClaw/commit/9706e59ded140a90a6e02348124282bc69d89001))
* **rental:** add renter health chat indicator ([#2690](https://github.com/HankHuang0516/EClaw/issues/2690)) ([36cd2e9](https://github.com/HankHuang0516/EClaw/commit/36cd2e9802be4c7ebb03d3024617fa74aca48ffd))
* **ios:** add Tutorial & Intro entry in Settings ([#2800](https://github.com/HankHuang0516/EClaw/issues/2800)) ([ed83e51](https://github.com/HankHuang0516/EClaw/commit/ed83e51d043bf4cd5865f38dc95a91ed54820d6c))
* **landing:** add Watch Full Demo CTA below hero video ([#2799](https://github.com/HankHuang0516/EClaw/issues/2799)) ([66107c9](https://github.com/HankHuang0516/EClaw/commit/66107c954727551fd34d989a4674daaad9b63968))
* **footer:** add Watch Intro Video link in Info column ([#2798](https://github.com/HankHuang0516/EClaw/issues/2798)) ([d7c6d59](https://github.com/HankHuang0516/EClaw/commit/d7c6d596b69c6a5b257bf1f7a792a407ef9712ad))
* **companion:** bridge crafter-station/petdex gallery (1784 pets) ([#2601](https://github.com/HankHuang0516/EClaw/issues/2601)) ([2e245be](https://github.com/HankHuang0516/EClaw/commit/2e245bea6dd47ea7361b927d389188a3c23b6bb3))
* **promo:** chat avatar size feature landing page (self-hosted MP4) ([#2722](https://github.com/HankHuang0516/EClaw/issues/2722)) ([3852210](https://github.com/HankHuang0516/EClaw/commit/3852210d355704d018e3daca6b5f9512a011b210)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **kanban:** cron-spawn jitter + lane backpressure to prevent same-tick wedge ([#2791](https://github.com/HankHuang0516/EClaw/issues/2791)) ([9f414a7](https://github.com/HankHuang0516/EClaw/commit/9f414a731d6393672a0a4189c7b408c529ae5e12)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **promo:** embed daily eclaw video 2026-05-14 ([#2786](https://github.com/HankHuang0516/EClaw/issues/2786)) ([718a814](https://github.com/HankHuang0516/EClaw/commit/718a814ab16850bc2b33a1b303841e2c4378ecfa)), closes [#2782](https://github.com/HankHuang0516/EClaw/issues/2782) [#2693](https://github.com/HankHuang0516/EClaw/issues/2693)
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **info:** embed promo video at top of Quick Start tab ([#2797](https://github.com/HankHuang0516/EClaw/issues/2797)) ([047679f](https://github.com/HankHuang0516/EClaw/commit/047679fd57ab9949eaeacea414d5611e71afe041))
* **rental:** enforce strict rebind refunds ([#2703](https://github.com/HankHuang0516/EClaw/issues/2703)) ([a1859c5](https://github.com/HankHuang0516/EClaw/commit/a1859c50e6fb3991d7a8051491502d824a14a116))
* **portal:** info-guide-rules + info-guide-soul slide pair ([#2793](https://github.com/HankHuang0516/EClaw/issues/2793)) ([1c8bddc](https://github.com/HankHuang0516/EClaw/commit/1c8bddc4c185054b2b60088498e3d45509117127)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **chat:** link card previews to kanban ([#2754](https://github.com/HankHuang0516/EClaw/issues/2754)) ([2261240](https://github.com/HankHuang0516/EClaw/commit/22612402c2e95efb07246629e81a849be41ee9c7))
* **mission:** link notes to kanban cards ([#2723](https://github.com/HankHuang0516/EClaw/issues/2723)) ([b36dc18](https://github.com/HankHuang0516/EClaw/commit/b36dc18f3a8facf12e0b6046351c222f1e99dc55))
* **mindmap:** mission.html link to /portal/mindmap.html + deprecate /api/mission/mindmap ([#2685](https://github.com/HankHuang0516/EClaw/issues/2685)) ([11e297b](https://github.com/HankHuang0516/EClaw/commit/11e297bab1c9b56fcde3027d6500b7c58891bf18)), closes [#2680](https://github.com/HankHuang0516/EClaw/issues/2680) [#2684](https://github.com/HankHuang0516/EClaw/issues/2684)
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **avatar:** petdx render on card-holder my-cards (Phase 1b) ([#2621](https://github.com/HankHuang0516/EClaw/issues/2621)) ([f78ba8b](https://github.com/HankHuang0516/EClaw/commit/f78ba8b18acc426936ab6d8a82ca7541effea00d))
* **avatar:** petdx render on dashboard entity grid / org chart / bindings (Phase 1b) ([#2622](https://github.com/HankHuang0516/EClaw/issues/2622)) ([f417749](https://github.com/HankHuang0516/EClaw/commit/f41774914451048e8cd76e9ae30416a0642e173b)), closes [#2620](https://github.com/HankHuang0516/EClaw/issues/2620) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621)
* **avatar:** petdx render on kanban auto-assign / pulse / comment avatars (Phase 1b) ([#2624](https://github.com/HankHuang0516/EClaw/issues/2624)) ([6bff5f8](https://github.com/HankHuang0516/EClaw/commit/6bff5f80440d0bd91a6b1721cde9478d685c4d46))
* **avatar:** petdx render on mission skill/rule/soul entity dialogs (Phase 1b) ([#2623](https://github.com/HankHuang0516/EClaw/issues/2623)) ([129327b](https://github.com/HankHuang0516/EClaw/commit/129327bc7b91056659f1ab7e8d5e3f5260d951fb))
* **mindmap:** portal/mindmap.html force-graph prototype ([#129](https://github.com/HankHuang0516/EClaw/issues/129)) ([#2681](https://github.com/HankHuang0516/EClaw/issues/2681)) ([0f15e69](https://github.com/HankHuang0516/EClaw/commit/0f15e6930f0697c37fa08f3219edb8f9e499837f)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **portal:** redo nagoya trip page in professional tour-guide style ([#2691](https://github.com/HankHuang0516/EClaw/issues/2691)) ([b2378c0](https://github.com/HankHuang0516/EClaw/commit/b2378c06ee20fa9cccfdceceb1a4c9e0b3072f59))
* **avatar:** render selected petdx companion in chat avatars ([#2620](https://github.com/HankHuang0516/EClaw/issues/2620)) ([0bdd046](https://github.com/HankHuang0516/EClaw/commit/0bdd046fe1b1c428e32edda366ff112c08927f4c))
* **home:** replace native home with WebView hosting dashboard.html ([#2634](https://github.com/HankHuang0516/EClaw/issues/2634)) ([e69ea81](https://github.com/HankHuang0516/EClaw/commit/e69ea8160c239b083a83d6dc83a4f1c3f901c863))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **chat:** support message deep links ([#2719](https://github.com/HankHuang0516/EClaw/issues/2719)) ([2dc0f1e](https://github.com/HankHuang0516/EClaw/commit/2dc0f1eeb259e1a0848db4a03186b989372cd91c))
* **mission:** support note deep links ([#2717](https://github.com/HankHuang0516/EClaw/issues/2717)) ([2efd3a5](https://github.com/HankHuang0516/EClaw/commit/2efd3a5e741217a07c0b0ac54a0ddd010e0ebe23))
* **share-chat:** twitter card + per-bot og:image/twitter:* in SSR ([#2609](https://github.com/HankHuang0516/EClaw/issues/2609)) ([6cdc853](https://github.com/HankHuang0516/EClaw/commit/6cdc853dc884cdb95bd47214942768981f218ae0))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))
* **settings:** wire petdx avatar into channel-account chips ([#2626](https://github.com/HankHuang0516/EClaw/issues/2626)) ([88aec77](https://github.com/HankHuang0516/EClaw/commit/88aec772628c240e97b336bb5820892ad632d1ae))
* **files:** wire petdx avatar into entity filter & per-file badges ([#2627](https://github.com/HankHuang0516/EClaw/issues/2627)) ([5b3e5cc](https://github.com/HankHuang0516/EClaw/commit/5b3e5cc542d9da69bb4e92500fd03a542ea33f00))
* **mindmap:** wrap hardcoded zh-TW UI strings with i18n t() ([#2607](https://github.com/HankHuang0516/EClaw/issues/2607)) ([166af87](https://github.com/HankHuang0516/EClaw/commit/166af8772b2121a24aaf34a83b3de970e9b3b571)), closes [#2606](https://github.com/HankHuang0516/EClaw/issues/2606)
* **i18n:** zh-TW backfill 8 keys (soft-pause + chat + invite + wallet) ([#2815](https://github.com/HankHuang0516/EClaw/issues/2815)) ([a2dd574](https://github.com/HankHuang0516/EClaw/commit/a2dd5743ce8d43a4b6ace9a2fd4b52568180d6c5))


### Performance Improvements

* **mindmap:** force-graph hardening for 1000/2000-node graphs ([#2684](https://github.com/HankHuang0516/EClaw/issues/2684)) ([da8b1c8](https://github.com/HankHuang0516/EClaw/commit/da8b1c8f947ab8bc8fa455c1962a91146623a1fc))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-14)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **notifications:** add kanban_done + kanban_done_auto toggles to Android Settings ([#2636](https://github.com/HankHuang0516/EClaw/issues/2636)) ([a710909](https://github.com/HankHuang0516/EClaw/commit/a7109095e3393b8564e7ef1b23d382a4fbb944b8))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **i18n:** clear batch 1 residual missing keys ([#2790](https://github.com/HankHuang0516/EClaw/issues/2790)) ([211030e](https://github.com/HankHuang0516/EClaw/commit/211030e0b0b6a865c11f0c4ed60dc4e356d43b7a))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **kanban:** comment input no longer overlaps last comment in card detail (PR [#2678](https://github.com/HankHuang0516/EClaw/issues/2678)) ([fba91fc](https://github.com/HankHuang0516/EClaw/commit/fba91fca15402b453a0db5ee857c0b16e6087055))
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **i18n:** cover dynamic portal wrapper keys ([#2807](https://github.com/HankHuang0516/EClaw/issues/2807)) ([4c711cc](https://github.com/HankHuang0516/EClaw/commit/4c711cc4009300ffe4e8933a98ee01cd0fdd6aeb))
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **petdx:** drop dark-grey loading placeholder + preload sprite WEBP ([#2628](https://github.com/HankHuang0516/EClaw/issues/2628)) ([59cef38](https://github.com/HankHuang0516/EClaw/commit/59cef387bd69ca99d7d15c86a1364856d3849ad8)), closes [#1a1a1a](https://github.com/HankHuang0516/EClaw/issues/1a1a1a)
* **entities:** expose botSecret to owner so wallpaper service can poll companions ([#2615](https://github.com/HankHuang0516/EClaw/issues/2615)) ([04470fc](https://github.com/HankHuang0516/EClaw/commit/04470fce8f8c3fce2b1ba8b243e776606f107502))
* **rental:** expose owner_public_code in marketplace so plaza CTA can route ([#2616](https://github.com/HankHuang0516/EClaw/issues/2616)) ([4d1372f](https://github.com/HankHuang0516/EClaw/commit/4d1372f717d93cab65543e87c852e74e9fb67071)), closes [#2610](https://github.com/HankHuang0516/EClaw/issues/2610)
* **mindmap:** fallback to device scope when entityId is null ([#2728](https://github.com/HankHuang0516/EClaw/issues/2728)) ([7572312](https://github.com/HankHuang0516/EClaw/commit/7572312433d3d75fc245eda48a28919ce14bd927))
* **i18n:** fill Spanish drift keys ([#2751](https://github.com/HankHuang0516/EClaw/issues/2751)) ([0ad0ee5](https://github.com/HankHuang0516/EClaw/commit/0ad0ee55f7fac3e6ac46d891539950dab4d553cc))
* **portal:** fit embedded org chart to mobile viewport ([#2674](https://github.com/HankHuang0516/EClaw/issues/2674)) ([1c4e1b4](https://github.com/HankHuang0516/EClaw/commit/1c4e1b413ea7027b4cd4b8ecda981b0d0e12e66b))
* **i18n:** fix 6 trailing-comma syntax errors in 10-locale batch ([#2771](https://github.com/HankHuang0516/EClaw/issues/2771)) ([b27c6ca](https://github.com/HankHuang0516/EClaw/commit/b27c6ca204bf813e406c54ce3a2532a5f1f031b3))
* **uiux:** harden chat previews and roster preview ([#2769](https://github.com/HankHuang0516/EClaw/issues/2769)) ([466d4d3](https://github.com/HankHuang0516/EClaw/commit/466d4d3ef81c628d3f58db64323946053d7bf61c))
* **mention-parser:** ignore @-mentions inside markdown code spans ([#2645](https://github.com/HankHuang0516/EClaw/issues/2645)) ([8da19d4](https://github.com/HankHuang0516/EClaw/commit/8da19d4a79ceb4152bf2144ee0847c61ce3e1def)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **kanban:** lazy-load dependency chips via IntersectionObserver ([#2632](https://github.com/HankHuang0516/EClaw/issues/2632)) ([20586b4](https://github.com/HankHuang0516/EClaw/commit/20586b43357335f9eb6a190c02d58c8e36b58aba)), closes [#2631](https://github.com/HankHuang0516/EClaw/issues/2631)
* **kanban:** make card sorting deterministic ([#2756](https://github.com/HankHuang0516/EClaw/issues/2756)) ([48e2117](https://github.com/HankHuang0516/EClaw/commit/48e2117b64e37f05dc635e0a3b67bfd43cbe48f5))
* **org-chart:** notify affected bots on hierarchy change ([#2812](https://github.com/HankHuang0516/EClaw/issues/2812)) ([55675fd](https://github.com/HankHuang0516/EClaw/commit/55675fdf4487494d729a29524b32bd81b756a00c)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** notify reviewer on manual /move → review ([#2753](https://github.com/HankHuang0516/EClaw/issues/2753)) ([6cbbb4e](https://github.com/HankHuang0516/EClaw/commit/6cbbb4ee8c0d4d8ad54df2e9b5faaa3699bd530f))
* **wallpaper:** off-load spritesheet fetch to IO so per-petdx sprites actually render ([#2618](https://github.com/HankHuang0516/EClaw/issues/2618)) ([61b832c](https://github.com/HankHuang0516/EClaw/commit/61b832c9fa8a1d0caab810ccc942d85c63349267)), closes [#2615](https://github.com/HankHuang0516/EClaw/issues/2615) [#2577](https://github.com/HankHuang0516/EClaw/issues/2577)
* **portal:** petdx-browser cookie-session fallback for device-login ([#2757](https://github.com/HankHuang0516/EClaw/issues/2757)) ([ca275f4](https://github.com/HankHuang0516/EClaw/commit/ca275f4519835da0c7ad71c588908a18f6f138d8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **i18n:** positional format specifiers for feedback_result_logs (7 locales) ([#2597](https://github.com/HankHuang0516/EClaw/issues/2597)) ([21aedc7](https://github.com/HankHuang0516/EClaw/commit/21aedc7eebc7a2839e340136f38dfdfd4dabb9dc))
* **avatar-petdx:** preserve descriptor across transient API failures (flicker) ([#2625](https://github.com/HankHuang0516/EClaw/issues/2625)) ([7b1c606](https://github.com/HankHuang0516/EClaw/commit/7b1c606514f7698d72ec95cf6c556e4043966186))
* **chat:** preserve scroll anchor while reading history ([#2693](https://github.com/HankHuang0516/EClaw/issues/2693)) ([945fdb7](https://github.com/HankHuang0516/EClaw/commit/945fdb7192b791b31882e1e75568dd8b11e4686f))
* **promo:** pull video embed from /promo-chat-avatar.html ([#2724](https://github.com/HankHuang0516/EClaw/issues/2724)) ([2afabc8](https://github.com/HankHuang0516/EClaw/commit/2afabc8c5ff8b25218a7cb857e8adfa572c8e9d5))
* **kanban:** realign stale recurring schedules ([#2785](https://github.com/HankHuang0516/EClaw/issues/2785)) ([ab8ee25](https://github.com/HankHuang0516/EClaw/commit/ab8ee250a9b37f3d3e838bb01d8866c8d2b78231))
* **portal:** reduce QA-discovered request fanout ([#2656](https://github.com/HankHuang0516/EClaw/issues/2656)) ([1e46d6b](https://github.com/HankHuang0516/EClaw/commit/1e46d6bab61e58c65b452b6503d953f8dddeee75))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **portal:** remove org chart fit scale floor ([#2676](https://github.com/HankHuang0516/EClaw/issues/2676)) ([0f01606](https://github.com/HankHuang0516/EClaw/commit/0f016068b963bb5f800a02f28817c7174979d913))
* **i18n:** rename mm_empty_title → mm_state_empty_title in mindmap.html ([#2683](https://github.com/HankHuang0516/EClaw/issues/2683)) ([c79c109](https://github.com/HankHuang0516/EClaw/commit/c79c109bea23142e8a6d9ace976d105af1280ec9))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **chat:** render mention avatars with companion renderer ([#2633](https://github.com/HankHuang0516/EClaw/issues/2633)) ([03e205f](https://github.com/HankHuang0516/EClaw/commit/03e205f663ecd2c2f443d4009dd5af0093f0bbbb))
* **kanban:** reserve mobile comments panel height ([#2782](https://github.com/HankHuang0516/EClaw/issues/2782)) ([ce8662d](https://github.com/HankHuang0516/EClaw/commit/ce8662d362422fdd25037f1deb61dbed9425e2f9))
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* scheduled audit 2026-05-13 — 6 bugs, XSS, i18n ([#2668](https://github.com/HankHuang0516/EClaw/issues/2668)) ([21dd513](https://github.com/HankHuang0516/EClaw/commit/21dd513b4464738de29164265437435ba6cc4817)), closes [#2605](https://github.com/HankHuang0516/EClaw/issues/2605) [#2608](https://github.com/HankHuang0516/EClaw/issues/2608) [#2600](https://github.com/HankHuang0516/EClaw/issues/2600) [#2599](https://github.com/HankHuang0516/EClaw/issues/2599) [#2598](https://github.com/HankHuang0516/EClaw/issues/2598)
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **chat:** smart-chip preview falls back to inline c.comments when /comments fails (PR [#2677](https://github.com/HankHuang0516/EClaw/issues/2677)) ([7f4dffd](https://github.com/HankHuang0516/EClaw/commit/7f4dffd2c83ea86f296b8fa0610f0e67c9f1af11))
* **kanban:** stabilize comment detail viewport ([#2796](https://github.com/HankHuang0516/EClaw/issues/2796)) ([0a10aad](https://github.com/HankHuang0516/EClaw/commit/0a10aadb5a5b12ff23454c16d5c88183b94ad7d7))
* **wallpaper:** stop Android live wallpaper flashing default lobster on companion change ([#2629](https://github.com/HankHuang0516/EClaw/issues/2629)) ([8b4f66f](https://github.com/HankHuang0516/EClaw/commit/8b4f66fcb335bf43128f924b761b6337c817095b)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **app:** WebView pages honor app-selected locale via ?lang= URL param ([#2672](https://github.com/HankHuang0516/EClaw/issues/2672)) ([8ed8757](https://github.com/HankHuang0516/EClaw/commit/8ed8757aec5bf214e837cc0d81bf2b23f1993a91)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* **community:** 1-click chat button on bot cards + utm tagging ([#2610](https://github.com/HankHuang0516/EClaw/issues/2610)) ([eee97b0](https://github.com/HankHuang0516/EClaw/commit/eee97b0e2e4e74945ec24f218a69a52800b97a66))
* **chat:** add avatar size preference ([#2714](https://github.com/HankHuang0516/EClaw/issues/2714)) ([6fe164a](https://github.com/HankHuang0516/EClaw/commit/6fe164ad8b22fa576d2dd9ad37c0d9fc295b5a83))
* **dashboard:** add Claude and Codex channel guides ([#2640](https://github.com/HankHuang0516/EClaw/issues/2640)) ([c64e4c4](https://github.com/HankHuang0516/EClaw/commit/c64e4c4afc78db58c5cd578f00486dd7b2fd3311))
* **dashboard:** add Claude Code channel guide card ([#2667](https://github.com/HankHuang0516/EClaw/issues/2667)) ([d70d75c](https://github.com/HankHuang0516/EClaw/commit/d70d75c0c8caa8a540358a9aab4556b8c1927a5c))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* **kanban:** add device-scoped card tags ([#2773](https://github.com/HankHuang0516/EClaw/issues/2773)) ([53a387e](https://github.com/HankHuang0516/EClaw/commit/53a387e67ba7bb4f6bed1c427000c4ae8666577a))
* **portal:** add entity selector to petdx-browser ([#2602](https://github.com/HankHuang0516/EClaw/issues/2602)) ([3fa067e](https://github.com/HankHuang0516/EClaw/commit/3fa067e00b38829b48a37cecd33ee81a9a1122d9))
* **kanban:** add explicit card links ([#2721](https://github.com/HankHuang0516/EClaw/issues/2721)) ([ef9f812](https://github.com/HankHuang0516/EClaw/commit/ef9f812a3fcf39efd07fd158ce90951bdd045ac7))
* **kanban:** add explicit done-card reopen flow ([#2801](https://github.com/HankHuang0516/EClaw/issues/2801)) ([5080aac](https://github.com/HankHuang0516/EClaw/commit/5080aacb75047c0deaa379ee708ec85465afd57c))
* **mindmap:** add GET /api/mindmap/graph force-graph projection ([#2680](https://github.com/HankHuang0516/EClaw/issues/2680)) ([a00b2e7](https://github.com/HankHuang0516/EClaw/commit/a00b2e775af2c4c98cd157f760ad87aeeee469f0)), closes [#2679](https://github.com/HankHuang0516/EClaw/issues/2679) [#2679](https://github.com/HankHuang0516/EClaw/issues/2679)
* **dashboard:** add Hermes channel promo card ([#2708](https://github.com/HankHuang0516/EClaw/issues/2708)) ([337aca1](https://github.com/HankHuang0516/EClaw/commit/337aca153d5a1cd7e888c065f00ae54db7872d91))
* **rental:** add listing soft pause ([#2781](https://github.com/HankHuang0516/EClaw/issues/2781)) ([6586b72](https://github.com/HankHuang0516/EClaw/commit/6586b72717ddb1637d91cd3242c8d2ff554f62b4))
* **portal:** add Nagoya 5D4N trip static cross-ref page ([#2689](https://github.com/HankHuang0516/EClaw/issues/2689)) ([2e0efb6](https://github.com/HankHuang0516/EClaw/commit/2e0efb6dcdaff52226cc8854a96747000b12bdff))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **settings:** add rental roster management preview ([#2758](https://github.com/HankHuang0516/EClaw/issues/2758)) ([9706e59](https://github.com/HankHuang0516/EClaw/commit/9706e59ded140a90a6e02348124282bc69d89001))
* **rental:** add renter health chat indicator ([#2690](https://github.com/HankHuang0516/EClaw/issues/2690)) ([36cd2e9](https://github.com/HankHuang0516/EClaw/commit/36cd2e9802be4c7ebb03d3024617fa74aca48ffd))
* **ios:** add Tutorial & Intro entry in Settings ([#2800](https://github.com/HankHuang0516/EClaw/issues/2800)) ([ed83e51](https://github.com/HankHuang0516/EClaw/commit/ed83e51d043bf4cd5865f38dc95a91ed54820d6c))
* **landing:** add Watch Full Demo CTA below hero video ([#2799](https://github.com/HankHuang0516/EClaw/issues/2799)) ([66107c9](https://github.com/HankHuang0516/EClaw/commit/66107c954727551fd34d989a4674daaad9b63968))
* **footer:** add Watch Intro Video link in Info column ([#2798](https://github.com/HankHuang0516/EClaw/issues/2798)) ([d7c6d59](https://github.com/HankHuang0516/EClaw/commit/d7c6d596b69c6a5b257bf1f7a792a407ef9712ad))
* **companion:** bridge crafter-station/petdex gallery (1784 pets) ([#2601](https://github.com/HankHuang0516/EClaw/issues/2601)) ([2e245be](https://github.com/HankHuang0516/EClaw/commit/2e245bea6dd47ea7361b927d389188a3c23b6bb3))
* **promo:** chat avatar size feature landing page (self-hosted MP4) ([#2722](https://github.com/HankHuang0516/EClaw/issues/2722)) ([3852210](https://github.com/HankHuang0516/EClaw/commit/3852210d355704d018e3daca6b5f9512a011b210)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **kanban:** cron-spawn jitter + lane backpressure to prevent same-tick wedge ([#2791](https://github.com/HankHuang0516/EClaw/issues/2791)) ([9f414a7](https://github.com/HankHuang0516/EClaw/commit/9f414a731d6393672a0a4189c7b408c529ae5e12)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **promo:** embed daily eclaw video 2026-05-14 ([#2786](https://github.com/HankHuang0516/EClaw/issues/2786)) ([718a814](https://github.com/HankHuang0516/EClaw/commit/718a814ab16850bc2b33a1b303841e2c4378ecfa)), closes [#2782](https://github.com/HankHuang0516/EClaw/issues/2782) [#2693](https://github.com/HankHuang0516/EClaw/issues/2693)
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **info:** embed promo video at top of Quick Start tab ([#2797](https://github.com/HankHuang0516/EClaw/issues/2797)) ([047679f](https://github.com/HankHuang0516/EClaw/commit/047679fd57ab9949eaeacea414d5611e71afe041))
* **rental:** enforce strict rebind refunds ([#2703](https://github.com/HankHuang0516/EClaw/issues/2703)) ([a1859c5](https://github.com/HankHuang0516/EClaw/commit/a1859c50e6fb3991d7a8051491502d824a14a116))
* **portal:** info-guide-rules + info-guide-soul slide pair ([#2793](https://github.com/HankHuang0516/EClaw/issues/2793)) ([1c8bddc](https://github.com/HankHuang0516/EClaw/commit/1c8bddc4c185054b2b60088498e3d45509117127)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **chat:** link card previews to kanban ([#2754](https://github.com/HankHuang0516/EClaw/issues/2754)) ([2261240](https://github.com/HankHuang0516/EClaw/commit/22612402c2e95efb07246629e81a849be41ee9c7))
* **mission:** link notes to kanban cards ([#2723](https://github.com/HankHuang0516/EClaw/issues/2723)) ([b36dc18](https://github.com/HankHuang0516/EClaw/commit/b36dc18f3a8facf12e0b6046351c222f1e99dc55))
* **mindmap:** mission.html link to /portal/mindmap.html + deprecate /api/mission/mindmap ([#2685](https://github.com/HankHuang0516/EClaw/issues/2685)) ([11e297b](https://github.com/HankHuang0516/EClaw/commit/11e297bab1c9b56fcde3027d6500b7c58891bf18)), closes [#2680](https://github.com/HankHuang0516/EClaw/issues/2680) [#2684](https://github.com/HankHuang0516/EClaw/issues/2684)
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **avatar:** petdx render on card-holder my-cards (Phase 1b) ([#2621](https://github.com/HankHuang0516/EClaw/issues/2621)) ([f78ba8b](https://github.com/HankHuang0516/EClaw/commit/f78ba8b18acc426936ab6d8a82ca7541effea00d))
* **avatar:** petdx render on dashboard entity grid / org chart / bindings (Phase 1b) ([#2622](https://github.com/HankHuang0516/EClaw/issues/2622)) ([f417749](https://github.com/HankHuang0516/EClaw/commit/f41774914451048e8cd76e9ae30416a0642e173b)), closes [#2620](https://github.com/HankHuang0516/EClaw/issues/2620) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621)
* **avatar:** petdx render on kanban auto-assign / pulse / comment avatars (Phase 1b) ([#2624](https://github.com/HankHuang0516/EClaw/issues/2624)) ([6bff5f8](https://github.com/HankHuang0516/EClaw/commit/6bff5f80440d0bd91a6b1721cde9478d685c4d46))
* **avatar:** petdx render on mission skill/rule/soul entity dialogs (Phase 1b) ([#2623](https://github.com/HankHuang0516/EClaw/issues/2623)) ([129327b](https://github.com/HankHuang0516/EClaw/commit/129327bc7b91056659f1ab7e8d5e3f5260d951fb))
* **mindmap:** portal/mindmap.html force-graph prototype ([#129](https://github.com/HankHuang0516/EClaw/issues/129)) ([#2681](https://github.com/HankHuang0516/EClaw/issues/2681)) ([0f15e69](https://github.com/HankHuang0516/EClaw/commit/0f15e6930f0697c37fa08f3219edb8f9e499837f)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **portal:** redo nagoya trip page in professional tour-guide style ([#2691](https://github.com/HankHuang0516/EClaw/issues/2691)) ([b2378c0](https://github.com/HankHuang0516/EClaw/commit/b2378c06ee20fa9cccfdceceb1a4c9e0b3072f59))
* **avatar:** render selected petdx companion in chat avatars ([#2620](https://github.com/HankHuang0516/EClaw/issues/2620)) ([0bdd046](https://github.com/HankHuang0516/EClaw/commit/0bdd046fe1b1c428e32edda366ff112c08927f4c))
* **home:** replace native home with WebView hosting dashboard.html ([#2634](https://github.com/HankHuang0516/EClaw/issues/2634)) ([e69ea81](https://github.com/HankHuang0516/EClaw/commit/e69ea8160c239b083a83d6dc83a4f1c3f901c863))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **chat:** support message deep links ([#2719](https://github.com/HankHuang0516/EClaw/issues/2719)) ([2dc0f1e](https://github.com/HankHuang0516/EClaw/commit/2dc0f1eeb259e1a0848db4a03186b989372cd91c))
* **mission:** support note deep links ([#2717](https://github.com/HankHuang0516/EClaw/issues/2717)) ([2efd3a5](https://github.com/HankHuang0516/EClaw/commit/2efd3a5e741217a07c0b0ac54a0ddd010e0ebe23))
* **share-chat:** twitter card + per-bot og:image/twitter:* in SSR ([#2609](https://github.com/HankHuang0516/EClaw/issues/2609)) ([6cdc853](https://github.com/HankHuang0516/EClaw/commit/6cdc853dc884cdb95bd47214942768981f218ae0))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))
* **settings:** wire petdx avatar into channel-account chips ([#2626](https://github.com/HankHuang0516/EClaw/issues/2626)) ([88aec77](https://github.com/HankHuang0516/EClaw/commit/88aec772628c240e97b336bb5820892ad632d1ae))
* **files:** wire petdx avatar into entity filter & per-file badges ([#2627](https://github.com/HankHuang0516/EClaw/issues/2627)) ([5b3e5cc](https://github.com/HankHuang0516/EClaw/commit/5b3e5cc542d9da69bb4e92500fd03a542ea33f00))
* **mindmap:** wrap hardcoded zh-TW UI strings with i18n t() ([#2607](https://github.com/HankHuang0516/EClaw/issues/2607)) ([166af87](https://github.com/HankHuang0516/EClaw/commit/166af8772b2121a24aaf34a83b3de970e9b3b571)), closes [#2606](https://github.com/HankHuang0516/EClaw/issues/2606)


### Performance Improvements

* **mindmap:** force-graph hardening for 1000/2000-node graphs ([#2684](https://github.com/HankHuang0516/EClaw/issues/2684)) ([da8b1c8](https://github.com/HankHuang0516/EClaw/commit/da8b1c8f947ab8bc8fa455c1962a91146623a1fc))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-14)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **notifications:** add kanban_done + kanban_done_auto toggles to Android Settings ([#2636](https://github.com/HankHuang0516/EClaw/issues/2636)) ([a710909](https://github.com/HankHuang0516/EClaw/commit/a7109095e3393b8564e7ef1b23d382a4fbb944b8))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **i18n:** clear batch 1 residual missing keys ([#2790](https://github.com/HankHuang0516/EClaw/issues/2790)) ([211030e](https://github.com/HankHuang0516/EClaw/commit/211030e0b0b6a865c11f0c4ed60dc4e356d43b7a))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **kanban:** comment input no longer overlaps last comment in card detail (PR [#2678](https://github.com/HankHuang0516/EClaw/issues/2678)) ([fba91fc](https://github.com/HankHuang0516/EClaw/commit/fba91fca15402b453a0db5ee857c0b16e6087055))
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **i18n:** cover dynamic portal wrapper keys ([#2807](https://github.com/HankHuang0516/EClaw/issues/2807)) ([4c711cc](https://github.com/HankHuang0516/EClaw/commit/4c711cc4009300ffe4e8933a98ee01cd0fdd6aeb))
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **petdx:** drop dark-grey loading placeholder + preload sprite WEBP ([#2628](https://github.com/HankHuang0516/EClaw/issues/2628)) ([59cef38](https://github.com/HankHuang0516/EClaw/commit/59cef387bd69ca99d7d15c86a1364856d3849ad8)), closes [#1a1a1a](https://github.com/HankHuang0516/EClaw/issues/1a1a1a)
* **entities:** expose botSecret to owner so wallpaper service can poll companions ([#2615](https://github.com/HankHuang0516/EClaw/issues/2615)) ([04470fc](https://github.com/HankHuang0516/EClaw/commit/04470fce8f8c3fce2b1ba8b243e776606f107502))
* **rental:** expose owner_public_code in marketplace so plaza CTA can route ([#2616](https://github.com/HankHuang0516/EClaw/issues/2616)) ([4d1372f](https://github.com/HankHuang0516/EClaw/commit/4d1372f717d93cab65543e87c852e74e9fb67071)), closes [#2610](https://github.com/HankHuang0516/EClaw/issues/2610)
* **mindmap:** fallback to device scope when entityId is null ([#2728](https://github.com/HankHuang0516/EClaw/issues/2728)) ([7572312](https://github.com/HankHuang0516/EClaw/commit/7572312433d3d75fc245eda48a28919ce14bd927))
* **i18n:** fill Spanish drift keys ([#2751](https://github.com/HankHuang0516/EClaw/issues/2751)) ([0ad0ee5](https://github.com/HankHuang0516/EClaw/commit/0ad0ee55f7fac3e6ac46d891539950dab4d553cc))
* **portal:** fit embedded org chart to mobile viewport ([#2674](https://github.com/HankHuang0516/EClaw/issues/2674)) ([1c4e1b4](https://github.com/HankHuang0516/EClaw/commit/1c4e1b413ea7027b4cd4b8ecda981b0d0e12e66b))
* **i18n:** fix 6 trailing-comma syntax errors in 10-locale batch ([#2771](https://github.com/HankHuang0516/EClaw/issues/2771)) ([b27c6ca](https://github.com/HankHuang0516/EClaw/commit/b27c6ca204bf813e406c54ce3a2532a5f1f031b3))
* **uiux:** harden chat previews and roster preview ([#2769](https://github.com/HankHuang0516/EClaw/issues/2769)) ([466d4d3](https://github.com/HankHuang0516/EClaw/commit/466d4d3ef81c628d3f58db64323946053d7bf61c))
* **mention-parser:** ignore @-mentions inside markdown code spans ([#2645](https://github.com/HankHuang0516/EClaw/issues/2645)) ([8da19d4](https://github.com/HankHuang0516/EClaw/commit/8da19d4a79ceb4152bf2144ee0847c61ce3e1def)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **kanban:** lazy-load dependency chips via IntersectionObserver ([#2632](https://github.com/HankHuang0516/EClaw/issues/2632)) ([20586b4](https://github.com/HankHuang0516/EClaw/commit/20586b43357335f9eb6a190c02d58c8e36b58aba)), closes [#2631](https://github.com/HankHuang0516/EClaw/issues/2631)
* **kanban:** make card sorting deterministic ([#2756](https://github.com/HankHuang0516/EClaw/issues/2756)) ([48e2117](https://github.com/HankHuang0516/EClaw/commit/48e2117b64e37f05dc635e0a3b67bfd43cbe48f5))
* **org-chart:** notify affected bots on hierarchy change ([#2812](https://github.com/HankHuang0516/EClaw/issues/2812)) ([55675fd](https://github.com/HankHuang0516/EClaw/commit/55675fdf4487494d729a29524b32bd81b756a00c)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** notify reviewer on manual /move → review ([#2753](https://github.com/HankHuang0516/EClaw/issues/2753)) ([6cbbb4e](https://github.com/HankHuang0516/EClaw/commit/6cbbb4ee8c0d4d8ad54df2e9b5faaa3699bd530f))
* **wallpaper:** off-load spritesheet fetch to IO so per-petdx sprites actually render ([#2618](https://github.com/HankHuang0516/EClaw/issues/2618)) ([61b832c](https://github.com/HankHuang0516/EClaw/commit/61b832c9fa8a1d0caab810ccc942d85c63349267)), closes [#2615](https://github.com/HankHuang0516/EClaw/issues/2615) [#2577](https://github.com/HankHuang0516/EClaw/issues/2577)
* **portal:** petdx-browser cookie-session fallback for device-login ([#2757](https://github.com/HankHuang0516/EClaw/issues/2757)) ([ca275f4](https://github.com/HankHuang0516/EClaw/commit/ca275f4519835da0c7ad71c588908a18f6f138d8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **i18n:** positional format specifiers for feedback_result_logs (7 locales) ([#2597](https://github.com/HankHuang0516/EClaw/issues/2597)) ([21aedc7](https://github.com/HankHuang0516/EClaw/commit/21aedc7eebc7a2839e340136f38dfdfd4dabb9dc))
* **avatar-petdx:** preserve descriptor across transient API failures (flicker) ([#2625](https://github.com/HankHuang0516/EClaw/issues/2625)) ([7b1c606](https://github.com/HankHuang0516/EClaw/commit/7b1c606514f7698d72ec95cf6c556e4043966186))
* **chat:** preserve scroll anchor while reading history ([#2693](https://github.com/HankHuang0516/EClaw/issues/2693)) ([945fdb7](https://github.com/HankHuang0516/EClaw/commit/945fdb7192b791b31882e1e75568dd8b11e4686f))
* **promo:** pull video embed from /promo-chat-avatar.html ([#2724](https://github.com/HankHuang0516/EClaw/issues/2724)) ([2afabc8](https://github.com/HankHuang0516/EClaw/commit/2afabc8c5ff8b25218a7cb857e8adfa572c8e9d5))
* **kanban:** realign stale recurring schedules ([#2785](https://github.com/HankHuang0516/EClaw/issues/2785)) ([ab8ee25](https://github.com/HankHuang0516/EClaw/commit/ab8ee250a9b37f3d3e838bb01d8866c8d2b78231))
* **portal:** reduce QA-discovered request fanout ([#2656](https://github.com/HankHuang0516/EClaw/issues/2656)) ([1e46d6b](https://github.com/HankHuang0516/EClaw/commit/1e46d6bab61e58c65b452b6503d953f8dddeee75))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **portal:** remove org chart fit scale floor ([#2676](https://github.com/HankHuang0516/EClaw/issues/2676)) ([0f01606](https://github.com/HankHuang0516/EClaw/commit/0f016068b963bb5f800a02f28817c7174979d913))
* **i18n:** rename mm_empty_title → mm_state_empty_title in mindmap.html ([#2683](https://github.com/HankHuang0516/EClaw/issues/2683)) ([c79c109](https://github.com/HankHuang0516/EClaw/commit/c79c109bea23142e8a6d9ace976d105af1280ec9))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **chat:** render mention avatars with companion renderer ([#2633](https://github.com/HankHuang0516/EClaw/issues/2633)) ([03e205f](https://github.com/HankHuang0516/EClaw/commit/03e205f663ecd2c2f443d4009dd5af0093f0bbbb))
* **kanban:** reserve mobile comments panel height ([#2782](https://github.com/HankHuang0516/EClaw/issues/2782)) ([ce8662d](https://github.com/HankHuang0516/EClaw/commit/ce8662d362422fdd25037f1deb61dbed9425e2f9))
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* scheduled audit 2026-05-13 — 6 bugs, XSS, i18n ([#2668](https://github.com/HankHuang0516/EClaw/issues/2668)) ([21dd513](https://github.com/HankHuang0516/EClaw/commit/21dd513b4464738de29164265437435ba6cc4817)), closes [#2605](https://github.com/HankHuang0516/EClaw/issues/2605) [#2608](https://github.com/HankHuang0516/EClaw/issues/2608) [#2600](https://github.com/HankHuang0516/EClaw/issues/2600) [#2599](https://github.com/HankHuang0516/EClaw/issues/2599) [#2598](https://github.com/HankHuang0516/EClaw/issues/2598)
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **chat:** smart-chip preview falls back to inline c.comments when /comments fails (PR [#2677](https://github.com/HankHuang0516/EClaw/issues/2677)) ([7f4dffd](https://github.com/HankHuang0516/EClaw/commit/7f4dffd2c83ea86f296b8fa0610f0e67c9f1af11))
* **kanban:** stabilize comment detail viewport ([#2796](https://github.com/HankHuang0516/EClaw/issues/2796)) ([0a10aad](https://github.com/HankHuang0516/EClaw/commit/0a10aadb5a5b12ff23454c16d5c88183b94ad7d7))
* **wallpaper:** stop Android live wallpaper flashing default lobster on companion change ([#2629](https://github.com/HankHuang0516/EClaw/issues/2629)) ([8b4f66f](https://github.com/HankHuang0516/EClaw/commit/8b4f66fcb335bf43128f924b761b6337c817095b)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **app:** WebView pages honor app-selected locale via ?lang= URL param ([#2672](https://github.com/HankHuang0516/EClaw/issues/2672)) ([8ed8757](https://github.com/HankHuang0516/EClaw/commit/8ed8757aec5bf214e837cc0d81bf2b23f1993a91)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* **community:** 1-click chat button on bot cards + utm tagging ([#2610](https://github.com/HankHuang0516/EClaw/issues/2610)) ([eee97b0](https://github.com/HankHuang0516/EClaw/commit/eee97b0e2e4e74945ec24f218a69a52800b97a66))
* **chat:** add avatar size preference ([#2714](https://github.com/HankHuang0516/EClaw/issues/2714)) ([6fe164a](https://github.com/HankHuang0516/EClaw/commit/6fe164ad8b22fa576d2dd9ad37c0d9fc295b5a83))
* **dashboard:** add Claude and Codex channel guides ([#2640](https://github.com/HankHuang0516/EClaw/issues/2640)) ([c64e4c4](https://github.com/HankHuang0516/EClaw/commit/c64e4c4afc78db58c5cd578f00486dd7b2fd3311))
* **dashboard:** add Claude Code channel guide card ([#2667](https://github.com/HankHuang0516/EClaw/issues/2667)) ([d70d75c](https://github.com/HankHuang0516/EClaw/commit/d70d75c0c8caa8a540358a9aab4556b8c1927a5c))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* **kanban:** add device-scoped card tags ([#2773](https://github.com/HankHuang0516/EClaw/issues/2773)) ([53a387e](https://github.com/HankHuang0516/EClaw/commit/53a387e67ba7bb4f6bed1c427000c4ae8666577a))
* **portal:** add entity selector to petdx-browser ([#2602](https://github.com/HankHuang0516/EClaw/issues/2602)) ([3fa067e](https://github.com/HankHuang0516/EClaw/commit/3fa067e00b38829b48a37cecd33ee81a9a1122d9))
* **kanban:** add explicit card links ([#2721](https://github.com/HankHuang0516/EClaw/issues/2721)) ([ef9f812](https://github.com/HankHuang0516/EClaw/commit/ef9f812a3fcf39efd07fd158ce90951bdd045ac7))
* **kanban:** add explicit done-card reopen flow ([#2801](https://github.com/HankHuang0516/EClaw/issues/2801)) ([5080aac](https://github.com/HankHuang0516/EClaw/commit/5080aacb75047c0deaa379ee708ec85465afd57c))
* **mindmap:** add GET /api/mindmap/graph force-graph projection ([#2680](https://github.com/HankHuang0516/EClaw/issues/2680)) ([a00b2e7](https://github.com/HankHuang0516/EClaw/commit/a00b2e775af2c4c98cd157f760ad87aeeee469f0)), closes [#2679](https://github.com/HankHuang0516/EClaw/issues/2679) [#2679](https://github.com/HankHuang0516/EClaw/issues/2679)
* **dashboard:** add Hermes channel promo card ([#2708](https://github.com/HankHuang0516/EClaw/issues/2708)) ([337aca1](https://github.com/HankHuang0516/EClaw/commit/337aca153d5a1cd7e888c065f00ae54db7872d91))
* **rental:** add listing soft pause ([#2781](https://github.com/HankHuang0516/EClaw/issues/2781)) ([6586b72](https://github.com/HankHuang0516/EClaw/commit/6586b72717ddb1637d91cd3242c8d2ff554f62b4))
* **portal:** add Nagoya 5D4N trip static cross-ref page ([#2689](https://github.com/HankHuang0516/EClaw/issues/2689)) ([2e0efb6](https://github.com/HankHuang0516/EClaw/commit/2e0efb6dcdaff52226cc8854a96747000b12bdff))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **settings:** add rental roster management preview ([#2758](https://github.com/HankHuang0516/EClaw/issues/2758)) ([9706e59](https://github.com/HankHuang0516/EClaw/commit/9706e59ded140a90a6e02348124282bc69d89001))
* **rental:** add renter health chat indicator ([#2690](https://github.com/HankHuang0516/EClaw/issues/2690)) ([36cd2e9](https://github.com/HankHuang0516/EClaw/commit/36cd2e9802be4c7ebb03d3024617fa74aca48ffd))
* **ios:** add Tutorial & Intro entry in Settings ([#2800](https://github.com/HankHuang0516/EClaw/issues/2800)) ([ed83e51](https://github.com/HankHuang0516/EClaw/commit/ed83e51d043bf4cd5865f38dc95a91ed54820d6c))
* **landing:** add Watch Full Demo CTA below hero video ([#2799](https://github.com/HankHuang0516/EClaw/issues/2799)) ([66107c9](https://github.com/HankHuang0516/EClaw/commit/66107c954727551fd34d989a4674daaad9b63968))
* **footer:** add Watch Intro Video link in Info column ([#2798](https://github.com/HankHuang0516/EClaw/issues/2798)) ([d7c6d59](https://github.com/HankHuang0516/EClaw/commit/d7c6d596b69c6a5b257bf1f7a792a407ef9712ad))
* **companion:** bridge crafter-station/petdex gallery (1784 pets) ([#2601](https://github.com/HankHuang0516/EClaw/issues/2601)) ([2e245be](https://github.com/HankHuang0516/EClaw/commit/2e245bea6dd47ea7361b927d389188a3c23b6bb3))
* **promo:** chat avatar size feature landing page (self-hosted MP4) ([#2722](https://github.com/HankHuang0516/EClaw/issues/2722)) ([3852210](https://github.com/HankHuang0516/EClaw/commit/3852210d355704d018e3daca6b5f9512a011b210)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **kanban:** cron-spawn jitter + lane backpressure to prevent same-tick wedge ([#2791](https://github.com/HankHuang0516/EClaw/issues/2791)) ([9f414a7](https://github.com/HankHuang0516/EClaw/commit/9f414a731d6393672a0a4189c7b408c529ae5e12)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **promo:** embed daily eclaw video 2026-05-14 ([#2786](https://github.com/HankHuang0516/EClaw/issues/2786)) ([718a814](https://github.com/HankHuang0516/EClaw/commit/718a814ab16850bc2b33a1b303841e2c4378ecfa)), closes [#2782](https://github.com/HankHuang0516/EClaw/issues/2782) [#2693](https://github.com/HankHuang0516/EClaw/issues/2693)
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **info:** embed promo video at top of Quick Start tab ([#2797](https://github.com/HankHuang0516/EClaw/issues/2797)) ([047679f](https://github.com/HankHuang0516/EClaw/commit/047679fd57ab9949eaeacea414d5611e71afe041))
* **rental:** enforce strict rebind refunds ([#2703](https://github.com/HankHuang0516/EClaw/issues/2703)) ([a1859c5](https://github.com/HankHuang0516/EClaw/commit/a1859c50e6fb3991d7a8051491502d824a14a116))
* **portal:** info-guide-rules + info-guide-soul slide pair ([#2793](https://github.com/HankHuang0516/EClaw/issues/2793)) ([1c8bddc](https://github.com/HankHuang0516/EClaw/commit/1c8bddc4c185054b2b60088498e3d45509117127)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **chat:** link card previews to kanban ([#2754](https://github.com/HankHuang0516/EClaw/issues/2754)) ([2261240](https://github.com/HankHuang0516/EClaw/commit/22612402c2e95efb07246629e81a849be41ee9c7))
* **mission:** link notes to kanban cards ([#2723](https://github.com/HankHuang0516/EClaw/issues/2723)) ([b36dc18](https://github.com/HankHuang0516/EClaw/commit/b36dc18f3a8facf12e0b6046351c222f1e99dc55))
* **mindmap:** mission.html link to /portal/mindmap.html + deprecate /api/mission/mindmap ([#2685](https://github.com/HankHuang0516/EClaw/issues/2685)) ([11e297b](https://github.com/HankHuang0516/EClaw/commit/11e297bab1c9b56fcde3027d6500b7c58891bf18)), closes [#2680](https://github.com/HankHuang0516/EClaw/issues/2680) [#2684](https://github.com/HankHuang0516/EClaw/issues/2684)
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **avatar:** petdx render on card-holder my-cards (Phase 1b) ([#2621](https://github.com/HankHuang0516/EClaw/issues/2621)) ([f78ba8b](https://github.com/HankHuang0516/EClaw/commit/f78ba8b18acc426936ab6d8a82ca7541effea00d))
* **avatar:** petdx render on dashboard entity grid / org chart / bindings (Phase 1b) ([#2622](https://github.com/HankHuang0516/EClaw/issues/2622)) ([f417749](https://github.com/HankHuang0516/EClaw/commit/f41774914451048e8cd76e9ae30416a0642e173b)), closes [#2620](https://github.com/HankHuang0516/EClaw/issues/2620) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621)
* **avatar:** petdx render on kanban auto-assign / pulse / comment avatars (Phase 1b) ([#2624](https://github.com/HankHuang0516/EClaw/issues/2624)) ([6bff5f8](https://github.com/HankHuang0516/EClaw/commit/6bff5f80440d0bd91a6b1721cde9478d685c4d46))
* **avatar:** petdx render on mission skill/rule/soul entity dialogs (Phase 1b) ([#2623](https://github.com/HankHuang0516/EClaw/issues/2623)) ([129327b](https://github.com/HankHuang0516/EClaw/commit/129327bc7b91056659f1ab7e8d5e3f5260d951fb))
* **mindmap:** portal/mindmap.html force-graph prototype ([#129](https://github.com/HankHuang0516/EClaw/issues/129)) ([#2681](https://github.com/HankHuang0516/EClaw/issues/2681)) ([0f15e69](https://github.com/HankHuang0516/EClaw/commit/0f15e6930f0697c37fa08f3219edb8f9e499837f)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **portal:** redo nagoya trip page in professional tour-guide style ([#2691](https://github.com/HankHuang0516/EClaw/issues/2691)) ([b2378c0](https://github.com/HankHuang0516/EClaw/commit/b2378c06ee20fa9cccfdceceb1a4c9e0b3072f59))
* **avatar:** render selected petdx companion in chat avatars ([#2620](https://github.com/HankHuang0516/EClaw/issues/2620)) ([0bdd046](https://github.com/HankHuang0516/EClaw/commit/0bdd046fe1b1c428e32edda366ff112c08927f4c))
* **home:** replace native home with WebView hosting dashboard.html ([#2634](https://github.com/HankHuang0516/EClaw/issues/2634)) ([e69ea81](https://github.com/HankHuang0516/EClaw/commit/e69ea8160c239b083a83d6dc83a4f1c3f901c863))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **chat:** support message deep links ([#2719](https://github.com/HankHuang0516/EClaw/issues/2719)) ([2dc0f1e](https://github.com/HankHuang0516/EClaw/commit/2dc0f1eeb259e1a0848db4a03186b989372cd91c))
* **mission:** support note deep links ([#2717](https://github.com/HankHuang0516/EClaw/issues/2717)) ([2efd3a5](https://github.com/HankHuang0516/EClaw/commit/2efd3a5e741217a07c0b0ac54a0ddd010e0ebe23))
* **share-chat:** twitter card + per-bot og:image/twitter:* in SSR ([#2609](https://github.com/HankHuang0516/EClaw/issues/2609)) ([6cdc853](https://github.com/HankHuang0516/EClaw/commit/6cdc853dc884cdb95bd47214942768981f218ae0))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))
* **settings:** wire petdx avatar into channel-account chips ([#2626](https://github.com/HankHuang0516/EClaw/issues/2626)) ([88aec77](https://github.com/HankHuang0516/EClaw/commit/88aec772628c240e97b336bb5820892ad632d1ae))
* **files:** wire petdx avatar into entity filter & per-file badges ([#2627](https://github.com/HankHuang0516/EClaw/issues/2627)) ([5b3e5cc](https://github.com/HankHuang0516/EClaw/commit/5b3e5cc542d9da69bb4e92500fd03a542ea33f00))
* **mindmap:** wrap hardcoded zh-TW UI strings with i18n t() ([#2607](https://github.com/HankHuang0516/EClaw/issues/2607)) ([166af87](https://github.com/HankHuang0516/EClaw/commit/166af8772b2121a24aaf34a83b3de970e9b3b571)), closes [#2606](https://github.com/HankHuang0516/EClaw/issues/2606)


### Performance Improvements

* **mindmap:** force-graph hardening for 1000/2000-node graphs ([#2684](https://github.com/HankHuang0516/EClaw/issues/2684)) ([da8b1c8](https://github.com/HankHuang0516/EClaw/commit/da8b1c8f947ab8bc8fa455c1962a91146623a1fc))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-14)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **notifications:** add kanban_done + kanban_done_auto toggles to Android Settings ([#2636](https://github.com/HankHuang0516/EClaw/issues/2636)) ([a710909](https://github.com/HankHuang0516/EClaw/commit/a7109095e3393b8564e7ef1b23d382a4fbb944b8))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **i18n:** clear batch 1 residual missing keys ([#2790](https://github.com/HankHuang0516/EClaw/issues/2790)) ([211030e](https://github.com/HankHuang0516/EClaw/commit/211030e0b0b6a865c11f0c4ed60dc4e356d43b7a))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **kanban:** comment input no longer overlaps last comment in card detail (PR [#2678](https://github.com/HankHuang0516/EClaw/issues/2678)) ([fba91fc](https://github.com/HankHuang0516/EClaw/commit/fba91fca15402b453a0db5ee857c0b16e6087055))
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **i18n:** cover dynamic portal wrapper keys ([#2807](https://github.com/HankHuang0516/EClaw/issues/2807)) ([4c711cc](https://github.com/HankHuang0516/EClaw/commit/4c711cc4009300ffe4e8933a98ee01cd0fdd6aeb))
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **petdx:** drop dark-grey loading placeholder + preload sprite WEBP ([#2628](https://github.com/HankHuang0516/EClaw/issues/2628)) ([59cef38](https://github.com/HankHuang0516/EClaw/commit/59cef387bd69ca99d7d15c86a1364856d3849ad8)), closes [#1a1a1a](https://github.com/HankHuang0516/EClaw/issues/1a1a1a)
* **entities:** expose botSecret to owner so wallpaper service can poll companions ([#2615](https://github.com/HankHuang0516/EClaw/issues/2615)) ([04470fc](https://github.com/HankHuang0516/EClaw/commit/04470fce8f8c3fce2b1ba8b243e776606f107502))
* **rental:** expose owner_public_code in marketplace so plaza CTA can route ([#2616](https://github.com/HankHuang0516/EClaw/issues/2616)) ([4d1372f](https://github.com/HankHuang0516/EClaw/commit/4d1372f717d93cab65543e87c852e74e9fb67071)), closes [#2610](https://github.com/HankHuang0516/EClaw/issues/2610)
* **mindmap:** fallback to device scope when entityId is null ([#2728](https://github.com/HankHuang0516/EClaw/issues/2728)) ([7572312](https://github.com/HankHuang0516/EClaw/commit/7572312433d3d75fc245eda48a28919ce14bd927))
* **i18n:** fill Spanish drift keys ([#2751](https://github.com/HankHuang0516/EClaw/issues/2751)) ([0ad0ee5](https://github.com/HankHuang0516/EClaw/commit/0ad0ee55f7fac3e6ac46d891539950dab4d553cc))
* **portal:** fit embedded org chart to mobile viewport ([#2674](https://github.com/HankHuang0516/EClaw/issues/2674)) ([1c4e1b4](https://github.com/HankHuang0516/EClaw/commit/1c4e1b413ea7027b4cd4b8ecda981b0d0e12e66b))
* **i18n:** fix 6 trailing-comma syntax errors in 10-locale batch ([#2771](https://github.com/HankHuang0516/EClaw/issues/2771)) ([b27c6ca](https://github.com/HankHuang0516/EClaw/commit/b27c6ca204bf813e406c54ce3a2532a5f1f031b3))
* **uiux:** harden chat previews and roster preview ([#2769](https://github.com/HankHuang0516/EClaw/issues/2769)) ([466d4d3](https://github.com/HankHuang0516/EClaw/commit/466d4d3ef81c628d3f58db64323946053d7bf61c))
* **mention-parser:** ignore @-mentions inside markdown code spans ([#2645](https://github.com/HankHuang0516/EClaw/issues/2645)) ([8da19d4](https://github.com/HankHuang0516/EClaw/commit/8da19d4a79ceb4152bf2144ee0847c61ce3e1def)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **kanban:** lazy-load dependency chips via IntersectionObserver ([#2632](https://github.com/HankHuang0516/EClaw/issues/2632)) ([20586b4](https://github.com/HankHuang0516/EClaw/commit/20586b43357335f9eb6a190c02d58c8e36b58aba)), closes [#2631](https://github.com/HankHuang0516/EClaw/issues/2631)
* **kanban:** make card sorting deterministic ([#2756](https://github.com/HankHuang0516/EClaw/issues/2756)) ([48e2117](https://github.com/HankHuang0516/EClaw/commit/48e2117b64e37f05dc635e0a3b67bfd43cbe48f5))
* **org-chart:** notify affected bots on hierarchy change ([#2812](https://github.com/HankHuang0516/EClaw/issues/2812)) ([55675fd](https://github.com/HankHuang0516/EClaw/commit/55675fdf4487494d729a29524b32bd81b756a00c)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** notify reviewer on manual /move → review ([#2753](https://github.com/HankHuang0516/EClaw/issues/2753)) ([6cbbb4e](https://github.com/HankHuang0516/EClaw/commit/6cbbb4ee8c0d4d8ad54df2e9b5faaa3699bd530f))
* **wallpaper:** off-load spritesheet fetch to IO so per-petdx sprites actually render ([#2618](https://github.com/HankHuang0516/EClaw/issues/2618)) ([61b832c](https://github.com/HankHuang0516/EClaw/commit/61b832c9fa8a1d0caab810ccc942d85c63349267)), closes [#2615](https://github.com/HankHuang0516/EClaw/issues/2615) [#2577](https://github.com/HankHuang0516/EClaw/issues/2577)
* **portal:** petdx-browser cookie-session fallback for device-login ([#2757](https://github.com/HankHuang0516/EClaw/issues/2757)) ([ca275f4](https://github.com/HankHuang0516/EClaw/commit/ca275f4519835da0c7ad71c588908a18f6f138d8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **i18n:** positional format specifiers for feedback_result_logs (7 locales) ([#2597](https://github.com/HankHuang0516/EClaw/issues/2597)) ([21aedc7](https://github.com/HankHuang0516/EClaw/commit/21aedc7eebc7a2839e340136f38dfdfd4dabb9dc))
* **avatar-petdx:** preserve descriptor across transient API failures (flicker) ([#2625](https://github.com/HankHuang0516/EClaw/issues/2625)) ([7b1c606](https://github.com/HankHuang0516/EClaw/commit/7b1c606514f7698d72ec95cf6c556e4043966186))
* **chat:** preserve scroll anchor while reading history ([#2693](https://github.com/HankHuang0516/EClaw/issues/2693)) ([945fdb7](https://github.com/HankHuang0516/EClaw/commit/945fdb7192b791b31882e1e75568dd8b11e4686f))
* **promo:** pull video embed from /promo-chat-avatar.html ([#2724](https://github.com/HankHuang0516/EClaw/issues/2724)) ([2afabc8](https://github.com/HankHuang0516/EClaw/commit/2afabc8c5ff8b25218a7cb857e8adfa572c8e9d5))
* **kanban:** realign stale recurring schedules ([#2785](https://github.com/HankHuang0516/EClaw/issues/2785)) ([ab8ee25](https://github.com/HankHuang0516/EClaw/commit/ab8ee250a9b37f3d3e838bb01d8866c8d2b78231))
* **portal:** reduce QA-discovered request fanout ([#2656](https://github.com/HankHuang0516/EClaw/issues/2656)) ([1e46d6b](https://github.com/HankHuang0516/EClaw/commit/1e46d6bab61e58c65b452b6503d953f8dddeee75))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **portal:** remove org chart fit scale floor ([#2676](https://github.com/HankHuang0516/EClaw/issues/2676)) ([0f01606](https://github.com/HankHuang0516/EClaw/commit/0f016068b963bb5f800a02f28817c7174979d913))
* **i18n:** rename mm_empty_title → mm_state_empty_title in mindmap.html ([#2683](https://github.com/HankHuang0516/EClaw/issues/2683)) ([c79c109](https://github.com/HankHuang0516/EClaw/commit/c79c109bea23142e8a6d9ace976d105af1280ec9))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **chat:** render mention avatars with companion renderer ([#2633](https://github.com/HankHuang0516/EClaw/issues/2633)) ([03e205f](https://github.com/HankHuang0516/EClaw/commit/03e205f663ecd2c2f443d4009dd5af0093f0bbbb))
* **kanban:** reserve mobile comments panel height ([#2782](https://github.com/HankHuang0516/EClaw/issues/2782)) ([ce8662d](https://github.com/HankHuang0516/EClaw/commit/ce8662d362422fdd25037f1deb61dbed9425e2f9))
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* scheduled audit 2026-05-13 — 6 bugs, XSS, i18n ([#2668](https://github.com/HankHuang0516/EClaw/issues/2668)) ([21dd513](https://github.com/HankHuang0516/EClaw/commit/21dd513b4464738de29164265437435ba6cc4817)), closes [#2605](https://github.com/HankHuang0516/EClaw/issues/2605) [#2608](https://github.com/HankHuang0516/EClaw/issues/2608) [#2600](https://github.com/HankHuang0516/EClaw/issues/2600) [#2599](https://github.com/HankHuang0516/EClaw/issues/2599) [#2598](https://github.com/HankHuang0516/EClaw/issues/2598)
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **chat:** smart-chip preview falls back to inline c.comments when /comments fails (PR [#2677](https://github.com/HankHuang0516/EClaw/issues/2677)) ([7f4dffd](https://github.com/HankHuang0516/EClaw/commit/7f4dffd2c83ea86f296b8fa0610f0e67c9f1af11))
* **kanban:** stabilize comment detail viewport ([#2796](https://github.com/HankHuang0516/EClaw/issues/2796)) ([0a10aad](https://github.com/HankHuang0516/EClaw/commit/0a10aadb5a5b12ff23454c16d5c88183b94ad7d7))
* **wallpaper:** stop Android live wallpaper flashing default lobster on companion change ([#2629](https://github.com/HankHuang0516/EClaw/issues/2629)) ([8b4f66f](https://github.com/HankHuang0516/EClaw/commit/8b4f66fcb335bf43128f924b761b6337c817095b)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **app:** WebView pages honor app-selected locale via ?lang= URL param ([#2672](https://github.com/HankHuang0516/EClaw/issues/2672)) ([8ed8757](https://github.com/HankHuang0516/EClaw/commit/8ed8757aec5bf214e837cc0d81bf2b23f1993a91)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* **community:** 1-click chat button on bot cards + utm tagging ([#2610](https://github.com/HankHuang0516/EClaw/issues/2610)) ([eee97b0](https://github.com/HankHuang0516/EClaw/commit/eee97b0e2e4e74945ec24f218a69a52800b97a66))
* **chat:** add avatar size preference ([#2714](https://github.com/HankHuang0516/EClaw/issues/2714)) ([6fe164a](https://github.com/HankHuang0516/EClaw/commit/6fe164ad8b22fa576d2dd9ad37c0d9fc295b5a83))
* **dashboard:** add Claude and Codex channel guides ([#2640](https://github.com/HankHuang0516/EClaw/issues/2640)) ([c64e4c4](https://github.com/HankHuang0516/EClaw/commit/c64e4c4afc78db58c5cd578f00486dd7b2fd3311))
* **dashboard:** add Claude Code channel guide card ([#2667](https://github.com/HankHuang0516/EClaw/issues/2667)) ([d70d75c](https://github.com/HankHuang0516/EClaw/commit/d70d75c0c8caa8a540358a9aab4556b8c1927a5c))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* **kanban:** add device-scoped card tags ([#2773](https://github.com/HankHuang0516/EClaw/issues/2773)) ([53a387e](https://github.com/HankHuang0516/EClaw/commit/53a387e67ba7bb4f6bed1c427000c4ae8666577a))
* **portal:** add entity selector to petdx-browser ([#2602](https://github.com/HankHuang0516/EClaw/issues/2602)) ([3fa067e](https://github.com/HankHuang0516/EClaw/commit/3fa067e00b38829b48a37cecd33ee81a9a1122d9))
* **kanban:** add explicit card links ([#2721](https://github.com/HankHuang0516/EClaw/issues/2721)) ([ef9f812](https://github.com/HankHuang0516/EClaw/commit/ef9f812a3fcf39efd07fd158ce90951bdd045ac7))
* **kanban:** add explicit done-card reopen flow ([#2801](https://github.com/HankHuang0516/EClaw/issues/2801)) ([5080aac](https://github.com/HankHuang0516/EClaw/commit/5080aacb75047c0deaa379ee708ec85465afd57c))
* **mindmap:** add GET /api/mindmap/graph force-graph projection ([#2680](https://github.com/HankHuang0516/EClaw/issues/2680)) ([a00b2e7](https://github.com/HankHuang0516/EClaw/commit/a00b2e775af2c4c98cd157f760ad87aeeee469f0)), closes [#2679](https://github.com/HankHuang0516/EClaw/issues/2679) [#2679](https://github.com/HankHuang0516/EClaw/issues/2679)
* **dashboard:** add Hermes channel promo card ([#2708](https://github.com/HankHuang0516/EClaw/issues/2708)) ([337aca1](https://github.com/HankHuang0516/EClaw/commit/337aca153d5a1cd7e888c065f00ae54db7872d91))
* **rental:** add listing soft pause ([#2781](https://github.com/HankHuang0516/EClaw/issues/2781)) ([6586b72](https://github.com/HankHuang0516/EClaw/commit/6586b72717ddb1637d91cd3242c8d2ff554f62b4))
* **portal:** add Nagoya 5D4N trip static cross-ref page ([#2689](https://github.com/HankHuang0516/EClaw/issues/2689)) ([2e0efb6](https://github.com/HankHuang0516/EClaw/commit/2e0efb6dcdaff52226cc8854a96747000b12bdff))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **settings:** add rental roster management preview ([#2758](https://github.com/HankHuang0516/EClaw/issues/2758)) ([9706e59](https://github.com/HankHuang0516/EClaw/commit/9706e59ded140a90a6e02348124282bc69d89001))
* **rental:** add renter health chat indicator ([#2690](https://github.com/HankHuang0516/EClaw/issues/2690)) ([36cd2e9](https://github.com/HankHuang0516/EClaw/commit/36cd2e9802be4c7ebb03d3024617fa74aca48ffd))
* **ios:** add Tutorial & Intro entry in Settings ([#2800](https://github.com/HankHuang0516/EClaw/issues/2800)) ([ed83e51](https://github.com/HankHuang0516/EClaw/commit/ed83e51d043bf4cd5865f38dc95a91ed54820d6c))
* **landing:** add Watch Full Demo CTA below hero video ([#2799](https://github.com/HankHuang0516/EClaw/issues/2799)) ([66107c9](https://github.com/HankHuang0516/EClaw/commit/66107c954727551fd34d989a4674daaad9b63968))
* **footer:** add Watch Intro Video link in Info column ([#2798](https://github.com/HankHuang0516/EClaw/issues/2798)) ([d7c6d59](https://github.com/HankHuang0516/EClaw/commit/d7c6d596b69c6a5b257bf1f7a792a407ef9712ad))
* **companion:** bridge crafter-station/petdex gallery (1784 pets) ([#2601](https://github.com/HankHuang0516/EClaw/issues/2601)) ([2e245be](https://github.com/HankHuang0516/EClaw/commit/2e245bea6dd47ea7361b927d389188a3c23b6bb3))
* **promo:** chat avatar size feature landing page (self-hosted MP4) ([#2722](https://github.com/HankHuang0516/EClaw/issues/2722)) ([3852210](https://github.com/HankHuang0516/EClaw/commit/3852210d355704d018e3daca6b5f9512a011b210)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **kanban:** cron-spawn jitter + lane backpressure to prevent same-tick wedge ([#2791](https://github.com/HankHuang0516/EClaw/issues/2791)) ([9f414a7](https://github.com/HankHuang0516/EClaw/commit/9f414a731d6393672a0a4189c7b408c529ae5e12)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **promo:** embed daily eclaw video 2026-05-14 ([#2786](https://github.com/HankHuang0516/EClaw/issues/2786)) ([718a814](https://github.com/HankHuang0516/EClaw/commit/718a814ab16850bc2b33a1b303841e2c4378ecfa)), closes [#2782](https://github.com/HankHuang0516/EClaw/issues/2782) [#2693](https://github.com/HankHuang0516/EClaw/issues/2693)
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **info:** embed promo video at top of Quick Start tab ([#2797](https://github.com/HankHuang0516/EClaw/issues/2797)) ([047679f](https://github.com/HankHuang0516/EClaw/commit/047679fd57ab9949eaeacea414d5611e71afe041))
* **rental:** enforce strict rebind refunds ([#2703](https://github.com/HankHuang0516/EClaw/issues/2703)) ([a1859c5](https://github.com/HankHuang0516/EClaw/commit/a1859c50e6fb3991d7a8051491502d824a14a116))
* **portal:** info-guide-rules + info-guide-soul slide pair ([#2793](https://github.com/HankHuang0516/EClaw/issues/2793)) ([1c8bddc](https://github.com/HankHuang0516/EClaw/commit/1c8bddc4c185054b2b60088498e3d45509117127)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **chat:** link card previews to kanban ([#2754](https://github.com/HankHuang0516/EClaw/issues/2754)) ([2261240](https://github.com/HankHuang0516/EClaw/commit/22612402c2e95efb07246629e81a849be41ee9c7))
* **mission:** link notes to kanban cards ([#2723](https://github.com/HankHuang0516/EClaw/issues/2723)) ([b36dc18](https://github.com/HankHuang0516/EClaw/commit/b36dc18f3a8facf12e0b6046351c222f1e99dc55))
* **mindmap:** mission.html link to /portal/mindmap.html + deprecate /api/mission/mindmap ([#2685](https://github.com/HankHuang0516/EClaw/issues/2685)) ([11e297b](https://github.com/HankHuang0516/EClaw/commit/11e297bab1c9b56fcde3027d6500b7c58891bf18)), closes [#2680](https://github.com/HankHuang0516/EClaw/issues/2680) [#2684](https://github.com/HankHuang0516/EClaw/issues/2684)
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **avatar:** petdx render on card-holder my-cards (Phase 1b) ([#2621](https://github.com/HankHuang0516/EClaw/issues/2621)) ([f78ba8b](https://github.com/HankHuang0516/EClaw/commit/f78ba8b18acc426936ab6d8a82ca7541effea00d))
* **avatar:** petdx render on dashboard entity grid / org chart / bindings (Phase 1b) ([#2622](https://github.com/HankHuang0516/EClaw/issues/2622)) ([f417749](https://github.com/HankHuang0516/EClaw/commit/f41774914451048e8cd76e9ae30416a0642e173b)), closes [#2620](https://github.com/HankHuang0516/EClaw/issues/2620) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621)
* **avatar:** petdx render on kanban auto-assign / pulse / comment avatars (Phase 1b) ([#2624](https://github.com/HankHuang0516/EClaw/issues/2624)) ([6bff5f8](https://github.com/HankHuang0516/EClaw/commit/6bff5f80440d0bd91a6b1721cde9478d685c4d46))
* **avatar:** petdx render on mission skill/rule/soul entity dialogs (Phase 1b) ([#2623](https://github.com/HankHuang0516/EClaw/issues/2623)) ([129327b](https://github.com/HankHuang0516/EClaw/commit/129327bc7b91056659f1ab7e8d5e3f5260d951fb))
* **mindmap:** portal/mindmap.html force-graph prototype ([#129](https://github.com/HankHuang0516/EClaw/issues/129)) ([#2681](https://github.com/HankHuang0516/EClaw/issues/2681)) ([0f15e69](https://github.com/HankHuang0516/EClaw/commit/0f15e6930f0697c37fa08f3219edb8f9e499837f)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **portal:** redo nagoya trip page in professional tour-guide style ([#2691](https://github.com/HankHuang0516/EClaw/issues/2691)) ([b2378c0](https://github.com/HankHuang0516/EClaw/commit/b2378c06ee20fa9cccfdceceb1a4c9e0b3072f59))
* **avatar:** render selected petdx companion in chat avatars ([#2620](https://github.com/HankHuang0516/EClaw/issues/2620)) ([0bdd046](https://github.com/HankHuang0516/EClaw/commit/0bdd046fe1b1c428e32edda366ff112c08927f4c))
* **home:** replace native home with WebView hosting dashboard.html ([#2634](https://github.com/HankHuang0516/EClaw/issues/2634)) ([e69ea81](https://github.com/HankHuang0516/EClaw/commit/e69ea8160c239b083a83d6dc83a4f1c3f901c863))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **chat:** support message deep links ([#2719](https://github.com/HankHuang0516/EClaw/issues/2719)) ([2dc0f1e](https://github.com/HankHuang0516/EClaw/commit/2dc0f1eeb259e1a0848db4a03186b989372cd91c))
* **mission:** support note deep links ([#2717](https://github.com/HankHuang0516/EClaw/issues/2717)) ([2efd3a5](https://github.com/HankHuang0516/EClaw/commit/2efd3a5e741217a07c0b0ac54a0ddd010e0ebe23))
* **share-chat:** twitter card + per-bot og:image/twitter:* in SSR ([#2609](https://github.com/HankHuang0516/EClaw/issues/2609)) ([6cdc853](https://github.com/HankHuang0516/EClaw/commit/6cdc853dc884cdb95bd47214942768981f218ae0))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))
* **settings:** wire petdx avatar into channel-account chips ([#2626](https://github.com/HankHuang0516/EClaw/issues/2626)) ([88aec77](https://github.com/HankHuang0516/EClaw/commit/88aec772628c240e97b336bb5820892ad632d1ae))
* **files:** wire petdx avatar into entity filter & per-file badges ([#2627](https://github.com/HankHuang0516/EClaw/issues/2627)) ([5b3e5cc](https://github.com/HankHuang0516/EClaw/commit/5b3e5cc542d9da69bb4e92500fd03a542ea33f00))
* **mindmap:** wrap hardcoded zh-TW UI strings with i18n t() ([#2607](https://github.com/HankHuang0516/EClaw/issues/2607)) ([166af87](https://github.com/HankHuang0516/EClaw/commit/166af8772b2121a24aaf34a83b3de970e9b3b571)), closes [#2606](https://github.com/HankHuang0516/EClaw/issues/2606)


### Performance Improvements

* **mindmap:** force-graph hardening for 1000/2000-node graphs ([#2684](https://github.com/HankHuang0516/EClaw/issues/2684)) ([da8b1c8](https://github.com/HankHuang0516/EClaw/commit/da8b1c8f947ab8bc8fa455c1962a91146623a1fc))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-14)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **notifications:** add kanban_done + kanban_done_auto toggles to Android Settings ([#2636](https://github.com/HankHuang0516/EClaw/issues/2636)) ([a710909](https://github.com/HankHuang0516/EClaw/commit/a7109095e3393b8564e7ef1b23d382a4fbb944b8))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **i18n:** clear batch 1 residual missing keys ([#2790](https://github.com/HankHuang0516/EClaw/issues/2790)) ([211030e](https://github.com/HankHuang0516/EClaw/commit/211030e0b0b6a865c11f0c4ed60dc4e356d43b7a))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **kanban:** comment input no longer overlaps last comment in card detail (PR [#2678](https://github.com/HankHuang0516/EClaw/issues/2678)) ([fba91fc](https://github.com/HankHuang0516/EClaw/commit/fba91fca15402b453a0db5ee857c0b16e6087055))
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **i18n:** cover dynamic portal wrapper keys ([#2807](https://github.com/HankHuang0516/EClaw/issues/2807)) ([4c711cc](https://github.com/HankHuang0516/EClaw/commit/4c711cc4009300ffe4e8933a98ee01cd0fdd6aeb))
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **petdx:** drop dark-grey loading placeholder + preload sprite WEBP ([#2628](https://github.com/HankHuang0516/EClaw/issues/2628)) ([59cef38](https://github.com/HankHuang0516/EClaw/commit/59cef387bd69ca99d7d15c86a1364856d3849ad8)), closes [#1a1a1a](https://github.com/HankHuang0516/EClaw/issues/1a1a1a)
* **entities:** expose botSecret to owner so wallpaper service can poll companions ([#2615](https://github.com/HankHuang0516/EClaw/issues/2615)) ([04470fc](https://github.com/HankHuang0516/EClaw/commit/04470fce8f8c3fce2b1ba8b243e776606f107502))
* **rental:** expose owner_public_code in marketplace so plaza CTA can route ([#2616](https://github.com/HankHuang0516/EClaw/issues/2616)) ([4d1372f](https://github.com/HankHuang0516/EClaw/commit/4d1372f717d93cab65543e87c852e74e9fb67071)), closes [#2610](https://github.com/HankHuang0516/EClaw/issues/2610)
* **mindmap:** fallback to device scope when entityId is null ([#2728](https://github.com/HankHuang0516/EClaw/issues/2728)) ([7572312](https://github.com/HankHuang0516/EClaw/commit/7572312433d3d75fc245eda48a28919ce14bd927))
* **i18n:** fill Spanish drift keys ([#2751](https://github.com/HankHuang0516/EClaw/issues/2751)) ([0ad0ee5](https://github.com/HankHuang0516/EClaw/commit/0ad0ee55f7fac3e6ac46d891539950dab4d553cc))
* **portal:** fit embedded org chart to mobile viewport ([#2674](https://github.com/HankHuang0516/EClaw/issues/2674)) ([1c4e1b4](https://github.com/HankHuang0516/EClaw/commit/1c4e1b413ea7027b4cd4b8ecda981b0d0e12e66b))
* **i18n:** fix 6 trailing-comma syntax errors in 10-locale batch ([#2771](https://github.com/HankHuang0516/EClaw/issues/2771)) ([b27c6ca](https://github.com/HankHuang0516/EClaw/commit/b27c6ca204bf813e406c54ce3a2532a5f1f031b3))
* **uiux:** harden chat previews and roster preview ([#2769](https://github.com/HankHuang0516/EClaw/issues/2769)) ([466d4d3](https://github.com/HankHuang0516/EClaw/commit/466d4d3ef81c628d3f58db64323946053d7bf61c))
* **mention-parser:** ignore @-mentions inside markdown code spans ([#2645](https://github.com/HankHuang0516/EClaw/issues/2645)) ([8da19d4](https://github.com/HankHuang0516/EClaw/commit/8da19d4a79ceb4152bf2144ee0847c61ce3e1def)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **kanban:** lazy-load dependency chips via IntersectionObserver ([#2632](https://github.com/HankHuang0516/EClaw/issues/2632)) ([20586b4](https://github.com/HankHuang0516/EClaw/commit/20586b43357335f9eb6a190c02d58c8e36b58aba)), closes [#2631](https://github.com/HankHuang0516/EClaw/issues/2631)
* **kanban:** make card sorting deterministic ([#2756](https://github.com/HankHuang0516/EClaw/issues/2756)) ([48e2117](https://github.com/HankHuang0516/EClaw/commit/48e2117b64e37f05dc635e0a3b67bfd43cbe48f5))
* **org-chart:** notify affected bots on hierarchy change ([#2812](https://github.com/HankHuang0516/EClaw/issues/2812)) ([55675fd](https://github.com/HankHuang0516/EClaw/commit/55675fdf4487494d729a29524b32bd81b756a00c)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** notify reviewer on manual /move → review ([#2753](https://github.com/HankHuang0516/EClaw/issues/2753)) ([6cbbb4e](https://github.com/HankHuang0516/EClaw/commit/6cbbb4ee8c0d4d8ad54df2e9b5faaa3699bd530f))
* **wallpaper:** off-load spritesheet fetch to IO so per-petdx sprites actually render ([#2618](https://github.com/HankHuang0516/EClaw/issues/2618)) ([61b832c](https://github.com/HankHuang0516/EClaw/commit/61b832c9fa8a1d0caab810ccc942d85c63349267)), closes [#2615](https://github.com/HankHuang0516/EClaw/issues/2615) [#2577](https://github.com/HankHuang0516/EClaw/issues/2577)
* **portal:** petdx-browser cookie-session fallback for device-login ([#2757](https://github.com/HankHuang0516/EClaw/issues/2757)) ([ca275f4](https://github.com/HankHuang0516/EClaw/commit/ca275f4519835da0c7ad71c588908a18f6f138d8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **i18n:** positional format specifiers for feedback_result_logs (7 locales) ([#2597](https://github.com/HankHuang0516/EClaw/issues/2597)) ([21aedc7](https://github.com/HankHuang0516/EClaw/commit/21aedc7eebc7a2839e340136f38dfdfd4dabb9dc))
* **avatar-petdx:** preserve descriptor across transient API failures (flicker) ([#2625](https://github.com/HankHuang0516/EClaw/issues/2625)) ([7b1c606](https://github.com/HankHuang0516/EClaw/commit/7b1c606514f7698d72ec95cf6c556e4043966186))
* **chat:** preserve scroll anchor while reading history ([#2693](https://github.com/HankHuang0516/EClaw/issues/2693)) ([945fdb7](https://github.com/HankHuang0516/EClaw/commit/945fdb7192b791b31882e1e75568dd8b11e4686f))
* **promo:** pull video embed from /promo-chat-avatar.html ([#2724](https://github.com/HankHuang0516/EClaw/issues/2724)) ([2afabc8](https://github.com/HankHuang0516/EClaw/commit/2afabc8c5ff8b25218a7cb857e8adfa572c8e9d5))
* **kanban:** realign stale recurring schedules ([#2785](https://github.com/HankHuang0516/EClaw/issues/2785)) ([ab8ee25](https://github.com/HankHuang0516/EClaw/commit/ab8ee250a9b37f3d3e838bb01d8866c8d2b78231))
* **portal:** reduce QA-discovered request fanout ([#2656](https://github.com/HankHuang0516/EClaw/issues/2656)) ([1e46d6b](https://github.com/HankHuang0516/EClaw/commit/1e46d6bab61e58c65b452b6503d953f8dddeee75))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **portal:** remove org chart fit scale floor ([#2676](https://github.com/HankHuang0516/EClaw/issues/2676)) ([0f01606](https://github.com/HankHuang0516/EClaw/commit/0f016068b963bb5f800a02f28817c7174979d913))
* **i18n:** rename mm_empty_title → mm_state_empty_title in mindmap.html ([#2683](https://github.com/HankHuang0516/EClaw/issues/2683)) ([c79c109](https://github.com/HankHuang0516/EClaw/commit/c79c109bea23142e8a6d9ace976d105af1280ec9))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **chat:** render mention avatars with companion renderer ([#2633](https://github.com/HankHuang0516/EClaw/issues/2633)) ([03e205f](https://github.com/HankHuang0516/EClaw/commit/03e205f663ecd2c2f443d4009dd5af0093f0bbbb))
* **kanban:** reserve mobile comments panel height ([#2782](https://github.com/HankHuang0516/EClaw/issues/2782)) ([ce8662d](https://github.com/HankHuang0516/EClaw/commit/ce8662d362422fdd25037f1deb61dbed9425e2f9))
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* scheduled audit 2026-05-13 — 6 bugs, XSS, i18n ([#2668](https://github.com/HankHuang0516/EClaw/issues/2668)) ([21dd513](https://github.com/HankHuang0516/EClaw/commit/21dd513b4464738de29164265437435ba6cc4817)), closes [#2605](https://github.com/HankHuang0516/EClaw/issues/2605) [#2608](https://github.com/HankHuang0516/EClaw/issues/2608) [#2600](https://github.com/HankHuang0516/EClaw/issues/2600) [#2599](https://github.com/HankHuang0516/EClaw/issues/2599) [#2598](https://github.com/HankHuang0516/EClaw/issues/2598)
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **chat:** smart-chip preview falls back to inline c.comments when /comments fails (PR [#2677](https://github.com/HankHuang0516/EClaw/issues/2677)) ([7f4dffd](https://github.com/HankHuang0516/EClaw/commit/7f4dffd2c83ea86f296b8fa0610f0e67c9f1af11))
* **kanban:** stabilize comment detail viewport ([#2796](https://github.com/HankHuang0516/EClaw/issues/2796)) ([0a10aad](https://github.com/HankHuang0516/EClaw/commit/0a10aadb5a5b12ff23454c16d5c88183b94ad7d7))
* **wallpaper:** stop Android live wallpaper flashing default lobster on companion change ([#2629](https://github.com/HankHuang0516/EClaw/issues/2629)) ([8b4f66f](https://github.com/HankHuang0516/EClaw/commit/8b4f66fcb335bf43128f924b761b6337c817095b)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **app:** WebView pages honor app-selected locale via ?lang= URL param ([#2672](https://github.com/HankHuang0516/EClaw/issues/2672)) ([8ed8757](https://github.com/HankHuang0516/EClaw/commit/8ed8757aec5bf214e837cc0d81bf2b23f1993a91)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* **community:** 1-click chat button on bot cards + utm tagging ([#2610](https://github.com/HankHuang0516/EClaw/issues/2610)) ([eee97b0](https://github.com/HankHuang0516/EClaw/commit/eee97b0e2e4e74945ec24f218a69a52800b97a66))
* **chat:** add avatar size preference ([#2714](https://github.com/HankHuang0516/EClaw/issues/2714)) ([6fe164a](https://github.com/HankHuang0516/EClaw/commit/6fe164ad8b22fa576d2dd9ad37c0d9fc295b5a83))
* **dashboard:** add Claude and Codex channel guides ([#2640](https://github.com/HankHuang0516/EClaw/issues/2640)) ([c64e4c4](https://github.com/HankHuang0516/EClaw/commit/c64e4c4afc78db58c5cd578f00486dd7b2fd3311))
* **dashboard:** add Claude Code channel guide card ([#2667](https://github.com/HankHuang0516/EClaw/issues/2667)) ([d70d75c](https://github.com/HankHuang0516/EClaw/commit/d70d75c0c8caa8a540358a9aab4556b8c1927a5c))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* **kanban:** add device-scoped card tags ([#2773](https://github.com/HankHuang0516/EClaw/issues/2773)) ([53a387e](https://github.com/HankHuang0516/EClaw/commit/53a387e67ba7bb4f6bed1c427000c4ae8666577a))
* **portal:** add entity selector to petdx-browser ([#2602](https://github.com/HankHuang0516/EClaw/issues/2602)) ([3fa067e](https://github.com/HankHuang0516/EClaw/commit/3fa067e00b38829b48a37cecd33ee81a9a1122d9))
* **kanban:** add explicit card links ([#2721](https://github.com/HankHuang0516/EClaw/issues/2721)) ([ef9f812](https://github.com/HankHuang0516/EClaw/commit/ef9f812a3fcf39efd07fd158ce90951bdd045ac7))
* **kanban:** add explicit done-card reopen flow ([#2801](https://github.com/HankHuang0516/EClaw/issues/2801)) ([5080aac](https://github.com/HankHuang0516/EClaw/commit/5080aacb75047c0deaa379ee708ec85465afd57c))
* **mindmap:** add GET /api/mindmap/graph force-graph projection ([#2680](https://github.com/HankHuang0516/EClaw/issues/2680)) ([a00b2e7](https://github.com/HankHuang0516/EClaw/commit/a00b2e775af2c4c98cd157f760ad87aeeee469f0)), closes [#2679](https://github.com/HankHuang0516/EClaw/issues/2679) [#2679](https://github.com/HankHuang0516/EClaw/issues/2679)
* **dashboard:** add Hermes channel promo card ([#2708](https://github.com/HankHuang0516/EClaw/issues/2708)) ([337aca1](https://github.com/HankHuang0516/EClaw/commit/337aca153d5a1cd7e888c065f00ae54db7872d91))
* **rental:** add listing soft pause ([#2781](https://github.com/HankHuang0516/EClaw/issues/2781)) ([6586b72](https://github.com/HankHuang0516/EClaw/commit/6586b72717ddb1637d91cd3242c8d2ff554f62b4))
* **portal:** add Nagoya 5D4N trip static cross-ref page ([#2689](https://github.com/HankHuang0516/EClaw/issues/2689)) ([2e0efb6](https://github.com/HankHuang0516/EClaw/commit/2e0efb6dcdaff52226cc8854a96747000b12bdff))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **settings:** add rental roster management preview ([#2758](https://github.com/HankHuang0516/EClaw/issues/2758)) ([9706e59](https://github.com/HankHuang0516/EClaw/commit/9706e59ded140a90a6e02348124282bc69d89001))
* **rental:** add renter health chat indicator ([#2690](https://github.com/HankHuang0516/EClaw/issues/2690)) ([36cd2e9](https://github.com/HankHuang0516/EClaw/commit/36cd2e9802be4c7ebb03d3024617fa74aca48ffd))
* **ios:** add Tutorial & Intro entry in Settings ([#2800](https://github.com/HankHuang0516/EClaw/issues/2800)) ([ed83e51](https://github.com/HankHuang0516/EClaw/commit/ed83e51d043bf4cd5865f38dc95a91ed54820d6c))
* **landing:** add Watch Full Demo CTA below hero video ([#2799](https://github.com/HankHuang0516/EClaw/issues/2799)) ([66107c9](https://github.com/HankHuang0516/EClaw/commit/66107c954727551fd34d989a4674daaad9b63968))
* **footer:** add Watch Intro Video link in Info column ([#2798](https://github.com/HankHuang0516/EClaw/issues/2798)) ([d7c6d59](https://github.com/HankHuang0516/EClaw/commit/d7c6d596b69c6a5b257bf1f7a792a407ef9712ad))
* **companion:** bridge crafter-station/petdex gallery (1784 pets) ([#2601](https://github.com/HankHuang0516/EClaw/issues/2601)) ([2e245be](https://github.com/HankHuang0516/EClaw/commit/2e245bea6dd47ea7361b927d389188a3c23b6bb3))
* **promo:** chat avatar size feature landing page (self-hosted MP4) ([#2722](https://github.com/HankHuang0516/EClaw/issues/2722)) ([3852210](https://github.com/HankHuang0516/EClaw/commit/3852210d355704d018e3daca6b5f9512a011b210)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **kanban:** cron-spawn jitter + lane backpressure to prevent same-tick wedge ([#2791](https://github.com/HankHuang0516/EClaw/issues/2791)) ([9f414a7](https://github.com/HankHuang0516/EClaw/commit/9f414a731d6393672a0a4189c7b408c529ae5e12)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **promo:** embed daily eclaw video 2026-05-14 ([#2786](https://github.com/HankHuang0516/EClaw/issues/2786)) ([718a814](https://github.com/HankHuang0516/EClaw/commit/718a814ab16850bc2b33a1b303841e2c4378ecfa)), closes [#2782](https://github.com/HankHuang0516/EClaw/issues/2782) [#2693](https://github.com/HankHuang0516/EClaw/issues/2693)
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **info:** embed promo video at top of Quick Start tab ([#2797](https://github.com/HankHuang0516/EClaw/issues/2797)) ([047679f](https://github.com/HankHuang0516/EClaw/commit/047679fd57ab9949eaeacea414d5611e71afe041))
* **rental:** enforce strict rebind refunds ([#2703](https://github.com/HankHuang0516/EClaw/issues/2703)) ([a1859c5](https://github.com/HankHuang0516/EClaw/commit/a1859c50e6fb3991d7a8051491502d824a14a116))
* **portal:** info-guide-rules + info-guide-soul slide pair ([#2793](https://github.com/HankHuang0516/EClaw/issues/2793)) ([1c8bddc](https://github.com/HankHuang0516/EClaw/commit/1c8bddc4c185054b2b60088498e3d45509117127)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **chat:** link card previews to kanban ([#2754](https://github.com/HankHuang0516/EClaw/issues/2754)) ([2261240](https://github.com/HankHuang0516/EClaw/commit/22612402c2e95efb07246629e81a849be41ee9c7))
* **mission:** link notes to kanban cards ([#2723](https://github.com/HankHuang0516/EClaw/issues/2723)) ([b36dc18](https://github.com/HankHuang0516/EClaw/commit/b36dc18f3a8facf12e0b6046351c222f1e99dc55))
* **mindmap:** mission.html link to /portal/mindmap.html + deprecate /api/mission/mindmap ([#2685](https://github.com/HankHuang0516/EClaw/issues/2685)) ([11e297b](https://github.com/HankHuang0516/EClaw/commit/11e297bab1c9b56fcde3027d6500b7c58891bf18)), closes [#2680](https://github.com/HankHuang0516/EClaw/issues/2680) [#2684](https://github.com/HankHuang0516/EClaw/issues/2684)
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **avatar:** petdx render on card-holder my-cards (Phase 1b) ([#2621](https://github.com/HankHuang0516/EClaw/issues/2621)) ([f78ba8b](https://github.com/HankHuang0516/EClaw/commit/f78ba8b18acc426936ab6d8a82ca7541effea00d))
* **avatar:** petdx render on dashboard entity grid / org chart / bindings (Phase 1b) ([#2622](https://github.com/HankHuang0516/EClaw/issues/2622)) ([f417749](https://github.com/HankHuang0516/EClaw/commit/f41774914451048e8cd76e9ae30416a0642e173b)), closes [#2620](https://github.com/HankHuang0516/EClaw/issues/2620) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621)
* **avatar:** petdx render on kanban auto-assign / pulse / comment avatars (Phase 1b) ([#2624](https://github.com/HankHuang0516/EClaw/issues/2624)) ([6bff5f8](https://github.com/HankHuang0516/EClaw/commit/6bff5f80440d0bd91a6b1721cde9478d685c4d46))
* **avatar:** petdx render on mission skill/rule/soul entity dialogs (Phase 1b) ([#2623](https://github.com/HankHuang0516/EClaw/issues/2623)) ([129327b](https://github.com/HankHuang0516/EClaw/commit/129327bc7b91056659f1ab7e8d5e3f5260d951fb))
* **mindmap:** portal/mindmap.html force-graph prototype ([#129](https://github.com/HankHuang0516/EClaw/issues/129)) ([#2681](https://github.com/HankHuang0516/EClaw/issues/2681)) ([0f15e69](https://github.com/HankHuang0516/EClaw/commit/0f15e6930f0697c37fa08f3219edb8f9e499837f)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **portal:** redo nagoya trip page in professional tour-guide style ([#2691](https://github.com/HankHuang0516/EClaw/issues/2691)) ([b2378c0](https://github.com/HankHuang0516/EClaw/commit/b2378c06ee20fa9cccfdceceb1a4c9e0b3072f59))
* **avatar:** render selected petdx companion in chat avatars ([#2620](https://github.com/HankHuang0516/EClaw/issues/2620)) ([0bdd046](https://github.com/HankHuang0516/EClaw/commit/0bdd046fe1b1c428e32edda366ff112c08927f4c))
* **home:** replace native home with WebView hosting dashboard.html ([#2634](https://github.com/HankHuang0516/EClaw/issues/2634)) ([e69ea81](https://github.com/HankHuang0516/EClaw/commit/e69ea8160c239b083a83d6dc83a4f1c3f901c863))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **chat:** support message deep links ([#2719](https://github.com/HankHuang0516/EClaw/issues/2719)) ([2dc0f1e](https://github.com/HankHuang0516/EClaw/commit/2dc0f1eeb259e1a0848db4a03186b989372cd91c))
* **mission:** support note deep links ([#2717](https://github.com/HankHuang0516/EClaw/issues/2717)) ([2efd3a5](https://github.com/HankHuang0516/EClaw/commit/2efd3a5e741217a07c0b0ac54a0ddd010e0ebe23))
* **share-chat:** twitter card + per-bot og:image/twitter:* in SSR ([#2609](https://github.com/HankHuang0516/EClaw/issues/2609)) ([6cdc853](https://github.com/HankHuang0516/EClaw/commit/6cdc853dc884cdb95bd47214942768981f218ae0))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))
* **settings:** wire petdx avatar into channel-account chips ([#2626](https://github.com/HankHuang0516/EClaw/issues/2626)) ([88aec77](https://github.com/HankHuang0516/EClaw/commit/88aec772628c240e97b336bb5820892ad632d1ae))
* **files:** wire petdx avatar into entity filter & per-file badges ([#2627](https://github.com/HankHuang0516/EClaw/issues/2627)) ([5b3e5cc](https://github.com/HankHuang0516/EClaw/commit/5b3e5cc542d9da69bb4e92500fd03a542ea33f00))
* **mindmap:** wrap hardcoded zh-TW UI strings with i18n t() ([#2607](https://github.com/HankHuang0516/EClaw/issues/2607)) ([166af87](https://github.com/HankHuang0516/EClaw/commit/166af8772b2121a24aaf34a83b3de970e9b3b571)), closes [#2606](https://github.com/HankHuang0516/EClaw/issues/2606)


### Performance Improvements

* **mindmap:** force-graph hardening for 1000/2000-node graphs ([#2684](https://github.com/HankHuang0516/EClaw/issues/2684)) ([da8b1c8](https://github.com/HankHuang0516/EClaw/commit/da8b1c8f947ab8bc8fa455c1962a91146623a1fc))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-14)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **notifications:** add kanban_done + kanban_done_auto toggles to Android Settings ([#2636](https://github.com/HankHuang0516/EClaw/issues/2636)) ([a710909](https://github.com/HankHuang0516/EClaw/commit/a7109095e3393b8564e7ef1b23d382a4fbb944b8))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **i18n:** clear batch 1 residual missing keys ([#2790](https://github.com/HankHuang0516/EClaw/issues/2790)) ([211030e](https://github.com/HankHuang0516/EClaw/commit/211030e0b0b6a865c11f0c4ed60dc4e356d43b7a))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **kanban:** comment input no longer overlaps last comment in card detail (PR [#2678](https://github.com/HankHuang0516/EClaw/issues/2678)) ([fba91fc](https://github.com/HankHuang0516/EClaw/commit/fba91fca15402b453a0db5ee857c0b16e6087055))
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **i18n:** cover dynamic portal wrapper keys ([#2807](https://github.com/HankHuang0516/EClaw/issues/2807)) ([4c711cc](https://github.com/HankHuang0516/EClaw/commit/4c711cc4009300ffe4e8933a98ee01cd0fdd6aeb))
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **petdx:** drop dark-grey loading placeholder + preload sprite WEBP ([#2628](https://github.com/HankHuang0516/EClaw/issues/2628)) ([59cef38](https://github.com/HankHuang0516/EClaw/commit/59cef387bd69ca99d7d15c86a1364856d3849ad8)), closes [#1a1a1a](https://github.com/HankHuang0516/EClaw/issues/1a1a1a)
* **entities:** expose botSecret to owner so wallpaper service can poll companions ([#2615](https://github.com/HankHuang0516/EClaw/issues/2615)) ([04470fc](https://github.com/HankHuang0516/EClaw/commit/04470fce8f8c3fce2b1ba8b243e776606f107502))
* **rental:** expose owner_public_code in marketplace so plaza CTA can route ([#2616](https://github.com/HankHuang0516/EClaw/issues/2616)) ([4d1372f](https://github.com/HankHuang0516/EClaw/commit/4d1372f717d93cab65543e87c852e74e9fb67071)), closes [#2610](https://github.com/HankHuang0516/EClaw/issues/2610)
* **mindmap:** fallback to device scope when entityId is null ([#2728](https://github.com/HankHuang0516/EClaw/issues/2728)) ([7572312](https://github.com/HankHuang0516/EClaw/commit/7572312433d3d75fc245eda48a28919ce14bd927))
* **i18n:** fill Spanish drift keys ([#2751](https://github.com/HankHuang0516/EClaw/issues/2751)) ([0ad0ee5](https://github.com/HankHuang0516/EClaw/commit/0ad0ee55f7fac3e6ac46d891539950dab4d553cc))
* **portal:** fit embedded org chart to mobile viewport ([#2674](https://github.com/HankHuang0516/EClaw/issues/2674)) ([1c4e1b4](https://github.com/HankHuang0516/EClaw/commit/1c4e1b413ea7027b4cd4b8ecda981b0d0e12e66b))
* **i18n:** fix 6 trailing-comma syntax errors in 10-locale batch ([#2771](https://github.com/HankHuang0516/EClaw/issues/2771)) ([b27c6ca](https://github.com/HankHuang0516/EClaw/commit/b27c6ca204bf813e406c54ce3a2532a5f1f031b3))
* **uiux:** harden chat previews and roster preview ([#2769](https://github.com/HankHuang0516/EClaw/issues/2769)) ([466d4d3](https://github.com/HankHuang0516/EClaw/commit/466d4d3ef81c628d3f58db64323946053d7bf61c))
* **mention-parser:** ignore @-mentions inside markdown code spans ([#2645](https://github.com/HankHuang0516/EClaw/issues/2645)) ([8da19d4](https://github.com/HankHuang0516/EClaw/commit/8da19d4a79ceb4152bf2144ee0847c61ce3e1def)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **kanban:** lazy-load dependency chips via IntersectionObserver ([#2632](https://github.com/HankHuang0516/EClaw/issues/2632)) ([20586b4](https://github.com/HankHuang0516/EClaw/commit/20586b43357335f9eb6a190c02d58c8e36b58aba)), closes [#2631](https://github.com/HankHuang0516/EClaw/issues/2631)
* **kanban:** make card sorting deterministic ([#2756](https://github.com/HankHuang0516/EClaw/issues/2756)) ([48e2117](https://github.com/HankHuang0516/EClaw/commit/48e2117b64e37f05dc635e0a3b67bfd43cbe48f5))
* **kanban:** notify reviewer on manual /move → review ([#2753](https://github.com/HankHuang0516/EClaw/issues/2753)) ([6cbbb4e](https://github.com/HankHuang0516/EClaw/commit/6cbbb4ee8c0d4d8ad54df2e9b5faaa3699bd530f))
* **wallpaper:** off-load spritesheet fetch to IO so per-petdx sprites actually render ([#2618](https://github.com/HankHuang0516/EClaw/issues/2618)) ([61b832c](https://github.com/HankHuang0516/EClaw/commit/61b832c9fa8a1d0caab810ccc942d85c63349267)), closes [#2615](https://github.com/HankHuang0516/EClaw/issues/2615) [#2577](https://github.com/HankHuang0516/EClaw/issues/2577)
* **portal:** petdx-browser cookie-session fallback for device-login ([#2757](https://github.com/HankHuang0516/EClaw/issues/2757)) ([ca275f4](https://github.com/HankHuang0516/EClaw/commit/ca275f4519835da0c7ad71c588908a18f6f138d8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **i18n:** positional format specifiers for feedback_result_logs (7 locales) ([#2597](https://github.com/HankHuang0516/EClaw/issues/2597)) ([21aedc7](https://github.com/HankHuang0516/EClaw/commit/21aedc7eebc7a2839e340136f38dfdfd4dabb9dc))
* **avatar-petdx:** preserve descriptor across transient API failures (flicker) ([#2625](https://github.com/HankHuang0516/EClaw/issues/2625)) ([7b1c606](https://github.com/HankHuang0516/EClaw/commit/7b1c606514f7698d72ec95cf6c556e4043966186))
* **chat:** preserve scroll anchor while reading history ([#2693](https://github.com/HankHuang0516/EClaw/issues/2693)) ([945fdb7](https://github.com/HankHuang0516/EClaw/commit/945fdb7192b791b31882e1e75568dd8b11e4686f))
* **promo:** pull video embed from /promo-chat-avatar.html ([#2724](https://github.com/HankHuang0516/EClaw/issues/2724)) ([2afabc8](https://github.com/HankHuang0516/EClaw/commit/2afabc8c5ff8b25218a7cb857e8adfa572c8e9d5))
* **kanban:** realign stale recurring schedules ([#2785](https://github.com/HankHuang0516/EClaw/issues/2785)) ([ab8ee25](https://github.com/HankHuang0516/EClaw/commit/ab8ee250a9b37f3d3e838bb01d8866c8d2b78231))
* **portal:** reduce QA-discovered request fanout ([#2656](https://github.com/HankHuang0516/EClaw/issues/2656)) ([1e46d6b](https://github.com/HankHuang0516/EClaw/commit/1e46d6bab61e58c65b452b6503d953f8dddeee75))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **portal:** remove org chart fit scale floor ([#2676](https://github.com/HankHuang0516/EClaw/issues/2676)) ([0f01606](https://github.com/HankHuang0516/EClaw/commit/0f016068b963bb5f800a02f28817c7174979d913))
* **i18n:** rename mm_empty_title → mm_state_empty_title in mindmap.html ([#2683](https://github.com/HankHuang0516/EClaw/issues/2683)) ([c79c109](https://github.com/HankHuang0516/EClaw/commit/c79c109bea23142e8a6d9ace976d105af1280ec9))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **chat:** render mention avatars with companion renderer ([#2633](https://github.com/HankHuang0516/EClaw/issues/2633)) ([03e205f](https://github.com/HankHuang0516/EClaw/commit/03e205f663ecd2c2f443d4009dd5af0093f0bbbb))
* **kanban:** reserve mobile comments panel height ([#2782](https://github.com/HankHuang0516/EClaw/issues/2782)) ([ce8662d](https://github.com/HankHuang0516/EClaw/commit/ce8662d362422fdd25037f1deb61dbed9425e2f9))
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* scheduled audit 2026-05-13 — 6 bugs, XSS, i18n ([#2668](https://github.com/HankHuang0516/EClaw/issues/2668)) ([21dd513](https://github.com/HankHuang0516/EClaw/commit/21dd513b4464738de29164265437435ba6cc4817)), closes [#2605](https://github.com/HankHuang0516/EClaw/issues/2605) [#2608](https://github.com/HankHuang0516/EClaw/issues/2608) [#2600](https://github.com/HankHuang0516/EClaw/issues/2600) [#2599](https://github.com/HankHuang0516/EClaw/issues/2599) [#2598](https://github.com/HankHuang0516/EClaw/issues/2598)
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **chat:** smart-chip preview falls back to inline c.comments when /comments fails (PR [#2677](https://github.com/HankHuang0516/EClaw/issues/2677)) ([7f4dffd](https://github.com/HankHuang0516/EClaw/commit/7f4dffd2c83ea86f296b8fa0610f0e67c9f1af11))
* **kanban:** stabilize comment detail viewport ([#2796](https://github.com/HankHuang0516/EClaw/issues/2796)) ([0a10aad](https://github.com/HankHuang0516/EClaw/commit/0a10aadb5a5b12ff23454c16d5c88183b94ad7d7))
* **wallpaper:** stop Android live wallpaper flashing default lobster on companion change ([#2629](https://github.com/HankHuang0516/EClaw/issues/2629)) ([8b4f66f](https://github.com/HankHuang0516/EClaw/commit/8b4f66fcb335bf43128f924b761b6337c817095b)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **app:** WebView pages honor app-selected locale via ?lang= URL param ([#2672](https://github.com/HankHuang0516/EClaw/issues/2672)) ([8ed8757](https://github.com/HankHuang0516/EClaw/commit/8ed8757aec5bf214e837cc0d81bf2b23f1993a91)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* **community:** 1-click chat button on bot cards + utm tagging ([#2610](https://github.com/HankHuang0516/EClaw/issues/2610)) ([eee97b0](https://github.com/HankHuang0516/EClaw/commit/eee97b0e2e4e74945ec24f218a69a52800b97a66))
* **chat:** add avatar size preference ([#2714](https://github.com/HankHuang0516/EClaw/issues/2714)) ([6fe164a](https://github.com/HankHuang0516/EClaw/commit/6fe164ad8b22fa576d2dd9ad37c0d9fc295b5a83))
* **dashboard:** add Claude and Codex channel guides ([#2640](https://github.com/HankHuang0516/EClaw/issues/2640)) ([c64e4c4](https://github.com/HankHuang0516/EClaw/commit/c64e4c4afc78db58c5cd578f00486dd7b2fd3311))
* **dashboard:** add Claude Code channel guide card ([#2667](https://github.com/HankHuang0516/EClaw/issues/2667)) ([d70d75c](https://github.com/HankHuang0516/EClaw/commit/d70d75c0c8caa8a540358a9aab4556b8c1927a5c))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* **kanban:** add device-scoped card tags ([#2773](https://github.com/HankHuang0516/EClaw/issues/2773)) ([53a387e](https://github.com/HankHuang0516/EClaw/commit/53a387e67ba7bb4f6bed1c427000c4ae8666577a))
* **portal:** add entity selector to petdx-browser ([#2602](https://github.com/HankHuang0516/EClaw/issues/2602)) ([3fa067e](https://github.com/HankHuang0516/EClaw/commit/3fa067e00b38829b48a37cecd33ee81a9a1122d9))
* **kanban:** add explicit card links ([#2721](https://github.com/HankHuang0516/EClaw/issues/2721)) ([ef9f812](https://github.com/HankHuang0516/EClaw/commit/ef9f812a3fcf39efd07fd158ce90951bdd045ac7))
* **kanban:** add explicit done-card reopen flow ([#2801](https://github.com/HankHuang0516/EClaw/issues/2801)) ([5080aac](https://github.com/HankHuang0516/EClaw/commit/5080aacb75047c0deaa379ee708ec85465afd57c))
* **mindmap:** add GET /api/mindmap/graph force-graph projection ([#2680](https://github.com/HankHuang0516/EClaw/issues/2680)) ([a00b2e7](https://github.com/HankHuang0516/EClaw/commit/a00b2e775af2c4c98cd157f760ad87aeeee469f0)), closes [#2679](https://github.com/HankHuang0516/EClaw/issues/2679) [#2679](https://github.com/HankHuang0516/EClaw/issues/2679)
* **dashboard:** add Hermes channel promo card ([#2708](https://github.com/HankHuang0516/EClaw/issues/2708)) ([337aca1](https://github.com/HankHuang0516/EClaw/commit/337aca153d5a1cd7e888c065f00ae54db7872d91))
* **rental:** add listing soft pause ([#2781](https://github.com/HankHuang0516/EClaw/issues/2781)) ([6586b72](https://github.com/HankHuang0516/EClaw/commit/6586b72717ddb1637d91cd3242c8d2ff554f62b4))
* **portal:** add Nagoya 5D4N trip static cross-ref page ([#2689](https://github.com/HankHuang0516/EClaw/issues/2689)) ([2e0efb6](https://github.com/HankHuang0516/EClaw/commit/2e0efb6dcdaff52226cc8854a96747000b12bdff))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **settings:** add rental roster management preview ([#2758](https://github.com/HankHuang0516/EClaw/issues/2758)) ([9706e59](https://github.com/HankHuang0516/EClaw/commit/9706e59ded140a90a6e02348124282bc69d89001))
* **rental:** add renter health chat indicator ([#2690](https://github.com/HankHuang0516/EClaw/issues/2690)) ([36cd2e9](https://github.com/HankHuang0516/EClaw/commit/36cd2e9802be4c7ebb03d3024617fa74aca48ffd))
* **ios:** add Tutorial & Intro entry in Settings ([#2800](https://github.com/HankHuang0516/EClaw/issues/2800)) ([ed83e51](https://github.com/HankHuang0516/EClaw/commit/ed83e51d043bf4cd5865f38dc95a91ed54820d6c))
* **landing:** add Watch Full Demo CTA below hero video ([#2799](https://github.com/HankHuang0516/EClaw/issues/2799)) ([66107c9](https://github.com/HankHuang0516/EClaw/commit/66107c954727551fd34d989a4674daaad9b63968))
* **footer:** add Watch Intro Video link in Info column ([#2798](https://github.com/HankHuang0516/EClaw/issues/2798)) ([d7c6d59](https://github.com/HankHuang0516/EClaw/commit/d7c6d596b69c6a5b257bf1f7a792a407ef9712ad))
* **companion:** bridge crafter-station/petdex gallery (1784 pets) ([#2601](https://github.com/HankHuang0516/EClaw/issues/2601)) ([2e245be](https://github.com/HankHuang0516/EClaw/commit/2e245bea6dd47ea7361b927d389188a3c23b6bb3))
* **promo:** chat avatar size feature landing page (self-hosted MP4) ([#2722](https://github.com/HankHuang0516/EClaw/issues/2722)) ([3852210](https://github.com/HankHuang0516/EClaw/commit/3852210d355704d018e3daca6b5f9512a011b210)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **kanban:** cron-spawn jitter + lane backpressure to prevent same-tick wedge ([#2791](https://github.com/HankHuang0516/EClaw/issues/2791)) ([9f414a7](https://github.com/HankHuang0516/EClaw/commit/9f414a731d6393672a0a4189c7b408c529ae5e12)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **promo:** embed daily eclaw video 2026-05-14 ([#2786](https://github.com/HankHuang0516/EClaw/issues/2786)) ([718a814](https://github.com/HankHuang0516/EClaw/commit/718a814ab16850bc2b33a1b303841e2c4378ecfa)), closes [#2782](https://github.com/HankHuang0516/EClaw/issues/2782) [#2693](https://github.com/HankHuang0516/EClaw/issues/2693)
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **info:** embed promo video at top of Quick Start tab ([#2797](https://github.com/HankHuang0516/EClaw/issues/2797)) ([047679f](https://github.com/HankHuang0516/EClaw/commit/047679fd57ab9949eaeacea414d5611e71afe041))
* **rental:** enforce strict rebind refunds ([#2703](https://github.com/HankHuang0516/EClaw/issues/2703)) ([a1859c5](https://github.com/HankHuang0516/EClaw/commit/a1859c50e6fb3991d7a8051491502d824a14a116))
* **portal:** info-guide-rules + info-guide-soul slide pair ([#2793](https://github.com/HankHuang0516/EClaw/issues/2793)) ([1c8bddc](https://github.com/HankHuang0516/EClaw/commit/1c8bddc4c185054b2b60088498e3d45509117127)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **chat:** link card previews to kanban ([#2754](https://github.com/HankHuang0516/EClaw/issues/2754)) ([2261240](https://github.com/HankHuang0516/EClaw/commit/22612402c2e95efb07246629e81a849be41ee9c7))
* **mission:** link notes to kanban cards ([#2723](https://github.com/HankHuang0516/EClaw/issues/2723)) ([b36dc18](https://github.com/HankHuang0516/EClaw/commit/b36dc18f3a8facf12e0b6046351c222f1e99dc55))
* **mindmap:** mission.html link to /portal/mindmap.html + deprecate /api/mission/mindmap ([#2685](https://github.com/HankHuang0516/EClaw/issues/2685)) ([11e297b](https://github.com/HankHuang0516/EClaw/commit/11e297bab1c9b56fcde3027d6500b7c58891bf18)), closes [#2680](https://github.com/HankHuang0516/EClaw/issues/2680) [#2684](https://github.com/HankHuang0516/EClaw/issues/2684)
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **avatar:** petdx render on card-holder my-cards (Phase 1b) ([#2621](https://github.com/HankHuang0516/EClaw/issues/2621)) ([f78ba8b](https://github.com/HankHuang0516/EClaw/commit/f78ba8b18acc426936ab6d8a82ca7541effea00d))
* **avatar:** petdx render on dashboard entity grid / org chart / bindings (Phase 1b) ([#2622](https://github.com/HankHuang0516/EClaw/issues/2622)) ([f417749](https://github.com/HankHuang0516/EClaw/commit/f41774914451048e8cd76e9ae30416a0642e173b)), closes [#2620](https://github.com/HankHuang0516/EClaw/issues/2620) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621)
* **avatar:** petdx render on kanban auto-assign / pulse / comment avatars (Phase 1b) ([#2624](https://github.com/HankHuang0516/EClaw/issues/2624)) ([6bff5f8](https://github.com/HankHuang0516/EClaw/commit/6bff5f80440d0bd91a6b1721cde9478d685c4d46))
* **avatar:** petdx render on mission skill/rule/soul entity dialogs (Phase 1b) ([#2623](https://github.com/HankHuang0516/EClaw/issues/2623)) ([129327b](https://github.com/HankHuang0516/EClaw/commit/129327bc7b91056659f1ab7e8d5e3f5260d951fb))
* **mindmap:** portal/mindmap.html force-graph prototype ([#129](https://github.com/HankHuang0516/EClaw/issues/129)) ([#2681](https://github.com/HankHuang0516/EClaw/issues/2681)) ([0f15e69](https://github.com/HankHuang0516/EClaw/commit/0f15e6930f0697c37fa08f3219edb8f9e499837f)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **portal:** redo nagoya trip page in professional tour-guide style ([#2691](https://github.com/HankHuang0516/EClaw/issues/2691)) ([b2378c0](https://github.com/HankHuang0516/EClaw/commit/b2378c06ee20fa9cccfdceceb1a4c9e0b3072f59))
* **avatar:** render selected petdx companion in chat avatars ([#2620](https://github.com/HankHuang0516/EClaw/issues/2620)) ([0bdd046](https://github.com/HankHuang0516/EClaw/commit/0bdd046fe1b1c428e32edda366ff112c08927f4c))
* **home:** replace native home with WebView hosting dashboard.html ([#2634](https://github.com/HankHuang0516/EClaw/issues/2634)) ([e69ea81](https://github.com/HankHuang0516/EClaw/commit/e69ea8160c239b083a83d6dc83a4f1c3f901c863))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **chat:** support message deep links ([#2719](https://github.com/HankHuang0516/EClaw/issues/2719)) ([2dc0f1e](https://github.com/HankHuang0516/EClaw/commit/2dc0f1eeb259e1a0848db4a03186b989372cd91c))
* **mission:** support note deep links ([#2717](https://github.com/HankHuang0516/EClaw/issues/2717)) ([2efd3a5](https://github.com/HankHuang0516/EClaw/commit/2efd3a5e741217a07c0b0ac54a0ddd010e0ebe23))
* **share-chat:** twitter card + per-bot og:image/twitter:* in SSR ([#2609](https://github.com/HankHuang0516/EClaw/issues/2609)) ([6cdc853](https://github.com/HankHuang0516/EClaw/commit/6cdc853dc884cdb95bd47214942768981f218ae0))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))
* **settings:** wire petdx avatar into channel-account chips ([#2626](https://github.com/HankHuang0516/EClaw/issues/2626)) ([88aec77](https://github.com/HankHuang0516/EClaw/commit/88aec772628c240e97b336bb5820892ad632d1ae))
* **files:** wire petdx avatar into entity filter & per-file badges ([#2627](https://github.com/HankHuang0516/EClaw/issues/2627)) ([5b3e5cc](https://github.com/HankHuang0516/EClaw/commit/5b3e5cc542d9da69bb4e92500fd03a542ea33f00))
* **mindmap:** wrap hardcoded zh-TW UI strings with i18n t() ([#2607](https://github.com/HankHuang0516/EClaw/issues/2607)) ([166af87](https://github.com/HankHuang0516/EClaw/commit/166af8772b2121a24aaf34a83b3de970e9b3b571)), closes [#2606](https://github.com/HankHuang0516/EClaw/issues/2606)


### Performance Improvements

* **mindmap:** force-graph hardening for 1000/2000-node graphs ([#2684](https://github.com/HankHuang0516/EClaw/issues/2684)) ([da8b1c8](https://github.com/HankHuang0516/EClaw/commit/da8b1c8f947ab8bc8fa455c1962a91146623a1fc))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-14)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **notifications:** add kanban_done + kanban_done_auto toggles to Android Settings ([#2636](https://github.com/HankHuang0516/EClaw/issues/2636)) ([a710909](https://github.com/HankHuang0516/EClaw/commit/a7109095e3393b8564e7ef1b23d382a4fbb944b8))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **i18n:** clear batch 1 residual missing keys ([#2790](https://github.com/HankHuang0516/EClaw/issues/2790)) ([211030e](https://github.com/HankHuang0516/EClaw/commit/211030e0b0b6a865c11f0c4ed60dc4e356d43b7a))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **kanban:** comment input no longer overlaps last comment in card detail (PR [#2678](https://github.com/HankHuang0516/EClaw/issues/2678)) ([fba91fc](https://github.com/HankHuang0516/EClaw/commit/fba91fca15402b453a0db5ee857c0b16e6087055))
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **i18n:** cover dynamic portal wrapper keys ([#2807](https://github.com/HankHuang0516/EClaw/issues/2807)) ([4c711cc](https://github.com/HankHuang0516/EClaw/commit/4c711cc4009300ffe4e8933a98ee01cd0fdd6aeb))
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **petdx:** drop dark-grey loading placeholder + preload sprite WEBP ([#2628](https://github.com/HankHuang0516/EClaw/issues/2628)) ([59cef38](https://github.com/HankHuang0516/EClaw/commit/59cef387bd69ca99d7d15c86a1364856d3849ad8)), closes [#1a1a1a](https://github.com/HankHuang0516/EClaw/issues/1a1a1a)
* **entities:** expose botSecret to owner so wallpaper service can poll companions ([#2615](https://github.com/HankHuang0516/EClaw/issues/2615)) ([04470fc](https://github.com/HankHuang0516/EClaw/commit/04470fce8f8c3fce2b1ba8b243e776606f107502))
* **rental:** expose owner_public_code in marketplace so plaza CTA can route ([#2616](https://github.com/HankHuang0516/EClaw/issues/2616)) ([4d1372f](https://github.com/HankHuang0516/EClaw/commit/4d1372f717d93cab65543e87c852e74e9fb67071)), closes [#2610](https://github.com/HankHuang0516/EClaw/issues/2610)
* **mindmap:** fallback to device scope when entityId is null ([#2728](https://github.com/HankHuang0516/EClaw/issues/2728)) ([7572312](https://github.com/HankHuang0516/EClaw/commit/7572312433d3d75fc245eda48a28919ce14bd927))
* **i18n:** fill Spanish drift keys ([#2751](https://github.com/HankHuang0516/EClaw/issues/2751)) ([0ad0ee5](https://github.com/HankHuang0516/EClaw/commit/0ad0ee55f7fac3e6ac46d891539950dab4d553cc))
* **portal:** fit embedded org chart to mobile viewport ([#2674](https://github.com/HankHuang0516/EClaw/issues/2674)) ([1c4e1b4](https://github.com/HankHuang0516/EClaw/commit/1c4e1b413ea7027b4cd4b8ecda981b0d0e12e66b))
* **i18n:** fix 6 trailing-comma syntax errors in 10-locale batch ([#2771](https://github.com/HankHuang0516/EClaw/issues/2771)) ([b27c6ca](https://github.com/HankHuang0516/EClaw/commit/b27c6ca204bf813e406c54ce3a2532a5f1f031b3))
* **uiux:** harden chat previews and roster preview ([#2769](https://github.com/HankHuang0516/EClaw/issues/2769)) ([466d4d3](https://github.com/HankHuang0516/EClaw/commit/466d4d3ef81c628d3f58db64323946053d7bf61c))
* **mention-parser:** ignore @-mentions inside markdown code spans ([#2645](https://github.com/HankHuang0516/EClaw/issues/2645)) ([8da19d4](https://github.com/HankHuang0516/EClaw/commit/8da19d4a79ceb4152bf2144ee0847c61ce3e1def)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **kanban:** lazy-load dependency chips via IntersectionObserver ([#2632](https://github.com/HankHuang0516/EClaw/issues/2632)) ([20586b4](https://github.com/HankHuang0516/EClaw/commit/20586b43357335f9eb6a190c02d58c8e36b58aba)), closes [#2631](https://github.com/HankHuang0516/EClaw/issues/2631)
* **kanban:** make card sorting deterministic ([#2756](https://github.com/HankHuang0516/EClaw/issues/2756)) ([48e2117](https://github.com/HankHuang0516/EClaw/commit/48e2117b64e37f05dc635e0a3b67bfd43cbe48f5))
* **kanban:** notify reviewer on manual /move → review ([#2753](https://github.com/HankHuang0516/EClaw/issues/2753)) ([6cbbb4e](https://github.com/HankHuang0516/EClaw/commit/6cbbb4ee8c0d4d8ad54df2e9b5faaa3699bd530f))
* **wallpaper:** off-load spritesheet fetch to IO so per-petdx sprites actually render ([#2618](https://github.com/HankHuang0516/EClaw/issues/2618)) ([61b832c](https://github.com/HankHuang0516/EClaw/commit/61b832c9fa8a1d0caab810ccc942d85c63349267)), closes [#2615](https://github.com/HankHuang0516/EClaw/issues/2615) [#2577](https://github.com/HankHuang0516/EClaw/issues/2577)
* **portal:** petdx-browser cookie-session fallback for device-login ([#2757](https://github.com/HankHuang0516/EClaw/issues/2757)) ([ca275f4](https://github.com/HankHuang0516/EClaw/commit/ca275f4519835da0c7ad71c588908a18f6f138d8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **i18n:** positional format specifiers for feedback_result_logs (7 locales) ([#2597](https://github.com/HankHuang0516/EClaw/issues/2597)) ([21aedc7](https://github.com/HankHuang0516/EClaw/commit/21aedc7eebc7a2839e340136f38dfdfd4dabb9dc))
* **avatar-petdx:** preserve descriptor across transient API failures (flicker) ([#2625](https://github.com/HankHuang0516/EClaw/issues/2625)) ([7b1c606](https://github.com/HankHuang0516/EClaw/commit/7b1c606514f7698d72ec95cf6c556e4043966186))
* **chat:** preserve scroll anchor while reading history ([#2693](https://github.com/HankHuang0516/EClaw/issues/2693)) ([945fdb7](https://github.com/HankHuang0516/EClaw/commit/945fdb7192b791b31882e1e75568dd8b11e4686f))
* **promo:** pull video embed from /promo-chat-avatar.html ([#2724](https://github.com/HankHuang0516/EClaw/issues/2724)) ([2afabc8](https://github.com/HankHuang0516/EClaw/commit/2afabc8c5ff8b25218a7cb857e8adfa572c8e9d5))
* **kanban:** realign stale recurring schedules ([#2785](https://github.com/HankHuang0516/EClaw/issues/2785)) ([ab8ee25](https://github.com/HankHuang0516/EClaw/commit/ab8ee250a9b37f3d3e838bb01d8866c8d2b78231))
* **portal:** reduce QA-discovered request fanout ([#2656](https://github.com/HankHuang0516/EClaw/issues/2656)) ([1e46d6b](https://github.com/HankHuang0516/EClaw/commit/1e46d6bab61e58c65b452b6503d953f8dddeee75))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **portal:** remove org chart fit scale floor ([#2676](https://github.com/HankHuang0516/EClaw/issues/2676)) ([0f01606](https://github.com/HankHuang0516/EClaw/commit/0f016068b963bb5f800a02f28817c7174979d913))
* **i18n:** rename mm_empty_title → mm_state_empty_title in mindmap.html ([#2683](https://github.com/HankHuang0516/EClaw/issues/2683)) ([c79c109](https://github.com/HankHuang0516/EClaw/commit/c79c109bea23142e8a6d9ace976d105af1280ec9))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **chat:** render mention avatars with companion renderer ([#2633](https://github.com/HankHuang0516/EClaw/issues/2633)) ([03e205f](https://github.com/HankHuang0516/EClaw/commit/03e205f663ecd2c2f443d4009dd5af0093f0bbbb))
* **kanban:** reserve mobile comments panel height ([#2782](https://github.com/HankHuang0516/EClaw/issues/2782)) ([ce8662d](https://github.com/HankHuang0516/EClaw/commit/ce8662d362422fdd25037f1deb61dbed9425e2f9))
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* scheduled audit 2026-05-13 — 6 bugs, XSS, i18n ([#2668](https://github.com/HankHuang0516/EClaw/issues/2668)) ([21dd513](https://github.com/HankHuang0516/EClaw/commit/21dd513b4464738de29164265437435ba6cc4817)), closes [#2605](https://github.com/HankHuang0516/EClaw/issues/2605) [#2608](https://github.com/HankHuang0516/EClaw/issues/2608) [#2600](https://github.com/HankHuang0516/EClaw/issues/2600) [#2599](https://github.com/HankHuang0516/EClaw/issues/2599) [#2598](https://github.com/HankHuang0516/EClaw/issues/2598)
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **chat:** smart-chip preview falls back to inline c.comments when /comments fails (PR [#2677](https://github.com/HankHuang0516/EClaw/issues/2677)) ([7f4dffd](https://github.com/HankHuang0516/EClaw/commit/7f4dffd2c83ea86f296b8fa0610f0e67c9f1af11))
* **kanban:** stabilize comment detail viewport ([#2796](https://github.com/HankHuang0516/EClaw/issues/2796)) ([0a10aad](https://github.com/HankHuang0516/EClaw/commit/0a10aadb5a5b12ff23454c16d5c88183b94ad7d7))
* **wallpaper:** stop Android live wallpaper flashing default lobster on companion change ([#2629](https://github.com/HankHuang0516/EClaw/issues/2629)) ([8b4f66f](https://github.com/HankHuang0516/EClaw/commit/8b4f66fcb335bf43128f924b761b6337c817095b)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **app:** WebView pages honor app-selected locale via ?lang= URL param ([#2672](https://github.com/HankHuang0516/EClaw/issues/2672)) ([8ed8757](https://github.com/HankHuang0516/EClaw/commit/8ed8757aec5bf214e837cc0d81bf2b23f1993a91)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* **community:** 1-click chat button on bot cards + utm tagging ([#2610](https://github.com/HankHuang0516/EClaw/issues/2610)) ([eee97b0](https://github.com/HankHuang0516/EClaw/commit/eee97b0e2e4e74945ec24f218a69a52800b97a66))
* **chat:** add avatar size preference ([#2714](https://github.com/HankHuang0516/EClaw/issues/2714)) ([6fe164a](https://github.com/HankHuang0516/EClaw/commit/6fe164ad8b22fa576d2dd9ad37c0d9fc295b5a83))
* **dashboard:** add Claude and Codex channel guides ([#2640](https://github.com/HankHuang0516/EClaw/issues/2640)) ([c64e4c4](https://github.com/HankHuang0516/EClaw/commit/c64e4c4afc78db58c5cd578f00486dd7b2fd3311))
* **dashboard:** add Claude Code channel guide card ([#2667](https://github.com/HankHuang0516/EClaw/issues/2667)) ([d70d75c](https://github.com/HankHuang0516/EClaw/commit/d70d75c0c8caa8a540358a9aab4556b8c1927a5c))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* **kanban:** add device-scoped card tags ([#2773](https://github.com/HankHuang0516/EClaw/issues/2773)) ([53a387e](https://github.com/HankHuang0516/EClaw/commit/53a387e67ba7bb4f6bed1c427000c4ae8666577a))
* **portal:** add entity selector to petdx-browser ([#2602](https://github.com/HankHuang0516/EClaw/issues/2602)) ([3fa067e](https://github.com/HankHuang0516/EClaw/commit/3fa067e00b38829b48a37cecd33ee81a9a1122d9))
* **kanban:** add explicit card links ([#2721](https://github.com/HankHuang0516/EClaw/issues/2721)) ([ef9f812](https://github.com/HankHuang0516/EClaw/commit/ef9f812a3fcf39efd07fd158ce90951bdd045ac7))
* **kanban:** add explicit done-card reopen flow ([#2801](https://github.com/HankHuang0516/EClaw/issues/2801)) ([5080aac](https://github.com/HankHuang0516/EClaw/commit/5080aacb75047c0deaa379ee708ec85465afd57c))
* **mindmap:** add GET /api/mindmap/graph force-graph projection ([#2680](https://github.com/HankHuang0516/EClaw/issues/2680)) ([a00b2e7](https://github.com/HankHuang0516/EClaw/commit/a00b2e775af2c4c98cd157f760ad87aeeee469f0)), closes [#2679](https://github.com/HankHuang0516/EClaw/issues/2679) [#2679](https://github.com/HankHuang0516/EClaw/issues/2679)
* **dashboard:** add Hermes channel promo card ([#2708](https://github.com/HankHuang0516/EClaw/issues/2708)) ([337aca1](https://github.com/HankHuang0516/EClaw/commit/337aca153d5a1cd7e888c065f00ae54db7872d91))
* **rental:** add listing soft pause ([#2781](https://github.com/HankHuang0516/EClaw/issues/2781)) ([6586b72](https://github.com/HankHuang0516/EClaw/commit/6586b72717ddb1637d91cd3242c8d2ff554f62b4))
* **portal:** add Nagoya 5D4N trip static cross-ref page ([#2689](https://github.com/HankHuang0516/EClaw/issues/2689)) ([2e0efb6](https://github.com/HankHuang0516/EClaw/commit/2e0efb6dcdaff52226cc8854a96747000b12bdff))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **settings:** add rental roster management preview ([#2758](https://github.com/HankHuang0516/EClaw/issues/2758)) ([9706e59](https://github.com/HankHuang0516/EClaw/commit/9706e59ded140a90a6e02348124282bc69d89001))
* **rental:** add renter health chat indicator ([#2690](https://github.com/HankHuang0516/EClaw/issues/2690)) ([36cd2e9](https://github.com/HankHuang0516/EClaw/commit/36cd2e9802be4c7ebb03d3024617fa74aca48ffd))
* **ios:** add Tutorial & Intro entry in Settings ([#2800](https://github.com/HankHuang0516/EClaw/issues/2800)) ([ed83e51](https://github.com/HankHuang0516/EClaw/commit/ed83e51d043bf4cd5865f38dc95a91ed54820d6c))
* **landing:** add Watch Full Demo CTA below hero video ([#2799](https://github.com/HankHuang0516/EClaw/issues/2799)) ([66107c9](https://github.com/HankHuang0516/EClaw/commit/66107c954727551fd34d989a4674daaad9b63968))
* **footer:** add Watch Intro Video link in Info column ([#2798](https://github.com/HankHuang0516/EClaw/issues/2798)) ([d7c6d59](https://github.com/HankHuang0516/EClaw/commit/d7c6d596b69c6a5b257bf1f7a792a407ef9712ad))
* **companion:** bridge crafter-station/petdex gallery (1784 pets) ([#2601](https://github.com/HankHuang0516/EClaw/issues/2601)) ([2e245be](https://github.com/HankHuang0516/EClaw/commit/2e245bea6dd47ea7361b927d389188a3c23b6bb3))
* **promo:** chat avatar size feature landing page (self-hosted MP4) ([#2722](https://github.com/HankHuang0516/EClaw/issues/2722)) ([3852210](https://github.com/HankHuang0516/EClaw/commit/3852210d355704d018e3daca6b5f9512a011b210)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **kanban:** cron-spawn jitter + lane backpressure to prevent same-tick wedge ([#2791](https://github.com/HankHuang0516/EClaw/issues/2791)) ([9f414a7](https://github.com/HankHuang0516/EClaw/commit/9f414a731d6393672a0a4189c7b408c529ae5e12)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **promo:** embed daily eclaw video 2026-05-14 ([#2786](https://github.com/HankHuang0516/EClaw/issues/2786)) ([718a814](https://github.com/HankHuang0516/EClaw/commit/718a814ab16850bc2b33a1b303841e2c4378ecfa)), closes [#2782](https://github.com/HankHuang0516/EClaw/issues/2782) [#2693](https://github.com/HankHuang0516/EClaw/issues/2693)
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **info:** embed promo video at top of Quick Start tab ([#2797](https://github.com/HankHuang0516/EClaw/issues/2797)) ([047679f](https://github.com/HankHuang0516/EClaw/commit/047679fd57ab9949eaeacea414d5611e71afe041))
* **rental:** enforce strict rebind refunds ([#2703](https://github.com/HankHuang0516/EClaw/issues/2703)) ([a1859c5](https://github.com/HankHuang0516/EClaw/commit/a1859c50e6fb3991d7a8051491502d824a14a116))
* **portal:** info-guide-rules + info-guide-soul slide pair ([#2793](https://github.com/HankHuang0516/EClaw/issues/2793)) ([1c8bddc](https://github.com/HankHuang0516/EClaw/commit/1c8bddc4c185054b2b60088498e3d45509117127)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **chat:** link card previews to kanban ([#2754](https://github.com/HankHuang0516/EClaw/issues/2754)) ([2261240](https://github.com/HankHuang0516/EClaw/commit/22612402c2e95efb07246629e81a849be41ee9c7))
* **mission:** link notes to kanban cards ([#2723](https://github.com/HankHuang0516/EClaw/issues/2723)) ([b36dc18](https://github.com/HankHuang0516/EClaw/commit/b36dc18f3a8facf12e0b6046351c222f1e99dc55))
* **mindmap:** mission.html link to /portal/mindmap.html + deprecate /api/mission/mindmap ([#2685](https://github.com/HankHuang0516/EClaw/issues/2685)) ([11e297b](https://github.com/HankHuang0516/EClaw/commit/11e297bab1c9b56fcde3027d6500b7c58891bf18)), closes [#2680](https://github.com/HankHuang0516/EClaw/issues/2680) [#2684](https://github.com/HankHuang0516/EClaw/issues/2684)
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **avatar:** petdx render on card-holder my-cards (Phase 1b) ([#2621](https://github.com/HankHuang0516/EClaw/issues/2621)) ([f78ba8b](https://github.com/HankHuang0516/EClaw/commit/f78ba8b18acc426936ab6d8a82ca7541effea00d))
* **avatar:** petdx render on dashboard entity grid / org chart / bindings (Phase 1b) ([#2622](https://github.com/HankHuang0516/EClaw/issues/2622)) ([f417749](https://github.com/HankHuang0516/EClaw/commit/f41774914451048e8cd76e9ae30416a0642e173b)), closes [#2620](https://github.com/HankHuang0516/EClaw/issues/2620) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621)
* **avatar:** petdx render on kanban auto-assign / pulse / comment avatars (Phase 1b) ([#2624](https://github.com/HankHuang0516/EClaw/issues/2624)) ([6bff5f8](https://github.com/HankHuang0516/EClaw/commit/6bff5f80440d0bd91a6b1721cde9478d685c4d46))
* **avatar:** petdx render on mission skill/rule/soul entity dialogs (Phase 1b) ([#2623](https://github.com/HankHuang0516/EClaw/issues/2623)) ([129327b](https://github.com/HankHuang0516/EClaw/commit/129327bc7b91056659f1ab7e8d5e3f5260d951fb))
* **mindmap:** portal/mindmap.html force-graph prototype ([#129](https://github.com/HankHuang0516/EClaw/issues/129)) ([#2681](https://github.com/HankHuang0516/EClaw/issues/2681)) ([0f15e69](https://github.com/HankHuang0516/EClaw/commit/0f15e6930f0697c37fa08f3219edb8f9e499837f)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **portal:** redo nagoya trip page in professional tour-guide style ([#2691](https://github.com/HankHuang0516/EClaw/issues/2691)) ([b2378c0](https://github.com/HankHuang0516/EClaw/commit/b2378c06ee20fa9cccfdceceb1a4c9e0b3072f59))
* **avatar:** render selected petdx companion in chat avatars ([#2620](https://github.com/HankHuang0516/EClaw/issues/2620)) ([0bdd046](https://github.com/HankHuang0516/EClaw/commit/0bdd046fe1b1c428e32edda366ff112c08927f4c))
* **home:** replace native home with WebView hosting dashboard.html ([#2634](https://github.com/HankHuang0516/EClaw/issues/2634)) ([e69ea81](https://github.com/HankHuang0516/EClaw/commit/e69ea8160c239b083a83d6dc83a4f1c3f901c863))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **chat:** support message deep links ([#2719](https://github.com/HankHuang0516/EClaw/issues/2719)) ([2dc0f1e](https://github.com/HankHuang0516/EClaw/commit/2dc0f1eeb259e1a0848db4a03186b989372cd91c))
* **mission:** support note deep links ([#2717](https://github.com/HankHuang0516/EClaw/issues/2717)) ([2efd3a5](https://github.com/HankHuang0516/EClaw/commit/2efd3a5e741217a07c0b0ac54a0ddd010e0ebe23))
* **share-chat:** twitter card + per-bot og:image/twitter:* in SSR ([#2609](https://github.com/HankHuang0516/EClaw/issues/2609)) ([6cdc853](https://github.com/HankHuang0516/EClaw/commit/6cdc853dc884cdb95bd47214942768981f218ae0))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))
* **settings:** wire petdx avatar into channel-account chips ([#2626](https://github.com/HankHuang0516/EClaw/issues/2626)) ([88aec77](https://github.com/HankHuang0516/EClaw/commit/88aec772628c240e97b336bb5820892ad632d1ae))
* **files:** wire petdx avatar into entity filter & per-file badges ([#2627](https://github.com/HankHuang0516/EClaw/issues/2627)) ([5b3e5cc](https://github.com/HankHuang0516/EClaw/commit/5b3e5cc542d9da69bb4e92500fd03a542ea33f00))
* **mindmap:** wrap hardcoded zh-TW UI strings with i18n t() ([#2607](https://github.com/HankHuang0516/EClaw/issues/2607)) ([166af87](https://github.com/HankHuang0516/EClaw/commit/166af8772b2121a24aaf34a83b3de970e9b3b571)), closes [#2606](https://github.com/HankHuang0516/EClaw/issues/2606)


### Performance Improvements

* **mindmap:** force-graph hardening for 1000/2000-node graphs ([#2684](https://github.com/HankHuang0516/EClaw/issues/2684)) ([da8b1c8](https://github.com/HankHuang0516/EClaw/commit/da8b1c8f947ab8bc8fa455c1962a91146623a1fc))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-14)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **notifications:** add kanban_done + kanban_done_auto toggles to Android Settings ([#2636](https://github.com/HankHuang0516/EClaw/issues/2636)) ([a710909](https://github.com/HankHuang0516/EClaw/commit/a7109095e3393b8564e7ef1b23d382a4fbb944b8))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **i18n:** clear batch 1 residual missing keys ([#2790](https://github.com/HankHuang0516/EClaw/issues/2790)) ([211030e](https://github.com/HankHuang0516/EClaw/commit/211030e0b0b6a865c11f0c4ed60dc4e356d43b7a))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **kanban:** comment input no longer overlaps last comment in card detail (PR [#2678](https://github.com/HankHuang0516/EClaw/issues/2678)) ([fba91fc](https://github.com/HankHuang0516/EClaw/commit/fba91fca15402b453a0db5ee857c0b16e6087055))
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **i18n:** cover dynamic portal wrapper keys ([#2807](https://github.com/HankHuang0516/EClaw/issues/2807)) ([4c711cc](https://github.com/HankHuang0516/EClaw/commit/4c711cc4009300ffe4e8933a98ee01cd0fdd6aeb))
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **petdx:** drop dark-grey loading placeholder + preload sprite WEBP ([#2628](https://github.com/HankHuang0516/EClaw/issues/2628)) ([59cef38](https://github.com/HankHuang0516/EClaw/commit/59cef387bd69ca99d7d15c86a1364856d3849ad8)), closes [#1a1a1a](https://github.com/HankHuang0516/EClaw/issues/1a1a1a)
* **entities:** expose botSecret to owner so wallpaper service can poll companions ([#2615](https://github.com/HankHuang0516/EClaw/issues/2615)) ([04470fc](https://github.com/HankHuang0516/EClaw/commit/04470fce8f8c3fce2b1ba8b243e776606f107502))
* **rental:** expose owner_public_code in marketplace so plaza CTA can route ([#2616](https://github.com/HankHuang0516/EClaw/issues/2616)) ([4d1372f](https://github.com/HankHuang0516/EClaw/commit/4d1372f717d93cab65543e87c852e74e9fb67071)), closes [#2610](https://github.com/HankHuang0516/EClaw/issues/2610)
* **mindmap:** fallback to device scope when entityId is null ([#2728](https://github.com/HankHuang0516/EClaw/issues/2728)) ([7572312](https://github.com/HankHuang0516/EClaw/commit/7572312433d3d75fc245eda48a28919ce14bd927))
* **i18n:** fill Spanish drift keys ([#2751](https://github.com/HankHuang0516/EClaw/issues/2751)) ([0ad0ee5](https://github.com/HankHuang0516/EClaw/commit/0ad0ee55f7fac3e6ac46d891539950dab4d553cc))
* **portal:** fit embedded org chart to mobile viewport ([#2674](https://github.com/HankHuang0516/EClaw/issues/2674)) ([1c4e1b4](https://github.com/HankHuang0516/EClaw/commit/1c4e1b413ea7027b4cd4b8ecda981b0d0e12e66b))
* **i18n:** fix 6 trailing-comma syntax errors in 10-locale batch ([#2771](https://github.com/HankHuang0516/EClaw/issues/2771)) ([b27c6ca](https://github.com/HankHuang0516/EClaw/commit/b27c6ca204bf813e406c54ce3a2532a5f1f031b3))
* **uiux:** harden chat previews and roster preview ([#2769](https://github.com/HankHuang0516/EClaw/issues/2769)) ([466d4d3](https://github.com/HankHuang0516/EClaw/commit/466d4d3ef81c628d3f58db64323946053d7bf61c))
* **mention-parser:** ignore @-mentions inside markdown code spans ([#2645](https://github.com/HankHuang0516/EClaw/issues/2645)) ([8da19d4](https://github.com/HankHuang0516/EClaw/commit/8da19d4a79ceb4152bf2144ee0847c61ce3e1def)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **kanban:** lazy-load dependency chips via IntersectionObserver ([#2632](https://github.com/HankHuang0516/EClaw/issues/2632)) ([20586b4](https://github.com/HankHuang0516/EClaw/commit/20586b43357335f9eb6a190c02d58c8e36b58aba)), closes [#2631](https://github.com/HankHuang0516/EClaw/issues/2631)
* **kanban:** make card sorting deterministic ([#2756](https://github.com/HankHuang0516/EClaw/issues/2756)) ([48e2117](https://github.com/HankHuang0516/EClaw/commit/48e2117b64e37f05dc635e0a3b67bfd43cbe48f5))
* **kanban:** notify reviewer on manual /move → review ([#2753](https://github.com/HankHuang0516/EClaw/issues/2753)) ([6cbbb4e](https://github.com/HankHuang0516/EClaw/commit/6cbbb4ee8c0d4d8ad54df2e9b5faaa3699bd530f))
* **wallpaper:** off-load spritesheet fetch to IO so per-petdx sprites actually render ([#2618](https://github.com/HankHuang0516/EClaw/issues/2618)) ([61b832c](https://github.com/HankHuang0516/EClaw/commit/61b832c9fa8a1d0caab810ccc942d85c63349267)), closes [#2615](https://github.com/HankHuang0516/EClaw/issues/2615) [#2577](https://github.com/HankHuang0516/EClaw/issues/2577)
* **portal:** petdx-browser cookie-session fallback for device-login ([#2757](https://github.com/HankHuang0516/EClaw/issues/2757)) ([ca275f4](https://github.com/HankHuang0516/EClaw/commit/ca275f4519835da0c7ad71c588908a18f6f138d8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **i18n:** positional format specifiers for feedback_result_logs (7 locales) ([#2597](https://github.com/HankHuang0516/EClaw/issues/2597)) ([21aedc7](https://github.com/HankHuang0516/EClaw/commit/21aedc7eebc7a2839e340136f38dfdfd4dabb9dc))
* **avatar-petdx:** preserve descriptor across transient API failures (flicker) ([#2625](https://github.com/HankHuang0516/EClaw/issues/2625)) ([7b1c606](https://github.com/HankHuang0516/EClaw/commit/7b1c606514f7698d72ec95cf6c556e4043966186))
* **chat:** preserve scroll anchor while reading history ([#2693](https://github.com/HankHuang0516/EClaw/issues/2693)) ([945fdb7](https://github.com/HankHuang0516/EClaw/commit/945fdb7192b791b31882e1e75568dd8b11e4686f))
* **promo:** pull video embed from /promo-chat-avatar.html ([#2724](https://github.com/HankHuang0516/EClaw/issues/2724)) ([2afabc8](https://github.com/HankHuang0516/EClaw/commit/2afabc8c5ff8b25218a7cb857e8adfa572c8e9d5))
* **kanban:** realign stale recurring schedules ([#2785](https://github.com/HankHuang0516/EClaw/issues/2785)) ([ab8ee25](https://github.com/HankHuang0516/EClaw/commit/ab8ee250a9b37f3d3e838bb01d8866c8d2b78231))
* **portal:** reduce QA-discovered request fanout ([#2656](https://github.com/HankHuang0516/EClaw/issues/2656)) ([1e46d6b](https://github.com/HankHuang0516/EClaw/commit/1e46d6bab61e58c65b452b6503d953f8dddeee75))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **portal:** remove org chart fit scale floor ([#2676](https://github.com/HankHuang0516/EClaw/issues/2676)) ([0f01606](https://github.com/HankHuang0516/EClaw/commit/0f016068b963bb5f800a02f28817c7174979d913))
* **i18n:** rename mm_empty_title → mm_state_empty_title in mindmap.html ([#2683](https://github.com/HankHuang0516/EClaw/issues/2683)) ([c79c109](https://github.com/HankHuang0516/EClaw/commit/c79c109bea23142e8a6d9ace976d105af1280ec9))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **chat:** render mention avatars with companion renderer ([#2633](https://github.com/HankHuang0516/EClaw/issues/2633)) ([03e205f](https://github.com/HankHuang0516/EClaw/commit/03e205f663ecd2c2f443d4009dd5af0093f0bbbb))
* **kanban:** reserve mobile comments panel height ([#2782](https://github.com/HankHuang0516/EClaw/issues/2782)) ([ce8662d](https://github.com/HankHuang0516/EClaw/commit/ce8662d362422fdd25037f1deb61dbed9425e2f9))
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* scheduled audit 2026-05-13 — 6 bugs, XSS, i18n ([#2668](https://github.com/HankHuang0516/EClaw/issues/2668)) ([21dd513](https://github.com/HankHuang0516/EClaw/commit/21dd513b4464738de29164265437435ba6cc4817)), closes [#2605](https://github.com/HankHuang0516/EClaw/issues/2605) [#2608](https://github.com/HankHuang0516/EClaw/issues/2608) [#2600](https://github.com/HankHuang0516/EClaw/issues/2600) [#2599](https://github.com/HankHuang0516/EClaw/issues/2599) [#2598](https://github.com/HankHuang0516/EClaw/issues/2598)
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **chat:** smart-chip preview falls back to inline c.comments when /comments fails (PR [#2677](https://github.com/HankHuang0516/EClaw/issues/2677)) ([7f4dffd](https://github.com/HankHuang0516/EClaw/commit/7f4dffd2c83ea86f296b8fa0610f0e67c9f1af11))
* **kanban:** stabilize comment detail viewport ([#2796](https://github.com/HankHuang0516/EClaw/issues/2796)) ([0a10aad](https://github.com/HankHuang0516/EClaw/commit/0a10aadb5a5b12ff23454c16d5c88183b94ad7d7))
* **wallpaper:** stop Android live wallpaper flashing default lobster on companion change ([#2629](https://github.com/HankHuang0516/EClaw/issues/2629)) ([8b4f66f](https://github.com/HankHuang0516/EClaw/commit/8b4f66fcb335bf43128f924b761b6337c817095b)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **app:** WebView pages honor app-selected locale via ?lang= URL param ([#2672](https://github.com/HankHuang0516/EClaw/issues/2672)) ([8ed8757](https://github.com/HankHuang0516/EClaw/commit/8ed8757aec5bf214e837cc0d81bf2b23f1993a91)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* **community:** 1-click chat button on bot cards + utm tagging ([#2610](https://github.com/HankHuang0516/EClaw/issues/2610)) ([eee97b0](https://github.com/HankHuang0516/EClaw/commit/eee97b0e2e4e74945ec24f218a69a52800b97a66))
* **chat:** add avatar size preference ([#2714](https://github.com/HankHuang0516/EClaw/issues/2714)) ([6fe164a](https://github.com/HankHuang0516/EClaw/commit/6fe164ad8b22fa576d2dd9ad37c0d9fc295b5a83))
* **dashboard:** add Claude and Codex channel guides ([#2640](https://github.com/HankHuang0516/EClaw/issues/2640)) ([c64e4c4](https://github.com/HankHuang0516/EClaw/commit/c64e4c4afc78db58c5cd578f00486dd7b2fd3311))
* **dashboard:** add Claude Code channel guide card ([#2667](https://github.com/HankHuang0516/EClaw/issues/2667)) ([d70d75c](https://github.com/HankHuang0516/EClaw/commit/d70d75c0c8caa8a540358a9aab4556b8c1927a5c))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* **kanban:** add device-scoped card tags ([#2773](https://github.com/HankHuang0516/EClaw/issues/2773)) ([53a387e](https://github.com/HankHuang0516/EClaw/commit/53a387e67ba7bb4f6bed1c427000c4ae8666577a))
* **portal:** add entity selector to petdx-browser ([#2602](https://github.com/HankHuang0516/EClaw/issues/2602)) ([3fa067e](https://github.com/HankHuang0516/EClaw/commit/3fa067e00b38829b48a37cecd33ee81a9a1122d9))
* **kanban:** add explicit card links ([#2721](https://github.com/HankHuang0516/EClaw/issues/2721)) ([ef9f812](https://github.com/HankHuang0516/EClaw/commit/ef9f812a3fcf39efd07fd158ce90951bdd045ac7))
* **kanban:** add explicit done-card reopen flow ([#2801](https://github.com/HankHuang0516/EClaw/issues/2801)) ([5080aac](https://github.com/HankHuang0516/EClaw/commit/5080aacb75047c0deaa379ee708ec85465afd57c))
* **mindmap:** add GET /api/mindmap/graph force-graph projection ([#2680](https://github.com/HankHuang0516/EClaw/issues/2680)) ([a00b2e7](https://github.com/HankHuang0516/EClaw/commit/a00b2e775af2c4c98cd157f760ad87aeeee469f0)), closes [#2679](https://github.com/HankHuang0516/EClaw/issues/2679) [#2679](https://github.com/HankHuang0516/EClaw/issues/2679)
* **dashboard:** add Hermes channel promo card ([#2708](https://github.com/HankHuang0516/EClaw/issues/2708)) ([337aca1](https://github.com/HankHuang0516/EClaw/commit/337aca153d5a1cd7e888c065f00ae54db7872d91))
* **rental:** add listing soft pause ([#2781](https://github.com/HankHuang0516/EClaw/issues/2781)) ([6586b72](https://github.com/HankHuang0516/EClaw/commit/6586b72717ddb1637d91cd3242c8d2ff554f62b4))
* **portal:** add Nagoya 5D4N trip static cross-ref page ([#2689](https://github.com/HankHuang0516/EClaw/issues/2689)) ([2e0efb6](https://github.com/HankHuang0516/EClaw/commit/2e0efb6dcdaff52226cc8854a96747000b12bdff))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **settings:** add rental roster management preview ([#2758](https://github.com/HankHuang0516/EClaw/issues/2758)) ([9706e59](https://github.com/HankHuang0516/EClaw/commit/9706e59ded140a90a6e02348124282bc69d89001))
* **rental:** add renter health chat indicator ([#2690](https://github.com/HankHuang0516/EClaw/issues/2690)) ([36cd2e9](https://github.com/HankHuang0516/EClaw/commit/36cd2e9802be4c7ebb03d3024617fa74aca48ffd))
* **ios:** add Tutorial & Intro entry in Settings ([#2800](https://github.com/HankHuang0516/EClaw/issues/2800)) ([ed83e51](https://github.com/HankHuang0516/EClaw/commit/ed83e51d043bf4cd5865f38dc95a91ed54820d6c))
* **landing:** add Watch Full Demo CTA below hero video ([#2799](https://github.com/HankHuang0516/EClaw/issues/2799)) ([66107c9](https://github.com/HankHuang0516/EClaw/commit/66107c954727551fd34d989a4674daaad9b63968))
* **footer:** add Watch Intro Video link in Info column ([#2798](https://github.com/HankHuang0516/EClaw/issues/2798)) ([d7c6d59](https://github.com/HankHuang0516/EClaw/commit/d7c6d596b69c6a5b257bf1f7a792a407ef9712ad))
* **companion:** bridge crafter-station/petdex gallery (1784 pets) ([#2601](https://github.com/HankHuang0516/EClaw/issues/2601)) ([2e245be](https://github.com/HankHuang0516/EClaw/commit/2e245bea6dd47ea7361b927d389188a3c23b6bb3))
* **promo:** chat avatar size feature landing page (self-hosted MP4) ([#2722](https://github.com/HankHuang0516/EClaw/issues/2722)) ([3852210](https://github.com/HankHuang0516/EClaw/commit/3852210d355704d018e3daca6b5f9512a011b210)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **kanban:** cron-spawn jitter + lane backpressure to prevent same-tick wedge ([#2791](https://github.com/HankHuang0516/EClaw/issues/2791)) ([9f414a7](https://github.com/HankHuang0516/EClaw/commit/9f414a731d6393672a0a4189c7b408c529ae5e12)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **promo:** embed daily eclaw video 2026-05-14 ([#2786](https://github.com/HankHuang0516/EClaw/issues/2786)) ([718a814](https://github.com/HankHuang0516/EClaw/commit/718a814ab16850bc2b33a1b303841e2c4378ecfa)), closes [#2782](https://github.com/HankHuang0516/EClaw/issues/2782) [#2693](https://github.com/HankHuang0516/EClaw/issues/2693)
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **info:** embed promo video at top of Quick Start tab ([#2797](https://github.com/HankHuang0516/EClaw/issues/2797)) ([047679f](https://github.com/HankHuang0516/EClaw/commit/047679fd57ab9949eaeacea414d5611e71afe041))
* **rental:** enforce strict rebind refunds ([#2703](https://github.com/HankHuang0516/EClaw/issues/2703)) ([a1859c5](https://github.com/HankHuang0516/EClaw/commit/a1859c50e6fb3991d7a8051491502d824a14a116))
* **portal:** info-guide-rules + info-guide-soul slide pair ([#2793](https://github.com/HankHuang0516/EClaw/issues/2793)) ([1c8bddc](https://github.com/HankHuang0516/EClaw/commit/1c8bddc4c185054b2b60088498e3d45509117127)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **chat:** link card previews to kanban ([#2754](https://github.com/HankHuang0516/EClaw/issues/2754)) ([2261240](https://github.com/HankHuang0516/EClaw/commit/22612402c2e95efb07246629e81a849be41ee9c7))
* **mission:** link notes to kanban cards ([#2723](https://github.com/HankHuang0516/EClaw/issues/2723)) ([b36dc18](https://github.com/HankHuang0516/EClaw/commit/b36dc18f3a8facf12e0b6046351c222f1e99dc55))
* **mindmap:** mission.html link to /portal/mindmap.html + deprecate /api/mission/mindmap ([#2685](https://github.com/HankHuang0516/EClaw/issues/2685)) ([11e297b](https://github.com/HankHuang0516/EClaw/commit/11e297bab1c9b56fcde3027d6500b7c58891bf18)), closes [#2680](https://github.com/HankHuang0516/EClaw/issues/2680) [#2684](https://github.com/HankHuang0516/EClaw/issues/2684)
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **avatar:** petdx render on card-holder my-cards (Phase 1b) ([#2621](https://github.com/HankHuang0516/EClaw/issues/2621)) ([f78ba8b](https://github.com/HankHuang0516/EClaw/commit/f78ba8b18acc426936ab6d8a82ca7541effea00d))
* **avatar:** petdx render on dashboard entity grid / org chart / bindings (Phase 1b) ([#2622](https://github.com/HankHuang0516/EClaw/issues/2622)) ([f417749](https://github.com/HankHuang0516/EClaw/commit/f41774914451048e8cd76e9ae30416a0642e173b)), closes [#2620](https://github.com/HankHuang0516/EClaw/issues/2620) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621)
* **avatar:** petdx render on kanban auto-assign / pulse / comment avatars (Phase 1b) ([#2624](https://github.com/HankHuang0516/EClaw/issues/2624)) ([6bff5f8](https://github.com/HankHuang0516/EClaw/commit/6bff5f80440d0bd91a6b1721cde9478d685c4d46))
* **avatar:** petdx render on mission skill/rule/soul entity dialogs (Phase 1b) ([#2623](https://github.com/HankHuang0516/EClaw/issues/2623)) ([129327b](https://github.com/HankHuang0516/EClaw/commit/129327bc7b91056659f1ab7e8d5e3f5260d951fb))
* **mindmap:** portal/mindmap.html force-graph prototype ([#129](https://github.com/HankHuang0516/EClaw/issues/129)) ([#2681](https://github.com/HankHuang0516/EClaw/issues/2681)) ([0f15e69](https://github.com/HankHuang0516/EClaw/commit/0f15e6930f0697c37fa08f3219edb8f9e499837f)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **portal:** redo nagoya trip page in professional tour-guide style ([#2691](https://github.com/HankHuang0516/EClaw/issues/2691)) ([b2378c0](https://github.com/HankHuang0516/EClaw/commit/b2378c06ee20fa9cccfdceceb1a4c9e0b3072f59))
* **avatar:** render selected petdx companion in chat avatars ([#2620](https://github.com/HankHuang0516/EClaw/issues/2620)) ([0bdd046](https://github.com/HankHuang0516/EClaw/commit/0bdd046fe1b1c428e32edda366ff112c08927f4c))
* **home:** replace native home with WebView hosting dashboard.html ([#2634](https://github.com/HankHuang0516/EClaw/issues/2634)) ([e69ea81](https://github.com/HankHuang0516/EClaw/commit/e69ea8160c239b083a83d6dc83a4f1c3f901c863))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **chat:** support message deep links ([#2719](https://github.com/HankHuang0516/EClaw/issues/2719)) ([2dc0f1e](https://github.com/HankHuang0516/EClaw/commit/2dc0f1eeb259e1a0848db4a03186b989372cd91c))
* **mission:** support note deep links ([#2717](https://github.com/HankHuang0516/EClaw/issues/2717)) ([2efd3a5](https://github.com/HankHuang0516/EClaw/commit/2efd3a5e741217a07c0b0ac54a0ddd010e0ebe23))
* **share-chat:** twitter card + per-bot og:image/twitter:* in SSR ([#2609](https://github.com/HankHuang0516/EClaw/issues/2609)) ([6cdc853](https://github.com/HankHuang0516/EClaw/commit/6cdc853dc884cdb95bd47214942768981f218ae0))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))
* **settings:** wire petdx avatar into channel-account chips ([#2626](https://github.com/HankHuang0516/EClaw/issues/2626)) ([88aec77](https://github.com/HankHuang0516/EClaw/commit/88aec772628c240e97b336bb5820892ad632d1ae))
* **files:** wire petdx avatar into entity filter & per-file badges ([#2627](https://github.com/HankHuang0516/EClaw/issues/2627)) ([5b3e5cc](https://github.com/HankHuang0516/EClaw/commit/5b3e5cc542d9da69bb4e92500fd03a542ea33f00))
* **mindmap:** wrap hardcoded zh-TW UI strings with i18n t() ([#2607](https://github.com/HankHuang0516/EClaw/issues/2607)) ([166af87](https://github.com/HankHuang0516/EClaw/commit/166af8772b2121a24aaf34a83b3de970e9b3b571)), closes [#2606](https://github.com/HankHuang0516/EClaw/issues/2606)


### Performance Improvements

* **mindmap:** force-graph hardening for 1000/2000-node graphs ([#2684](https://github.com/HankHuang0516/EClaw/issues/2684)) ([da8b1c8](https://github.com/HankHuang0516/EClaw/commit/da8b1c8f947ab8bc8fa455c1962a91146623a1fc))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-14)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **notifications:** add kanban_done + kanban_done_auto toggles to Android Settings ([#2636](https://github.com/HankHuang0516/EClaw/issues/2636)) ([a710909](https://github.com/HankHuang0516/EClaw/commit/a7109095e3393b8564e7ef1b23d382a4fbb944b8))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **i18n:** clear batch 1 residual missing keys ([#2790](https://github.com/HankHuang0516/EClaw/issues/2790)) ([211030e](https://github.com/HankHuang0516/EClaw/commit/211030e0b0b6a865c11f0c4ed60dc4e356d43b7a))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **kanban:** comment input no longer overlaps last comment in card detail (PR [#2678](https://github.com/HankHuang0516/EClaw/issues/2678)) ([fba91fc](https://github.com/HankHuang0516/EClaw/commit/fba91fca15402b453a0db5ee857c0b16e6087055))
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **petdx:** drop dark-grey loading placeholder + preload sprite WEBP ([#2628](https://github.com/HankHuang0516/EClaw/issues/2628)) ([59cef38](https://github.com/HankHuang0516/EClaw/commit/59cef387bd69ca99d7d15c86a1364856d3849ad8)), closes [#1a1a1a](https://github.com/HankHuang0516/EClaw/issues/1a1a1a)
* **entities:** expose botSecret to owner so wallpaper service can poll companions ([#2615](https://github.com/HankHuang0516/EClaw/issues/2615)) ([04470fc](https://github.com/HankHuang0516/EClaw/commit/04470fce8f8c3fce2b1ba8b243e776606f107502))
* **rental:** expose owner_public_code in marketplace so plaza CTA can route ([#2616](https://github.com/HankHuang0516/EClaw/issues/2616)) ([4d1372f](https://github.com/HankHuang0516/EClaw/commit/4d1372f717d93cab65543e87c852e74e9fb67071)), closes [#2610](https://github.com/HankHuang0516/EClaw/issues/2610)
* **mindmap:** fallback to device scope when entityId is null ([#2728](https://github.com/HankHuang0516/EClaw/issues/2728)) ([7572312](https://github.com/HankHuang0516/EClaw/commit/7572312433d3d75fc245eda48a28919ce14bd927))
* **i18n:** fill Spanish drift keys ([#2751](https://github.com/HankHuang0516/EClaw/issues/2751)) ([0ad0ee5](https://github.com/HankHuang0516/EClaw/commit/0ad0ee55f7fac3e6ac46d891539950dab4d553cc))
* **portal:** fit embedded org chart to mobile viewport ([#2674](https://github.com/HankHuang0516/EClaw/issues/2674)) ([1c4e1b4](https://github.com/HankHuang0516/EClaw/commit/1c4e1b413ea7027b4cd4b8ecda981b0d0e12e66b))
* **i18n:** fix 6 trailing-comma syntax errors in 10-locale batch ([#2771](https://github.com/HankHuang0516/EClaw/issues/2771)) ([b27c6ca](https://github.com/HankHuang0516/EClaw/commit/b27c6ca204bf813e406c54ce3a2532a5f1f031b3))
* **uiux:** harden chat previews and roster preview ([#2769](https://github.com/HankHuang0516/EClaw/issues/2769)) ([466d4d3](https://github.com/HankHuang0516/EClaw/commit/466d4d3ef81c628d3f58db64323946053d7bf61c))
* **mention-parser:** ignore @-mentions inside markdown code spans ([#2645](https://github.com/HankHuang0516/EClaw/issues/2645)) ([8da19d4](https://github.com/HankHuang0516/EClaw/commit/8da19d4a79ceb4152bf2144ee0847c61ce3e1def)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **kanban:** lazy-load dependency chips via IntersectionObserver ([#2632](https://github.com/HankHuang0516/EClaw/issues/2632)) ([20586b4](https://github.com/HankHuang0516/EClaw/commit/20586b43357335f9eb6a190c02d58c8e36b58aba)), closes [#2631](https://github.com/HankHuang0516/EClaw/issues/2631)
* **kanban:** make card sorting deterministic ([#2756](https://github.com/HankHuang0516/EClaw/issues/2756)) ([48e2117](https://github.com/HankHuang0516/EClaw/commit/48e2117b64e37f05dc635e0a3b67bfd43cbe48f5))
* **kanban:** notify reviewer on manual /move → review ([#2753](https://github.com/HankHuang0516/EClaw/issues/2753)) ([6cbbb4e](https://github.com/HankHuang0516/EClaw/commit/6cbbb4ee8c0d4d8ad54df2e9b5faaa3699bd530f))
* **wallpaper:** off-load spritesheet fetch to IO so per-petdx sprites actually render ([#2618](https://github.com/HankHuang0516/EClaw/issues/2618)) ([61b832c](https://github.com/HankHuang0516/EClaw/commit/61b832c9fa8a1d0caab810ccc942d85c63349267)), closes [#2615](https://github.com/HankHuang0516/EClaw/issues/2615) [#2577](https://github.com/HankHuang0516/EClaw/issues/2577)
* **portal:** petdx-browser cookie-session fallback for device-login ([#2757](https://github.com/HankHuang0516/EClaw/issues/2757)) ([ca275f4](https://github.com/HankHuang0516/EClaw/commit/ca275f4519835da0c7ad71c588908a18f6f138d8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **i18n:** positional format specifiers for feedback_result_logs (7 locales) ([#2597](https://github.com/HankHuang0516/EClaw/issues/2597)) ([21aedc7](https://github.com/HankHuang0516/EClaw/commit/21aedc7eebc7a2839e340136f38dfdfd4dabb9dc))
* **avatar-petdx:** preserve descriptor across transient API failures (flicker) ([#2625](https://github.com/HankHuang0516/EClaw/issues/2625)) ([7b1c606](https://github.com/HankHuang0516/EClaw/commit/7b1c606514f7698d72ec95cf6c556e4043966186))
* **chat:** preserve scroll anchor while reading history ([#2693](https://github.com/HankHuang0516/EClaw/issues/2693)) ([945fdb7](https://github.com/HankHuang0516/EClaw/commit/945fdb7192b791b31882e1e75568dd8b11e4686f))
* **promo:** pull video embed from /promo-chat-avatar.html ([#2724](https://github.com/HankHuang0516/EClaw/issues/2724)) ([2afabc8](https://github.com/HankHuang0516/EClaw/commit/2afabc8c5ff8b25218a7cb857e8adfa572c8e9d5))
* **kanban:** realign stale recurring schedules ([#2785](https://github.com/HankHuang0516/EClaw/issues/2785)) ([ab8ee25](https://github.com/HankHuang0516/EClaw/commit/ab8ee250a9b37f3d3e838bb01d8866c8d2b78231))
* **portal:** reduce QA-discovered request fanout ([#2656](https://github.com/HankHuang0516/EClaw/issues/2656)) ([1e46d6b](https://github.com/HankHuang0516/EClaw/commit/1e46d6bab61e58c65b452b6503d953f8dddeee75))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **portal:** remove org chart fit scale floor ([#2676](https://github.com/HankHuang0516/EClaw/issues/2676)) ([0f01606](https://github.com/HankHuang0516/EClaw/commit/0f016068b963bb5f800a02f28817c7174979d913))
* **i18n:** rename mm_empty_title → mm_state_empty_title in mindmap.html ([#2683](https://github.com/HankHuang0516/EClaw/issues/2683)) ([c79c109](https://github.com/HankHuang0516/EClaw/commit/c79c109bea23142e8a6d9ace976d105af1280ec9))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **chat:** render mention avatars with companion renderer ([#2633](https://github.com/HankHuang0516/EClaw/issues/2633)) ([03e205f](https://github.com/HankHuang0516/EClaw/commit/03e205f663ecd2c2f443d4009dd5af0093f0bbbb))
* **kanban:** reserve mobile comments panel height ([#2782](https://github.com/HankHuang0516/EClaw/issues/2782)) ([ce8662d](https://github.com/HankHuang0516/EClaw/commit/ce8662d362422fdd25037f1deb61dbed9425e2f9))
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* scheduled audit 2026-05-13 — 6 bugs, XSS, i18n ([#2668](https://github.com/HankHuang0516/EClaw/issues/2668)) ([21dd513](https://github.com/HankHuang0516/EClaw/commit/21dd513b4464738de29164265437435ba6cc4817)), closes [#2605](https://github.com/HankHuang0516/EClaw/issues/2605) [#2608](https://github.com/HankHuang0516/EClaw/issues/2608) [#2600](https://github.com/HankHuang0516/EClaw/issues/2600) [#2599](https://github.com/HankHuang0516/EClaw/issues/2599) [#2598](https://github.com/HankHuang0516/EClaw/issues/2598)
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **chat:** smart-chip preview falls back to inline c.comments when /comments fails (PR [#2677](https://github.com/HankHuang0516/EClaw/issues/2677)) ([7f4dffd](https://github.com/HankHuang0516/EClaw/commit/7f4dffd2c83ea86f296b8fa0610f0e67c9f1af11))
* **kanban:** stabilize comment detail viewport ([#2796](https://github.com/HankHuang0516/EClaw/issues/2796)) ([0a10aad](https://github.com/HankHuang0516/EClaw/commit/0a10aadb5a5b12ff23454c16d5c88183b94ad7d7))
* **wallpaper:** stop Android live wallpaper flashing default lobster on companion change ([#2629](https://github.com/HankHuang0516/EClaw/issues/2629)) ([8b4f66f](https://github.com/HankHuang0516/EClaw/commit/8b4f66fcb335bf43128f924b761b6337c817095b)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **app:** WebView pages honor app-selected locale via ?lang= URL param ([#2672](https://github.com/HankHuang0516/EClaw/issues/2672)) ([8ed8757](https://github.com/HankHuang0516/EClaw/commit/8ed8757aec5bf214e837cc0d81bf2b23f1993a91)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* **community:** 1-click chat button on bot cards + utm tagging ([#2610](https://github.com/HankHuang0516/EClaw/issues/2610)) ([eee97b0](https://github.com/HankHuang0516/EClaw/commit/eee97b0e2e4e74945ec24f218a69a52800b97a66))
* **chat:** add avatar size preference ([#2714](https://github.com/HankHuang0516/EClaw/issues/2714)) ([6fe164a](https://github.com/HankHuang0516/EClaw/commit/6fe164ad8b22fa576d2dd9ad37c0d9fc295b5a83))
* **dashboard:** add Claude and Codex channel guides ([#2640](https://github.com/HankHuang0516/EClaw/issues/2640)) ([c64e4c4](https://github.com/HankHuang0516/EClaw/commit/c64e4c4afc78db58c5cd578f00486dd7b2fd3311))
* **dashboard:** add Claude Code channel guide card ([#2667](https://github.com/HankHuang0516/EClaw/issues/2667)) ([d70d75c](https://github.com/HankHuang0516/EClaw/commit/d70d75c0c8caa8a540358a9aab4556b8c1927a5c))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* **kanban:** add device-scoped card tags ([#2773](https://github.com/HankHuang0516/EClaw/issues/2773)) ([53a387e](https://github.com/HankHuang0516/EClaw/commit/53a387e67ba7bb4f6bed1c427000c4ae8666577a))
* **portal:** add entity selector to petdx-browser ([#2602](https://github.com/HankHuang0516/EClaw/issues/2602)) ([3fa067e](https://github.com/HankHuang0516/EClaw/commit/3fa067e00b38829b48a37cecd33ee81a9a1122d9))
* **kanban:** add explicit card links ([#2721](https://github.com/HankHuang0516/EClaw/issues/2721)) ([ef9f812](https://github.com/HankHuang0516/EClaw/commit/ef9f812a3fcf39efd07fd158ce90951bdd045ac7))
* **kanban:** add explicit done-card reopen flow ([#2801](https://github.com/HankHuang0516/EClaw/issues/2801)) ([5080aac](https://github.com/HankHuang0516/EClaw/commit/5080aacb75047c0deaa379ee708ec85465afd57c))
* **mindmap:** add GET /api/mindmap/graph force-graph projection ([#2680](https://github.com/HankHuang0516/EClaw/issues/2680)) ([a00b2e7](https://github.com/HankHuang0516/EClaw/commit/a00b2e775af2c4c98cd157f760ad87aeeee469f0)), closes [#2679](https://github.com/HankHuang0516/EClaw/issues/2679) [#2679](https://github.com/HankHuang0516/EClaw/issues/2679)
* **dashboard:** add Hermes channel promo card ([#2708](https://github.com/HankHuang0516/EClaw/issues/2708)) ([337aca1](https://github.com/HankHuang0516/EClaw/commit/337aca153d5a1cd7e888c065f00ae54db7872d91))
* **rental:** add listing soft pause ([#2781](https://github.com/HankHuang0516/EClaw/issues/2781)) ([6586b72](https://github.com/HankHuang0516/EClaw/commit/6586b72717ddb1637d91cd3242c8d2ff554f62b4))
* **portal:** add Nagoya 5D4N trip static cross-ref page ([#2689](https://github.com/HankHuang0516/EClaw/issues/2689)) ([2e0efb6](https://github.com/HankHuang0516/EClaw/commit/2e0efb6dcdaff52226cc8854a96747000b12bdff))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **settings:** add rental roster management preview ([#2758](https://github.com/HankHuang0516/EClaw/issues/2758)) ([9706e59](https://github.com/HankHuang0516/EClaw/commit/9706e59ded140a90a6e02348124282bc69d89001))
* **rental:** add renter health chat indicator ([#2690](https://github.com/HankHuang0516/EClaw/issues/2690)) ([36cd2e9](https://github.com/HankHuang0516/EClaw/commit/36cd2e9802be4c7ebb03d3024617fa74aca48ffd))
* **ios:** add Tutorial & Intro entry in Settings ([#2800](https://github.com/HankHuang0516/EClaw/issues/2800)) ([ed83e51](https://github.com/HankHuang0516/EClaw/commit/ed83e51d043bf4cd5865f38dc95a91ed54820d6c))
* **landing:** add Watch Full Demo CTA below hero video ([#2799](https://github.com/HankHuang0516/EClaw/issues/2799)) ([66107c9](https://github.com/HankHuang0516/EClaw/commit/66107c954727551fd34d989a4674daaad9b63968))
* **footer:** add Watch Intro Video link in Info column ([#2798](https://github.com/HankHuang0516/EClaw/issues/2798)) ([d7c6d59](https://github.com/HankHuang0516/EClaw/commit/d7c6d596b69c6a5b257bf1f7a792a407ef9712ad))
* **companion:** bridge crafter-station/petdex gallery (1784 pets) ([#2601](https://github.com/HankHuang0516/EClaw/issues/2601)) ([2e245be](https://github.com/HankHuang0516/EClaw/commit/2e245bea6dd47ea7361b927d389188a3c23b6bb3))
* **promo:** chat avatar size feature landing page (self-hosted MP4) ([#2722](https://github.com/HankHuang0516/EClaw/issues/2722)) ([3852210](https://github.com/HankHuang0516/EClaw/commit/3852210d355704d018e3daca6b5f9512a011b210)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **kanban:** cron-spawn jitter + lane backpressure to prevent same-tick wedge ([#2791](https://github.com/HankHuang0516/EClaw/issues/2791)) ([9f414a7](https://github.com/HankHuang0516/EClaw/commit/9f414a731d6393672a0a4189c7b408c529ae5e12)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **promo:** embed daily eclaw video 2026-05-14 ([#2786](https://github.com/HankHuang0516/EClaw/issues/2786)) ([718a814](https://github.com/HankHuang0516/EClaw/commit/718a814ab16850bc2b33a1b303841e2c4378ecfa)), closes [#2782](https://github.com/HankHuang0516/EClaw/issues/2782) [#2693](https://github.com/HankHuang0516/EClaw/issues/2693)
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **info:** embed promo video at top of Quick Start tab ([#2797](https://github.com/HankHuang0516/EClaw/issues/2797)) ([047679f](https://github.com/HankHuang0516/EClaw/commit/047679fd57ab9949eaeacea414d5611e71afe041))
* **rental:** enforce strict rebind refunds ([#2703](https://github.com/HankHuang0516/EClaw/issues/2703)) ([a1859c5](https://github.com/HankHuang0516/EClaw/commit/a1859c50e6fb3991d7a8051491502d824a14a116))
* **portal:** info-guide-rules + info-guide-soul slide pair ([#2793](https://github.com/HankHuang0516/EClaw/issues/2793)) ([1c8bddc](https://github.com/HankHuang0516/EClaw/commit/1c8bddc4c185054b2b60088498e3d45509117127)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **chat:** link card previews to kanban ([#2754](https://github.com/HankHuang0516/EClaw/issues/2754)) ([2261240](https://github.com/HankHuang0516/EClaw/commit/22612402c2e95efb07246629e81a849be41ee9c7))
* **mission:** link notes to kanban cards ([#2723](https://github.com/HankHuang0516/EClaw/issues/2723)) ([b36dc18](https://github.com/HankHuang0516/EClaw/commit/b36dc18f3a8facf12e0b6046351c222f1e99dc55))
* **mindmap:** mission.html link to /portal/mindmap.html + deprecate /api/mission/mindmap ([#2685](https://github.com/HankHuang0516/EClaw/issues/2685)) ([11e297b](https://github.com/HankHuang0516/EClaw/commit/11e297bab1c9b56fcde3027d6500b7c58891bf18)), closes [#2680](https://github.com/HankHuang0516/EClaw/issues/2680) [#2684](https://github.com/HankHuang0516/EClaw/issues/2684)
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **avatar:** petdx render on card-holder my-cards (Phase 1b) ([#2621](https://github.com/HankHuang0516/EClaw/issues/2621)) ([f78ba8b](https://github.com/HankHuang0516/EClaw/commit/f78ba8b18acc426936ab6d8a82ca7541effea00d))
* **avatar:** petdx render on dashboard entity grid / org chart / bindings (Phase 1b) ([#2622](https://github.com/HankHuang0516/EClaw/issues/2622)) ([f417749](https://github.com/HankHuang0516/EClaw/commit/f41774914451048e8cd76e9ae30416a0642e173b)), closes [#2620](https://github.com/HankHuang0516/EClaw/issues/2620) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621)
* **avatar:** petdx render on kanban auto-assign / pulse / comment avatars (Phase 1b) ([#2624](https://github.com/HankHuang0516/EClaw/issues/2624)) ([6bff5f8](https://github.com/HankHuang0516/EClaw/commit/6bff5f80440d0bd91a6b1721cde9478d685c4d46))
* **avatar:** petdx render on mission skill/rule/soul entity dialogs (Phase 1b) ([#2623](https://github.com/HankHuang0516/EClaw/issues/2623)) ([129327b](https://github.com/HankHuang0516/EClaw/commit/129327bc7b91056659f1ab7e8d5e3f5260d951fb))
* **mindmap:** portal/mindmap.html force-graph prototype ([#129](https://github.com/HankHuang0516/EClaw/issues/129)) ([#2681](https://github.com/HankHuang0516/EClaw/issues/2681)) ([0f15e69](https://github.com/HankHuang0516/EClaw/commit/0f15e6930f0697c37fa08f3219edb8f9e499837f)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **portal:** redo nagoya trip page in professional tour-guide style ([#2691](https://github.com/HankHuang0516/EClaw/issues/2691)) ([b2378c0](https://github.com/HankHuang0516/EClaw/commit/b2378c06ee20fa9cccfdceceb1a4c9e0b3072f59))
* **avatar:** render selected petdx companion in chat avatars ([#2620](https://github.com/HankHuang0516/EClaw/issues/2620)) ([0bdd046](https://github.com/HankHuang0516/EClaw/commit/0bdd046fe1b1c428e32edda366ff112c08927f4c))
* **home:** replace native home with WebView hosting dashboard.html ([#2634](https://github.com/HankHuang0516/EClaw/issues/2634)) ([e69ea81](https://github.com/HankHuang0516/EClaw/commit/e69ea8160c239b083a83d6dc83a4f1c3f901c863))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **chat:** support message deep links ([#2719](https://github.com/HankHuang0516/EClaw/issues/2719)) ([2dc0f1e](https://github.com/HankHuang0516/EClaw/commit/2dc0f1eeb259e1a0848db4a03186b989372cd91c))
* **mission:** support note deep links ([#2717](https://github.com/HankHuang0516/EClaw/issues/2717)) ([2efd3a5](https://github.com/HankHuang0516/EClaw/commit/2efd3a5e741217a07c0b0ac54a0ddd010e0ebe23))
* **share-chat:** twitter card + per-bot og:image/twitter:* in SSR ([#2609](https://github.com/HankHuang0516/EClaw/issues/2609)) ([6cdc853](https://github.com/HankHuang0516/EClaw/commit/6cdc853dc884cdb95bd47214942768981f218ae0))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))
* **settings:** wire petdx avatar into channel-account chips ([#2626](https://github.com/HankHuang0516/EClaw/issues/2626)) ([88aec77](https://github.com/HankHuang0516/EClaw/commit/88aec772628c240e97b336bb5820892ad632d1ae))
* **files:** wire petdx avatar into entity filter & per-file badges ([#2627](https://github.com/HankHuang0516/EClaw/issues/2627)) ([5b3e5cc](https://github.com/HankHuang0516/EClaw/commit/5b3e5cc542d9da69bb4e92500fd03a542ea33f00))
* **mindmap:** wrap hardcoded zh-TW UI strings with i18n t() ([#2607](https://github.com/HankHuang0516/EClaw/issues/2607)) ([166af87](https://github.com/HankHuang0516/EClaw/commit/166af8772b2121a24aaf34a83b3de970e9b3b571)), closes [#2606](https://github.com/HankHuang0516/EClaw/issues/2606)


### Performance Improvements

* **mindmap:** force-graph hardening for 1000/2000-node graphs ([#2684](https://github.com/HankHuang0516/EClaw/issues/2684)) ([da8b1c8](https://github.com/HankHuang0516/EClaw/commit/da8b1c8f947ab8bc8fa455c1962a91146623a1fc))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-14)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **notifications:** add kanban_done + kanban_done_auto toggles to Android Settings ([#2636](https://github.com/HankHuang0516/EClaw/issues/2636)) ([a710909](https://github.com/HankHuang0516/EClaw/commit/a7109095e3393b8564e7ef1b23d382a4fbb944b8))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **i18n:** clear batch 1 residual missing keys ([#2790](https://github.com/HankHuang0516/EClaw/issues/2790)) ([211030e](https://github.com/HankHuang0516/EClaw/commit/211030e0b0b6a865c11f0c4ed60dc4e356d43b7a))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **kanban:** comment input no longer overlaps last comment in card detail (PR [#2678](https://github.com/HankHuang0516/EClaw/issues/2678)) ([fba91fc](https://github.com/HankHuang0516/EClaw/commit/fba91fca15402b453a0db5ee857c0b16e6087055))
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **petdx:** drop dark-grey loading placeholder + preload sprite WEBP ([#2628](https://github.com/HankHuang0516/EClaw/issues/2628)) ([59cef38](https://github.com/HankHuang0516/EClaw/commit/59cef387bd69ca99d7d15c86a1364856d3849ad8)), closes [#1a1a1a](https://github.com/HankHuang0516/EClaw/issues/1a1a1a)
* **entities:** expose botSecret to owner so wallpaper service can poll companions ([#2615](https://github.com/HankHuang0516/EClaw/issues/2615)) ([04470fc](https://github.com/HankHuang0516/EClaw/commit/04470fce8f8c3fce2b1ba8b243e776606f107502))
* **rental:** expose owner_public_code in marketplace so plaza CTA can route ([#2616](https://github.com/HankHuang0516/EClaw/issues/2616)) ([4d1372f](https://github.com/HankHuang0516/EClaw/commit/4d1372f717d93cab65543e87c852e74e9fb67071)), closes [#2610](https://github.com/HankHuang0516/EClaw/issues/2610)
* **mindmap:** fallback to device scope when entityId is null ([#2728](https://github.com/HankHuang0516/EClaw/issues/2728)) ([7572312](https://github.com/HankHuang0516/EClaw/commit/7572312433d3d75fc245eda48a28919ce14bd927))
* **i18n:** fill Spanish drift keys ([#2751](https://github.com/HankHuang0516/EClaw/issues/2751)) ([0ad0ee5](https://github.com/HankHuang0516/EClaw/commit/0ad0ee55f7fac3e6ac46d891539950dab4d553cc))
* **portal:** fit embedded org chart to mobile viewport ([#2674](https://github.com/HankHuang0516/EClaw/issues/2674)) ([1c4e1b4](https://github.com/HankHuang0516/EClaw/commit/1c4e1b413ea7027b4cd4b8ecda981b0d0e12e66b))
* **i18n:** fix 6 trailing-comma syntax errors in 10-locale batch ([#2771](https://github.com/HankHuang0516/EClaw/issues/2771)) ([b27c6ca](https://github.com/HankHuang0516/EClaw/commit/b27c6ca204bf813e406c54ce3a2532a5f1f031b3))
* **uiux:** harden chat previews and roster preview ([#2769](https://github.com/HankHuang0516/EClaw/issues/2769)) ([466d4d3](https://github.com/HankHuang0516/EClaw/commit/466d4d3ef81c628d3f58db64323946053d7bf61c))
* **mention-parser:** ignore @-mentions inside markdown code spans ([#2645](https://github.com/HankHuang0516/EClaw/issues/2645)) ([8da19d4](https://github.com/HankHuang0516/EClaw/commit/8da19d4a79ceb4152bf2144ee0847c61ce3e1def)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **kanban:** lazy-load dependency chips via IntersectionObserver ([#2632](https://github.com/HankHuang0516/EClaw/issues/2632)) ([20586b4](https://github.com/HankHuang0516/EClaw/commit/20586b43357335f9eb6a190c02d58c8e36b58aba)), closes [#2631](https://github.com/HankHuang0516/EClaw/issues/2631)
* **kanban:** make card sorting deterministic ([#2756](https://github.com/HankHuang0516/EClaw/issues/2756)) ([48e2117](https://github.com/HankHuang0516/EClaw/commit/48e2117b64e37f05dc635e0a3b67bfd43cbe48f5))
* **kanban:** notify reviewer on manual /move → review ([#2753](https://github.com/HankHuang0516/EClaw/issues/2753)) ([6cbbb4e](https://github.com/HankHuang0516/EClaw/commit/6cbbb4ee8c0d4d8ad54df2e9b5faaa3699bd530f))
* **wallpaper:** off-load spritesheet fetch to IO so per-petdx sprites actually render ([#2618](https://github.com/HankHuang0516/EClaw/issues/2618)) ([61b832c](https://github.com/HankHuang0516/EClaw/commit/61b832c9fa8a1d0caab810ccc942d85c63349267)), closes [#2615](https://github.com/HankHuang0516/EClaw/issues/2615) [#2577](https://github.com/HankHuang0516/EClaw/issues/2577)
* **portal:** petdx-browser cookie-session fallback for device-login ([#2757](https://github.com/HankHuang0516/EClaw/issues/2757)) ([ca275f4](https://github.com/HankHuang0516/EClaw/commit/ca275f4519835da0c7ad71c588908a18f6f138d8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **i18n:** positional format specifiers for feedback_result_logs (7 locales) ([#2597](https://github.com/HankHuang0516/EClaw/issues/2597)) ([21aedc7](https://github.com/HankHuang0516/EClaw/commit/21aedc7eebc7a2839e340136f38dfdfd4dabb9dc))
* **avatar-petdx:** preserve descriptor across transient API failures (flicker) ([#2625](https://github.com/HankHuang0516/EClaw/issues/2625)) ([7b1c606](https://github.com/HankHuang0516/EClaw/commit/7b1c606514f7698d72ec95cf6c556e4043966186))
* **chat:** preserve scroll anchor while reading history ([#2693](https://github.com/HankHuang0516/EClaw/issues/2693)) ([945fdb7](https://github.com/HankHuang0516/EClaw/commit/945fdb7192b791b31882e1e75568dd8b11e4686f))
* **promo:** pull video embed from /promo-chat-avatar.html ([#2724](https://github.com/HankHuang0516/EClaw/issues/2724)) ([2afabc8](https://github.com/HankHuang0516/EClaw/commit/2afabc8c5ff8b25218a7cb857e8adfa572c8e9d5))
* **kanban:** realign stale recurring schedules ([#2785](https://github.com/HankHuang0516/EClaw/issues/2785)) ([ab8ee25](https://github.com/HankHuang0516/EClaw/commit/ab8ee250a9b37f3d3e838bb01d8866c8d2b78231))
* **portal:** reduce QA-discovered request fanout ([#2656](https://github.com/HankHuang0516/EClaw/issues/2656)) ([1e46d6b](https://github.com/HankHuang0516/EClaw/commit/1e46d6bab61e58c65b452b6503d953f8dddeee75))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **portal:** remove org chart fit scale floor ([#2676](https://github.com/HankHuang0516/EClaw/issues/2676)) ([0f01606](https://github.com/HankHuang0516/EClaw/commit/0f016068b963bb5f800a02f28817c7174979d913))
* **i18n:** rename mm_empty_title → mm_state_empty_title in mindmap.html ([#2683](https://github.com/HankHuang0516/EClaw/issues/2683)) ([c79c109](https://github.com/HankHuang0516/EClaw/commit/c79c109bea23142e8a6d9ace976d105af1280ec9))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **chat:** render mention avatars with companion renderer ([#2633](https://github.com/HankHuang0516/EClaw/issues/2633)) ([03e205f](https://github.com/HankHuang0516/EClaw/commit/03e205f663ecd2c2f443d4009dd5af0093f0bbbb))
* **kanban:** reserve mobile comments panel height ([#2782](https://github.com/HankHuang0516/EClaw/issues/2782)) ([ce8662d](https://github.com/HankHuang0516/EClaw/commit/ce8662d362422fdd25037f1deb61dbed9425e2f9))
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* scheduled audit 2026-05-13 — 6 bugs, XSS, i18n ([#2668](https://github.com/HankHuang0516/EClaw/issues/2668)) ([21dd513](https://github.com/HankHuang0516/EClaw/commit/21dd513b4464738de29164265437435ba6cc4817)), closes [#2605](https://github.com/HankHuang0516/EClaw/issues/2605) [#2608](https://github.com/HankHuang0516/EClaw/issues/2608) [#2600](https://github.com/HankHuang0516/EClaw/issues/2600) [#2599](https://github.com/HankHuang0516/EClaw/issues/2599) [#2598](https://github.com/HankHuang0516/EClaw/issues/2598)
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **chat:** smart-chip preview falls back to inline c.comments when /comments fails (PR [#2677](https://github.com/HankHuang0516/EClaw/issues/2677)) ([7f4dffd](https://github.com/HankHuang0516/EClaw/commit/7f4dffd2c83ea86f296b8fa0610f0e67c9f1af11))
* **kanban:** stabilize comment detail viewport ([#2796](https://github.com/HankHuang0516/EClaw/issues/2796)) ([0a10aad](https://github.com/HankHuang0516/EClaw/commit/0a10aadb5a5b12ff23454c16d5c88183b94ad7d7))
* **wallpaper:** stop Android live wallpaper flashing default lobster on companion change ([#2629](https://github.com/HankHuang0516/EClaw/issues/2629)) ([8b4f66f](https://github.com/HankHuang0516/EClaw/commit/8b4f66fcb335bf43128f924b761b6337c817095b)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **app:** WebView pages honor app-selected locale via ?lang= URL param ([#2672](https://github.com/HankHuang0516/EClaw/issues/2672)) ([8ed8757](https://github.com/HankHuang0516/EClaw/commit/8ed8757aec5bf214e837cc0d81bf2b23f1993a91)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* **community:** 1-click chat button on bot cards + utm tagging ([#2610](https://github.com/HankHuang0516/EClaw/issues/2610)) ([eee97b0](https://github.com/HankHuang0516/EClaw/commit/eee97b0e2e4e74945ec24f218a69a52800b97a66))
* **chat:** add avatar size preference ([#2714](https://github.com/HankHuang0516/EClaw/issues/2714)) ([6fe164a](https://github.com/HankHuang0516/EClaw/commit/6fe164ad8b22fa576d2dd9ad37c0d9fc295b5a83))
* **dashboard:** add Claude and Codex channel guides ([#2640](https://github.com/HankHuang0516/EClaw/issues/2640)) ([c64e4c4](https://github.com/HankHuang0516/EClaw/commit/c64e4c4afc78db58c5cd578f00486dd7b2fd3311))
* **dashboard:** add Claude Code channel guide card ([#2667](https://github.com/HankHuang0516/EClaw/issues/2667)) ([d70d75c](https://github.com/HankHuang0516/EClaw/commit/d70d75c0c8caa8a540358a9aab4556b8c1927a5c))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* **kanban:** add device-scoped card tags ([#2773](https://github.com/HankHuang0516/EClaw/issues/2773)) ([53a387e](https://github.com/HankHuang0516/EClaw/commit/53a387e67ba7bb4f6bed1c427000c4ae8666577a))
* **portal:** add entity selector to petdx-browser ([#2602](https://github.com/HankHuang0516/EClaw/issues/2602)) ([3fa067e](https://github.com/HankHuang0516/EClaw/commit/3fa067e00b38829b48a37cecd33ee81a9a1122d9))
* **kanban:** add explicit card links ([#2721](https://github.com/HankHuang0516/EClaw/issues/2721)) ([ef9f812](https://github.com/HankHuang0516/EClaw/commit/ef9f812a3fcf39efd07fd158ce90951bdd045ac7))
* **kanban:** add explicit done-card reopen flow ([#2801](https://github.com/HankHuang0516/EClaw/issues/2801)) ([5080aac](https://github.com/HankHuang0516/EClaw/commit/5080aacb75047c0deaa379ee708ec85465afd57c))
* **mindmap:** add GET /api/mindmap/graph force-graph projection ([#2680](https://github.com/HankHuang0516/EClaw/issues/2680)) ([a00b2e7](https://github.com/HankHuang0516/EClaw/commit/a00b2e775af2c4c98cd157f760ad87aeeee469f0)), closes [#2679](https://github.com/HankHuang0516/EClaw/issues/2679) [#2679](https://github.com/HankHuang0516/EClaw/issues/2679)
* **dashboard:** add Hermes channel promo card ([#2708](https://github.com/HankHuang0516/EClaw/issues/2708)) ([337aca1](https://github.com/HankHuang0516/EClaw/commit/337aca153d5a1cd7e888c065f00ae54db7872d91))
* **rental:** add listing soft pause ([#2781](https://github.com/HankHuang0516/EClaw/issues/2781)) ([6586b72](https://github.com/HankHuang0516/EClaw/commit/6586b72717ddb1637d91cd3242c8d2ff554f62b4))
* **portal:** add Nagoya 5D4N trip static cross-ref page ([#2689](https://github.com/HankHuang0516/EClaw/issues/2689)) ([2e0efb6](https://github.com/HankHuang0516/EClaw/commit/2e0efb6dcdaff52226cc8854a96747000b12bdff))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **settings:** add rental roster management preview ([#2758](https://github.com/HankHuang0516/EClaw/issues/2758)) ([9706e59](https://github.com/HankHuang0516/EClaw/commit/9706e59ded140a90a6e02348124282bc69d89001))
* **rental:** add renter health chat indicator ([#2690](https://github.com/HankHuang0516/EClaw/issues/2690)) ([36cd2e9](https://github.com/HankHuang0516/EClaw/commit/36cd2e9802be4c7ebb03d3024617fa74aca48ffd))
* **companion:** bridge crafter-station/petdex gallery (1784 pets) ([#2601](https://github.com/HankHuang0516/EClaw/issues/2601)) ([2e245be](https://github.com/HankHuang0516/EClaw/commit/2e245bea6dd47ea7361b927d389188a3c23b6bb3))
* **promo:** chat avatar size feature landing page (self-hosted MP4) ([#2722](https://github.com/HankHuang0516/EClaw/issues/2722)) ([3852210](https://github.com/HankHuang0516/EClaw/commit/3852210d355704d018e3daca6b5f9512a011b210)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **kanban:** cron-spawn jitter + lane backpressure to prevent same-tick wedge ([#2791](https://github.com/HankHuang0516/EClaw/issues/2791)) ([9f414a7](https://github.com/HankHuang0516/EClaw/commit/9f414a731d6393672a0a4189c7b408c529ae5e12)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **promo:** embed daily eclaw video 2026-05-14 ([#2786](https://github.com/HankHuang0516/EClaw/issues/2786)) ([718a814](https://github.com/HankHuang0516/EClaw/commit/718a814ab16850bc2b33a1b303841e2c4378ecfa)), closes [#2782](https://github.com/HankHuang0516/EClaw/issues/2782) [#2693](https://github.com/HankHuang0516/EClaw/issues/2693)
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **info:** embed promo video at top of Quick Start tab ([#2797](https://github.com/HankHuang0516/EClaw/issues/2797)) ([047679f](https://github.com/HankHuang0516/EClaw/commit/047679fd57ab9949eaeacea414d5611e71afe041))
* **rental:** enforce strict rebind refunds ([#2703](https://github.com/HankHuang0516/EClaw/issues/2703)) ([a1859c5](https://github.com/HankHuang0516/EClaw/commit/a1859c50e6fb3991d7a8051491502d824a14a116))
* **portal:** info-guide-rules + info-guide-soul slide pair ([#2793](https://github.com/HankHuang0516/EClaw/issues/2793)) ([1c8bddc](https://github.com/HankHuang0516/EClaw/commit/1c8bddc4c185054b2b60088498e3d45509117127)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **chat:** link card previews to kanban ([#2754](https://github.com/HankHuang0516/EClaw/issues/2754)) ([2261240](https://github.com/HankHuang0516/EClaw/commit/22612402c2e95efb07246629e81a849be41ee9c7))
* **mission:** link notes to kanban cards ([#2723](https://github.com/HankHuang0516/EClaw/issues/2723)) ([b36dc18](https://github.com/HankHuang0516/EClaw/commit/b36dc18f3a8facf12e0b6046351c222f1e99dc55))
* **mindmap:** mission.html link to /portal/mindmap.html + deprecate /api/mission/mindmap ([#2685](https://github.com/HankHuang0516/EClaw/issues/2685)) ([11e297b](https://github.com/HankHuang0516/EClaw/commit/11e297bab1c9b56fcde3027d6500b7c58891bf18)), closes [#2680](https://github.com/HankHuang0516/EClaw/issues/2680) [#2684](https://github.com/HankHuang0516/EClaw/issues/2684)
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **avatar:** petdx render on card-holder my-cards (Phase 1b) ([#2621](https://github.com/HankHuang0516/EClaw/issues/2621)) ([f78ba8b](https://github.com/HankHuang0516/EClaw/commit/f78ba8b18acc426936ab6d8a82ca7541effea00d))
* **avatar:** petdx render on dashboard entity grid / org chart / bindings (Phase 1b) ([#2622](https://github.com/HankHuang0516/EClaw/issues/2622)) ([f417749](https://github.com/HankHuang0516/EClaw/commit/f41774914451048e8cd76e9ae30416a0642e173b)), closes [#2620](https://github.com/HankHuang0516/EClaw/issues/2620) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621)
* **avatar:** petdx render on kanban auto-assign / pulse / comment avatars (Phase 1b) ([#2624](https://github.com/HankHuang0516/EClaw/issues/2624)) ([6bff5f8](https://github.com/HankHuang0516/EClaw/commit/6bff5f80440d0bd91a6b1721cde9478d685c4d46))
* **avatar:** petdx render on mission skill/rule/soul entity dialogs (Phase 1b) ([#2623](https://github.com/HankHuang0516/EClaw/issues/2623)) ([129327b](https://github.com/HankHuang0516/EClaw/commit/129327bc7b91056659f1ab7e8d5e3f5260d951fb))
* **mindmap:** portal/mindmap.html force-graph prototype ([#129](https://github.com/HankHuang0516/EClaw/issues/129)) ([#2681](https://github.com/HankHuang0516/EClaw/issues/2681)) ([0f15e69](https://github.com/HankHuang0516/EClaw/commit/0f15e6930f0697c37fa08f3219edb8f9e499837f)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **portal:** redo nagoya trip page in professional tour-guide style ([#2691](https://github.com/HankHuang0516/EClaw/issues/2691)) ([b2378c0](https://github.com/HankHuang0516/EClaw/commit/b2378c06ee20fa9cccfdceceb1a4c9e0b3072f59))
* **avatar:** render selected petdx companion in chat avatars ([#2620](https://github.com/HankHuang0516/EClaw/issues/2620)) ([0bdd046](https://github.com/HankHuang0516/EClaw/commit/0bdd046fe1b1c428e32edda366ff112c08927f4c))
* **home:** replace native home with WebView hosting dashboard.html ([#2634](https://github.com/HankHuang0516/EClaw/issues/2634)) ([e69ea81](https://github.com/HankHuang0516/EClaw/commit/e69ea8160c239b083a83d6dc83a4f1c3f901c863))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **chat:** support message deep links ([#2719](https://github.com/HankHuang0516/EClaw/issues/2719)) ([2dc0f1e](https://github.com/HankHuang0516/EClaw/commit/2dc0f1eeb259e1a0848db4a03186b989372cd91c))
* **mission:** support note deep links ([#2717](https://github.com/HankHuang0516/EClaw/issues/2717)) ([2efd3a5](https://github.com/HankHuang0516/EClaw/commit/2efd3a5e741217a07c0b0ac54a0ddd010e0ebe23))
* **share-chat:** twitter card + per-bot og:image/twitter:* in SSR ([#2609](https://github.com/HankHuang0516/EClaw/issues/2609)) ([6cdc853](https://github.com/HankHuang0516/EClaw/commit/6cdc853dc884cdb95bd47214942768981f218ae0))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))
* **settings:** wire petdx avatar into channel-account chips ([#2626](https://github.com/HankHuang0516/EClaw/issues/2626)) ([88aec77](https://github.com/HankHuang0516/EClaw/commit/88aec772628c240e97b336bb5820892ad632d1ae))
* **files:** wire petdx avatar into entity filter & per-file badges ([#2627](https://github.com/HankHuang0516/EClaw/issues/2627)) ([5b3e5cc](https://github.com/HankHuang0516/EClaw/commit/5b3e5cc542d9da69bb4e92500fd03a542ea33f00))
* **mindmap:** wrap hardcoded zh-TW UI strings with i18n t() ([#2607](https://github.com/HankHuang0516/EClaw/issues/2607)) ([166af87](https://github.com/HankHuang0516/EClaw/commit/166af8772b2121a24aaf34a83b3de970e9b3b571)), closes [#2606](https://github.com/HankHuang0516/EClaw/issues/2606)


### Performance Improvements

* **mindmap:** force-graph hardening for 1000/2000-node graphs ([#2684](https://github.com/HankHuang0516/EClaw/issues/2684)) ([da8b1c8](https://github.com/HankHuang0516/EClaw/commit/da8b1c8f947ab8bc8fa455c1962a91146623a1fc))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-14)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **notifications:** add kanban_done + kanban_done_auto toggles to Android Settings ([#2636](https://github.com/HankHuang0516/EClaw/issues/2636)) ([a710909](https://github.com/HankHuang0516/EClaw/commit/a7109095e3393b8564e7ef1b23d382a4fbb944b8))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **i18n:** clear batch 1 residual missing keys ([#2790](https://github.com/HankHuang0516/EClaw/issues/2790)) ([211030e](https://github.com/HankHuang0516/EClaw/commit/211030e0b0b6a865c11f0c4ed60dc4e356d43b7a))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **kanban:** comment input no longer overlaps last comment in card detail (PR [#2678](https://github.com/HankHuang0516/EClaw/issues/2678)) ([fba91fc](https://github.com/HankHuang0516/EClaw/commit/fba91fca15402b453a0db5ee857c0b16e6087055))
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **petdx:** drop dark-grey loading placeholder + preload sprite WEBP ([#2628](https://github.com/HankHuang0516/EClaw/issues/2628)) ([59cef38](https://github.com/HankHuang0516/EClaw/commit/59cef387bd69ca99d7d15c86a1364856d3849ad8)), closes [#1a1a1a](https://github.com/HankHuang0516/EClaw/issues/1a1a1a)
* **entities:** expose botSecret to owner so wallpaper service can poll companions ([#2615](https://github.com/HankHuang0516/EClaw/issues/2615)) ([04470fc](https://github.com/HankHuang0516/EClaw/commit/04470fce8f8c3fce2b1ba8b243e776606f107502))
* **rental:** expose owner_public_code in marketplace so plaza CTA can route ([#2616](https://github.com/HankHuang0516/EClaw/issues/2616)) ([4d1372f](https://github.com/HankHuang0516/EClaw/commit/4d1372f717d93cab65543e87c852e74e9fb67071)), closes [#2610](https://github.com/HankHuang0516/EClaw/issues/2610)
* **mindmap:** fallback to device scope when entityId is null ([#2728](https://github.com/HankHuang0516/EClaw/issues/2728)) ([7572312](https://github.com/HankHuang0516/EClaw/commit/7572312433d3d75fc245eda48a28919ce14bd927))
* **i18n:** fill Spanish drift keys ([#2751](https://github.com/HankHuang0516/EClaw/issues/2751)) ([0ad0ee5](https://github.com/HankHuang0516/EClaw/commit/0ad0ee55f7fac3e6ac46d891539950dab4d553cc))
* **portal:** fit embedded org chart to mobile viewport ([#2674](https://github.com/HankHuang0516/EClaw/issues/2674)) ([1c4e1b4](https://github.com/HankHuang0516/EClaw/commit/1c4e1b413ea7027b4cd4b8ecda981b0d0e12e66b))
* **i18n:** fix 6 trailing-comma syntax errors in 10-locale batch ([#2771](https://github.com/HankHuang0516/EClaw/issues/2771)) ([b27c6ca](https://github.com/HankHuang0516/EClaw/commit/b27c6ca204bf813e406c54ce3a2532a5f1f031b3))
* **uiux:** harden chat previews and roster preview ([#2769](https://github.com/HankHuang0516/EClaw/issues/2769)) ([466d4d3](https://github.com/HankHuang0516/EClaw/commit/466d4d3ef81c628d3f58db64323946053d7bf61c))
* **mention-parser:** ignore @-mentions inside markdown code spans ([#2645](https://github.com/HankHuang0516/EClaw/issues/2645)) ([8da19d4](https://github.com/HankHuang0516/EClaw/commit/8da19d4a79ceb4152bf2144ee0847c61ce3e1def)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **kanban:** lazy-load dependency chips via IntersectionObserver ([#2632](https://github.com/HankHuang0516/EClaw/issues/2632)) ([20586b4](https://github.com/HankHuang0516/EClaw/commit/20586b43357335f9eb6a190c02d58c8e36b58aba)), closes [#2631](https://github.com/HankHuang0516/EClaw/issues/2631)
* **kanban:** make card sorting deterministic ([#2756](https://github.com/HankHuang0516/EClaw/issues/2756)) ([48e2117](https://github.com/HankHuang0516/EClaw/commit/48e2117b64e37f05dc635e0a3b67bfd43cbe48f5))
* **kanban:** notify reviewer on manual /move → review ([#2753](https://github.com/HankHuang0516/EClaw/issues/2753)) ([6cbbb4e](https://github.com/HankHuang0516/EClaw/commit/6cbbb4ee8c0d4d8ad54df2e9b5faaa3699bd530f))
* **wallpaper:** off-load spritesheet fetch to IO so per-petdx sprites actually render ([#2618](https://github.com/HankHuang0516/EClaw/issues/2618)) ([61b832c](https://github.com/HankHuang0516/EClaw/commit/61b832c9fa8a1d0caab810ccc942d85c63349267)), closes [#2615](https://github.com/HankHuang0516/EClaw/issues/2615) [#2577](https://github.com/HankHuang0516/EClaw/issues/2577)
* **portal:** petdx-browser cookie-session fallback for device-login ([#2757](https://github.com/HankHuang0516/EClaw/issues/2757)) ([ca275f4](https://github.com/HankHuang0516/EClaw/commit/ca275f4519835da0c7ad71c588908a18f6f138d8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **i18n:** positional format specifiers for feedback_result_logs (7 locales) ([#2597](https://github.com/HankHuang0516/EClaw/issues/2597)) ([21aedc7](https://github.com/HankHuang0516/EClaw/commit/21aedc7eebc7a2839e340136f38dfdfd4dabb9dc))
* **avatar-petdx:** preserve descriptor across transient API failures (flicker) ([#2625](https://github.com/HankHuang0516/EClaw/issues/2625)) ([7b1c606](https://github.com/HankHuang0516/EClaw/commit/7b1c606514f7698d72ec95cf6c556e4043966186))
* **chat:** preserve scroll anchor while reading history ([#2693](https://github.com/HankHuang0516/EClaw/issues/2693)) ([945fdb7](https://github.com/HankHuang0516/EClaw/commit/945fdb7192b791b31882e1e75568dd8b11e4686f))
* **promo:** pull video embed from /promo-chat-avatar.html ([#2724](https://github.com/HankHuang0516/EClaw/issues/2724)) ([2afabc8](https://github.com/HankHuang0516/EClaw/commit/2afabc8c5ff8b25218a7cb857e8adfa572c8e9d5))
* **kanban:** realign stale recurring schedules ([#2785](https://github.com/HankHuang0516/EClaw/issues/2785)) ([ab8ee25](https://github.com/HankHuang0516/EClaw/commit/ab8ee250a9b37f3d3e838bb01d8866c8d2b78231))
* **portal:** reduce QA-discovered request fanout ([#2656](https://github.com/HankHuang0516/EClaw/issues/2656)) ([1e46d6b](https://github.com/HankHuang0516/EClaw/commit/1e46d6bab61e58c65b452b6503d953f8dddeee75))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **portal:** remove org chart fit scale floor ([#2676](https://github.com/HankHuang0516/EClaw/issues/2676)) ([0f01606](https://github.com/HankHuang0516/EClaw/commit/0f016068b963bb5f800a02f28817c7174979d913))
* **i18n:** rename mm_empty_title → mm_state_empty_title in mindmap.html ([#2683](https://github.com/HankHuang0516/EClaw/issues/2683)) ([c79c109](https://github.com/HankHuang0516/EClaw/commit/c79c109bea23142e8a6d9ace976d105af1280ec9))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **chat:** render mention avatars with companion renderer ([#2633](https://github.com/HankHuang0516/EClaw/issues/2633)) ([03e205f](https://github.com/HankHuang0516/EClaw/commit/03e205f663ecd2c2f443d4009dd5af0093f0bbbb))
* **kanban:** reserve mobile comments panel height ([#2782](https://github.com/HankHuang0516/EClaw/issues/2782)) ([ce8662d](https://github.com/HankHuang0516/EClaw/commit/ce8662d362422fdd25037f1deb61dbed9425e2f9))
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* scheduled audit 2026-05-13 — 6 bugs, XSS, i18n ([#2668](https://github.com/HankHuang0516/EClaw/issues/2668)) ([21dd513](https://github.com/HankHuang0516/EClaw/commit/21dd513b4464738de29164265437435ba6cc4817)), closes [#2605](https://github.com/HankHuang0516/EClaw/issues/2605) [#2608](https://github.com/HankHuang0516/EClaw/issues/2608) [#2600](https://github.com/HankHuang0516/EClaw/issues/2600) [#2599](https://github.com/HankHuang0516/EClaw/issues/2599) [#2598](https://github.com/HankHuang0516/EClaw/issues/2598)
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **chat:** smart-chip preview falls back to inline c.comments when /comments fails (PR [#2677](https://github.com/HankHuang0516/EClaw/issues/2677)) ([7f4dffd](https://github.com/HankHuang0516/EClaw/commit/7f4dffd2c83ea86f296b8fa0610f0e67c9f1af11))
* **kanban:** stabilize comment detail viewport ([#2796](https://github.com/HankHuang0516/EClaw/issues/2796)) ([0a10aad](https://github.com/HankHuang0516/EClaw/commit/0a10aadb5a5b12ff23454c16d5c88183b94ad7d7))
* **wallpaper:** stop Android live wallpaper flashing default lobster on companion change ([#2629](https://github.com/HankHuang0516/EClaw/issues/2629)) ([8b4f66f](https://github.com/HankHuang0516/EClaw/commit/8b4f66fcb335bf43128f924b761b6337c817095b)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **app:** WebView pages honor app-selected locale via ?lang= URL param ([#2672](https://github.com/HankHuang0516/EClaw/issues/2672)) ([8ed8757](https://github.com/HankHuang0516/EClaw/commit/8ed8757aec5bf214e837cc0d81bf2b23f1993a91)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* **community:** 1-click chat button on bot cards + utm tagging ([#2610](https://github.com/HankHuang0516/EClaw/issues/2610)) ([eee97b0](https://github.com/HankHuang0516/EClaw/commit/eee97b0e2e4e74945ec24f218a69a52800b97a66))
* **chat:** add avatar size preference ([#2714](https://github.com/HankHuang0516/EClaw/issues/2714)) ([6fe164a](https://github.com/HankHuang0516/EClaw/commit/6fe164ad8b22fa576d2dd9ad37c0d9fc295b5a83))
* **dashboard:** add Claude and Codex channel guides ([#2640](https://github.com/HankHuang0516/EClaw/issues/2640)) ([c64e4c4](https://github.com/HankHuang0516/EClaw/commit/c64e4c4afc78db58c5cd578f00486dd7b2fd3311))
* **dashboard:** add Claude Code channel guide card ([#2667](https://github.com/HankHuang0516/EClaw/issues/2667)) ([d70d75c](https://github.com/HankHuang0516/EClaw/commit/d70d75c0c8caa8a540358a9aab4556b8c1927a5c))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* **kanban:** add device-scoped card tags ([#2773](https://github.com/HankHuang0516/EClaw/issues/2773)) ([53a387e](https://github.com/HankHuang0516/EClaw/commit/53a387e67ba7bb4f6bed1c427000c4ae8666577a))
* **portal:** add entity selector to petdx-browser ([#2602](https://github.com/HankHuang0516/EClaw/issues/2602)) ([3fa067e](https://github.com/HankHuang0516/EClaw/commit/3fa067e00b38829b48a37cecd33ee81a9a1122d9))
* **kanban:** add explicit card links ([#2721](https://github.com/HankHuang0516/EClaw/issues/2721)) ([ef9f812](https://github.com/HankHuang0516/EClaw/commit/ef9f812a3fcf39efd07fd158ce90951bdd045ac7))
* **kanban:** add explicit done-card reopen flow ([#2801](https://github.com/HankHuang0516/EClaw/issues/2801)) ([5080aac](https://github.com/HankHuang0516/EClaw/commit/5080aacb75047c0deaa379ee708ec85465afd57c))
* **mindmap:** add GET /api/mindmap/graph force-graph projection ([#2680](https://github.com/HankHuang0516/EClaw/issues/2680)) ([a00b2e7](https://github.com/HankHuang0516/EClaw/commit/a00b2e775af2c4c98cd157f760ad87aeeee469f0)), closes [#2679](https://github.com/HankHuang0516/EClaw/issues/2679) [#2679](https://github.com/HankHuang0516/EClaw/issues/2679)
* **dashboard:** add Hermes channel promo card ([#2708](https://github.com/HankHuang0516/EClaw/issues/2708)) ([337aca1](https://github.com/HankHuang0516/EClaw/commit/337aca153d5a1cd7e888c065f00ae54db7872d91))
* **rental:** add listing soft pause ([#2781](https://github.com/HankHuang0516/EClaw/issues/2781)) ([6586b72](https://github.com/HankHuang0516/EClaw/commit/6586b72717ddb1637d91cd3242c8d2ff554f62b4))
* **portal:** add Nagoya 5D4N trip static cross-ref page ([#2689](https://github.com/HankHuang0516/EClaw/issues/2689)) ([2e0efb6](https://github.com/HankHuang0516/EClaw/commit/2e0efb6dcdaff52226cc8854a96747000b12bdff))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **settings:** add rental roster management preview ([#2758](https://github.com/HankHuang0516/EClaw/issues/2758)) ([9706e59](https://github.com/HankHuang0516/EClaw/commit/9706e59ded140a90a6e02348124282bc69d89001))
* **rental:** add renter health chat indicator ([#2690](https://github.com/HankHuang0516/EClaw/issues/2690)) ([36cd2e9](https://github.com/HankHuang0516/EClaw/commit/36cd2e9802be4c7ebb03d3024617fa74aca48ffd))
* **companion:** bridge crafter-station/petdex gallery (1784 pets) ([#2601](https://github.com/HankHuang0516/EClaw/issues/2601)) ([2e245be](https://github.com/HankHuang0516/EClaw/commit/2e245bea6dd47ea7361b927d389188a3c23b6bb3))
* **promo:** chat avatar size feature landing page (self-hosted MP4) ([#2722](https://github.com/HankHuang0516/EClaw/issues/2722)) ([3852210](https://github.com/HankHuang0516/EClaw/commit/3852210d355704d018e3daca6b5f9512a011b210)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **kanban:** cron-spawn jitter + lane backpressure to prevent same-tick wedge ([#2791](https://github.com/HankHuang0516/EClaw/issues/2791)) ([9f414a7](https://github.com/HankHuang0516/EClaw/commit/9f414a731d6393672a0a4189c7b408c529ae5e12)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **promo:** embed daily eclaw video 2026-05-14 ([#2786](https://github.com/HankHuang0516/EClaw/issues/2786)) ([718a814](https://github.com/HankHuang0516/EClaw/commit/718a814ab16850bc2b33a1b303841e2c4378ecfa)), closes [#2782](https://github.com/HankHuang0516/EClaw/issues/2782) [#2693](https://github.com/HankHuang0516/EClaw/issues/2693)
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **rental:** enforce strict rebind refunds ([#2703](https://github.com/HankHuang0516/EClaw/issues/2703)) ([a1859c5](https://github.com/HankHuang0516/EClaw/commit/a1859c50e6fb3991d7a8051491502d824a14a116))
* **portal:** info-guide-rules + info-guide-soul slide pair ([#2793](https://github.com/HankHuang0516/EClaw/issues/2793)) ([1c8bddc](https://github.com/HankHuang0516/EClaw/commit/1c8bddc4c185054b2b60088498e3d45509117127)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **chat:** link card previews to kanban ([#2754](https://github.com/HankHuang0516/EClaw/issues/2754)) ([2261240](https://github.com/HankHuang0516/EClaw/commit/22612402c2e95efb07246629e81a849be41ee9c7))
* **mission:** link notes to kanban cards ([#2723](https://github.com/HankHuang0516/EClaw/issues/2723)) ([b36dc18](https://github.com/HankHuang0516/EClaw/commit/b36dc18f3a8facf12e0b6046351c222f1e99dc55))
* **mindmap:** mission.html link to /portal/mindmap.html + deprecate /api/mission/mindmap ([#2685](https://github.com/HankHuang0516/EClaw/issues/2685)) ([11e297b](https://github.com/HankHuang0516/EClaw/commit/11e297bab1c9b56fcde3027d6500b7c58891bf18)), closes [#2680](https://github.com/HankHuang0516/EClaw/issues/2680) [#2684](https://github.com/HankHuang0516/EClaw/issues/2684)
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **avatar:** petdx render on card-holder my-cards (Phase 1b) ([#2621](https://github.com/HankHuang0516/EClaw/issues/2621)) ([f78ba8b](https://github.com/HankHuang0516/EClaw/commit/f78ba8b18acc426936ab6d8a82ca7541effea00d))
* **avatar:** petdx render on dashboard entity grid / org chart / bindings (Phase 1b) ([#2622](https://github.com/HankHuang0516/EClaw/issues/2622)) ([f417749](https://github.com/HankHuang0516/EClaw/commit/f41774914451048e8cd76e9ae30416a0642e173b)), closes [#2620](https://github.com/HankHuang0516/EClaw/issues/2620) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621)
* **avatar:** petdx render on kanban auto-assign / pulse / comment avatars (Phase 1b) ([#2624](https://github.com/HankHuang0516/EClaw/issues/2624)) ([6bff5f8](https://github.com/HankHuang0516/EClaw/commit/6bff5f80440d0bd91a6b1721cde9478d685c4d46))
* **avatar:** petdx render on mission skill/rule/soul entity dialogs (Phase 1b) ([#2623](https://github.com/HankHuang0516/EClaw/issues/2623)) ([129327b](https://github.com/HankHuang0516/EClaw/commit/129327bc7b91056659f1ab7e8d5e3f5260d951fb))
* **mindmap:** portal/mindmap.html force-graph prototype ([#129](https://github.com/HankHuang0516/EClaw/issues/129)) ([#2681](https://github.com/HankHuang0516/EClaw/issues/2681)) ([0f15e69](https://github.com/HankHuang0516/EClaw/commit/0f15e6930f0697c37fa08f3219edb8f9e499837f)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **portal:** redo nagoya trip page in professional tour-guide style ([#2691](https://github.com/HankHuang0516/EClaw/issues/2691)) ([b2378c0](https://github.com/HankHuang0516/EClaw/commit/b2378c06ee20fa9cccfdceceb1a4c9e0b3072f59))
* **avatar:** render selected petdx companion in chat avatars ([#2620](https://github.com/HankHuang0516/EClaw/issues/2620)) ([0bdd046](https://github.com/HankHuang0516/EClaw/commit/0bdd046fe1b1c428e32edda366ff112c08927f4c))
* **home:** replace native home with WebView hosting dashboard.html ([#2634](https://github.com/HankHuang0516/EClaw/issues/2634)) ([e69ea81](https://github.com/HankHuang0516/EClaw/commit/e69ea8160c239b083a83d6dc83a4f1c3f901c863))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **chat:** support message deep links ([#2719](https://github.com/HankHuang0516/EClaw/issues/2719)) ([2dc0f1e](https://github.com/HankHuang0516/EClaw/commit/2dc0f1eeb259e1a0848db4a03186b989372cd91c))
* **mission:** support note deep links ([#2717](https://github.com/HankHuang0516/EClaw/issues/2717)) ([2efd3a5](https://github.com/HankHuang0516/EClaw/commit/2efd3a5e741217a07c0b0ac54a0ddd010e0ebe23))
* **share-chat:** twitter card + per-bot og:image/twitter:* in SSR ([#2609](https://github.com/HankHuang0516/EClaw/issues/2609)) ([6cdc853](https://github.com/HankHuang0516/EClaw/commit/6cdc853dc884cdb95bd47214942768981f218ae0))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))
* **settings:** wire petdx avatar into channel-account chips ([#2626](https://github.com/HankHuang0516/EClaw/issues/2626)) ([88aec77](https://github.com/HankHuang0516/EClaw/commit/88aec772628c240e97b336bb5820892ad632d1ae))
* **files:** wire petdx avatar into entity filter & per-file badges ([#2627](https://github.com/HankHuang0516/EClaw/issues/2627)) ([5b3e5cc](https://github.com/HankHuang0516/EClaw/commit/5b3e5cc542d9da69bb4e92500fd03a542ea33f00))
* **mindmap:** wrap hardcoded zh-TW UI strings with i18n t() ([#2607](https://github.com/HankHuang0516/EClaw/issues/2607)) ([166af87](https://github.com/HankHuang0516/EClaw/commit/166af8772b2121a24aaf34a83b3de970e9b3b571)), closes [#2606](https://github.com/HankHuang0516/EClaw/issues/2606)


### Performance Improvements

* **mindmap:** force-graph hardening for 1000/2000-node graphs ([#2684](https://github.com/HankHuang0516/EClaw/issues/2684)) ([da8b1c8](https://github.com/HankHuang0516/EClaw/commit/da8b1c8f947ab8bc8fa455c1962a91146623a1fc))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-14)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **notifications:** add kanban_done + kanban_done_auto toggles to Android Settings ([#2636](https://github.com/HankHuang0516/EClaw/issues/2636)) ([a710909](https://github.com/HankHuang0516/EClaw/commit/a7109095e3393b8564e7ef1b23d382a4fbb944b8))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **i18n:** clear batch 1 residual missing keys ([#2790](https://github.com/HankHuang0516/EClaw/issues/2790)) ([211030e](https://github.com/HankHuang0516/EClaw/commit/211030e0b0b6a865c11f0c4ed60dc4e356d43b7a))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **kanban:** comment input no longer overlaps last comment in card detail (PR [#2678](https://github.com/HankHuang0516/EClaw/issues/2678)) ([fba91fc](https://github.com/HankHuang0516/EClaw/commit/fba91fca15402b453a0db5ee857c0b16e6087055))
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **petdx:** drop dark-grey loading placeholder + preload sprite WEBP ([#2628](https://github.com/HankHuang0516/EClaw/issues/2628)) ([59cef38](https://github.com/HankHuang0516/EClaw/commit/59cef387bd69ca99d7d15c86a1364856d3849ad8)), closes [#1a1a1a](https://github.com/HankHuang0516/EClaw/issues/1a1a1a)
* **entities:** expose botSecret to owner so wallpaper service can poll companions ([#2615](https://github.com/HankHuang0516/EClaw/issues/2615)) ([04470fc](https://github.com/HankHuang0516/EClaw/commit/04470fce8f8c3fce2b1ba8b243e776606f107502))
* **rental:** expose owner_public_code in marketplace so plaza CTA can route ([#2616](https://github.com/HankHuang0516/EClaw/issues/2616)) ([4d1372f](https://github.com/HankHuang0516/EClaw/commit/4d1372f717d93cab65543e87c852e74e9fb67071)), closes [#2610](https://github.com/HankHuang0516/EClaw/issues/2610)
* **mindmap:** fallback to device scope when entityId is null ([#2728](https://github.com/HankHuang0516/EClaw/issues/2728)) ([7572312](https://github.com/HankHuang0516/EClaw/commit/7572312433d3d75fc245eda48a28919ce14bd927))
* **i18n:** fill Spanish drift keys ([#2751](https://github.com/HankHuang0516/EClaw/issues/2751)) ([0ad0ee5](https://github.com/HankHuang0516/EClaw/commit/0ad0ee55f7fac3e6ac46d891539950dab4d553cc))
* **portal:** fit embedded org chart to mobile viewport ([#2674](https://github.com/HankHuang0516/EClaw/issues/2674)) ([1c4e1b4](https://github.com/HankHuang0516/EClaw/commit/1c4e1b413ea7027b4cd4b8ecda981b0d0e12e66b))
* **i18n:** fix 6 trailing-comma syntax errors in 10-locale batch ([#2771](https://github.com/HankHuang0516/EClaw/issues/2771)) ([b27c6ca](https://github.com/HankHuang0516/EClaw/commit/b27c6ca204bf813e406c54ce3a2532a5f1f031b3))
* **uiux:** harden chat previews and roster preview ([#2769](https://github.com/HankHuang0516/EClaw/issues/2769)) ([466d4d3](https://github.com/HankHuang0516/EClaw/commit/466d4d3ef81c628d3f58db64323946053d7bf61c))
* **mention-parser:** ignore @-mentions inside markdown code spans ([#2645](https://github.com/HankHuang0516/EClaw/issues/2645)) ([8da19d4](https://github.com/HankHuang0516/EClaw/commit/8da19d4a79ceb4152bf2144ee0847c61ce3e1def)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **kanban:** lazy-load dependency chips via IntersectionObserver ([#2632](https://github.com/HankHuang0516/EClaw/issues/2632)) ([20586b4](https://github.com/HankHuang0516/EClaw/commit/20586b43357335f9eb6a190c02d58c8e36b58aba)), closes [#2631](https://github.com/HankHuang0516/EClaw/issues/2631)
* **kanban:** make card sorting deterministic ([#2756](https://github.com/HankHuang0516/EClaw/issues/2756)) ([48e2117](https://github.com/HankHuang0516/EClaw/commit/48e2117b64e37f05dc635e0a3b67bfd43cbe48f5))
* **kanban:** notify reviewer on manual /move → review ([#2753](https://github.com/HankHuang0516/EClaw/issues/2753)) ([6cbbb4e](https://github.com/HankHuang0516/EClaw/commit/6cbbb4ee8c0d4d8ad54df2e9b5faaa3699bd530f))
* **wallpaper:** off-load spritesheet fetch to IO so per-petdx sprites actually render ([#2618](https://github.com/HankHuang0516/EClaw/issues/2618)) ([61b832c](https://github.com/HankHuang0516/EClaw/commit/61b832c9fa8a1d0caab810ccc942d85c63349267)), closes [#2615](https://github.com/HankHuang0516/EClaw/issues/2615) [#2577](https://github.com/HankHuang0516/EClaw/issues/2577)
* **portal:** petdx-browser cookie-session fallback for device-login ([#2757](https://github.com/HankHuang0516/EClaw/issues/2757)) ([ca275f4](https://github.com/HankHuang0516/EClaw/commit/ca275f4519835da0c7ad71c588908a18f6f138d8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **i18n:** positional format specifiers for feedback_result_logs (7 locales) ([#2597](https://github.com/HankHuang0516/EClaw/issues/2597)) ([21aedc7](https://github.com/HankHuang0516/EClaw/commit/21aedc7eebc7a2839e340136f38dfdfd4dabb9dc))
* **avatar-petdx:** preserve descriptor across transient API failures (flicker) ([#2625](https://github.com/HankHuang0516/EClaw/issues/2625)) ([7b1c606](https://github.com/HankHuang0516/EClaw/commit/7b1c606514f7698d72ec95cf6c556e4043966186))
* **chat:** preserve scroll anchor while reading history ([#2693](https://github.com/HankHuang0516/EClaw/issues/2693)) ([945fdb7](https://github.com/HankHuang0516/EClaw/commit/945fdb7192b791b31882e1e75568dd8b11e4686f))
* **promo:** pull video embed from /promo-chat-avatar.html ([#2724](https://github.com/HankHuang0516/EClaw/issues/2724)) ([2afabc8](https://github.com/HankHuang0516/EClaw/commit/2afabc8c5ff8b25218a7cb857e8adfa572c8e9d5))
* **kanban:** realign stale recurring schedules ([#2785](https://github.com/HankHuang0516/EClaw/issues/2785)) ([ab8ee25](https://github.com/HankHuang0516/EClaw/commit/ab8ee250a9b37f3d3e838bb01d8866c8d2b78231))
* **portal:** reduce QA-discovered request fanout ([#2656](https://github.com/HankHuang0516/EClaw/issues/2656)) ([1e46d6b](https://github.com/HankHuang0516/EClaw/commit/1e46d6bab61e58c65b452b6503d953f8dddeee75))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **portal:** remove org chart fit scale floor ([#2676](https://github.com/HankHuang0516/EClaw/issues/2676)) ([0f01606](https://github.com/HankHuang0516/EClaw/commit/0f016068b963bb5f800a02f28817c7174979d913))
* **i18n:** rename mm_empty_title → mm_state_empty_title in mindmap.html ([#2683](https://github.com/HankHuang0516/EClaw/issues/2683)) ([c79c109](https://github.com/HankHuang0516/EClaw/commit/c79c109bea23142e8a6d9ace976d105af1280ec9))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **chat:** render mention avatars with companion renderer ([#2633](https://github.com/HankHuang0516/EClaw/issues/2633)) ([03e205f](https://github.com/HankHuang0516/EClaw/commit/03e205f663ecd2c2f443d4009dd5af0093f0bbbb))
* **kanban:** reserve mobile comments panel height ([#2782](https://github.com/HankHuang0516/EClaw/issues/2782)) ([ce8662d](https://github.com/HankHuang0516/EClaw/commit/ce8662d362422fdd25037f1deb61dbed9425e2f9))
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* scheduled audit 2026-05-13 — 6 bugs, XSS, i18n ([#2668](https://github.com/HankHuang0516/EClaw/issues/2668)) ([21dd513](https://github.com/HankHuang0516/EClaw/commit/21dd513b4464738de29164265437435ba6cc4817)), closes [#2605](https://github.com/HankHuang0516/EClaw/issues/2605) [#2608](https://github.com/HankHuang0516/EClaw/issues/2608) [#2600](https://github.com/HankHuang0516/EClaw/issues/2600) [#2599](https://github.com/HankHuang0516/EClaw/issues/2599) [#2598](https://github.com/HankHuang0516/EClaw/issues/2598)
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **chat:** smart-chip preview falls back to inline c.comments when /comments fails (PR [#2677](https://github.com/HankHuang0516/EClaw/issues/2677)) ([7f4dffd](https://github.com/HankHuang0516/EClaw/commit/7f4dffd2c83ea86f296b8fa0610f0e67c9f1af11))
* **kanban:** stabilize comment detail viewport ([#2796](https://github.com/HankHuang0516/EClaw/issues/2796)) ([0a10aad](https://github.com/HankHuang0516/EClaw/commit/0a10aadb5a5b12ff23454c16d5c88183b94ad7d7))
* **wallpaper:** stop Android live wallpaper flashing default lobster on companion change ([#2629](https://github.com/HankHuang0516/EClaw/issues/2629)) ([8b4f66f](https://github.com/HankHuang0516/EClaw/commit/8b4f66fcb335bf43128f924b761b6337c817095b)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **app:** WebView pages honor app-selected locale via ?lang= URL param ([#2672](https://github.com/HankHuang0516/EClaw/issues/2672)) ([8ed8757](https://github.com/HankHuang0516/EClaw/commit/8ed8757aec5bf214e837cc0d81bf2b23f1993a91)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* **community:** 1-click chat button on bot cards + utm tagging ([#2610](https://github.com/HankHuang0516/EClaw/issues/2610)) ([eee97b0](https://github.com/HankHuang0516/EClaw/commit/eee97b0e2e4e74945ec24f218a69a52800b97a66))
* **chat:** add avatar size preference ([#2714](https://github.com/HankHuang0516/EClaw/issues/2714)) ([6fe164a](https://github.com/HankHuang0516/EClaw/commit/6fe164ad8b22fa576d2dd9ad37c0d9fc295b5a83))
* **dashboard:** add Claude and Codex channel guides ([#2640](https://github.com/HankHuang0516/EClaw/issues/2640)) ([c64e4c4](https://github.com/HankHuang0516/EClaw/commit/c64e4c4afc78db58c5cd578f00486dd7b2fd3311))
* **dashboard:** add Claude Code channel guide card ([#2667](https://github.com/HankHuang0516/EClaw/issues/2667)) ([d70d75c](https://github.com/HankHuang0516/EClaw/commit/d70d75c0c8caa8a540358a9aab4556b8c1927a5c))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* **kanban:** add device-scoped card tags ([#2773](https://github.com/HankHuang0516/EClaw/issues/2773)) ([53a387e](https://github.com/HankHuang0516/EClaw/commit/53a387e67ba7bb4f6bed1c427000c4ae8666577a))
* **portal:** add entity selector to petdx-browser ([#2602](https://github.com/HankHuang0516/EClaw/issues/2602)) ([3fa067e](https://github.com/HankHuang0516/EClaw/commit/3fa067e00b38829b48a37cecd33ee81a9a1122d9))
* **kanban:** add explicit card links ([#2721](https://github.com/HankHuang0516/EClaw/issues/2721)) ([ef9f812](https://github.com/HankHuang0516/EClaw/commit/ef9f812a3fcf39efd07fd158ce90951bdd045ac7))
* **mindmap:** add GET /api/mindmap/graph force-graph projection ([#2680](https://github.com/HankHuang0516/EClaw/issues/2680)) ([a00b2e7](https://github.com/HankHuang0516/EClaw/commit/a00b2e775af2c4c98cd157f760ad87aeeee469f0)), closes [#2679](https://github.com/HankHuang0516/EClaw/issues/2679) [#2679](https://github.com/HankHuang0516/EClaw/issues/2679)
* **dashboard:** add Hermes channel promo card ([#2708](https://github.com/HankHuang0516/EClaw/issues/2708)) ([337aca1](https://github.com/HankHuang0516/EClaw/commit/337aca153d5a1cd7e888c065f00ae54db7872d91))
* **rental:** add listing soft pause ([#2781](https://github.com/HankHuang0516/EClaw/issues/2781)) ([6586b72](https://github.com/HankHuang0516/EClaw/commit/6586b72717ddb1637d91cd3242c8d2ff554f62b4))
* **portal:** add Nagoya 5D4N trip static cross-ref page ([#2689](https://github.com/HankHuang0516/EClaw/issues/2689)) ([2e0efb6](https://github.com/HankHuang0516/EClaw/commit/2e0efb6dcdaff52226cc8854a96747000b12bdff))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **settings:** add rental roster management preview ([#2758](https://github.com/HankHuang0516/EClaw/issues/2758)) ([9706e59](https://github.com/HankHuang0516/EClaw/commit/9706e59ded140a90a6e02348124282bc69d89001))
* **rental:** add renter health chat indicator ([#2690](https://github.com/HankHuang0516/EClaw/issues/2690)) ([36cd2e9](https://github.com/HankHuang0516/EClaw/commit/36cd2e9802be4c7ebb03d3024617fa74aca48ffd))
* **companion:** bridge crafter-station/petdex gallery (1784 pets) ([#2601](https://github.com/HankHuang0516/EClaw/issues/2601)) ([2e245be](https://github.com/HankHuang0516/EClaw/commit/2e245bea6dd47ea7361b927d389188a3c23b6bb3))
* **promo:** chat avatar size feature landing page (self-hosted MP4) ([#2722](https://github.com/HankHuang0516/EClaw/issues/2722)) ([3852210](https://github.com/HankHuang0516/EClaw/commit/3852210d355704d018e3daca6b5f9512a011b210)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **kanban:** cron-spawn jitter + lane backpressure to prevent same-tick wedge ([#2791](https://github.com/HankHuang0516/EClaw/issues/2791)) ([9f414a7](https://github.com/HankHuang0516/EClaw/commit/9f414a731d6393672a0a4189c7b408c529ae5e12)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **promo:** embed daily eclaw video 2026-05-14 ([#2786](https://github.com/HankHuang0516/EClaw/issues/2786)) ([718a814](https://github.com/HankHuang0516/EClaw/commit/718a814ab16850bc2b33a1b303841e2c4378ecfa)), closes [#2782](https://github.com/HankHuang0516/EClaw/issues/2782) [#2693](https://github.com/HankHuang0516/EClaw/issues/2693)
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **rental:** enforce strict rebind refunds ([#2703](https://github.com/HankHuang0516/EClaw/issues/2703)) ([a1859c5](https://github.com/HankHuang0516/EClaw/commit/a1859c50e6fb3991d7a8051491502d824a14a116))
* **portal:** info-guide-rules + info-guide-soul slide pair ([#2793](https://github.com/HankHuang0516/EClaw/issues/2793)) ([1c8bddc](https://github.com/HankHuang0516/EClaw/commit/1c8bddc4c185054b2b60088498e3d45509117127)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **chat:** link card previews to kanban ([#2754](https://github.com/HankHuang0516/EClaw/issues/2754)) ([2261240](https://github.com/HankHuang0516/EClaw/commit/22612402c2e95efb07246629e81a849be41ee9c7))
* **mission:** link notes to kanban cards ([#2723](https://github.com/HankHuang0516/EClaw/issues/2723)) ([b36dc18](https://github.com/HankHuang0516/EClaw/commit/b36dc18f3a8facf12e0b6046351c222f1e99dc55))
* **mindmap:** mission.html link to /portal/mindmap.html + deprecate /api/mission/mindmap ([#2685](https://github.com/HankHuang0516/EClaw/issues/2685)) ([11e297b](https://github.com/HankHuang0516/EClaw/commit/11e297bab1c9b56fcde3027d6500b7c58891bf18)), closes [#2680](https://github.com/HankHuang0516/EClaw/issues/2680) [#2684](https://github.com/HankHuang0516/EClaw/issues/2684)
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **avatar:** petdx render on card-holder my-cards (Phase 1b) ([#2621](https://github.com/HankHuang0516/EClaw/issues/2621)) ([f78ba8b](https://github.com/HankHuang0516/EClaw/commit/f78ba8b18acc426936ab6d8a82ca7541effea00d))
* **avatar:** petdx render on dashboard entity grid / org chart / bindings (Phase 1b) ([#2622](https://github.com/HankHuang0516/EClaw/issues/2622)) ([f417749](https://github.com/HankHuang0516/EClaw/commit/f41774914451048e8cd76e9ae30416a0642e173b)), closes [#2620](https://github.com/HankHuang0516/EClaw/issues/2620) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621)
* **avatar:** petdx render on kanban auto-assign / pulse / comment avatars (Phase 1b) ([#2624](https://github.com/HankHuang0516/EClaw/issues/2624)) ([6bff5f8](https://github.com/HankHuang0516/EClaw/commit/6bff5f80440d0bd91a6b1721cde9478d685c4d46))
* **avatar:** petdx render on mission skill/rule/soul entity dialogs (Phase 1b) ([#2623](https://github.com/HankHuang0516/EClaw/issues/2623)) ([129327b](https://github.com/HankHuang0516/EClaw/commit/129327bc7b91056659f1ab7e8d5e3f5260d951fb))
* **mindmap:** portal/mindmap.html force-graph prototype ([#129](https://github.com/HankHuang0516/EClaw/issues/129)) ([#2681](https://github.com/HankHuang0516/EClaw/issues/2681)) ([0f15e69](https://github.com/HankHuang0516/EClaw/commit/0f15e6930f0697c37fa08f3219edb8f9e499837f)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **portal:** redo nagoya trip page in professional tour-guide style ([#2691](https://github.com/HankHuang0516/EClaw/issues/2691)) ([b2378c0](https://github.com/HankHuang0516/EClaw/commit/b2378c06ee20fa9cccfdceceb1a4c9e0b3072f59))
* **avatar:** render selected petdx companion in chat avatars ([#2620](https://github.com/HankHuang0516/EClaw/issues/2620)) ([0bdd046](https://github.com/HankHuang0516/EClaw/commit/0bdd046fe1b1c428e32edda366ff112c08927f4c))
* **home:** replace native home with WebView hosting dashboard.html ([#2634](https://github.com/HankHuang0516/EClaw/issues/2634)) ([e69ea81](https://github.com/HankHuang0516/EClaw/commit/e69ea8160c239b083a83d6dc83a4f1c3f901c863))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **chat:** support message deep links ([#2719](https://github.com/HankHuang0516/EClaw/issues/2719)) ([2dc0f1e](https://github.com/HankHuang0516/EClaw/commit/2dc0f1eeb259e1a0848db4a03186b989372cd91c))
* **mission:** support note deep links ([#2717](https://github.com/HankHuang0516/EClaw/issues/2717)) ([2efd3a5](https://github.com/HankHuang0516/EClaw/commit/2efd3a5e741217a07c0b0ac54a0ddd010e0ebe23))
* **share-chat:** twitter card + per-bot og:image/twitter:* in SSR ([#2609](https://github.com/HankHuang0516/EClaw/issues/2609)) ([6cdc853](https://github.com/HankHuang0516/EClaw/commit/6cdc853dc884cdb95bd47214942768981f218ae0))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))
* **settings:** wire petdx avatar into channel-account chips ([#2626](https://github.com/HankHuang0516/EClaw/issues/2626)) ([88aec77](https://github.com/HankHuang0516/EClaw/commit/88aec772628c240e97b336bb5820892ad632d1ae))
* **files:** wire petdx avatar into entity filter & per-file badges ([#2627](https://github.com/HankHuang0516/EClaw/issues/2627)) ([5b3e5cc](https://github.com/HankHuang0516/EClaw/commit/5b3e5cc542d9da69bb4e92500fd03a542ea33f00))
* **mindmap:** wrap hardcoded zh-TW UI strings with i18n t() ([#2607](https://github.com/HankHuang0516/EClaw/issues/2607)) ([166af87](https://github.com/HankHuang0516/EClaw/commit/166af8772b2121a24aaf34a83b3de970e9b3b571)), closes [#2606](https://github.com/HankHuang0516/EClaw/issues/2606)


### Performance Improvements

* **mindmap:** force-graph hardening for 1000/2000-node graphs ([#2684](https://github.com/HankHuang0516/EClaw/issues/2684)) ([da8b1c8](https://github.com/HankHuang0516/EClaw/commit/da8b1c8f947ab8bc8fa455c1962a91146623a1fc))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-14)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **notifications:** add kanban_done + kanban_done_auto toggles to Android Settings ([#2636](https://github.com/HankHuang0516/EClaw/issues/2636)) ([a710909](https://github.com/HankHuang0516/EClaw/commit/a7109095e3393b8564e7ef1b23d382a4fbb944b8))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **i18n:** clear batch 1 residual missing keys ([#2790](https://github.com/HankHuang0516/EClaw/issues/2790)) ([211030e](https://github.com/HankHuang0516/EClaw/commit/211030e0b0b6a865c11f0c4ed60dc4e356d43b7a))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **kanban:** comment input no longer overlaps last comment in card detail (PR [#2678](https://github.com/HankHuang0516/EClaw/issues/2678)) ([fba91fc](https://github.com/HankHuang0516/EClaw/commit/fba91fca15402b453a0db5ee857c0b16e6087055))
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **petdx:** drop dark-grey loading placeholder + preload sprite WEBP ([#2628](https://github.com/HankHuang0516/EClaw/issues/2628)) ([59cef38](https://github.com/HankHuang0516/EClaw/commit/59cef387bd69ca99d7d15c86a1364856d3849ad8)), closes [#1a1a1a](https://github.com/HankHuang0516/EClaw/issues/1a1a1a)
* **entities:** expose botSecret to owner so wallpaper service can poll companions ([#2615](https://github.com/HankHuang0516/EClaw/issues/2615)) ([04470fc](https://github.com/HankHuang0516/EClaw/commit/04470fce8f8c3fce2b1ba8b243e776606f107502))
* **rental:** expose owner_public_code in marketplace so plaza CTA can route ([#2616](https://github.com/HankHuang0516/EClaw/issues/2616)) ([4d1372f](https://github.com/HankHuang0516/EClaw/commit/4d1372f717d93cab65543e87c852e74e9fb67071)), closes [#2610](https://github.com/HankHuang0516/EClaw/issues/2610)
* **mindmap:** fallback to device scope when entityId is null ([#2728](https://github.com/HankHuang0516/EClaw/issues/2728)) ([7572312](https://github.com/HankHuang0516/EClaw/commit/7572312433d3d75fc245eda48a28919ce14bd927))
* **i18n:** fill Spanish drift keys ([#2751](https://github.com/HankHuang0516/EClaw/issues/2751)) ([0ad0ee5](https://github.com/HankHuang0516/EClaw/commit/0ad0ee55f7fac3e6ac46d891539950dab4d553cc))
* **portal:** fit embedded org chart to mobile viewport ([#2674](https://github.com/HankHuang0516/EClaw/issues/2674)) ([1c4e1b4](https://github.com/HankHuang0516/EClaw/commit/1c4e1b413ea7027b4cd4b8ecda981b0d0e12e66b))
* **i18n:** fix 6 trailing-comma syntax errors in 10-locale batch ([#2771](https://github.com/HankHuang0516/EClaw/issues/2771)) ([b27c6ca](https://github.com/HankHuang0516/EClaw/commit/b27c6ca204bf813e406c54ce3a2532a5f1f031b3))
* **uiux:** harden chat previews and roster preview ([#2769](https://github.com/HankHuang0516/EClaw/issues/2769)) ([466d4d3](https://github.com/HankHuang0516/EClaw/commit/466d4d3ef81c628d3f58db64323946053d7bf61c))
* **mention-parser:** ignore @-mentions inside markdown code spans ([#2645](https://github.com/HankHuang0516/EClaw/issues/2645)) ([8da19d4](https://github.com/HankHuang0516/EClaw/commit/8da19d4a79ceb4152bf2144ee0847c61ce3e1def)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **kanban:** lazy-load dependency chips via IntersectionObserver ([#2632](https://github.com/HankHuang0516/EClaw/issues/2632)) ([20586b4](https://github.com/HankHuang0516/EClaw/commit/20586b43357335f9eb6a190c02d58c8e36b58aba)), closes [#2631](https://github.com/HankHuang0516/EClaw/issues/2631)
* **kanban:** make card sorting deterministic ([#2756](https://github.com/HankHuang0516/EClaw/issues/2756)) ([48e2117](https://github.com/HankHuang0516/EClaw/commit/48e2117b64e37f05dc635e0a3b67bfd43cbe48f5))
* **kanban:** notify reviewer on manual /move → review ([#2753](https://github.com/HankHuang0516/EClaw/issues/2753)) ([6cbbb4e](https://github.com/HankHuang0516/EClaw/commit/6cbbb4ee8c0d4d8ad54df2e9b5faaa3699bd530f))
* **wallpaper:** off-load spritesheet fetch to IO so per-petdx sprites actually render ([#2618](https://github.com/HankHuang0516/EClaw/issues/2618)) ([61b832c](https://github.com/HankHuang0516/EClaw/commit/61b832c9fa8a1d0caab810ccc942d85c63349267)), closes [#2615](https://github.com/HankHuang0516/EClaw/issues/2615) [#2577](https://github.com/HankHuang0516/EClaw/issues/2577)
* **portal:** petdx-browser cookie-session fallback for device-login ([#2757](https://github.com/HankHuang0516/EClaw/issues/2757)) ([ca275f4](https://github.com/HankHuang0516/EClaw/commit/ca275f4519835da0c7ad71c588908a18f6f138d8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **i18n:** positional format specifiers for feedback_result_logs (7 locales) ([#2597](https://github.com/HankHuang0516/EClaw/issues/2597)) ([21aedc7](https://github.com/HankHuang0516/EClaw/commit/21aedc7eebc7a2839e340136f38dfdfd4dabb9dc))
* **avatar-petdx:** preserve descriptor across transient API failures (flicker) ([#2625](https://github.com/HankHuang0516/EClaw/issues/2625)) ([7b1c606](https://github.com/HankHuang0516/EClaw/commit/7b1c606514f7698d72ec95cf6c556e4043966186))
* **chat:** preserve scroll anchor while reading history ([#2693](https://github.com/HankHuang0516/EClaw/issues/2693)) ([945fdb7](https://github.com/HankHuang0516/EClaw/commit/945fdb7192b791b31882e1e75568dd8b11e4686f))
* **promo:** pull video embed from /promo-chat-avatar.html ([#2724](https://github.com/HankHuang0516/EClaw/issues/2724)) ([2afabc8](https://github.com/HankHuang0516/EClaw/commit/2afabc8c5ff8b25218a7cb857e8adfa572c8e9d5))
* **kanban:** realign stale recurring schedules ([#2785](https://github.com/HankHuang0516/EClaw/issues/2785)) ([ab8ee25](https://github.com/HankHuang0516/EClaw/commit/ab8ee250a9b37f3d3e838bb01d8866c8d2b78231))
* **portal:** reduce QA-discovered request fanout ([#2656](https://github.com/HankHuang0516/EClaw/issues/2656)) ([1e46d6b](https://github.com/HankHuang0516/EClaw/commit/1e46d6bab61e58c65b452b6503d953f8dddeee75))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **portal:** remove org chart fit scale floor ([#2676](https://github.com/HankHuang0516/EClaw/issues/2676)) ([0f01606](https://github.com/HankHuang0516/EClaw/commit/0f016068b963bb5f800a02f28817c7174979d913))
* **i18n:** rename mm_empty_title → mm_state_empty_title in mindmap.html ([#2683](https://github.com/HankHuang0516/EClaw/issues/2683)) ([c79c109](https://github.com/HankHuang0516/EClaw/commit/c79c109bea23142e8a6d9ace976d105af1280ec9))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **chat:** render mention avatars with companion renderer ([#2633](https://github.com/HankHuang0516/EClaw/issues/2633)) ([03e205f](https://github.com/HankHuang0516/EClaw/commit/03e205f663ecd2c2f443d4009dd5af0093f0bbbb))
* **kanban:** reserve mobile comments panel height ([#2782](https://github.com/HankHuang0516/EClaw/issues/2782)) ([ce8662d](https://github.com/HankHuang0516/EClaw/commit/ce8662d362422fdd25037f1deb61dbed9425e2f9))
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* scheduled audit 2026-05-13 — 6 bugs, XSS, i18n ([#2668](https://github.com/HankHuang0516/EClaw/issues/2668)) ([21dd513](https://github.com/HankHuang0516/EClaw/commit/21dd513b4464738de29164265437435ba6cc4817)), closes [#2605](https://github.com/HankHuang0516/EClaw/issues/2605) [#2608](https://github.com/HankHuang0516/EClaw/issues/2608) [#2600](https://github.com/HankHuang0516/EClaw/issues/2600) [#2599](https://github.com/HankHuang0516/EClaw/issues/2599) [#2598](https://github.com/HankHuang0516/EClaw/issues/2598)
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **chat:** smart-chip preview falls back to inline c.comments when /comments fails (PR [#2677](https://github.com/HankHuang0516/EClaw/issues/2677)) ([7f4dffd](https://github.com/HankHuang0516/EClaw/commit/7f4dffd2c83ea86f296b8fa0610f0e67c9f1af11))
* **wallpaper:** stop Android live wallpaper flashing default lobster on companion change ([#2629](https://github.com/HankHuang0516/EClaw/issues/2629)) ([8b4f66f](https://github.com/HankHuang0516/EClaw/commit/8b4f66fcb335bf43128f924b761b6337c817095b)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **app:** WebView pages honor app-selected locale via ?lang= URL param ([#2672](https://github.com/HankHuang0516/EClaw/issues/2672)) ([8ed8757](https://github.com/HankHuang0516/EClaw/commit/8ed8757aec5bf214e837cc0d81bf2b23f1993a91)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* **community:** 1-click chat button on bot cards + utm tagging ([#2610](https://github.com/HankHuang0516/EClaw/issues/2610)) ([eee97b0](https://github.com/HankHuang0516/EClaw/commit/eee97b0e2e4e74945ec24f218a69a52800b97a66))
* **chat:** add avatar size preference ([#2714](https://github.com/HankHuang0516/EClaw/issues/2714)) ([6fe164a](https://github.com/HankHuang0516/EClaw/commit/6fe164ad8b22fa576d2dd9ad37c0d9fc295b5a83))
* **dashboard:** add Claude and Codex channel guides ([#2640](https://github.com/HankHuang0516/EClaw/issues/2640)) ([c64e4c4](https://github.com/HankHuang0516/EClaw/commit/c64e4c4afc78db58c5cd578f00486dd7b2fd3311))
* **dashboard:** add Claude Code channel guide card ([#2667](https://github.com/HankHuang0516/EClaw/issues/2667)) ([d70d75c](https://github.com/HankHuang0516/EClaw/commit/d70d75c0c8caa8a540358a9aab4556b8c1927a5c))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* **kanban:** add device-scoped card tags ([#2773](https://github.com/HankHuang0516/EClaw/issues/2773)) ([53a387e](https://github.com/HankHuang0516/EClaw/commit/53a387e67ba7bb4f6bed1c427000c4ae8666577a))
* **portal:** add entity selector to petdx-browser ([#2602](https://github.com/HankHuang0516/EClaw/issues/2602)) ([3fa067e](https://github.com/HankHuang0516/EClaw/commit/3fa067e00b38829b48a37cecd33ee81a9a1122d9))
* **kanban:** add explicit card links ([#2721](https://github.com/HankHuang0516/EClaw/issues/2721)) ([ef9f812](https://github.com/HankHuang0516/EClaw/commit/ef9f812a3fcf39efd07fd158ce90951bdd045ac7))
* **mindmap:** add GET /api/mindmap/graph force-graph projection ([#2680](https://github.com/HankHuang0516/EClaw/issues/2680)) ([a00b2e7](https://github.com/HankHuang0516/EClaw/commit/a00b2e775af2c4c98cd157f760ad87aeeee469f0)), closes [#2679](https://github.com/HankHuang0516/EClaw/issues/2679) [#2679](https://github.com/HankHuang0516/EClaw/issues/2679)
* **dashboard:** add Hermes channel promo card ([#2708](https://github.com/HankHuang0516/EClaw/issues/2708)) ([337aca1](https://github.com/HankHuang0516/EClaw/commit/337aca153d5a1cd7e888c065f00ae54db7872d91))
* **rental:** add listing soft pause ([#2781](https://github.com/HankHuang0516/EClaw/issues/2781)) ([6586b72](https://github.com/HankHuang0516/EClaw/commit/6586b72717ddb1637d91cd3242c8d2ff554f62b4))
* **portal:** add Nagoya 5D4N trip static cross-ref page ([#2689](https://github.com/HankHuang0516/EClaw/issues/2689)) ([2e0efb6](https://github.com/HankHuang0516/EClaw/commit/2e0efb6dcdaff52226cc8854a96747000b12bdff))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **settings:** add rental roster management preview ([#2758](https://github.com/HankHuang0516/EClaw/issues/2758)) ([9706e59](https://github.com/HankHuang0516/EClaw/commit/9706e59ded140a90a6e02348124282bc69d89001))
* **rental:** add renter health chat indicator ([#2690](https://github.com/HankHuang0516/EClaw/issues/2690)) ([36cd2e9](https://github.com/HankHuang0516/EClaw/commit/36cd2e9802be4c7ebb03d3024617fa74aca48ffd))
* **companion:** bridge crafter-station/petdex gallery (1784 pets) ([#2601](https://github.com/HankHuang0516/EClaw/issues/2601)) ([2e245be](https://github.com/HankHuang0516/EClaw/commit/2e245bea6dd47ea7361b927d389188a3c23b6bb3))
* **promo:** chat avatar size feature landing page (self-hosted MP4) ([#2722](https://github.com/HankHuang0516/EClaw/issues/2722)) ([3852210](https://github.com/HankHuang0516/EClaw/commit/3852210d355704d018e3daca6b5f9512a011b210)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **kanban:** cron-spawn jitter + lane backpressure to prevent same-tick wedge ([#2791](https://github.com/HankHuang0516/EClaw/issues/2791)) ([9f414a7](https://github.com/HankHuang0516/EClaw/commit/9f414a731d6393672a0a4189c7b408c529ae5e12)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **promo:** embed daily eclaw video 2026-05-14 ([#2786](https://github.com/HankHuang0516/EClaw/issues/2786)) ([718a814](https://github.com/HankHuang0516/EClaw/commit/718a814ab16850bc2b33a1b303841e2c4378ecfa)), closes [#2782](https://github.com/HankHuang0516/EClaw/issues/2782) [#2693](https://github.com/HankHuang0516/EClaw/issues/2693)
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **rental:** enforce strict rebind refunds ([#2703](https://github.com/HankHuang0516/EClaw/issues/2703)) ([a1859c5](https://github.com/HankHuang0516/EClaw/commit/a1859c50e6fb3991d7a8051491502d824a14a116))
* **portal:** info-guide-rules + info-guide-soul slide pair ([#2793](https://github.com/HankHuang0516/EClaw/issues/2793)) ([1c8bddc](https://github.com/HankHuang0516/EClaw/commit/1c8bddc4c185054b2b60088498e3d45509117127)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **chat:** link card previews to kanban ([#2754](https://github.com/HankHuang0516/EClaw/issues/2754)) ([2261240](https://github.com/HankHuang0516/EClaw/commit/22612402c2e95efb07246629e81a849be41ee9c7))
* **mission:** link notes to kanban cards ([#2723](https://github.com/HankHuang0516/EClaw/issues/2723)) ([b36dc18](https://github.com/HankHuang0516/EClaw/commit/b36dc18f3a8facf12e0b6046351c222f1e99dc55))
* **mindmap:** mission.html link to /portal/mindmap.html + deprecate /api/mission/mindmap ([#2685](https://github.com/HankHuang0516/EClaw/issues/2685)) ([11e297b](https://github.com/HankHuang0516/EClaw/commit/11e297bab1c9b56fcde3027d6500b7c58891bf18)), closes [#2680](https://github.com/HankHuang0516/EClaw/issues/2680) [#2684](https://github.com/HankHuang0516/EClaw/issues/2684)
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **avatar:** petdx render on card-holder my-cards (Phase 1b) ([#2621](https://github.com/HankHuang0516/EClaw/issues/2621)) ([f78ba8b](https://github.com/HankHuang0516/EClaw/commit/f78ba8b18acc426936ab6d8a82ca7541effea00d))
* **avatar:** petdx render on dashboard entity grid / org chart / bindings (Phase 1b) ([#2622](https://github.com/HankHuang0516/EClaw/issues/2622)) ([f417749](https://github.com/HankHuang0516/EClaw/commit/f41774914451048e8cd76e9ae30416a0642e173b)), closes [#2620](https://github.com/HankHuang0516/EClaw/issues/2620) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621)
* **avatar:** petdx render on kanban auto-assign / pulse / comment avatars (Phase 1b) ([#2624](https://github.com/HankHuang0516/EClaw/issues/2624)) ([6bff5f8](https://github.com/HankHuang0516/EClaw/commit/6bff5f80440d0bd91a6b1721cde9478d685c4d46))
* **avatar:** petdx render on mission skill/rule/soul entity dialogs (Phase 1b) ([#2623](https://github.com/HankHuang0516/EClaw/issues/2623)) ([129327b](https://github.com/HankHuang0516/EClaw/commit/129327bc7b91056659f1ab7e8d5e3f5260d951fb))
* **mindmap:** portal/mindmap.html force-graph prototype ([#129](https://github.com/HankHuang0516/EClaw/issues/129)) ([#2681](https://github.com/HankHuang0516/EClaw/issues/2681)) ([0f15e69](https://github.com/HankHuang0516/EClaw/commit/0f15e6930f0697c37fa08f3219edb8f9e499837f)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **portal:** redo nagoya trip page in professional tour-guide style ([#2691](https://github.com/HankHuang0516/EClaw/issues/2691)) ([b2378c0](https://github.com/HankHuang0516/EClaw/commit/b2378c06ee20fa9cccfdceceb1a4c9e0b3072f59))
* **avatar:** render selected petdx companion in chat avatars ([#2620](https://github.com/HankHuang0516/EClaw/issues/2620)) ([0bdd046](https://github.com/HankHuang0516/EClaw/commit/0bdd046fe1b1c428e32edda366ff112c08927f4c))
* **home:** replace native home with WebView hosting dashboard.html ([#2634](https://github.com/HankHuang0516/EClaw/issues/2634)) ([e69ea81](https://github.com/HankHuang0516/EClaw/commit/e69ea8160c239b083a83d6dc83a4f1c3f901c863))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **chat:** support message deep links ([#2719](https://github.com/HankHuang0516/EClaw/issues/2719)) ([2dc0f1e](https://github.com/HankHuang0516/EClaw/commit/2dc0f1eeb259e1a0848db4a03186b989372cd91c))
* **mission:** support note deep links ([#2717](https://github.com/HankHuang0516/EClaw/issues/2717)) ([2efd3a5](https://github.com/HankHuang0516/EClaw/commit/2efd3a5e741217a07c0b0ac54a0ddd010e0ebe23))
* **share-chat:** twitter card + per-bot og:image/twitter:* in SSR ([#2609](https://github.com/HankHuang0516/EClaw/issues/2609)) ([6cdc853](https://github.com/HankHuang0516/EClaw/commit/6cdc853dc884cdb95bd47214942768981f218ae0))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))
* **settings:** wire petdx avatar into channel-account chips ([#2626](https://github.com/HankHuang0516/EClaw/issues/2626)) ([88aec77](https://github.com/HankHuang0516/EClaw/commit/88aec772628c240e97b336bb5820892ad632d1ae))
* **files:** wire petdx avatar into entity filter & per-file badges ([#2627](https://github.com/HankHuang0516/EClaw/issues/2627)) ([5b3e5cc](https://github.com/HankHuang0516/EClaw/commit/5b3e5cc542d9da69bb4e92500fd03a542ea33f00))
* **mindmap:** wrap hardcoded zh-TW UI strings with i18n t() ([#2607](https://github.com/HankHuang0516/EClaw/issues/2607)) ([166af87](https://github.com/HankHuang0516/EClaw/commit/166af8772b2121a24aaf34a83b3de970e9b3b571)), closes [#2606](https://github.com/HankHuang0516/EClaw/issues/2606)


### Performance Improvements

* **mindmap:** force-graph hardening for 1000/2000-node graphs ([#2684](https://github.com/HankHuang0516/EClaw/issues/2684)) ([da8b1c8](https://github.com/HankHuang0516/EClaw/commit/da8b1c8f947ab8bc8fa455c1962a91146623a1fc))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-14)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **notifications:** add kanban_done + kanban_done_auto toggles to Android Settings ([#2636](https://github.com/HankHuang0516/EClaw/issues/2636)) ([a710909](https://github.com/HankHuang0516/EClaw/commit/a7109095e3393b8564e7ef1b23d382a4fbb944b8))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **i18n:** clear batch 1 residual missing keys ([#2790](https://github.com/HankHuang0516/EClaw/issues/2790)) ([211030e](https://github.com/HankHuang0516/EClaw/commit/211030e0b0b6a865c11f0c4ed60dc4e356d43b7a))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **kanban:** comment input no longer overlaps last comment in card detail (PR [#2678](https://github.com/HankHuang0516/EClaw/issues/2678)) ([fba91fc](https://github.com/HankHuang0516/EClaw/commit/fba91fca15402b453a0db5ee857c0b16e6087055))
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **petdx:** drop dark-grey loading placeholder + preload sprite WEBP ([#2628](https://github.com/HankHuang0516/EClaw/issues/2628)) ([59cef38](https://github.com/HankHuang0516/EClaw/commit/59cef387bd69ca99d7d15c86a1364856d3849ad8)), closes [#1a1a1a](https://github.com/HankHuang0516/EClaw/issues/1a1a1a)
* **entities:** expose botSecret to owner so wallpaper service can poll companions ([#2615](https://github.com/HankHuang0516/EClaw/issues/2615)) ([04470fc](https://github.com/HankHuang0516/EClaw/commit/04470fce8f8c3fce2b1ba8b243e776606f107502))
* **rental:** expose owner_public_code in marketplace so plaza CTA can route ([#2616](https://github.com/HankHuang0516/EClaw/issues/2616)) ([4d1372f](https://github.com/HankHuang0516/EClaw/commit/4d1372f717d93cab65543e87c852e74e9fb67071)), closes [#2610](https://github.com/HankHuang0516/EClaw/issues/2610)
* **mindmap:** fallback to device scope when entityId is null ([#2728](https://github.com/HankHuang0516/EClaw/issues/2728)) ([7572312](https://github.com/HankHuang0516/EClaw/commit/7572312433d3d75fc245eda48a28919ce14bd927))
* **i18n:** fill Spanish drift keys ([#2751](https://github.com/HankHuang0516/EClaw/issues/2751)) ([0ad0ee5](https://github.com/HankHuang0516/EClaw/commit/0ad0ee55f7fac3e6ac46d891539950dab4d553cc))
* **portal:** fit embedded org chart to mobile viewport ([#2674](https://github.com/HankHuang0516/EClaw/issues/2674)) ([1c4e1b4](https://github.com/HankHuang0516/EClaw/commit/1c4e1b413ea7027b4cd4b8ecda981b0d0e12e66b))
* **i18n:** fix 6 trailing-comma syntax errors in 10-locale batch ([#2771](https://github.com/HankHuang0516/EClaw/issues/2771)) ([b27c6ca](https://github.com/HankHuang0516/EClaw/commit/b27c6ca204bf813e406c54ce3a2532a5f1f031b3))
* **uiux:** harden chat previews and roster preview ([#2769](https://github.com/HankHuang0516/EClaw/issues/2769)) ([466d4d3](https://github.com/HankHuang0516/EClaw/commit/466d4d3ef81c628d3f58db64323946053d7bf61c))
* **mention-parser:** ignore @-mentions inside markdown code spans ([#2645](https://github.com/HankHuang0516/EClaw/issues/2645)) ([8da19d4](https://github.com/HankHuang0516/EClaw/commit/8da19d4a79ceb4152bf2144ee0847c61ce3e1def)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **kanban:** lazy-load dependency chips via IntersectionObserver ([#2632](https://github.com/HankHuang0516/EClaw/issues/2632)) ([20586b4](https://github.com/HankHuang0516/EClaw/commit/20586b43357335f9eb6a190c02d58c8e36b58aba)), closes [#2631](https://github.com/HankHuang0516/EClaw/issues/2631)
* **kanban:** make card sorting deterministic ([#2756](https://github.com/HankHuang0516/EClaw/issues/2756)) ([48e2117](https://github.com/HankHuang0516/EClaw/commit/48e2117b64e37f05dc635e0a3b67bfd43cbe48f5))
* **kanban:** notify reviewer on manual /move → review ([#2753](https://github.com/HankHuang0516/EClaw/issues/2753)) ([6cbbb4e](https://github.com/HankHuang0516/EClaw/commit/6cbbb4ee8c0d4d8ad54df2e9b5faaa3699bd530f))
* **wallpaper:** off-load spritesheet fetch to IO so per-petdx sprites actually render ([#2618](https://github.com/HankHuang0516/EClaw/issues/2618)) ([61b832c](https://github.com/HankHuang0516/EClaw/commit/61b832c9fa8a1d0caab810ccc942d85c63349267)), closes [#2615](https://github.com/HankHuang0516/EClaw/issues/2615) [#2577](https://github.com/HankHuang0516/EClaw/issues/2577)
* **portal:** petdx-browser cookie-session fallback for device-login ([#2757](https://github.com/HankHuang0516/EClaw/issues/2757)) ([ca275f4](https://github.com/HankHuang0516/EClaw/commit/ca275f4519835da0c7ad71c588908a18f6f138d8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **i18n:** positional format specifiers for feedback_result_logs (7 locales) ([#2597](https://github.com/HankHuang0516/EClaw/issues/2597)) ([21aedc7](https://github.com/HankHuang0516/EClaw/commit/21aedc7eebc7a2839e340136f38dfdfd4dabb9dc))
* **avatar-petdx:** preserve descriptor across transient API failures (flicker) ([#2625](https://github.com/HankHuang0516/EClaw/issues/2625)) ([7b1c606](https://github.com/HankHuang0516/EClaw/commit/7b1c606514f7698d72ec95cf6c556e4043966186))
* **chat:** preserve scroll anchor while reading history ([#2693](https://github.com/HankHuang0516/EClaw/issues/2693)) ([945fdb7](https://github.com/HankHuang0516/EClaw/commit/945fdb7192b791b31882e1e75568dd8b11e4686f))
* **promo:** pull video embed from /promo-chat-avatar.html ([#2724](https://github.com/HankHuang0516/EClaw/issues/2724)) ([2afabc8](https://github.com/HankHuang0516/EClaw/commit/2afabc8c5ff8b25218a7cb857e8adfa572c8e9d5))
* **kanban:** realign stale recurring schedules ([#2785](https://github.com/HankHuang0516/EClaw/issues/2785)) ([ab8ee25](https://github.com/HankHuang0516/EClaw/commit/ab8ee250a9b37f3d3e838bb01d8866c8d2b78231))
* **portal:** reduce QA-discovered request fanout ([#2656](https://github.com/HankHuang0516/EClaw/issues/2656)) ([1e46d6b](https://github.com/HankHuang0516/EClaw/commit/1e46d6bab61e58c65b452b6503d953f8dddeee75))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **portal:** remove org chart fit scale floor ([#2676](https://github.com/HankHuang0516/EClaw/issues/2676)) ([0f01606](https://github.com/HankHuang0516/EClaw/commit/0f016068b963bb5f800a02f28817c7174979d913))
* **i18n:** rename mm_empty_title → mm_state_empty_title in mindmap.html ([#2683](https://github.com/HankHuang0516/EClaw/issues/2683)) ([c79c109](https://github.com/HankHuang0516/EClaw/commit/c79c109bea23142e8a6d9ace976d105af1280ec9))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **chat:** render mention avatars with companion renderer ([#2633](https://github.com/HankHuang0516/EClaw/issues/2633)) ([03e205f](https://github.com/HankHuang0516/EClaw/commit/03e205f663ecd2c2f443d4009dd5af0093f0bbbb))
* **kanban:** reserve mobile comments panel height ([#2782](https://github.com/HankHuang0516/EClaw/issues/2782)) ([ce8662d](https://github.com/HankHuang0516/EClaw/commit/ce8662d362422fdd25037f1deb61dbed9425e2f9))
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* scheduled audit 2026-05-13 — 6 bugs, XSS, i18n ([#2668](https://github.com/HankHuang0516/EClaw/issues/2668)) ([21dd513](https://github.com/HankHuang0516/EClaw/commit/21dd513b4464738de29164265437435ba6cc4817)), closes [#2605](https://github.com/HankHuang0516/EClaw/issues/2605) [#2608](https://github.com/HankHuang0516/EClaw/issues/2608) [#2600](https://github.com/HankHuang0516/EClaw/issues/2600) [#2599](https://github.com/HankHuang0516/EClaw/issues/2599) [#2598](https://github.com/HankHuang0516/EClaw/issues/2598)
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **chat:** smart-chip preview falls back to inline c.comments when /comments fails (PR [#2677](https://github.com/HankHuang0516/EClaw/issues/2677)) ([7f4dffd](https://github.com/HankHuang0516/EClaw/commit/7f4dffd2c83ea86f296b8fa0610f0e67c9f1af11))
* **wallpaper:** stop Android live wallpaper flashing default lobster on companion change ([#2629](https://github.com/HankHuang0516/EClaw/issues/2629)) ([8b4f66f](https://github.com/HankHuang0516/EClaw/commit/8b4f66fcb335bf43128f924b761b6337c817095b)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **app:** WebView pages honor app-selected locale via ?lang= URL param ([#2672](https://github.com/HankHuang0516/EClaw/issues/2672)) ([8ed8757](https://github.com/HankHuang0516/EClaw/commit/8ed8757aec5bf214e837cc0d81bf2b23f1993a91)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* **community:** 1-click chat button on bot cards + utm tagging ([#2610](https://github.com/HankHuang0516/EClaw/issues/2610)) ([eee97b0](https://github.com/HankHuang0516/EClaw/commit/eee97b0e2e4e74945ec24f218a69a52800b97a66))
* **chat:** add avatar size preference ([#2714](https://github.com/HankHuang0516/EClaw/issues/2714)) ([6fe164a](https://github.com/HankHuang0516/EClaw/commit/6fe164ad8b22fa576d2dd9ad37c0d9fc295b5a83))
* **dashboard:** add Claude and Codex channel guides ([#2640](https://github.com/HankHuang0516/EClaw/issues/2640)) ([c64e4c4](https://github.com/HankHuang0516/EClaw/commit/c64e4c4afc78db58c5cd578f00486dd7b2fd3311))
* **dashboard:** add Claude Code channel guide card ([#2667](https://github.com/HankHuang0516/EClaw/issues/2667)) ([d70d75c](https://github.com/HankHuang0516/EClaw/commit/d70d75c0c8caa8a540358a9aab4556b8c1927a5c))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* **kanban:** add device-scoped card tags ([#2773](https://github.com/HankHuang0516/EClaw/issues/2773)) ([53a387e](https://github.com/HankHuang0516/EClaw/commit/53a387e67ba7bb4f6bed1c427000c4ae8666577a))
* **portal:** add entity selector to petdx-browser ([#2602](https://github.com/HankHuang0516/EClaw/issues/2602)) ([3fa067e](https://github.com/HankHuang0516/EClaw/commit/3fa067e00b38829b48a37cecd33ee81a9a1122d9))
* **kanban:** add explicit card links ([#2721](https://github.com/HankHuang0516/EClaw/issues/2721)) ([ef9f812](https://github.com/HankHuang0516/EClaw/commit/ef9f812a3fcf39efd07fd158ce90951bdd045ac7))
* **mindmap:** add GET /api/mindmap/graph force-graph projection ([#2680](https://github.com/HankHuang0516/EClaw/issues/2680)) ([a00b2e7](https://github.com/HankHuang0516/EClaw/commit/a00b2e775af2c4c98cd157f760ad87aeeee469f0)), closes [#2679](https://github.com/HankHuang0516/EClaw/issues/2679) [#2679](https://github.com/HankHuang0516/EClaw/issues/2679)
* **dashboard:** add Hermes channel promo card ([#2708](https://github.com/HankHuang0516/EClaw/issues/2708)) ([337aca1](https://github.com/HankHuang0516/EClaw/commit/337aca153d5a1cd7e888c065f00ae54db7872d91))
* **rental:** add listing soft pause ([#2781](https://github.com/HankHuang0516/EClaw/issues/2781)) ([6586b72](https://github.com/HankHuang0516/EClaw/commit/6586b72717ddb1637d91cd3242c8d2ff554f62b4))
* **portal:** add Nagoya 5D4N trip static cross-ref page ([#2689](https://github.com/HankHuang0516/EClaw/issues/2689)) ([2e0efb6](https://github.com/HankHuang0516/EClaw/commit/2e0efb6dcdaff52226cc8854a96747000b12bdff))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **settings:** add rental roster management preview ([#2758](https://github.com/HankHuang0516/EClaw/issues/2758)) ([9706e59](https://github.com/HankHuang0516/EClaw/commit/9706e59ded140a90a6e02348124282bc69d89001))
* **rental:** add renter health chat indicator ([#2690](https://github.com/HankHuang0516/EClaw/issues/2690)) ([36cd2e9](https://github.com/HankHuang0516/EClaw/commit/36cd2e9802be4c7ebb03d3024617fa74aca48ffd))
* **companion:** bridge crafter-station/petdex gallery (1784 pets) ([#2601](https://github.com/HankHuang0516/EClaw/issues/2601)) ([2e245be](https://github.com/HankHuang0516/EClaw/commit/2e245bea6dd47ea7361b927d389188a3c23b6bb3))
* **promo:** chat avatar size feature landing page (self-hosted MP4) ([#2722](https://github.com/HankHuang0516/EClaw/issues/2722)) ([3852210](https://github.com/HankHuang0516/EClaw/commit/3852210d355704d018e3daca6b5f9512a011b210)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **kanban:** cron-spawn jitter + lane backpressure to prevent same-tick wedge ([#2791](https://github.com/HankHuang0516/EClaw/issues/2791)) ([9f414a7](https://github.com/HankHuang0516/EClaw/commit/9f414a731d6393672a0a4189c7b408c529ae5e12)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **promo:** embed daily eclaw video 2026-05-14 ([#2786](https://github.com/HankHuang0516/EClaw/issues/2786)) ([718a814](https://github.com/HankHuang0516/EClaw/commit/718a814ab16850bc2b33a1b303841e2c4378ecfa)), closes [#2782](https://github.com/HankHuang0516/EClaw/issues/2782) [#2693](https://github.com/HankHuang0516/EClaw/issues/2693)
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **rental:** enforce strict rebind refunds ([#2703](https://github.com/HankHuang0516/EClaw/issues/2703)) ([a1859c5](https://github.com/HankHuang0516/EClaw/commit/a1859c50e6fb3991d7a8051491502d824a14a116))
* **portal:** info-guide-rules + info-guide-soul slide pair ([#2793](https://github.com/HankHuang0516/EClaw/issues/2793)) ([1c8bddc](https://github.com/HankHuang0516/EClaw/commit/1c8bddc4c185054b2b60088498e3d45509117127)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **chat:** link card previews to kanban ([#2754](https://github.com/HankHuang0516/EClaw/issues/2754)) ([2261240](https://github.com/HankHuang0516/EClaw/commit/22612402c2e95efb07246629e81a849be41ee9c7))
* **mission:** link notes to kanban cards ([#2723](https://github.com/HankHuang0516/EClaw/issues/2723)) ([b36dc18](https://github.com/HankHuang0516/EClaw/commit/b36dc18f3a8facf12e0b6046351c222f1e99dc55))
* **mindmap:** mission.html link to /portal/mindmap.html + deprecate /api/mission/mindmap ([#2685](https://github.com/HankHuang0516/EClaw/issues/2685)) ([11e297b](https://github.com/HankHuang0516/EClaw/commit/11e297bab1c9b56fcde3027d6500b7c58891bf18)), closes [#2680](https://github.com/HankHuang0516/EClaw/issues/2680) [#2684](https://github.com/HankHuang0516/EClaw/issues/2684)
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **avatar:** petdx render on card-holder my-cards (Phase 1b) ([#2621](https://github.com/HankHuang0516/EClaw/issues/2621)) ([f78ba8b](https://github.com/HankHuang0516/EClaw/commit/f78ba8b18acc426936ab6d8a82ca7541effea00d))
* **avatar:** petdx render on dashboard entity grid / org chart / bindings (Phase 1b) ([#2622](https://github.com/HankHuang0516/EClaw/issues/2622)) ([f417749](https://github.com/HankHuang0516/EClaw/commit/f41774914451048e8cd76e9ae30416a0642e173b)), closes [#2620](https://github.com/HankHuang0516/EClaw/issues/2620) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621)
* **avatar:** petdx render on kanban auto-assign / pulse / comment avatars (Phase 1b) ([#2624](https://github.com/HankHuang0516/EClaw/issues/2624)) ([6bff5f8](https://github.com/HankHuang0516/EClaw/commit/6bff5f80440d0bd91a6b1721cde9478d685c4d46))
* **avatar:** petdx render on mission skill/rule/soul entity dialogs (Phase 1b) ([#2623](https://github.com/HankHuang0516/EClaw/issues/2623)) ([129327b](https://github.com/HankHuang0516/EClaw/commit/129327bc7b91056659f1ab7e8d5e3f5260d951fb))
* **mindmap:** portal/mindmap.html force-graph prototype ([#129](https://github.com/HankHuang0516/EClaw/issues/129)) ([#2681](https://github.com/HankHuang0516/EClaw/issues/2681)) ([0f15e69](https://github.com/HankHuang0516/EClaw/commit/0f15e6930f0697c37fa08f3219edb8f9e499837f)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **portal:** redo nagoya trip page in professional tour-guide style ([#2691](https://github.com/HankHuang0516/EClaw/issues/2691)) ([b2378c0](https://github.com/HankHuang0516/EClaw/commit/b2378c06ee20fa9cccfdceceb1a4c9e0b3072f59))
* **avatar:** render selected petdx companion in chat avatars ([#2620](https://github.com/HankHuang0516/EClaw/issues/2620)) ([0bdd046](https://github.com/HankHuang0516/EClaw/commit/0bdd046fe1b1c428e32edda366ff112c08927f4c))
* **home:** replace native home with WebView hosting dashboard.html ([#2634](https://github.com/HankHuang0516/EClaw/issues/2634)) ([e69ea81](https://github.com/HankHuang0516/EClaw/commit/e69ea8160c239b083a83d6dc83a4f1c3f901c863))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **chat:** support message deep links ([#2719](https://github.com/HankHuang0516/EClaw/issues/2719)) ([2dc0f1e](https://github.com/HankHuang0516/EClaw/commit/2dc0f1eeb259e1a0848db4a03186b989372cd91c))
* **mission:** support note deep links ([#2717](https://github.com/HankHuang0516/EClaw/issues/2717)) ([2efd3a5](https://github.com/HankHuang0516/EClaw/commit/2efd3a5e741217a07c0b0ac54a0ddd010e0ebe23))
* **share-chat:** twitter card + per-bot og:image/twitter:* in SSR ([#2609](https://github.com/HankHuang0516/EClaw/issues/2609)) ([6cdc853](https://github.com/HankHuang0516/EClaw/commit/6cdc853dc884cdb95bd47214942768981f218ae0))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))
* **settings:** wire petdx avatar into channel-account chips ([#2626](https://github.com/HankHuang0516/EClaw/issues/2626)) ([88aec77](https://github.com/HankHuang0516/EClaw/commit/88aec772628c240e97b336bb5820892ad632d1ae))
* **files:** wire petdx avatar into entity filter & per-file badges ([#2627](https://github.com/HankHuang0516/EClaw/issues/2627)) ([5b3e5cc](https://github.com/HankHuang0516/EClaw/commit/5b3e5cc542d9da69bb4e92500fd03a542ea33f00))
* **mindmap:** wrap hardcoded zh-TW UI strings with i18n t() ([#2607](https://github.com/HankHuang0516/EClaw/issues/2607)) ([166af87](https://github.com/HankHuang0516/EClaw/commit/166af8772b2121a24aaf34a83b3de970e9b3b571)), closes [#2606](https://github.com/HankHuang0516/EClaw/issues/2606)


### Performance Improvements

* **mindmap:** force-graph hardening for 1000/2000-node graphs ([#2684](https://github.com/HankHuang0516/EClaw/issues/2684)) ([da8b1c8](https://github.com/HankHuang0516/EClaw/commit/da8b1c8f947ab8bc8fa455c1962a91146623a1fc))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-14)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **notifications:** add kanban_done + kanban_done_auto toggles to Android Settings ([#2636](https://github.com/HankHuang0516/EClaw/issues/2636)) ([a710909](https://github.com/HankHuang0516/EClaw/commit/a7109095e3393b8564e7ef1b23d382a4fbb944b8))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **i18n:** clear batch 1 residual missing keys ([#2790](https://github.com/HankHuang0516/EClaw/issues/2790)) ([211030e](https://github.com/HankHuang0516/EClaw/commit/211030e0b0b6a865c11f0c4ed60dc4e356d43b7a))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **kanban:** comment input no longer overlaps last comment in card detail (PR [#2678](https://github.com/HankHuang0516/EClaw/issues/2678)) ([fba91fc](https://github.com/HankHuang0516/EClaw/commit/fba91fca15402b453a0db5ee857c0b16e6087055))
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **petdx:** drop dark-grey loading placeholder + preload sprite WEBP ([#2628](https://github.com/HankHuang0516/EClaw/issues/2628)) ([59cef38](https://github.com/HankHuang0516/EClaw/commit/59cef387bd69ca99d7d15c86a1364856d3849ad8)), closes [#1a1a1a](https://github.com/HankHuang0516/EClaw/issues/1a1a1a)
* **entities:** expose botSecret to owner so wallpaper service can poll companions ([#2615](https://github.com/HankHuang0516/EClaw/issues/2615)) ([04470fc](https://github.com/HankHuang0516/EClaw/commit/04470fce8f8c3fce2b1ba8b243e776606f107502))
* **rental:** expose owner_public_code in marketplace so plaza CTA can route ([#2616](https://github.com/HankHuang0516/EClaw/issues/2616)) ([4d1372f](https://github.com/HankHuang0516/EClaw/commit/4d1372f717d93cab65543e87c852e74e9fb67071)), closes [#2610](https://github.com/HankHuang0516/EClaw/issues/2610)
* **mindmap:** fallback to device scope when entityId is null ([#2728](https://github.com/HankHuang0516/EClaw/issues/2728)) ([7572312](https://github.com/HankHuang0516/EClaw/commit/7572312433d3d75fc245eda48a28919ce14bd927))
* **i18n:** fill Spanish drift keys ([#2751](https://github.com/HankHuang0516/EClaw/issues/2751)) ([0ad0ee5](https://github.com/HankHuang0516/EClaw/commit/0ad0ee55f7fac3e6ac46d891539950dab4d553cc))
* **portal:** fit embedded org chart to mobile viewport ([#2674](https://github.com/HankHuang0516/EClaw/issues/2674)) ([1c4e1b4](https://github.com/HankHuang0516/EClaw/commit/1c4e1b413ea7027b4cd4b8ecda981b0d0e12e66b))
* **i18n:** fix 6 trailing-comma syntax errors in 10-locale batch ([#2771](https://github.com/HankHuang0516/EClaw/issues/2771)) ([b27c6ca](https://github.com/HankHuang0516/EClaw/commit/b27c6ca204bf813e406c54ce3a2532a5f1f031b3))
* **uiux:** harden chat previews and roster preview ([#2769](https://github.com/HankHuang0516/EClaw/issues/2769)) ([466d4d3](https://github.com/HankHuang0516/EClaw/commit/466d4d3ef81c628d3f58db64323946053d7bf61c))
* **mention-parser:** ignore @-mentions inside markdown code spans ([#2645](https://github.com/HankHuang0516/EClaw/issues/2645)) ([8da19d4](https://github.com/HankHuang0516/EClaw/commit/8da19d4a79ceb4152bf2144ee0847c61ce3e1def)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **kanban:** lazy-load dependency chips via IntersectionObserver ([#2632](https://github.com/HankHuang0516/EClaw/issues/2632)) ([20586b4](https://github.com/HankHuang0516/EClaw/commit/20586b43357335f9eb6a190c02d58c8e36b58aba)), closes [#2631](https://github.com/HankHuang0516/EClaw/issues/2631)
* **kanban:** make card sorting deterministic ([#2756](https://github.com/HankHuang0516/EClaw/issues/2756)) ([48e2117](https://github.com/HankHuang0516/EClaw/commit/48e2117b64e37f05dc635e0a3b67bfd43cbe48f5))
* **kanban:** notify reviewer on manual /move → review ([#2753](https://github.com/HankHuang0516/EClaw/issues/2753)) ([6cbbb4e](https://github.com/HankHuang0516/EClaw/commit/6cbbb4ee8c0d4d8ad54df2e9b5faaa3699bd530f))
* **wallpaper:** off-load spritesheet fetch to IO so per-petdx sprites actually render ([#2618](https://github.com/HankHuang0516/EClaw/issues/2618)) ([61b832c](https://github.com/HankHuang0516/EClaw/commit/61b832c9fa8a1d0caab810ccc942d85c63349267)), closes [#2615](https://github.com/HankHuang0516/EClaw/issues/2615) [#2577](https://github.com/HankHuang0516/EClaw/issues/2577)
* **portal:** petdx-browser cookie-session fallback for device-login ([#2757](https://github.com/HankHuang0516/EClaw/issues/2757)) ([ca275f4](https://github.com/HankHuang0516/EClaw/commit/ca275f4519835da0c7ad71c588908a18f6f138d8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **i18n:** positional format specifiers for feedback_result_logs (7 locales) ([#2597](https://github.com/HankHuang0516/EClaw/issues/2597)) ([21aedc7](https://github.com/HankHuang0516/EClaw/commit/21aedc7eebc7a2839e340136f38dfdfd4dabb9dc))
* **avatar-petdx:** preserve descriptor across transient API failures (flicker) ([#2625](https://github.com/HankHuang0516/EClaw/issues/2625)) ([7b1c606](https://github.com/HankHuang0516/EClaw/commit/7b1c606514f7698d72ec95cf6c556e4043966186))
* **chat:** preserve scroll anchor while reading history ([#2693](https://github.com/HankHuang0516/EClaw/issues/2693)) ([945fdb7](https://github.com/HankHuang0516/EClaw/commit/945fdb7192b791b31882e1e75568dd8b11e4686f))
* **promo:** pull video embed from /promo-chat-avatar.html ([#2724](https://github.com/HankHuang0516/EClaw/issues/2724)) ([2afabc8](https://github.com/HankHuang0516/EClaw/commit/2afabc8c5ff8b25218a7cb857e8adfa572c8e9d5))
* **kanban:** realign stale recurring schedules ([#2785](https://github.com/HankHuang0516/EClaw/issues/2785)) ([ab8ee25](https://github.com/HankHuang0516/EClaw/commit/ab8ee250a9b37f3d3e838bb01d8866c8d2b78231))
* **portal:** reduce QA-discovered request fanout ([#2656](https://github.com/HankHuang0516/EClaw/issues/2656)) ([1e46d6b](https://github.com/HankHuang0516/EClaw/commit/1e46d6bab61e58c65b452b6503d953f8dddeee75))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **portal:** remove org chart fit scale floor ([#2676](https://github.com/HankHuang0516/EClaw/issues/2676)) ([0f01606](https://github.com/HankHuang0516/EClaw/commit/0f016068b963bb5f800a02f28817c7174979d913))
* **i18n:** rename mm_empty_title → mm_state_empty_title in mindmap.html ([#2683](https://github.com/HankHuang0516/EClaw/issues/2683)) ([c79c109](https://github.com/HankHuang0516/EClaw/commit/c79c109bea23142e8a6d9ace976d105af1280ec9))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **chat:** render mention avatars with companion renderer ([#2633](https://github.com/HankHuang0516/EClaw/issues/2633)) ([03e205f](https://github.com/HankHuang0516/EClaw/commit/03e205f663ecd2c2f443d4009dd5af0093f0bbbb))
* **kanban:** reserve mobile comments panel height ([#2782](https://github.com/HankHuang0516/EClaw/issues/2782)) ([ce8662d](https://github.com/HankHuang0516/EClaw/commit/ce8662d362422fdd25037f1deb61dbed9425e2f9))
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* scheduled audit 2026-05-13 — 6 bugs, XSS, i18n ([#2668](https://github.com/HankHuang0516/EClaw/issues/2668)) ([21dd513](https://github.com/HankHuang0516/EClaw/commit/21dd513b4464738de29164265437435ba6cc4817)), closes [#2605](https://github.com/HankHuang0516/EClaw/issues/2605) [#2608](https://github.com/HankHuang0516/EClaw/issues/2608) [#2600](https://github.com/HankHuang0516/EClaw/issues/2600) [#2599](https://github.com/HankHuang0516/EClaw/issues/2599) [#2598](https://github.com/HankHuang0516/EClaw/issues/2598)
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **chat:** smart-chip preview falls back to inline c.comments when /comments fails (PR [#2677](https://github.com/HankHuang0516/EClaw/issues/2677)) ([7f4dffd](https://github.com/HankHuang0516/EClaw/commit/7f4dffd2c83ea86f296b8fa0610f0e67c9f1af11))
* **wallpaper:** stop Android live wallpaper flashing default lobster on companion change ([#2629](https://github.com/HankHuang0516/EClaw/issues/2629)) ([8b4f66f](https://github.com/HankHuang0516/EClaw/commit/8b4f66fcb335bf43128f924b761b6337c817095b)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **app:** WebView pages honor app-selected locale via ?lang= URL param ([#2672](https://github.com/HankHuang0516/EClaw/issues/2672)) ([8ed8757](https://github.com/HankHuang0516/EClaw/commit/8ed8757aec5bf214e837cc0d81bf2b23f1993a91)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* **community:** 1-click chat button on bot cards + utm tagging ([#2610](https://github.com/HankHuang0516/EClaw/issues/2610)) ([eee97b0](https://github.com/HankHuang0516/EClaw/commit/eee97b0e2e4e74945ec24f218a69a52800b97a66))
* **chat:** add avatar size preference ([#2714](https://github.com/HankHuang0516/EClaw/issues/2714)) ([6fe164a](https://github.com/HankHuang0516/EClaw/commit/6fe164ad8b22fa576d2dd9ad37c0d9fc295b5a83))
* **dashboard:** add Claude and Codex channel guides ([#2640](https://github.com/HankHuang0516/EClaw/issues/2640)) ([c64e4c4](https://github.com/HankHuang0516/EClaw/commit/c64e4c4afc78db58c5cd578f00486dd7b2fd3311))
* **dashboard:** add Claude Code channel guide card ([#2667](https://github.com/HankHuang0516/EClaw/issues/2667)) ([d70d75c](https://github.com/HankHuang0516/EClaw/commit/d70d75c0c8caa8a540358a9aab4556b8c1927a5c))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* **kanban:** add device-scoped card tags ([#2773](https://github.com/HankHuang0516/EClaw/issues/2773)) ([53a387e](https://github.com/HankHuang0516/EClaw/commit/53a387e67ba7bb4f6bed1c427000c4ae8666577a))
* **portal:** add entity selector to petdx-browser ([#2602](https://github.com/HankHuang0516/EClaw/issues/2602)) ([3fa067e](https://github.com/HankHuang0516/EClaw/commit/3fa067e00b38829b48a37cecd33ee81a9a1122d9))
* **kanban:** add explicit card links ([#2721](https://github.com/HankHuang0516/EClaw/issues/2721)) ([ef9f812](https://github.com/HankHuang0516/EClaw/commit/ef9f812a3fcf39efd07fd158ce90951bdd045ac7))
* **mindmap:** add GET /api/mindmap/graph force-graph projection ([#2680](https://github.com/HankHuang0516/EClaw/issues/2680)) ([a00b2e7](https://github.com/HankHuang0516/EClaw/commit/a00b2e775af2c4c98cd157f760ad87aeeee469f0)), closes [#2679](https://github.com/HankHuang0516/EClaw/issues/2679) [#2679](https://github.com/HankHuang0516/EClaw/issues/2679)
* **dashboard:** add Hermes channel promo card ([#2708](https://github.com/HankHuang0516/EClaw/issues/2708)) ([337aca1](https://github.com/HankHuang0516/EClaw/commit/337aca153d5a1cd7e888c065f00ae54db7872d91))
* **rental:** add listing soft pause ([#2781](https://github.com/HankHuang0516/EClaw/issues/2781)) ([6586b72](https://github.com/HankHuang0516/EClaw/commit/6586b72717ddb1637d91cd3242c8d2ff554f62b4))
* **portal:** add Nagoya 5D4N trip static cross-ref page ([#2689](https://github.com/HankHuang0516/EClaw/issues/2689)) ([2e0efb6](https://github.com/HankHuang0516/EClaw/commit/2e0efb6dcdaff52226cc8854a96747000b12bdff))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **settings:** add rental roster management preview ([#2758](https://github.com/HankHuang0516/EClaw/issues/2758)) ([9706e59](https://github.com/HankHuang0516/EClaw/commit/9706e59ded140a90a6e02348124282bc69d89001))
* **rental:** add renter health chat indicator ([#2690](https://github.com/HankHuang0516/EClaw/issues/2690)) ([36cd2e9](https://github.com/HankHuang0516/EClaw/commit/36cd2e9802be4c7ebb03d3024617fa74aca48ffd))
* **companion:** bridge crafter-station/petdex gallery (1784 pets) ([#2601](https://github.com/HankHuang0516/EClaw/issues/2601)) ([2e245be](https://github.com/HankHuang0516/EClaw/commit/2e245bea6dd47ea7361b927d389188a3c23b6bb3))
* **promo:** chat avatar size feature landing page (self-hosted MP4) ([#2722](https://github.com/HankHuang0516/EClaw/issues/2722)) ([3852210](https://github.com/HankHuang0516/EClaw/commit/3852210d355704d018e3daca6b5f9512a011b210)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **kanban:** cron-spawn jitter + lane backpressure to prevent same-tick wedge ([#2791](https://github.com/HankHuang0516/EClaw/issues/2791)) ([9f414a7](https://github.com/HankHuang0516/EClaw/commit/9f414a731d6393672a0a4189c7b408c529ae5e12)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **promo:** embed daily eclaw video 2026-05-14 ([#2786](https://github.com/HankHuang0516/EClaw/issues/2786)) ([718a814](https://github.com/HankHuang0516/EClaw/commit/718a814ab16850bc2b33a1b303841e2c4378ecfa)), closes [#2782](https://github.com/HankHuang0516/EClaw/issues/2782) [#2693](https://github.com/HankHuang0516/EClaw/issues/2693)
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **rental:** enforce strict rebind refunds ([#2703](https://github.com/HankHuang0516/EClaw/issues/2703)) ([a1859c5](https://github.com/HankHuang0516/EClaw/commit/a1859c50e6fb3991d7a8051491502d824a14a116))
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **chat:** link card previews to kanban ([#2754](https://github.com/HankHuang0516/EClaw/issues/2754)) ([2261240](https://github.com/HankHuang0516/EClaw/commit/22612402c2e95efb07246629e81a849be41ee9c7))
* **mission:** link notes to kanban cards ([#2723](https://github.com/HankHuang0516/EClaw/issues/2723)) ([b36dc18](https://github.com/HankHuang0516/EClaw/commit/b36dc18f3a8facf12e0b6046351c222f1e99dc55))
* **mindmap:** mission.html link to /portal/mindmap.html + deprecate /api/mission/mindmap ([#2685](https://github.com/HankHuang0516/EClaw/issues/2685)) ([11e297b](https://github.com/HankHuang0516/EClaw/commit/11e297bab1c9b56fcde3027d6500b7c58891bf18)), closes [#2680](https://github.com/HankHuang0516/EClaw/issues/2680) [#2684](https://github.com/HankHuang0516/EClaw/issues/2684)
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **avatar:** petdx render on card-holder my-cards (Phase 1b) ([#2621](https://github.com/HankHuang0516/EClaw/issues/2621)) ([f78ba8b](https://github.com/HankHuang0516/EClaw/commit/f78ba8b18acc426936ab6d8a82ca7541effea00d))
* **avatar:** petdx render on dashboard entity grid / org chart / bindings (Phase 1b) ([#2622](https://github.com/HankHuang0516/EClaw/issues/2622)) ([f417749](https://github.com/HankHuang0516/EClaw/commit/f41774914451048e8cd76e9ae30416a0642e173b)), closes [#2620](https://github.com/HankHuang0516/EClaw/issues/2620) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621)
* **avatar:** petdx render on kanban auto-assign / pulse / comment avatars (Phase 1b) ([#2624](https://github.com/HankHuang0516/EClaw/issues/2624)) ([6bff5f8](https://github.com/HankHuang0516/EClaw/commit/6bff5f80440d0bd91a6b1721cde9478d685c4d46))
* **avatar:** petdx render on mission skill/rule/soul entity dialogs (Phase 1b) ([#2623](https://github.com/HankHuang0516/EClaw/issues/2623)) ([129327b](https://github.com/HankHuang0516/EClaw/commit/129327bc7b91056659f1ab7e8d5e3f5260d951fb))
* **mindmap:** portal/mindmap.html force-graph prototype ([#129](https://github.com/HankHuang0516/EClaw/issues/129)) ([#2681](https://github.com/HankHuang0516/EClaw/issues/2681)) ([0f15e69](https://github.com/HankHuang0516/EClaw/commit/0f15e6930f0697c37fa08f3219edb8f9e499837f)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **portal:** redo nagoya trip page in professional tour-guide style ([#2691](https://github.com/HankHuang0516/EClaw/issues/2691)) ([b2378c0](https://github.com/HankHuang0516/EClaw/commit/b2378c06ee20fa9cccfdceceb1a4c9e0b3072f59))
* **avatar:** render selected petdx companion in chat avatars ([#2620](https://github.com/HankHuang0516/EClaw/issues/2620)) ([0bdd046](https://github.com/HankHuang0516/EClaw/commit/0bdd046fe1b1c428e32edda366ff112c08927f4c))
* **home:** replace native home with WebView hosting dashboard.html ([#2634](https://github.com/HankHuang0516/EClaw/issues/2634)) ([e69ea81](https://github.com/HankHuang0516/EClaw/commit/e69ea8160c239b083a83d6dc83a4f1c3f901c863))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **chat:** support message deep links ([#2719](https://github.com/HankHuang0516/EClaw/issues/2719)) ([2dc0f1e](https://github.com/HankHuang0516/EClaw/commit/2dc0f1eeb259e1a0848db4a03186b989372cd91c))
* **mission:** support note deep links ([#2717](https://github.com/HankHuang0516/EClaw/issues/2717)) ([2efd3a5](https://github.com/HankHuang0516/EClaw/commit/2efd3a5e741217a07c0b0ac54a0ddd010e0ebe23))
* **share-chat:** twitter card + per-bot og:image/twitter:* in SSR ([#2609](https://github.com/HankHuang0516/EClaw/issues/2609)) ([6cdc853](https://github.com/HankHuang0516/EClaw/commit/6cdc853dc884cdb95bd47214942768981f218ae0))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))
* **settings:** wire petdx avatar into channel-account chips ([#2626](https://github.com/HankHuang0516/EClaw/issues/2626)) ([88aec77](https://github.com/HankHuang0516/EClaw/commit/88aec772628c240e97b336bb5820892ad632d1ae))
* **files:** wire petdx avatar into entity filter & per-file badges ([#2627](https://github.com/HankHuang0516/EClaw/issues/2627)) ([5b3e5cc](https://github.com/HankHuang0516/EClaw/commit/5b3e5cc542d9da69bb4e92500fd03a542ea33f00))
* **mindmap:** wrap hardcoded zh-TW UI strings with i18n t() ([#2607](https://github.com/HankHuang0516/EClaw/issues/2607)) ([166af87](https://github.com/HankHuang0516/EClaw/commit/166af8772b2121a24aaf34a83b3de970e9b3b571)), closes [#2606](https://github.com/HankHuang0516/EClaw/issues/2606)


### Performance Improvements

* **mindmap:** force-graph hardening for 1000/2000-node graphs ([#2684](https://github.com/HankHuang0516/EClaw/issues/2684)) ([da8b1c8](https://github.com/HankHuang0516/EClaw/commit/da8b1c8f947ab8bc8fa455c1962a91146623a1fc))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-14)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **notifications:** add kanban_done + kanban_done_auto toggles to Android Settings ([#2636](https://github.com/HankHuang0516/EClaw/issues/2636)) ([a710909](https://github.com/HankHuang0516/EClaw/commit/a7109095e3393b8564e7ef1b23d382a4fbb944b8))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **i18n:** clear batch 1 residual missing keys ([#2790](https://github.com/HankHuang0516/EClaw/issues/2790)) ([211030e](https://github.com/HankHuang0516/EClaw/commit/211030e0b0b6a865c11f0c4ed60dc4e356d43b7a))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **kanban:** comment input no longer overlaps last comment in card detail (PR [#2678](https://github.com/HankHuang0516/EClaw/issues/2678)) ([fba91fc](https://github.com/HankHuang0516/EClaw/commit/fba91fca15402b453a0db5ee857c0b16e6087055))
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **petdx:** drop dark-grey loading placeholder + preload sprite WEBP ([#2628](https://github.com/HankHuang0516/EClaw/issues/2628)) ([59cef38](https://github.com/HankHuang0516/EClaw/commit/59cef387bd69ca99d7d15c86a1364856d3849ad8)), closes [#1a1a1a](https://github.com/HankHuang0516/EClaw/issues/1a1a1a)
* **entities:** expose botSecret to owner so wallpaper service can poll companions ([#2615](https://github.com/HankHuang0516/EClaw/issues/2615)) ([04470fc](https://github.com/HankHuang0516/EClaw/commit/04470fce8f8c3fce2b1ba8b243e776606f107502))
* **rental:** expose owner_public_code in marketplace so plaza CTA can route ([#2616](https://github.com/HankHuang0516/EClaw/issues/2616)) ([4d1372f](https://github.com/HankHuang0516/EClaw/commit/4d1372f717d93cab65543e87c852e74e9fb67071)), closes [#2610](https://github.com/HankHuang0516/EClaw/issues/2610)
* **mindmap:** fallback to device scope when entityId is null ([#2728](https://github.com/HankHuang0516/EClaw/issues/2728)) ([7572312](https://github.com/HankHuang0516/EClaw/commit/7572312433d3d75fc245eda48a28919ce14bd927))
* **i18n:** fill Spanish drift keys ([#2751](https://github.com/HankHuang0516/EClaw/issues/2751)) ([0ad0ee5](https://github.com/HankHuang0516/EClaw/commit/0ad0ee55f7fac3e6ac46d891539950dab4d553cc))
* **portal:** fit embedded org chart to mobile viewport ([#2674](https://github.com/HankHuang0516/EClaw/issues/2674)) ([1c4e1b4](https://github.com/HankHuang0516/EClaw/commit/1c4e1b413ea7027b4cd4b8ecda981b0d0e12e66b))
* **i18n:** fix 6 trailing-comma syntax errors in 10-locale batch ([#2771](https://github.com/HankHuang0516/EClaw/issues/2771)) ([b27c6ca](https://github.com/HankHuang0516/EClaw/commit/b27c6ca204bf813e406c54ce3a2532a5f1f031b3))
* **uiux:** harden chat previews and roster preview ([#2769](https://github.com/HankHuang0516/EClaw/issues/2769)) ([466d4d3](https://github.com/HankHuang0516/EClaw/commit/466d4d3ef81c628d3f58db64323946053d7bf61c))
* **mention-parser:** ignore @-mentions inside markdown code spans ([#2645](https://github.com/HankHuang0516/EClaw/issues/2645)) ([8da19d4](https://github.com/HankHuang0516/EClaw/commit/8da19d4a79ceb4152bf2144ee0847c61ce3e1def)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **kanban:** lazy-load dependency chips via IntersectionObserver ([#2632](https://github.com/HankHuang0516/EClaw/issues/2632)) ([20586b4](https://github.com/HankHuang0516/EClaw/commit/20586b43357335f9eb6a190c02d58c8e36b58aba)), closes [#2631](https://github.com/HankHuang0516/EClaw/issues/2631)
* **kanban:** make card sorting deterministic ([#2756](https://github.com/HankHuang0516/EClaw/issues/2756)) ([48e2117](https://github.com/HankHuang0516/EClaw/commit/48e2117b64e37f05dc635e0a3b67bfd43cbe48f5))
* **kanban:** notify reviewer on manual /move → review ([#2753](https://github.com/HankHuang0516/EClaw/issues/2753)) ([6cbbb4e](https://github.com/HankHuang0516/EClaw/commit/6cbbb4ee8c0d4d8ad54df2e9b5faaa3699bd530f))
* **wallpaper:** off-load spritesheet fetch to IO so per-petdx sprites actually render ([#2618](https://github.com/HankHuang0516/EClaw/issues/2618)) ([61b832c](https://github.com/HankHuang0516/EClaw/commit/61b832c9fa8a1d0caab810ccc942d85c63349267)), closes [#2615](https://github.com/HankHuang0516/EClaw/issues/2615) [#2577](https://github.com/HankHuang0516/EClaw/issues/2577)
* **portal:** petdx-browser cookie-session fallback for device-login ([#2757](https://github.com/HankHuang0516/EClaw/issues/2757)) ([ca275f4](https://github.com/HankHuang0516/EClaw/commit/ca275f4519835da0c7ad71c588908a18f6f138d8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **i18n:** positional format specifiers for feedback_result_logs (7 locales) ([#2597](https://github.com/HankHuang0516/EClaw/issues/2597)) ([21aedc7](https://github.com/HankHuang0516/EClaw/commit/21aedc7eebc7a2839e340136f38dfdfd4dabb9dc))
* **avatar-petdx:** preserve descriptor across transient API failures (flicker) ([#2625](https://github.com/HankHuang0516/EClaw/issues/2625)) ([7b1c606](https://github.com/HankHuang0516/EClaw/commit/7b1c606514f7698d72ec95cf6c556e4043966186))
* **chat:** preserve scroll anchor while reading history ([#2693](https://github.com/HankHuang0516/EClaw/issues/2693)) ([945fdb7](https://github.com/HankHuang0516/EClaw/commit/945fdb7192b791b31882e1e75568dd8b11e4686f))
* **promo:** pull video embed from /promo-chat-avatar.html ([#2724](https://github.com/HankHuang0516/EClaw/issues/2724)) ([2afabc8](https://github.com/HankHuang0516/EClaw/commit/2afabc8c5ff8b25218a7cb857e8adfa572c8e9d5))
* **kanban:** realign stale recurring schedules ([#2785](https://github.com/HankHuang0516/EClaw/issues/2785)) ([ab8ee25](https://github.com/HankHuang0516/EClaw/commit/ab8ee250a9b37f3d3e838bb01d8866c8d2b78231))
* **portal:** reduce QA-discovered request fanout ([#2656](https://github.com/HankHuang0516/EClaw/issues/2656)) ([1e46d6b](https://github.com/HankHuang0516/EClaw/commit/1e46d6bab61e58c65b452b6503d953f8dddeee75))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **portal:** remove org chart fit scale floor ([#2676](https://github.com/HankHuang0516/EClaw/issues/2676)) ([0f01606](https://github.com/HankHuang0516/EClaw/commit/0f016068b963bb5f800a02f28817c7174979d913))
* **i18n:** rename mm_empty_title → mm_state_empty_title in mindmap.html ([#2683](https://github.com/HankHuang0516/EClaw/issues/2683)) ([c79c109](https://github.com/HankHuang0516/EClaw/commit/c79c109bea23142e8a6d9ace976d105af1280ec9))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **chat:** render mention avatars with companion renderer ([#2633](https://github.com/HankHuang0516/EClaw/issues/2633)) ([03e205f](https://github.com/HankHuang0516/EClaw/commit/03e205f663ecd2c2f443d4009dd5af0093f0bbbb))
* **kanban:** reserve mobile comments panel height ([#2782](https://github.com/HankHuang0516/EClaw/issues/2782)) ([ce8662d](https://github.com/HankHuang0516/EClaw/commit/ce8662d362422fdd25037f1deb61dbed9425e2f9))
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* scheduled audit 2026-05-13 — 6 bugs, XSS, i18n ([#2668](https://github.com/HankHuang0516/EClaw/issues/2668)) ([21dd513](https://github.com/HankHuang0516/EClaw/commit/21dd513b4464738de29164265437435ba6cc4817)), closes [#2605](https://github.com/HankHuang0516/EClaw/issues/2605) [#2608](https://github.com/HankHuang0516/EClaw/issues/2608) [#2600](https://github.com/HankHuang0516/EClaw/issues/2600) [#2599](https://github.com/HankHuang0516/EClaw/issues/2599) [#2598](https://github.com/HankHuang0516/EClaw/issues/2598)
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **chat:** smart-chip preview falls back to inline c.comments when /comments fails (PR [#2677](https://github.com/HankHuang0516/EClaw/issues/2677)) ([7f4dffd](https://github.com/HankHuang0516/EClaw/commit/7f4dffd2c83ea86f296b8fa0610f0e67c9f1af11))
* **wallpaper:** stop Android live wallpaper flashing default lobster on companion change ([#2629](https://github.com/HankHuang0516/EClaw/issues/2629)) ([8b4f66f](https://github.com/HankHuang0516/EClaw/commit/8b4f66fcb335bf43128f924b761b6337c817095b)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **app:** WebView pages honor app-selected locale via ?lang= URL param ([#2672](https://github.com/HankHuang0516/EClaw/issues/2672)) ([8ed8757](https://github.com/HankHuang0516/EClaw/commit/8ed8757aec5bf214e837cc0d81bf2b23f1993a91)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* **community:** 1-click chat button on bot cards + utm tagging ([#2610](https://github.com/HankHuang0516/EClaw/issues/2610)) ([eee97b0](https://github.com/HankHuang0516/EClaw/commit/eee97b0e2e4e74945ec24f218a69a52800b97a66))
* **chat:** add avatar size preference ([#2714](https://github.com/HankHuang0516/EClaw/issues/2714)) ([6fe164a](https://github.com/HankHuang0516/EClaw/commit/6fe164ad8b22fa576d2dd9ad37c0d9fc295b5a83))
* **dashboard:** add Claude and Codex channel guides ([#2640](https://github.com/HankHuang0516/EClaw/issues/2640)) ([c64e4c4](https://github.com/HankHuang0516/EClaw/commit/c64e4c4afc78db58c5cd578f00486dd7b2fd3311))
* **dashboard:** add Claude Code channel guide card ([#2667](https://github.com/HankHuang0516/EClaw/issues/2667)) ([d70d75c](https://github.com/HankHuang0516/EClaw/commit/d70d75c0c8caa8a540358a9aab4556b8c1927a5c))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* **kanban:** add device-scoped card tags ([#2773](https://github.com/HankHuang0516/EClaw/issues/2773)) ([53a387e](https://github.com/HankHuang0516/EClaw/commit/53a387e67ba7bb4f6bed1c427000c4ae8666577a))
* **portal:** add entity selector to petdx-browser ([#2602](https://github.com/HankHuang0516/EClaw/issues/2602)) ([3fa067e](https://github.com/HankHuang0516/EClaw/commit/3fa067e00b38829b48a37cecd33ee81a9a1122d9))
* **kanban:** add explicit card links ([#2721](https://github.com/HankHuang0516/EClaw/issues/2721)) ([ef9f812](https://github.com/HankHuang0516/EClaw/commit/ef9f812a3fcf39efd07fd158ce90951bdd045ac7))
* **mindmap:** add GET /api/mindmap/graph force-graph projection ([#2680](https://github.com/HankHuang0516/EClaw/issues/2680)) ([a00b2e7](https://github.com/HankHuang0516/EClaw/commit/a00b2e775af2c4c98cd157f760ad87aeeee469f0)), closes [#2679](https://github.com/HankHuang0516/EClaw/issues/2679) [#2679](https://github.com/HankHuang0516/EClaw/issues/2679)
* **dashboard:** add Hermes channel promo card ([#2708](https://github.com/HankHuang0516/EClaw/issues/2708)) ([337aca1](https://github.com/HankHuang0516/EClaw/commit/337aca153d5a1cd7e888c065f00ae54db7872d91))
* **rental:** add listing soft pause ([#2781](https://github.com/HankHuang0516/EClaw/issues/2781)) ([6586b72](https://github.com/HankHuang0516/EClaw/commit/6586b72717ddb1637d91cd3242c8d2ff554f62b4))
* **portal:** add Nagoya 5D4N trip static cross-ref page ([#2689](https://github.com/HankHuang0516/EClaw/issues/2689)) ([2e0efb6](https://github.com/HankHuang0516/EClaw/commit/2e0efb6dcdaff52226cc8854a96747000b12bdff))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **settings:** add rental roster management preview ([#2758](https://github.com/HankHuang0516/EClaw/issues/2758)) ([9706e59](https://github.com/HankHuang0516/EClaw/commit/9706e59ded140a90a6e02348124282bc69d89001))
* **rental:** add renter health chat indicator ([#2690](https://github.com/HankHuang0516/EClaw/issues/2690)) ([36cd2e9](https://github.com/HankHuang0516/EClaw/commit/36cd2e9802be4c7ebb03d3024617fa74aca48ffd))
* **companion:** bridge crafter-station/petdex gallery (1784 pets) ([#2601](https://github.com/HankHuang0516/EClaw/issues/2601)) ([2e245be](https://github.com/HankHuang0516/EClaw/commit/2e245bea6dd47ea7361b927d389188a3c23b6bb3))
* **promo:** chat avatar size feature landing page (self-hosted MP4) ([#2722](https://github.com/HankHuang0516/EClaw/issues/2722)) ([3852210](https://github.com/HankHuang0516/EClaw/commit/3852210d355704d018e3daca6b5f9512a011b210)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **kanban:** cron-spawn jitter + lane backpressure to prevent same-tick wedge ([#2791](https://github.com/HankHuang0516/EClaw/issues/2791)) ([9f414a7](https://github.com/HankHuang0516/EClaw/commit/9f414a731d6393672a0a4189c7b408c529ae5e12)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **promo:** embed daily eclaw video 2026-05-14 ([#2786](https://github.com/HankHuang0516/EClaw/issues/2786)) ([718a814](https://github.com/HankHuang0516/EClaw/commit/718a814ab16850bc2b33a1b303841e2c4378ecfa)), closes [#2782](https://github.com/HankHuang0516/EClaw/issues/2782) [#2693](https://github.com/HankHuang0516/EClaw/issues/2693)
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **rental:** enforce strict rebind refunds ([#2703](https://github.com/HankHuang0516/EClaw/issues/2703)) ([a1859c5](https://github.com/HankHuang0516/EClaw/commit/a1859c50e6fb3991d7a8051491502d824a14a116))
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **chat:** link card previews to kanban ([#2754](https://github.com/HankHuang0516/EClaw/issues/2754)) ([2261240](https://github.com/HankHuang0516/EClaw/commit/22612402c2e95efb07246629e81a849be41ee9c7))
* **mission:** link notes to kanban cards ([#2723](https://github.com/HankHuang0516/EClaw/issues/2723)) ([b36dc18](https://github.com/HankHuang0516/EClaw/commit/b36dc18f3a8facf12e0b6046351c222f1e99dc55))
* **mindmap:** mission.html link to /portal/mindmap.html + deprecate /api/mission/mindmap ([#2685](https://github.com/HankHuang0516/EClaw/issues/2685)) ([11e297b](https://github.com/HankHuang0516/EClaw/commit/11e297bab1c9b56fcde3027d6500b7c58891bf18)), closes [#2680](https://github.com/HankHuang0516/EClaw/issues/2680) [#2684](https://github.com/HankHuang0516/EClaw/issues/2684)
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **avatar:** petdx render on card-holder my-cards (Phase 1b) ([#2621](https://github.com/HankHuang0516/EClaw/issues/2621)) ([f78ba8b](https://github.com/HankHuang0516/EClaw/commit/f78ba8b18acc426936ab6d8a82ca7541effea00d))
* **avatar:** petdx render on dashboard entity grid / org chart / bindings (Phase 1b) ([#2622](https://github.com/HankHuang0516/EClaw/issues/2622)) ([f417749](https://github.com/HankHuang0516/EClaw/commit/f41774914451048e8cd76e9ae30416a0642e173b)), closes [#2620](https://github.com/HankHuang0516/EClaw/issues/2620) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621)
* **avatar:** petdx render on kanban auto-assign / pulse / comment avatars (Phase 1b) ([#2624](https://github.com/HankHuang0516/EClaw/issues/2624)) ([6bff5f8](https://github.com/HankHuang0516/EClaw/commit/6bff5f80440d0bd91a6b1721cde9478d685c4d46))
* **avatar:** petdx render on mission skill/rule/soul entity dialogs (Phase 1b) ([#2623](https://github.com/HankHuang0516/EClaw/issues/2623)) ([129327b](https://github.com/HankHuang0516/EClaw/commit/129327bc7b91056659f1ab7e8d5e3f5260d951fb))
* **mindmap:** portal/mindmap.html force-graph prototype ([#129](https://github.com/HankHuang0516/EClaw/issues/129)) ([#2681](https://github.com/HankHuang0516/EClaw/issues/2681)) ([0f15e69](https://github.com/HankHuang0516/EClaw/commit/0f15e6930f0697c37fa08f3219edb8f9e499837f)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **portal:** redo nagoya trip page in professional tour-guide style ([#2691](https://github.com/HankHuang0516/EClaw/issues/2691)) ([b2378c0](https://github.com/HankHuang0516/EClaw/commit/b2378c06ee20fa9cccfdceceb1a4c9e0b3072f59))
* **avatar:** render selected petdx companion in chat avatars ([#2620](https://github.com/HankHuang0516/EClaw/issues/2620)) ([0bdd046](https://github.com/HankHuang0516/EClaw/commit/0bdd046fe1b1c428e32edda366ff112c08927f4c))
* **home:** replace native home with WebView hosting dashboard.html ([#2634](https://github.com/HankHuang0516/EClaw/issues/2634)) ([e69ea81](https://github.com/HankHuang0516/EClaw/commit/e69ea8160c239b083a83d6dc83a4f1c3f901c863))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **chat:** support message deep links ([#2719](https://github.com/HankHuang0516/EClaw/issues/2719)) ([2dc0f1e](https://github.com/HankHuang0516/EClaw/commit/2dc0f1eeb259e1a0848db4a03186b989372cd91c))
* **mission:** support note deep links ([#2717](https://github.com/HankHuang0516/EClaw/issues/2717)) ([2efd3a5](https://github.com/HankHuang0516/EClaw/commit/2efd3a5e741217a07c0b0ac54a0ddd010e0ebe23))
* **share-chat:** twitter card + per-bot og:image/twitter:* in SSR ([#2609](https://github.com/HankHuang0516/EClaw/issues/2609)) ([6cdc853](https://github.com/HankHuang0516/EClaw/commit/6cdc853dc884cdb95bd47214942768981f218ae0))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))
* **settings:** wire petdx avatar into channel-account chips ([#2626](https://github.com/HankHuang0516/EClaw/issues/2626)) ([88aec77](https://github.com/HankHuang0516/EClaw/commit/88aec772628c240e97b336bb5820892ad632d1ae))
* **files:** wire petdx avatar into entity filter & per-file badges ([#2627](https://github.com/HankHuang0516/EClaw/issues/2627)) ([5b3e5cc](https://github.com/HankHuang0516/EClaw/commit/5b3e5cc542d9da69bb4e92500fd03a542ea33f00))
* **mindmap:** wrap hardcoded zh-TW UI strings with i18n t() ([#2607](https://github.com/HankHuang0516/EClaw/issues/2607)) ([166af87](https://github.com/HankHuang0516/EClaw/commit/166af8772b2121a24aaf34a83b3de970e9b3b571)), closes [#2606](https://github.com/HankHuang0516/EClaw/issues/2606)


### Performance Improvements

* **mindmap:** force-graph hardening for 1000/2000-node graphs ([#2684](https://github.com/HankHuang0516/EClaw/issues/2684)) ([da8b1c8](https://github.com/HankHuang0516/EClaw/commit/da8b1c8f947ab8bc8fa455c1962a91146623a1fc))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-14)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **notifications:** add kanban_done + kanban_done_auto toggles to Android Settings ([#2636](https://github.com/HankHuang0516/EClaw/issues/2636)) ([a710909](https://github.com/HankHuang0516/EClaw/commit/a7109095e3393b8564e7ef1b23d382a4fbb944b8))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **i18n:** clear batch 1 residual missing keys ([#2790](https://github.com/HankHuang0516/EClaw/issues/2790)) ([211030e](https://github.com/HankHuang0516/EClaw/commit/211030e0b0b6a865c11f0c4ed60dc4e356d43b7a))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **kanban:** comment input no longer overlaps last comment in card detail (PR [#2678](https://github.com/HankHuang0516/EClaw/issues/2678)) ([fba91fc](https://github.com/HankHuang0516/EClaw/commit/fba91fca15402b453a0db5ee857c0b16e6087055))
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **petdx:** drop dark-grey loading placeholder + preload sprite WEBP ([#2628](https://github.com/HankHuang0516/EClaw/issues/2628)) ([59cef38](https://github.com/HankHuang0516/EClaw/commit/59cef387bd69ca99d7d15c86a1364856d3849ad8)), closes [#1a1a1a](https://github.com/HankHuang0516/EClaw/issues/1a1a1a)
* **entities:** expose botSecret to owner so wallpaper service can poll companions ([#2615](https://github.com/HankHuang0516/EClaw/issues/2615)) ([04470fc](https://github.com/HankHuang0516/EClaw/commit/04470fce8f8c3fce2b1ba8b243e776606f107502))
* **rental:** expose owner_public_code in marketplace so plaza CTA can route ([#2616](https://github.com/HankHuang0516/EClaw/issues/2616)) ([4d1372f](https://github.com/HankHuang0516/EClaw/commit/4d1372f717d93cab65543e87c852e74e9fb67071)), closes [#2610](https://github.com/HankHuang0516/EClaw/issues/2610)
* **mindmap:** fallback to device scope when entityId is null ([#2728](https://github.com/HankHuang0516/EClaw/issues/2728)) ([7572312](https://github.com/HankHuang0516/EClaw/commit/7572312433d3d75fc245eda48a28919ce14bd927))
* **i18n:** fill Spanish drift keys ([#2751](https://github.com/HankHuang0516/EClaw/issues/2751)) ([0ad0ee5](https://github.com/HankHuang0516/EClaw/commit/0ad0ee55f7fac3e6ac46d891539950dab4d553cc))
* **portal:** fit embedded org chart to mobile viewport ([#2674](https://github.com/HankHuang0516/EClaw/issues/2674)) ([1c4e1b4](https://github.com/HankHuang0516/EClaw/commit/1c4e1b413ea7027b4cd4b8ecda981b0d0e12e66b))
* **i18n:** fix 6 trailing-comma syntax errors in 10-locale batch ([#2771](https://github.com/HankHuang0516/EClaw/issues/2771)) ([b27c6ca](https://github.com/HankHuang0516/EClaw/commit/b27c6ca204bf813e406c54ce3a2532a5f1f031b3))
* **uiux:** harden chat previews and roster preview ([#2769](https://github.com/HankHuang0516/EClaw/issues/2769)) ([466d4d3](https://github.com/HankHuang0516/EClaw/commit/466d4d3ef81c628d3f58db64323946053d7bf61c))
* **mention-parser:** ignore @-mentions inside markdown code spans ([#2645](https://github.com/HankHuang0516/EClaw/issues/2645)) ([8da19d4](https://github.com/HankHuang0516/EClaw/commit/8da19d4a79ceb4152bf2144ee0847c61ce3e1def)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **kanban:** lazy-load dependency chips via IntersectionObserver ([#2632](https://github.com/HankHuang0516/EClaw/issues/2632)) ([20586b4](https://github.com/HankHuang0516/EClaw/commit/20586b43357335f9eb6a190c02d58c8e36b58aba)), closes [#2631](https://github.com/HankHuang0516/EClaw/issues/2631)
* **kanban:** make card sorting deterministic ([#2756](https://github.com/HankHuang0516/EClaw/issues/2756)) ([48e2117](https://github.com/HankHuang0516/EClaw/commit/48e2117b64e37f05dc635e0a3b67bfd43cbe48f5))
* **kanban:** notify reviewer on manual /move → review ([#2753](https://github.com/HankHuang0516/EClaw/issues/2753)) ([6cbbb4e](https://github.com/HankHuang0516/EClaw/commit/6cbbb4ee8c0d4d8ad54df2e9b5faaa3699bd530f))
* **wallpaper:** off-load spritesheet fetch to IO so per-petdx sprites actually render ([#2618](https://github.com/HankHuang0516/EClaw/issues/2618)) ([61b832c](https://github.com/HankHuang0516/EClaw/commit/61b832c9fa8a1d0caab810ccc942d85c63349267)), closes [#2615](https://github.com/HankHuang0516/EClaw/issues/2615) [#2577](https://github.com/HankHuang0516/EClaw/issues/2577)
* **portal:** petdx-browser cookie-session fallback for device-login ([#2757](https://github.com/HankHuang0516/EClaw/issues/2757)) ([ca275f4](https://github.com/HankHuang0516/EClaw/commit/ca275f4519835da0c7ad71c588908a18f6f138d8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **i18n:** positional format specifiers for feedback_result_logs (7 locales) ([#2597](https://github.com/HankHuang0516/EClaw/issues/2597)) ([21aedc7](https://github.com/HankHuang0516/EClaw/commit/21aedc7eebc7a2839e340136f38dfdfd4dabb9dc))
* **avatar-petdx:** preserve descriptor across transient API failures (flicker) ([#2625](https://github.com/HankHuang0516/EClaw/issues/2625)) ([7b1c606](https://github.com/HankHuang0516/EClaw/commit/7b1c606514f7698d72ec95cf6c556e4043966186))
* **chat:** preserve scroll anchor while reading history ([#2693](https://github.com/HankHuang0516/EClaw/issues/2693)) ([945fdb7](https://github.com/HankHuang0516/EClaw/commit/945fdb7192b791b31882e1e75568dd8b11e4686f))
* **promo:** pull video embed from /promo-chat-avatar.html ([#2724](https://github.com/HankHuang0516/EClaw/issues/2724)) ([2afabc8](https://github.com/HankHuang0516/EClaw/commit/2afabc8c5ff8b25218a7cb857e8adfa572c8e9d5))
* **kanban:** realign stale recurring schedules ([#2785](https://github.com/HankHuang0516/EClaw/issues/2785)) ([ab8ee25](https://github.com/HankHuang0516/EClaw/commit/ab8ee250a9b37f3d3e838bb01d8866c8d2b78231))
* **portal:** reduce QA-discovered request fanout ([#2656](https://github.com/HankHuang0516/EClaw/issues/2656)) ([1e46d6b](https://github.com/HankHuang0516/EClaw/commit/1e46d6bab61e58c65b452b6503d953f8dddeee75))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **portal:** remove org chart fit scale floor ([#2676](https://github.com/HankHuang0516/EClaw/issues/2676)) ([0f01606](https://github.com/HankHuang0516/EClaw/commit/0f016068b963bb5f800a02f28817c7174979d913))
* **i18n:** rename mm_empty_title → mm_state_empty_title in mindmap.html ([#2683](https://github.com/HankHuang0516/EClaw/issues/2683)) ([c79c109](https://github.com/HankHuang0516/EClaw/commit/c79c109bea23142e8a6d9ace976d105af1280ec9))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **chat:** render mention avatars with companion renderer ([#2633](https://github.com/HankHuang0516/EClaw/issues/2633)) ([03e205f](https://github.com/HankHuang0516/EClaw/commit/03e205f663ecd2c2f443d4009dd5af0093f0bbbb))
* **kanban:** reserve mobile comments panel height ([#2782](https://github.com/HankHuang0516/EClaw/issues/2782)) ([ce8662d](https://github.com/HankHuang0516/EClaw/commit/ce8662d362422fdd25037f1deb61dbed9425e2f9))
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* scheduled audit 2026-05-13 — 6 bugs, XSS, i18n ([#2668](https://github.com/HankHuang0516/EClaw/issues/2668)) ([21dd513](https://github.com/HankHuang0516/EClaw/commit/21dd513b4464738de29164265437435ba6cc4817)), closes [#2605](https://github.com/HankHuang0516/EClaw/issues/2605) [#2608](https://github.com/HankHuang0516/EClaw/issues/2608) [#2600](https://github.com/HankHuang0516/EClaw/issues/2600) [#2599](https://github.com/HankHuang0516/EClaw/issues/2599) [#2598](https://github.com/HankHuang0516/EClaw/issues/2598)
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **chat:** smart-chip preview falls back to inline c.comments when /comments fails (PR [#2677](https://github.com/HankHuang0516/EClaw/issues/2677)) ([7f4dffd](https://github.com/HankHuang0516/EClaw/commit/7f4dffd2c83ea86f296b8fa0610f0e67c9f1af11))
* **wallpaper:** stop Android live wallpaper flashing default lobster on companion change ([#2629](https://github.com/HankHuang0516/EClaw/issues/2629)) ([8b4f66f](https://github.com/HankHuang0516/EClaw/commit/8b4f66fcb335bf43128f924b761b6337c817095b)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **app:** WebView pages honor app-selected locale via ?lang= URL param ([#2672](https://github.com/HankHuang0516/EClaw/issues/2672)) ([8ed8757](https://github.com/HankHuang0516/EClaw/commit/8ed8757aec5bf214e837cc0d81bf2b23f1993a91)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* **community:** 1-click chat button on bot cards + utm tagging ([#2610](https://github.com/HankHuang0516/EClaw/issues/2610)) ([eee97b0](https://github.com/HankHuang0516/EClaw/commit/eee97b0e2e4e74945ec24f218a69a52800b97a66))
* **chat:** add avatar size preference ([#2714](https://github.com/HankHuang0516/EClaw/issues/2714)) ([6fe164a](https://github.com/HankHuang0516/EClaw/commit/6fe164ad8b22fa576d2dd9ad37c0d9fc295b5a83))
* **dashboard:** add Claude and Codex channel guides ([#2640](https://github.com/HankHuang0516/EClaw/issues/2640)) ([c64e4c4](https://github.com/HankHuang0516/EClaw/commit/c64e4c4afc78db58c5cd578f00486dd7b2fd3311))
* **dashboard:** add Claude Code channel guide card ([#2667](https://github.com/HankHuang0516/EClaw/issues/2667)) ([d70d75c](https://github.com/HankHuang0516/EClaw/commit/d70d75c0c8caa8a540358a9aab4556b8c1927a5c))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* **kanban:** add device-scoped card tags ([#2773](https://github.com/HankHuang0516/EClaw/issues/2773)) ([53a387e](https://github.com/HankHuang0516/EClaw/commit/53a387e67ba7bb4f6bed1c427000c4ae8666577a))
* **portal:** add entity selector to petdx-browser ([#2602](https://github.com/HankHuang0516/EClaw/issues/2602)) ([3fa067e](https://github.com/HankHuang0516/EClaw/commit/3fa067e00b38829b48a37cecd33ee81a9a1122d9))
* **kanban:** add explicit card links ([#2721](https://github.com/HankHuang0516/EClaw/issues/2721)) ([ef9f812](https://github.com/HankHuang0516/EClaw/commit/ef9f812a3fcf39efd07fd158ce90951bdd045ac7))
* **mindmap:** add GET /api/mindmap/graph force-graph projection ([#2680](https://github.com/HankHuang0516/EClaw/issues/2680)) ([a00b2e7](https://github.com/HankHuang0516/EClaw/commit/a00b2e775af2c4c98cd157f760ad87aeeee469f0)), closes [#2679](https://github.com/HankHuang0516/EClaw/issues/2679) [#2679](https://github.com/HankHuang0516/EClaw/issues/2679)
* **dashboard:** add Hermes channel promo card ([#2708](https://github.com/HankHuang0516/EClaw/issues/2708)) ([337aca1](https://github.com/HankHuang0516/EClaw/commit/337aca153d5a1cd7e888c065f00ae54db7872d91))
* **rental:** add listing soft pause ([#2781](https://github.com/HankHuang0516/EClaw/issues/2781)) ([6586b72](https://github.com/HankHuang0516/EClaw/commit/6586b72717ddb1637d91cd3242c8d2ff554f62b4))
* **portal:** add Nagoya 5D4N trip static cross-ref page ([#2689](https://github.com/HankHuang0516/EClaw/issues/2689)) ([2e0efb6](https://github.com/HankHuang0516/EClaw/commit/2e0efb6dcdaff52226cc8854a96747000b12bdff))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **settings:** add rental roster management preview ([#2758](https://github.com/HankHuang0516/EClaw/issues/2758)) ([9706e59](https://github.com/HankHuang0516/EClaw/commit/9706e59ded140a90a6e02348124282bc69d89001))
* **rental:** add renter health chat indicator ([#2690](https://github.com/HankHuang0516/EClaw/issues/2690)) ([36cd2e9](https://github.com/HankHuang0516/EClaw/commit/36cd2e9802be4c7ebb03d3024617fa74aca48ffd))
* **companion:** bridge crafter-station/petdex gallery (1784 pets) ([#2601](https://github.com/HankHuang0516/EClaw/issues/2601)) ([2e245be](https://github.com/HankHuang0516/EClaw/commit/2e245bea6dd47ea7361b927d389188a3c23b6bb3))
* **promo:** chat avatar size feature landing page (self-hosted MP4) ([#2722](https://github.com/HankHuang0516/EClaw/issues/2722)) ([3852210](https://github.com/HankHuang0516/EClaw/commit/3852210d355704d018e3daca6b5f9512a011b210)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **promo:** embed daily eclaw video 2026-05-14 ([#2786](https://github.com/HankHuang0516/EClaw/issues/2786)) ([718a814](https://github.com/HankHuang0516/EClaw/commit/718a814ab16850bc2b33a1b303841e2c4378ecfa)), closes [#2782](https://github.com/HankHuang0516/EClaw/issues/2782) [#2693](https://github.com/HankHuang0516/EClaw/issues/2693)
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **rental:** enforce strict rebind refunds ([#2703](https://github.com/HankHuang0516/EClaw/issues/2703)) ([a1859c5](https://github.com/HankHuang0516/EClaw/commit/a1859c50e6fb3991d7a8051491502d824a14a116))
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **chat:** link card previews to kanban ([#2754](https://github.com/HankHuang0516/EClaw/issues/2754)) ([2261240](https://github.com/HankHuang0516/EClaw/commit/22612402c2e95efb07246629e81a849be41ee9c7))
* **mission:** link notes to kanban cards ([#2723](https://github.com/HankHuang0516/EClaw/issues/2723)) ([b36dc18](https://github.com/HankHuang0516/EClaw/commit/b36dc18f3a8facf12e0b6046351c222f1e99dc55))
* **mindmap:** mission.html link to /portal/mindmap.html + deprecate /api/mission/mindmap ([#2685](https://github.com/HankHuang0516/EClaw/issues/2685)) ([11e297b](https://github.com/HankHuang0516/EClaw/commit/11e297bab1c9b56fcde3027d6500b7c58891bf18)), closes [#2680](https://github.com/HankHuang0516/EClaw/issues/2680) [#2684](https://github.com/HankHuang0516/EClaw/issues/2684)
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **avatar:** petdx render on card-holder my-cards (Phase 1b) ([#2621](https://github.com/HankHuang0516/EClaw/issues/2621)) ([f78ba8b](https://github.com/HankHuang0516/EClaw/commit/f78ba8b18acc426936ab6d8a82ca7541effea00d))
* **avatar:** petdx render on dashboard entity grid / org chart / bindings (Phase 1b) ([#2622](https://github.com/HankHuang0516/EClaw/issues/2622)) ([f417749](https://github.com/HankHuang0516/EClaw/commit/f41774914451048e8cd76e9ae30416a0642e173b)), closes [#2620](https://github.com/HankHuang0516/EClaw/issues/2620) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621)
* **avatar:** petdx render on kanban auto-assign / pulse / comment avatars (Phase 1b) ([#2624](https://github.com/HankHuang0516/EClaw/issues/2624)) ([6bff5f8](https://github.com/HankHuang0516/EClaw/commit/6bff5f80440d0bd91a6b1721cde9478d685c4d46))
* **avatar:** petdx render on mission skill/rule/soul entity dialogs (Phase 1b) ([#2623](https://github.com/HankHuang0516/EClaw/issues/2623)) ([129327b](https://github.com/HankHuang0516/EClaw/commit/129327bc7b91056659f1ab7e8d5e3f5260d951fb))
* **mindmap:** portal/mindmap.html force-graph prototype ([#129](https://github.com/HankHuang0516/EClaw/issues/129)) ([#2681](https://github.com/HankHuang0516/EClaw/issues/2681)) ([0f15e69](https://github.com/HankHuang0516/EClaw/commit/0f15e6930f0697c37fa08f3219edb8f9e499837f)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **portal:** redo nagoya trip page in professional tour-guide style ([#2691](https://github.com/HankHuang0516/EClaw/issues/2691)) ([b2378c0](https://github.com/HankHuang0516/EClaw/commit/b2378c06ee20fa9cccfdceceb1a4c9e0b3072f59))
* **avatar:** render selected petdx companion in chat avatars ([#2620](https://github.com/HankHuang0516/EClaw/issues/2620)) ([0bdd046](https://github.com/HankHuang0516/EClaw/commit/0bdd046fe1b1c428e32edda366ff112c08927f4c))
* **home:** replace native home with WebView hosting dashboard.html ([#2634](https://github.com/HankHuang0516/EClaw/issues/2634)) ([e69ea81](https://github.com/HankHuang0516/EClaw/commit/e69ea8160c239b083a83d6dc83a4f1c3f901c863))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **chat:** support message deep links ([#2719](https://github.com/HankHuang0516/EClaw/issues/2719)) ([2dc0f1e](https://github.com/HankHuang0516/EClaw/commit/2dc0f1eeb259e1a0848db4a03186b989372cd91c))
* **mission:** support note deep links ([#2717](https://github.com/HankHuang0516/EClaw/issues/2717)) ([2efd3a5](https://github.com/HankHuang0516/EClaw/commit/2efd3a5e741217a07c0b0ac54a0ddd010e0ebe23))
* **share-chat:** twitter card + per-bot og:image/twitter:* in SSR ([#2609](https://github.com/HankHuang0516/EClaw/issues/2609)) ([6cdc853](https://github.com/HankHuang0516/EClaw/commit/6cdc853dc884cdb95bd47214942768981f218ae0))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))
* **settings:** wire petdx avatar into channel-account chips ([#2626](https://github.com/HankHuang0516/EClaw/issues/2626)) ([88aec77](https://github.com/HankHuang0516/EClaw/commit/88aec772628c240e97b336bb5820892ad632d1ae))
* **files:** wire petdx avatar into entity filter & per-file badges ([#2627](https://github.com/HankHuang0516/EClaw/issues/2627)) ([5b3e5cc](https://github.com/HankHuang0516/EClaw/commit/5b3e5cc542d9da69bb4e92500fd03a542ea33f00))
* **mindmap:** wrap hardcoded zh-TW UI strings with i18n t() ([#2607](https://github.com/HankHuang0516/EClaw/issues/2607)) ([166af87](https://github.com/HankHuang0516/EClaw/commit/166af8772b2121a24aaf34a83b3de970e9b3b571)), closes [#2606](https://github.com/HankHuang0516/EClaw/issues/2606)


### Performance Improvements

* **mindmap:** force-graph hardening for 1000/2000-node graphs ([#2684](https://github.com/HankHuang0516/EClaw/issues/2684)) ([da8b1c8](https://github.com/HankHuang0516/EClaw/commit/da8b1c8f947ab8bc8fa455c1962a91146623a1fc))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-14)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **notifications:** add kanban_done + kanban_done_auto toggles to Android Settings ([#2636](https://github.com/HankHuang0516/EClaw/issues/2636)) ([a710909](https://github.com/HankHuang0516/EClaw/commit/a7109095e3393b8564e7ef1b23d382a4fbb944b8))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **i18n:** clear batch 1 residual missing keys ([#2790](https://github.com/HankHuang0516/EClaw/issues/2790)) ([211030e](https://github.com/HankHuang0516/EClaw/commit/211030e0b0b6a865c11f0c4ed60dc4e356d43b7a))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **kanban:** comment input no longer overlaps last comment in card detail (PR [#2678](https://github.com/HankHuang0516/EClaw/issues/2678)) ([fba91fc](https://github.com/HankHuang0516/EClaw/commit/fba91fca15402b453a0db5ee857c0b16e6087055))
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **petdx:** drop dark-grey loading placeholder + preload sprite WEBP ([#2628](https://github.com/HankHuang0516/EClaw/issues/2628)) ([59cef38](https://github.com/HankHuang0516/EClaw/commit/59cef387bd69ca99d7d15c86a1364856d3849ad8)), closes [#1a1a1a](https://github.com/HankHuang0516/EClaw/issues/1a1a1a)
* **entities:** expose botSecret to owner so wallpaper service can poll companions ([#2615](https://github.com/HankHuang0516/EClaw/issues/2615)) ([04470fc](https://github.com/HankHuang0516/EClaw/commit/04470fce8f8c3fce2b1ba8b243e776606f107502))
* **rental:** expose owner_public_code in marketplace so plaza CTA can route ([#2616](https://github.com/HankHuang0516/EClaw/issues/2616)) ([4d1372f](https://github.com/HankHuang0516/EClaw/commit/4d1372f717d93cab65543e87c852e74e9fb67071)), closes [#2610](https://github.com/HankHuang0516/EClaw/issues/2610)
* **mindmap:** fallback to device scope when entityId is null ([#2728](https://github.com/HankHuang0516/EClaw/issues/2728)) ([7572312](https://github.com/HankHuang0516/EClaw/commit/7572312433d3d75fc245eda48a28919ce14bd927))
* **i18n:** fill Spanish drift keys ([#2751](https://github.com/HankHuang0516/EClaw/issues/2751)) ([0ad0ee5](https://github.com/HankHuang0516/EClaw/commit/0ad0ee55f7fac3e6ac46d891539950dab4d553cc))
* **portal:** fit embedded org chart to mobile viewport ([#2674](https://github.com/HankHuang0516/EClaw/issues/2674)) ([1c4e1b4](https://github.com/HankHuang0516/EClaw/commit/1c4e1b413ea7027b4cd4b8ecda981b0d0e12e66b))
* **i18n:** fix 6 trailing-comma syntax errors in 10-locale batch ([#2771](https://github.com/HankHuang0516/EClaw/issues/2771)) ([b27c6ca](https://github.com/HankHuang0516/EClaw/commit/b27c6ca204bf813e406c54ce3a2532a5f1f031b3))
* **uiux:** harden chat previews and roster preview ([#2769](https://github.com/HankHuang0516/EClaw/issues/2769)) ([466d4d3](https://github.com/HankHuang0516/EClaw/commit/466d4d3ef81c628d3f58db64323946053d7bf61c))
* **mention-parser:** ignore @-mentions inside markdown code spans ([#2645](https://github.com/HankHuang0516/EClaw/issues/2645)) ([8da19d4](https://github.com/HankHuang0516/EClaw/commit/8da19d4a79ceb4152bf2144ee0847c61ce3e1def)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **kanban:** lazy-load dependency chips via IntersectionObserver ([#2632](https://github.com/HankHuang0516/EClaw/issues/2632)) ([20586b4](https://github.com/HankHuang0516/EClaw/commit/20586b43357335f9eb6a190c02d58c8e36b58aba)), closes [#2631](https://github.com/HankHuang0516/EClaw/issues/2631)
* **kanban:** make card sorting deterministic ([#2756](https://github.com/HankHuang0516/EClaw/issues/2756)) ([48e2117](https://github.com/HankHuang0516/EClaw/commit/48e2117b64e37f05dc635e0a3b67bfd43cbe48f5))
* **kanban:** notify reviewer on manual /move → review ([#2753](https://github.com/HankHuang0516/EClaw/issues/2753)) ([6cbbb4e](https://github.com/HankHuang0516/EClaw/commit/6cbbb4ee8c0d4d8ad54df2e9b5faaa3699bd530f))
* **wallpaper:** off-load spritesheet fetch to IO so per-petdx sprites actually render ([#2618](https://github.com/HankHuang0516/EClaw/issues/2618)) ([61b832c](https://github.com/HankHuang0516/EClaw/commit/61b832c9fa8a1d0caab810ccc942d85c63349267)), closes [#2615](https://github.com/HankHuang0516/EClaw/issues/2615) [#2577](https://github.com/HankHuang0516/EClaw/issues/2577)
* **portal:** petdx-browser cookie-session fallback for device-login ([#2757](https://github.com/HankHuang0516/EClaw/issues/2757)) ([ca275f4](https://github.com/HankHuang0516/EClaw/commit/ca275f4519835da0c7ad71c588908a18f6f138d8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **i18n:** positional format specifiers for feedback_result_logs (7 locales) ([#2597](https://github.com/HankHuang0516/EClaw/issues/2597)) ([21aedc7](https://github.com/HankHuang0516/EClaw/commit/21aedc7eebc7a2839e340136f38dfdfd4dabb9dc))
* **avatar-petdx:** preserve descriptor across transient API failures (flicker) ([#2625](https://github.com/HankHuang0516/EClaw/issues/2625)) ([7b1c606](https://github.com/HankHuang0516/EClaw/commit/7b1c606514f7698d72ec95cf6c556e4043966186))
* **chat:** preserve scroll anchor while reading history ([#2693](https://github.com/HankHuang0516/EClaw/issues/2693)) ([945fdb7](https://github.com/HankHuang0516/EClaw/commit/945fdb7192b791b31882e1e75568dd8b11e4686f))
* **promo:** pull video embed from /promo-chat-avatar.html ([#2724](https://github.com/HankHuang0516/EClaw/issues/2724)) ([2afabc8](https://github.com/HankHuang0516/EClaw/commit/2afabc8c5ff8b25218a7cb857e8adfa572c8e9d5))
* **kanban:** realign stale recurring schedules ([#2785](https://github.com/HankHuang0516/EClaw/issues/2785)) ([ab8ee25](https://github.com/HankHuang0516/EClaw/commit/ab8ee250a9b37f3d3e838bb01d8866c8d2b78231))
* **portal:** reduce QA-discovered request fanout ([#2656](https://github.com/HankHuang0516/EClaw/issues/2656)) ([1e46d6b](https://github.com/HankHuang0516/EClaw/commit/1e46d6bab61e58c65b452b6503d953f8dddeee75))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **portal:** remove org chart fit scale floor ([#2676](https://github.com/HankHuang0516/EClaw/issues/2676)) ([0f01606](https://github.com/HankHuang0516/EClaw/commit/0f016068b963bb5f800a02f28817c7174979d913))
* **i18n:** rename mm_empty_title → mm_state_empty_title in mindmap.html ([#2683](https://github.com/HankHuang0516/EClaw/issues/2683)) ([c79c109](https://github.com/HankHuang0516/EClaw/commit/c79c109bea23142e8a6d9ace976d105af1280ec9))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **chat:** render mention avatars with companion renderer ([#2633](https://github.com/HankHuang0516/EClaw/issues/2633)) ([03e205f](https://github.com/HankHuang0516/EClaw/commit/03e205f663ecd2c2f443d4009dd5af0093f0bbbb))
* **kanban:** reserve mobile comments panel height ([#2782](https://github.com/HankHuang0516/EClaw/issues/2782)) ([ce8662d](https://github.com/HankHuang0516/EClaw/commit/ce8662d362422fdd25037f1deb61dbed9425e2f9))
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* scheduled audit 2026-05-13 — 6 bugs, XSS, i18n ([#2668](https://github.com/HankHuang0516/EClaw/issues/2668)) ([21dd513](https://github.com/HankHuang0516/EClaw/commit/21dd513b4464738de29164265437435ba6cc4817)), closes [#2605](https://github.com/HankHuang0516/EClaw/issues/2605) [#2608](https://github.com/HankHuang0516/EClaw/issues/2608) [#2600](https://github.com/HankHuang0516/EClaw/issues/2600) [#2599](https://github.com/HankHuang0516/EClaw/issues/2599) [#2598](https://github.com/HankHuang0516/EClaw/issues/2598)
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **chat:** smart-chip preview falls back to inline c.comments when /comments fails (PR [#2677](https://github.com/HankHuang0516/EClaw/issues/2677)) ([7f4dffd](https://github.com/HankHuang0516/EClaw/commit/7f4dffd2c83ea86f296b8fa0610f0e67c9f1af11))
* **wallpaper:** stop Android live wallpaper flashing default lobster on companion change ([#2629](https://github.com/HankHuang0516/EClaw/issues/2629)) ([8b4f66f](https://github.com/HankHuang0516/EClaw/commit/8b4f66fcb335bf43128f924b761b6337c817095b)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **app:** WebView pages honor app-selected locale via ?lang= URL param ([#2672](https://github.com/HankHuang0516/EClaw/issues/2672)) ([8ed8757](https://github.com/HankHuang0516/EClaw/commit/8ed8757aec5bf214e837cc0d81bf2b23f1993a91)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* **community:** 1-click chat button on bot cards + utm tagging ([#2610](https://github.com/HankHuang0516/EClaw/issues/2610)) ([eee97b0](https://github.com/HankHuang0516/EClaw/commit/eee97b0e2e4e74945ec24f218a69a52800b97a66))
* **chat:** add avatar size preference ([#2714](https://github.com/HankHuang0516/EClaw/issues/2714)) ([6fe164a](https://github.com/HankHuang0516/EClaw/commit/6fe164ad8b22fa576d2dd9ad37c0d9fc295b5a83))
* **dashboard:** add Claude and Codex channel guides ([#2640](https://github.com/HankHuang0516/EClaw/issues/2640)) ([c64e4c4](https://github.com/HankHuang0516/EClaw/commit/c64e4c4afc78db58c5cd578f00486dd7b2fd3311))
* **dashboard:** add Claude Code channel guide card ([#2667](https://github.com/HankHuang0516/EClaw/issues/2667)) ([d70d75c](https://github.com/HankHuang0516/EClaw/commit/d70d75c0c8caa8a540358a9aab4556b8c1927a5c))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* **kanban:** add device-scoped card tags ([#2773](https://github.com/HankHuang0516/EClaw/issues/2773)) ([53a387e](https://github.com/HankHuang0516/EClaw/commit/53a387e67ba7bb4f6bed1c427000c4ae8666577a))
* **portal:** add entity selector to petdx-browser ([#2602](https://github.com/HankHuang0516/EClaw/issues/2602)) ([3fa067e](https://github.com/HankHuang0516/EClaw/commit/3fa067e00b38829b48a37cecd33ee81a9a1122d9))
* **kanban:** add explicit card links ([#2721](https://github.com/HankHuang0516/EClaw/issues/2721)) ([ef9f812](https://github.com/HankHuang0516/EClaw/commit/ef9f812a3fcf39efd07fd158ce90951bdd045ac7))
* **mindmap:** add GET /api/mindmap/graph force-graph projection ([#2680](https://github.com/HankHuang0516/EClaw/issues/2680)) ([a00b2e7](https://github.com/HankHuang0516/EClaw/commit/a00b2e775af2c4c98cd157f760ad87aeeee469f0)), closes [#2679](https://github.com/HankHuang0516/EClaw/issues/2679) [#2679](https://github.com/HankHuang0516/EClaw/issues/2679)
* **dashboard:** add Hermes channel promo card ([#2708](https://github.com/HankHuang0516/EClaw/issues/2708)) ([337aca1](https://github.com/HankHuang0516/EClaw/commit/337aca153d5a1cd7e888c065f00ae54db7872d91))
* **portal:** add Nagoya 5D4N trip static cross-ref page ([#2689](https://github.com/HankHuang0516/EClaw/issues/2689)) ([2e0efb6](https://github.com/HankHuang0516/EClaw/commit/2e0efb6dcdaff52226cc8854a96747000b12bdff))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **settings:** add rental roster management preview ([#2758](https://github.com/HankHuang0516/EClaw/issues/2758)) ([9706e59](https://github.com/HankHuang0516/EClaw/commit/9706e59ded140a90a6e02348124282bc69d89001))
* **rental:** add renter health chat indicator ([#2690](https://github.com/HankHuang0516/EClaw/issues/2690)) ([36cd2e9](https://github.com/HankHuang0516/EClaw/commit/36cd2e9802be4c7ebb03d3024617fa74aca48ffd))
* **companion:** bridge crafter-station/petdex gallery (1784 pets) ([#2601](https://github.com/HankHuang0516/EClaw/issues/2601)) ([2e245be](https://github.com/HankHuang0516/EClaw/commit/2e245bea6dd47ea7361b927d389188a3c23b6bb3))
* **promo:** chat avatar size feature landing page (self-hosted MP4) ([#2722](https://github.com/HankHuang0516/EClaw/issues/2722)) ([3852210](https://github.com/HankHuang0516/EClaw/commit/3852210d355704d018e3daca6b5f9512a011b210)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **promo:** embed daily eclaw video 2026-05-14 ([#2786](https://github.com/HankHuang0516/EClaw/issues/2786)) ([718a814](https://github.com/HankHuang0516/EClaw/commit/718a814ab16850bc2b33a1b303841e2c4378ecfa)), closes [#2782](https://github.com/HankHuang0516/EClaw/issues/2782) [#2693](https://github.com/HankHuang0516/EClaw/issues/2693)
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **rental:** enforce strict rebind refunds ([#2703](https://github.com/HankHuang0516/EClaw/issues/2703)) ([a1859c5](https://github.com/HankHuang0516/EClaw/commit/a1859c50e6fb3991d7a8051491502d824a14a116))
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **chat:** link card previews to kanban ([#2754](https://github.com/HankHuang0516/EClaw/issues/2754)) ([2261240](https://github.com/HankHuang0516/EClaw/commit/22612402c2e95efb07246629e81a849be41ee9c7))
* **mission:** link notes to kanban cards ([#2723](https://github.com/HankHuang0516/EClaw/issues/2723)) ([b36dc18](https://github.com/HankHuang0516/EClaw/commit/b36dc18f3a8facf12e0b6046351c222f1e99dc55))
* **mindmap:** mission.html link to /portal/mindmap.html + deprecate /api/mission/mindmap ([#2685](https://github.com/HankHuang0516/EClaw/issues/2685)) ([11e297b](https://github.com/HankHuang0516/EClaw/commit/11e297bab1c9b56fcde3027d6500b7c58891bf18)), closes [#2680](https://github.com/HankHuang0516/EClaw/issues/2680) [#2684](https://github.com/HankHuang0516/EClaw/issues/2684)
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **avatar:** petdx render on card-holder my-cards (Phase 1b) ([#2621](https://github.com/HankHuang0516/EClaw/issues/2621)) ([f78ba8b](https://github.com/HankHuang0516/EClaw/commit/f78ba8b18acc426936ab6d8a82ca7541effea00d))
* **avatar:** petdx render on dashboard entity grid / org chart / bindings (Phase 1b) ([#2622](https://github.com/HankHuang0516/EClaw/issues/2622)) ([f417749](https://github.com/HankHuang0516/EClaw/commit/f41774914451048e8cd76e9ae30416a0642e173b)), closes [#2620](https://github.com/HankHuang0516/EClaw/issues/2620) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621)
* **avatar:** petdx render on kanban auto-assign / pulse / comment avatars (Phase 1b) ([#2624](https://github.com/HankHuang0516/EClaw/issues/2624)) ([6bff5f8](https://github.com/HankHuang0516/EClaw/commit/6bff5f80440d0bd91a6b1721cde9478d685c4d46))
* **avatar:** petdx render on mission skill/rule/soul entity dialogs (Phase 1b) ([#2623](https://github.com/HankHuang0516/EClaw/issues/2623)) ([129327b](https://github.com/HankHuang0516/EClaw/commit/129327bc7b91056659f1ab7e8d5e3f5260d951fb))
* **mindmap:** portal/mindmap.html force-graph prototype ([#129](https://github.com/HankHuang0516/EClaw/issues/129)) ([#2681](https://github.com/HankHuang0516/EClaw/issues/2681)) ([0f15e69](https://github.com/HankHuang0516/EClaw/commit/0f15e6930f0697c37fa08f3219edb8f9e499837f)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **portal:** redo nagoya trip page in professional tour-guide style ([#2691](https://github.com/HankHuang0516/EClaw/issues/2691)) ([b2378c0](https://github.com/HankHuang0516/EClaw/commit/b2378c06ee20fa9cccfdceceb1a4c9e0b3072f59))
* **avatar:** render selected petdx companion in chat avatars ([#2620](https://github.com/HankHuang0516/EClaw/issues/2620)) ([0bdd046](https://github.com/HankHuang0516/EClaw/commit/0bdd046fe1b1c428e32edda366ff112c08927f4c))
* **home:** replace native home with WebView hosting dashboard.html ([#2634](https://github.com/HankHuang0516/EClaw/issues/2634)) ([e69ea81](https://github.com/HankHuang0516/EClaw/commit/e69ea8160c239b083a83d6dc83a4f1c3f901c863))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **chat:** support message deep links ([#2719](https://github.com/HankHuang0516/EClaw/issues/2719)) ([2dc0f1e](https://github.com/HankHuang0516/EClaw/commit/2dc0f1eeb259e1a0848db4a03186b989372cd91c))
* **mission:** support note deep links ([#2717](https://github.com/HankHuang0516/EClaw/issues/2717)) ([2efd3a5](https://github.com/HankHuang0516/EClaw/commit/2efd3a5e741217a07c0b0ac54a0ddd010e0ebe23))
* **share-chat:** twitter card + per-bot og:image/twitter:* in SSR ([#2609](https://github.com/HankHuang0516/EClaw/issues/2609)) ([6cdc853](https://github.com/HankHuang0516/EClaw/commit/6cdc853dc884cdb95bd47214942768981f218ae0))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))
* **settings:** wire petdx avatar into channel-account chips ([#2626](https://github.com/HankHuang0516/EClaw/issues/2626)) ([88aec77](https://github.com/HankHuang0516/EClaw/commit/88aec772628c240e97b336bb5820892ad632d1ae))
* **files:** wire petdx avatar into entity filter & per-file badges ([#2627](https://github.com/HankHuang0516/EClaw/issues/2627)) ([5b3e5cc](https://github.com/HankHuang0516/EClaw/commit/5b3e5cc542d9da69bb4e92500fd03a542ea33f00))
* **mindmap:** wrap hardcoded zh-TW UI strings with i18n t() ([#2607](https://github.com/HankHuang0516/EClaw/issues/2607)) ([166af87](https://github.com/HankHuang0516/EClaw/commit/166af8772b2121a24aaf34a83b3de970e9b3b571)), closes [#2606](https://github.com/HankHuang0516/EClaw/issues/2606)


### Performance Improvements

* **mindmap:** force-graph hardening for 1000/2000-node graphs ([#2684](https://github.com/HankHuang0516/EClaw/issues/2684)) ([da8b1c8](https://github.com/HankHuang0516/EClaw/commit/da8b1c8f947ab8bc8fa455c1962a91146623a1fc))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-14)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **notifications:** add kanban_done + kanban_done_auto toggles to Android Settings ([#2636](https://github.com/HankHuang0516/EClaw/issues/2636)) ([a710909](https://github.com/HankHuang0516/EClaw/commit/a7109095e3393b8564e7ef1b23d382a4fbb944b8))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **i18n:** clear batch 1 residual missing keys ([#2790](https://github.com/HankHuang0516/EClaw/issues/2790)) ([211030e](https://github.com/HankHuang0516/EClaw/commit/211030e0b0b6a865c11f0c4ed60dc4e356d43b7a))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **kanban:** comment input no longer overlaps last comment in card detail (PR [#2678](https://github.com/HankHuang0516/EClaw/issues/2678)) ([fba91fc](https://github.com/HankHuang0516/EClaw/commit/fba91fca15402b453a0db5ee857c0b16e6087055))
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **petdx:** drop dark-grey loading placeholder + preload sprite WEBP ([#2628](https://github.com/HankHuang0516/EClaw/issues/2628)) ([59cef38](https://github.com/HankHuang0516/EClaw/commit/59cef387bd69ca99d7d15c86a1364856d3849ad8)), closes [#1a1a1a](https://github.com/HankHuang0516/EClaw/issues/1a1a1a)
* **entities:** expose botSecret to owner so wallpaper service can poll companions ([#2615](https://github.com/HankHuang0516/EClaw/issues/2615)) ([04470fc](https://github.com/HankHuang0516/EClaw/commit/04470fce8f8c3fce2b1ba8b243e776606f107502))
* **rental:** expose owner_public_code in marketplace so plaza CTA can route ([#2616](https://github.com/HankHuang0516/EClaw/issues/2616)) ([4d1372f](https://github.com/HankHuang0516/EClaw/commit/4d1372f717d93cab65543e87c852e74e9fb67071)), closes [#2610](https://github.com/HankHuang0516/EClaw/issues/2610)
* **mindmap:** fallback to device scope when entityId is null ([#2728](https://github.com/HankHuang0516/EClaw/issues/2728)) ([7572312](https://github.com/HankHuang0516/EClaw/commit/7572312433d3d75fc245eda48a28919ce14bd927))
* **i18n:** fill Spanish drift keys ([#2751](https://github.com/HankHuang0516/EClaw/issues/2751)) ([0ad0ee5](https://github.com/HankHuang0516/EClaw/commit/0ad0ee55f7fac3e6ac46d891539950dab4d553cc))
* **portal:** fit embedded org chart to mobile viewport ([#2674](https://github.com/HankHuang0516/EClaw/issues/2674)) ([1c4e1b4](https://github.com/HankHuang0516/EClaw/commit/1c4e1b413ea7027b4cd4b8ecda981b0d0e12e66b))
* **i18n:** fix 6 trailing-comma syntax errors in 10-locale batch ([#2771](https://github.com/HankHuang0516/EClaw/issues/2771)) ([b27c6ca](https://github.com/HankHuang0516/EClaw/commit/b27c6ca204bf813e406c54ce3a2532a5f1f031b3))
* **uiux:** harden chat previews and roster preview ([#2769](https://github.com/HankHuang0516/EClaw/issues/2769)) ([466d4d3](https://github.com/HankHuang0516/EClaw/commit/466d4d3ef81c628d3f58db64323946053d7bf61c))
* **mention-parser:** ignore @-mentions inside markdown code spans ([#2645](https://github.com/HankHuang0516/EClaw/issues/2645)) ([8da19d4](https://github.com/HankHuang0516/EClaw/commit/8da19d4a79ceb4152bf2144ee0847c61ce3e1def)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **kanban:** lazy-load dependency chips via IntersectionObserver ([#2632](https://github.com/HankHuang0516/EClaw/issues/2632)) ([20586b4](https://github.com/HankHuang0516/EClaw/commit/20586b43357335f9eb6a190c02d58c8e36b58aba)), closes [#2631](https://github.com/HankHuang0516/EClaw/issues/2631)
* **kanban:** make card sorting deterministic ([#2756](https://github.com/HankHuang0516/EClaw/issues/2756)) ([48e2117](https://github.com/HankHuang0516/EClaw/commit/48e2117b64e37f05dc635e0a3b67bfd43cbe48f5))
* **kanban:** notify reviewer on manual /move → review ([#2753](https://github.com/HankHuang0516/EClaw/issues/2753)) ([6cbbb4e](https://github.com/HankHuang0516/EClaw/commit/6cbbb4ee8c0d4d8ad54df2e9b5faaa3699bd530f))
* **wallpaper:** off-load spritesheet fetch to IO so per-petdx sprites actually render ([#2618](https://github.com/HankHuang0516/EClaw/issues/2618)) ([61b832c](https://github.com/HankHuang0516/EClaw/commit/61b832c9fa8a1d0caab810ccc942d85c63349267)), closes [#2615](https://github.com/HankHuang0516/EClaw/issues/2615) [#2577](https://github.com/HankHuang0516/EClaw/issues/2577)
* **portal:** petdx-browser cookie-session fallback for device-login ([#2757](https://github.com/HankHuang0516/EClaw/issues/2757)) ([ca275f4](https://github.com/HankHuang0516/EClaw/commit/ca275f4519835da0c7ad71c588908a18f6f138d8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **i18n:** positional format specifiers for feedback_result_logs (7 locales) ([#2597](https://github.com/HankHuang0516/EClaw/issues/2597)) ([21aedc7](https://github.com/HankHuang0516/EClaw/commit/21aedc7eebc7a2839e340136f38dfdfd4dabb9dc))
* **avatar-petdx:** preserve descriptor across transient API failures (flicker) ([#2625](https://github.com/HankHuang0516/EClaw/issues/2625)) ([7b1c606](https://github.com/HankHuang0516/EClaw/commit/7b1c606514f7698d72ec95cf6c556e4043966186))
* **chat:** preserve scroll anchor while reading history ([#2693](https://github.com/HankHuang0516/EClaw/issues/2693)) ([945fdb7](https://github.com/HankHuang0516/EClaw/commit/945fdb7192b791b31882e1e75568dd8b11e4686f))
* **promo:** pull video embed from /promo-chat-avatar.html ([#2724](https://github.com/HankHuang0516/EClaw/issues/2724)) ([2afabc8](https://github.com/HankHuang0516/EClaw/commit/2afabc8c5ff8b25218a7cb857e8adfa572c8e9d5))
* **kanban:** realign stale recurring schedules ([#2785](https://github.com/HankHuang0516/EClaw/issues/2785)) ([ab8ee25](https://github.com/HankHuang0516/EClaw/commit/ab8ee250a9b37f3d3e838bb01d8866c8d2b78231))
* **portal:** reduce QA-discovered request fanout ([#2656](https://github.com/HankHuang0516/EClaw/issues/2656)) ([1e46d6b](https://github.com/HankHuang0516/EClaw/commit/1e46d6bab61e58c65b452b6503d953f8dddeee75))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **portal:** remove org chart fit scale floor ([#2676](https://github.com/HankHuang0516/EClaw/issues/2676)) ([0f01606](https://github.com/HankHuang0516/EClaw/commit/0f016068b963bb5f800a02f28817c7174979d913))
* **i18n:** rename mm_empty_title → mm_state_empty_title in mindmap.html ([#2683](https://github.com/HankHuang0516/EClaw/issues/2683)) ([c79c109](https://github.com/HankHuang0516/EClaw/commit/c79c109bea23142e8a6d9ace976d105af1280ec9))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **chat:** render mention avatars with companion renderer ([#2633](https://github.com/HankHuang0516/EClaw/issues/2633)) ([03e205f](https://github.com/HankHuang0516/EClaw/commit/03e205f663ecd2c2f443d4009dd5af0093f0bbbb))
* **kanban:** reserve mobile comments panel height ([#2782](https://github.com/HankHuang0516/EClaw/issues/2782)) ([ce8662d](https://github.com/HankHuang0516/EClaw/commit/ce8662d362422fdd25037f1deb61dbed9425e2f9))
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* scheduled audit 2026-05-13 — 6 bugs, XSS, i18n ([#2668](https://github.com/HankHuang0516/EClaw/issues/2668)) ([21dd513](https://github.com/HankHuang0516/EClaw/commit/21dd513b4464738de29164265437435ba6cc4817)), closes [#2605](https://github.com/HankHuang0516/EClaw/issues/2605) [#2608](https://github.com/HankHuang0516/EClaw/issues/2608) [#2600](https://github.com/HankHuang0516/EClaw/issues/2600) [#2599](https://github.com/HankHuang0516/EClaw/issues/2599) [#2598](https://github.com/HankHuang0516/EClaw/issues/2598)
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **chat:** smart-chip preview falls back to inline c.comments when /comments fails (PR [#2677](https://github.com/HankHuang0516/EClaw/issues/2677)) ([7f4dffd](https://github.com/HankHuang0516/EClaw/commit/7f4dffd2c83ea86f296b8fa0610f0e67c9f1af11))
* **wallpaper:** stop Android live wallpaper flashing default lobster on companion change ([#2629](https://github.com/HankHuang0516/EClaw/issues/2629)) ([8b4f66f](https://github.com/HankHuang0516/EClaw/commit/8b4f66fcb335bf43128f924b761b6337c817095b)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **app:** WebView pages honor app-selected locale via ?lang= URL param ([#2672](https://github.com/HankHuang0516/EClaw/issues/2672)) ([8ed8757](https://github.com/HankHuang0516/EClaw/commit/8ed8757aec5bf214e837cc0d81bf2b23f1993a91)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* **community:** 1-click chat button on bot cards + utm tagging ([#2610](https://github.com/HankHuang0516/EClaw/issues/2610)) ([eee97b0](https://github.com/HankHuang0516/EClaw/commit/eee97b0e2e4e74945ec24f218a69a52800b97a66))
* **chat:** add avatar size preference ([#2714](https://github.com/HankHuang0516/EClaw/issues/2714)) ([6fe164a](https://github.com/HankHuang0516/EClaw/commit/6fe164ad8b22fa576d2dd9ad37c0d9fc295b5a83))
* **dashboard:** add Claude and Codex channel guides ([#2640](https://github.com/HankHuang0516/EClaw/issues/2640)) ([c64e4c4](https://github.com/HankHuang0516/EClaw/commit/c64e4c4afc78db58c5cd578f00486dd7b2fd3311))
* **dashboard:** add Claude Code channel guide card ([#2667](https://github.com/HankHuang0516/EClaw/issues/2667)) ([d70d75c](https://github.com/HankHuang0516/EClaw/commit/d70d75c0c8caa8a540358a9aab4556b8c1927a5c))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* **portal:** add entity selector to petdx-browser ([#2602](https://github.com/HankHuang0516/EClaw/issues/2602)) ([3fa067e](https://github.com/HankHuang0516/EClaw/commit/3fa067e00b38829b48a37cecd33ee81a9a1122d9))
* **kanban:** add explicit card links ([#2721](https://github.com/HankHuang0516/EClaw/issues/2721)) ([ef9f812](https://github.com/HankHuang0516/EClaw/commit/ef9f812a3fcf39efd07fd158ce90951bdd045ac7))
* **mindmap:** add GET /api/mindmap/graph force-graph projection ([#2680](https://github.com/HankHuang0516/EClaw/issues/2680)) ([a00b2e7](https://github.com/HankHuang0516/EClaw/commit/a00b2e775af2c4c98cd157f760ad87aeeee469f0)), closes [#2679](https://github.com/HankHuang0516/EClaw/issues/2679) [#2679](https://github.com/HankHuang0516/EClaw/issues/2679)
* **dashboard:** add Hermes channel promo card ([#2708](https://github.com/HankHuang0516/EClaw/issues/2708)) ([337aca1](https://github.com/HankHuang0516/EClaw/commit/337aca153d5a1cd7e888c065f00ae54db7872d91))
* **portal:** add Nagoya 5D4N trip static cross-ref page ([#2689](https://github.com/HankHuang0516/EClaw/issues/2689)) ([2e0efb6](https://github.com/HankHuang0516/EClaw/commit/2e0efb6dcdaff52226cc8854a96747000b12bdff))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **settings:** add rental roster management preview ([#2758](https://github.com/HankHuang0516/EClaw/issues/2758)) ([9706e59](https://github.com/HankHuang0516/EClaw/commit/9706e59ded140a90a6e02348124282bc69d89001))
* **rental:** add renter health chat indicator ([#2690](https://github.com/HankHuang0516/EClaw/issues/2690)) ([36cd2e9](https://github.com/HankHuang0516/EClaw/commit/36cd2e9802be4c7ebb03d3024617fa74aca48ffd))
* **companion:** bridge crafter-station/petdex gallery (1784 pets) ([#2601](https://github.com/HankHuang0516/EClaw/issues/2601)) ([2e245be](https://github.com/HankHuang0516/EClaw/commit/2e245bea6dd47ea7361b927d389188a3c23b6bb3))
* **promo:** chat avatar size feature landing page (self-hosted MP4) ([#2722](https://github.com/HankHuang0516/EClaw/issues/2722)) ([3852210](https://github.com/HankHuang0516/EClaw/commit/3852210d355704d018e3daca6b5f9512a011b210)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **promo:** embed daily eclaw video 2026-05-14 ([#2786](https://github.com/HankHuang0516/EClaw/issues/2786)) ([718a814](https://github.com/HankHuang0516/EClaw/commit/718a814ab16850bc2b33a1b303841e2c4378ecfa)), closes [#2782](https://github.com/HankHuang0516/EClaw/issues/2782) [#2693](https://github.com/HankHuang0516/EClaw/issues/2693)
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **rental:** enforce strict rebind refunds ([#2703](https://github.com/HankHuang0516/EClaw/issues/2703)) ([a1859c5](https://github.com/HankHuang0516/EClaw/commit/a1859c50e6fb3991d7a8051491502d824a14a116))
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **chat:** link card previews to kanban ([#2754](https://github.com/HankHuang0516/EClaw/issues/2754)) ([2261240](https://github.com/HankHuang0516/EClaw/commit/22612402c2e95efb07246629e81a849be41ee9c7))
* **mission:** link notes to kanban cards ([#2723](https://github.com/HankHuang0516/EClaw/issues/2723)) ([b36dc18](https://github.com/HankHuang0516/EClaw/commit/b36dc18f3a8facf12e0b6046351c222f1e99dc55))
* **mindmap:** mission.html link to /portal/mindmap.html + deprecate /api/mission/mindmap ([#2685](https://github.com/HankHuang0516/EClaw/issues/2685)) ([11e297b](https://github.com/HankHuang0516/EClaw/commit/11e297bab1c9b56fcde3027d6500b7c58891bf18)), closes [#2680](https://github.com/HankHuang0516/EClaw/issues/2680) [#2684](https://github.com/HankHuang0516/EClaw/issues/2684)
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **avatar:** petdx render on card-holder my-cards (Phase 1b) ([#2621](https://github.com/HankHuang0516/EClaw/issues/2621)) ([f78ba8b](https://github.com/HankHuang0516/EClaw/commit/f78ba8b18acc426936ab6d8a82ca7541effea00d))
* **avatar:** petdx render on dashboard entity grid / org chart / bindings (Phase 1b) ([#2622](https://github.com/HankHuang0516/EClaw/issues/2622)) ([f417749](https://github.com/HankHuang0516/EClaw/commit/f41774914451048e8cd76e9ae30416a0642e173b)), closes [#2620](https://github.com/HankHuang0516/EClaw/issues/2620) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621)
* **avatar:** petdx render on kanban auto-assign / pulse / comment avatars (Phase 1b) ([#2624](https://github.com/HankHuang0516/EClaw/issues/2624)) ([6bff5f8](https://github.com/HankHuang0516/EClaw/commit/6bff5f80440d0bd91a6b1721cde9478d685c4d46))
* **avatar:** petdx render on mission skill/rule/soul entity dialogs (Phase 1b) ([#2623](https://github.com/HankHuang0516/EClaw/issues/2623)) ([129327b](https://github.com/HankHuang0516/EClaw/commit/129327bc7b91056659f1ab7e8d5e3f5260d951fb))
* **mindmap:** portal/mindmap.html force-graph prototype ([#129](https://github.com/HankHuang0516/EClaw/issues/129)) ([#2681](https://github.com/HankHuang0516/EClaw/issues/2681)) ([0f15e69](https://github.com/HankHuang0516/EClaw/commit/0f15e6930f0697c37fa08f3219edb8f9e499837f)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **portal:** redo nagoya trip page in professional tour-guide style ([#2691](https://github.com/HankHuang0516/EClaw/issues/2691)) ([b2378c0](https://github.com/HankHuang0516/EClaw/commit/b2378c06ee20fa9cccfdceceb1a4c9e0b3072f59))
* **avatar:** render selected petdx companion in chat avatars ([#2620](https://github.com/HankHuang0516/EClaw/issues/2620)) ([0bdd046](https://github.com/HankHuang0516/EClaw/commit/0bdd046fe1b1c428e32edda366ff112c08927f4c))
* **home:** replace native home with WebView hosting dashboard.html ([#2634](https://github.com/HankHuang0516/EClaw/issues/2634)) ([e69ea81](https://github.com/HankHuang0516/EClaw/commit/e69ea8160c239b083a83d6dc83a4f1c3f901c863))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **chat:** support message deep links ([#2719](https://github.com/HankHuang0516/EClaw/issues/2719)) ([2dc0f1e](https://github.com/HankHuang0516/EClaw/commit/2dc0f1eeb259e1a0848db4a03186b989372cd91c))
* **mission:** support note deep links ([#2717](https://github.com/HankHuang0516/EClaw/issues/2717)) ([2efd3a5](https://github.com/HankHuang0516/EClaw/commit/2efd3a5e741217a07c0b0ac54a0ddd010e0ebe23))
* **share-chat:** twitter card + per-bot og:image/twitter:* in SSR ([#2609](https://github.com/HankHuang0516/EClaw/issues/2609)) ([6cdc853](https://github.com/HankHuang0516/EClaw/commit/6cdc853dc884cdb95bd47214942768981f218ae0))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))
* **settings:** wire petdx avatar into channel-account chips ([#2626](https://github.com/HankHuang0516/EClaw/issues/2626)) ([88aec77](https://github.com/HankHuang0516/EClaw/commit/88aec772628c240e97b336bb5820892ad632d1ae))
* **files:** wire petdx avatar into entity filter & per-file badges ([#2627](https://github.com/HankHuang0516/EClaw/issues/2627)) ([5b3e5cc](https://github.com/HankHuang0516/EClaw/commit/5b3e5cc542d9da69bb4e92500fd03a542ea33f00))
* **mindmap:** wrap hardcoded zh-TW UI strings with i18n t() ([#2607](https://github.com/HankHuang0516/EClaw/issues/2607)) ([166af87](https://github.com/HankHuang0516/EClaw/commit/166af8772b2121a24aaf34a83b3de970e9b3b571)), closes [#2606](https://github.com/HankHuang0516/EClaw/issues/2606)


### Performance Improvements

* **mindmap:** force-graph hardening for 1000/2000-node graphs ([#2684](https://github.com/HankHuang0516/EClaw/issues/2684)) ([da8b1c8](https://github.com/HankHuang0516/EClaw/commit/da8b1c8f947ab8bc8fa455c1962a91146623a1fc))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-14)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **notifications:** add kanban_done + kanban_done_auto toggles to Android Settings ([#2636](https://github.com/HankHuang0516/EClaw/issues/2636)) ([a710909](https://github.com/HankHuang0516/EClaw/commit/a7109095e3393b8564e7ef1b23d382a4fbb944b8))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **kanban:** comment input no longer overlaps last comment in card detail (PR [#2678](https://github.com/HankHuang0516/EClaw/issues/2678)) ([fba91fc](https://github.com/HankHuang0516/EClaw/commit/fba91fca15402b453a0db5ee857c0b16e6087055))
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **petdx:** drop dark-grey loading placeholder + preload sprite WEBP ([#2628](https://github.com/HankHuang0516/EClaw/issues/2628)) ([59cef38](https://github.com/HankHuang0516/EClaw/commit/59cef387bd69ca99d7d15c86a1364856d3849ad8)), closes [#1a1a1a](https://github.com/HankHuang0516/EClaw/issues/1a1a1a)
* **entities:** expose botSecret to owner so wallpaper service can poll companions ([#2615](https://github.com/HankHuang0516/EClaw/issues/2615)) ([04470fc](https://github.com/HankHuang0516/EClaw/commit/04470fce8f8c3fce2b1ba8b243e776606f107502))
* **rental:** expose owner_public_code in marketplace so plaza CTA can route ([#2616](https://github.com/HankHuang0516/EClaw/issues/2616)) ([4d1372f](https://github.com/HankHuang0516/EClaw/commit/4d1372f717d93cab65543e87c852e74e9fb67071)), closes [#2610](https://github.com/HankHuang0516/EClaw/issues/2610)
* **mindmap:** fallback to device scope when entityId is null ([#2728](https://github.com/HankHuang0516/EClaw/issues/2728)) ([7572312](https://github.com/HankHuang0516/EClaw/commit/7572312433d3d75fc245eda48a28919ce14bd927))
* **i18n:** fill Spanish drift keys ([#2751](https://github.com/HankHuang0516/EClaw/issues/2751)) ([0ad0ee5](https://github.com/HankHuang0516/EClaw/commit/0ad0ee55f7fac3e6ac46d891539950dab4d553cc))
* **portal:** fit embedded org chart to mobile viewport ([#2674](https://github.com/HankHuang0516/EClaw/issues/2674)) ([1c4e1b4](https://github.com/HankHuang0516/EClaw/commit/1c4e1b413ea7027b4cd4b8ecda981b0d0e12e66b))
* **i18n:** fix 6 trailing-comma syntax errors in 10-locale batch ([#2771](https://github.com/HankHuang0516/EClaw/issues/2771)) ([b27c6ca](https://github.com/HankHuang0516/EClaw/commit/b27c6ca204bf813e406c54ce3a2532a5f1f031b3))
* **uiux:** harden chat previews and roster preview ([#2769](https://github.com/HankHuang0516/EClaw/issues/2769)) ([466d4d3](https://github.com/HankHuang0516/EClaw/commit/466d4d3ef81c628d3f58db64323946053d7bf61c))
* **mention-parser:** ignore @-mentions inside markdown code spans ([#2645](https://github.com/HankHuang0516/EClaw/issues/2645)) ([8da19d4](https://github.com/HankHuang0516/EClaw/commit/8da19d4a79ceb4152bf2144ee0847c61ce3e1def)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **kanban:** lazy-load dependency chips via IntersectionObserver ([#2632](https://github.com/HankHuang0516/EClaw/issues/2632)) ([20586b4](https://github.com/HankHuang0516/EClaw/commit/20586b43357335f9eb6a190c02d58c8e36b58aba)), closes [#2631](https://github.com/HankHuang0516/EClaw/issues/2631)
* **kanban:** make card sorting deterministic ([#2756](https://github.com/HankHuang0516/EClaw/issues/2756)) ([48e2117](https://github.com/HankHuang0516/EClaw/commit/48e2117b64e37f05dc635e0a3b67bfd43cbe48f5))
* **kanban:** notify reviewer on manual /move → review ([#2753](https://github.com/HankHuang0516/EClaw/issues/2753)) ([6cbbb4e](https://github.com/HankHuang0516/EClaw/commit/6cbbb4ee8c0d4d8ad54df2e9b5faaa3699bd530f))
* **wallpaper:** off-load spritesheet fetch to IO so per-petdx sprites actually render ([#2618](https://github.com/HankHuang0516/EClaw/issues/2618)) ([61b832c](https://github.com/HankHuang0516/EClaw/commit/61b832c9fa8a1d0caab810ccc942d85c63349267)), closes [#2615](https://github.com/HankHuang0516/EClaw/issues/2615) [#2577](https://github.com/HankHuang0516/EClaw/issues/2577)
* **portal:** petdx-browser cookie-session fallback for device-login ([#2757](https://github.com/HankHuang0516/EClaw/issues/2757)) ([ca275f4](https://github.com/HankHuang0516/EClaw/commit/ca275f4519835da0c7ad71c588908a18f6f138d8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **i18n:** positional format specifiers for feedback_result_logs (7 locales) ([#2597](https://github.com/HankHuang0516/EClaw/issues/2597)) ([21aedc7](https://github.com/HankHuang0516/EClaw/commit/21aedc7eebc7a2839e340136f38dfdfd4dabb9dc))
* **avatar-petdx:** preserve descriptor across transient API failures (flicker) ([#2625](https://github.com/HankHuang0516/EClaw/issues/2625)) ([7b1c606](https://github.com/HankHuang0516/EClaw/commit/7b1c606514f7698d72ec95cf6c556e4043966186))
* **chat:** preserve scroll anchor while reading history ([#2693](https://github.com/HankHuang0516/EClaw/issues/2693)) ([945fdb7](https://github.com/HankHuang0516/EClaw/commit/945fdb7192b791b31882e1e75568dd8b11e4686f))
* **promo:** pull video embed from /promo-chat-avatar.html ([#2724](https://github.com/HankHuang0516/EClaw/issues/2724)) ([2afabc8](https://github.com/HankHuang0516/EClaw/commit/2afabc8c5ff8b25218a7cb857e8adfa572c8e9d5))
* **kanban:** realign stale recurring schedules ([#2785](https://github.com/HankHuang0516/EClaw/issues/2785)) ([ab8ee25](https://github.com/HankHuang0516/EClaw/commit/ab8ee250a9b37f3d3e838bb01d8866c8d2b78231))
* **portal:** reduce QA-discovered request fanout ([#2656](https://github.com/HankHuang0516/EClaw/issues/2656)) ([1e46d6b](https://github.com/HankHuang0516/EClaw/commit/1e46d6bab61e58c65b452b6503d953f8dddeee75))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **portal:** remove org chart fit scale floor ([#2676](https://github.com/HankHuang0516/EClaw/issues/2676)) ([0f01606](https://github.com/HankHuang0516/EClaw/commit/0f016068b963bb5f800a02f28817c7174979d913))
* **i18n:** rename mm_empty_title → mm_state_empty_title in mindmap.html ([#2683](https://github.com/HankHuang0516/EClaw/issues/2683)) ([c79c109](https://github.com/HankHuang0516/EClaw/commit/c79c109bea23142e8a6d9ace976d105af1280ec9))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **chat:** render mention avatars with companion renderer ([#2633](https://github.com/HankHuang0516/EClaw/issues/2633)) ([03e205f](https://github.com/HankHuang0516/EClaw/commit/03e205f663ecd2c2f443d4009dd5af0093f0bbbb))
* **kanban:** reserve mobile comments panel height ([#2782](https://github.com/HankHuang0516/EClaw/issues/2782)) ([ce8662d](https://github.com/HankHuang0516/EClaw/commit/ce8662d362422fdd25037f1deb61dbed9425e2f9))
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* scheduled audit 2026-05-13 — 6 bugs, XSS, i18n ([#2668](https://github.com/HankHuang0516/EClaw/issues/2668)) ([21dd513](https://github.com/HankHuang0516/EClaw/commit/21dd513b4464738de29164265437435ba6cc4817)), closes [#2605](https://github.com/HankHuang0516/EClaw/issues/2605) [#2608](https://github.com/HankHuang0516/EClaw/issues/2608) [#2600](https://github.com/HankHuang0516/EClaw/issues/2600) [#2599](https://github.com/HankHuang0516/EClaw/issues/2599) [#2598](https://github.com/HankHuang0516/EClaw/issues/2598)
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **chat:** smart-chip preview falls back to inline c.comments when /comments fails (PR [#2677](https://github.com/HankHuang0516/EClaw/issues/2677)) ([7f4dffd](https://github.com/HankHuang0516/EClaw/commit/7f4dffd2c83ea86f296b8fa0610f0e67c9f1af11))
* **wallpaper:** stop Android live wallpaper flashing default lobster on companion change ([#2629](https://github.com/HankHuang0516/EClaw/issues/2629)) ([8b4f66f](https://github.com/HankHuang0516/EClaw/commit/8b4f66fcb335bf43128f924b761b6337c817095b)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **app:** WebView pages honor app-selected locale via ?lang= URL param ([#2672](https://github.com/HankHuang0516/EClaw/issues/2672)) ([8ed8757](https://github.com/HankHuang0516/EClaw/commit/8ed8757aec5bf214e837cc0d81bf2b23f1993a91)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* **community:** 1-click chat button on bot cards + utm tagging ([#2610](https://github.com/HankHuang0516/EClaw/issues/2610)) ([eee97b0](https://github.com/HankHuang0516/EClaw/commit/eee97b0e2e4e74945ec24f218a69a52800b97a66))
* **chat:** add avatar size preference ([#2714](https://github.com/HankHuang0516/EClaw/issues/2714)) ([6fe164a](https://github.com/HankHuang0516/EClaw/commit/6fe164ad8b22fa576d2dd9ad37c0d9fc295b5a83))
* **dashboard:** add Claude and Codex channel guides ([#2640](https://github.com/HankHuang0516/EClaw/issues/2640)) ([c64e4c4](https://github.com/HankHuang0516/EClaw/commit/c64e4c4afc78db58c5cd578f00486dd7b2fd3311))
* **dashboard:** add Claude Code channel guide card ([#2667](https://github.com/HankHuang0516/EClaw/issues/2667)) ([d70d75c](https://github.com/HankHuang0516/EClaw/commit/d70d75c0c8caa8a540358a9aab4556b8c1927a5c))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* **portal:** add entity selector to petdx-browser ([#2602](https://github.com/HankHuang0516/EClaw/issues/2602)) ([3fa067e](https://github.com/HankHuang0516/EClaw/commit/3fa067e00b38829b48a37cecd33ee81a9a1122d9))
* **kanban:** add explicit card links ([#2721](https://github.com/HankHuang0516/EClaw/issues/2721)) ([ef9f812](https://github.com/HankHuang0516/EClaw/commit/ef9f812a3fcf39efd07fd158ce90951bdd045ac7))
* **mindmap:** add GET /api/mindmap/graph force-graph projection ([#2680](https://github.com/HankHuang0516/EClaw/issues/2680)) ([a00b2e7](https://github.com/HankHuang0516/EClaw/commit/a00b2e775af2c4c98cd157f760ad87aeeee469f0)), closes [#2679](https://github.com/HankHuang0516/EClaw/issues/2679) [#2679](https://github.com/HankHuang0516/EClaw/issues/2679)
* **dashboard:** add Hermes channel promo card ([#2708](https://github.com/HankHuang0516/EClaw/issues/2708)) ([337aca1](https://github.com/HankHuang0516/EClaw/commit/337aca153d5a1cd7e888c065f00ae54db7872d91))
* **portal:** add Nagoya 5D4N trip static cross-ref page ([#2689](https://github.com/HankHuang0516/EClaw/issues/2689)) ([2e0efb6](https://github.com/HankHuang0516/EClaw/commit/2e0efb6dcdaff52226cc8854a96747000b12bdff))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **settings:** add rental roster management preview ([#2758](https://github.com/HankHuang0516/EClaw/issues/2758)) ([9706e59](https://github.com/HankHuang0516/EClaw/commit/9706e59ded140a90a6e02348124282bc69d89001))
* **rental:** add renter health chat indicator ([#2690](https://github.com/HankHuang0516/EClaw/issues/2690)) ([36cd2e9](https://github.com/HankHuang0516/EClaw/commit/36cd2e9802be4c7ebb03d3024617fa74aca48ffd))
* **companion:** bridge crafter-station/petdex gallery (1784 pets) ([#2601](https://github.com/HankHuang0516/EClaw/issues/2601)) ([2e245be](https://github.com/HankHuang0516/EClaw/commit/2e245bea6dd47ea7361b927d389188a3c23b6bb3))
* **promo:** chat avatar size feature landing page (self-hosted MP4) ([#2722](https://github.com/HankHuang0516/EClaw/issues/2722)) ([3852210](https://github.com/HankHuang0516/EClaw/commit/3852210d355704d018e3daca6b5f9512a011b210)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **promo:** embed daily eclaw video 2026-05-14 ([#2786](https://github.com/HankHuang0516/EClaw/issues/2786)) ([718a814](https://github.com/HankHuang0516/EClaw/commit/718a814ab16850bc2b33a1b303841e2c4378ecfa)), closes [#2782](https://github.com/HankHuang0516/EClaw/issues/2782) [#2693](https://github.com/HankHuang0516/EClaw/issues/2693)
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **rental:** enforce strict rebind refunds ([#2703](https://github.com/HankHuang0516/EClaw/issues/2703)) ([a1859c5](https://github.com/HankHuang0516/EClaw/commit/a1859c50e6fb3991d7a8051491502d824a14a116))
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **chat:** link card previews to kanban ([#2754](https://github.com/HankHuang0516/EClaw/issues/2754)) ([2261240](https://github.com/HankHuang0516/EClaw/commit/22612402c2e95efb07246629e81a849be41ee9c7))
* **mission:** link notes to kanban cards ([#2723](https://github.com/HankHuang0516/EClaw/issues/2723)) ([b36dc18](https://github.com/HankHuang0516/EClaw/commit/b36dc18f3a8facf12e0b6046351c222f1e99dc55))
* **mindmap:** mission.html link to /portal/mindmap.html + deprecate /api/mission/mindmap ([#2685](https://github.com/HankHuang0516/EClaw/issues/2685)) ([11e297b](https://github.com/HankHuang0516/EClaw/commit/11e297bab1c9b56fcde3027d6500b7c58891bf18)), closes [#2680](https://github.com/HankHuang0516/EClaw/issues/2680) [#2684](https://github.com/HankHuang0516/EClaw/issues/2684)
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **avatar:** petdx render on card-holder my-cards (Phase 1b) ([#2621](https://github.com/HankHuang0516/EClaw/issues/2621)) ([f78ba8b](https://github.com/HankHuang0516/EClaw/commit/f78ba8b18acc426936ab6d8a82ca7541effea00d))
* **avatar:** petdx render on dashboard entity grid / org chart / bindings (Phase 1b) ([#2622](https://github.com/HankHuang0516/EClaw/issues/2622)) ([f417749](https://github.com/HankHuang0516/EClaw/commit/f41774914451048e8cd76e9ae30416a0642e173b)), closes [#2620](https://github.com/HankHuang0516/EClaw/issues/2620) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621)
* **avatar:** petdx render on kanban auto-assign / pulse / comment avatars (Phase 1b) ([#2624](https://github.com/HankHuang0516/EClaw/issues/2624)) ([6bff5f8](https://github.com/HankHuang0516/EClaw/commit/6bff5f80440d0bd91a6b1721cde9478d685c4d46))
* **avatar:** petdx render on mission skill/rule/soul entity dialogs (Phase 1b) ([#2623](https://github.com/HankHuang0516/EClaw/issues/2623)) ([129327b](https://github.com/HankHuang0516/EClaw/commit/129327bc7b91056659f1ab7e8d5e3f5260d951fb))
* **mindmap:** portal/mindmap.html force-graph prototype ([#129](https://github.com/HankHuang0516/EClaw/issues/129)) ([#2681](https://github.com/HankHuang0516/EClaw/issues/2681)) ([0f15e69](https://github.com/HankHuang0516/EClaw/commit/0f15e6930f0697c37fa08f3219edb8f9e499837f)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **portal:** redo nagoya trip page in professional tour-guide style ([#2691](https://github.com/HankHuang0516/EClaw/issues/2691)) ([b2378c0](https://github.com/HankHuang0516/EClaw/commit/b2378c06ee20fa9cccfdceceb1a4c9e0b3072f59))
* **avatar:** render selected petdx companion in chat avatars ([#2620](https://github.com/HankHuang0516/EClaw/issues/2620)) ([0bdd046](https://github.com/HankHuang0516/EClaw/commit/0bdd046fe1b1c428e32edda366ff112c08927f4c))
* **home:** replace native home with WebView hosting dashboard.html ([#2634](https://github.com/HankHuang0516/EClaw/issues/2634)) ([e69ea81](https://github.com/HankHuang0516/EClaw/commit/e69ea8160c239b083a83d6dc83a4f1c3f901c863))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **chat:** support message deep links ([#2719](https://github.com/HankHuang0516/EClaw/issues/2719)) ([2dc0f1e](https://github.com/HankHuang0516/EClaw/commit/2dc0f1eeb259e1a0848db4a03186b989372cd91c))
* **mission:** support note deep links ([#2717](https://github.com/HankHuang0516/EClaw/issues/2717)) ([2efd3a5](https://github.com/HankHuang0516/EClaw/commit/2efd3a5e741217a07c0b0ac54a0ddd010e0ebe23))
* **share-chat:** twitter card + per-bot og:image/twitter:* in SSR ([#2609](https://github.com/HankHuang0516/EClaw/issues/2609)) ([6cdc853](https://github.com/HankHuang0516/EClaw/commit/6cdc853dc884cdb95bd47214942768981f218ae0))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))
* **settings:** wire petdx avatar into channel-account chips ([#2626](https://github.com/HankHuang0516/EClaw/issues/2626)) ([88aec77](https://github.com/HankHuang0516/EClaw/commit/88aec772628c240e97b336bb5820892ad632d1ae))
* **files:** wire petdx avatar into entity filter & per-file badges ([#2627](https://github.com/HankHuang0516/EClaw/issues/2627)) ([5b3e5cc](https://github.com/HankHuang0516/EClaw/commit/5b3e5cc542d9da69bb4e92500fd03a542ea33f00))
* **mindmap:** wrap hardcoded zh-TW UI strings with i18n t() ([#2607](https://github.com/HankHuang0516/EClaw/issues/2607)) ([166af87](https://github.com/HankHuang0516/EClaw/commit/166af8772b2121a24aaf34a83b3de970e9b3b571)), closes [#2606](https://github.com/HankHuang0516/EClaw/issues/2606)


### Performance Improvements

* **mindmap:** force-graph hardening for 1000/2000-node graphs ([#2684](https://github.com/HankHuang0516/EClaw/issues/2684)) ([da8b1c8](https://github.com/HankHuang0516/EClaw/commit/da8b1c8f947ab8bc8fa455c1962a91146623a1fc))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-14)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **notifications:** add kanban_done + kanban_done_auto toggles to Android Settings ([#2636](https://github.com/HankHuang0516/EClaw/issues/2636)) ([a710909](https://github.com/HankHuang0516/EClaw/commit/a7109095e3393b8564e7ef1b23d382a4fbb944b8))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **kanban:** comment input no longer overlaps last comment in card detail (PR [#2678](https://github.com/HankHuang0516/EClaw/issues/2678)) ([fba91fc](https://github.com/HankHuang0516/EClaw/commit/fba91fca15402b453a0db5ee857c0b16e6087055))
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **petdx:** drop dark-grey loading placeholder + preload sprite WEBP ([#2628](https://github.com/HankHuang0516/EClaw/issues/2628)) ([59cef38](https://github.com/HankHuang0516/EClaw/commit/59cef387bd69ca99d7d15c86a1364856d3849ad8)), closes [#1a1a1a](https://github.com/HankHuang0516/EClaw/issues/1a1a1a)
* **entities:** expose botSecret to owner so wallpaper service can poll companions ([#2615](https://github.com/HankHuang0516/EClaw/issues/2615)) ([04470fc](https://github.com/HankHuang0516/EClaw/commit/04470fce8f8c3fce2b1ba8b243e776606f107502))
* **rental:** expose owner_public_code in marketplace so plaza CTA can route ([#2616](https://github.com/HankHuang0516/EClaw/issues/2616)) ([4d1372f](https://github.com/HankHuang0516/EClaw/commit/4d1372f717d93cab65543e87c852e74e9fb67071)), closes [#2610](https://github.com/HankHuang0516/EClaw/issues/2610)
* **mindmap:** fallback to device scope when entityId is null ([#2728](https://github.com/HankHuang0516/EClaw/issues/2728)) ([7572312](https://github.com/HankHuang0516/EClaw/commit/7572312433d3d75fc245eda48a28919ce14bd927))
* **i18n:** fill Spanish drift keys ([#2751](https://github.com/HankHuang0516/EClaw/issues/2751)) ([0ad0ee5](https://github.com/HankHuang0516/EClaw/commit/0ad0ee55f7fac3e6ac46d891539950dab4d553cc))
* **portal:** fit embedded org chart to mobile viewport ([#2674](https://github.com/HankHuang0516/EClaw/issues/2674)) ([1c4e1b4](https://github.com/HankHuang0516/EClaw/commit/1c4e1b413ea7027b4cd4b8ecda981b0d0e12e66b))
* **i18n:** fix 6 trailing-comma syntax errors in 10-locale batch ([#2771](https://github.com/HankHuang0516/EClaw/issues/2771)) ([b27c6ca](https://github.com/HankHuang0516/EClaw/commit/b27c6ca204bf813e406c54ce3a2532a5f1f031b3))
* **uiux:** harden chat previews and roster preview ([#2769](https://github.com/HankHuang0516/EClaw/issues/2769)) ([466d4d3](https://github.com/HankHuang0516/EClaw/commit/466d4d3ef81c628d3f58db64323946053d7bf61c))
* **mention-parser:** ignore @-mentions inside markdown code spans ([#2645](https://github.com/HankHuang0516/EClaw/issues/2645)) ([8da19d4](https://github.com/HankHuang0516/EClaw/commit/8da19d4a79ceb4152bf2144ee0847c61ce3e1def)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **kanban:** lazy-load dependency chips via IntersectionObserver ([#2632](https://github.com/HankHuang0516/EClaw/issues/2632)) ([20586b4](https://github.com/HankHuang0516/EClaw/commit/20586b43357335f9eb6a190c02d58c8e36b58aba)), closes [#2631](https://github.com/HankHuang0516/EClaw/issues/2631)
* **kanban:** make card sorting deterministic ([#2756](https://github.com/HankHuang0516/EClaw/issues/2756)) ([48e2117](https://github.com/HankHuang0516/EClaw/commit/48e2117b64e37f05dc635e0a3b67bfd43cbe48f5))
* **kanban:** notify reviewer on manual /move → review ([#2753](https://github.com/HankHuang0516/EClaw/issues/2753)) ([6cbbb4e](https://github.com/HankHuang0516/EClaw/commit/6cbbb4ee8c0d4d8ad54df2e9b5faaa3699bd530f))
* **wallpaper:** off-load spritesheet fetch to IO so per-petdx sprites actually render ([#2618](https://github.com/HankHuang0516/EClaw/issues/2618)) ([61b832c](https://github.com/HankHuang0516/EClaw/commit/61b832c9fa8a1d0caab810ccc942d85c63349267)), closes [#2615](https://github.com/HankHuang0516/EClaw/issues/2615) [#2577](https://github.com/HankHuang0516/EClaw/issues/2577)
* **portal:** petdx-browser cookie-session fallback for device-login ([#2757](https://github.com/HankHuang0516/EClaw/issues/2757)) ([ca275f4](https://github.com/HankHuang0516/EClaw/commit/ca275f4519835da0c7ad71c588908a18f6f138d8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **i18n:** positional format specifiers for feedback_result_logs (7 locales) ([#2597](https://github.com/HankHuang0516/EClaw/issues/2597)) ([21aedc7](https://github.com/HankHuang0516/EClaw/commit/21aedc7eebc7a2839e340136f38dfdfd4dabb9dc))
* **avatar-petdx:** preserve descriptor across transient API failures (flicker) ([#2625](https://github.com/HankHuang0516/EClaw/issues/2625)) ([7b1c606](https://github.com/HankHuang0516/EClaw/commit/7b1c606514f7698d72ec95cf6c556e4043966186))
* **chat:** preserve scroll anchor while reading history ([#2693](https://github.com/HankHuang0516/EClaw/issues/2693)) ([945fdb7](https://github.com/HankHuang0516/EClaw/commit/945fdb7192b791b31882e1e75568dd8b11e4686f))
* **promo:** pull video embed from /promo-chat-avatar.html ([#2724](https://github.com/HankHuang0516/EClaw/issues/2724)) ([2afabc8](https://github.com/HankHuang0516/EClaw/commit/2afabc8c5ff8b25218a7cb857e8adfa572c8e9d5))
* **kanban:** realign stale recurring schedules ([#2785](https://github.com/HankHuang0516/EClaw/issues/2785)) ([ab8ee25](https://github.com/HankHuang0516/EClaw/commit/ab8ee250a9b37f3d3e838bb01d8866c8d2b78231))
* **portal:** reduce QA-discovered request fanout ([#2656](https://github.com/HankHuang0516/EClaw/issues/2656)) ([1e46d6b](https://github.com/HankHuang0516/EClaw/commit/1e46d6bab61e58c65b452b6503d953f8dddeee75))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **portal:** remove org chart fit scale floor ([#2676](https://github.com/HankHuang0516/EClaw/issues/2676)) ([0f01606](https://github.com/HankHuang0516/EClaw/commit/0f016068b963bb5f800a02f28817c7174979d913))
* **i18n:** rename mm_empty_title → mm_state_empty_title in mindmap.html ([#2683](https://github.com/HankHuang0516/EClaw/issues/2683)) ([c79c109](https://github.com/HankHuang0516/EClaw/commit/c79c109bea23142e8a6d9ace976d105af1280ec9))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **chat:** render mention avatars with companion renderer ([#2633](https://github.com/HankHuang0516/EClaw/issues/2633)) ([03e205f](https://github.com/HankHuang0516/EClaw/commit/03e205f663ecd2c2f443d4009dd5af0093f0bbbb))
* **kanban:** reserve mobile comments panel height ([#2782](https://github.com/HankHuang0516/EClaw/issues/2782)) ([ce8662d](https://github.com/HankHuang0516/EClaw/commit/ce8662d362422fdd25037f1deb61dbed9425e2f9))
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* scheduled audit 2026-05-13 — 6 bugs, XSS, i18n ([#2668](https://github.com/HankHuang0516/EClaw/issues/2668)) ([21dd513](https://github.com/HankHuang0516/EClaw/commit/21dd513b4464738de29164265437435ba6cc4817)), closes [#2605](https://github.com/HankHuang0516/EClaw/issues/2605) [#2608](https://github.com/HankHuang0516/EClaw/issues/2608) [#2600](https://github.com/HankHuang0516/EClaw/issues/2600) [#2599](https://github.com/HankHuang0516/EClaw/issues/2599) [#2598](https://github.com/HankHuang0516/EClaw/issues/2598)
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **chat:** smart-chip preview falls back to inline c.comments when /comments fails (PR [#2677](https://github.com/HankHuang0516/EClaw/issues/2677)) ([7f4dffd](https://github.com/HankHuang0516/EClaw/commit/7f4dffd2c83ea86f296b8fa0610f0e67c9f1af11))
* **wallpaper:** stop Android live wallpaper flashing default lobster on companion change ([#2629](https://github.com/HankHuang0516/EClaw/issues/2629)) ([8b4f66f](https://github.com/HankHuang0516/EClaw/commit/8b4f66fcb335bf43128f924b761b6337c817095b)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **app:** WebView pages honor app-selected locale via ?lang= URL param ([#2672](https://github.com/HankHuang0516/EClaw/issues/2672)) ([8ed8757](https://github.com/HankHuang0516/EClaw/commit/8ed8757aec5bf214e837cc0d81bf2b23f1993a91)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* **community:** 1-click chat button on bot cards + utm tagging ([#2610](https://github.com/HankHuang0516/EClaw/issues/2610)) ([eee97b0](https://github.com/HankHuang0516/EClaw/commit/eee97b0e2e4e74945ec24f218a69a52800b97a66))
* **chat:** add avatar size preference ([#2714](https://github.com/HankHuang0516/EClaw/issues/2714)) ([6fe164a](https://github.com/HankHuang0516/EClaw/commit/6fe164ad8b22fa576d2dd9ad37c0d9fc295b5a83))
* **dashboard:** add Claude and Codex channel guides ([#2640](https://github.com/HankHuang0516/EClaw/issues/2640)) ([c64e4c4](https://github.com/HankHuang0516/EClaw/commit/c64e4c4afc78db58c5cd578f00486dd7b2fd3311))
* **dashboard:** add Claude Code channel guide card ([#2667](https://github.com/HankHuang0516/EClaw/issues/2667)) ([d70d75c](https://github.com/HankHuang0516/EClaw/commit/d70d75c0c8caa8a540358a9aab4556b8c1927a5c))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* **portal:** add entity selector to petdx-browser ([#2602](https://github.com/HankHuang0516/EClaw/issues/2602)) ([3fa067e](https://github.com/HankHuang0516/EClaw/commit/3fa067e00b38829b48a37cecd33ee81a9a1122d9))
* **kanban:** add explicit card links ([#2721](https://github.com/HankHuang0516/EClaw/issues/2721)) ([ef9f812](https://github.com/HankHuang0516/EClaw/commit/ef9f812a3fcf39efd07fd158ce90951bdd045ac7))
* **mindmap:** add GET /api/mindmap/graph force-graph projection ([#2680](https://github.com/HankHuang0516/EClaw/issues/2680)) ([a00b2e7](https://github.com/HankHuang0516/EClaw/commit/a00b2e775af2c4c98cd157f760ad87aeeee469f0)), closes [#2679](https://github.com/HankHuang0516/EClaw/issues/2679) [#2679](https://github.com/HankHuang0516/EClaw/issues/2679)
* **dashboard:** add Hermes channel promo card ([#2708](https://github.com/HankHuang0516/EClaw/issues/2708)) ([337aca1](https://github.com/HankHuang0516/EClaw/commit/337aca153d5a1cd7e888c065f00ae54db7872d91))
* **portal:** add Nagoya 5D4N trip static cross-ref page ([#2689](https://github.com/HankHuang0516/EClaw/issues/2689)) ([2e0efb6](https://github.com/HankHuang0516/EClaw/commit/2e0efb6dcdaff52226cc8854a96747000b12bdff))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **settings:** add rental roster management preview ([#2758](https://github.com/HankHuang0516/EClaw/issues/2758)) ([9706e59](https://github.com/HankHuang0516/EClaw/commit/9706e59ded140a90a6e02348124282bc69d89001))
* **rental:** add renter health chat indicator ([#2690](https://github.com/HankHuang0516/EClaw/issues/2690)) ([36cd2e9](https://github.com/HankHuang0516/EClaw/commit/36cd2e9802be4c7ebb03d3024617fa74aca48ffd))
* **companion:** bridge crafter-station/petdex gallery (1784 pets) ([#2601](https://github.com/HankHuang0516/EClaw/issues/2601)) ([2e245be](https://github.com/HankHuang0516/EClaw/commit/2e245bea6dd47ea7361b927d389188a3c23b6bb3))
* **promo:** chat avatar size feature landing page (self-hosted MP4) ([#2722](https://github.com/HankHuang0516/EClaw/issues/2722)) ([3852210](https://github.com/HankHuang0516/EClaw/commit/3852210d355704d018e3daca6b5f9512a011b210)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **promo:** embed daily eclaw video 2026-05-14 ([#2786](https://github.com/HankHuang0516/EClaw/issues/2786)) ([718a814](https://github.com/HankHuang0516/EClaw/commit/718a814ab16850bc2b33a1b303841e2c4378ecfa)), closes [#2782](https://github.com/HankHuang0516/EClaw/issues/2782) [#2693](https://github.com/HankHuang0516/EClaw/issues/2693)
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **rental:** enforce strict rebind refunds ([#2703](https://github.com/HankHuang0516/EClaw/issues/2703)) ([a1859c5](https://github.com/HankHuang0516/EClaw/commit/a1859c50e6fb3991d7a8051491502d824a14a116))
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **chat:** link card previews to kanban ([#2754](https://github.com/HankHuang0516/EClaw/issues/2754)) ([2261240](https://github.com/HankHuang0516/EClaw/commit/22612402c2e95efb07246629e81a849be41ee9c7))
* **mission:** link notes to kanban cards ([#2723](https://github.com/HankHuang0516/EClaw/issues/2723)) ([b36dc18](https://github.com/HankHuang0516/EClaw/commit/b36dc18f3a8facf12e0b6046351c222f1e99dc55))
* **mindmap:** mission.html link to /portal/mindmap.html + deprecate /api/mission/mindmap ([#2685](https://github.com/HankHuang0516/EClaw/issues/2685)) ([11e297b](https://github.com/HankHuang0516/EClaw/commit/11e297bab1c9b56fcde3027d6500b7c58891bf18)), closes [#2680](https://github.com/HankHuang0516/EClaw/issues/2680) [#2684](https://github.com/HankHuang0516/EClaw/issues/2684)
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **avatar:** petdx render on card-holder my-cards (Phase 1b) ([#2621](https://github.com/HankHuang0516/EClaw/issues/2621)) ([f78ba8b](https://github.com/HankHuang0516/EClaw/commit/f78ba8b18acc426936ab6d8a82ca7541effea00d))
* **avatar:** petdx render on dashboard entity grid / org chart / bindings (Phase 1b) ([#2622](https://github.com/HankHuang0516/EClaw/issues/2622)) ([f417749](https://github.com/HankHuang0516/EClaw/commit/f41774914451048e8cd76e9ae30416a0642e173b)), closes [#2620](https://github.com/HankHuang0516/EClaw/issues/2620) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621)
* **avatar:** petdx render on kanban auto-assign / pulse / comment avatars (Phase 1b) ([#2624](https://github.com/HankHuang0516/EClaw/issues/2624)) ([6bff5f8](https://github.com/HankHuang0516/EClaw/commit/6bff5f80440d0bd91a6b1721cde9478d685c4d46))
* **avatar:** petdx render on mission skill/rule/soul entity dialogs (Phase 1b) ([#2623](https://github.com/HankHuang0516/EClaw/issues/2623)) ([129327b](https://github.com/HankHuang0516/EClaw/commit/129327bc7b91056659f1ab7e8d5e3f5260d951fb))
* **mindmap:** portal/mindmap.html force-graph prototype ([#129](https://github.com/HankHuang0516/EClaw/issues/129)) ([#2681](https://github.com/HankHuang0516/EClaw/issues/2681)) ([0f15e69](https://github.com/HankHuang0516/EClaw/commit/0f15e6930f0697c37fa08f3219edb8f9e499837f)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **portal:** redo nagoya trip page in professional tour-guide style ([#2691](https://github.com/HankHuang0516/EClaw/issues/2691)) ([b2378c0](https://github.com/HankHuang0516/EClaw/commit/b2378c06ee20fa9cccfdceceb1a4c9e0b3072f59))
* **avatar:** render selected petdx companion in chat avatars ([#2620](https://github.com/HankHuang0516/EClaw/issues/2620)) ([0bdd046](https://github.com/HankHuang0516/EClaw/commit/0bdd046fe1b1c428e32edda366ff112c08927f4c))
* **home:** replace native home with WebView hosting dashboard.html ([#2634](https://github.com/HankHuang0516/EClaw/issues/2634)) ([e69ea81](https://github.com/HankHuang0516/EClaw/commit/e69ea8160c239b083a83d6dc83a4f1c3f901c863))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **chat:** support message deep links ([#2719](https://github.com/HankHuang0516/EClaw/issues/2719)) ([2dc0f1e](https://github.com/HankHuang0516/EClaw/commit/2dc0f1eeb259e1a0848db4a03186b989372cd91c))
* **mission:** support note deep links ([#2717](https://github.com/HankHuang0516/EClaw/issues/2717)) ([2efd3a5](https://github.com/HankHuang0516/EClaw/commit/2efd3a5e741217a07c0b0ac54a0ddd010e0ebe23))
* **share-chat:** twitter card + per-bot og:image/twitter:* in SSR ([#2609](https://github.com/HankHuang0516/EClaw/issues/2609)) ([6cdc853](https://github.com/HankHuang0516/EClaw/commit/6cdc853dc884cdb95bd47214942768981f218ae0))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))
* **settings:** wire petdx avatar into channel-account chips ([#2626](https://github.com/HankHuang0516/EClaw/issues/2626)) ([88aec77](https://github.com/HankHuang0516/EClaw/commit/88aec772628c240e97b336bb5820892ad632d1ae))
* **files:** wire petdx avatar into entity filter & per-file badges ([#2627](https://github.com/HankHuang0516/EClaw/issues/2627)) ([5b3e5cc](https://github.com/HankHuang0516/EClaw/commit/5b3e5cc542d9da69bb4e92500fd03a542ea33f00))
* **mindmap:** wrap hardcoded zh-TW UI strings with i18n t() ([#2607](https://github.com/HankHuang0516/EClaw/issues/2607)) ([166af87](https://github.com/HankHuang0516/EClaw/commit/166af8772b2121a24aaf34a83b3de970e9b3b571)), closes [#2606](https://github.com/HankHuang0516/EClaw/issues/2606)


### Performance Improvements

* **mindmap:** force-graph hardening for 1000/2000-node graphs ([#2684](https://github.com/HankHuang0516/EClaw/issues/2684)) ([da8b1c8](https://github.com/HankHuang0516/EClaw/commit/da8b1c8f947ab8bc8fa455c1962a91146623a1fc))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-14)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **notifications:** add kanban_done + kanban_done_auto toggles to Android Settings ([#2636](https://github.com/HankHuang0516/EClaw/issues/2636)) ([a710909](https://github.com/HankHuang0516/EClaw/commit/a7109095e3393b8564e7ef1b23d382a4fbb944b8))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **kanban:** comment input no longer overlaps last comment in card detail (PR [#2678](https://github.com/HankHuang0516/EClaw/issues/2678)) ([fba91fc](https://github.com/HankHuang0516/EClaw/commit/fba91fca15402b453a0db5ee857c0b16e6087055))
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **petdx:** drop dark-grey loading placeholder + preload sprite WEBP ([#2628](https://github.com/HankHuang0516/EClaw/issues/2628)) ([59cef38](https://github.com/HankHuang0516/EClaw/commit/59cef387bd69ca99d7d15c86a1364856d3849ad8)), closes [#1a1a1a](https://github.com/HankHuang0516/EClaw/issues/1a1a1a)
* **entities:** expose botSecret to owner so wallpaper service can poll companions ([#2615](https://github.com/HankHuang0516/EClaw/issues/2615)) ([04470fc](https://github.com/HankHuang0516/EClaw/commit/04470fce8f8c3fce2b1ba8b243e776606f107502))
* **rental:** expose owner_public_code in marketplace so plaza CTA can route ([#2616](https://github.com/HankHuang0516/EClaw/issues/2616)) ([4d1372f](https://github.com/HankHuang0516/EClaw/commit/4d1372f717d93cab65543e87c852e74e9fb67071)), closes [#2610](https://github.com/HankHuang0516/EClaw/issues/2610)
* **mindmap:** fallback to device scope when entityId is null ([#2728](https://github.com/HankHuang0516/EClaw/issues/2728)) ([7572312](https://github.com/HankHuang0516/EClaw/commit/7572312433d3d75fc245eda48a28919ce14bd927))
* **i18n:** fill Spanish drift keys ([#2751](https://github.com/HankHuang0516/EClaw/issues/2751)) ([0ad0ee5](https://github.com/HankHuang0516/EClaw/commit/0ad0ee55f7fac3e6ac46d891539950dab4d553cc))
* **portal:** fit embedded org chart to mobile viewport ([#2674](https://github.com/HankHuang0516/EClaw/issues/2674)) ([1c4e1b4](https://github.com/HankHuang0516/EClaw/commit/1c4e1b413ea7027b4cd4b8ecda981b0d0e12e66b))
* **i18n:** fix 6 trailing-comma syntax errors in 10-locale batch ([#2771](https://github.com/HankHuang0516/EClaw/issues/2771)) ([b27c6ca](https://github.com/HankHuang0516/EClaw/commit/b27c6ca204bf813e406c54ce3a2532a5f1f031b3))
* **uiux:** harden chat previews and roster preview ([#2769](https://github.com/HankHuang0516/EClaw/issues/2769)) ([466d4d3](https://github.com/HankHuang0516/EClaw/commit/466d4d3ef81c628d3f58db64323946053d7bf61c))
* **mention-parser:** ignore @-mentions inside markdown code spans ([#2645](https://github.com/HankHuang0516/EClaw/issues/2645)) ([8da19d4](https://github.com/HankHuang0516/EClaw/commit/8da19d4a79ceb4152bf2144ee0847c61ce3e1def)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **kanban:** lazy-load dependency chips via IntersectionObserver ([#2632](https://github.com/HankHuang0516/EClaw/issues/2632)) ([20586b4](https://github.com/HankHuang0516/EClaw/commit/20586b43357335f9eb6a190c02d58c8e36b58aba)), closes [#2631](https://github.com/HankHuang0516/EClaw/issues/2631)
* **kanban:** make card sorting deterministic ([#2756](https://github.com/HankHuang0516/EClaw/issues/2756)) ([48e2117](https://github.com/HankHuang0516/EClaw/commit/48e2117b64e37f05dc635e0a3b67bfd43cbe48f5))
* **kanban:** notify reviewer on manual /move → review ([#2753](https://github.com/HankHuang0516/EClaw/issues/2753)) ([6cbbb4e](https://github.com/HankHuang0516/EClaw/commit/6cbbb4ee8c0d4d8ad54df2e9b5faaa3699bd530f))
* **wallpaper:** off-load spritesheet fetch to IO so per-petdx sprites actually render ([#2618](https://github.com/HankHuang0516/EClaw/issues/2618)) ([61b832c](https://github.com/HankHuang0516/EClaw/commit/61b832c9fa8a1d0caab810ccc942d85c63349267)), closes [#2615](https://github.com/HankHuang0516/EClaw/issues/2615) [#2577](https://github.com/HankHuang0516/EClaw/issues/2577)
* **portal:** petdx-browser cookie-session fallback for device-login ([#2757](https://github.com/HankHuang0516/EClaw/issues/2757)) ([ca275f4](https://github.com/HankHuang0516/EClaw/commit/ca275f4519835da0c7ad71c588908a18f6f138d8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **i18n:** positional format specifiers for feedback_result_logs (7 locales) ([#2597](https://github.com/HankHuang0516/EClaw/issues/2597)) ([21aedc7](https://github.com/HankHuang0516/EClaw/commit/21aedc7eebc7a2839e340136f38dfdfd4dabb9dc))
* **avatar-petdx:** preserve descriptor across transient API failures (flicker) ([#2625](https://github.com/HankHuang0516/EClaw/issues/2625)) ([7b1c606](https://github.com/HankHuang0516/EClaw/commit/7b1c606514f7698d72ec95cf6c556e4043966186))
* **chat:** preserve scroll anchor while reading history ([#2693](https://github.com/HankHuang0516/EClaw/issues/2693)) ([945fdb7](https://github.com/HankHuang0516/EClaw/commit/945fdb7192b791b31882e1e75568dd8b11e4686f))
* **promo:** pull video embed from /promo-chat-avatar.html ([#2724](https://github.com/HankHuang0516/EClaw/issues/2724)) ([2afabc8](https://github.com/HankHuang0516/EClaw/commit/2afabc8c5ff8b25218a7cb857e8adfa572c8e9d5))
* **kanban:** realign stale recurring schedules ([#2785](https://github.com/HankHuang0516/EClaw/issues/2785)) ([ab8ee25](https://github.com/HankHuang0516/EClaw/commit/ab8ee250a9b37f3d3e838bb01d8866c8d2b78231))
* **portal:** reduce QA-discovered request fanout ([#2656](https://github.com/HankHuang0516/EClaw/issues/2656)) ([1e46d6b](https://github.com/HankHuang0516/EClaw/commit/1e46d6bab61e58c65b452b6503d953f8dddeee75))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **portal:** remove org chart fit scale floor ([#2676](https://github.com/HankHuang0516/EClaw/issues/2676)) ([0f01606](https://github.com/HankHuang0516/EClaw/commit/0f016068b963bb5f800a02f28817c7174979d913))
* **i18n:** rename mm_empty_title → mm_state_empty_title in mindmap.html ([#2683](https://github.com/HankHuang0516/EClaw/issues/2683)) ([c79c109](https://github.com/HankHuang0516/EClaw/commit/c79c109bea23142e8a6d9ace976d105af1280ec9))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **chat:** render mention avatars with companion renderer ([#2633](https://github.com/HankHuang0516/EClaw/issues/2633)) ([03e205f](https://github.com/HankHuang0516/EClaw/commit/03e205f663ecd2c2f443d4009dd5af0093f0bbbb))
* **kanban:** reserve mobile comments panel height ([#2782](https://github.com/HankHuang0516/EClaw/issues/2782)) ([ce8662d](https://github.com/HankHuang0516/EClaw/commit/ce8662d362422fdd25037f1deb61dbed9425e2f9))
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* scheduled audit 2026-05-13 — 6 bugs, XSS, i18n ([#2668](https://github.com/HankHuang0516/EClaw/issues/2668)) ([21dd513](https://github.com/HankHuang0516/EClaw/commit/21dd513b4464738de29164265437435ba6cc4817)), closes [#2605](https://github.com/HankHuang0516/EClaw/issues/2605) [#2608](https://github.com/HankHuang0516/EClaw/issues/2608) [#2600](https://github.com/HankHuang0516/EClaw/issues/2600) [#2599](https://github.com/HankHuang0516/EClaw/issues/2599) [#2598](https://github.com/HankHuang0516/EClaw/issues/2598)
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **chat:** smart-chip preview falls back to inline c.comments when /comments fails (PR [#2677](https://github.com/HankHuang0516/EClaw/issues/2677)) ([7f4dffd](https://github.com/HankHuang0516/EClaw/commit/7f4dffd2c83ea86f296b8fa0610f0e67c9f1af11))
* **wallpaper:** stop Android live wallpaper flashing default lobster on companion change ([#2629](https://github.com/HankHuang0516/EClaw/issues/2629)) ([8b4f66f](https://github.com/HankHuang0516/EClaw/commit/8b4f66fcb335bf43128f924b761b6337c817095b)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **app:** WebView pages honor app-selected locale via ?lang= URL param ([#2672](https://github.com/HankHuang0516/EClaw/issues/2672)) ([8ed8757](https://github.com/HankHuang0516/EClaw/commit/8ed8757aec5bf214e837cc0d81bf2b23f1993a91)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* **community:** 1-click chat button on bot cards + utm tagging ([#2610](https://github.com/HankHuang0516/EClaw/issues/2610)) ([eee97b0](https://github.com/HankHuang0516/EClaw/commit/eee97b0e2e4e74945ec24f218a69a52800b97a66))
* **chat:** add avatar size preference ([#2714](https://github.com/HankHuang0516/EClaw/issues/2714)) ([6fe164a](https://github.com/HankHuang0516/EClaw/commit/6fe164ad8b22fa576d2dd9ad37c0d9fc295b5a83))
* **dashboard:** add Claude and Codex channel guides ([#2640](https://github.com/HankHuang0516/EClaw/issues/2640)) ([c64e4c4](https://github.com/HankHuang0516/EClaw/commit/c64e4c4afc78db58c5cd578f00486dd7b2fd3311))
* **dashboard:** add Claude Code channel guide card ([#2667](https://github.com/HankHuang0516/EClaw/issues/2667)) ([d70d75c](https://github.com/HankHuang0516/EClaw/commit/d70d75c0c8caa8a540358a9aab4556b8c1927a5c))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* **portal:** add entity selector to petdx-browser ([#2602](https://github.com/HankHuang0516/EClaw/issues/2602)) ([3fa067e](https://github.com/HankHuang0516/EClaw/commit/3fa067e00b38829b48a37cecd33ee81a9a1122d9))
* **kanban:** add explicit card links ([#2721](https://github.com/HankHuang0516/EClaw/issues/2721)) ([ef9f812](https://github.com/HankHuang0516/EClaw/commit/ef9f812a3fcf39efd07fd158ce90951bdd045ac7))
* **mindmap:** add GET /api/mindmap/graph force-graph projection ([#2680](https://github.com/HankHuang0516/EClaw/issues/2680)) ([a00b2e7](https://github.com/HankHuang0516/EClaw/commit/a00b2e775af2c4c98cd157f760ad87aeeee469f0)), closes [#2679](https://github.com/HankHuang0516/EClaw/issues/2679) [#2679](https://github.com/HankHuang0516/EClaw/issues/2679)
* **dashboard:** add Hermes channel promo card ([#2708](https://github.com/HankHuang0516/EClaw/issues/2708)) ([337aca1](https://github.com/HankHuang0516/EClaw/commit/337aca153d5a1cd7e888c065f00ae54db7872d91))
* **portal:** add Nagoya 5D4N trip static cross-ref page ([#2689](https://github.com/HankHuang0516/EClaw/issues/2689)) ([2e0efb6](https://github.com/HankHuang0516/EClaw/commit/2e0efb6dcdaff52226cc8854a96747000b12bdff))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **settings:** add rental roster management preview ([#2758](https://github.com/HankHuang0516/EClaw/issues/2758)) ([9706e59](https://github.com/HankHuang0516/EClaw/commit/9706e59ded140a90a6e02348124282bc69d89001))
* **rental:** add renter health chat indicator ([#2690](https://github.com/HankHuang0516/EClaw/issues/2690)) ([36cd2e9](https://github.com/HankHuang0516/EClaw/commit/36cd2e9802be4c7ebb03d3024617fa74aca48ffd))
* **companion:** bridge crafter-station/petdex gallery (1784 pets) ([#2601](https://github.com/HankHuang0516/EClaw/issues/2601)) ([2e245be](https://github.com/HankHuang0516/EClaw/commit/2e245bea6dd47ea7361b927d389188a3c23b6bb3))
* **promo:** chat avatar size feature landing page (self-hosted MP4) ([#2722](https://github.com/HankHuang0516/EClaw/issues/2722)) ([3852210](https://github.com/HankHuang0516/EClaw/commit/3852210d355704d018e3daca6b5f9512a011b210)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **promo:** embed daily eclaw video 2026-05-14 ([#2786](https://github.com/HankHuang0516/EClaw/issues/2786)) ([718a814](https://github.com/HankHuang0516/EClaw/commit/718a814ab16850bc2b33a1b303841e2c4378ecfa)), closes [#2782](https://github.com/HankHuang0516/EClaw/issues/2782) [#2693](https://github.com/HankHuang0516/EClaw/issues/2693)
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **rental:** enforce strict rebind refunds ([#2703](https://github.com/HankHuang0516/EClaw/issues/2703)) ([a1859c5](https://github.com/HankHuang0516/EClaw/commit/a1859c50e6fb3991d7a8051491502d824a14a116))
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **chat:** link card previews to kanban ([#2754](https://github.com/HankHuang0516/EClaw/issues/2754)) ([2261240](https://github.com/HankHuang0516/EClaw/commit/22612402c2e95efb07246629e81a849be41ee9c7))
* **mission:** link notes to kanban cards ([#2723](https://github.com/HankHuang0516/EClaw/issues/2723)) ([b36dc18](https://github.com/HankHuang0516/EClaw/commit/b36dc18f3a8facf12e0b6046351c222f1e99dc55))
* **mindmap:** mission.html link to /portal/mindmap.html + deprecate /api/mission/mindmap ([#2685](https://github.com/HankHuang0516/EClaw/issues/2685)) ([11e297b](https://github.com/HankHuang0516/EClaw/commit/11e297bab1c9b56fcde3027d6500b7c58891bf18)), closes [#2680](https://github.com/HankHuang0516/EClaw/issues/2680) [#2684](https://github.com/HankHuang0516/EClaw/issues/2684)
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **avatar:** petdx render on card-holder my-cards (Phase 1b) ([#2621](https://github.com/HankHuang0516/EClaw/issues/2621)) ([f78ba8b](https://github.com/HankHuang0516/EClaw/commit/f78ba8b18acc426936ab6d8a82ca7541effea00d))
* **avatar:** petdx render on dashboard entity grid / org chart / bindings (Phase 1b) ([#2622](https://github.com/HankHuang0516/EClaw/issues/2622)) ([f417749](https://github.com/HankHuang0516/EClaw/commit/f41774914451048e8cd76e9ae30416a0642e173b)), closes [#2620](https://github.com/HankHuang0516/EClaw/issues/2620) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621)
* **avatar:** petdx render on kanban auto-assign / pulse / comment avatars (Phase 1b) ([#2624](https://github.com/HankHuang0516/EClaw/issues/2624)) ([6bff5f8](https://github.com/HankHuang0516/EClaw/commit/6bff5f80440d0bd91a6b1721cde9478d685c4d46))
* **avatar:** petdx render on mission skill/rule/soul entity dialogs (Phase 1b) ([#2623](https://github.com/HankHuang0516/EClaw/issues/2623)) ([129327b](https://github.com/HankHuang0516/EClaw/commit/129327bc7b91056659f1ab7e8d5e3f5260d951fb))
* **mindmap:** portal/mindmap.html force-graph prototype ([#129](https://github.com/HankHuang0516/EClaw/issues/129)) ([#2681](https://github.com/HankHuang0516/EClaw/issues/2681)) ([0f15e69](https://github.com/HankHuang0516/EClaw/commit/0f15e6930f0697c37fa08f3219edb8f9e499837f)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **portal:** redo nagoya trip page in professional tour-guide style ([#2691](https://github.com/HankHuang0516/EClaw/issues/2691)) ([b2378c0](https://github.com/HankHuang0516/EClaw/commit/b2378c06ee20fa9cccfdceceb1a4c9e0b3072f59))
* **avatar:** render selected petdx companion in chat avatars ([#2620](https://github.com/HankHuang0516/EClaw/issues/2620)) ([0bdd046](https://github.com/HankHuang0516/EClaw/commit/0bdd046fe1b1c428e32edda366ff112c08927f4c))
* **home:** replace native home with WebView hosting dashboard.html ([#2634](https://github.com/HankHuang0516/EClaw/issues/2634)) ([e69ea81](https://github.com/HankHuang0516/EClaw/commit/e69ea8160c239b083a83d6dc83a4f1c3f901c863))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **chat:** support message deep links ([#2719](https://github.com/HankHuang0516/EClaw/issues/2719)) ([2dc0f1e](https://github.com/HankHuang0516/EClaw/commit/2dc0f1eeb259e1a0848db4a03186b989372cd91c))
* **mission:** support note deep links ([#2717](https://github.com/HankHuang0516/EClaw/issues/2717)) ([2efd3a5](https://github.com/HankHuang0516/EClaw/commit/2efd3a5e741217a07c0b0ac54a0ddd010e0ebe23))
* **share-chat:** twitter card + per-bot og:image/twitter:* in SSR ([#2609](https://github.com/HankHuang0516/EClaw/issues/2609)) ([6cdc853](https://github.com/HankHuang0516/EClaw/commit/6cdc853dc884cdb95bd47214942768981f218ae0))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))
* **settings:** wire petdx avatar into channel-account chips ([#2626](https://github.com/HankHuang0516/EClaw/issues/2626)) ([88aec77](https://github.com/HankHuang0516/EClaw/commit/88aec772628c240e97b336bb5820892ad632d1ae))
* **files:** wire petdx avatar into entity filter & per-file badges ([#2627](https://github.com/HankHuang0516/EClaw/issues/2627)) ([5b3e5cc](https://github.com/HankHuang0516/EClaw/commit/5b3e5cc542d9da69bb4e92500fd03a542ea33f00))
* **mindmap:** wrap hardcoded zh-TW UI strings with i18n t() ([#2607](https://github.com/HankHuang0516/EClaw/issues/2607)) ([166af87](https://github.com/HankHuang0516/EClaw/commit/166af8772b2121a24aaf34a83b3de970e9b3b571)), closes [#2606](https://github.com/HankHuang0516/EClaw/issues/2606)


### Performance Improvements

* **mindmap:** force-graph hardening for 1000/2000-node graphs ([#2684](https://github.com/HankHuang0516/EClaw/issues/2684)) ([da8b1c8](https://github.com/HankHuang0516/EClaw/commit/da8b1c8f947ab8bc8fa455c1962a91146623a1fc))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-14)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **notifications:** add kanban_done + kanban_done_auto toggles to Android Settings ([#2636](https://github.com/HankHuang0516/EClaw/issues/2636)) ([a710909](https://github.com/HankHuang0516/EClaw/commit/a7109095e3393b8564e7ef1b23d382a4fbb944b8))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **kanban:** comment input no longer overlaps last comment in card detail (PR [#2678](https://github.com/HankHuang0516/EClaw/issues/2678)) ([fba91fc](https://github.com/HankHuang0516/EClaw/commit/fba91fca15402b453a0db5ee857c0b16e6087055))
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **petdx:** drop dark-grey loading placeholder + preload sprite WEBP ([#2628](https://github.com/HankHuang0516/EClaw/issues/2628)) ([59cef38](https://github.com/HankHuang0516/EClaw/commit/59cef387bd69ca99d7d15c86a1364856d3849ad8)), closes [#1a1a1a](https://github.com/HankHuang0516/EClaw/issues/1a1a1a)
* **entities:** expose botSecret to owner so wallpaper service can poll companions ([#2615](https://github.com/HankHuang0516/EClaw/issues/2615)) ([04470fc](https://github.com/HankHuang0516/EClaw/commit/04470fce8f8c3fce2b1ba8b243e776606f107502))
* **rental:** expose owner_public_code in marketplace so plaza CTA can route ([#2616](https://github.com/HankHuang0516/EClaw/issues/2616)) ([4d1372f](https://github.com/HankHuang0516/EClaw/commit/4d1372f717d93cab65543e87c852e74e9fb67071)), closes [#2610](https://github.com/HankHuang0516/EClaw/issues/2610)
* **mindmap:** fallback to device scope when entityId is null ([#2728](https://github.com/HankHuang0516/EClaw/issues/2728)) ([7572312](https://github.com/HankHuang0516/EClaw/commit/7572312433d3d75fc245eda48a28919ce14bd927))
* **i18n:** fill Spanish drift keys ([#2751](https://github.com/HankHuang0516/EClaw/issues/2751)) ([0ad0ee5](https://github.com/HankHuang0516/EClaw/commit/0ad0ee55f7fac3e6ac46d891539950dab4d553cc))
* **portal:** fit embedded org chart to mobile viewport ([#2674](https://github.com/HankHuang0516/EClaw/issues/2674)) ([1c4e1b4](https://github.com/HankHuang0516/EClaw/commit/1c4e1b413ea7027b4cd4b8ecda981b0d0e12e66b))
* **i18n:** fix 6 trailing-comma syntax errors in 10-locale batch ([#2771](https://github.com/HankHuang0516/EClaw/issues/2771)) ([b27c6ca](https://github.com/HankHuang0516/EClaw/commit/b27c6ca204bf813e406c54ce3a2532a5f1f031b3))
* **uiux:** harden chat previews and roster preview ([#2769](https://github.com/HankHuang0516/EClaw/issues/2769)) ([466d4d3](https://github.com/HankHuang0516/EClaw/commit/466d4d3ef81c628d3f58db64323946053d7bf61c))
* **mention-parser:** ignore @-mentions inside markdown code spans ([#2645](https://github.com/HankHuang0516/EClaw/issues/2645)) ([8da19d4](https://github.com/HankHuang0516/EClaw/commit/8da19d4a79ceb4152bf2144ee0847c61ce3e1def)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **kanban:** lazy-load dependency chips via IntersectionObserver ([#2632](https://github.com/HankHuang0516/EClaw/issues/2632)) ([20586b4](https://github.com/HankHuang0516/EClaw/commit/20586b43357335f9eb6a190c02d58c8e36b58aba)), closes [#2631](https://github.com/HankHuang0516/EClaw/issues/2631)
* **kanban:** make card sorting deterministic ([#2756](https://github.com/HankHuang0516/EClaw/issues/2756)) ([48e2117](https://github.com/HankHuang0516/EClaw/commit/48e2117b64e37f05dc635e0a3b67bfd43cbe48f5))
* **kanban:** notify reviewer on manual /move → review ([#2753](https://github.com/HankHuang0516/EClaw/issues/2753)) ([6cbbb4e](https://github.com/HankHuang0516/EClaw/commit/6cbbb4ee8c0d4d8ad54df2e9b5faaa3699bd530f))
* **wallpaper:** off-load spritesheet fetch to IO so per-petdx sprites actually render ([#2618](https://github.com/HankHuang0516/EClaw/issues/2618)) ([61b832c](https://github.com/HankHuang0516/EClaw/commit/61b832c9fa8a1d0caab810ccc942d85c63349267)), closes [#2615](https://github.com/HankHuang0516/EClaw/issues/2615) [#2577](https://github.com/HankHuang0516/EClaw/issues/2577)
* **portal:** petdx-browser cookie-session fallback for device-login ([#2757](https://github.com/HankHuang0516/EClaw/issues/2757)) ([ca275f4](https://github.com/HankHuang0516/EClaw/commit/ca275f4519835da0c7ad71c588908a18f6f138d8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **i18n:** positional format specifiers for feedback_result_logs (7 locales) ([#2597](https://github.com/HankHuang0516/EClaw/issues/2597)) ([21aedc7](https://github.com/HankHuang0516/EClaw/commit/21aedc7eebc7a2839e340136f38dfdfd4dabb9dc))
* **avatar-petdx:** preserve descriptor across transient API failures (flicker) ([#2625](https://github.com/HankHuang0516/EClaw/issues/2625)) ([7b1c606](https://github.com/HankHuang0516/EClaw/commit/7b1c606514f7698d72ec95cf6c556e4043966186))
* **chat:** preserve scroll anchor while reading history ([#2693](https://github.com/HankHuang0516/EClaw/issues/2693)) ([945fdb7](https://github.com/HankHuang0516/EClaw/commit/945fdb7192b791b31882e1e75568dd8b11e4686f))
* **promo:** pull video embed from /promo-chat-avatar.html ([#2724](https://github.com/HankHuang0516/EClaw/issues/2724)) ([2afabc8](https://github.com/HankHuang0516/EClaw/commit/2afabc8c5ff8b25218a7cb857e8adfa572c8e9d5))
* **kanban:** realign stale recurring schedules ([#2785](https://github.com/HankHuang0516/EClaw/issues/2785)) ([ab8ee25](https://github.com/HankHuang0516/EClaw/commit/ab8ee250a9b37f3d3e838bb01d8866c8d2b78231))
* **portal:** reduce QA-discovered request fanout ([#2656](https://github.com/HankHuang0516/EClaw/issues/2656)) ([1e46d6b](https://github.com/HankHuang0516/EClaw/commit/1e46d6bab61e58c65b452b6503d953f8dddeee75))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **portal:** remove org chart fit scale floor ([#2676](https://github.com/HankHuang0516/EClaw/issues/2676)) ([0f01606](https://github.com/HankHuang0516/EClaw/commit/0f016068b963bb5f800a02f28817c7174979d913))
* **i18n:** rename mm_empty_title → mm_state_empty_title in mindmap.html ([#2683](https://github.com/HankHuang0516/EClaw/issues/2683)) ([c79c109](https://github.com/HankHuang0516/EClaw/commit/c79c109bea23142e8a6d9ace976d105af1280ec9))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **chat:** render mention avatars with companion renderer ([#2633](https://github.com/HankHuang0516/EClaw/issues/2633)) ([03e205f](https://github.com/HankHuang0516/EClaw/commit/03e205f663ecd2c2f443d4009dd5af0093f0bbbb))
* **kanban:** reserve mobile comments panel height ([#2782](https://github.com/HankHuang0516/EClaw/issues/2782)) ([ce8662d](https://github.com/HankHuang0516/EClaw/commit/ce8662d362422fdd25037f1deb61dbed9425e2f9))
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* scheduled audit 2026-05-13 — 6 bugs, XSS, i18n ([#2668](https://github.com/HankHuang0516/EClaw/issues/2668)) ([21dd513](https://github.com/HankHuang0516/EClaw/commit/21dd513b4464738de29164265437435ba6cc4817)), closes [#2605](https://github.com/HankHuang0516/EClaw/issues/2605) [#2608](https://github.com/HankHuang0516/EClaw/issues/2608) [#2600](https://github.com/HankHuang0516/EClaw/issues/2600) [#2599](https://github.com/HankHuang0516/EClaw/issues/2599) [#2598](https://github.com/HankHuang0516/EClaw/issues/2598)
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **chat:** smart-chip preview falls back to inline c.comments when /comments fails (PR [#2677](https://github.com/HankHuang0516/EClaw/issues/2677)) ([7f4dffd](https://github.com/HankHuang0516/EClaw/commit/7f4dffd2c83ea86f296b8fa0610f0e67c9f1af11))
* **wallpaper:** stop Android live wallpaper flashing default lobster on companion change ([#2629](https://github.com/HankHuang0516/EClaw/issues/2629)) ([8b4f66f](https://github.com/HankHuang0516/EClaw/commit/8b4f66fcb335bf43128f924b761b6337c817095b)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **app:** WebView pages honor app-selected locale via ?lang= URL param ([#2672](https://github.com/HankHuang0516/EClaw/issues/2672)) ([8ed8757](https://github.com/HankHuang0516/EClaw/commit/8ed8757aec5bf214e837cc0d81bf2b23f1993a91)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* **community:** 1-click chat button on bot cards + utm tagging ([#2610](https://github.com/HankHuang0516/EClaw/issues/2610)) ([eee97b0](https://github.com/HankHuang0516/EClaw/commit/eee97b0e2e4e74945ec24f218a69a52800b97a66))
* **chat:** add avatar size preference ([#2714](https://github.com/HankHuang0516/EClaw/issues/2714)) ([6fe164a](https://github.com/HankHuang0516/EClaw/commit/6fe164ad8b22fa576d2dd9ad37c0d9fc295b5a83))
* **dashboard:** add Claude and Codex channel guides ([#2640](https://github.com/HankHuang0516/EClaw/issues/2640)) ([c64e4c4](https://github.com/HankHuang0516/EClaw/commit/c64e4c4afc78db58c5cd578f00486dd7b2fd3311))
* **dashboard:** add Claude Code channel guide card ([#2667](https://github.com/HankHuang0516/EClaw/issues/2667)) ([d70d75c](https://github.com/HankHuang0516/EClaw/commit/d70d75c0c8caa8a540358a9aab4556b8c1927a5c))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* **portal:** add entity selector to petdx-browser ([#2602](https://github.com/HankHuang0516/EClaw/issues/2602)) ([3fa067e](https://github.com/HankHuang0516/EClaw/commit/3fa067e00b38829b48a37cecd33ee81a9a1122d9))
* **kanban:** add explicit card links ([#2721](https://github.com/HankHuang0516/EClaw/issues/2721)) ([ef9f812](https://github.com/HankHuang0516/EClaw/commit/ef9f812a3fcf39efd07fd158ce90951bdd045ac7))
* **mindmap:** add GET /api/mindmap/graph force-graph projection ([#2680](https://github.com/HankHuang0516/EClaw/issues/2680)) ([a00b2e7](https://github.com/HankHuang0516/EClaw/commit/a00b2e775af2c4c98cd157f760ad87aeeee469f0)), closes [#2679](https://github.com/HankHuang0516/EClaw/issues/2679) [#2679](https://github.com/HankHuang0516/EClaw/issues/2679)
* **dashboard:** add Hermes channel promo card ([#2708](https://github.com/HankHuang0516/EClaw/issues/2708)) ([337aca1](https://github.com/HankHuang0516/EClaw/commit/337aca153d5a1cd7e888c065f00ae54db7872d91))
* **portal:** add Nagoya 5D4N trip static cross-ref page ([#2689](https://github.com/HankHuang0516/EClaw/issues/2689)) ([2e0efb6](https://github.com/HankHuang0516/EClaw/commit/2e0efb6dcdaff52226cc8854a96747000b12bdff))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **settings:** add rental roster management preview ([#2758](https://github.com/HankHuang0516/EClaw/issues/2758)) ([9706e59](https://github.com/HankHuang0516/EClaw/commit/9706e59ded140a90a6e02348124282bc69d89001))
* **rental:** add renter health chat indicator ([#2690](https://github.com/HankHuang0516/EClaw/issues/2690)) ([36cd2e9](https://github.com/HankHuang0516/EClaw/commit/36cd2e9802be4c7ebb03d3024617fa74aca48ffd))
* **companion:** bridge crafter-station/petdex gallery (1784 pets) ([#2601](https://github.com/HankHuang0516/EClaw/issues/2601)) ([2e245be](https://github.com/HankHuang0516/EClaw/commit/2e245bea6dd47ea7361b927d389188a3c23b6bb3))
* **promo:** chat avatar size feature landing page (self-hosted MP4) ([#2722](https://github.com/HankHuang0516/EClaw/issues/2722)) ([3852210](https://github.com/HankHuang0516/EClaw/commit/3852210d355704d018e3daca6b5f9512a011b210)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **rental:** enforce strict rebind refunds ([#2703](https://github.com/HankHuang0516/EClaw/issues/2703)) ([a1859c5](https://github.com/HankHuang0516/EClaw/commit/a1859c50e6fb3991d7a8051491502d824a14a116))
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **chat:** link card previews to kanban ([#2754](https://github.com/HankHuang0516/EClaw/issues/2754)) ([2261240](https://github.com/HankHuang0516/EClaw/commit/22612402c2e95efb07246629e81a849be41ee9c7))
* **mission:** link notes to kanban cards ([#2723](https://github.com/HankHuang0516/EClaw/issues/2723)) ([b36dc18](https://github.com/HankHuang0516/EClaw/commit/b36dc18f3a8facf12e0b6046351c222f1e99dc55))
* **mindmap:** mission.html link to /portal/mindmap.html + deprecate /api/mission/mindmap ([#2685](https://github.com/HankHuang0516/EClaw/issues/2685)) ([11e297b](https://github.com/HankHuang0516/EClaw/commit/11e297bab1c9b56fcde3027d6500b7c58891bf18)), closes [#2680](https://github.com/HankHuang0516/EClaw/issues/2680) [#2684](https://github.com/HankHuang0516/EClaw/issues/2684)
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **avatar:** petdx render on card-holder my-cards (Phase 1b) ([#2621](https://github.com/HankHuang0516/EClaw/issues/2621)) ([f78ba8b](https://github.com/HankHuang0516/EClaw/commit/f78ba8b18acc426936ab6d8a82ca7541effea00d))
* **avatar:** petdx render on dashboard entity grid / org chart / bindings (Phase 1b) ([#2622](https://github.com/HankHuang0516/EClaw/issues/2622)) ([f417749](https://github.com/HankHuang0516/EClaw/commit/f41774914451048e8cd76e9ae30416a0642e173b)), closes [#2620](https://github.com/HankHuang0516/EClaw/issues/2620) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621)
* **avatar:** petdx render on kanban auto-assign / pulse / comment avatars (Phase 1b) ([#2624](https://github.com/HankHuang0516/EClaw/issues/2624)) ([6bff5f8](https://github.com/HankHuang0516/EClaw/commit/6bff5f80440d0bd91a6b1721cde9478d685c4d46))
* **avatar:** petdx render on mission skill/rule/soul entity dialogs (Phase 1b) ([#2623](https://github.com/HankHuang0516/EClaw/issues/2623)) ([129327b](https://github.com/HankHuang0516/EClaw/commit/129327bc7b91056659f1ab7e8d5e3f5260d951fb))
* **mindmap:** portal/mindmap.html force-graph prototype ([#129](https://github.com/HankHuang0516/EClaw/issues/129)) ([#2681](https://github.com/HankHuang0516/EClaw/issues/2681)) ([0f15e69](https://github.com/HankHuang0516/EClaw/commit/0f15e6930f0697c37fa08f3219edb8f9e499837f)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **portal:** redo nagoya trip page in professional tour-guide style ([#2691](https://github.com/HankHuang0516/EClaw/issues/2691)) ([b2378c0](https://github.com/HankHuang0516/EClaw/commit/b2378c06ee20fa9cccfdceceb1a4c9e0b3072f59))
* **avatar:** render selected petdx companion in chat avatars ([#2620](https://github.com/HankHuang0516/EClaw/issues/2620)) ([0bdd046](https://github.com/HankHuang0516/EClaw/commit/0bdd046fe1b1c428e32edda366ff112c08927f4c))
* **home:** replace native home with WebView hosting dashboard.html ([#2634](https://github.com/HankHuang0516/EClaw/issues/2634)) ([e69ea81](https://github.com/HankHuang0516/EClaw/commit/e69ea8160c239b083a83d6dc83a4f1c3f901c863))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **chat:** support message deep links ([#2719](https://github.com/HankHuang0516/EClaw/issues/2719)) ([2dc0f1e](https://github.com/HankHuang0516/EClaw/commit/2dc0f1eeb259e1a0848db4a03186b989372cd91c))
* **mission:** support note deep links ([#2717](https://github.com/HankHuang0516/EClaw/issues/2717)) ([2efd3a5](https://github.com/HankHuang0516/EClaw/commit/2efd3a5e741217a07c0b0ac54a0ddd010e0ebe23))
* **share-chat:** twitter card + per-bot og:image/twitter:* in SSR ([#2609](https://github.com/HankHuang0516/EClaw/issues/2609)) ([6cdc853](https://github.com/HankHuang0516/EClaw/commit/6cdc853dc884cdb95bd47214942768981f218ae0))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))
* **settings:** wire petdx avatar into channel-account chips ([#2626](https://github.com/HankHuang0516/EClaw/issues/2626)) ([88aec77](https://github.com/HankHuang0516/EClaw/commit/88aec772628c240e97b336bb5820892ad632d1ae))
* **files:** wire petdx avatar into entity filter & per-file badges ([#2627](https://github.com/HankHuang0516/EClaw/issues/2627)) ([5b3e5cc](https://github.com/HankHuang0516/EClaw/commit/5b3e5cc542d9da69bb4e92500fd03a542ea33f00))
* **mindmap:** wrap hardcoded zh-TW UI strings with i18n t() ([#2607](https://github.com/HankHuang0516/EClaw/issues/2607)) ([166af87](https://github.com/HankHuang0516/EClaw/commit/166af8772b2121a24aaf34a83b3de970e9b3b571)), closes [#2606](https://github.com/HankHuang0516/EClaw/issues/2606)


### Performance Improvements

* **mindmap:** force-graph hardening for 1000/2000-node graphs ([#2684](https://github.com/HankHuang0516/EClaw/issues/2684)) ([da8b1c8](https://github.com/HankHuang0516/EClaw/commit/da8b1c8f947ab8bc8fa455c1962a91146623a1fc))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-14)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **notifications:** add kanban_done + kanban_done_auto toggles to Android Settings ([#2636](https://github.com/HankHuang0516/EClaw/issues/2636)) ([a710909](https://github.com/HankHuang0516/EClaw/commit/a7109095e3393b8564e7ef1b23d382a4fbb944b8))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **kanban:** comment input no longer overlaps last comment in card detail (PR [#2678](https://github.com/HankHuang0516/EClaw/issues/2678)) ([fba91fc](https://github.com/HankHuang0516/EClaw/commit/fba91fca15402b453a0db5ee857c0b16e6087055))
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **petdx:** drop dark-grey loading placeholder + preload sprite WEBP ([#2628](https://github.com/HankHuang0516/EClaw/issues/2628)) ([59cef38](https://github.com/HankHuang0516/EClaw/commit/59cef387bd69ca99d7d15c86a1364856d3849ad8)), closes [#1a1a1a](https://github.com/HankHuang0516/EClaw/issues/1a1a1a)
* **entities:** expose botSecret to owner so wallpaper service can poll companions ([#2615](https://github.com/HankHuang0516/EClaw/issues/2615)) ([04470fc](https://github.com/HankHuang0516/EClaw/commit/04470fce8f8c3fce2b1ba8b243e776606f107502))
* **rental:** expose owner_public_code in marketplace so plaza CTA can route ([#2616](https://github.com/HankHuang0516/EClaw/issues/2616)) ([4d1372f](https://github.com/HankHuang0516/EClaw/commit/4d1372f717d93cab65543e87c852e74e9fb67071)), closes [#2610](https://github.com/HankHuang0516/EClaw/issues/2610)
* **mindmap:** fallback to device scope when entityId is null ([#2728](https://github.com/HankHuang0516/EClaw/issues/2728)) ([7572312](https://github.com/HankHuang0516/EClaw/commit/7572312433d3d75fc245eda48a28919ce14bd927))
* **i18n:** fill Spanish drift keys ([#2751](https://github.com/HankHuang0516/EClaw/issues/2751)) ([0ad0ee5](https://github.com/HankHuang0516/EClaw/commit/0ad0ee55f7fac3e6ac46d891539950dab4d553cc))
* **portal:** fit embedded org chart to mobile viewport ([#2674](https://github.com/HankHuang0516/EClaw/issues/2674)) ([1c4e1b4](https://github.com/HankHuang0516/EClaw/commit/1c4e1b413ea7027b4cd4b8ecda981b0d0e12e66b))
* **i18n:** fix 6 trailing-comma syntax errors in 10-locale batch ([#2771](https://github.com/HankHuang0516/EClaw/issues/2771)) ([b27c6ca](https://github.com/HankHuang0516/EClaw/commit/b27c6ca204bf813e406c54ce3a2532a5f1f031b3))
* **uiux:** harden chat previews and roster preview ([#2769](https://github.com/HankHuang0516/EClaw/issues/2769)) ([466d4d3](https://github.com/HankHuang0516/EClaw/commit/466d4d3ef81c628d3f58db64323946053d7bf61c))
* **mention-parser:** ignore @-mentions inside markdown code spans ([#2645](https://github.com/HankHuang0516/EClaw/issues/2645)) ([8da19d4](https://github.com/HankHuang0516/EClaw/commit/8da19d4a79ceb4152bf2144ee0847c61ce3e1def)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **kanban:** lazy-load dependency chips via IntersectionObserver ([#2632](https://github.com/HankHuang0516/EClaw/issues/2632)) ([20586b4](https://github.com/HankHuang0516/EClaw/commit/20586b43357335f9eb6a190c02d58c8e36b58aba)), closes [#2631](https://github.com/HankHuang0516/EClaw/issues/2631)
* **kanban:** make card sorting deterministic ([#2756](https://github.com/HankHuang0516/EClaw/issues/2756)) ([48e2117](https://github.com/HankHuang0516/EClaw/commit/48e2117b64e37f05dc635e0a3b67bfd43cbe48f5))
* **kanban:** notify reviewer on manual /move → review ([#2753](https://github.com/HankHuang0516/EClaw/issues/2753)) ([6cbbb4e](https://github.com/HankHuang0516/EClaw/commit/6cbbb4ee8c0d4d8ad54df2e9b5faaa3699bd530f))
* **wallpaper:** off-load spritesheet fetch to IO so per-petdx sprites actually render ([#2618](https://github.com/HankHuang0516/EClaw/issues/2618)) ([61b832c](https://github.com/HankHuang0516/EClaw/commit/61b832c9fa8a1d0caab810ccc942d85c63349267)), closes [#2615](https://github.com/HankHuang0516/EClaw/issues/2615) [#2577](https://github.com/HankHuang0516/EClaw/issues/2577)
* **portal:** petdx-browser cookie-session fallback for device-login ([#2757](https://github.com/HankHuang0516/EClaw/issues/2757)) ([ca275f4](https://github.com/HankHuang0516/EClaw/commit/ca275f4519835da0c7ad71c588908a18f6f138d8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **i18n:** positional format specifiers for feedback_result_logs (7 locales) ([#2597](https://github.com/HankHuang0516/EClaw/issues/2597)) ([21aedc7](https://github.com/HankHuang0516/EClaw/commit/21aedc7eebc7a2839e340136f38dfdfd4dabb9dc))
* **avatar-petdx:** preserve descriptor across transient API failures (flicker) ([#2625](https://github.com/HankHuang0516/EClaw/issues/2625)) ([7b1c606](https://github.com/HankHuang0516/EClaw/commit/7b1c606514f7698d72ec95cf6c556e4043966186))
* **chat:** preserve scroll anchor while reading history ([#2693](https://github.com/HankHuang0516/EClaw/issues/2693)) ([945fdb7](https://github.com/HankHuang0516/EClaw/commit/945fdb7192b791b31882e1e75568dd8b11e4686f))
* **promo:** pull video embed from /promo-chat-avatar.html ([#2724](https://github.com/HankHuang0516/EClaw/issues/2724)) ([2afabc8](https://github.com/HankHuang0516/EClaw/commit/2afabc8c5ff8b25218a7cb857e8adfa572c8e9d5))
* **portal:** reduce QA-discovered request fanout ([#2656](https://github.com/HankHuang0516/EClaw/issues/2656)) ([1e46d6b](https://github.com/HankHuang0516/EClaw/commit/1e46d6bab61e58c65b452b6503d953f8dddeee75))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **portal:** remove org chart fit scale floor ([#2676](https://github.com/HankHuang0516/EClaw/issues/2676)) ([0f01606](https://github.com/HankHuang0516/EClaw/commit/0f016068b963bb5f800a02f28817c7174979d913))
* **i18n:** rename mm_empty_title → mm_state_empty_title in mindmap.html ([#2683](https://github.com/HankHuang0516/EClaw/issues/2683)) ([c79c109](https://github.com/HankHuang0516/EClaw/commit/c79c109bea23142e8a6d9ace976d105af1280ec9))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **chat:** render mention avatars with companion renderer ([#2633](https://github.com/HankHuang0516/EClaw/issues/2633)) ([03e205f](https://github.com/HankHuang0516/EClaw/commit/03e205f663ecd2c2f443d4009dd5af0093f0bbbb))
* **kanban:** reserve mobile comments panel height ([#2782](https://github.com/HankHuang0516/EClaw/issues/2782)) ([ce8662d](https://github.com/HankHuang0516/EClaw/commit/ce8662d362422fdd25037f1deb61dbed9425e2f9))
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* scheduled audit 2026-05-13 — 6 bugs, XSS, i18n ([#2668](https://github.com/HankHuang0516/EClaw/issues/2668)) ([21dd513](https://github.com/HankHuang0516/EClaw/commit/21dd513b4464738de29164265437435ba6cc4817)), closes [#2605](https://github.com/HankHuang0516/EClaw/issues/2605) [#2608](https://github.com/HankHuang0516/EClaw/issues/2608) [#2600](https://github.com/HankHuang0516/EClaw/issues/2600) [#2599](https://github.com/HankHuang0516/EClaw/issues/2599) [#2598](https://github.com/HankHuang0516/EClaw/issues/2598)
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **chat:** smart-chip preview falls back to inline c.comments when /comments fails (PR [#2677](https://github.com/HankHuang0516/EClaw/issues/2677)) ([7f4dffd](https://github.com/HankHuang0516/EClaw/commit/7f4dffd2c83ea86f296b8fa0610f0e67c9f1af11))
* **wallpaper:** stop Android live wallpaper flashing default lobster on companion change ([#2629](https://github.com/HankHuang0516/EClaw/issues/2629)) ([8b4f66f](https://github.com/HankHuang0516/EClaw/commit/8b4f66fcb335bf43128f924b761b6337c817095b)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **app:** WebView pages honor app-selected locale via ?lang= URL param ([#2672](https://github.com/HankHuang0516/EClaw/issues/2672)) ([8ed8757](https://github.com/HankHuang0516/EClaw/commit/8ed8757aec5bf214e837cc0d81bf2b23f1993a91)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* **community:** 1-click chat button on bot cards + utm tagging ([#2610](https://github.com/HankHuang0516/EClaw/issues/2610)) ([eee97b0](https://github.com/HankHuang0516/EClaw/commit/eee97b0e2e4e74945ec24f218a69a52800b97a66))
* **chat:** add avatar size preference ([#2714](https://github.com/HankHuang0516/EClaw/issues/2714)) ([6fe164a](https://github.com/HankHuang0516/EClaw/commit/6fe164ad8b22fa576d2dd9ad37c0d9fc295b5a83))
* **dashboard:** add Claude and Codex channel guides ([#2640](https://github.com/HankHuang0516/EClaw/issues/2640)) ([c64e4c4](https://github.com/HankHuang0516/EClaw/commit/c64e4c4afc78db58c5cd578f00486dd7b2fd3311))
* **dashboard:** add Claude Code channel guide card ([#2667](https://github.com/HankHuang0516/EClaw/issues/2667)) ([d70d75c](https://github.com/HankHuang0516/EClaw/commit/d70d75c0c8caa8a540358a9aab4556b8c1927a5c))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* **portal:** add entity selector to petdx-browser ([#2602](https://github.com/HankHuang0516/EClaw/issues/2602)) ([3fa067e](https://github.com/HankHuang0516/EClaw/commit/3fa067e00b38829b48a37cecd33ee81a9a1122d9))
* **kanban:** add explicit card links ([#2721](https://github.com/HankHuang0516/EClaw/issues/2721)) ([ef9f812](https://github.com/HankHuang0516/EClaw/commit/ef9f812a3fcf39efd07fd158ce90951bdd045ac7))
* **mindmap:** add GET /api/mindmap/graph force-graph projection ([#2680](https://github.com/HankHuang0516/EClaw/issues/2680)) ([a00b2e7](https://github.com/HankHuang0516/EClaw/commit/a00b2e775af2c4c98cd157f760ad87aeeee469f0)), closes [#2679](https://github.com/HankHuang0516/EClaw/issues/2679) [#2679](https://github.com/HankHuang0516/EClaw/issues/2679)
* **dashboard:** add Hermes channel promo card ([#2708](https://github.com/HankHuang0516/EClaw/issues/2708)) ([337aca1](https://github.com/HankHuang0516/EClaw/commit/337aca153d5a1cd7e888c065f00ae54db7872d91))
* **portal:** add Nagoya 5D4N trip static cross-ref page ([#2689](https://github.com/HankHuang0516/EClaw/issues/2689)) ([2e0efb6](https://github.com/HankHuang0516/EClaw/commit/2e0efb6dcdaff52226cc8854a96747000b12bdff))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **settings:** add rental roster management preview ([#2758](https://github.com/HankHuang0516/EClaw/issues/2758)) ([9706e59](https://github.com/HankHuang0516/EClaw/commit/9706e59ded140a90a6e02348124282bc69d89001))
* **rental:** add renter health chat indicator ([#2690](https://github.com/HankHuang0516/EClaw/issues/2690)) ([36cd2e9](https://github.com/HankHuang0516/EClaw/commit/36cd2e9802be4c7ebb03d3024617fa74aca48ffd))
* **companion:** bridge crafter-station/petdex gallery (1784 pets) ([#2601](https://github.com/HankHuang0516/EClaw/issues/2601)) ([2e245be](https://github.com/HankHuang0516/EClaw/commit/2e245bea6dd47ea7361b927d389188a3c23b6bb3))
* **promo:** chat avatar size feature landing page (self-hosted MP4) ([#2722](https://github.com/HankHuang0516/EClaw/issues/2722)) ([3852210](https://github.com/HankHuang0516/EClaw/commit/3852210d355704d018e3daca6b5f9512a011b210)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **rental:** enforce strict rebind refunds ([#2703](https://github.com/HankHuang0516/EClaw/issues/2703)) ([a1859c5](https://github.com/HankHuang0516/EClaw/commit/a1859c50e6fb3991d7a8051491502d824a14a116))
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **chat:** link card previews to kanban ([#2754](https://github.com/HankHuang0516/EClaw/issues/2754)) ([2261240](https://github.com/HankHuang0516/EClaw/commit/22612402c2e95efb07246629e81a849be41ee9c7))
* **mission:** link notes to kanban cards ([#2723](https://github.com/HankHuang0516/EClaw/issues/2723)) ([b36dc18](https://github.com/HankHuang0516/EClaw/commit/b36dc18f3a8facf12e0b6046351c222f1e99dc55))
* **mindmap:** mission.html link to /portal/mindmap.html + deprecate /api/mission/mindmap ([#2685](https://github.com/HankHuang0516/EClaw/issues/2685)) ([11e297b](https://github.com/HankHuang0516/EClaw/commit/11e297bab1c9b56fcde3027d6500b7c58891bf18)), closes [#2680](https://github.com/HankHuang0516/EClaw/issues/2680) [#2684](https://github.com/HankHuang0516/EClaw/issues/2684)
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **avatar:** petdx render on card-holder my-cards (Phase 1b) ([#2621](https://github.com/HankHuang0516/EClaw/issues/2621)) ([f78ba8b](https://github.com/HankHuang0516/EClaw/commit/f78ba8b18acc426936ab6d8a82ca7541effea00d))
* **avatar:** petdx render on dashboard entity grid / org chart / bindings (Phase 1b) ([#2622](https://github.com/HankHuang0516/EClaw/issues/2622)) ([f417749](https://github.com/HankHuang0516/EClaw/commit/f41774914451048e8cd76e9ae30416a0642e173b)), closes [#2620](https://github.com/HankHuang0516/EClaw/issues/2620) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621)
* **avatar:** petdx render on kanban auto-assign / pulse / comment avatars (Phase 1b) ([#2624](https://github.com/HankHuang0516/EClaw/issues/2624)) ([6bff5f8](https://github.com/HankHuang0516/EClaw/commit/6bff5f80440d0bd91a6b1721cde9478d685c4d46))
* **avatar:** petdx render on mission skill/rule/soul entity dialogs (Phase 1b) ([#2623](https://github.com/HankHuang0516/EClaw/issues/2623)) ([129327b](https://github.com/HankHuang0516/EClaw/commit/129327bc7b91056659f1ab7e8d5e3f5260d951fb))
* **mindmap:** portal/mindmap.html force-graph prototype ([#129](https://github.com/HankHuang0516/EClaw/issues/129)) ([#2681](https://github.com/HankHuang0516/EClaw/issues/2681)) ([0f15e69](https://github.com/HankHuang0516/EClaw/commit/0f15e6930f0697c37fa08f3219edb8f9e499837f)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **portal:** redo nagoya trip page in professional tour-guide style ([#2691](https://github.com/HankHuang0516/EClaw/issues/2691)) ([b2378c0](https://github.com/HankHuang0516/EClaw/commit/b2378c06ee20fa9cccfdceceb1a4c9e0b3072f59))
* **avatar:** render selected petdx companion in chat avatars ([#2620](https://github.com/HankHuang0516/EClaw/issues/2620)) ([0bdd046](https://github.com/HankHuang0516/EClaw/commit/0bdd046fe1b1c428e32edda366ff112c08927f4c))
* **home:** replace native home with WebView hosting dashboard.html ([#2634](https://github.com/HankHuang0516/EClaw/issues/2634)) ([e69ea81](https://github.com/HankHuang0516/EClaw/commit/e69ea8160c239b083a83d6dc83a4f1c3f901c863))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **chat:** support message deep links ([#2719](https://github.com/HankHuang0516/EClaw/issues/2719)) ([2dc0f1e](https://github.com/HankHuang0516/EClaw/commit/2dc0f1eeb259e1a0848db4a03186b989372cd91c))
* **mission:** support note deep links ([#2717](https://github.com/HankHuang0516/EClaw/issues/2717)) ([2efd3a5](https://github.com/HankHuang0516/EClaw/commit/2efd3a5e741217a07c0b0ac54a0ddd010e0ebe23))
* **share-chat:** twitter card + per-bot og:image/twitter:* in SSR ([#2609](https://github.com/HankHuang0516/EClaw/issues/2609)) ([6cdc853](https://github.com/HankHuang0516/EClaw/commit/6cdc853dc884cdb95bd47214942768981f218ae0))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))
* **settings:** wire petdx avatar into channel-account chips ([#2626](https://github.com/HankHuang0516/EClaw/issues/2626)) ([88aec77](https://github.com/HankHuang0516/EClaw/commit/88aec772628c240e97b336bb5820892ad632d1ae))
* **files:** wire petdx avatar into entity filter & per-file badges ([#2627](https://github.com/HankHuang0516/EClaw/issues/2627)) ([5b3e5cc](https://github.com/HankHuang0516/EClaw/commit/5b3e5cc542d9da69bb4e92500fd03a542ea33f00))
* **mindmap:** wrap hardcoded zh-TW UI strings with i18n t() ([#2607](https://github.com/HankHuang0516/EClaw/issues/2607)) ([166af87](https://github.com/HankHuang0516/EClaw/commit/166af8772b2121a24aaf34a83b3de970e9b3b571)), closes [#2606](https://github.com/HankHuang0516/EClaw/issues/2606)


### Performance Improvements

* **mindmap:** force-graph hardening for 1000/2000-node graphs ([#2684](https://github.com/HankHuang0516/EClaw/issues/2684)) ([da8b1c8](https://github.com/HankHuang0516/EClaw/commit/da8b1c8f947ab8bc8fa455c1962a91146623a1fc))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-14)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **notifications:** add kanban_done + kanban_done_auto toggles to Android Settings ([#2636](https://github.com/HankHuang0516/EClaw/issues/2636)) ([a710909](https://github.com/HankHuang0516/EClaw/commit/a7109095e3393b8564e7ef1b23d382a4fbb944b8))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **kanban:** comment input no longer overlaps last comment in card detail (PR [#2678](https://github.com/HankHuang0516/EClaw/issues/2678)) ([fba91fc](https://github.com/HankHuang0516/EClaw/commit/fba91fca15402b453a0db5ee857c0b16e6087055))
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **petdx:** drop dark-grey loading placeholder + preload sprite WEBP ([#2628](https://github.com/HankHuang0516/EClaw/issues/2628)) ([59cef38](https://github.com/HankHuang0516/EClaw/commit/59cef387bd69ca99d7d15c86a1364856d3849ad8)), closes [#1a1a1a](https://github.com/HankHuang0516/EClaw/issues/1a1a1a)
* **entities:** expose botSecret to owner so wallpaper service can poll companions ([#2615](https://github.com/HankHuang0516/EClaw/issues/2615)) ([04470fc](https://github.com/HankHuang0516/EClaw/commit/04470fce8f8c3fce2b1ba8b243e776606f107502))
* **rental:** expose owner_public_code in marketplace so plaza CTA can route ([#2616](https://github.com/HankHuang0516/EClaw/issues/2616)) ([4d1372f](https://github.com/HankHuang0516/EClaw/commit/4d1372f717d93cab65543e87c852e74e9fb67071)), closes [#2610](https://github.com/HankHuang0516/EClaw/issues/2610)
* **mindmap:** fallback to device scope when entityId is null ([#2728](https://github.com/HankHuang0516/EClaw/issues/2728)) ([7572312](https://github.com/HankHuang0516/EClaw/commit/7572312433d3d75fc245eda48a28919ce14bd927))
* **i18n:** fill Spanish drift keys ([#2751](https://github.com/HankHuang0516/EClaw/issues/2751)) ([0ad0ee5](https://github.com/HankHuang0516/EClaw/commit/0ad0ee55f7fac3e6ac46d891539950dab4d553cc))
* **portal:** fit embedded org chart to mobile viewport ([#2674](https://github.com/HankHuang0516/EClaw/issues/2674)) ([1c4e1b4](https://github.com/HankHuang0516/EClaw/commit/1c4e1b413ea7027b4cd4b8ecda981b0d0e12e66b))
* **i18n:** fix 6 trailing-comma syntax errors in 10-locale batch ([#2771](https://github.com/HankHuang0516/EClaw/issues/2771)) ([b27c6ca](https://github.com/HankHuang0516/EClaw/commit/b27c6ca204bf813e406c54ce3a2532a5f1f031b3))
* **uiux:** harden chat previews and roster preview ([#2769](https://github.com/HankHuang0516/EClaw/issues/2769)) ([466d4d3](https://github.com/HankHuang0516/EClaw/commit/466d4d3ef81c628d3f58db64323946053d7bf61c))
* **mention-parser:** ignore @-mentions inside markdown code spans ([#2645](https://github.com/HankHuang0516/EClaw/issues/2645)) ([8da19d4](https://github.com/HankHuang0516/EClaw/commit/8da19d4a79ceb4152bf2144ee0847c61ce3e1def)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **kanban:** lazy-load dependency chips via IntersectionObserver ([#2632](https://github.com/HankHuang0516/EClaw/issues/2632)) ([20586b4](https://github.com/HankHuang0516/EClaw/commit/20586b43357335f9eb6a190c02d58c8e36b58aba)), closes [#2631](https://github.com/HankHuang0516/EClaw/issues/2631)
* **kanban:** make card sorting deterministic ([#2756](https://github.com/HankHuang0516/EClaw/issues/2756)) ([48e2117](https://github.com/HankHuang0516/EClaw/commit/48e2117b64e37f05dc635e0a3b67bfd43cbe48f5))
* **kanban:** notify reviewer on manual /move → review ([#2753](https://github.com/HankHuang0516/EClaw/issues/2753)) ([6cbbb4e](https://github.com/HankHuang0516/EClaw/commit/6cbbb4ee8c0d4d8ad54df2e9b5faaa3699bd530f))
* **wallpaper:** off-load spritesheet fetch to IO so per-petdx sprites actually render ([#2618](https://github.com/HankHuang0516/EClaw/issues/2618)) ([61b832c](https://github.com/HankHuang0516/EClaw/commit/61b832c9fa8a1d0caab810ccc942d85c63349267)), closes [#2615](https://github.com/HankHuang0516/EClaw/issues/2615) [#2577](https://github.com/HankHuang0516/EClaw/issues/2577)
* **portal:** petdx-browser cookie-session fallback for device-login ([#2757](https://github.com/HankHuang0516/EClaw/issues/2757)) ([ca275f4](https://github.com/HankHuang0516/EClaw/commit/ca275f4519835da0c7ad71c588908a18f6f138d8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **i18n:** positional format specifiers for feedback_result_logs (7 locales) ([#2597](https://github.com/HankHuang0516/EClaw/issues/2597)) ([21aedc7](https://github.com/HankHuang0516/EClaw/commit/21aedc7eebc7a2839e340136f38dfdfd4dabb9dc))
* **avatar-petdx:** preserve descriptor across transient API failures (flicker) ([#2625](https://github.com/HankHuang0516/EClaw/issues/2625)) ([7b1c606](https://github.com/HankHuang0516/EClaw/commit/7b1c606514f7698d72ec95cf6c556e4043966186))
* **chat:** preserve scroll anchor while reading history ([#2693](https://github.com/HankHuang0516/EClaw/issues/2693)) ([945fdb7](https://github.com/HankHuang0516/EClaw/commit/945fdb7192b791b31882e1e75568dd8b11e4686f))
* **promo:** pull video embed from /promo-chat-avatar.html ([#2724](https://github.com/HankHuang0516/EClaw/issues/2724)) ([2afabc8](https://github.com/HankHuang0516/EClaw/commit/2afabc8c5ff8b25218a7cb857e8adfa572c8e9d5))
* **portal:** reduce QA-discovered request fanout ([#2656](https://github.com/HankHuang0516/EClaw/issues/2656)) ([1e46d6b](https://github.com/HankHuang0516/EClaw/commit/1e46d6bab61e58c65b452b6503d953f8dddeee75))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **portal:** remove org chart fit scale floor ([#2676](https://github.com/HankHuang0516/EClaw/issues/2676)) ([0f01606](https://github.com/HankHuang0516/EClaw/commit/0f016068b963bb5f800a02f28817c7174979d913))
* **i18n:** rename mm_empty_title → mm_state_empty_title in mindmap.html ([#2683](https://github.com/HankHuang0516/EClaw/issues/2683)) ([c79c109](https://github.com/HankHuang0516/EClaw/commit/c79c109bea23142e8a6d9ace976d105af1280ec9))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **chat:** render mention avatars with companion renderer ([#2633](https://github.com/HankHuang0516/EClaw/issues/2633)) ([03e205f](https://github.com/HankHuang0516/EClaw/commit/03e205f663ecd2c2f443d4009dd5af0093f0bbbb))
* **kanban:** reserve mobile comments panel height ([#2782](https://github.com/HankHuang0516/EClaw/issues/2782)) ([ce8662d](https://github.com/HankHuang0516/EClaw/commit/ce8662d362422fdd25037f1deb61dbed9425e2f9))
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* scheduled audit 2026-05-13 — 6 bugs, XSS, i18n ([#2668](https://github.com/HankHuang0516/EClaw/issues/2668)) ([21dd513](https://github.com/HankHuang0516/EClaw/commit/21dd513b4464738de29164265437435ba6cc4817)), closes [#2605](https://github.com/HankHuang0516/EClaw/issues/2605) [#2608](https://github.com/HankHuang0516/EClaw/issues/2608) [#2600](https://github.com/HankHuang0516/EClaw/issues/2600) [#2599](https://github.com/HankHuang0516/EClaw/issues/2599) [#2598](https://github.com/HankHuang0516/EClaw/issues/2598)
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **chat:** smart-chip preview falls back to inline c.comments when /comments fails (PR [#2677](https://github.com/HankHuang0516/EClaw/issues/2677)) ([7f4dffd](https://github.com/HankHuang0516/EClaw/commit/7f4dffd2c83ea86f296b8fa0610f0e67c9f1af11))
* **wallpaper:** stop Android live wallpaper flashing default lobster on companion change ([#2629](https://github.com/HankHuang0516/EClaw/issues/2629)) ([8b4f66f](https://github.com/HankHuang0516/EClaw/commit/8b4f66fcb335bf43128f924b761b6337c817095b)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **app:** WebView pages honor app-selected locale via ?lang= URL param ([#2672](https://github.com/HankHuang0516/EClaw/issues/2672)) ([8ed8757](https://github.com/HankHuang0516/EClaw/commit/8ed8757aec5bf214e837cc0d81bf2b23f1993a91)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* **community:** 1-click chat button on bot cards + utm tagging ([#2610](https://github.com/HankHuang0516/EClaw/issues/2610)) ([eee97b0](https://github.com/HankHuang0516/EClaw/commit/eee97b0e2e4e74945ec24f218a69a52800b97a66))
* **chat:** add avatar size preference ([#2714](https://github.com/HankHuang0516/EClaw/issues/2714)) ([6fe164a](https://github.com/HankHuang0516/EClaw/commit/6fe164ad8b22fa576d2dd9ad37c0d9fc295b5a83))
* **dashboard:** add Claude and Codex channel guides ([#2640](https://github.com/HankHuang0516/EClaw/issues/2640)) ([c64e4c4](https://github.com/HankHuang0516/EClaw/commit/c64e4c4afc78db58c5cd578f00486dd7b2fd3311))
* **dashboard:** add Claude Code channel guide card ([#2667](https://github.com/HankHuang0516/EClaw/issues/2667)) ([d70d75c](https://github.com/HankHuang0516/EClaw/commit/d70d75c0c8caa8a540358a9aab4556b8c1927a5c))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* **portal:** add entity selector to petdx-browser ([#2602](https://github.com/HankHuang0516/EClaw/issues/2602)) ([3fa067e](https://github.com/HankHuang0516/EClaw/commit/3fa067e00b38829b48a37cecd33ee81a9a1122d9))
* **kanban:** add explicit card links ([#2721](https://github.com/HankHuang0516/EClaw/issues/2721)) ([ef9f812](https://github.com/HankHuang0516/EClaw/commit/ef9f812a3fcf39efd07fd158ce90951bdd045ac7))
* **mindmap:** add GET /api/mindmap/graph force-graph projection ([#2680](https://github.com/HankHuang0516/EClaw/issues/2680)) ([a00b2e7](https://github.com/HankHuang0516/EClaw/commit/a00b2e775af2c4c98cd157f760ad87aeeee469f0)), closes [#2679](https://github.com/HankHuang0516/EClaw/issues/2679) [#2679](https://github.com/HankHuang0516/EClaw/issues/2679)
* **dashboard:** add Hermes channel promo card ([#2708](https://github.com/HankHuang0516/EClaw/issues/2708)) ([337aca1](https://github.com/HankHuang0516/EClaw/commit/337aca153d5a1cd7e888c065f00ae54db7872d91))
* **portal:** add Nagoya 5D4N trip static cross-ref page ([#2689](https://github.com/HankHuang0516/EClaw/issues/2689)) ([2e0efb6](https://github.com/HankHuang0516/EClaw/commit/2e0efb6dcdaff52226cc8854a96747000b12bdff))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **settings:** add rental roster management preview ([#2758](https://github.com/HankHuang0516/EClaw/issues/2758)) ([9706e59](https://github.com/HankHuang0516/EClaw/commit/9706e59ded140a90a6e02348124282bc69d89001))
* **rental:** add renter health chat indicator ([#2690](https://github.com/HankHuang0516/EClaw/issues/2690)) ([36cd2e9](https://github.com/HankHuang0516/EClaw/commit/36cd2e9802be4c7ebb03d3024617fa74aca48ffd))
* **companion:** bridge crafter-station/petdex gallery (1784 pets) ([#2601](https://github.com/HankHuang0516/EClaw/issues/2601)) ([2e245be](https://github.com/HankHuang0516/EClaw/commit/2e245bea6dd47ea7361b927d389188a3c23b6bb3))
* **promo:** chat avatar size feature landing page (self-hosted MP4) ([#2722](https://github.com/HankHuang0516/EClaw/issues/2722)) ([3852210](https://github.com/HankHuang0516/EClaw/commit/3852210d355704d018e3daca6b5f9512a011b210)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **rental:** enforce strict rebind refunds ([#2703](https://github.com/HankHuang0516/EClaw/issues/2703)) ([a1859c5](https://github.com/HankHuang0516/EClaw/commit/a1859c50e6fb3991d7a8051491502d824a14a116))
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **chat:** link card previews to kanban ([#2754](https://github.com/HankHuang0516/EClaw/issues/2754)) ([2261240](https://github.com/HankHuang0516/EClaw/commit/22612402c2e95efb07246629e81a849be41ee9c7))
* **mission:** link notes to kanban cards ([#2723](https://github.com/HankHuang0516/EClaw/issues/2723)) ([b36dc18](https://github.com/HankHuang0516/EClaw/commit/b36dc18f3a8facf12e0b6046351c222f1e99dc55))
* **mindmap:** mission.html link to /portal/mindmap.html + deprecate /api/mission/mindmap ([#2685](https://github.com/HankHuang0516/EClaw/issues/2685)) ([11e297b](https://github.com/HankHuang0516/EClaw/commit/11e297bab1c9b56fcde3027d6500b7c58891bf18)), closes [#2680](https://github.com/HankHuang0516/EClaw/issues/2680) [#2684](https://github.com/HankHuang0516/EClaw/issues/2684)
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **avatar:** petdx render on card-holder my-cards (Phase 1b) ([#2621](https://github.com/HankHuang0516/EClaw/issues/2621)) ([f78ba8b](https://github.com/HankHuang0516/EClaw/commit/f78ba8b18acc426936ab6d8a82ca7541effea00d))
* **avatar:** petdx render on dashboard entity grid / org chart / bindings (Phase 1b) ([#2622](https://github.com/HankHuang0516/EClaw/issues/2622)) ([f417749](https://github.com/HankHuang0516/EClaw/commit/f41774914451048e8cd76e9ae30416a0642e173b)), closes [#2620](https://github.com/HankHuang0516/EClaw/issues/2620) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621)
* **avatar:** petdx render on kanban auto-assign / pulse / comment avatars (Phase 1b) ([#2624](https://github.com/HankHuang0516/EClaw/issues/2624)) ([6bff5f8](https://github.com/HankHuang0516/EClaw/commit/6bff5f80440d0bd91a6b1721cde9478d685c4d46))
* **avatar:** petdx render on mission skill/rule/soul entity dialogs (Phase 1b) ([#2623](https://github.com/HankHuang0516/EClaw/issues/2623)) ([129327b](https://github.com/HankHuang0516/EClaw/commit/129327bc7b91056659f1ab7e8d5e3f5260d951fb))
* **mindmap:** portal/mindmap.html force-graph prototype ([#129](https://github.com/HankHuang0516/EClaw/issues/129)) ([#2681](https://github.com/HankHuang0516/EClaw/issues/2681)) ([0f15e69](https://github.com/HankHuang0516/EClaw/commit/0f15e6930f0697c37fa08f3219edb8f9e499837f)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **portal:** redo nagoya trip page in professional tour-guide style ([#2691](https://github.com/HankHuang0516/EClaw/issues/2691)) ([b2378c0](https://github.com/HankHuang0516/EClaw/commit/b2378c06ee20fa9cccfdceceb1a4c9e0b3072f59))
* **avatar:** render selected petdx companion in chat avatars ([#2620](https://github.com/HankHuang0516/EClaw/issues/2620)) ([0bdd046](https://github.com/HankHuang0516/EClaw/commit/0bdd046fe1b1c428e32edda366ff112c08927f4c))
* **home:** replace native home with WebView hosting dashboard.html ([#2634](https://github.com/HankHuang0516/EClaw/issues/2634)) ([e69ea81](https://github.com/HankHuang0516/EClaw/commit/e69ea8160c239b083a83d6dc83a4f1c3f901c863))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **chat:** support message deep links ([#2719](https://github.com/HankHuang0516/EClaw/issues/2719)) ([2dc0f1e](https://github.com/HankHuang0516/EClaw/commit/2dc0f1eeb259e1a0848db4a03186b989372cd91c))
* **mission:** support note deep links ([#2717](https://github.com/HankHuang0516/EClaw/issues/2717)) ([2efd3a5](https://github.com/HankHuang0516/EClaw/commit/2efd3a5e741217a07c0b0ac54a0ddd010e0ebe23))
* **share-chat:** twitter card + per-bot og:image/twitter:* in SSR ([#2609](https://github.com/HankHuang0516/EClaw/issues/2609)) ([6cdc853](https://github.com/HankHuang0516/EClaw/commit/6cdc853dc884cdb95bd47214942768981f218ae0))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))
* **settings:** wire petdx avatar into channel-account chips ([#2626](https://github.com/HankHuang0516/EClaw/issues/2626)) ([88aec77](https://github.com/HankHuang0516/EClaw/commit/88aec772628c240e97b336bb5820892ad632d1ae))
* **files:** wire petdx avatar into entity filter & per-file badges ([#2627](https://github.com/HankHuang0516/EClaw/issues/2627)) ([5b3e5cc](https://github.com/HankHuang0516/EClaw/commit/5b3e5cc542d9da69bb4e92500fd03a542ea33f00))
* **mindmap:** wrap hardcoded zh-TW UI strings with i18n t() ([#2607](https://github.com/HankHuang0516/EClaw/issues/2607)) ([166af87](https://github.com/HankHuang0516/EClaw/commit/166af8772b2121a24aaf34a83b3de970e9b3b571)), closes [#2606](https://github.com/HankHuang0516/EClaw/issues/2606)


### Performance Improvements

* **mindmap:** force-graph hardening for 1000/2000-node graphs ([#2684](https://github.com/HankHuang0516/EClaw/issues/2684)) ([da8b1c8](https://github.com/HankHuang0516/EClaw/commit/da8b1c8f947ab8bc8fa455c1962a91146623a1fc))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-14)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **notifications:** add kanban_done + kanban_done_auto toggles to Android Settings ([#2636](https://github.com/HankHuang0516/EClaw/issues/2636)) ([a710909](https://github.com/HankHuang0516/EClaw/commit/a7109095e3393b8564e7ef1b23d382a4fbb944b8))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **kanban:** comment input no longer overlaps last comment in card detail (PR [#2678](https://github.com/HankHuang0516/EClaw/issues/2678)) ([fba91fc](https://github.com/HankHuang0516/EClaw/commit/fba91fca15402b453a0db5ee857c0b16e6087055))
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **petdx:** drop dark-grey loading placeholder + preload sprite WEBP ([#2628](https://github.com/HankHuang0516/EClaw/issues/2628)) ([59cef38](https://github.com/HankHuang0516/EClaw/commit/59cef387bd69ca99d7d15c86a1364856d3849ad8)), closes [#1a1a1a](https://github.com/HankHuang0516/EClaw/issues/1a1a1a)
* **entities:** expose botSecret to owner so wallpaper service can poll companions ([#2615](https://github.com/HankHuang0516/EClaw/issues/2615)) ([04470fc](https://github.com/HankHuang0516/EClaw/commit/04470fce8f8c3fce2b1ba8b243e776606f107502))
* **rental:** expose owner_public_code in marketplace so plaza CTA can route ([#2616](https://github.com/HankHuang0516/EClaw/issues/2616)) ([4d1372f](https://github.com/HankHuang0516/EClaw/commit/4d1372f717d93cab65543e87c852e74e9fb67071)), closes [#2610](https://github.com/HankHuang0516/EClaw/issues/2610)
* **mindmap:** fallback to device scope when entityId is null ([#2728](https://github.com/HankHuang0516/EClaw/issues/2728)) ([7572312](https://github.com/HankHuang0516/EClaw/commit/7572312433d3d75fc245eda48a28919ce14bd927))
* **i18n:** fill Spanish drift keys ([#2751](https://github.com/HankHuang0516/EClaw/issues/2751)) ([0ad0ee5](https://github.com/HankHuang0516/EClaw/commit/0ad0ee55f7fac3e6ac46d891539950dab4d553cc))
* **portal:** fit embedded org chart to mobile viewport ([#2674](https://github.com/HankHuang0516/EClaw/issues/2674)) ([1c4e1b4](https://github.com/HankHuang0516/EClaw/commit/1c4e1b413ea7027b4cd4b8ecda981b0d0e12e66b))
* **i18n:** fix 6 trailing-comma syntax errors in 10-locale batch ([#2771](https://github.com/HankHuang0516/EClaw/issues/2771)) ([b27c6ca](https://github.com/HankHuang0516/EClaw/commit/b27c6ca204bf813e406c54ce3a2532a5f1f031b3))
* **uiux:** harden chat previews and roster preview ([#2769](https://github.com/HankHuang0516/EClaw/issues/2769)) ([466d4d3](https://github.com/HankHuang0516/EClaw/commit/466d4d3ef81c628d3f58db64323946053d7bf61c))
* **mention-parser:** ignore @-mentions inside markdown code spans ([#2645](https://github.com/HankHuang0516/EClaw/issues/2645)) ([8da19d4](https://github.com/HankHuang0516/EClaw/commit/8da19d4a79ceb4152bf2144ee0847c61ce3e1def)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **kanban:** lazy-load dependency chips via IntersectionObserver ([#2632](https://github.com/HankHuang0516/EClaw/issues/2632)) ([20586b4](https://github.com/HankHuang0516/EClaw/commit/20586b43357335f9eb6a190c02d58c8e36b58aba)), closes [#2631](https://github.com/HankHuang0516/EClaw/issues/2631)
* **kanban:** make card sorting deterministic ([#2756](https://github.com/HankHuang0516/EClaw/issues/2756)) ([48e2117](https://github.com/HankHuang0516/EClaw/commit/48e2117b64e37f05dc635e0a3b67bfd43cbe48f5))
* **kanban:** notify reviewer on manual /move → review ([#2753](https://github.com/HankHuang0516/EClaw/issues/2753)) ([6cbbb4e](https://github.com/HankHuang0516/EClaw/commit/6cbbb4ee8c0d4d8ad54df2e9b5faaa3699bd530f))
* **wallpaper:** off-load spritesheet fetch to IO so per-petdx sprites actually render ([#2618](https://github.com/HankHuang0516/EClaw/issues/2618)) ([61b832c](https://github.com/HankHuang0516/EClaw/commit/61b832c9fa8a1d0caab810ccc942d85c63349267)), closes [#2615](https://github.com/HankHuang0516/EClaw/issues/2615) [#2577](https://github.com/HankHuang0516/EClaw/issues/2577)
* **portal:** petdx-browser cookie-session fallback for device-login ([#2757](https://github.com/HankHuang0516/EClaw/issues/2757)) ([ca275f4](https://github.com/HankHuang0516/EClaw/commit/ca275f4519835da0c7ad71c588908a18f6f138d8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **i18n:** positional format specifiers for feedback_result_logs (7 locales) ([#2597](https://github.com/HankHuang0516/EClaw/issues/2597)) ([21aedc7](https://github.com/HankHuang0516/EClaw/commit/21aedc7eebc7a2839e340136f38dfdfd4dabb9dc))
* **avatar-petdx:** preserve descriptor across transient API failures (flicker) ([#2625](https://github.com/HankHuang0516/EClaw/issues/2625)) ([7b1c606](https://github.com/HankHuang0516/EClaw/commit/7b1c606514f7698d72ec95cf6c556e4043966186))
* **chat:** preserve scroll anchor while reading history ([#2693](https://github.com/HankHuang0516/EClaw/issues/2693)) ([945fdb7](https://github.com/HankHuang0516/EClaw/commit/945fdb7192b791b31882e1e75568dd8b11e4686f))
* **promo:** pull video embed from /promo-chat-avatar.html ([#2724](https://github.com/HankHuang0516/EClaw/issues/2724)) ([2afabc8](https://github.com/HankHuang0516/EClaw/commit/2afabc8c5ff8b25218a7cb857e8adfa572c8e9d5))
* **portal:** reduce QA-discovered request fanout ([#2656](https://github.com/HankHuang0516/EClaw/issues/2656)) ([1e46d6b](https://github.com/HankHuang0516/EClaw/commit/1e46d6bab61e58c65b452b6503d953f8dddeee75))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **portal:** remove org chart fit scale floor ([#2676](https://github.com/HankHuang0516/EClaw/issues/2676)) ([0f01606](https://github.com/HankHuang0516/EClaw/commit/0f016068b963bb5f800a02f28817c7174979d913))
* **i18n:** rename mm_empty_title → mm_state_empty_title in mindmap.html ([#2683](https://github.com/HankHuang0516/EClaw/issues/2683)) ([c79c109](https://github.com/HankHuang0516/EClaw/commit/c79c109bea23142e8a6d9ace976d105af1280ec9))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **chat:** render mention avatars with companion renderer ([#2633](https://github.com/HankHuang0516/EClaw/issues/2633)) ([03e205f](https://github.com/HankHuang0516/EClaw/commit/03e205f663ecd2c2f443d4009dd5af0093f0bbbb))
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* scheduled audit 2026-05-13 — 6 bugs, XSS, i18n ([#2668](https://github.com/HankHuang0516/EClaw/issues/2668)) ([21dd513](https://github.com/HankHuang0516/EClaw/commit/21dd513b4464738de29164265437435ba6cc4817)), closes [#2605](https://github.com/HankHuang0516/EClaw/issues/2605) [#2608](https://github.com/HankHuang0516/EClaw/issues/2608) [#2600](https://github.com/HankHuang0516/EClaw/issues/2600) [#2599](https://github.com/HankHuang0516/EClaw/issues/2599) [#2598](https://github.com/HankHuang0516/EClaw/issues/2598)
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **chat:** smart-chip preview falls back to inline c.comments when /comments fails (PR [#2677](https://github.com/HankHuang0516/EClaw/issues/2677)) ([7f4dffd](https://github.com/HankHuang0516/EClaw/commit/7f4dffd2c83ea86f296b8fa0610f0e67c9f1af11))
* **wallpaper:** stop Android live wallpaper flashing default lobster on companion change ([#2629](https://github.com/HankHuang0516/EClaw/issues/2629)) ([8b4f66f](https://github.com/HankHuang0516/EClaw/commit/8b4f66fcb335bf43128f924b761b6337c817095b)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **app:** WebView pages honor app-selected locale via ?lang= URL param ([#2672](https://github.com/HankHuang0516/EClaw/issues/2672)) ([8ed8757](https://github.com/HankHuang0516/EClaw/commit/8ed8757aec5bf214e837cc0d81bf2b23f1993a91)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* **community:** 1-click chat button on bot cards + utm tagging ([#2610](https://github.com/HankHuang0516/EClaw/issues/2610)) ([eee97b0](https://github.com/HankHuang0516/EClaw/commit/eee97b0e2e4e74945ec24f218a69a52800b97a66))
* **chat:** add avatar size preference ([#2714](https://github.com/HankHuang0516/EClaw/issues/2714)) ([6fe164a](https://github.com/HankHuang0516/EClaw/commit/6fe164ad8b22fa576d2dd9ad37c0d9fc295b5a83))
* **dashboard:** add Claude and Codex channel guides ([#2640](https://github.com/HankHuang0516/EClaw/issues/2640)) ([c64e4c4](https://github.com/HankHuang0516/EClaw/commit/c64e4c4afc78db58c5cd578f00486dd7b2fd3311))
* **dashboard:** add Claude Code channel guide card ([#2667](https://github.com/HankHuang0516/EClaw/issues/2667)) ([d70d75c](https://github.com/HankHuang0516/EClaw/commit/d70d75c0c8caa8a540358a9aab4556b8c1927a5c))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* **portal:** add entity selector to petdx-browser ([#2602](https://github.com/HankHuang0516/EClaw/issues/2602)) ([3fa067e](https://github.com/HankHuang0516/EClaw/commit/3fa067e00b38829b48a37cecd33ee81a9a1122d9))
* **kanban:** add explicit card links ([#2721](https://github.com/HankHuang0516/EClaw/issues/2721)) ([ef9f812](https://github.com/HankHuang0516/EClaw/commit/ef9f812a3fcf39efd07fd158ce90951bdd045ac7))
* **mindmap:** add GET /api/mindmap/graph force-graph projection ([#2680](https://github.com/HankHuang0516/EClaw/issues/2680)) ([a00b2e7](https://github.com/HankHuang0516/EClaw/commit/a00b2e775af2c4c98cd157f760ad87aeeee469f0)), closes [#2679](https://github.com/HankHuang0516/EClaw/issues/2679) [#2679](https://github.com/HankHuang0516/EClaw/issues/2679)
* **dashboard:** add Hermes channel promo card ([#2708](https://github.com/HankHuang0516/EClaw/issues/2708)) ([337aca1](https://github.com/HankHuang0516/EClaw/commit/337aca153d5a1cd7e888c065f00ae54db7872d91))
* **portal:** add Nagoya 5D4N trip static cross-ref page ([#2689](https://github.com/HankHuang0516/EClaw/issues/2689)) ([2e0efb6](https://github.com/HankHuang0516/EClaw/commit/2e0efb6dcdaff52226cc8854a96747000b12bdff))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **settings:** add rental roster management preview ([#2758](https://github.com/HankHuang0516/EClaw/issues/2758)) ([9706e59](https://github.com/HankHuang0516/EClaw/commit/9706e59ded140a90a6e02348124282bc69d89001))
* **rental:** add renter health chat indicator ([#2690](https://github.com/HankHuang0516/EClaw/issues/2690)) ([36cd2e9](https://github.com/HankHuang0516/EClaw/commit/36cd2e9802be4c7ebb03d3024617fa74aca48ffd))
* **companion:** bridge crafter-station/petdex gallery (1784 pets) ([#2601](https://github.com/HankHuang0516/EClaw/issues/2601)) ([2e245be](https://github.com/HankHuang0516/EClaw/commit/2e245bea6dd47ea7361b927d389188a3c23b6bb3))
* **promo:** chat avatar size feature landing page (self-hosted MP4) ([#2722](https://github.com/HankHuang0516/EClaw/issues/2722)) ([3852210](https://github.com/HankHuang0516/EClaw/commit/3852210d355704d018e3daca6b5f9512a011b210)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **rental:** enforce strict rebind refunds ([#2703](https://github.com/HankHuang0516/EClaw/issues/2703)) ([a1859c5](https://github.com/HankHuang0516/EClaw/commit/a1859c50e6fb3991d7a8051491502d824a14a116))
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **chat:** link card previews to kanban ([#2754](https://github.com/HankHuang0516/EClaw/issues/2754)) ([2261240](https://github.com/HankHuang0516/EClaw/commit/22612402c2e95efb07246629e81a849be41ee9c7))
* **mission:** link notes to kanban cards ([#2723](https://github.com/HankHuang0516/EClaw/issues/2723)) ([b36dc18](https://github.com/HankHuang0516/EClaw/commit/b36dc18f3a8facf12e0b6046351c222f1e99dc55))
* **mindmap:** mission.html link to /portal/mindmap.html + deprecate /api/mission/mindmap ([#2685](https://github.com/HankHuang0516/EClaw/issues/2685)) ([11e297b](https://github.com/HankHuang0516/EClaw/commit/11e297bab1c9b56fcde3027d6500b7c58891bf18)), closes [#2680](https://github.com/HankHuang0516/EClaw/issues/2680) [#2684](https://github.com/HankHuang0516/EClaw/issues/2684)
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **avatar:** petdx render on card-holder my-cards (Phase 1b) ([#2621](https://github.com/HankHuang0516/EClaw/issues/2621)) ([f78ba8b](https://github.com/HankHuang0516/EClaw/commit/f78ba8b18acc426936ab6d8a82ca7541effea00d))
* **avatar:** petdx render on dashboard entity grid / org chart / bindings (Phase 1b) ([#2622](https://github.com/HankHuang0516/EClaw/issues/2622)) ([f417749](https://github.com/HankHuang0516/EClaw/commit/f41774914451048e8cd76e9ae30416a0642e173b)), closes [#2620](https://github.com/HankHuang0516/EClaw/issues/2620) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621)
* **avatar:** petdx render on kanban auto-assign / pulse / comment avatars (Phase 1b) ([#2624](https://github.com/HankHuang0516/EClaw/issues/2624)) ([6bff5f8](https://github.com/HankHuang0516/EClaw/commit/6bff5f80440d0bd91a6b1721cde9478d685c4d46))
* **avatar:** petdx render on mission skill/rule/soul entity dialogs (Phase 1b) ([#2623](https://github.com/HankHuang0516/EClaw/issues/2623)) ([129327b](https://github.com/HankHuang0516/EClaw/commit/129327bc7b91056659f1ab7e8d5e3f5260d951fb))
* **mindmap:** portal/mindmap.html force-graph prototype ([#129](https://github.com/HankHuang0516/EClaw/issues/129)) ([#2681](https://github.com/HankHuang0516/EClaw/issues/2681)) ([0f15e69](https://github.com/HankHuang0516/EClaw/commit/0f15e6930f0697c37fa08f3219edb8f9e499837f)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **portal:** redo nagoya trip page in professional tour-guide style ([#2691](https://github.com/HankHuang0516/EClaw/issues/2691)) ([b2378c0](https://github.com/HankHuang0516/EClaw/commit/b2378c06ee20fa9cccfdceceb1a4c9e0b3072f59))
* **avatar:** render selected petdx companion in chat avatars ([#2620](https://github.com/HankHuang0516/EClaw/issues/2620)) ([0bdd046](https://github.com/HankHuang0516/EClaw/commit/0bdd046fe1b1c428e32edda366ff112c08927f4c))
* **home:** replace native home with WebView hosting dashboard.html ([#2634](https://github.com/HankHuang0516/EClaw/issues/2634)) ([e69ea81](https://github.com/HankHuang0516/EClaw/commit/e69ea8160c239b083a83d6dc83a4f1c3f901c863))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **chat:** support message deep links ([#2719](https://github.com/HankHuang0516/EClaw/issues/2719)) ([2dc0f1e](https://github.com/HankHuang0516/EClaw/commit/2dc0f1eeb259e1a0848db4a03186b989372cd91c))
* **mission:** support note deep links ([#2717](https://github.com/HankHuang0516/EClaw/issues/2717)) ([2efd3a5](https://github.com/HankHuang0516/EClaw/commit/2efd3a5e741217a07c0b0ac54a0ddd010e0ebe23))
* **share-chat:** twitter card + per-bot og:image/twitter:* in SSR ([#2609](https://github.com/HankHuang0516/EClaw/issues/2609)) ([6cdc853](https://github.com/HankHuang0516/EClaw/commit/6cdc853dc884cdb95bd47214942768981f218ae0))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))
* **settings:** wire petdx avatar into channel-account chips ([#2626](https://github.com/HankHuang0516/EClaw/issues/2626)) ([88aec77](https://github.com/HankHuang0516/EClaw/commit/88aec772628c240e97b336bb5820892ad632d1ae))
* **files:** wire petdx avatar into entity filter & per-file badges ([#2627](https://github.com/HankHuang0516/EClaw/issues/2627)) ([5b3e5cc](https://github.com/HankHuang0516/EClaw/commit/5b3e5cc542d9da69bb4e92500fd03a542ea33f00))
* **mindmap:** wrap hardcoded zh-TW UI strings with i18n t() ([#2607](https://github.com/HankHuang0516/EClaw/issues/2607)) ([166af87](https://github.com/HankHuang0516/EClaw/commit/166af8772b2121a24aaf34a83b3de970e9b3b571)), closes [#2606](https://github.com/HankHuang0516/EClaw/issues/2606)


### Performance Improvements

* **mindmap:** force-graph hardening for 1000/2000-node graphs ([#2684](https://github.com/HankHuang0516/EClaw/issues/2684)) ([da8b1c8](https://github.com/HankHuang0516/EClaw/commit/da8b1c8f947ab8bc8fa455c1962a91146623a1fc))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-14)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **notifications:** add kanban_done + kanban_done_auto toggles to Android Settings ([#2636](https://github.com/HankHuang0516/EClaw/issues/2636)) ([a710909](https://github.com/HankHuang0516/EClaw/commit/a7109095e3393b8564e7ef1b23d382a4fbb944b8))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **kanban:** comment input no longer overlaps last comment in card detail (PR [#2678](https://github.com/HankHuang0516/EClaw/issues/2678)) ([fba91fc](https://github.com/HankHuang0516/EClaw/commit/fba91fca15402b453a0db5ee857c0b16e6087055))
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **petdx:** drop dark-grey loading placeholder + preload sprite WEBP ([#2628](https://github.com/HankHuang0516/EClaw/issues/2628)) ([59cef38](https://github.com/HankHuang0516/EClaw/commit/59cef387bd69ca99d7d15c86a1364856d3849ad8)), closes [#1a1a1a](https://github.com/HankHuang0516/EClaw/issues/1a1a1a)
* **entities:** expose botSecret to owner so wallpaper service can poll companions ([#2615](https://github.com/HankHuang0516/EClaw/issues/2615)) ([04470fc](https://github.com/HankHuang0516/EClaw/commit/04470fce8f8c3fce2b1ba8b243e776606f107502))
* **rental:** expose owner_public_code in marketplace so plaza CTA can route ([#2616](https://github.com/HankHuang0516/EClaw/issues/2616)) ([4d1372f](https://github.com/HankHuang0516/EClaw/commit/4d1372f717d93cab65543e87c852e74e9fb67071)), closes [#2610](https://github.com/HankHuang0516/EClaw/issues/2610)
* **mindmap:** fallback to device scope when entityId is null ([#2728](https://github.com/HankHuang0516/EClaw/issues/2728)) ([7572312](https://github.com/HankHuang0516/EClaw/commit/7572312433d3d75fc245eda48a28919ce14bd927))
* **i18n:** fill Spanish drift keys ([#2751](https://github.com/HankHuang0516/EClaw/issues/2751)) ([0ad0ee5](https://github.com/HankHuang0516/EClaw/commit/0ad0ee55f7fac3e6ac46d891539950dab4d553cc))
* **portal:** fit embedded org chart to mobile viewport ([#2674](https://github.com/HankHuang0516/EClaw/issues/2674)) ([1c4e1b4](https://github.com/HankHuang0516/EClaw/commit/1c4e1b413ea7027b4cd4b8ecda981b0d0e12e66b))
* **i18n:** fix 6 trailing-comma syntax errors in 10-locale batch ([#2771](https://github.com/HankHuang0516/EClaw/issues/2771)) ([b27c6ca](https://github.com/HankHuang0516/EClaw/commit/b27c6ca204bf813e406c54ce3a2532a5f1f031b3))
* **uiux:** harden chat previews and roster preview ([#2769](https://github.com/HankHuang0516/EClaw/issues/2769)) ([466d4d3](https://github.com/HankHuang0516/EClaw/commit/466d4d3ef81c628d3f58db64323946053d7bf61c))
* **mention-parser:** ignore @-mentions inside markdown code spans ([#2645](https://github.com/HankHuang0516/EClaw/issues/2645)) ([8da19d4](https://github.com/HankHuang0516/EClaw/commit/8da19d4a79ceb4152bf2144ee0847c61ce3e1def)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **kanban:** lazy-load dependency chips via IntersectionObserver ([#2632](https://github.com/HankHuang0516/EClaw/issues/2632)) ([20586b4](https://github.com/HankHuang0516/EClaw/commit/20586b43357335f9eb6a190c02d58c8e36b58aba)), closes [#2631](https://github.com/HankHuang0516/EClaw/issues/2631)
* **kanban:** make card sorting deterministic ([#2756](https://github.com/HankHuang0516/EClaw/issues/2756)) ([48e2117](https://github.com/HankHuang0516/EClaw/commit/48e2117b64e37f05dc635e0a3b67bfd43cbe48f5))
* **kanban:** notify reviewer on manual /move → review ([#2753](https://github.com/HankHuang0516/EClaw/issues/2753)) ([6cbbb4e](https://github.com/HankHuang0516/EClaw/commit/6cbbb4ee8c0d4d8ad54df2e9b5faaa3699bd530f))
* **wallpaper:** off-load spritesheet fetch to IO so per-petdx sprites actually render ([#2618](https://github.com/HankHuang0516/EClaw/issues/2618)) ([61b832c](https://github.com/HankHuang0516/EClaw/commit/61b832c9fa8a1d0caab810ccc942d85c63349267)), closes [#2615](https://github.com/HankHuang0516/EClaw/issues/2615) [#2577](https://github.com/HankHuang0516/EClaw/issues/2577)
* **portal:** petdx-browser cookie-session fallback for device-login ([#2757](https://github.com/HankHuang0516/EClaw/issues/2757)) ([ca275f4](https://github.com/HankHuang0516/EClaw/commit/ca275f4519835da0c7ad71c588908a18f6f138d8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **i18n:** positional format specifiers for feedback_result_logs (7 locales) ([#2597](https://github.com/HankHuang0516/EClaw/issues/2597)) ([21aedc7](https://github.com/HankHuang0516/EClaw/commit/21aedc7eebc7a2839e340136f38dfdfd4dabb9dc))
* **avatar-petdx:** preserve descriptor across transient API failures (flicker) ([#2625](https://github.com/HankHuang0516/EClaw/issues/2625)) ([7b1c606](https://github.com/HankHuang0516/EClaw/commit/7b1c606514f7698d72ec95cf6c556e4043966186))
* **chat:** preserve scroll anchor while reading history ([#2693](https://github.com/HankHuang0516/EClaw/issues/2693)) ([945fdb7](https://github.com/HankHuang0516/EClaw/commit/945fdb7192b791b31882e1e75568dd8b11e4686f))
* **promo:** pull video embed from /promo-chat-avatar.html ([#2724](https://github.com/HankHuang0516/EClaw/issues/2724)) ([2afabc8](https://github.com/HankHuang0516/EClaw/commit/2afabc8c5ff8b25218a7cb857e8adfa572c8e9d5))
* **portal:** reduce QA-discovered request fanout ([#2656](https://github.com/HankHuang0516/EClaw/issues/2656)) ([1e46d6b](https://github.com/HankHuang0516/EClaw/commit/1e46d6bab61e58c65b452b6503d953f8dddeee75))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **portal:** remove org chart fit scale floor ([#2676](https://github.com/HankHuang0516/EClaw/issues/2676)) ([0f01606](https://github.com/HankHuang0516/EClaw/commit/0f016068b963bb5f800a02f28817c7174979d913))
* **i18n:** rename mm_empty_title → mm_state_empty_title in mindmap.html ([#2683](https://github.com/HankHuang0516/EClaw/issues/2683)) ([c79c109](https://github.com/HankHuang0516/EClaw/commit/c79c109bea23142e8a6d9ace976d105af1280ec9))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **chat:** render mention avatars with companion renderer ([#2633](https://github.com/HankHuang0516/EClaw/issues/2633)) ([03e205f](https://github.com/HankHuang0516/EClaw/commit/03e205f663ecd2c2f443d4009dd5af0093f0bbbb))
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* scheduled audit 2026-05-13 — 6 bugs, XSS, i18n ([#2668](https://github.com/HankHuang0516/EClaw/issues/2668)) ([21dd513](https://github.com/HankHuang0516/EClaw/commit/21dd513b4464738de29164265437435ba6cc4817)), closes [#2605](https://github.com/HankHuang0516/EClaw/issues/2605) [#2608](https://github.com/HankHuang0516/EClaw/issues/2608) [#2600](https://github.com/HankHuang0516/EClaw/issues/2600) [#2599](https://github.com/HankHuang0516/EClaw/issues/2599) [#2598](https://github.com/HankHuang0516/EClaw/issues/2598)
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **chat:** smart-chip preview falls back to inline c.comments when /comments fails (PR [#2677](https://github.com/HankHuang0516/EClaw/issues/2677)) ([7f4dffd](https://github.com/HankHuang0516/EClaw/commit/7f4dffd2c83ea86f296b8fa0610f0e67c9f1af11))
* **wallpaper:** stop Android live wallpaper flashing default lobster on companion change ([#2629](https://github.com/HankHuang0516/EClaw/issues/2629)) ([8b4f66f](https://github.com/HankHuang0516/EClaw/commit/8b4f66fcb335bf43128f924b761b6337c817095b)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **app:** WebView pages honor app-selected locale via ?lang= URL param ([#2672](https://github.com/HankHuang0516/EClaw/issues/2672)) ([8ed8757](https://github.com/HankHuang0516/EClaw/commit/8ed8757aec5bf214e837cc0d81bf2b23f1993a91)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* **community:** 1-click chat button on bot cards + utm tagging ([#2610](https://github.com/HankHuang0516/EClaw/issues/2610)) ([eee97b0](https://github.com/HankHuang0516/EClaw/commit/eee97b0e2e4e74945ec24f218a69a52800b97a66))
* **chat:** add avatar size preference ([#2714](https://github.com/HankHuang0516/EClaw/issues/2714)) ([6fe164a](https://github.com/HankHuang0516/EClaw/commit/6fe164ad8b22fa576d2dd9ad37c0d9fc295b5a83))
* **dashboard:** add Claude and Codex channel guides ([#2640](https://github.com/HankHuang0516/EClaw/issues/2640)) ([c64e4c4](https://github.com/HankHuang0516/EClaw/commit/c64e4c4afc78db58c5cd578f00486dd7b2fd3311))
* **dashboard:** add Claude Code channel guide card ([#2667](https://github.com/HankHuang0516/EClaw/issues/2667)) ([d70d75c](https://github.com/HankHuang0516/EClaw/commit/d70d75c0c8caa8a540358a9aab4556b8c1927a5c))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* **portal:** add entity selector to petdx-browser ([#2602](https://github.com/HankHuang0516/EClaw/issues/2602)) ([3fa067e](https://github.com/HankHuang0516/EClaw/commit/3fa067e00b38829b48a37cecd33ee81a9a1122d9))
* **kanban:** add explicit card links ([#2721](https://github.com/HankHuang0516/EClaw/issues/2721)) ([ef9f812](https://github.com/HankHuang0516/EClaw/commit/ef9f812a3fcf39efd07fd158ce90951bdd045ac7))
* **mindmap:** add GET /api/mindmap/graph force-graph projection ([#2680](https://github.com/HankHuang0516/EClaw/issues/2680)) ([a00b2e7](https://github.com/HankHuang0516/EClaw/commit/a00b2e775af2c4c98cd157f760ad87aeeee469f0)), closes [#2679](https://github.com/HankHuang0516/EClaw/issues/2679) [#2679](https://github.com/HankHuang0516/EClaw/issues/2679)
* **dashboard:** add Hermes channel promo card ([#2708](https://github.com/HankHuang0516/EClaw/issues/2708)) ([337aca1](https://github.com/HankHuang0516/EClaw/commit/337aca153d5a1cd7e888c065f00ae54db7872d91))
* **portal:** add Nagoya 5D4N trip static cross-ref page ([#2689](https://github.com/HankHuang0516/EClaw/issues/2689)) ([2e0efb6](https://github.com/HankHuang0516/EClaw/commit/2e0efb6dcdaff52226cc8854a96747000b12bdff))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **settings:** add rental roster management preview ([#2758](https://github.com/HankHuang0516/EClaw/issues/2758)) ([9706e59](https://github.com/HankHuang0516/EClaw/commit/9706e59ded140a90a6e02348124282bc69d89001))
* **rental:** add renter health chat indicator ([#2690](https://github.com/HankHuang0516/EClaw/issues/2690)) ([36cd2e9](https://github.com/HankHuang0516/EClaw/commit/36cd2e9802be4c7ebb03d3024617fa74aca48ffd))
* **companion:** bridge crafter-station/petdex gallery (1784 pets) ([#2601](https://github.com/HankHuang0516/EClaw/issues/2601)) ([2e245be](https://github.com/HankHuang0516/EClaw/commit/2e245bea6dd47ea7361b927d389188a3c23b6bb3))
* **promo:** chat avatar size feature landing page (self-hosted MP4) ([#2722](https://github.com/HankHuang0516/EClaw/issues/2722)) ([3852210](https://github.com/HankHuang0516/EClaw/commit/3852210d355704d018e3daca6b5f9512a011b210)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **rental:** enforce strict rebind refunds ([#2703](https://github.com/HankHuang0516/EClaw/issues/2703)) ([a1859c5](https://github.com/HankHuang0516/EClaw/commit/a1859c50e6fb3991d7a8051491502d824a14a116))
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **chat:** link card previews to kanban ([#2754](https://github.com/HankHuang0516/EClaw/issues/2754)) ([2261240](https://github.com/HankHuang0516/EClaw/commit/22612402c2e95efb07246629e81a849be41ee9c7))
* **mission:** link notes to kanban cards ([#2723](https://github.com/HankHuang0516/EClaw/issues/2723)) ([b36dc18](https://github.com/HankHuang0516/EClaw/commit/b36dc18f3a8facf12e0b6046351c222f1e99dc55))
* **mindmap:** mission.html link to /portal/mindmap.html + deprecate /api/mission/mindmap ([#2685](https://github.com/HankHuang0516/EClaw/issues/2685)) ([11e297b](https://github.com/HankHuang0516/EClaw/commit/11e297bab1c9b56fcde3027d6500b7c58891bf18)), closes [#2680](https://github.com/HankHuang0516/EClaw/issues/2680) [#2684](https://github.com/HankHuang0516/EClaw/issues/2684)
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **avatar:** petdx render on card-holder my-cards (Phase 1b) ([#2621](https://github.com/HankHuang0516/EClaw/issues/2621)) ([f78ba8b](https://github.com/HankHuang0516/EClaw/commit/f78ba8b18acc426936ab6d8a82ca7541effea00d))
* **avatar:** petdx render on dashboard entity grid / org chart / bindings (Phase 1b) ([#2622](https://github.com/HankHuang0516/EClaw/issues/2622)) ([f417749](https://github.com/HankHuang0516/EClaw/commit/f41774914451048e8cd76e9ae30416a0642e173b)), closes [#2620](https://github.com/HankHuang0516/EClaw/issues/2620) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621)
* **avatar:** petdx render on kanban auto-assign / pulse / comment avatars (Phase 1b) ([#2624](https://github.com/HankHuang0516/EClaw/issues/2624)) ([6bff5f8](https://github.com/HankHuang0516/EClaw/commit/6bff5f80440d0bd91a6b1721cde9478d685c4d46))
* **avatar:** petdx render on mission skill/rule/soul entity dialogs (Phase 1b) ([#2623](https://github.com/HankHuang0516/EClaw/issues/2623)) ([129327b](https://github.com/HankHuang0516/EClaw/commit/129327bc7b91056659f1ab7e8d5e3f5260d951fb))
* **mindmap:** portal/mindmap.html force-graph prototype ([#129](https://github.com/HankHuang0516/EClaw/issues/129)) ([#2681](https://github.com/HankHuang0516/EClaw/issues/2681)) ([0f15e69](https://github.com/HankHuang0516/EClaw/commit/0f15e6930f0697c37fa08f3219edb8f9e499837f)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **portal:** redo nagoya trip page in professional tour-guide style ([#2691](https://github.com/HankHuang0516/EClaw/issues/2691)) ([b2378c0](https://github.com/HankHuang0516/EClaw/commit/b2378c06ee20fa9cccfdceceb1a4c9e0b3072f59))
* **avatar:** render selected petdx companion in chat avatars ([#2620](https://github.com/HankHuang0516/EClaw/issues/2620)) ([0bdd046](https://github.com/HankHuang0516/EClaw/commit/0bdd046fe1b1c428e32edda366ff112c08927f4c))
* **home:** replace native home with WebView hosting dashboard.html ([#2634](https://github.com/HankHuang0516/EClaw/issues/2634)) ([e69ea81](https://github.com/HankHuang0516/EClaw/commit/e69ea8160c239b083a83d6dc83a4f1c3f901c863))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **chat:** support message deep links ([#2719](https://github.com/HankHuang0516/EClaw/issues/2719)) ([2dc0f1e](https://github.com/HankHuang0516/EClaw/commit/2dc0f1eeb259e1a0848db4a03186b989372cd91c))
* **mission:** support note deep links ([#2717](https://github.com/HankHuang0516/EClaw/issues/2717)) ([2efd3a5](https://github.com/HankHuang0516/EClaw/commit/2efd3a5e741217a07c0b0ac54a0ddd010e0ebe23))
* **share-chat:** twitter card + per-bot og:image/twitter:* in SSR ([#2609](https://github.com/HankHuang0516/EClaw/issues/2609)) ([6cdc853](https://github.com/HankHuang0516/EClaw/commit/6cdc853dc884cdb95bd47214942768981f218ae0))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))
* **settings:** wire petdx avatar into channel-account chips ([#2626](https://github.com/HankHuang0516/EClaw/issues/2626)) ([88aec77](https://github.com/HankHuang0516/EClaw/commit/88aec772628c240e97b336bb5820892ad632d1ae))
* **files:** wire petdx avatar into entity filter & per-file badges ([#2627](https://github.com/HankHuang0516/EClaw/issues/2627)) ([5b3e5cc](https://github.com/HankHuang0516/EClaw/commit/5b3e5cc542d9da69bb4e92500fd03a542ea33f00))
* **mindmap:** wrap hardcoded zh-TW UI strings with i18n t() ([#2607](https://github.com/HankHuang0516/EClaw/issues/2607)) ([166af87](https://github.com/HankHuang0516/EClaw/commit/166af8772b2121a24aaf34a83b3de970e9b3b571)), closes [#2606](https://github.com/HankHuang0516/EClaw/issues/2606)


### Performance Improvements

* **mindmap:** force-graph hardening for 1000/2000-node graphs ([#2684](https://github.com/HankHuang0516/EClaw/issues/2684)) ([da8b1c8](https://github.com/HankHuang0516/EClaw/commit/da8b1c8f947ab8bc8fa455c1962a91146623a1fc))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-14)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **notifications:** add kanban_done + kanban_done_auto toggles to Android Settings ([#2636](https://github.com/HankHuang0516/EClaw/issues/2636)) ([a710909](https://github.com/HankHuang0516/EClaw/commit/a7109095e3393b8564e7ef1b23d382a4fbb944b8))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **kanban:** comment input no longer overlaps last comment in card detail (PR [#2678](https://github.com/HankHuang0516/EClaw/issues/2678)) ([fba91fc](https://github.com/HankHuang0516/EClaw/commit/fba91fca15402b453a0db5ee857c0b16e6087055))
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **petdx:** drop dark-grey loading placeholder + preload sprite WEBP ([#2628](https://github.com/HankHuang0516/EClaw/issues/2628)) ([59cef38](https://github.com/HankHuang0516/EClaw/commit/59cef387bd69ca99d7d15c86a1364856d3849ad8)), closes [#1a1a1a](https://github.com/HankHuang0516/EClaw/issues/1a1a1a)
* **entities:** expose botSecret to owner so wallpaper service can poll companions ([#2615](https://github.com/HankHuang0516/EClaw/issues/2615)) ([04470fc](https://github.com/HankHuang0516/EClaw/commit/04470fce8f8c3fce2b1ba8b243e776606f107502))
* **rental:** expose owner_public_code in marketplace so plaza CTA can route ([#2616](https://github.com/HankHuang0516/EClaw/issues/2616)) ([4d1372f](https://github.com/HankHuang0516/EClaw/commit/4d1372f717d93cab65543e87c852e74e9fb67071)), closes [#2610](https://github.com/HankHuang0516/EClaw/issues/2610)
* **mindmap:** fallback to device scope when entityId is null ([#2728](https://github.com/HankHuang0516/EClaw/issues/2728)) ([7572312](https://github.com/HankHuang0516/EClaw/commit/7572312433d3d75fc245eda48a28919ce14bd927))
* **i18n:** fill Spanish drift keys ([#2751](https://github.com/HankHuang0516/EClaw/issues/2751)) ([0ad0ee5](https://github.com/HankHuang0516/EClaw/commit/0ad0ee55f7fac3e6ac46d891539950dab4d553cc))
* **portal:** fit embedded org chart to mobile viewport ([#2674](https://github.com/HankHuang0516/EClaw/issues/2674)) ([1c4e1b4](https://github.com/HankHuang0516/EClaw/commit/1c4e1b413ea7027b4cd4b8ecda981b0d0e12e66b))
* **i18n:** fix 6 trailing-comma syntax errors in 10-locale batch ([#2771](https://github.com/HankHuang0516/EClaw/issues/2771)) ([b27c6ca](https://github.com/HankHuang0516/EClaw/commit/b27c6ca204bf813e406c54ce3a2532a5f1f031b3))
* **uiux:** harden chat previews and roster preview ([#2769](https://github.com/HankHuang0516/EClaw/issues/2769)) ([466d4d3](https://github.com/HankHuang0516/EClaw/commit/466d4d3ef81c628d3f58db64323946053d7bf61c))
* **mention-parser:** ignore @-mentions inside markdown code spans ([#2645](https://github.com/HankHuang0516/EClaw/issues/2645)) ([8da19d4](https://github.com/HankHuang0516/EClaw/commit/8da19d4a79ceb4152bf2144ee0847c61ce3e1def)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **kanban:** lazy-load dependency chips via IntersectionObserver ([#2632](https://github.com/HankHuang0516/EClaw/issues/2632)) ([20586b4](https://github.com/HankHuang0516/EClaw/commit/20586b43357335f9eb6a190c02d58c8e36b58aba)), closes [#2631](https://github.com/HankHuang0516/EClaw/issues/2631)
* **kanban:** make card sorting deterministic ([#2756](https://github.com/HankHuang0516/EClaw/issues/2756)) ([48e2117](https://github.com/HankHuang0516/EClaw/commit/48e2117b64e37f05dc635e0a3b67bfd43cbe48f5))
* **kanban:** notify reviewer on manual /move → review ([#2753](https://github.com/HankHuang0516/EClaw/issues/2753)) ([6cbbb4e](https://github.com/HankHuang0516/EClaw/commit/6cbbb4ee8c0d4d8ad54df2e9b5faaa3699bd530f))
* **wallpaper:** off-load spritesheet fetch to IO so per-petdx sprites actually render ([#2618](https://github.com/HankHuang0516/EClaw/issues/2618)) ([61b832c](https://github.com/HankHuang0516/EClaw/commit/61b832c9fa8a1d0caab810ccc942d85c63349267)), closes [#2615](https://github.com/HankHuang0516/EClaw/issues/2615) [#2577](https://github.com/HankHuang0516/EClaw/issues/2577)
* **portal:** petdx-browser cookie-session fallback for device-login ([#2757](https://github.com/HankHuang0516/EClaw/issues/2757)) ([ca275f4](https://github.com/HankHuang0516/EClaw/commit/ca275f4519835da0c7ad71c588908a18f6f138d8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **i18n:** positional format specifiers for feedback_result_logs (7 locales) ([#2597](https://github.com/HankHuang0516/EClaw/issues/2597)) ([21aedc7](https://github.com/HankHuang0516/EClaw/commit/21aedc7eebc7a2839e340136f38dfdfd4dabb9dc))
* **avatar-petdx:** preserve descriptor across transient API failures (flicker) ([#2625](https://github.com/HankHuang0516/EClaw/issues/2625)) ([7b1c606](https://github.com/HankHuang0516/EClaw/commit/7b1c606514f7698d72ec95cf6c556e4043966186))
* **chat:** preserve scroll anchor while reading history ([#2693](https://github.com/HankHuang0516/EClaw/issues/2693)) ([945fdb7](https://github.com/HankHuang0516/EClaw/commit/945fdb7192b791b31882e1e75568dd8b11e4686f))
* **promo:** pull video embed from /promo-chat-avatar.html ([#2724](https://github.com/HankHuang0516/EClaw/issues/2724)) ([2afabc8](https://github.com/HankHuang0516/EClaw/commit/2afabc8c5ff8b25218a7cb857e8adfa572c8e9d5))
* **portal:** reduce QA-discovered request fanout ([#2656](https://github.com/HankHuang0516/EClaw/issues/2656)) ([1e46d6b](https://github.com/HankHuang0516/EClaw/commit/1e46d6bab61e58c65b452b6503d953f8dddeee75))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **portal:** remove org chart fit scale floor ([#2676](https://github.com/HankHuang0516/EClaw/issues/2676)) ([0f01606](https://github.com/HankHuang0516/EClaw/commit/0f016068b963bb5f800a02f28817c7174979d913))
* **i18n:** rename mm_empty_title → mm_state_empty_title in mindmap.html ([#2683](https://github.com/HankHuang0516/EClaw/issues/2683)) ([c79c109](https://github.com/HankHuang0516/EClaw/commit/c79c109bea23142e8a6d9ace976d105af1280ec9))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **chat:** render mention avatars with companion renderer ([#2633](https://github.com/HankHuang0516/EClaw/issues/2633)) ([03e205f](https://github.com/HankHuang0516/EClaw/commit/03e205f663ecd2c2f443d4009dd5af0093f0bbbb))
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* scheduled audit 2026-05-13 — 6 bugs, XSS, i18n ([#2668](https://github.com/HankHuang0516/EClaw/issues/2668)) ([21dd513](https://github.com/HankHuang0516/EClaw/commit/21dd513b4464738de29164265437435ba6cc4817)), closes [#2605](https://github.com/HankHuang0516/EClaw/issues/2605) [#2608](https://github.com/HankHuang0516/EClaw/issues/2608) [#2600](https://github.com/HankHuang0516/EClaw/issues/2600) [#2599](https://github.com/HankHuang0516/EClaw/issues/2599) [#2598](https://github.com/HankHuang0516/EClaw/issues/2598)
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **chat:** smart-chip preview falls back to inline c.comments when /comments fails (PR [#2677](https://github.com/HankHuang0516/EClaw/issues/2677)) ([7f4dffd](https://github.com/HankHuang0516/EClaw/commit/7f4dffd2c83ea86f296b8fa0610f0e67c9f1af11))
* **wallpaper:** stop Android live wallpaper flashing default lobster on companion change ([#2629](https://github.com/HankHuang0516/EClaw/issues/2629)) ([8b4f66f](https://github.com/HankHuang0516/EClaw/commit/8b4f66fcb335bf43128f924b761b6337c817095b)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **app:** WebView pages honor app-selected locale via ?lang= URL param ([#2672](https://github.com/HankHuang0516/EClaw/issues/2672)) ([8ed8757](https://github.com/HankHuang0516/EClaw/commit/8ed8757aec5bf214e837cc0d81bf2b23f1993a91)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* **community:** 1-click chat button on bot cards + utm tagging ([#2610](https://github.com/HankHuang0516/EClaw/issues/2610)) ([eee97b0](https://github.com/HankHuang0516/EClaw/commit/eee97b0e2e4e74945ec24f218a69a52800b97a66))
* **chat:** add avatar size preference ([#2714](https://github.com/HankHuang0516/EClaw/issues/2714)) ([6fe164a](https://github.com/HankHuang0516/EClaw/commit/6fe164ad8b22fa576d2dd9ad37c0d9fc295b5a83))
* **dashboard:** add Claude and Codex channel guides ([#2640](https://github.com/HankHuang0516/EClaw/issues/2640)) ([c64e4c4](https://github.com/HankHuang0516/EClaw/commit/c64e4c4afc78db58c5cd578f00486dd7b2fd3311))
* **dashboard:** add Claude Code channel guide card ([#2667](https://github.com/HankHuang0516/EClaw/issues/2667)) ([d70d75c](https://github.com/HankHuang0516/EClaw/commit/d70d75c0c8caa8a540358a9aab4556b8c1927a5c))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* **portal:** add entity selector to petdx-browser ([#2602](https://github.com/HankHuang0516/EClaw/issues/2602)) ([3fa067e](https://github.com/HankHuang0516/EClaw/commit/3fa067e00b38829b48a37cecd33ee81a9a1122d9))
* **kanban:** add explicit card links ([#2721](https://github.com/HankHuang0516/EClaw/issues/2721)) ([ef9f812](https://github.com/HankHuang0516/EClaw/commit/ef9f812a3fcf39efd07fd158ce90951bdd045ac7))
* **mindmap:** add GET /api/mindmap/graph force-graph projection ([#2680](https://github.com/HankHuang0516/EClaw/issues/2680)) ([a00b2e7](https://github.com/HankHuang0516/EClaw/commit/a00b2e775af2c4c98cd157f760ad87aeeee469f0)), closes [#2679](https://github.com/HankHuang0516/EClaw/issues/2679) [#2679](https://github.com/HankHuang0516/EClaw/issues/2679)
* **dashboard:** add Hermes channel promo card ([#2708](https://github.com/HankHuang0516/EClaw/issues/2708)) ([337aca1](https://github.com/HankHuang0516/EClaw/commit/337aca153d5a1cd7e888c065f00ae54db7872d91))
* **portal:** add Nagoya 5D4N trip static cross-ref page ([#2689](https://github.com/HankHuang0516/EClaw/issues/2689)) ([2e0efb6](https://github.com/HankHuang0516/EClaw/commit/2e0efb6dcdaff52226cc8854a96747000b12bdff))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **settings:** add rental roster management preview ([#2758](https://github.com/HankHuang0516/EClaw/issues/2758)) ([9706e59](https://github.com/HankHuang0516/EClaw/commit/9706e59ded140a90a6e02348124282bc69d89001))
* **rental:** add renter health chat indicator ([#2690](https://github.com/HankHuang0516/EClaw/issues/2690)) ([36cd2e9](https://github.com/HankHuang0516/EClaw/commit/36cd2e9802be4c7ebb03d3024617fa74aca48ffd))
* **companion:** bridge crafter-station/petdex gallery (1784 pets) ([#2601](https://github.com/HankHuang0516/EClaw/issues/2601)) ([2e245be](https://github.com/HankHuang0516/EClaw/commit/2e245bea6dd47ea7361b927d389188a3c23b6bb3))
* **promo:** chat avatar size feature landing page (self-hosted MP4) ([#2722](https://github.com/HankHuang0516/EClaw/issues/2722)) ([3852210](https://github.com/HankHuang0516/EClaw/commit/3852210d355704d018e3daca6b5f9512a011b210)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **rental:** enforce strict rebind refunds ([#2703](https://github.com/HankHuang0516/EClaw/issues/2703)) ([a1859c5](https://github.com/HankHuang0516/EClaw/commit/a1859c50e6fb3991d7a8051491502d824a14a116))
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **chat:** link card previews to kanban ([#2754](https://github.com/HankHuang0516/EClaw/issues/2754)) ([2261240](https://github.com/HankHuang0516/EClaw/commit/22612402c2e95efb07246629e81a849be41ee9c7))
* **mission:** link notes to kanban cards ([#2723](https://github.com/HankHuang0516/EClaw/issues/2723)) ([b36dc18](https://github.com/HankHuang0516/EClaw/commit/b36dc18f3a8facf12e0b6046351c222f1e99dc55))
* **mindmap:** mission.html link to /portal/mindmap.html + deprecate /api/mission/mindmap ([#2685](https://github.com/HankHuang0516/EClaw/issues/2685)) ([11e297b](https://github.com/HankHuang0516/EClaw/commit/11e297bab1c9b56fcde3027d6500b7c58891bf18)), closes [#2680](https://github.com/HankHuang0516/EClaw/issues/2680) [#2684](https://github.com/HankHuang0516/EClaw/issues/2684)
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **avatar:** petdx render on card-holder my-cards (Phase 1b) ([#2621](https://github.com/HankHuang0516/EClaw/issues/2621)) ([f78ba8b](https://github.com/HankHuang0516/EClaw/commit/f78ba8b18acc426936ab6d8a82ca7541effea00d))
* **avatar:** petdx render on dashboard entity grid / org chart / bindings (Phase 1b) ([#2622](https://github.com/HankHuang0516/EClaw/issues/2622)) ([f417749](https://github.com/HankHuang0516/EClaw/commit/f41774914451048e8cd76e9ae30416a0642e173b)), closes [#2620](https://github.com/HankHuang0516/EClaw/issues/2620) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621)
* **avatar:** petdx render on kanban auto-assign / pulse / comment avatars (Phase 1b) ([#2624](https://github.com/HankHuang0516/EClaw/issues/2624)) ([6bff5f8](https://github.com/HankHuang0516/EClaw/commit/6bff5f80440d0bd91a6b1721cde9478d685c4d46))
* **avatar:** petdx render on mission skill/rule/soul entity dialogs (Phase 1b) ([#2623](https://github.com/HankHuang0516/EClaw/issues/2623)) ([129327b](https://github.com/HankHuang0516/EClaw/commit/129327bc7b91056659f1ab7e8d5e3f5260d951fb))
* **mindmap:** portal/mindmap.html force-graph prototype ([#129](https://github.com/HankHuang0516/EClaw/issues/129)) ([#2681](https://github.com/HankHuang0516/EClaw/issues/2681)) ([0f15e69](https://github.com/HankHuang0516/EClaw/commit/0f15e6930f0697c37fa08f3219edb8f9e499837f)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **portal:** redo nagoya trip page in professional tour-guide style ([#2691](https://github.com/HankHuang0516/EClaw/issues/2691)) ([b2378c0](https://github.com/HankHuang0516/EClaw/commit/b2378c06ee20fa9cccfdceceb1a4c9e0b3072f59))
* **avatar:** render selected petdx companion in chat avatars ([#2620](https://github.com/HankHuang0516/EClaw/issues/2620)) ([0bdd046](https://github.com/HankHuang0516/EClaw/commit/0bdd046fe1b1c428e32edda366ff112c08927f4c))
* **home:** replace native home with WebView hosting dashboard.html ([#2634](https://github.com/HankHuang0516/EClaw/issues/2634)) ([e69ea81](https://github.com/HankHuang0516/EClaw/commit/e69ea8160c239b083a83d6dc83a4f1c3f901c863))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **chat:** support message deep links ([#2719](https://github.com/HankHuang0516/EClaw/issues/2719)) ([2dc0f1e](https://github.com/HankHuang0516/EClaw/commit/2dc0f1eeb259e1a0848db4a03186b989372cd91c))
* **mission:** support note deep links ([#2717](https://github.com/HankHuang0516/EClaw/issues/2717)) ([2efd3a5](https://github.com/HankHuang0516/EClaw/commit/2efd3a5e741217a07c0b0ac54a0ddd010e0ebe23))
* **share-chat:** twitter card + per-bot og:image/twitter:* in SSR ([#2609](https://github.com/HankHuang0516/EClaw/issues/2609)) ([6cdc853](https://github.com/HankHuang0516/EClaw/commit/6cdc853dc884cdb95bd47214942768981f218ae0))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))
* **settings:** wire petdx avatar into channel-account chips ([#2626](https://github.com/HankHuang0516/EClaw/issues/2626)) ([88aec77](https://github.com/HankHuang0516/EClaw/commit/88aec772628c240e97b336bb5820892ad632d1ae))
* **files:** wire petdx avatar into entity filter & per-file badges ([#2627](https://github.com/HankHuang0516/EClaw/issues/2627)) ([5b3e5cc](https://github.com/HankHuang0516/EClaw/commit/5b3e5cc542d9da69bb4e92500fd03a542ea33f00))
* **mindmap:** wrap hardcoded zh-TW UI strings with i18n t() ([#2607](https://github.com/HankHuang0516/EClaw/issues/2607)) ([166af87](https://github.com/HankHuang0516/EClaw/commit/166af8772b2121a24aaf34a83b3de970e9b3b571)), closes [#2606](https://github.com/HankHuang0516/EClaw/issues/2606)


### Performance Improvements

* **mindmap:** force-graph hardening for 1000/2000-node graphs ([#2684](https://github.com/HankHuang0516/EClaw/issues/2684)) ([da8b1c8](https://github.com/HankHuang0516/EClaw/commit/da8b1c8f947ab8bc8fa455c1962a91146623a1fc))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-14)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **notifications:** add kanban_done + kanban_done_auto toggles to Android Settings ([#2636](https://github.com/HankHuang0516/EClaw/issues/2636)) ([a710909](https://github.com/HankHuang0516/EClaw/commit/a7109095e3393b8564e7ef1b23d382a4fbb944b8))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **kanban:** comment input no longer overlaps last comment in card detail (PR [#2678](https://github.com/HankHuang0516/EClaw/issues/2678)) ([fba91fc](https://github.com/HankHuang0516/EClaw/commit/fba91fca15402b453a0db5ee857c0b16e6087055))
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **petdx:** drop dark-grey loading placeholder + preload sprite WEBP ([#2628](https://github.com/HankHuang0516/EClaw/issues/2628)) ([59cef38](https://github.com/HankHuang0516/EClaw/commit/59cef387bd69ca99d7d15c86a1364856d3849ad8)), closes [#1a1a1a](https://github.com/HankHuang0516/EClaw/issues/1a1a1a)
* **entities:** expose botSecret to owner so wallpaper service can poll companions ([#2615](https://github.com/HankHuang0516/EClaw/issues/2615)) ([04470fc](https://github.com/HankHuang0516/EClaw/commit/04470fce8f8c3fce2b1ba8b243e776606f107502))
* **rental:** expose owner_public_code in marketplace so plaza CTA can route ([#2616](https://github.com/HankHuang0516/EClaw/issues/2616)) ([4d1372f](https://github.com/HankHuang0516/EClaw/commit/4d1372f717d93cab65543e87c852e74e9fb67071)), closes [#2610](https://github.com/HankHuang0516/EClaw/issues/2610)
* **mindmap:** fallback to device scope when entityId is null ([#2728](https://github.com/HankHuang0516/EClaw/issues/2728)) ([7572312](https://github.com/HankHuang0516/EClaw/commit/7572312433d3d75fc245eda48a28919ce14bd927))
* **i18n:** fill Spanish drift keys ([#2751](https://github.com/HankHuang0516/EClaw/issues/2751)) ([0ad0ee5](https://github.com/HankHuang0516/EClaw/commit/0ad0ee55f7fac3e6ac46d891539950dab4d553cc))
* **portal:** fit embedded org chart to mobile viewport ([#2674](https://github.com/HankHuang0516/EClaw/issues/2674)) ([1c4e1b4](https://github.com/HankHuang0516/EClaw/commit/1c4e1b413ea7027b4cd4b8ecda981b0d0e12e66b))
* **i18n:** fix 6 trailing-comma syntax errors in 10-locale batch ([#2771](https://github.com/HankHuang0516/EClaw/issues/2771)) ([b27c6ca](https://github.com/HankHuang0516/EClaw/commit/b27c6ca204bf813e406c54ce3a2532a5f1f031b3))
* **uiux:** harden chat previews and roster preview ([#2769](https://github.com/HankHuang0516/EClaw/issues/2769)) ([466d4d3](https://github.com/HankHuang0516/EClaw/commit/466d4d3ef81c628d3f58db64323946053d7bf61c))
* **mention-parser:** ignore @-mentions inside markdown code spans ([#2645](https://github.com/HankHuang0516/EClaw/issues/2645)) ([8da19d4](https://github.com/HankHuang0516/EClaw/commit/8da19d4a79ceb4152bf2144ee0847c61ce3e1def)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **kanban:** lazy-load dependency chips via IntersectionObserver ([#2632](https://github.com/HankHuang0516/EClaw/issues/2632)) ([20586b4](https://github.com/HankHuang0516/EClaw/commit/20586b43357335f9eb6a190c02d58c8e36b58aba)), closes [#2631](https://github.com/HankHuang0516/EClaw/issues/2631)
* **kanban:** make card sorting deterministic ([#2756](https://github.com/HankHuang0516/EClaw/issues/2756)) ([48e2117](https://github.com/HankHuang0516/EClaw/commit/48e2117b64e37f05dc635e0a3b67bfd43cbe48f5))
* **kanban:** notify reviewer on manual /move → review ([#2753](https://github.com/HankHuang0516/EClaw/issues/2753)) ([6cbbb4e](https://github.com/HankHuang0516/EClaw/commit/6cbbb4ee8c0d4d8ad54df2e9b5faaa3699bd530f))
* **wallpaper:** off-load spritesheet fetch to IO so per-petdx sprites actually render ([#2618](https://github.com/HankHuang0516/EClaw/issues/2618)) ([61b832c](https://github.com/HankHuang0516/EClaw/commit/61b832c9fa8a1d0caab810ccc942d85c63349267)), closes [#2615](https://github.com/HankHuang0516/EClaw/issues/2615) [#2577](https://github.com/HankHuang0516/EClaw/issues/2577)
* **portal:** petdx-browser cookie-session fallback for device-login ([#2757](https://github.com/HankHuang0516/EClaw/issues/2757)) ([ca275f4](https://github.com/HankHuang0516/EClaw/commit/ca275f4519835da0c7ad71c588908a18f6f138d8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **i18n:** positional format specifiers for feedback_result_logs (7 locales) ([#2597](https://github.com/HankHuang0516/EClaw/issues/2597)) ([21aedc7](https://github.com/HankHuang0516/EClaw/commit/21aedc7eebc7a2839e340136f38dfdfd4dabb9dc))
* **avatar-petdx:** preserve descriptor across transient API failures (flicker) ([#2625](https://github.com/HankHuang0516/EClaw/issues/2625)) ([7b1c606](https://github.com/HankHuang0516/EClaw/commit/7b1c606514f7698d72ec95cf6c556e4043966186))
* **chat:** preserve scroll anchor while reading history ([#2693](https://github.com/HankHuang0516/EClaw/issues/2693)) ([945fdb7](https://github.com/HankHuang0516/EClaw/commit/945fdb7192b791b31882e1e75568dd8b11e4686f))
* **promo:** pull video embed from /promo-chat-avatar.html ([#2724](https://github.com/HankHuang0516/EClaw/issues/2724)) ([2afabc8](https://github.com/HankHuang0516/EClaw/commit/2afabc8c5ff8b25218a7cb857e8adfa572c8e9d5))
* **portal:** reduce QA-discovered request fanout ([#2656](https://github.com/HankHuang0516/EClaw/issues/2656)) ([1e46d6b](https://github.com/HankHuang0516/EClaw/commit/1e46d6bab61e58c65b452b6503d953f8dddeee75))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **portal:** remove org chart fit scale floor ([#2676](https://github.com/HankHuang0516/EClaw/issues/2676)) ([0f01606](https://github.com/HankHuang0516/EClaw/commit/0f016068b963bb5f800a02f28817c7174979d913))
* **i18n:** rename mm_empty_title → mm_state_empty_title in mindmap.html ([#2683](https://github.com/HankHuang0516/EClaw/issues/2683)) ([c79c109](https://github.com/HankHuang0516/EClaw/commit/c79c109bea23142e8a6d9ace976d105af1280ec9))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **chat:** render mention avatars with companion renderer ([#2633](https://github.com/HankHuang0516/EClaw/issues/2633)) ([03e205f](https://github.com/HankHuang0516/EClaw/commit/03e205f663ecd2c2f443d4009dd5af0093f0bbbb))
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* scheduled audit 2026-05-13 — 6 bugs, XSS, i18n ([#2668](https://github.com/HankHuang0516/EClaw/issues/2668)) ([21dd513](https://github.com/HankHuang0516/EClaw/commit/21dd513b4464738de29164265437435ba6cc4817)), closes [#2605](https://github.com/HankHuang0516/EClaw/issues/2605) [#2608](https://github.com/HankHuang0516/EClaw/issues/2608) [#2600](https://github.com/HankHuang0516/EClaw/issues/2600) [#2599](https://github.com/HankHuang0516/EClaw/issues/2599) [#2598](https://github.com/HankHuang0516/EClaw/issues/2598)
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **chat:** smart-chip preview falls back to inline c.comments when /comments fails (PR [#2677](https://github.com/HankHuang0516/EClaw/issues/2677)) ([7f4dffd](https://github.com/HankHuang0516/EClaw/commit/7f4dffd2c83ea86f296b8fa0610f0e67c9f1af11))
* **wallpaper:** stop Android live wallpaper flashing default lobster on companion change ([#2629](https://github.com/HankHuang0516/EClaw/issues/2629)) ([8b4f66f](https://github.com/HankHuang0516/EClaw/commit/8b4f66fcb335bf43128f924b761b6337c817095b)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **app:** WebView pages honor app-selected locale via ?lang= URL param ([#2672](https://github.com/HankHuang0516/EClaw/issues/2672)) ([8ed8757](https://github.com/HankHuang0516/EClaw/commit/8ed8757aec5bf214e837cc0d81bf2b23f1993a91)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* **community:** 1-click chat button on bot cards + utm tagging ([#2610](https://github.com/HankHuang0516/EClaw/issues/2610)) ([eee97b0](https://github.com/HankHuang0516/EClaw/commit/eee97b0e2e4e74945ec24f218a69a52800b97a66))
* **chat:** add avatar size preference ([#2714](https://github.com/HankHuang0516/EClaw/issues/2714)) ([6fe164a](https://github.com/HankHuang0516/EClaw/commit/6fe164ad8b22fa576d2dd9ad37c0d9fc295b5a83))
* **dashboard:** add Claude and Codex channel guides ([#2640](https://github.com/HankHuang0516/EClaw/issues/2640)) ([c64e4c4](https://github.com/HankHuang0516/EClaw/commit/c64e4c4afc78db58c5cd578f00486dd7b2fd3311))
* **dashboard:** add Claude Code channel guide card ([#2667](https://github.com/HankHuang0516/EClaw/issues/2667)) ([d70d75c](https://github.com/HankHuang0516/EClaw/commit/d70d75c0c8caa8a540358a9aab4556b8c1927a5c))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* **portal:** add entity selector to petdx-browser ([#2602](https://github.com/HankHuang0516/EClaw/issues/2602)) ([3fa067e](https://github.com/HankHuang0516/EClaw/commit/3fa067e00b38829b48a37cecd33ee81a9a1122d9))
* **kanban:** add explicit card links ([#2721](https://github.com/HankHuang0516/EClaw/issues/2721)) ([ef9f812](https://github.com/HankHuang0516/EClaw/commit/ef9f812a3fcf39efd07fd158ce90951bdd045ac7))
* **mindmap:** add GET /api/mindmap/graph force-graph projection ([#2680](https://github.com/HankHuang0516/EClaw/issues/2680)) ([a00b2e7](https://github.com/HankHuang0516/EClaw/commit/a00b2e775af2c4c98cd157f760ad87aeeee469f0)), closes [#2679](https://github.com/HankHuang0516/EClaw/issues/2679) [#2679](https://github.com/HankHuang0516/EClaw/issues/2679)
* **dashboard:** add Hermes channel promo card ([#2708](https://github.com/HankHuang0516/EClaw/issues/2708)) ([337aca1](https://github.com/HankHuang0516/EClaw/commit/337aca153d5a1cd7e888c065f00ae54db7872d91))
* **portal:** add Nagoya 5D4N trip static cross-ref page ([#2689](https://github.com/HankHuang0516/EClaw/issues/2689)) ([2e0efb6](https://github.com/HankHuang0516/EClaw/commit/2e0efb6dcdaff52226cc8854a96747000b12bdff))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **settings:** add rental roster management preview ([#2758](https://github.com/HankHuang0516/EClaw/issues/2758)) ([9706e59](https://github.com/HankHuang0516/EClaw/commit/9706e59ded140a90a6e02348124282bc69d89001))
* **rental:** add renter health chat indicator ([#2690](https://github.com/HankHuang0516/EClaw/issues/2690)) ([36cd2e9](https://github.com/HankHuang0516/EClaw/commit/36cd2e9802be4c7ebb03d3024617fa74aca48ffd))
* **companion:** bridge crafter-station/petdex gallery (1784 pets) ([#2601](https://github.com/HankHuang0516/EClaw/issues/2601)) ([2e245be](https://github.com/HankHuang0516/EClaw/commit/2e245bea6dd47ea7361b927d389188a3c23b6bb3))
* **promo:** chat avatar size feature landing page (self-hosted MP4) ([#2722](https://github.com/HankHuang0516/EClaw/issues/2722)) ([3852210](https://github.com/HankHuang0516/EClaw/commit/3852210d355704d018e3daca6b5f9512a011b210)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **rental:** enforce strict rebind refunds ([#2703](https://github.com/HankHuang0516/EClaw/issues/2703)) ([a1859c5](https://github.com/HankHuang0516/EClaw/commit/a1859c50e6fb3991d7a8051491502d824a14a116))
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **chat:** link card previews to kanban ([#2754](https://github.com/HankHuang0516/EClaw/issues/2754)) ([2261240](https://github.com/HankHuang0516/EClaw/commit/22612402c2e95efb07246629e81a849be41ee9c7))
* **mission:** link notes to kanban cards ([#2723](https://github.com/HankHuang0516/EClaw/issues/2723)) ([b36dc18](https://github.com/HankHuang0516/EClaw/commit/b36dc18f3a8facf12e0b6046351c222f1e99dc55))
* **mindmap:** mission.html link to /portal/mindmap.html + deprecate /api/mission/mindmap ([#2685](https://github.com/HankHuang0516/EClaw/issues/2685)) ([11e297b](https://github.com/HankHuang0516/EClaw/commit/11e297bab1c9b56fcde3027d6500b7c58891bf18)), closes [#2680](https://github.com/HankHuang0516/EClaw/issues/2680) [#2684](https://github.com/HankHuang0516/EClaw/issues/2684)
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **avatar:** petdx render on card-holder my-cards (Phase 1b) ([#2621](https://github.com/HankHuang0516/EClaw/issues/2621)) ([f78ba8b](https://github.com/HankHuang0516/EClaw/commit/f78ba8b18acc426936ab6d8a82ca7541effea00d))
* **avatar:** petdx render on dashboard entity grid / org chart / bindings (Phase 1b) ([#2622](https://github.com/HankHuang0516/EClaw/issues/2622)) ([f417749](https://github.com/HankHuang0516/EClaw/commit/f41774914451048e8cd76e9ae30416a0642e173b)), closes [#2620](https://github.com/HankHuang0516/EClaw/issues/2620) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621)
* **avatar:** petdx render on kanban auto-assign / pulse / comment avatars (Phase 1b) ([#2624](https://github.com/HankHuang0516/EClaw/issues/2624)) ([6bff5f8](https://github.com/HankHuang0516/EClaw/commit/6bff5f80440d0bd91a6b1721cde9478d685c4d46))
* **avatar:** petdx render on mission skill/rule/soul entity dialogs (Phase 1b) ([#2623](https://github.com/HankHuang0516/EClaw/issues/2623)) ([129327b](https://github.com/HankHuang0516/EClaw/commit/129327bc7b91056659f1ab7e8d5e3f5260d951fb))
* **mindmap:** portal/mindmap.html force-graph prototype ([#129](https://github.com/HankHuang0516/EClaw/issues/129)) ([#2681](https://github.com/HankHuang0516/EClaw/issues/2681)) ([0f15e69](https://github.com/HankHuang0516/EClaw/commit/0f15e6930f0697c37fa08f3219edb8f9e499837f)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **portal:** redo nagoya trip page in professional tour-guide style ([#2691](https://github.com/HankHuang0516/EClaw/issues/2691)) ([b2378c0](https://github.com/HankHuang0516/EClaw/commit/b2378c06ee20fa9cccfdceceb1a4c9e0b3072f59))
* **avatar:** render selected petdx companion in chat avatars ([#2620](https://github.com/HankHuang0516/EClaw/issues/2620)) ([0bdd046](https://github.com/HankHuang0516/EClaw/commit/0bdd046fe1b1c428e32edda366ff112c08927f4c))
* **home:** replace native home with WebView hosting dashboard.html ([#2634](https://github.com/HankHuang0516/EClaw/issues/2634)) ([e69ea81](https://github.com/HankHuang0516/EClaw/commit/e69ea8160c239b083a83d6dc83a4f1c3f901c863))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **chat:** support message deep links ([#2719](https://github.com/HankHuang0516/EClaw/issues/2719)) ([2dc0f1e](https://github.com/HankHuang0516/EClaw/commit/2dc0f1eeb259e1a0848db4a03186b989372cd91c))
* **mission:** support note deep links ([#2717](https://github.com/HankHuang0516/EClaw/issues/2717)) ([2efd3a5](https://github.com/HankHuang0516/EClaw/commit/2efd3a5e741217a07c0b0ac54a0ddd010e0ebe23))
* **share-chat:** twitter card + per-bot og:image/twitter:* in SSR ([#2609](https://github.com/HankHuang0516/EClaw/issues/2609)) ([6cdc853](https://github.com/HankHuang0516/EClaw/commit/6cdc853dc884cdb95bd47214942768981f218ae0))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))
* **settings:** wire petdx avatar into channel-account chips ([#2626](https://github.com/HankHuang0516/EClaw/issues/2626)) ([88aec77](https://github.com/HankHuang0516/EClaw/commit/88aec772628c240e97b336bb5820892ad632d1ae))
* **files:** wire petdx avatar into entity filter & per-file badges ([#2627](https://github.com/HankHuang0516/EClaw/issues/2627)) ([5b3e5cc](https://github.com/HankHuang0516/EClaw/commit/5b3e5cc542d9da69bb4e92500fd03a542ea33f00))
* **mindmap:** wrap hardcoded zh-TW UI strings with i18n t() ([#2607](https://github.com/HankHuang0516/EClaw/issues/2607)) ([166af87](https://github.com/HankHuang0516/EClaw/commit/166af8772b2121a24aaf34a83b3de970e9b3b571)), closes [#2606](https://github.com/HankHuang0516/EClaw/issues/2606)


### Performance Improvements

* **mindmap:** force-graph hardening for 1000/2000-node graphs ([#2684](https://github.com/HankHuang0516/EClaw/issues/2684)) ([da8b1c8](https://github.com/HankHuang0516/EClaw/commit/da8b1c8f947ab8bc8fa455c1962a91146623a1fc))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-14)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **notifications:** add kanban_done + kanban_done_auto toggles to Android Settings ([#2636](https://github.com/HankHuang0516/EClaw/issues/2636)) ([a710909](https://github.com/HankHuang0516/EClaw/commit/a7109095e3393b8564e7ef1b23d382a4fbb944b8))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **kanban:** comment input no longer overlaps last comment in card detail (PR [#2678](https://github.com/HankHuang0516/EClaw/issues/2678)) ([fba91fc](https://github.com/HankHuang0516/EClaw/commit/fba91fca15402b453a0db5ee857c0b16e6087055))
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **petdx:** drop dark-grey loading placeholder + preload sprite WEBP ([#2628](https://github.com/HankHuang0516/EClaw/issues/2628)) ([59cef38](https://github.com/HankHuang0516/EClaw/commit/59cef387bd69ca99d7d15c86a1364856d3849ad8)), closes [#1a1a1a](https://github.com/HankHuang0516/EClaw/issues/1a1a1a)
* **entities:** expose botSecret to owner so wallpaper service can poll companions ([#2615](https://github.com/HankHuang0516/EClaw/issues/2615)) ([04470fc](https://github.com/HankHuang0516/EClaw/commit/04470fce8f8c3fce2b1ba8b243e776606f107502))
* **rental:** expose owner_public_code in marketplace so plaza CTA can route ([#2616](https://github.com/HankHuang0516/EClaw/issues/2616)) ([4d1372f](https://github.com/HankHuang0516/EClaw/commit/4d1372f717d93cab65543e87c852e74e9fb67071)), closes [#2610](https://github.com/HankHuang0516/EClaw/issues/2610)
* **mindmap:** fallback to device scope when entityId is null ([#2728](https://github.com/HankHuang0516/EClaw/issues/2728)) ([7572312](https://github.com/HankHuang0516/EClaw/commit/7572312433d3d75fc245eda48a28919ce14bd927))
* **i18n:** fill Spanish drift keys ([#2751](https://github.com/HankHuang0516/EClaw/issues/2751)) ([0ad0ee5](https://github.com/HankHuang0516/EClaw/commit/0ad0ee55f7fac3e6ac46d891539950dab4d553cc))
* **portal:** fit embedded org chart to mobile viewport ([#2674](https://github.com/HankHuang0516/EClaw/issues/2674)) ([1c4e1b4](https://github.com/HankHuang0516/EClaw/commit/1c4e1b413ea7027b4cd4b8ecda981b0d0e12e66b))
* **i18n:** fix 6 trailing-comma syntax errors in 10-locale batch ([#2771](https://github.com/HankHuang0516/EClaw/issues/2771)) ([b27c6ca](https://github.com/HankHuang0516/EClaw/commit/b27c6ca204bf813e406c54ce3a2532a5f1f031b3))
* **uiux:** harden chat previews and roster preview ([#2769](https://github.com/HankHuang0516/EClaw/issues/2769)) ([466d4d3](https://github.com/HankHuang0516/EClaw/commit/466d4d3ef81c628d3f58db64323946053d7bf61c))
* **mention-parser:** ignore @-mentions inside markdown code spans ([#2645](https://github.com/HankHuang0516/EClaw/issues/2645)) ([8da19d4](https://github.com/HankHuang0516/EClaw/commit/8da19d4a79ceb4152bf2144ee0847c61ce3e1def)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **kanban:** lazy-load dependency chips via IntersectionObserver ([#2632](https://github.com/HankHuang0516/EClaw/issues/2632)) ([20586b4](https://github.com/HankHuang0516/EClaw/commit/20586b43357335f9eb6a190c02d58c8e36b58aba)), closes [#2631](https://github.com/HankHuang0516/EClaw/issues/2631)
* **kanban:** make card sorting deterministic ([#2756](https://github.com/HankHuang0516/EClaw/issues/2756)) ([48e2117](https://github.com/HankHuang0516/EClaw/commit/48e2117b64e37f05dc635e0a3b67bfd43cbe48f5))
* **kanban:** notify reviewer on manual /move → review ([#2753](https://github.com/HankHuang0516/EClaw/issues/2753)) ([6cbbb4e](https://github.com/HankHuang0516/EClaw/commit/6cbbb4ee8c0d4d8ad54df2e9b5faaa3699bd530f))
* **wallpaper:** off-load spritesheet fetch to IO so per-petdx sprites actually render ([#2618](https://github.com/HankHuang0516/EClaw/issues/2618)) ([61b832c](https://github.com/HankHuang0516/EClaw/commit/61b832c9fa8a1d0caab810ccc942d85c63349267)), closes [#2615](https://github.com/HankHuang0516/EClaw/issues/2615) [#2577](https://github.com/HankHuang0516/EClaw/issues/2577)
* **portal:** petdx-browser cookie-session fallback for device-login ([#2757](https://github.com/HankHuang0516/EClaw/issues/2757)) ([ca275f4](https://github.com/HankHuang0516/EClaw/commit/ca275f4519835da0c7ad71c588908a18f6f138d8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **i18n:** positional format specifiers for feedback_result_logs (7 locales) ([#2597](https://github.com/HankHuang0516/EClaw/issues/2597)) ([21aedc7](https://github.com/HankHuang0516/EClaw/commit/21aedc7eebc7a2839e340136f38dfdfd4dabb9dc))
* **avatar-petdx:** preserve descriptor across transient API failures (flicker) ([#2625](https://github.com/HankHuang0516/EClaw/issues/2625)) ([7b1c606](https://github.com/HankHuang0516/EClaw/commit/7b1c606514f7698d72ec95cf6c556e4043966186))
* **chat:** preserve scroll anchor while reading history ([#2693](https://github.com/HankHuang0516/EClaw/issues/2693)) ([945fdb7](https://github.com/HankHuang0516/EClaw/commit/945fdb7192b791b31882e1e75568dd8b11e4686f))
* **promo:** pull video embed from /promo-chat-avatar.html ([#2724](https://github.com/HankHuang0516/EClaw/issues/2724)) ([2afabc8](https://github.com/HankHuang0516/EClaw/commit/2afabc8c5ff8b25218a7cb857e8adfa572c8e9d5))
* **portal:** reduce QA-discovered request fanout ([#2656](https://github.com/HankHuang0516/EClaw/issues/2656)) ([1e46d6b](https://github.com/HankHuang0516/EClaw/commit/1e46d6bab61e58c65b452b6503d953f8dddeee75))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **portal:** remove org chart fit scale floor ([#2676](https://github.com/HankHuang0516/EClaw/issues/2676)) ([0f01606](https://github.com/HankHuang0516/EClaw/commit/0f016068b963bb5f800a02f28817c7174979d913))
* **i18n:** rename mm_empty_title → mm_state_empty_title in mindmap.html ([#2683](https://github.com/HankHuang0516/EClaw/issues/2683)) ([c79c109](https://github.com/HankHuang0516/EClaw/commit/c79c109bea23142e8a6d9ace976d105af1280ec9))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **chat:** render mention avatars with companion renderer ([#2633](https://github.com/HankHuang0516/EClaw/issues/2633)) ([03e205f](https://github.com/HankHuang0516/EClaw/commit/03e205f663ecd2c2f443d4009dd5af0093f0bbbb))
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* scheduled audit 2026-05-13 — 6 bugs, XSS, i18n ([#2668](https://github.com/HankHuang0516/EClaw/issues/2668)) ([21dd513](https://github.com/HankHuang0516/EClaw/commit/21dd513b4464738de29164265437435ba6cc4817)), closes [#2605](https://github.com/HankHuang0516/EClaw/issues/2605) [#2608](https://github.com/HankHuang0516/EClaw/issues/2608) [#2600](https://github.com/HankHuang0516/EClaw/issues/2600) [#2599](https://github.com/HankHuang0516/EClaw/issues/2599) [#2598](https://github.com/HankHuang0516/EClaw/issues/2598)
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **chat:** smart-chip preview falls back to inline c.comments when /comments fails (PR [#2677](https://github.com/HankHuang0516/EClaw/issues/2677)) ([7f4dffd](https://github.com/HankHuang0516/EClaw/commit/7f4dffd2c83ea86f296b8fa0610f0e67c9f1af11))
* **wallpaper:** stop Android live wallpaper flashing default lobster on companion change ([#2629](https://github.com/HankHuang0516/EClaw/issues/2629)) ([8b4f66f](https://github.com/HankHuang0516/EClaw/commit/8b4f66fcb335bf43128f924b761b6337c817095b)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **app:** WebView pages honor app-selected locale via ?lang= URL param ([#2672](https://github.com/HankHuang0516/EClaw/issues/2672)) ([8ed8757](https://github.com/HankHuang0516/EClaw/commit/8ed8757aec5bf214e837cc0d81bf2b23f1993a91)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* **community:** 1-click chat button on bot cards + utm tagging ([#2610](https://github.com/HankHuang0516/EClaw/issues/2610)) ([eee97b0](https://github.com/HankHuang0516/EClaw/commit/eee97b0e2e4e74945ec24f218a69a52800b97a66))
* **chat:** add avatar size preference ([#2714](https://github.com/HankHuang0516/EClaw/issues/2714)) ([6fe164a](https://github.com/HankHuang0516/EClaw/commit/6fe164ad8b22fa576d2dd9ad37c0d9fc295b5a83))
* **dashboard:** add Claude and Codex channel guides ([#2640](https://github.com/HankHuang0516/EClaw/issues/2640)) ([c64e4c4](https://github.com/HankHuang0516/EClaw/commit/c64e4c4afc78db58c5cd578f00486dd7b2fd3311))
* **dashboard:** add Claude Code channel guide card ([#2667](https://github.com/HankHuang0516/EClaw/issues/2667)) ([d70d75c](https://github.com/HankHuang0516/EClaw/commit/d70d75c0c8caa8a540358a9aab4556b8c1927a5c))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* **portal:** add entity selector to petdx-browser ([#2602](https://github.com/HankHuang0516/EClaw/issues/2602)) ([3fa067e](https://github.com/HankHuang0516/EClaw/commit/3fa067e00b38829b48a37cecd33ee81a9a1122d9))
* **kanban:** add explicit card links ([#2721](https://github.com/HankHuang0516/EClaw/issues/2721)) ([ef9f812](https://github.com/HankHuang0516/EClaw/commit/ef9f812a3fcf39efd07fd158ce90951bdd045ac7))
* **mindmap:** add GET /api/mindmap/graph force-graph projection ([#2680](https://github.com/HankHuang0516/EClaw/issues/2680)) ([a00b2e7](https://github.com/HankHuang0516/EClaw/commit/a00b2e775af2c4c98cd157f760ad87aeeee469f0)), closes [#2679](https://github.com/HankHuang0516/EClaw/issues/2679) [#2679](https://github.com/HankHuang0516/EClaw/issues/2679)
* **dashboard:** add Hermes channel promo card ([#2708](https://github.com/HankHuang0516/EClaw/issues/2708)) ([337aca1](https://github.com/HankHuang0516/EClaw/commit/337aca153d5a1cd7e888c065f00ae54db7872d91))
* **portal:** add Nagoya 5D4N trip static cross-ref page ([#2689](https://github.com/HankHuang0516/EClaw/issues/2689)) ([2e0efb6](https://github.com/HankHuang0516/EClaw/commit/2e0efb6dcdaff52226cc8854a96747000b12bdff))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **settings:** add rental roster management preview ([#2758](https://github.com/HankHuang0516/EClaw/issues/2758)) ([9706e59](https://github.com/HankHuang0516/EClaw/commit/9706e59ded140a90a6e02348124282bc69d89001))
* **rental:** add renter health chat indicator ([#2690](https://github.com/HankHuang0516/EClaw/issues/2690)) ([36cd2e9](https://github.com/HankHuang0516/EClaw/commit/36cd2e9802be4c7ebb03d3024617fa74aca48ffd))
* **companion:** bridge crafter-station/petdex gallery (1784 pets) ([#2601](https://github.com/HankHuang0516/EClaw/issues/2601)) ([2e245be](https://github.com/HankHuang0516/EClaw/commit/2e245bea6dd47ea7361b927d389188a3c23b6bb3))
* **promo:** chat avatar size feature landing page (self-hosted MP4) ([#2722](https://github.com/HankHuang0516/EClaw/issues/2722)) ([3852210](https://github.com/HankHuang0516/EClaw/commit/3852210d355704d018e3daca6b5f9512a011b210)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **rental:** enforce strict rebind refunds ([#2703](https://github.com/HankHuang0516/EClaw/issues/2703)) ([a1859c5](https://github.com/HankHuang0516/EClaw/commit/a1859c50e6fb3991d7a8051491502d824a14a116))
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **chat:** link card previews to kanban ([#2754](https://github.com/HankHuang0516/EClaw/issues/2754)) ([2261240](https://github.com/HankHuang0516/EClaw/commit/22612402c2e95efb07246629e81a849be41ee9c7))
* **mission:** link notes to kanban cards ([#2723](https://github.com/HankHuang0516/EClaw/issues/2723)) ([b36dc18](https://github.com/HankHuang0516/EClaw/commit/b36dc18f3a8facf12e0b6046351c222f1e99dc55))
* **mindmap:** mission.html link to /portal/mindmap.html + deprecate /api/mission/mindmap ([#2685](https://github.com/HankHuang0516/EClaw/issues/2685)) ([11e297b](https://github.com/HankHuang0516/EClaw/commit/11e297bab1c9b56fcde3027d6500b7c58891bf18)), closes [#2680](https://github.com/HankHuang0516/EClaw/issues/2680) [#2684](https://github.com/HankHuang0516/EClaw/issues/2684)
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **avatar:** petdx render on card-holder my-cards (Phase 1b) ([#2621](https://github.com/HankHuang0516/EClaw/issues/2621)) ([f78ba8b](https://github.com/HankHuang0516/EClaw/commit/f78ba8b18acc426936ab6d8a82ca7541effea00d))
* **avatar:** petdx render on dashboard entity grid / org chart / bindings (Phase 1b) ([#2622](https://github.com/HankHuang0516/EClaw/issues/2622)) ([f417749](https://github.com/HankHuang0516/EClaw/commit/f41774914451048e8cd76e9ae30416a0642e173b)), closes [#2620](https://github.com/HankHuang0516/EClaw/issues/2620) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621)
* **avatar:** petdx render on kanban auto-assign / pulse / comment avatars (Phase 1b) ([#2624](https://github.com/HankHuang0516/EClaw/issues/2624)) ([6bff5f8](https://github.com/HankHuang0516/EClaw/commit/6bff5f80440d0bd91a6b1721cde9478d685c4d46))
* **avatar:** petdx render on mission skill/rule/soul entity dialogs (Phase 1b) ([#2623](https://github.com/HankHuang0516/EClaw/issues/2623)) ([129327b](https://github.com/HankHuang0516/EClaw/commit/129327bc7b91056659f1ab7e8d5e3f5260d951fb))
* **mindmap:** portal/mindmap.html force-graph prototype ([#129](https://github.com/HankHuang0516/EClaw/issues/129)) ([#2681](https://github.com/HankHuang0516/EClaw/issues/2681)) ([0f15e69](https://github.com/HankHuang0516/EClaw/commit/0f15e6930f0697c37fa08f3219edb8f9e499837f)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **portal:** redo nagoya trip page in professional tour-guide style ([#2691](https://github.com/HankHuang0516/EClaw/issues/2691)) ([b2378c0](https://github.com/HankHuang0516/EClaw/commit/b2378c06ee20fa9cccfdceceb1a4c9e0b3072f59))
* **avatar:** render selected petdx companion in chat avatars ([#2620](https://github.com/HankHuang0516/EClaw/issues/2620)) ([0bdd046](https://github.com/HankHuang0516/EClaw/commit/0bdd046fe1b1c428e32edda366ff112c08927f4c))
* **home:** replace native home with WebView hosting dashboard.html ([#2634](https://github.com/HankHuang0516/EClaw/issues/2634)) ([e69ea81](https://github.com/HankHuang0516/EClaw/commit/e69ea8160c239b083a83d6dc83a4f1c3f901c863))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **chat:** support message deep links ([#2719](https://github.com/HankHuang0516/EClaw/issues/2719)) ([2dc0f1e](https://github.com/HankHuang0516/EClaw/commit/2dc0f1eeb259e1a0848db4a03186b989372cd91c))
* **mission:** support note deep links ([#2717](https://github.com/HankHuang0516/EClaw/issues/2717)) ([2efd3a5](https://github.com/HankHuang0516/EClaw/commit/2efd3a5e741217a07c0b0ac54a0ddd010e0ebe23))
* **share-chat:** twitter card + per-bot og:image/twitter:* in SSR ([#2609](https://github.com/HankHuang0516/EClaw/issues/2609)) ([6cdc853](https://github.com/HankHuang0516/EClaw/commit/6cdc853dc884cdb95bd47214942768981f218ae0))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))
* **settings:** wire petdx avatar into channel-account chips ([#2626](https://github.com/HankHuang0516/EClaw/issues/2626)) ([88aec77](https://github.com/HankHuang0516/EClaw/commit/88aec772628c240e97b336bb5820892ad632d1ae))
* **files:** wire petdx avatar into entity filter & per-file badges ([#2627](https://github.com/HankHuang0516/EClaw/issues/2627)) ([5b3e5cc](https://github.com/HankHuang0516/EClaw/commit/5b3e5cc542d9da69bb4e92500fd03a542ea33f00))
* **mindmap:** wrap hardcoded zh-TW UI strings with i18n t() ([#2607](https://github.com/HankHuang0516/EClaw/issues/2607)) ([166af87](https://github.com/HankHuang0516/EClaw/commit/166af8772b2121a24aaf34a83b3de970e9b3b571)), closes [#2606](https://github.com/HankHuang0516/EClaw/issues/2606)


### Performance Improvements

* **mindmap:** force-graph hardening for 1000/2000-node graphs ([#2684](https://github.com/HankHuang0516/EClaw/issues/2684)) ([da8b1c8](https://github.com/HankHuang0516/EClaw/commit/da8b1c8f947ab8bc8fa455c1962a91146623a1fc))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-13)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **notifications:** add kanban_done + kanban_done_auto toggles to Android Settings ([#2636](https://github.com/HankHuang0516/EClaw/issues/2636)) ([a710909](https://github.com/HankHuang0516/EClaw/commit/a7109095e3393b8564e7ef1b23d382a4fbb944b8))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **kanban:** comment input no longer overlaps last comment in card detail (PR [#2678](https://github.com/HankHuang0516/EClaw/issues/2678)) ([fba91fc](https://github.com/HankHuang0516/EClaw/commit/fba91fca15402b453a0db5ee857c0b16e6087055))
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **petdx:** drop dark-grey loading placeholder + preload sprite WEBP ([#2628](https://github.com/HankHuang0516/EClaw/issues/2628)) ([59cef38](https://github.com/HankHuang0516/EClaw/commit/59cef387bd69ca99d7d15c86a1364856d3849ad8)), closes [#1a1a1a](https://github.com/HankHuang0516/EClaw/issues/1a1a1a)
* **entities:** expose botSecret to owner so wallpaper service can poll companions ([#2615](https://github.com/HankHuang0516/EClaw/issues/2615)) ([04470fc](https://github.com/HankHuang0516/EClaw/commit/04470fce8f8c3fce2b1ba8b243e776606f107502))
* **rental:** expose owner_public_code in marketplace so plaza CTA can route ([#2616](https://github.com/HankHuang0516/EClaw/issues/2616)) ([4d1372f](https://github.com/HankHuang0516/EClaw/commit/4d1372f717d93cab65543e87c852e74e9fb67071)), closes [#2610](https://github.com/HankHuang0516/EClaw/issues/2610)
* **mindmap:** fallback to device scope when entityId is null ([#2728](https://github.com/HankHuang0516/EClaw/issues/2728)) ([7572312](https://github.com/HankHuang0516/EClaw/commit/7572312433d3d75fc245eda48a28919ce14bd927))
* **i18n:** fill Spanish drift keys ([#2751](https://github.com/HankHuang0516/EClaw/issues/2751)) ([0ad0ee5](https://github.com/HankHuang0516/EClaw/commit/0ad0ee55f7fac3e6ac46d891539950dab4d553cc))
* **portal:** fit embedded org chart to mobile viewport ([#2674](https://github.com/HankHuang0516/EClaw/issues/2674)) ([1c4e1b4](https://github.com/HankHuang0516/EClaw/commit/1c4e1b413ea7027b4cd4b8ecda981b0d0e12e66b))
* **i18n:** fix 6 trailing-comma syntax errors in 10-locale batch ([#2771](https://github.com/HankHuang0516/EClaw/issues/2771)) ([b27c6ca](https://github.com/HankHuang0516/EClaw/commit/b27c6ca204bf813e406c54ce3a2532a5f1f031b3))
* **uiux:** harden chat previews and roster preview ([#2769](https://github.com/HankHuang0516/EClaw/issues/2769)) ([466d4d3](https://github.com/HankHuang0516/EClaw/commit/466d4d3ef81c628d3f58db64323946053d7bf61c))
* **mention-parser:** ignore @-mentions inside markdown code spans ([#2645](https://github.com/HankHuang0516/EClaw/issues/2645)) ([8da19d4](https://github.com/HankHuang0516/EClaw/commit/8da19d4a79ceb4152bf2144ee0847c61ce3e1def)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **kanban:** lazy-load dependency chips via IntersectionObserver ([#2632](https://github.com/HankHuang0516/EClaw/issues/2632)) ([20586b4](https://github.com/HankHuang0516/EClaw/commit/20586b43357335f9eb6a190c02d58c8e36b58aba)), closes [#2631](https://github.com/HankHuang0516/EClaw/issues/2631)
* **kanban:** make card sorting deterministic ([#2756](https://github.com/HankHuang0516/EClaw/issues/2756)) ([48e2117](https://github.com/HankHuang0516/EClaw/commit/48e2117b64e37f05dc635e0a3b67bfd43cbe48f5))
* **kanban:** notify reviewer on manual /move → review ([#2753](https://github.com/HankHuang0516/EClaw/issues/2753)) ([6cbbb4e](https://github.com/HankHuang0516/EClaw/commit/6cbbb4ee8c0d4d8ad54df2e9b5faaa3699bd530f))
* **wallpaper:** off-load spritesheet fetch to IO so per-petdx sprites actually render ([#2618](https://github.com/HankHuang0516/EClaw/issues/2618)) ([61b832c](https://github.com/HankHuang0516/EClaw/commit/61b832c9fa8a1d0caab810ccc942d85c63349267)), closes [#2615](https://github.com/HankHuang0516/EClaw/issues/2615) [#2577](https://github.com/HankHuang0516/EClaw/issues/2577)
* **portal:** petdx-browser cookie-session fallback for device-login ([#2757](https://github.com/HankHuang0516/EClaw/issues/2757)) ([ca275f4](https://github.com/HankHuang0516/EClaw/commit/ca275f4519835da0c7ad71c588908a18f6f138d8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **i18n:** positional format specifiers for feedback_result_logs (7 locales) ([#2597](https://github.com/HankHuang0516/EClaw/issues/2597)) ([21aedc7](https://github.com/HankHuang0516/EClaw/commit/21aedc7eebc7a2839e340136f38dfdfd4dabb9dc))
* **avatar-petdx:** preserve descriptor across transient API failures (flicker) ([#2625](https://github.com/HankHuang0516/EClaw/issues/2625)) ([7b1c606](https://github.com/HankHuang0516/EClaw/commit/7b1c606514f7698d72ec95cf6c556e4043966186))
* **chat:** preserve scroll anchor while reading history ([#2693](https://github.com/HankHuang0516/EClaw/issues/2693)) ([945fdb7](https://github.com/HankHuang0516/EClaw/commit/945fdb7192b791b31882e1e75568dd8b11e4686f))
* **promo:** pull video embed from /promo-chat-avatar.html ([#2724](https://github.com/HankHuang0516/EClaw/issues/2724)) ([2afabc8](https://github.com/HankHuang0516/EClaw/commit/2afabc8c5ff8b25218a7cb857e8adfa572c8e9d5))
* **portal:** reduce QA-discovered request fanout ([#2656](https://github.com/HankHuang0516/EClaw/issues/2656)) ([1e46d6b](https://github.com/HankHuang0516/EClaw/commit/1e46d6bab61e58c65b452b6503d953f8dddeee75))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **portal:** remove org chart fit scale floor ([#2676](https://github.com/HankHuang0516/EClaw/issues/2676)) ([0f01606](https://github.com/HankHuang0516/EClaw/commit/0f016068b963bb5f800a02f28817c7174979d913))
* **i18n:** rename mm_empty_title → mm_state_empty_title in mindmap.html ([#2683](https://github.com/HankHuang0516/EClaw/issues/2683)) ([c79c109](https://github.com/HankHuang0516/EClaw/commit/c79c109bea23142e8a6d9ace976d105af1280ec9))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **chat:** render mention avatars with companion renderer ([#2633](https://github.com/HankHuang0516/EClaw/issues/2633)) ([03e205f](https://github.com/HankHuang0516/EClaw/commit/03e205f663ecd2c2f443d4009dd5af0093f0bbbb))
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* scheduled audit 2026-05-13 — 6 bugs, XSS, i18n ([#2668](https://github.com/HankHuang0516/EClaw/issues/2668)) ([21dd513](https://github.com/HankHuang0516/EClaw/commit/21dd513b4464738de29164265437435ba6cc4817)), closes [#2605](https://github.com/HankHuang0516/EClaw/issues/2605) [#2608](https://github.com/HankHuang0516/EClaw/issues/2608) [#2600](https://github.com/HankHuang0516/EClaw/issues/2600) [#2599](https://github.com/HankHuang0516/EClaw/issues/2599) [#2598](https://github.com/HankHuang0516/EClaw/issues/2598)
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **chat:** smart-chip preview falls back to inline c.comments when /comments fails (PR [#2677](https://github.com/HankHuang0516/EClaw/issues/2677)) ([7f4dffd](https://github.com/HankHuang0516/EClaw/commit/7f4dffd2c83ea86f296b8fa0610f0e67c9f1af11))
* **wallpaper:** stop Android live wallpaper flashing default lobster on companion change ([#2629](https://github.com/HankHuang0516/EClaw/issues/2629)) ([8b4f66f](https://github.com/HankHuang0516/EClaw/commit/8b4f66fcb335bf43128f924b761b6337c817095b)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **app:** WebView pages honor app-selected locale via ?lang= URL param ([#2672](https://github.com/HankHuang0516/EClaw/issues/2672)) ([8ed8757](https://github.com/HankHuang0516/EClaw/commit/8ed8757aec5bf214e837cc0d81bf2b23f1993a91)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* **community:** 1-click chat button on bot cards + utm tagging ([#2610](https://github.com/HankHuang0516/EClaw/issues/2610)) ([eee97b0](https://github.com/HankHuang0516/EClaw/commit/eee97b0e2e4e74945ec24f218a69a52800b97a66))
* **chat:** add avatar size preference ([#2714](https://github.com/HankHuang0516/EClaw/issues/2714)) ([6fe164a](https://github.com/HankHuang0516/EClaw/commit/6fe164ad8b22fa576d2dd9ad37c0d9fc295b5a83))
* **dashboard:** add Claude and Codex channel guides ([#2640](https://github.com/HankHuang0516/EClaw/issues/2640)) ([c64e4c4](https://github.com/HankHuang0516/EClaw/commit/c64e4c4afc78db58c5cd578f00486dd7b2fd3311))
* **dashboard:** add Claude Code channel guide card ([#2667](https://github.com/HankHuang0516/EClaw/issues/2667)) ([d70d75c](https://github.com/HankHuang0516/EClaw/commit/d70d75c0c8caa8a540358a9aab4556b8c1927a5c))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* **portal:** add entity selector to petdx-browser ([#2602](https://github.com/HankHuang0516/EClaw/issues/2602)) ([3fa067e](https://github.com/HankHuang0516/EClaw/commit/3fa067e00b38829b48a37cecd33ee81a9a1122d9))
* **kanban:** add explicit card links ([#2721](https://github.com/HankHuang0516/EClaw/issues/2721)) ([ef9f812](https://github.com/HankHuang0516/EClaw/commit/ef9f812a3fcf39efd07fd158ce90951bdd045ac7))
* **mindmap:** add GET /api/mindmap/graph force-graph projection ([#2680](https://github.com/HankHuang0516/EClaw/issues/2680)) ([a00b2e7](https://github.com/HankHuang0516/EClaw/commit/a00b2e775af2c4c98cd157f760ad87aeeee469f0)), closes [#2679](https://github.com/HankHuang0516/EClaw/issues/2679) [#2679](https://github.com/HankHuang0516/EClaw/issues/2679)
* **dashboard:** add Hermes channel promo card ([#2708](https://github.com/HankHuang0516/EClaw/issues/2708)) ([337aca1](https://github.com/HankHuang0516/EClaw/commit/337aca153d5a1cd7e888c065f00ae54db7872d91))
* **portal:** add Nagoya 5D4N trip static cross-ref page ([#2689](https://github.com/HankHuang0516/EClaw/issues/2689)) ([2e0efb6](https://github.com/HankHuang0516/EClaw/commit/2e0efb6dcdaff52226cc8854a96747000b12bdff))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **settings:** add rental roster management preview ([#2758](https://github.com/HankHuang0516/EClaw/issues/2758)) ([9706e59](https://github.com/HankHuang0516/EClaw/commit/9706e59ded140a90a6e02348124282bc69d89001))
* **rental:** add renter health chat indicator ([#2690](https://github.com/HankHuang0516/EClaw/issues/2690)) ([36cd2e9](https://github.com/HankHuang0516/EClaw/commit/36cd2e9802be4c7ebb03d3024617fa74aca48ffd))
* **companion:** bridge crafter-station/petdex gallery (1784 pets) ([#2601](https://github.com/HankHuang0516/EClaw/issues/2601)) ([2e245be](https://github.com/HankHuang0516/EClaw/commit/2e245bea6dd47ea7361b927d389188a3c23b6bb3))
* **promo:** chat avatar size feature landing page (self-hosted MP4) ([#2722](https://github.com/HankHuang0516/EClaw/issues/2722)) ([3852210](https://github.com/HankHuang0516/EClaw/commit/3852210d355704d018e3daca6b5f9512a011b210)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **rental:** enforce strict rebind refunds ([#2703](https://github.com/HankHuang0516/EClaw/issues/2703)) ([a1859c5](https://github.com/HankHuang0516/EClaw/commit/a1859c50e6fb3991d7a8051491502d824a14a116))
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **chat:** link card previews to kanban ([#2754](https://github.com/HankHuang0516/EClaw/issues/2754)) ([2261240](https://github.com/HankHuang0516/EClaw/commit/22612402c2e95efb07246629e81a849be41ee9c7))
* **mission:** link notes to kanban cards ([#2723](https://github.com/HankHuang0516/EClaw/issues/2723)) ([b36dc18](https://github.com/HankHuang0516/EClaw/commit/b36dc18f3a8facf12e0b6046351c222f1e99dc55))
* **mindmap:** mission.html link to /portal/mindmap.html + deprecate /api/mission/mindmap ([#2685](https://github.com/HankHuang0516/EClaw/issues/2685)) ([11e297b](https://github.com/HankHuang0516/EClaw/commit/11e297bab1c9b56fcde3027d6500b7c58891bf18)), closes [#2680](https://github.com/HankHuang0516/EClaw/issues/2680) [#2684](https://github.com/HankHuang0516/EClaw/issues/2684)
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **avatar:** petdx render on card-holder my-cards (Phase 1b) ([#2621](https://github.com/HankHuang0516/EClaw/issues/2621)) ([f78ba8b](https://github.com/HankHuang0516/EClaw/commit/f78ba8b18acc426936ab6d8a82ca7541effea00d))
* **avatar:** petdx render on dashboard entity grid / org chart / bindings (Phase 1b) ([#2622](https://github.com/HankHuang0516/EClaw/issues/2622)) ([f417749](https://github.com/HankHuang0516/EClaw/commit/f41774914451048e8cd76e9ae30416a0642e173b)), closes [#2620](https://github.com/HankHuang0516/EClaw/issues/2620) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621)
* **avatar:** petdx render on kanban auto-assign / pulse / comment avatars (Phase 1b) ([#2624](https://github.com/HankHuang0516/EClaw/issues/2624)) ([6bff5f8](https://github.com/HankHuang0516/EClaw/commit/6bff5f80440d0bd91a6b1721cde9478d685c4d46))
* **avatar:** petdx render on mission skill/rule/soul entity dialogs (Phase 1b) ([#2623](https://github.com/HankHuang0516/EClaw/issues/2623)) ([129327b](https://github.com/HankHuang0516/EClaw/commit/129327bc7b91056659f1ab7e8d5e3f5260d951fb))
* **mindmap:** portal/mindmap.html force-graph prototype ([#129](https://github.com/HankHuang0516/EClaw/issues/129)) ([#2681](https://github.com/HankHuang0516/EClaw/issues/2681)) ([0f15e69](https://github.com/HankHuang0516/EClaw/commit/0f15e6930f0697c37fa08f3219edb8f9e499837f)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **portal:** redo nagoya trip page in professional tour-guide style ([#2691](https://github.com/HankHuang0516/EClaw/issues/2691)) ([b2378c0](https://github.com/HankHuang0516/EClaw/commit/b2378c06ee20fa9cccfdceceb1a4c9e0b3072f59))
* **avatar:** render selected petdx companion in chat avatars ([#2620](https://github.com/HankHuang0516/EClaw/issues/2620)) ([0bdd046](https://github.com/HankHuang0516/EClaw/commit/0bdd046fe1b1c428e32edda366ff112c08927f4c))
* **home:** replace native home with WebView hosting dashboard.html ([#2634](https://github.com/HankHuang0516/EClaw/issues/2634)) ([e69ea81](https://github.com/HankHuang0516/EClaw/commit/e69ea8160c239b083a83d6dc83a4f1c3f901c863))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **chat:** support message deep links ([#2719](https://github.com/HankHuang0516/EClaw/issues/2719)) ([2dc0f1e](https://github.com/HankHuang0516/EClaw/commit/2dc0f1eeb259e1a0848db4a03186b989372cd91c))
* **mission:** support note deep links ([#2717](https://github.com/HankHuang0516/EClaw/issues/2717)) ([2efd3a5](https://github.com/HankHuang0516/EClaw/commit/2efd3a5e741217a07c0b0ac54a0ddd010e0ebe23))
* **share-chat:** twitter card + per-bot og:image/twitter:* in SSR ([#2609](https://github.com/HankHuang0516/EClaw/issues/2609)) ([6cdc853](https://github.com/HankHuang0516/EClaw/commit/6cdc853dc884cdb95bd47214942768981f218ae0))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))
* **settings:** wire petdx avatar into channel-account chips ([#2626](https://github.com/HankHuang0516/EClaw/issues/2626)) ([88aec77](https://github.com/HankHuang0516/EClaw/commit/88aec772628c240e97b336bb5820892ad632d1ae))
* **files:** wire petdx avatar into entity filter & per-file badges ([#2627](https://github.com/HankHuang0516/EClaw/issues/2627)) ([5b3e5cc](https://github.com/HankHuang0516/EClaw/commit/5b3e5cc542d9da69bb4e92500fd03a542ea33f00))
* **mindmap:** wrap hardcoded zh-TW UI strings with i18n t() ([#2607](https://github.com/HankHuang0516/EClaw/issues/2607)) ([166af87](https://github.com/HankHuang0516/EClaw/commit/166af8772b2121a24aaf34a83b3de970e9b3b571)), closes [#2606](https://github.com/HankHuang0516/EClaw/issues/2606)


### Performance Improvements

* **mindmap:** force-graph hardening for 1000/2000-node graphs ([#2684](https://github.com/HankHuang0516/EClaw/issues/2684)) ([da8b1c8](https://github.com/HankHuang0516/EClaw/commit/da8b1c8f947ab8bc8fa455c1962a91146623a1fc))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-13)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **notifications:** add kanban_done + kanban_done_auto toggles to Android Settings ([#2636](https://github.com/HankHuang0516/EClaw/issues/2636)) ([a710909](https://github.com/HankHuang0516/EClaw/commit/a7109095e3393b8564e7ef1b23d382a4fbb944b8))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **kanban:** comment input no longer overlaps last comment in card detail (PR [#2678](https://github.com/HankHuang0516/EClaw/issues/2678)) ([fba91fc](https://github.com/HankHuang0516/EClaw/commit/fba91fca15402b453a0db5ee857c0b16e6087055))
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **petdx:** drop dark-grey loading placeholder + preload sprite WEBP ([#2628](https://github.com/HankHuang0516/EClaw/issues/2628)) ([59cef38](https://github.com/HankHuang0516/EClaw/commit/59cef387bd69ca99d7d15c86a1364856d3849ad8)), closes [#1a1a1a](https://github.com/HankHuang0516/EClaw/issues/1a1a1a)
* **entities:** expose botSecret to owner so wallpaper service can poll companions ([#2615](https://github.com/HankHuang0516/EClaw/issues/2615)) ([04470fc](https://github.com/HankHuang0516/EClaw/commit/04470fce8f8c3fce2b1ba8b243e776606f107502))
* **rental:** expose owner_public_code in marketplace so plaza CTA can route ([#2616](https://github.com/HankHuang0516/EClaw/issues/2616)) ([4d1372f](https://github.com/HankHuang0516/EClaw/commit/4d1372f717d93cab65543e87c852e74e9fb67071)), closes [#2610](https://github.com/HankHuang0516/EClaw/issues/2610)
* **mindmap:** fallback to device scope when entityId is null ([#2728](https://github.com/HankHuang0516/EClaw/issues/2728)) ([7572312](https://github.com/HankHuang0516/EClaw/commit/7572312433d3d75fc245eda48a28919ce14bd927))
* **i18n:** fill Spanish drift keys ([#2751](https://github.com/HankHuang0516/EClaw/issues/2751)) ([0ad0ee5](https://github.com/HankHuang0516/EClaw/commit/0ad0ee55f7fac3e6ac46d891539950dab4d553cc))
* **portal:** fit embedded org chart to mobile viewport ([#2674](https://github.com/HankHuang0516/EClaw/issues/2674)) ([1c4e1b4](https://github.com/HankHuang0516/EClaw/commit/1c4e1b413ea7027b4cd4b8ecda981b0d0e12e66b))
* **i18n:** fix 6 trailing-comma syntax errors in 10-locale batch ([#2771](https://github.com/HankHuang0516/EClaw/issues/2771)) ([b27c6ca](https://github.com/HankHuang0516/EClaw/commit/b27c6ca204bf813e406c54ce3a2532a5f1f031b3))
* **uiux:** harden chat previews and roster preview ([#2769](https://github.com/HankHuang0516/EClaw/issues/2769)) ([466d4d3](https://github.com/HankHuang0516/EClaw/commit/466d4d3ef81c628d3f58db64323946053d7bf61c))
* **mention-parser:** ignore @-mentions inside markdown code spans ([#2645](https://github.com/HankHuang0516/EClaw/issues/2645)) ([8da19d4](https://github.com/HankHuang0516/EClaw/commit/8da19d4a79ceb4152bf2144ee0847c61ce3e1def)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **kanban:** lazy-load dependency chips via IntersectionObserver ([#2632](https://github.com/HankHuang0516/EClaw/issues/2632)) ([20586b4](https://github.com/HankHuang0516/EClaw/commit/20586b43357335f9eb6a190c02d58c8e36b58aba)), closes [#2631](https://github.com/HankHuang0516/EClaw/issues/2631)
* **kanban:** make card sorting deterministic ([#2756](https://github.com/HankHuang0516/EClaw/issues/2756)) ([48e2117](https://github.com/HankHuang0516/EClaw/commit/48e2117b64e37f05dc635e0a3b67bfd43cbe48f5))
* **kanban:** notify reviewer on manual /move → review ([#2753](https://github.com/HankHuang0516/EClaw/issues/2753)) ([6cbbb4e](https://github.com/HankHuang0516/EClaw/commit/6cbbb4ee8c0d4d8ad54df2e9b5faaa3699bd530f))
* **wallpaper:** off-load spritesheet fetch to IO so per-petdx sprites actually render ([#2618](https://github.com/HankHuang0516/EClaw/issues/2618)) ([61b832c](https://github.com/HankHuang0516/EClaw/commit/61b832c9fa8a1d0caab810ccc942d85c63349267)), closes [#2615](https://github.com/HankHuang0516/EClaw/issues/2615) [#2577](https://github.com/HankHuang0516/EClaw/issues/2577)
* **portal:** petdx-browser cookie-session fallback for device-login ([#2757](https://github.com/HankHuang0516/EClaw/issues/2757)) ([ca275f4](https://github.com/HankHuang0516/EClaw/commit/ca275f4519835da0c7ad71c588908a18f6f138d8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **i18n:** positional format specifiers for feedback_result_logs (7 locales) ([#2597](https://github.com/HankHuang0516/EClaw/issues/2597)) ([21aedc7](https://github.com/HankHuang0516/EClaw/commit/21aedc7eebc7a2839e340136f38dfdfd4dabb9dc))
* **avatar-petdx:** preserve descriptor across transient API failures (flicker) ([#2625](https://github.com/HankHuang0516/EClaw/issues/2625)) ([7b1c606](https://github.com/HankHuang0516/EClaw/commit/7b1c606514f7698d72ec95cf6c556e4043966186))
* **chat:** preserve scroll anchor while reading history ([#2693](https://github.com/HankHuang0516/EClaw/issues/2693)) ([945fdb7](https://github.com/HankHuang0516/EClaw/commit/945fdb7192b791b31882e1e75568dd8b11e4686f))
* **promo:** pull video embed from /promo-chat-avatar.html ([#2724](https://github.com/HankHuang0516/EClaw/issues/2724)) ([2afabc8](https://github.com/HankHuang0516/EClaw/commit/2afabc8c5ff8b25218a7cb857e8adfa572c8e9d5))
* **portal:** reduce QA-discovered request fanout ([#2656](https://github.com/HankHuang0516/EClaw/issues/2656)) ([1e46d6b](https://github.com/HankHuang0516/EClaw/commit/1e46d6bab61e58c65b452b6503d953f8dddeee75))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **portal:** remove org chart fit scale floor ([#2676](https://github.com/HankHuang0516/EClaw/issues/2676)) ([0f01606](https://github.com/HankHuang0516/EClaw/commit/0f016068b963bb5f800a02f28817c7174979d913))
* **i18n:** rename mm_empty_title → mm_state_empty_title in mindmap.html ([#2683](https://github.com/HankHuang0516/EClaw/issues/2683)) ([c79c109](https://github.com/HankHuang0516/EClaw/commit/c79c109bea23142e8a6d9ace976d105af1280ec9))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **chat:** render mention avatars with companion renderer ([#2633](https://github.com/HankHuang0516/EClaw/issues/2633)) ([03e205f](https://github.com/HankHuang0516/EClaw/commit/03e205f663ecd2c2f443d4009dd5af0093f0bbbb))
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* scheduled audit 2026-05-13 — 6 bugs, XSS, i18n ([#2668](https://github.com/HankHuang0516/EClaw/issues/2668)) ([21dd513](https://github.com/HankHuang0516/EClaw/commit/21dd513b4464738de29164265437435ba6cc4817)), closes [#2605](https://github.com/HankHuang0516/EClaw/issues/2605) [#2608](https://github.com/HankHuang0516/EClaw/issues/2608) [#2600](https://github.com/HankHuang0516/EClaw/issues/2600) [#2599](https://github.com/HankHuang0516/EClaw/issues/2599) [#2598](https://github.com/HankHuang0516/EClaw/issues/2598)
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **chat:** smart-chip preview falls back to inline c.comments when /comments fails (PR [#2677](https://github.com/HankHuang0516/EClaw/issues/2677)) ([7f4dffd](https://github.com/HankHuang0516/EClaw/commit/7f4dffd2c83ea86f296b8fa0610f0e67c9f1af11))
* **wallpaper:** stop Android live wallpaper flashing default lobster on companion change ([#2629](https://github.com/HankHuang0516/EClaw/issues/2629)) ([8b4f66f](https://github.com/HankHuang0516/EClaw/commit/8b4f66fcb335bf43128f924b761b6337c817095b)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **app:** WebView pages honor app-selected locale via ?lang= URL param ([#2672](https://github.com/HankHuang0516/EClaw/issues/2672)) ([8ed8757](https://github.com/HankHuang0516/EClaw/commit/8ed8757aec5bf214e837cc0d81bf2b23f1993a91)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* **community:** 1-click chat button on bot cards + utm tagging ([#2610](https://github.com/HankHuang0516/EClaw/issues/2610)) ([eee97b0](https://github.com/HankHuang0516/EClaw/commit/eee97b0e2e4e74945ec24f218a69a52800b97a66))
* **chat:** add avatar size preference ([#2714](https://github.com/HankHuang0516/EClaw/issues/2714)) ([6fe164a](https://github.com/HankHuang0516/EClaw/commit/6fe164ad8b22fa576d2dd9ad37c0d9fc295b5a83))
* **dashboard:** add Claude and Codex channel guides ([#2640](https://github.com/HankHuang0516/EClaw/issues/2640)) ([c64e4c4](https://github.com/HankHuang0516/EClaw/commit/c64e4c4afc78db58c5cd578f00486dd7b2fd3311))
* **dashboard:** add Claude Code channel guide card ([#2667](https://github.com/HankHuang0516/EClaw/issues/2667)) ([d70d75c](https://github.com/HankHuang0516/EClaw/commit/d70d75c0c8caa8a540358a9aab4556b8c1927a5c))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* **portal:** add entity selector to petdx-browser ([#2602](https://github.com/HankHuang0516/EClaw/issues/2602)) ([3fa067e](https://github.com/HankHuang0516/EClaw/commit/3fa067e00b38829b48a37cecd33ee81a9a1122d9))
* **kanban:** add explicit card links ([#2721](https://github.com/HankHuang0516/EClaw/issues/2721)) ([ef9f812](https://github.com/HankHuang0516/EClaw/commit/ef9f812a3fcf39efd07fd158ce90951bdd045ac7))
* **mindmap:** add GET /api/mindmap/graph force-graph projection ([#2680](https://github.com/HankHuang0516/EClaw/issues/2680)) ([a00b2e7](https://github.com/HankHuang0516/EClaw/commit/a00b2e775af2c4c98cd157f760ad87aeeee469f0)), closes [#2679](https://github.com/HankHuang0516/EClaw/issues/2679) [#2679](https://github.com/HankHuang0516/EClaw/issues/2679)
* **dashboard:** add Hermes channel promo card ([#2708](https://github.com/HankHuang0516/EClaw/issues/2708)) ([337aca1](https://github.com/HankHuang0516/EClaw/commit/337aca153d5a1cd7e888c065f00ae54db7872d91))
* **portal:** add Nagoya 5D4N trip static cross-ref page ([#2689](https://github.com/HankHuang0516/EClaw/issues/2689)) ([2e0efb6](https://github.com/HankHuang0516/EClaw/commit/2e0efb6dcdaff52226cc8854a96747000b12bdff))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **settings:** add rental roster management preview ([#2758](https://github.com/HankHuang0516/EClaw/issues/2758)) ([9706e59](https://github.com/HankHuang0516/EClaw/commit/9706e59ded140a90a6e02348124282bc69d89001))
* **rental:** add renter health chat indicator ([#2690](https://github.com/HankHuang0516/EClaw/issues/2690)) ([36cd2e9](https://github.com/HankHuang0516/EClaw/commit/36cd2e9802be4c7ebb03d3024617fa74aca48ffd))
* **companion:** bridge crafter-station/petdex gallery (1784 pets) ([#2601](https://github.com/HankHuang0516/EClaw/issues/2601)) ([2e245be](https://github.com/HankHuang0516/EClaw/commit/2e245bea6dd47ea7361b927d389188a3c23b6bb3))
* **promo:** chat avatar size feature landing page (self-hosted MP4) ([#2722](https://github.com/HankHuang0516/EClaw/issues/2722)) ([3852210](https://github.com/HankHuang0516/EClaw/commit/3852210d355704d018e3daca6b5f9512a011b210)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **rental:** enforce strict rebind refunds ([#2703](https://github.com/HankHuang0516/EClaw/issues/2703)) ([a1859c5](https://github.com/HankHuang0516/EClaw/commit/a1859c50e6fb3991d7a8051491502d824a14a116))
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **chat:** link card previews to kanban ([#2754](https://github.com/HankHuang0516/EClaw/issues/2754)) ([2261240](https://github.com/HankHuang0516/EClaw/commit/22612402c2e95efb07246629e81a849be41ee9c7))
* **mission:** link notes to kanban cards ([#2723](https://github.com/HankHuang0516/EClaw/issues/2723)) ([b36dc18](https://github.com/HankHuang0516/EClaw/commit/b36dc18f3a8facf12e0b6046351c222f1e99dc55))
* **mindmap:** mission.html link to /portal/mindmap.html + deprecate /api/mission/mindmap ([#2685](https://github.com/HankHuang0516/EClaw/issues/2685)) ([11e297b](https://github.com/HankHuang0516/EClaw/commit/11e297bab1c9b56fcde3027d6500b7c58891bf18)), closes [#2680](https://github.com/HankHuang0516/EClaw/issues/2680) [#2684](https://github.com/HankHuang0516/EClaw/issues/2684)
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **avatar:** petdx render on card-holder my-cards (Phase 1b) ([#2621](https://github.com/HankHuang0516/EClaw/issues/2621)) ([f78ba8b](https://github.com/HankHuang0516/EClaw/commit/f78ba8b18acc426936ab6d8a82ca7541effea00d))
* **avatar:** petdx render on dashboard entity grid / org chart / bindings (Phase 1b) ([#2622](https://github.com/HankHuang0516/EClaw/issues/2622)) ([f417749](https://github.com/HankHuang0516/EClaw/commit/f41774914451048e8cd76e9ae30416a0642e173b)), closes [#2620](https://github.com/HankHuang0516/EClaw/issues/2620) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621)
* **avatar:** petdx render on kanban auto-assign / pulse / comment avatars (Phase 1b) ([#2624](https://github.com/HankHuang0516/EClaw/issues/2624)) ([6bff5f8](https://github.com/HankHuang0516/EClaw/commit/6bff5f80440d0bd91a6b1721cde9478d685c4d46))
* **avatar:** petdx render on mission skill/rule/soul entity dialogs (Phase 1b) ([#2623](https://github.com/HankHuang0516/EClaw/issues/2623)) ([129327b](https://github.com/HankHuang0516/EClaw/commit/129327bc7b91056659f1ab7e8d5e3f5260d951fb))
* **mindmap:** portal/mindmap.html force-graph prototype ([#129](https://github.com/HankHuang0516/EClaw/issues/129)) ([#2681](https://github.com/HankHuang0516/EClaw/issues/2681)) ([0f15e69](https://github.com/HankHuang0516/EClaw/commit/0f15e6930f0697c37fa08f3219edb8f9e499837f)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **portal:** redo nagoya trip page in professional tour-guide style ([#2691](https://github.com/HankHuang0516/EClaw/issues/2691)) ([b2378c0](https://github.com/HankHuang0516/EClaw/commit/b2378c06ee20fa9cccfdceceb1a4c9e0b3072f59))
* **avatar:** render selected petdx companion in chat avatars ([#2620](https://github.com/HankHuang0516/EClaw/issues/2620)) ([0bdd046](https://github.com/HankHuang0516/EClaw/commit/0bdd046fe1b1c428e32edda366ff112c08927f4c))
* **home:** replace native home with WebView hosting dashboard.html ([#2634](https://github.com/HankHuang0516/EClaw/issues/2634)) ([e69ea81](https://github.com/HankHuang0516/EClaw/commit/e69ea8160c239b083a83d6dc83a4f1c3f901c863))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **chat:** support message deep links ([#2719](https://github.com/HankHuang0516/EClaw/issues/2719)) ([2dc0f1e](https://github.com/HankHuang0516/EClaw/commit/2dc0f1eeb259e1a0848db4a03186b989372cd91c))
* **mission:** support note deep links ([#2717](https://github.com/HankHuang0516/EClaw/issues/2717)) ([2efd3a5](https://github.com/HankHuang0516/EClaw/commit/2efd3a5e741217a07c0b0ac54a0ddd010e0ebe23))
* **share-chat:** twitter card + per-bot og:image/twitter:* in SSR ([#2609](https://github.com/HankHuang0516/EClaw/issues/2609)) ([6cdc853](https://github.com/HankHuang0516/EClaw/commit/6cdc853dc884cdb95bd47214942768981f218ae0))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))
* **settings:** wire petdx avatar into channel-account chips ([#2626](https://github.com/HankHuang0516/EClaw/issues/2626)) ([88aec77](https://github.com/HankHuang0516/EClaw/commit/88aec772628c240e97b336bb5820892ad632d1ae))
* **files:** wire petdx avatar into entity filter & per-file badges ([#2627](https://github.com/HankHuang0516/EClaw/issues/2627)) ([5b3e5cc](https://github.com/HankHuang0516/EClaw/commit/5b3e5cc542d9da69bb4e92500fd03a542ea33f00))
* **mindmap:** wrap hardcoded zh-TW UI strings with i18n t() ([#2607](https://github.com/HankHuang0516/EClaw/issues/2607)) ([166af87](https://github.com/HankHuang0516/EClaw/commit/166af8772b2121a24aaf34a83b3de970e9b3b571)), closes [#2606](https://github.com/HankHuang0516/EClaw/issues/2606)


### Performance Improvements

* **mindmap:** force-graph hardening for 1000/2000-node graphs ([#2684](https://github.com/HankHuang0516/EClaw/issues/2684)) ([da8b1c8](https://github.com/HankHuang0516/EClaw/commit/da8b1c8f947ab8bc8fa455c1962a91146623a1fc))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-13)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **notifications:** add kanban_done + kanban_done_auto toggles to Android Settings ([#2636](https://github.com/HankHuang0516/EClaw/issues/2636)) ([a710909](https://github.com/HankHuang0516/EClaw/commit/a7109095e3393b8564e7ef1b23d382a4fbb944b8))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **kanban:** comment input no longer overlaps last comment in card detail (PR [#2678](https://github.com/HankHuang0516/EClaw/issues/2678)) ([fba91fc](https://github.com/HankHuang0516/EClaw/commit/fba91fca15402b453a0db5ee857c0b16e6087055))
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **petdx:** drop dark-grey loading placeholder + preload sprite WEBP ([#2628](https://github.com/HankHuang0516/EClaw/issues/2628)) ([59cef38](https://github.com/HankHuang0516/EClaw/commit/59cef387bd69ca99d7d15c86a1364856d3849ad8)), closes [#1a1a1a](https://github.com/HankHuang0516/EClaw/issues/1a1a1a)
* **entities:** expose botSecret to owner so wallpaper service can poll companions ([#2615](https://github.com/HankHuang0516/EClaw/issues/2615)) ([04470fc](https://github.com/HankHuang0516/EClaw/commit/04470fce8f8c3fce2b1ba8b243e776606f107502))
* **rental:** expose owner_public_code in marketplace so plaza CTA can route ([#2616](https://github.com/HankHuang0516/EClaw/issues/2616)) ([4d1372f](https://github.com/HankHuang0516/EClaw/commit/4d1372f717d93cab65543e87c852e74e9fb67071)), closes [#2610](https://github.com/HankHuang0516/EClaw/issues/2610)
* **mindmap:** fallback to device scope when entityId is null ([#2728](https://github.com/HankHuang0516/EClaw/issues/2728)) ([7572312](https://github.com/HankHuang0516/EClaw/commit/7572312433d3d75fc245eda48a28919ce14bd927))
* **i18n:** fill Spanish drift keys ([#2751](https://github.com/HankHuang0516/EClaw/issues/2751)) ([0ad0ee5](https://github.com/HankHuang0516/EClaw/commit/0ad0ee55f7fac3e6ac46d891539950dab4d553cc))
* **portal:** fit embedded org chart to mobile viewport ([#2674](https://github.com/HankHuang0516/EClaw/issues/2674)) ([1c4e1b4](https://github.com/HankHuang0516/EClaw/commit/1c4e1b413ea7027b4cd4b8ecda981b0d0e12e66b))
* **i18n:** fix 6 trailing-comma syntax errors in 10-locale batch ([#2771](https://github.com/HankHuang0516/EClaw/issues/2771)) ([b27c6ca](https://github.com/HankHuang0516/EClaw/commit/b27c6ca204bf813e406c54ce3a2532a5f1f031b3))
* **uiux:** harden chat previews and roster preview ([#2769](https://github.com/HankHuang0516/EClaw/issues/2769)) ([466d4d3](https://github.com/HankHuang0516/EClaw/commit/466d4d3ef81c628d3f58db64323946053d7bf61c))
* **mention-parser:** ignore @-mentions inside markdown code spans ([#2645](https://github.com/HankHuang0516/EClaw/issues/2645)) ([8da19d4](https://github.com/HankHuang0516/EClaw/commit/8da19d4a79ceb4152bf2144ee0847c61ce3e1def)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **kanban:** lazy-load dependency chips via IntersectionObserver ([#2632](https://github.com/HankHuang0516/EClaw/issues/2632)) ([20586b4](https://github.com/HankHuang0516/EClaw/commit/20586b43357335f9eb6a190c02d58c8e36b58aba)), closes [#2631](https://github.com/HankHuang0516/EClaw/issues/2631)
* **kanban:** make card sorting deterministic ([#2756](https://github.com/HankHuang0516/EClaw/issues/2756)) ([48e2117](https://github.com/HankHuang0516/EClaw/commit/48e2117b64e37f05dc635e0a3b67bfd43cbe48f5))
* **kanban:** notify reviewer on manual /move → review ([#2753](https://github.com/HankHuang0516/EClaw/issues/2753)) ([6cbbb4e](https://github.com/HankHuang0516/EClaw/commit/6cbbb4ee8c0d4d8ad54df2e9b5faaa3699bd530f))
* **wallpaper:** off-load spritesheet fetch to IO so per-petdx sprites actually render ([#2618](https://github.com/HankHuang0516/EClaw/issues/2618)) ([61b832c](https://github.com/HankHuang0516/EClaw/commit/61b832c9fa8a1d0caab810ccc942d85c63349267)), closes [#2615](https://github.com/HankHuang0516/EClaw/issues/2615) [#2577](https://github.com/HankHuang0516/EClaw/issues/2577)
* **portal:** petdx-browser cookie-session fallback for device-login ([#2757](https://github.com/HankHuang0516/EClaw/issues/2757)) ([ca275f4](https://github.com/HankHuang0516/EClaw/commit/ca275f4519835da0c7ad71c588908a18f6f138d8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **i18n:** positional format specifiers for feedback_result_logs (7 locales) ([#2597](https://github.com/HankHuang0516/EClaw/issues/2597)) ([21aedc7](https://github.com/HankHuang0516/EClaw/commit/21aedc7eebc7a2839e340136f38dfdfd4dabb9dc))
* **avatar-petdx:** preserve descriptor across transient API failures (flicker) ([#2625](https://github.com/HankHuang0516/EClaw/issues/2625)) ([7b1c606](https://github.com/HankHuang0516/EClaw/commit/7b1c606514f7698d72ec95cf6c556e4043966186))
* **chat:** preserve scroll anchor while reading history ([#2693](https://github.com/HankHuang0516/EClaw/issues/2693)) ([945fdb7](https://github.com/HankHuang0516/EClaw/commit/945fdb7192b791b31882e1e75568dd8b11e4686f))
* **promo:** pull video embed from /promo-chat-avatar.html ([#2724](https://github.com/HankHuang0516/EClaw/issues/2724)) ([2afabc8](https://github.com/HankHuang0516/EClaw/commit/2afabc8c5ff8b25218a7cb857e8adfa572c8e9d5))
* **portal:** reduce QA-discovered request fanout ([#2656](https://github.com/HankHuang0516/EClaw/issues/2656)) ([1e46d6b](https://github.com/HankHuang0516/EClaw/commit/1e46d6bab61e58c65b452b6503d953f8dddeee75))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **portal:** remove org chart fit scale floor ([#2676](https://github.com/HankHuang0516/EClaw/issues/2676)) ([0f01606](https://github.com/HankHuang0516/EClaw/commit/0f016068b963bb5f800a02f28817c7174979d913))
* **i18n:** rename mm_empty_title → mm_state_empty_title in mindmap.html ([#2683](https://github.com/HankHuang0516/EClaw/issues/2683)) ([c79c109](https://github.com/HankHuang0516/EClaw/commit/c79c109bea23142e8a6d9ace976d105af1280ec9))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **chat:** render mention avatars with companion renderer ([#2633](https://github.com/HankHuang0516/EClaw/issues/2633)) ([03e205f](https://github.com/HankHuang0516/EClaw/commit/03e205f663ecd2c2f443d4009dd5af0093f0bbbb))
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* scheduled audit 2026-05-13 — 6 bugs, XSS, i18n ([#2668](https://github.com/HankHuang0516/EClaw/issues/2668)) ([21dd513](https://github.com/HankHuang0516/EClaw/commit/21dd513b4464738de29164265437435ba6cc4817)), closes [#2605](https://github.com/HankHuang0516/EClaw/issues/2605) [#2608](https://github.com/HankHuang0516/EClaw/issues/2608) [#2600](https://github.com/HankHuang0516/EClaw/issues/2600) [#2599](https://github.com/HankHuang0516/EClaw/issues/2599) [#2598](https://github.com/HankHuang0516/EClaw/issues/2598)
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **chat:** smart-chip preview falls back to inline c.comments when /comments fails (PR [#2677](https://github.com/HankHuang0516/EClaw/issues/2677)) ([7f4dffd](https://github.com/HankHuang0516/EClaw/commit/7f4dffd2c83ea86f296b8fa0610f0e67c9f1af11))
* **wallpaper:** stop Android live wallpaper flashing default lobster on companion change ([#2629](https://github.com/HankHuang0516/EClaw/issues/2629)) ([8b4f66f](https://github.com/HankHuang0516/EClaw/commit/8b4f66fcb335bf43128f924b761b6337c817095b)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **app:** WebView pages honor app-selected locale via ?lang= URL param ([#2672](https://github.com/HankHuang0516/EClaw/issues/2672)) ([8ed8757](https://github.com/HankHuang0516/EClaw/commit/8ed8757aec5bf214e837cc0d81bf2b23f1993a91)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* **community:** 1-click chat button on bot cards + utm tagging ([#2610](https://github.com/HankHuang0516/EClaw/issues/2610)) ([eee97b0](https://github.com/HankHuang0516/EClaw/commit/eee97b0e2e4e74945ec24f218a69a52800b97a66))
* **chat:** add avatar size preference ([#2714](https://github.com/HankHuang0516/EClaw/issues/2714)) ([6fe164a](https://github.com/HankHuang0516/EClaw/commit/6fe164ad8b22fa576d2dd9ad37c0d9fc295b5a83))
* **dashboard:** add Claude and Codex channel guides ([#2640](https://github.com/HankHuang0516/EClaw/issues/2640)) ([c64e4c4](https://github.com/HankHuang0516/EClaw/commit/c64e4c4afc78db58c5cd578f00486dd7b2fd3311))
* **dashboard:** add Claude Code channel guide card ([#2667](https://github.com/HankHuang0516/EClaw/issues/2667)) ([d70d75c](https://github.com/HankHuang0516/EClaw/commit/d70d75c0c8caa8a540358a9aab4556b8c1927a5c))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* **portal:** add entity selector to petdx-browser ([#2602](https://github.com/HankHuang0516/EClaw/issues/2602)) ([3fa067e](https://github.com/HankHuang0516/EClaw/commit/3fa067e00b38829b48a37cecd33ee81a9a1122d9))
* **kanban:** add explicit card links ([#2721](https://github.com/HankHuang0516/EClaw/issues/2721)) ([ef9f812](https://github.com/HankHuang0516/EClaw/commit/ef9f812a3fcf39efd07fd158ce90951bdd045ac7))
* **mindmap:** add GET /api/mindmap/graph force-graph projection ([#2680](https://github.com/HankHuang0516/EClaw/issues/2680)) ([a00b2e7](https://github.com/HankHuang0516/EClaw/commit/a00b2e775af2c4c98cd157f760ad87aeeee469f0)), closes [#2679](https://github.com/HankHuang0516/EClaw/issues/2679) [#2679](https://github.com/HankHuang0516/EClaw/issues/2679)
* **dashboard:** add Hermes channel promo card ([#2708](https://github.com/HankHuang0516/EClaw/issues/2708)) ([337aca1](https://github.com/HankHuang0516/EClaw/commit/337aca153d5a1cd7e888c065f00ae54db7872d91))
* **portal:** add Nagoya 5D4N trip static cross-ref page ([#2689](https://github.com/HankHuang0516/EClaw/issues/2689)) ([2e0efb6](https://github.com/HankHuang0516/EClaw/commit/2e0efb6dcdaff52226cc8854a96747000b12bdff))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **settings:** add rental roster management preview ([#2758](https://github.com/HankHuang0516/EClaw/issues/2758)) ([9706e59](https://github.com/HankHuang0516/EClaw/commit/9706e59ded140a90a6e02348124282bc69d89001))
* **rental:** add renter health chat indicator ([#2690](https://github.com/HankHuang0516/EClaw/issues/2690)) ([36cd2e9](https://github.com/HankHuang0516/EClaw/commit/36cd2e9802be4c7ebb03d3024617fa74aca48ffd))
* **companion:** bridge crafter-station/petdex gallery (1784 pets) ([#2601](https://github.com/HankHuang0516/EClaw/issues/2601)) ([2e245be](https://github.com/HankHuang0516/EClaw/commit/2e245bea6dd47ea7361b927d389188a3c23b6bb3))
* **promo:** chat avatar size feature landing page (self-hosted MP4) ([#2722](https://github.com/HankHuang0516/EClaw/issues/2722)) ([3852210](https://github.com/HankHuang0516/EClaw/commit/3852210d355704d018e3daca6b5f9512a011b210)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **rental:** enforce strict rebind refunds ([#2703](https://github.com/HankHuang0516/EClaw/issues/2703)) ([a1859c5](https://github.com/HankHuang0516/EClaw/commit/a1859c50e6fb3991d7a8051491502d824a14a116))
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **chat:** link card previews to kanban ([#2754](https://github.com/HankHuang0516/EClaw/issues/2754)) ([2261240](https://github.com/HankHuang0516/EClaw/commit/22612402c2e95efb07246629e81a849be41ee9c7))
* **mission:** link notes to kanban cards ([#2723](https://github.com/HankHuang0516/EClaw/issues/2723)) ([b36dc18](https://github.com/HankHuang0516/EClaw/commit/b36dc18f3a8facf12e0b6046351c222f1e99dc55))
* **mindmap:** mission.html link to /portal/mindmap.html + deprecate /api/mission/mindmap ([#2685](https://github.com/HankHuang0516/EClaw/issues/2685)) ([11e297b](https://github.com/HankHuang0516/EClaw/commit/11e297bab1c9b56fcde3027d6500b7c58891bf18)), closes [#2680](https://github.com/HankHuang0516/EClaw/issues/2680) [#2684](https://github.com/HankHuang0516/EClaw/issues/2684)
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **avatar:** petdx render on card-holder my-cards (Phase 1b) ([#2621](https://github.com/HankHuang0516/EClaw/issues/2621)) ([f78ba8b](https://github.com/HankHuang0516/EClaw/commit/f78ba8b18acc426936ab6d8a82ca7541effea00d))
* **avatar:** petdx render on dashboard entity grid / org chart / bindings (Phase 1b) ([#2622](https://github.com/HankHuang0516/EClaw/issues/2622)) ([f417749](https://github.com/HankHuang0516/EClaw/commit/f41774914451048e8cd76e9ae30416a0642e173b)), closes [#2620](https://github.com/HankHuang0516/EClaw/issues/2620) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621)
* **avatar:** petdx render on kanban auto-assign / pulse / comment avatars (Phase 1b) ([#2624](https://github.com/HankHuang0516/EClaw/issues/2624)) ([6bff5f8](https://github.com/HankHuang0516/EClaw/commit/6bff5f80440d0bd91a6b1721cde9478d685c4d46))
* **avatar:** petdx render on mission skill/rule/soul entity dialogs (Phase 1b) ([#2623](https://github.com/HankHuang0516/EClaw/issues/2623)) ([129327b](https://github.com/HankHuang0516/EClaw/commit/129327bc7b91056659f1ab7e8d5e3f5260d951fb))
* **mindmap:** portal/mindmap.html force-graph prototype ([#129](https://github.com/HankHuang0516/EClaw/issues/129)) ([#2681](https://github.com/HankHuang0516/EClaw/issues/2681)) ([0f15e69](https://github.com/HankHuang0516/EClaw/commit/0f15e6930f0697c37fa08f3219edb8f9e499837f)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **portal:** redo nagoya trip page in professional tour-guide style ([#2691](https://github.com/HankHuang0516/EClaw/issues/2691)) ([b2378c0](https://github.com/HankHuang0516/EClaw/commit/b2378c06ee20fa9cccfdceceb1a4c9e0b3072f59))
* **avatar:** render selected petdx companion in chat avatars ([#2620](https://github.com/HankHuang0516/EClaw/issues/2620)) ([0bdd046](https://github.com/HankHuang0516/EClaw/commit/0bdd046fe1b1c428e32edda366ff112c08927f4c))
* **home:** replace native home with WebView hosting dashboard.html ([#2634](https://github.com/HankHuang0516/EClaw/issues/2634)) ([e69ea81](https://github.com/HankHuang0516/EClaw/commit/e69ea8160c239b083a83d6dc83a4f1c3f901c863))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **chat:** support message deep links ([#2719](https://github.com/HankHuang0516/EClaw/issues/2719)) ([2dc0f1e](https://github.com/HankHuang0516/EClaw/commit/2dc0f1eeb259e1a0848db4a03186b989372cd91c))
* **mission:** support note deep links ([#2717](https://github.com/HankHuang0516/EClaw/issues/2717)) ([2efd3a5](https://github.com/HankHuang0516/EClaw/commit/2efd3a5e741217a07c0b0ac54a0ddd010e0ebe23))
* **share-chat:** twitter card + per-bot og:image/twitter:* in SSR ([#2609](https://github.com/HankHuang0516/EClaw/issues/2609)) ([6cdc853](https://github.com/HankHuang0516/EClaw/commit/6cdc853dc884cdb95bd47214942768981f218ae0))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))
* **settings:** wire petdx avatar into channel-account chips ([#2626](https://github.com/HankHuang0516/EClaw/issues/2626)) ([88aec77](https://github.com/HankHuang0516/EClaw/commit/88aec772628c240e97b336bb5820892ad632d1ae))
* **files:** wire petdx avatar into entity filter & per-file badges ([#2627](https://github.com/HankHuang0516/EClaw/issues/2627)) ([5b3e5cc](https://github.com/HankHuang0516/EClaw/commit/5b3e5cc542d9da69bb4e92500fd03a542ea33f00))
* **mindmap:** wrap hardcoded zh-TW UI strings with i18n t() ([#2607](https://github.com/HankHuang0516/EClaw/issues/2607)) ([166af87](https://github.com/HankHuang0516/EClaw/commit/166af8772b2121a24aaf34a83b3de970e9b3b571)), closes [#2606](https://github.com/HankHuang0516/EClaw/issues/2606)


### Performance Improvements

* **mindmap:** force-graph hardening for 1000/2000-node graphs ([#2684](https://github.com/HankHuang0516/EClaw/issues/2684)) ([da8b1c8](https://github.com/HankHuang0516/EClaw/commit/da8b1c8f947ab8bc8fa455c1962a91146623a1fc))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-13)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **notifications:** add kanban_done + kanban_done_auto toggles to Android Settings ([#2636](https://github.com/HankHuang0516/EClaw/issues/2636)) ([a710909](https://github.com/HankHuang0516/EClaw/commit/a7109095e3393b8564e7ef1b23d382a4fbb944b8))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **kanban:** comment input no longer overlaps last comment in card detail (PR [#2678](https://github.com/HankHuang0516/EClaw/issues/2678)) ([fba91fc](https://github.com/HankHuang0516/EClaw/commit/fba91fca15402b453a0db5ee857c0b16e6087055))
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **petdx:** drop dark-grey loading placeholder + preload sprite WEBP ([#2628](https://github.com/HankHuang0516/EClaw/issues/2628)) ([59cef38](https://github.com/HankHuang0516/EClaw/commit/59cef387bd69ca99d7d15c86a1364856d3849ad8)), closes [#1a1a1a](https://github.com/HankHuang0516/EClaw/issues/1a1a1a)
* **entities:** expose botSecret to owner so wallpaper service can poll companions ([#2615](https://github.com/HankHuang0516/EClaw/issues/2615)) ([04470fc](https://github.com/HankHuang0516/EClaw/commit/04470fce8f8c3fce2b1ba8b243e776606f107502))
* **rental:** expose owner_public_code in marketplace so plaza CTA can route ([#2616](https://github.com/HankHuang0516/EClaw/issues/2616)) ([4d1372f](https://github.com/HankHuang0516/EClaw/commit/4d1372f717d93cab65543e87c852e74e9fb67071)), closes [#2610](https://github.com/HankHuang0516/EClaw/issues/2610)
* **mindmap:** fallback to device scope when entityId is null ([#2728](https://github.com/HankHuang0516/EClaw/issues/2728)) ([7572312](https://github.com/HankHuang0516/EClaw/commit/7572312433d3d75fc245eda48a28919ce14bd927))
* **i18n:** fill Spanish drift keys ([#2751](https://github.com/HankHuang0516/EClaw/issues/2751)) ([0ad0ee5](https://github.com/HankHuang0516/EClaw/commit/0ad0ee55f7fac3e6ac46d891539950dab4d553cc))
* **portal:** fit embedded org chart to mobile viewport ([#2674](https://github.com/HankHuang0516/EClaw/issues/2674)) ([1c4e1b4](https://github.com/HankHuang0516/EClaw/commit/1c4e1b413ea7027b4cd4b8ecda981b0d0e12e66b))
* **i18n:** fix 6 trailing-comma syntax errors in 10-locale batch ([#2771](https://github.com/HankHuang0516/EClaw/issues/2771)) ([b27c6ca](https://github.com/HankHuang0516/EClaw/commit/b27c6ca204bf813e406c54ce3a2532a5f1f031b3))
* **uiux:** harden chat previews and roster preview ([#2769](https://github.com/HankHuang0516/EClaw/issues/2769)) ([466d4d3](https://github.com/HankHuang0516/EClaw/commit/466d4d3ef81c628d3f58db64323946053d7bf61c))
* **mention-parser:** ignore @-mentions inside markdown code spans ([#2645](https://github.com/HankHuang0516/EClaw/issues/2645)) ([8da19d4](https://github.com/HankHuang0516/EClaw/commit/8da19d4a79ceb4152bf2144ee0847c61ce3e1def)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **kanban:** lazy-load dependency chips via IntersectionObserver ([#2632](https://github.com/HankHuang0516/EClaw/issues/2632)) ([20586b4](https://github.com/HankHuang0516/EClaw/commit/20586b43357335f9eb6a190c02d58c8e36b58aba)), closes [#2631](https://github.com/HankHuang0516/EClaw/issues/2631)
* **kanban:** make card sorting deterministic ([#2756](https://github.com/HankHuang0516/EClaw/issues/2756)) ([48e2117](https://github.com/HankHuang0516/EClaw/commit/48e2117b64e37f05dc635e0a3b67bfd43cbe48f5))
* **kanban:** notify reviewer on manual /move → review ([#2753](https://github.com/HankHuang0516/EClaw/issues/2753)) ([6cbbb4e](https://github.com/HankHuang0516/EClaw/commit/6cbbb4ee8c0d4d8ad54df2e9b5faaa3699bd530f))
* **wallpaper:** off-load spritesheet fetch to IO so per-petdx sprites actually render ([#2618](https://github.com/HankHuang0516/EClaw/issues/2618)) ([61b832c](https://github.com/HankHuang0516/EClaw/commit/61b832c9fa8a1d0caab810ccc942d85c63349267)), closes [#2615](https://github.com/HankHuang0516/EClaw/issues/2615) [#2577](https://github.com/HankHuang0516/EClaw/issues/2577)
* **portal:** petdx-browser cookie-session fallback for device-login ([#2757](https://github.com/HankHuang0516/EClaw/issues/2757)) ([ca275f4](https://github.com/HankHuang0516/EClaw/commit/ca275f4519835da0c7ad71c588908a18f6f138d8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **i18n:** positional format specifiers for feedback_result_logs (7 locales) ([#2597](https://github.com/HankHuang0516/EClaw/issues/2597)) ([21aedc7](https://github.com/HankHuang0516/EClaw/commit/21aedc7eebc7a2839e340136f38dfdfd4dabb9dc))
* **avatar-petdx:** preserve descriptor across transient API failures (flicker) ([#2625](https://github.com/HankHuang0516/EClaw/issues/2625)) ([7b1c606](https://github.com/HankHuang0516/EClaw/commit/7b1c606514f7698d72ec95cf6c556e4043966186))
* **chat:** preserve scroll anchor while reading history ([#2693](https://github.com/HankHuang0516/EClaw/issues/2693)) ([945fdb7](https://github.com/HankHuang0516/EClaw/commit/945fdb7192b791b31882e1e75568dd8b11e4686f))
* **promo:** pull video embed from /promo-chat-avatar.html ([#2724](https://github.com/HankHuang0516/EClaw/issues/2724)) ([2afabc8](https://github.com/HankHuang0516/EClaw/commit/2afabc8c5ff8b25218a7cb857e8adfa572c8e9d5))
* **portal:** reduce QA-discovered request fanout ([#2656](https://github.com/HankHuang0516/EClaw/issues/2656)) ([1e46d6b](https://github.com/HankHuang0516/EClaw/commit/1e46d6bab61e58c65b452b6503d953f8dddeee75))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **portal:** remove org chart fit scale floor ([#2676](https://github.com/HankHuang0516/EClaw/issues/2676)) ([0f01606](https://github.com/HankHuang0516/EClaw/commit/0f016068b963bb5f800a02f28817c7174979d913))
* **i18n:** rename mm_empty_title → mm_state_empty_title in mindmap.html ([#2683](https://github.com/HankHuang0516/EClaw/issues/2683)) ([c79c109](https://github.com/HankHuang0516/EClaw/commit/c79c109bea23142e8a6d9ace976d105af1280ec9))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **chat:** render mention avatars with companion renderer ([#2633](https://github.com/HankHuang0516/EClaw/issues/2633)) ([03e205f](https://github.com/HankHuang0516/EClaw/commit/03e205f663ecd2c2f443d4009dd5af0093f0bbbb))
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* scheduled audit 2026-05-13 — 6 bugs, XSS, i18n ([#2668](https://github.com/HankHuang0516/EClaw/issues/2668)) ([21dd513](https://github.com/HankHuang0516/EClaw/commit/21dd513b4464738de29164265437435ba6cc4817)), closes [#2605](https://github.com/HankHuang0516/EClaw/issues/2605) [#2608](https://github.com/HankHuang0516/EClaw/issues/2608) [#2600](https://github.com/HankHuang0516/EClaw/issues/2600) [#2599](https://github.com/HankHuang0516/EClaw/issues/2599) [#2598](https://github.com/HankHuang0516/EClaw/issues/2598)
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **chat:** smart-chip preview falls back to inline c.comments when /comments fails (PR [#2677](https://github.com/HankHuang0516/EClaw/issues/2677)) ([7f4dffd](https://github.com/HankHuang0516/EClaw/commit/7f4dffd2c83ea86f296b8fa0610f0e67c9f1af11))
* **wallpaper:** stop Android live wallpaper flashing default lobster on companion change ([#2629](https://github.com/HankHuang0516/EClaw/issues/2629)) ([8b4f66f](https://github.com/HankHuang0516/EClaw/commit/8b4f66fcb335bf43128f924b761b6337c817095b)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **app:** WebView pages honor app-selected locale via ?lang= URL param ([#2672](https://github.com/HankHuang0516/EClaw/issues/2672)) ([8ed8757](https://github.com/HankHuang0516/EClaw/commit/8ed8757aec5bf214e837cc0d81bf2b23f1993a91)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* **community:** 1-click chat button on bot cards + utm tagging ([#2610](https://github.com/HankHuang0516/EClaw/issues/2610)) ([eee97b0](https://github.com/HankHuang0516/EClaw/commit/eee97b0e2e4e74945ec24f218a69a52800b97a66))
* **chat:** add avatar size preference ([#2714](https://github.com/HankHuang0516/EClaw/issues/2714)) ([6fe164a](https://github.com/HankHuang0516/EClaw/commit/6fe164ad8b22fa576d2dd9ad37c0d9fc295b5a83))
* **dashboard:** add Claude and Codex channel guides ([#2640](https://github.com/HankHuang0516/EClaw/issues/2640)) ([c64e4c4](https://github.com/HankHuang0516/EClaw/commit/c64e4c4afc78db58c5cd578f00486dd7b2fd3311))
* **dashboard:** add Claude Code channel guide card ([#2667](https://github.com/HankHuang0516/EClaw/issues/2667)) ([d70d75c](https://github.com/HankHuang0516/EClaw/commit/d70d75c0c8caa8a540358a9aab4556b8c1927a5c))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* **portal:** add entity selector to petdx-browser ([#2602](https://github.com/HankHuang0516/EClaw/issues/2602)) ([3fa067e](https://github.com/HankHuang0516/EClaw/commit/3fa067e00b38829b48a37cecd33ee81a9a1122d9))
* **kanban:** add explicit card links ([#2721](https://github.com/HankHuang0516/EClaw/issues/2721)) ([ef9f812](https://github.com/HankHuang0516/EClaw/commit/ef9f812a3fcf39efd07fd158ce90951bdd045ac7))
* **mindmap:** add GET /api/mindmap/graph force-graph projection ([#2680](https://github.com/HankHuang0516/EClaw/issues/2680)) ([a00b2e7](https://github.com/HankHuang0516/EClaw/commit/a00b2e775af2c4c98cd157f760ad87aeeee469f0)), closes [#2679](https://github.com/HankHuang0516/EClaw/issues/2679) [#2679](https://github.com/HankHuang0516/EClaw/issues/2679)
* **dashboard:** add Hermes channel promo card ([#2708](https://github.com/HankHuang0516/EClaw/issues/2708)) ([337aca1](https://github.com/HankHuang0516/EClaw/commit/337aca153d5a1cd7e888c065f00ae54db7872d91))
* **portal:** add Nagoya 5D4N trip static cross-ref page ([#2689](https://github.com/HankHuang0516/EClaw/issues/2689)) ([2e0efb6](https://github.com/HankHuang0516/EClaw/commit/2e0efb6dcdaff52226cc8854a96747000b12bdff))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **settings:** add rental roster management preview ([#2758](https://github.com/HankHuang0516/EClaw/issues/2758)) ([9706e59](https://github.com/HankHuang0516/EClaw/commit/9706e59ded140a90a6e02348124282bc69d89001))
* **rental:** add renter health chat indicator ([#2690](https://github.com/HankHuang0516/EClaw/issues/2690)) ([36cd2e9](https://github.com/HankHuang0516/EClaw/commit/36cd2e9802be4c7ebb03d3024617fa74aca48ffd))
* **companion:** bridge crafter-station/petdex gallery (1784 pets) ([#2601](https://github.com/HankHuang0516/EClaw/issues/2601)) ([2e245be](https://github.com/HankHuang0516/EClaw/commit/2e245bea6dd47ea7361b927d389188a3c23b6bb3))
* **promo:** chat avatar size feature landing page (self-hosted MP4) ([#2722](https://github.com/HankHuang0516/EClaw/issues/2722)) ([3852210](https://github.com/HankHuang0516/EClaw/commit/3852210d355704d018e3daca6b5f9512a011b210)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **rental:** enforce strict rebind refunds ([#2703](https://github.com/HankHuang0516/EClaw/issues/2703)) ([a1859c5](https://github.com/HankHuang0516/EClaw/commit/a1859c50e6fb3991d7a8051491502d824a14a116))
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **chat:** link card previews to kanban ([#2754](https://github.com/HankHuang0516/EClaw/issues/2754)) ([2261240](https://github.com/HankHuang0516/EClaw/commit/22612402c2e95efb07246629e81a849be41ee9c7))
* **mission:** link notes to kanban cards ([#2723](https://github.com/HankHuang0516/EClaw/issues/2723)) ([b36dc18](https://github.com/HankHuang0516/EClaw/commit/b36dc18f3a8facf12e0b6046351c222f1e99dc55))
* **mindmap:** mission.html link to /portal/mindmap.html + deprecate /api/mission/mindmap ([#2685](https://github.com/HankHuang0516/EClaw/issues/2685)) ([11e297b](https://github.com/HankHuang0516/EClaw/commit/11e297bab1c9b56fcde3027d6500b7c58891bf18)), closes [#2680](https://github.com/HankHuang0516/EClaw/issues/2680) [#2684](https://github.com/HankHuang0516/EClaw/issues/2684)
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **avatar:** petdx render on card-holder my-cards (Phase 1b) ([#2621](https://github.com/HankHuang0516/EClaw/issues/2621)) ([f78ba8b](https://github.com/HankHuang0516/EClaw/commit/f78ba8b18acc426936ab6d8a82ca7541effea00d))
* **avatar:** petdx render on dashboard entity grid / org chart / bindings (Phase 1b) ([#2622](https://github.com/HankHuang0516/EClaw/issues/2622)) ([f417749](https://github.com/HankHuang0516/EClaw/commit/f41774914451048e8cd76e9ae30416a0642e173b)), closes [#2620](https://github.com/HankHuang0516/EClaw/issues/2620) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621)
* **avatar:** petdx render on kanban auto-assign / pulse / comment avatars (Phase 1b) ([#2624](https://github.com/HankHuang0516/EClaw/issues/2624)) ([6bff5f8](https://github.com/HankHuang0516/EClaw/commit/6bff5f80440d0bd91a6b1721cde9478d685c4d46))
* **avatar:** petdx render on mission skill/rule/soul entity dialogs (Phase 1b) ([#2623](https://github.com/HankHuang0516/EClaw/issues/2623)) ([129327b](https://github.com/HankHuang0516/EClaw/commit/129327bc7b91056659f1ab7e8d5e3f5260d951fb))
* **mindmap:** portal/mindmap.html force-graph prototype ([#129](https://github.com/HankHuang0516/EClaw/issues/129)) ([#2681](https://github.com/HankHuang0516/EClaw/issues/2681)) ([0f15e69](https://github.com/HankHuang0516/EClaw/commit/0f15e6930f0697c37fa08f3219edb8f9e499837f)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **portal:** redo nagoya trip page in professional tour-guide style ([#2691](https://github.com/HankHuang0516/EClaw/issues/2691)) ([b2378c0](https://github.com/HankHuang0516/EClaw/commit/b2378c06ee20fa9cccfdceceb1a4c9e0b3072f59))
* **avatar:** render selected petdx companion in chat avatars ([#2620](https://github.com/HankHuang0516/EClaw/issues/2620)) ([0bdd046](https://github.com/HankHuang0516/EClaw/commit/0bdd046fe1b1c428e32edda366ff112c08927f4c))
* **home:** replace native home with WebView hosting dashboard.html ([#2634](https://github.com/HankHuang0516/EClaw/issues/2634)) ([e69ea81](https://github.com/HankHuang0516/EClaw/commit/e69ea8160c239b083a83d6dc83a4f1c3f901c863))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **chat:** support message deep links ([#2719](https://github.com/HankHuang0516/EClaw/issues/2719)) ([2dc0f1e](https://github.com/HankHuang0516/EClaw/commit/2dc0f1eeb259e1a0848db4a03186b989372cd91c))
* **mission:** support note deep links ([#2717](https://github.com/HankHuang0516/EClaw/issues/2717)) ([2efd3a5](https://github.com/HankHuang0516/EClaw/commit/2efd3a5e741217a07c0b0ac54a0ddd010e0ebe23))
* **share-chat:** twitter card + per-bot og:image/twitter:* in SSR ([#2609](https://github.com/HankHuang0516/EClaw/issues/2609)) ([6cdc853](https://github.com/HankHuang0516/EClaw/commit/6cdc853dc884cdb95bd47214942768981f218ae0))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))
* **settings:** wire petdx avatar into channel-account chips ([#2626](https://github.com/HankHuang0516/EClaw/issues/2626)) ([88aec77](https://github.com/HankHuang0516/EClaw/commit/88aec772628c240e97b336bb5820892ad632d1ae))
* **files:** wire petdx avatar into entity filter & per-file badges ([#2627](https://github.com/HankHuang0516/EClaw/issues/2627)) ([5b3e5cc](https://github.com/HankHuang0516/EClaw/commit/5b3e5cc542d9da69bb4e92500fd03a542ea33f00))
* **mindmap:** wrap hardcoded zh-TW UI strings with i18n t() ([#2607](https://github.com/HankHuang0516/EClaw/issues/2607)) ([166af87](https://github.com/HankHuang0516/EClaw/commit/166af8772b2121a24aaf34a83b3de970e9b3b571)), closes [#2606](https://github.com/HankHuang0516/EClaw/issues/2606)


### Performance Improvements

* **mindmap:** force-graph hardening for 1000/2000-node graphs ([#2684](https://github.com/HankHuang0516/EClaw/issues/2684)) ([da8b1c8](https://github.com/HankHuang0516/EClaw/commit/da8b1c8f947ab8bc8fa455c1962a91146623a1fc))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-13)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **notifications:** add kanban_done + kanban_done_auto toggles to Android Settings ([#2636](https://github.com/HankHuang0516/EClaw/issues/2636)) ([a710909](https://github.com/HankHuang0516/EClaw/commit/a7109095e3393b8564e7ef1b23d382a4fbb944b8))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **kanban:** comment input no longer overlaps last comment in card detail (PR [#2678](https://github.com/HankHuang0516/EClaw/issues/2678)) ([fba91fc](https://github.com/HankHuang0516/EClaw/commit/fba91fca15402b453a0db5ee857c0b16e6087055))
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **petdx:** drop dark-grey loading placeholder + preload sprite WEBP ([#2628](https://github.com/HankHuang0516/EClaw/issues/2628)) ([59cef38](https://github.com/HankHuang0516/EClaw/commit/59cef387bd69ca99d7d15c86a1364856d3849ad8)), closes [#1a1a1a](https://github.com/HankHuang0516/EClaw/issues/1a1a1a)
* **entities:** expose botSecret to owner so wallpaper service can poll companions ([#2615](https://github.com/HankHuang0516/EClaw/issues/2615)) ([04470fc](https://github.com/HankHuang0516/EClaw/commit/04470fce8f8c3fce2b1ba8b243e776606f107502))
* **rental:** expose owner_public_code in marketplace so plaza CTA can route ([#2616](https://github.com/HankHuang0516/EClaw/issues/2616)) ([4d1372f](https://github.com/HankHuang0516/EClaw/commit/4d1372f717d93cab65543e87c852e74e9fb67071)), closes [#2610](https://github.com/HankHuang0516/EClaw/issues/2610)
* **mindmap:** fallback to device scope when entityId is null ([#2728](https://github.com/HankHuang0516/EClaw/issues/2728)) ([7572312](https://github.com/HankHuang0516/EClaw/commit/7572312433d3d75fc245eda48a28919ce14bd927))
* **i18n:** fill Spanish drift keys ([#2751](https://github.com/HankHuang0516/EClaw/issues/2751)) ([0ad0ee5](https://github.com/HankHuang0516/EClaw/commit/0ad0ee55f7fac3e6ac46d891539950dab4d553cc))
* **portal:** fit embedded org chart to mobile viewport ([#2674](https://github.com/HankHuang0516/EClaw/issues/2674)) ([1c4e1b4](https://github.com/HankHuang0516/EClaw/commit/1c4e1b413ea7027b4cd4b8ecda981b0d0e12e66b))
* **uiux:** harden chat previews and roster preview ([#2769](https://github.com/HankHuang0516/EClaw/issues/2769)) ([466d4d3](https://github.com/HankHuang0516/EClaw/commit/466d4d3ef81c628d3f58db64323946053d7bf61c))
* **mention-parser:** ignore @-mentions inside markdown code spans ([#2645](https://github.com/HankHuang0516/EClaw/issues/2645)) ([8da19d4](https://github.com/HankHuang0516/EClaw/commit/8da19d4a79ceb4152bf2144ee0847c61ce3e1def)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **kanban:** lazy-load dependency chips via IntersectionObserver ([#2632](https://github.com/HankHuang0516/EClaw/issues/2632)) ([20586b4](https://github.com/HankHuang0516/EClaw/commit/20586b43357335f9eb6a190c02d58c8e36b58aba)), closes [#2631](https://github.com/HankHuang0516/EClaw/issues/2631)
* **kanban:** make card sorting deterministic ([#2756](https://github.com/HankHuang0516/EClaw/issues/2756)) ([48e2117](https://github.com/HankHuang0516/EClaw/commit/48e2117b64e37f05dc635e0a3b67bfd43cbe48f5))
* **kanban:** notify reviewer on manual /move → review ([#2753](https://github.com/HankHuang0516/EClaw/issues/2753)) ([6cbbb4e](https://github.com/HankHuang0516/EClaw/commit/6cbbb4ee8c0d4d8ad54df2e9b5faaa3699bd530f))
* **wallpaper:** off-load spritesheet fetch to IO so per-petdx sprites actually render ([#2618](https://github.com/HankHuang0516/EClaw/issues/2618)) ([61b832c](https://github.com/HankHuang0516/EClaw/commit/61b832c9fa8a1d0caab810ccc942d85c63349267)), closes [#2615](https://github.com/HankHuang0516/EClaw/issues/2615) [#2577](https://github.com/HankHuang0516/EClaw/issues/2577)
* **portal:** petdx-browser cookie-session fallback for device-login ([#2757](https://github.com/HankHuang0516/EClaw/issues/2757)) ([ca275f4](https://github.com/HankHuang0516/EClaw/commit/ca275f4519835da0c7ad71c588908a18f6f138d8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **i18n:** positional format specifiers for feedback_result_logs (7 locales) ([#2597](https://github.com/HankHuang0516/EClaw/issues/2597)) ([21aedc7](https://github.com/HankHuang0516/EClaw/commit/21aedc7eebc7a2839e340136f38dfdfd4dabb9dc))
* **avatar-petdx:** preserve descriptor across transient API failures (flicker) ([#2625](https://github.com/HankHuang0516/EClaw/issues/2625)) ([7b1c606](https://github.com/HankHuang0516/EClaw/commit/7b1c606514f7698d72ec95cf6c556e4043966186))
* **chat:** preserve scroll anchor while reading history ([#2693](https://github.com/HankHuang0516/EClaw/issues/2693)) ([945fdb7](https://github.com/HankHuang0516/EClaw/commit/945fdb7192b791b31882e1e75568dd8b11e4686f))
* **promo:** pull video embed from /promo-chat-avatar.html ([#2724](https://github.com/HankHuang0516/EClaw/issues/2724)) ([2afabc8](https://github.com/HankHuang0516/EClaw/commit/2afabc8c5ff8b25218a7cb857e8adfa572c8e9d5))
* **portal:** reduce QA-discovered request fanout ([#2656](https://github.com/HankHuang0516/EClaw/issues/2656)) ([1e46d6b](https://github.com/HankHuang0516/EClaw/commit/1e46d6bab61e58c65b452b6503d953f8dddeee75))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **portal:** remove org chart fit scale floor ([#2676](https://github.com/HankHuang0516/EClaw/issues/2676)) ([0f01606](https://github.com/HankHuang0516/EClaw/commit/0f016068b963bb5f800a02f28817c7174979d913))
* **i18n:** rename mm_empty_title → mm_state_empty_title in mindmap.html ([#2683](https://github.com/HankHuang0516/EClaw/issues/2683)) ([c79c109](https://github.com/HankHuang0516/EClaw/commit/c79c109bea23142e8a6d9ace976d105af1280ec9))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **chat:** render mention avatars with companion renderer ([#2633](https://github.com/HankHuang0516/EClaw/issues/2633)) ([03e205f](https://github.com/HankHuang0516/EClaw/commit/03e205f663ecd2c2f443d4009dd5af0093f0bbbb))
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* scheduled audit 2026-05-13 — 6 bugs, XSS, i18n ([#2668](https://github.com/HankHuang0516/EClaw/issues/2668)) ([21dd513](https://github.com/HankHuang0516/EClaw/commit/21dd513b4464738de29164265437435ba6cc4817)), closes [#2605](https://github.com/HankHuang0516/EClaw/issues/2605) [#2608](https://github.com/HankHuang0516/EClaw/issues/2608) [#2600](https://github.com/HankHuang0516/EClaw/issues/2600) [#2599](https://github.com/HankHuang0516/EClaw/issues/2599) [#2598](https://github.com/HankHuang0516/EClaw/issues/2598)
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **chat:** smart-chip preview falls back to inline c.comments when /comments fails (PR [#2677](https://github.com/HankHuang0516/EClaw/issues/2677)) ([7f4dffd](https://github.com/HankHuang0516/EClaw/commit/7f4dffd2c83ea86f296b8fa0610f0e67c9f1af11))
* **wallpaper:** stop Android live wallpaper flashing default lobster on companion change ([#2629](https://github.com/HankHuang0516/EClaw/issues/2629)) ([8b4f66f](https://github.com/HankHuang0516/EClaw/commit/8b4f66fcb335bf43128f924b761b6337c817095b)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **app:** WebView pages honor app-selected locale via ?lang= URL param ([#2672](https://github.com/HankHuang0516/EClaw/issues/2672)) ([8ed8757](https://github.com/HankHuang0516/EClaw/commit/8ed8757aec5bf214e837cc0d81bf2b23f1993a91)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* **community:** 1-click chat button on bot cards + utm tagging ([#2610](https://github.com/HankHuang0516/EClaw/issues/2610)) ([eee97b0](https://github.com/HankHuang0516/EClaw/commit/eee97b0e2e4e74945ec24f218a69a52800b97a66))
* **chat:** add avatar size preference ([#2714](https://github.com/HankHuang0516/EClaw/issues/2714)) ([6fe164a](https://github.com/HankHuang0516/EClaw/commit/6fe164ad8b22fa576d2dd9ad37c0d9fc295b5a83))
* **dashboard:** add Claude and Codex channel guides ([#2640](https://github.com/HankHuang0516/EClaw/issues/2640)) ([c64e4c4](https://github.com/HankHuang0516/EClaw/commit/c64e4c4afc78db58c5cd578f00486dd7b2fd3311))
* **dashboard:** add Claude Code channel guide card ([#2667](https://github.com/HankHuang0516/EClaw/issues/2667)) ([d70d75c](https://github.com/HankHuang0516/EClaw/commit/d70d75c0c8caa8a540358a9aab4556b8c1927a5c))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* **portal:** add entity selector to petdx-browser ([#2602](https://github.com/HankHuang0516/EClaw/issues/2602)) ([3fa067e](https://github.com/HankHuang0516/EClaw/commit/3fa067e00b38829b48a37cecd33ee81a9a1122d9))
* **kanban:** add explicit card links ([#2721](https://github.com/HankHuang0516/EClaw/issues/2721)) ([ef9f812](https://github.com/HankHuang0516/EClaw/commit/ef9f812a3fcf39efd07fd158ce90951bdd045ac7))
* **mindmap:** add GET /api/mindmap/graph force-graph projection ([#2680](https://github.com/HankHuang0516/EClaw/issues/2680)) ([a00b2e7](https://github.com/HankHuang0516/EClaw/commit/a00b2e775af2c4c98cd157f760ad87aeeee469f0)), closes [#2679](https://github.com/HankHuang0516/EClaw/issues/2679) [#2679](https://github.com/HankHuang0516/EClaw/issues/2679)
* **dashboard:** add Hermes channel promo card ([#2708](https://github.com/HankHuang0516/EClaw/issues/2708)) ([337aca1](https://github.com/HankHuang0516/EClaw/commit/337aca153d5a1cd7e888c065f00ae54db7872d91))
* **portal:** add Nagoya 5D4N trip static cross-ref page ([#2689](https://github.com/HankHuang0516/EClaw/issues/2689)) ([2e0efb6](https://github.com/HankHuang0516/EClaw/commit/2e0efb6dcdaff52226cc8854a96747000b12bdff))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **settings:** add rental roster management preview ([#2758](https://github.com/HankHuang0516/EClaw/issues/2758)) ([9706e59](https://github.com/HankHuang0516/EClaw/commit/9706e59ded140a90a6e02348124282bc69d89001))
* **rental:** add renter health chat indicator ([#2690](https://github.com/HankHuang0516/EClaw/issues/2690)) ([36cd2e9](https://github.com/HankHuang0516/EClaw/commit/36cd2e9802be4c7ebb03d3024617fa74aca48ffd))
* **companion:** bridge crafter-station/petdex gallery (1784 pets) ([#2601](https://github.com/HankHuang0516/EClaw/issues/2601)) ([2e245be](https://github.com/HankHuang0516/EClaw/commit/2e245bea6dd47ea7361b927d389188a3c23b6bb3))
* **promo:** chat avatar size feature landing page (self-hosted MP4) ([#2722](https://github.com/HankHuang0516/EClaw/issues/2722)) ([3852210](https://github.com/HankHuang0516/EClaw/commit/3852210d355704d018e3daca6b5f9512a011b210)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **rental:** enforce strict rebind refunds ([#2703](https://github.com/HankHuang0516/EClaw/issues/2703)) ([a1859c5](https://github.com/HankHuang0516/EClaw/commit/a1859c50e6fb3991d7a8051491502d824a14a116))
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **chat:** link card previews to kanban ([#2754](https://github.com/HankHuang0516/EClaw/issues/2754)) ([2261240](https://github.com/HankHuang0516/EClaw/commit/22612402c2e95efb07246629e81a849be41ee9c7))
* **mission:** link notes to kanban cards ([#2723](https://github.com/HankHuang0516/EClaw/issues/2723)) ([b36dc18](https://github.com/HankHuang0516/EClaw/commit/b36dc18f3a8facf12e0b6046351c222f1e99dc55))
* **mindmap:** mission.html link to /portal/mindmap.html + deprecate /api/mission/mindmap ([#2685](https://github.com/HankHuang0516/EClaw/issues/2685)) ([11e297b](https://github.com/HankHuang0516/EClaw/commit/11e297bab1c9b56fcde3027d6500b7c58891bf18)), closes [#2680](https://github.com/HankHuang0516/EClaw/issues/2680) [#2684](https://github.com/HankHuang0516/EClaw/issues/2684)
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **avatar:** petdx render on card-holder my-cards (Phase 1b) ([#2621](https://github.com/HankHuang0516/EClaw/issues/2621)) ([f78ba8b](https://github.com/HankHuang0516/EClaw/commit/f78ba8b18acc426936ab6d8a82ca7541effea00d))
* **avatar:** petdx render on dashboard entity grid / org chart / bindings (Phase 1b) ([#2622](https://github.com/HankHuang0516/EClaw/issues/2622)) ([f417749](https://github.com/HankHuang0516/EClaw/commit/f41774914451048e8cd76e9ae30416a0642e173b)), closes [#2620](https://github.com/HankHuang0516/EClaw/issues/2620) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621)
* **avatar:** petdx render on kanban auto-assign / pulse / comment avatars (Phase 1b) ([#2624](https://github.com/HankHuang0516/EClaw/issues/2624)) ([6bff5f8](https://github.com/HankHuang0516/EClaw/commit/6bff5f80440d0bd91a6b1721cde9478d685c4d46))
* **avatar:** petdx render on mission skill/rule/soul entity dialogs (Phase 1b) ([#2623](https://github.com/HankHuang0516/EClaw/issues/2623)) ([129327b](https://github.com/HankHuang0516/EClaw/commit/129327bc7b91056659f1ab7e8d5e3f5260d951fb))
* **mindmap:** portal/mindmap.html force-graph prototype ([#129](https://github.com/HankHuang0516/EClaw/issues/129)) ([#2681](https://github.com/HankHuang0516/EClaw/issues/2681)) ([0f15e69](https://github.com/HankHuang0516/EClaw/commit/0f15e6930f0697c37fa08f3219edb8f9e499837f)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **portal:** redo nagoya trip page in professional tour-guide style ([#2691](https://github.com/HankHuang0516/EClaw/issues/2691)) ([b2378c0](https://github.com/HankHuang0516/EClaw/commit/b2378c06ee20fa9cccfdceceb1a4c9e0b3072f59))
* **avatar:** render selected petdx companion in chat avatars ([#2620](https://github.com/HankHuang0516/EClaw/issues/2620)) ([0bdd046](https://github.com/HankHuang0516/EClaw/commit/0bdd046fe1b1c428e32edda366ff112c08927f4c))
* **home:** replace native home with WebView hosting dashboard.html ([#2634](https://github.com/HankHuang0516/EClaw/issues/2634)) ([e69ea81](https://github.com/HankHuang0516/EClaw/commit/e69ea8160c239b083a83d6dc83a4f1c3f901c863))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **chat:** support message deep links ([#2719](https://github.com/HankHuang0516/EClaw/issues/2719)) ([2dc0f1e](https://github.com/HankHuang0516/EClaw/commit/2dc0f1eeb259e1a0848db4a03186b989372cd91c))
* **mission:** support note deep links ([#2717](https://github.com/HankHuang0516/EClaw/issues/2717)) ([2efd3a5](https://github.com/HankHuang0516/EClaw/commit/2efd3a5e741217a07c0b0ac54a0ddd010e0ebe23))
* **share-chat:** twitter card + per-bot og:image/twitter:* in SSR ([#2609](https://github.com/HankHuang0516/EClaw/issues/2609)) ([6cdc853](https://github.com/HankHuang0516/EClaw/commit/6cdc853dc884cdb95bd47214942768981f218ae0))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))
* **settings:** wire petdx avatar into channel-account chips ([#2626](https://github.com/HankHuang0516/EClaw/issues/2626)) ([88aec77](https://github.com/HankHuang0516/EClaw/commit/88aec772628c240e97b336bb5820892ad632d1ae))
* **files:** wire petdx avatar into entity filter & per-file badges ([#2627](https://github.com/HankHuang0516/EClaw/issues/2627)) ([5b3e5cc](https://github.com/HankHuang0516/EClaw/commit/5b3e5cc542d9da69bb4e92500fd03a542ea33f00))
* **mindmap:** wrap hardcoded zh-TW UI strings with i18n t() ([#2607](https://github.com/HankHuang0516/EClaw/issues/2607)) ([166af87](https://github.com/HankHuang0516/EClaw/commit/166af8772b2121a24aaf34a83b3de970e9b3b571)), closes [#2606](https://github.com/HankHuang0516/EClaw/issues/2606)


### Performance Improvements

* **mindmap:** force-graph hardening for 1000/2000-node graphs ([#2684](https://github.com/HankHuang0516/EClaw/issues/2684)) ([da8b1c8](https://github.com/HankHuang0516/EClaw/commit/da8b1c8f947ab8bc8fa455c1962a91146623a1fc))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-13)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **notifications:** add kanban_done + kanban_done_auto toggles to Android Settings ([#2636](https://github.com/HankHuang0516/EClaw/issues/2636)) ([a710909](https://github.com/HankHuang0516/EClaw/commit/a7109095e3393b8564e7ef1b23d382a4fbb944b8))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **kanban:** comment input no longer overlaps last comment in card detail (PR [#2678](https://github.com/HankHuang0516/EClaw/issues/2678)) ([fba91fc](https://github.com/HankHuang0516/EClaw/commit/fba91fca15402b453a0db5ee857c0b16e6087055))
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **petdx:** drop dark-grey loading placeholder + preload sprite WEBP ([#2628](https://github.com/HankHuang0516/EClaw/issues/2628)) ([59cef38](https://github.com/HankHuang0516/EClaw/commit/59cef387bd69ca99d7d15c86a1364856d3849ad8)), closes [#1a1a1a](https://github.com/HankHuang0516/EClaw/issues/1a1a1a)
* **entities:** expose botSecret to owner so wallpaper service can poll companions ([#2615](https://github.com/HankHuang0516/EClaw/issues/2615)) ([04470fc](https://github.com/HankHuang0516/EClaw/commit/04470fce8f8c3fce2b1ba8b243e776606f107502))
* **rental:** expose owner_public_code in marketplace so plaza CTA can route ([#2616](https://github.com/HankHuang0516/EClaw/issues/2616)) ([4d1372f](https://github.com/HankHuang0516/EClaw/commit/4d1372f717d93cab65543e87c852e74e9fb67071)), closes [#2610](https://github.com/HankHuang0516/EClaw/issues/2610)
* **mindmap:** fallback to device scope when entityId is null ([#2728](https://github.com/HankHuang0516/EClaw/issues/2728)) ([7572312](https://github.com/HankHuang0516/EClaw/commit/7572312433d3d75fc245eda48a28919ce14bd927))
* **i18n:** fill Spanish drift keys ([#2751](https://github.com/HankHuang0516/EClaw/issues/2751)) ([0ad0ee5](https://github.com/HankHuang0516/EClaw/commit/0ad0ee55f7fac3e6ac46d891539950dab4d553cc))
* **portal:** fit embedded org chart to mobile viewport ([#2674](https://github.com/HankHuang0516/EClaw/issues/2674)) ([1c4e1b4](https://github.com/HankHuang0516/EClaw/commit/1c4e1b413ea7027b4cd4b8ecda981b0d0e12e66b))
* **mention-parser:** ignore @-mentions inside markdown code spans ([#2645](https://github.com/HankHuang0516/EClaw/issues/2645)) ([8da19d4](https://github.com/HankHuang0516/EClaw/commit/8da19d4a79ceb4152bf2144ee0847c61ce3e1def)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **kanban:** lazy-load dependency chips via IntersectionObserver ([#2632](https://github.com/HankHuang0516/EClaw/issues/2632)) ([20586b4](https://github.com/HankHuang0516/EClaw/commit/20586b43357335f9eb6a190c02d58c8e36b58aba)), closes [#2631](https://github.com/HankHuang0516/EClaw/issues/2631)
* **kanban:** make card sorting deterministic ([#2756](https://github.com/HankHuang0516/EClaw/issues/2756)) ([48e2117](https://github.com/HankHuang0516/EClaw/commit/48e2117b64e37f05dc635e0a3b67bfd43cbe48f5))
* **kanban:** notify reviewer on manual /move → review ([#2753](https://github.com/HankHuang0516/EClaw/issues/2753)) ([6cbbb4e](https://github.com/HankHuang0516/EClaw/commit/6cbbb4ee8c0d4d8ad54df2e9b5faaa3699bd530f))
* **wallpaper:** off-load spritesheet fetch to IO so per-petdx sprites actually render ([#2618](https://github.com/HankHuang0516/EClaw/issues/2618)) ([61b832c](https://github.com/HankHuang0516/EClaw/commit/61b832c9fa8a1d0caab810ccc942d85c63349267)), closes [#2615](https://github.com/HankHuang0516/EClaw/issues/2615) [#2577](https://github.com/HankHuang0516/EClaw/issues/2577)
* **portal:** petdx-browser cookie-session fallback for device-login ([#2757](https://github.com/HankHuang0516/EClaw/issues/2757)) ([ca275f4](https://github.com/HankHuang0516/EClaw/commit/ca275f4519835da0c7ad71c588908a18f6f138d8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **i18n:** positional format specifiers for feedback_result_logs (7 locales) ([#2597](https://github.com/HankHuang0516/EClaw/issues/2597)) ([21aedc7](https://github.com/HankHuang0516/EClaw/commit/21aedc7eebc7a2839e340136f38dfdfd4dabb9dc))
* **avatar-petdx:** preserve descriptor across transient API failures (flicker) ([#2625](https://github.com/HankHuang0516/EClaw/issues/2625)) ([7b1c606](https://github.com/HankHuang0516/EClaw/commit/7b1c606514f7698d72ec95cf6c556e4043966186))
* **chat:** preserve scroll anchor while reading history ([#2693](https://github.com/HankHuang0516/EClaw/issues/2693)) ([945fdb7](https://github.com/HankHuang0516/EClaw/commit/945fdb7192b791b31882e1e75568dd8b11e4686f))
* **promo:** pull video embed from /promo-chat-avatar.html ([#2724](https://github.com/HankHuang0516/EClaw/issues/2724)) ([2afabc8](https://github.com/HankHuang0516/EClaw/commit/2afabc8c5ff8b25218a7cb857e8adfa572c8e9d5))
* **portal:** reduce QA-discovered request fanout ([#2656](https://github.com/HankHuang0516/EClaw/issues/2656)) ([1e46d6b](https://github.com/HankHuang0516/EClaw/commit/1e46d6bab61e58c65b452b6503d953f8dddeee75))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **portal:** remove org chart fit scale floor ([#2676](https://github.com/HankHuang0516/EClaw/issues/2676)) ([0f01606](https://github.com/HankHuang0516/EClaw/commit/0f016068b963bb5f800a02f28817c7174979d913))
* **i18n:** rename mm_empty_title → mm_state_empty_title in mindmap.html ([#2683](https://github.com/HankHuang0516/EClaw/issues/2683)) ([c79c109](https://github.com/HankHuang0516/EClaw/commit/c79c109bea23142e8a6d9ace976d105af1280ec9))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **chat:** render mention avatars with companion renderer ([#2633](https://github.com/HankHuang0516/EClaw/issues/2633)) ([03e205f](https://github.com/HankHuang0516/EClaw/commit/03e205f663ecd2c2f443d4009dd5af0093f0bbbb))
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* scheduled audit 2026-05-13 — 6 bugs, XSS, i18n ([#2668](https://github.com/HankHuang0516/EClaw/issues/2668)) ([21dd513](https://github.com/HankHuang0516/EClaw/commit/21dd513b4464738de29164265437435ba6cc4817)), closes [#2605](https://github.com/HankHuang0516/EClaw/issues/2605) [#2608](https://github.com/HankHuang0516/EClaw/issues/2608) [#2600](https://github.com/HankHuang0516/EClaw/issues/2600) [#2599](https://github.com/HankHuang0516/EClaw/issues/2599) [#2598](https://github.com/HankHuang0516/EClaw/issues/2598)
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **chat:** smart-chip preview falls back to inline c.comments when /comments fails (PR [#2677](https://github.com/HankHuang0516/EClaw/issues/2677)) ([7f4dffd](https://github.com/HankHuang0516/EClaw/commit/7f4dffd2c83ea86f296b8fa0610f0e67c9f1af11))
* **wallpaper:** stop Android live wallpaper flashing default lobster on companion change ([#2629](https://github.com/HankHuang0516/EClaw/issues/2629)) ([8b4f66f](https://github.com/HankHuang0516/EClaw/commit/8b4f66fcb335bf43128f924b761b6337c817095b)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **app:** WebView pages honor app-selected locale via ?lang= URL param ([#2672](https://github.com/HankHuang0516/EClaw/issues/2672)) ([8ed8757](https://github.com/HankHuang0516/EClaw/commit/8ed8757aec5bf214e837cc0d81bf2b23f1993a91)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* **community:** 1-click chat button on bot cards + utm tagging ([#2610](https://github.com/HankHuang0516/EClaw/issues/2610)) ([eee97b0](https://github.com/HankHuang0516/EClaw/commit/eee97b0e2e4e74945ec24f218a69a52800b97a66))
* **chat:** add avatar size preference ([#2714](https://github.com/HankHuang0516/EClaw/issues/2714)) ([6fe164a](https://github.com/HankHuang0516/EClaw/commit/6fe164ad8b22fa576d2dd9ad37c0d9fc295b5a83))
* **dashboard:** add Claude and Codex channel guides ([#2640](https://github.com/HankHuang0516/EClaw/issues/2640)) ([c64e4c4](https://github.com/HankHuang0516/EClaw/commit/c64e4c4afc78db58c5cd578f00486dd7b2fd3311))
* **dashboard:** add Claude Code channel guide card ([#2667](https://github.com/HankHuang0516/EClaw/issues/2667)) ([d70d75c](https://github.com/HankHuang0516/EClaw/commit/d70d75c0c8caa8a540358a9aab4556b8c1927a5c))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* **portal:** add entity selector to petdx-browser ([#2602](https://github.com/HankHuang0516/EClaw/issues/2602)) ([3fa067e](https://github.com/HankHuang0516/EClaw/commit/3fa067e00b38829b48a37cecd33ee81a9a1122d9))
* **kanban:** add explicit card links ([#2721](https://github.com/HankHuang0516/EClaw/issues/2721)) ([ef9f812](https://github.com/HankHuang0516/EClaw/commit/ef9f812a3fcf39efd07fd158ce90951bdd045ac7))
* **mindmap:** add GET /api/mindmap/graph force-graph projection ([#2680](https://github.com/HankHuang0516/EClaw/issues/2680)) ([a00b2e7](https://github.com/HankHuang0516/EClaw/commit/a00b2e775af2c4c98cd157f760ad87aeeee469f0)), closes [#2679](https://github.com/HankHuang0516/EClaw/issues/2679) [#2679](https://github.com/HankHuang0516/EClaw/issues/2679)
* **dashboard:** add Hermes channel promo card ([#2708](https://github.com/HankHuang0516/EClaw/issues/2708)) ([337aca1](https://github.com/HankHuang0516/EClaw/commit/337aca153d5a1cd7e888c065f00ae54db7872d91))
* **portal:** add Nagoya 5D4N trip static cross-ref page ([#2689](https://github.com/HankHuang0516/EClaw/issues/2689)) ([2e0efb6](https://github.com/HankHuang0516/EClaw/commit/2e0efb6dcdaff52226cc8854a96747000b12bdff))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **settings:** add rental roster management preview ([#2758](https://github.com/HankHuang0516/EClaw/issues/2758)) ([9706e59](https://github.com/HankHuang0516/EClaw/commit/9706e59ded140a90a6e02348124282bc69d89001))
* **rental:** add renter health chat indicator ([#2690](https://github.com/HankHuang0516/EClaw/issues/2690)) ([36cd2e9](https://github.com/HankHuang0516/EClaw/commit/36cd2e9802be4c7ebb03d3024617fa74aca48ffd))
* **companion:** bridge crafter-station/petdex gallery (1784 pets) ([#2601](https://github.com/HankHuang0516/EClaw/issues/2601)) ([2e245be](https://github.com/HankHuang0516/EClaw/commit/2e245bea6dd47ea7361b927d389188a3c23b6bb3))
* **promo:** chat avatar size feature landing page (self-hosted MP4) ([#2722](https://github.com/HankHuang0516/EClaw/issues/2722)) ([3852210](https://github.com/HankHuang0516/EClaw/commit/3852210d355704d018e3daca6b5f9512a011b210)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **rental:** enforce strict rebind refunds ([#2703](https://github.com/HankHuang0516/EClaw/issues/2703)) ([a1859c5](https://github.com/HankHuang0516/EClaw/commit/a1859c50e6fb3991d7a8051491502d824a14a116))
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **chat:** link card previews to kanban ([#2754](https://github.com/HankHuang0516/EClaw/issues/2754)) ([2261240](https://github.com/HankHuang0516/EClaw/commit/22612402c2e95efb07246629e81a849be41ee9c7))
* **mission:** link notes to kanban cards ([#2723](https://github.com/HankHuang0516/EClaw/issues/2723)) ([b36dc18](https://github.com/HankHuang0516/EClaw/commit/b36dc18f3a8facf12e0b6046351c222f1e99dc55))
* **mindmap:** mission.html link to /portal/mindmap.html + deprecate /api/mission/mindmap ([#2685](https://github.com/HankHuang0516/EClaw/issues/2685)) ([11e297b](https://github.com/HankHuang0516/EClaw/commit/11e297bab1c9b56fcde3027d6500b7c58891bf18)), closes [#2680](https://github.com/HankHuang0516/EClaw/issues/2680) [#2684](https://github.com/HankHuang0516/EClaw/issues/2684)
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **avatar:** petdx render on card-holder my-cards (Phase 1b) ([#2621](https://github.com/HankHuang0516/EClaw/issues/2621)) ([f78ba8b](https://github.com/HankHuang0516/EClaw/commit/f78ba8b18acc426936ab6d8a82ca7541effea00d))
* **avatar:** petdx render on dashboard entity grid / org chart / bindings (Phase 1b) ([#2622](https://github.com/HankHuang0516/EClaw/issues/2622)) ([f417749](https://github.com/HankHuang0516/EClaw/commit/f41774914451048e8cd76e9ae30416a0642e173b)), closes [#2620](https://github.com/HankHuang0516/EClaw/issues/2620) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621)
* **avatar:** petdx render on kanban auto-assign / pulse / comment avatars (Phase 1b) ([#2624](https://github.com/HankHuang0516/EClaw/issues/2624)) ([6bff5f8](https://github.com/HankHuang0516/EClaw/commit/6bff5f80440d0bd91a6b1721cde9478d685c4d46))
* **avatar:** petdx render on mission skill/rule/soul entity dialogs (Phase 1b) ([#2623](https://github.com/HankHuang0516/EClaw/issues/2623)) ([129327b](https://github.com/HankHuang0516/EClaw/commit/129327bc7b91056659f1ab7e8d5e3f5260d951fb))
* **mindmap:** portal/mindmap.html force-graph prototype ([#129](https://github.com/HankHuang0516/EClaw/issues/129)) ([#2681](https://github.com/HankHuang0516/EClaw/issues/2681)) ([0f15e69](https://github.com/HankHuang0516/EClaw/commit/0f15e6930f0697c37fa08f3219edb8f9e499837f)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **portal:** redo nagoya trip page in professional tour-guide style ([#2691](https://github.com/HankHuang0516/EClaw/issues/2691)) ([b2378c0](https://github.com/HankHuang0516/EClaw/commit/b2378c06ee20fa9cccfdceceb1a4c9e0b3072f59))
* **avatar:** render selected petdx companion in chat avatars ([#2620](https://github.com/HankHuang0516/EClaw/issues/2620)) ([0bdd046](https://github.com/HankHuang0516/EClaw/commit/0bdd046fe1b1c428e32edda366ff112c08927f4c))
* **home:** replace native home with WebView hosting dashboard.html ([#2634](https://github.com/HankHuang0516/EClaw/issues/2634)) ([e69ea81](https://github.com/HankHuang0516/EClaw/commit/e69ea8160c239b083a83d6dc83a4f1c3f901c863))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **chat:** support message deep links ([#2719](https://github.com/HankHuang0516/EClaw/issues/2719)) ([2dc0f1e](https://github.com/HankHuang0516/EClaw/commit/2dc0f1eeb259e1a0848db4a03186b989372cd91c))
* **mission:** support note deep links ([#2717](https://github.com/HankHuang0516/EClaw/issues/2717)) ([2efd3a5](https://github.com/HankHuang0516/EClaw/commit/2efd3a5e741217a07c0b0ac54a0ddd010e0ebe23))
* **share-chat:** twitter card + per-bot og:image/twitter:* in SSR ([#2609](https://github.com/HankHuang0516/EClaw/issues/2609)) ([6cdc853](https://github.com/HankHuang0516/EClaw/commit/6cdc853dc884cdb95bd47214942768981f218ae0))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))
* **settings:** wire petdx avatar into channel-account chips ([#2626](https://github.com/HankHuang0516/EClaw/issues/2626)) ([88aec77](https://github.com/HankHuang0516/EClaw/commit/88aec772628c240e97b336bb5820892ad632d1ae))
* **files:** wire petdx avatar into entity filter & per-file badges ([#2627](https://github.com/HankHuang0516/EClaw/issues/2627)) ([5b3e5cc](https://github.com/HankHuang0516/EClaw/commit/5b3e5cc542d9da69bb4e92500fd03a542ea33f00))
* **mindmap:** wrap hardcoded zh-TW UI strings with i18n t() ([#2607](https://github.com/HankHuang0516/EClaw/issues/2607)) ([166af87](https://github.com/HankHuang0516/EClaw/commit/166af8772b2121a24aaf34a83b3de970e9b3b571)), closes [#2606](https://github.com/HankHuang0516/EClaw/issues/2606)


### Performance Improvements

* **mindmap:** force-graph hardening for 1000/2000-node graphs ([#2684](https://github.com/HankHuang0516/EClaw/issues/2684)) ([da8b1c8](https://github.com/HankHuang0516/EClaw/commit/da8b1c8f947ab8bc8fa455c1962a91146623a1fc))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-13)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **notifications:** add kanban_done + kanban_done_auto toggles to Android Settings ([#2636](https://github.com/HankHuang0516/EClaw/issues/2636)) ([a710909](https://github.com/HankHuang0516/EClaw/commit/a7109095e3393b8564e7ef1b23d382a4fbb944b8))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **kanban:** comment input no longer overlaps last comment in card detail (PR [#2678](https://github.com/HankHuang0516/EClaw/issues/2678)) ([fba91fc](https://github.com/HankHuang0516/EClaw/commit/fba91fca15402b453a0db5ee857c0b16e6087055))
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **petdx:** drop dark-grey loading placeholder + preload sprite WEBP ([#2628](https://github.com/HankHuang0516/EClaw/issues/2628)) ([59cef38](https://github.com/HankHuang0516/EClaw/commit/59cef387bd69ca99d7d15c86a1364856d3849ad8)), closes [#1a1a1a](https://github.com/HankHuang0516/EClaw/issues/1a1a1a)
* **entities:** expose botSecret to owner so wallpaper service can poll companions ([#2615](https://github.com/HankHuang0516/EClaw/issues/2615)) ([04470fc](https://github.com/HankHuang0516/EClaw/commit/04470fce8f8c3fce2b1ba8b243e776606f107502))
* **rental:** expose owner_public_code in marketplace so plaza CTA can route ([#2616](https://github.com/HankHuang0516/EClaw/issues/2616)) ([4d1372f](https://github.com/HankHuang0516/EClaw/commit/4d1372f717d93cab65543e87c852e74e9fb67071)), closes [#2610](https://github.com/HankHuang0516/EClaw/issues/2610)
* **mindmap:** fallback to device scope when entityId is null ([#2728](https://github.com/HankHuang0516/EClaw/issues/2728)) ([7572312](https://github.com/HankHuang0516/EClaw/commit/7572312433d3d75fc245eda48a28919ce14bd927))
* **i18n:** fill Spanish drift keys ([#2751](https://github.com/HankHuang0516/EClaw/issues/2751)) ([0ad0ee5](https://github.com/HankHuang0516/EClaw/commit/0ad0ee55f7fac3e6ac46d891539950dab4d553cc))
* **portal:** fit embedded org chart to mobile viewport ([#2674](https://github.com/HankHuang0516/EClaw/issues/2674)) ([1c4e1b4](https://github.com/HankHuang0516/EClaw/commit/1c4e1b413ea7027b4cd4b8ecda981b0d0e12e66b))
* **mention-parser:** ignore @-mentions inside markdown code spans ([#2645](https://github.com/HankHuang0516/EClaw/issues/2645)) ([8da19d4](https://github.com/HankHuang0516/EClaw/commit/8da19d4a79ceb4152bf2144ee0847c61ce3e1def)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **kanban:** lazy-load dependency chips via IntersectionObserver ([#2632](https://github.com/HankHuang0516/EClaw/issues/2632)) ([20586b4](https://github.com/HankHuang0516/EClaw/commit/20586b43357335f9eb6a190c02d58c8e36b58aba)), closes [#2631](https://github.com/HankHuang0516/EClaw/issues/2631)
* **kanban:** make card sorting deterministic ([#2756](https://github.com/HankHuang0516/EClaw/issues/2756)) ([48e2117](https://github.com/HankHuang0516/EClaw/commit/48e2117b64e37f05dc635e0a3b67bfd43cbe48f5))
* **kanban:** notify reviewer on manual /move → review ([#2753](https://github.com/HankHuang0516/EClaw/issues/2753)) ([6cbbb4e](https://github.com/HankHuang0516/EClaw/commit/6cbbb4ee8c0d4d8ad54df2e9b5faaa3699bd530f))
* **wallpaper:** off-load spritesheet fetch to IO so per-petdx sprites actually render ([#2618](https://github.com/HankHuang0516/EClaw/issues/2618)) ([61b832c](https://github.com/HankHuang0516/EClaw/commit/61b832c9fa8a1d0caab810ccc942d85c63349267)), closes [#2615](https://github.com/HankHuang0516/EClaw/issues/2615) [#2577](https://github.com/HankHuang0516/EClaw/issues/2577)
* **portal:** petdx-browser cookie-session fallback for device-login ([#2757](https://github.com/HankHuang0516/EClaw/issues/2757)) ([ca275f4](https://github.com/HankHuang0516/EClaw/commit/ca275f4519835da0c7ad71c588908a18f6f138d8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **i18n:** positional format specifiers for feedback_result_logs (7 locales) ([#2597](https://github.com/HankHuang0516/EClaw/issues/2597)) ([21aedc7](https://github.com/HankHuang0516/EClaw/commit/21aedc7eebc7a2839e340136f38dfdfd4dabb9dc))
* **avatar-petdx:** preserve descriptor across transient API failures (flicker) ([#2625](https://github.com/HankHuang0516/EClaw/issues/2625)) ([7b1c606](https://github.com/HankHuang0516/EClaw/commit/7b1c606514f7698d72ec95cf6c556e4043966186))
* **chat:** preserve scroll anchor while reading history ([#2693](https://github.com/HankHuang0516/EClaw/issues/2693)) ([945fdb7](https://github.com/HankHuang0516/EClaw/commit/945fdb7192b791b31882e1e75568dd8b11e4686f))
* **promo:** pull video embed from /promo-chat-avatar.html ([#2724](https://github.com/HankHuang0516/EClaw/issues/2724)) ([2afabc8](https://github.com/HankHuang0516/EClaw/commit/2afabc8c5ff8b25218a7cb857e8adfa572c8e9d5))
* **portal:** reduce QA-discovered request fanout ([#2656](https://github.com/HankHuang0516/EClaw/issues/2656)) ([1e46d6b](https://github.com/HankHuang0516/EClaw/commit/1e46d6bab61e58c65b452b6503d953f8dddeee75))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **portal:** remove org chart fit scale floor ([#2676](https://github.com/HankHuang0516/EClaw/issues/2676)) ([0f01606](https://github.com/HankHuang0516/EClaw/commit/0f016068b963bb5f800a02f28817c7174979d913))
* **i18n:** rename mm_empty_title → mm_state_empty_title in mindmap.html ([#2683](https://github.com/HankHuang0516/EClaw/issues/2683)) ([c79c109](https://github.com/HankHuang0516/EClaw/commit/c79c109bea23142e8a6d9ace976d105af1280ec9))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **chat:** render mention avatars with companion renderer ([#2633](https://github.com/HankHuang0516/EClaw/issues/2633)) ([03e205f](https://github.com/HankHuang0516/EClaw/commit/03e205f663ecd2c2f443d4009dd5af0093f0bbbb))
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* scheduled audit 2026-05-13 — 6 bugs, XSS, i18n ([#2668](https://github.com/HankHuang0516/EClaw/issues/2668)) ([21dd513](https://github.com/HankHuang0516/EClaw/commit/21dd513b4464738de29164265437435ba6cc4817)), closes [#2605](https://github.com/HankHuang0516/EClaw/issues/2605) [#2608](https://github.com/HankHuang0516/EClaw/issues/2608) [#2600](https://github.com/HankHuang0516/EClaw/issues/2600) [#2599](https://github.com/HankHuang0516/EClaw/issues/2599) [#2598](https://github.com/HankHuang0516/EClaw/issues/2598)
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **chat:** smart-chip preview falls back to inline c.comments when /comments fails (PR [#2677](https://github.com/HankHuang0516/EClaw/issues/2677)) ([7f4dffd](https://github.com/HankHuang0516/EClaw/commit/7f4dffd2c83ea86f296b8fa0610f0e67c9f1af11))
* **wallpaper:** stop Android live wallpaper flashing default lobster on companion change ([#2629](https://github.com/HankHuang0516/EClaw/issues/2629)) ([8b4f66f](https://github.com/HankHuang0516/EClaw/commit/8b4f66fcb335bf43128f924b761b6337c817095b)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **app:** WebView pages honor app-selected locale via ?lang= URL param ([#2672](https://github.com/HankHuang0516/EClaw/issues/2672)) ([8ed8757](https://github.com/HankHuang0516/EClaw/commit/8ed8757aec5bf214e837cc0d81bf2b23f1993a91)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* **community:** 1-click chat button on bot cards + utm tagging ([#2610](https://github.com/HankHuang0516/EClaw/issues/2610)) ([eee97b0](https://github.com/HankHuang0516/EClaw/commit/eee97b0e2e4e74945ec24f218a69a52800b97a66))
* **chat:** add avatar size preference ([#2714](https://github.com/HankHuang0516/EClaw/issues/2714)) ([6fe164a](https://github.com/HankHuang0516/EClaw/commit/6fe164ad8b22fa576d2dd9ad37c0d9fc295b5a83))
* **dashboard:** add Claude and Codex channel guides ([#2640](https://github.com/HankHuang0516/EClaw/issues/2640)) ([c64e4c4](https://github.com/HankHuang0516/EClaw/commit/c64e4c4afc78db58c5cd578f00486dd7b2fd3311))
* **dashboard:** add Claude Code channel guide card ([#2667](https://github.com/HankHuang0516/EClaw/issues/2667)) ([d70d75c](https://github.com/HankHuang0516/EClaw/commit/d70d75c0c8caa8a540358a9aab4556b8c1927a5c))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* **portal:** add entity selector to petdx-browser ([#2602](https://github.com/HankHuang0516/EClaw/issues/2602)) ([3fa067e](https://github.com/HankHuang0516/EClaw/commit/3fa067e00b38829b48a37cecd33ee81a9a1122d9))
* **kanban:** add explicit card links ([#2721](https://github.com/HankHuang0516/EClaw/issues/2721)) ([ef9f812](https://github.com/HankHuang0516/EClaw/commit/ef9f812a3fcf39efd07fd158ce90951bdd045ac7))
* **mindmap:** add GET /api/mindmap/graph force-graph projection ([#2680](https://github.com/HankHuang0516/EClaw/issues/2680)) ([a00b2e7](https://github.com/HankHuang0516/EClaw/commit/a00b2e775af2c4c98cd157f760ad87aeeee469f0)), closes [#2679](https://github.com/HankHuang0516/EClaw/issues/2679) [#2679](https://github.com/HankHuang0516/EClaw/issues/2679)
* **dashboard:** add Hermes channel promo card ([#2708](https://github.com/HankHuang0516/EClaw/issues/2708)) ([337aca1](https://github.com/HankHuang0516/EClaw/commit/337aca153d5a1cd7e888c065f00ae54db7872d91))
* **portal:** add Nagoya 5D4N trip static cross-ref page ([#2689](https://github.com/HankHuang0516/EClaw/issues/2689)) ([2e0efb6](https://github.com/HankHuang0516/EClaw/commit/2e0efb6dcdaff52226cc8854a96747000b12bdff))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **settings:** add rental roster management preview ([#2758](https://github.com/HankHuang0516/EClaw/issues/2758)) ([9706e59](https://github.com/HankHuang0516/EClaw/commit/9706e59ded140a90a6e02348124282bc69d89001))
* **rental:** add renter health chat indicator ([#2690](https://github.com/HankHuang0516/EClaw/issues/2690)) ([36cd2e9](https://github.com/HankHuang0516/EClaw/commit/36cd2e9802be4c7ebb03d3024617fa74aca48ffd))
* **companion:** bridge crafter-station/petdex gallery (1784 pets) ([#2601](https://github.com/HankHuang0516/EClaw/issues/2601)) ([2e245be](https://github.com/HankHuang0516/EClaw/commit/2e245bea6dd47ea7361b927d389188a3c23b6bb3))
* **promo:** chat avatar size feature landing page (self-hosted MP4) ([#2722](https://github.com/HankHuang0516/EClaw/issues/2722)) ([3852210](https://github.com/HankHuang0516/EClaw/commit/3852210d355704d018e3daca6b5f9512a011b210)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **rental:** enforce strict rebind refunds ([#2703](https://github.com/HankHuang0516/EClaw/issues/2703)) ([a1859c5](https://github.com/HankHuang0516/EClaw/commit/a1859c50e6fb3991d7a8051491502d824a14a116))
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **chat:** link card previews to kanban ([#2754](https://github.com/HankHuang0516/EClaw/issues/2754)) ([2261240](https://github.com/HankHuang0516/EClaw/commit/22612402c2e95efb07246629e81a849be41ee9c7))
* **mission:** link notes to kanban cards ([#2723](https://github.com/HankHuang0516/EClaw/issues/2723)) ([b36dc18](https://github.com/HankHuang0516/EClaw/commit/b36dc18f3a8facf12e0b6046351c222f1e99dc55))
* **mindmap:** mission.html link to /portal/mindmap.html + deprecate /api/mission/mindmap ([#2685](https://github.com/HankHuang0516/EClaw/issues/2685)) ([11e297b](https://github.com/HankHuang0516/EClaw/commit/11e297bab1c9b56fcde3027d6500b7c58891bf18)), closes [#2680](https://github.com/HankHuang0516/EClaw/issues/2680) [#2684](https://github.com/HankHuang0516/EClaw/issues/2684)
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **avatar:** petdx render on card-holder my-cards (Phase 1b) ([#2621](https://github.com/HankHuang0516/EClaw/issues/2621)) ([f78ba8b](https://github.com/HankHuang0516/EClaw/commit/f78ba8b18acc426936ab6d8a82ca7541effea00d))
* **avatar:** petdx render on dashboard entity grid / org chart / bindings (Phase 1b) ([#2622](https://github.com/HankHuang0516/EClaw/issues/2622)) ([f417749](https://github.com/HankHuang0516/EClaw/commit/f41774914451048e8cd76e9ae30416a0642e173b)), closes [#2620](https://github.com/HankHuang0516/EClaw/issues/2620) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621)
* **avatar:** petdx render on kanban auto-assign / pulse / comment avatars (Phase 1b) ([#2624](https://github.com/HankHuang0516/EClaw/issues/2624)) ([6bff5f8](https://github.com/HankHuang0516/EClaw/commit/6bff5f80440d0bd91a6b1721cde9478d685c4d46))
* **avatar:** petdx render on mission skill/rule/soul entity dialogs (Phase 1b) ([#2623](https://github.com/HankHuang0516/EClaw/issues/2623)) ([129327b](https://github.com/HankHuang0516/EClaw/commit/129327bc7b91056659f1ab7e8d5e3f5260d951fb))
* **mindmap:** portal/mindmap.html force-graph prototype ([#129](https://github.com/HankHuang0516/EClaw/issues/129)) ([#2681](https://github.com/HankHuang0516/EClaw/issues/2681)) ([0f15e69](https://github.com/HankHuang0516/EClaw/commit/0f15e6930f0697c37fa08f3219edb8f9e499837f)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **portal:** redo nagoya trip page in professional tour-guide style ([#2691](https://github.com/HankHuang0516/EClaw/issues/2691)) ([b2378c0](https://github.com/HankHuang0516/EClaw/commit/b2378c06ee20fa9cccfdceceb1a4c9e0b3072f59))
* **avatar:** render selected petdx companion in chat avatars ([#2620](https://github.com/HankHuang0516/EClaw/issues/2620)) ([0bdd046](https://github.com/HankHuang0516/EClaw/commit/0bdd046fe1b1c428e32edda366ff112c08927f4c))
* **home:** replace native home with WebView hosting dashboard.html ([#2634](https://github.com/HankHuang0516/EClaw/issues/2634)) ([e69ea81](https://github.com/HankHuang0516/EClaw/commit/e69ea8160c239b083a83d6dc83a4f1c3f901c863))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **chat:** support message deep links ([#2719](https://github.com/HankHuang0516/EClaw/issues/2719)) ([2dc0f1e](https://github.com/HankHuang0516/EClaw/commit/2dc0f1eeb259e1a0848db4a03186b989372cd91c))
* **mission:** support note deep links ([#2717](https://github.com/HankHuang0516/EClaw/issues/2717)) ([2efd3a5](https://github.com/HankHuang0516/EClaw/commit/2efd3a5e741217a07c0b0ac54a0ddd010e0ebe23))
* **share-chat:** twitter card + per-bot og:image/twitter:* in SSR ([#2609](https://github.com/HankHuang0516/EClaw/issues/2609)) ([6cdc853](https://github.com/HankHuang0516/EClaw/commit/6cdc853dc884cdb95bd47214942768981f218ae0))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))
* **settings:** wire petdx avatar into channel-account chips ([#2626](https://github.com/HankHuang0516/EClaw/issues/2626)) ([88aec77](https://github.com/HankHuang0516/EClaw/commit/88aec772628c240e97b336bb5820892ad632d1ae))
* **files:** wire petdx avatar into entity filter & per-file badges ([#2627](https://github.com/HankHuang0516/EClaw/issues/2627)) ([5b3e5cc](https://github.com/HankHuang0516/EClaw/commit/5b3e5cc542d9da69bb4e92500fd03a542ea33f00))
* **mindmap:** wrap hardcoded zh-TW UI strings with i18n t() ([#2607](https://github.com/HankHuang0516/EClaw/issues/2607)) ([166af87](https://github.com/HankHuang0516/EClaw/commit/166af8772b2121a24aaf34a83b3de970e9b3b571)), closes [#2606](https://github.com/HankHuang0516/EClaw/issues/2606)


### Performance Improvements

* **mindmap:** force-graph hardening for 1000/2000-node graphs ([#2684](https://github.com/HankHuang0516/EClaw/issues/2684)) ([da8b1c8](https://github.com/HankHuang0516/EClaw/commit/da8b1c8f947ab8bc8fa455c1962a91146623a1fc))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-13)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **notifications:** add kanban_done + kanban_done_auto toggles to Android Settings ([#2636](https://github.com/HankHuang0516/EClaw/issues/2636)) ([a710909](https://github.com/HankHuang0516/EClaw/commit/a7109095e3393b8564e7ef1b23d382a4fbb944b8))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **kanban:** comment input no longer overlaps last comment in card detail (PR [#2678](https://github.com/HankHuang0516/EClaw/issues/2678)) ([fba91fc](https://github.com/HankHuang0516/EClaw/commit/fba91fca15402b453a0db5ee857c0b16e6087055))
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **petdx:** drop dark-grey loading placeholder + preload sprite WEBP ([#2628](https://github.com/HankHuang0516/EClaw/issues/2628)) ([59cef38](https://github.com/HankHuang0516/EClaw/commit/59cef387bd69ca99d7d15c86a1364856d3849ad8)), closes [#1a1a1a](https://github.com/HankHuang0516/EClaw/issues/1a1a1a)
* **entities:** expose botSecret to owner so wallpaper service can poll companions ([#2615](https://github.com/HankHuang0516/EClaw/issues/2615)) ([04470fc](https://github.com/HankHuang0516/EClaw/commit/04470fce8f8c3fce2b1ba8b243e776606f107502))
* **rental:** expose owner_public_code in marketplace so plaza CTA can route ([#2616](https://github.com/HankHuang0516/EClaw/issues/2616)) ([4d1372f](https://github.com/HankHuang0516/EClaw/commit/4d1372f717d93cab65543e87c852e74e9fb67071)), closes [#2610](https://github.com/HankHuang0516/EClaw/issues/2610)
* **mindmap:** fallback to device scope when entityId is null ([#2728](https://github.com/HankHuang0516/EClaw/issues/2728)) ([7572312](https://github.com/HankHuang0516/EClaw/commit/7572312433d3d75fc245eda48a28919ce14bd927))
* **i18n:** fill Spanish drift keys ([#2751](https://github.com/HankHuang0516/EClaw/issues/2751)) ([0ad0ee5](https://github.com/HankHuang0516/EClaw/commit/0ad0ee55f7fac3e6ac46d891539950dab4d553cc))
* **portal:** fit embedded org chart to mobile viewport ([#2674](https://github.com/HankHuang0516/EClaw/issues/2674)) ([1c4e1b4](https://github.com/HankHuang0516/EClaw/commit/1c4e1b413ea7027b4cd4b8ecda981b0d0e12e66b))
* **mention-parser:** ignore @-mentions inside markdown code spans ([#2645](https://github.com/HankHuang0516/EClaw/issues/2645)) ([8da19d4](https://github.com/HankHuang0516/EClaw/commit/8da19d4a79ceb4152bf2144ee0847c61ce3e1def)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **kanban:** lazy-load dependency chips via IntersectionObserver ([#2632](https://github.com/HankHuang0516/EClaw/issues/2632)) ([20586b4](https://github.com/HankHuang0516/EClaw/commit/20586b43357335f9eb6a190c02d58c8e36b58aba)), closes [#2631](https://github.com/HankHuang0516/EClaw/issues/2631)
* **kanban:** make card sorting deterministic ([#2756](https://github.com/HankHuang0516/EClaw/issues/2756)) ([48e2117](https://github.com/HankHuang0516/EClaw/commit/48e2117b64e37f05dc635e0a3b67bfd43cbe48f5))
* **kanban:** notify reviewer on manual /move → review ([#2753](https://github.com/HankHuang0516/EClaw/issues/2753)) ([6cbbb4e](https://github.com/HankHuang0516/EClaw/commit/6cbbb4ee8c0d4d8ad54df2e9b5faaa3699bd530f))
* **wallpaper:** off-load spritesheet fetch to IO so per-petdx sprites actually render ([#2618](https://github.com/HankHuang0516/EClaw/issues/2618)) ([61b832c](https://github.com/HankHuang0516/EClaw/commit/61b832c9fa8a1d0caab810ccc942d85c63349267)), closes [#2615](https://github.com/HankHuang0516/EClaw/issues/2615) [#2577](https://github.com/HankHuang0516/EClaw/issues/2577)
* **portal:** petdx-browser cookie-session fallback for device-login ([#2757](https://github.com/HankHuang0516/EClaw/issues/2757)) ([ca275f4](https://github.com/HankHuang0516/EClaw/commit/ca275f4519835da0c7ad71c588908a18f6f138d8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **i18n:** positional format specifiers for feedback_result_logs (7 locales) ([#2597](https://github.com/HankHuang0516/EClaw/issues/2597)) ([21aedc7](https://github.com/HankHuang0516/EClaw/commit/21aedc7eebc7a2839e340136f38dfdfd4dabb9dc))
* **avatar-petdx:** preserve descriptor across transient API failures (flicker) ([#2625](https://github.com/HankHuang0516/EClaw/issues/2625)) ([7b1c606](https://github.com/HankHuang0516/EClaw/commit/7b1c606514f7698d72ec95cf6c556e4043966186))
* **chat:** preserve scroll anchor while reading history ([#2693](https://github.com/HankHuang0516/EClaw/issues/2693)) ([945fdb7](https://github.com/HankHuang0516/EClaw/commit/945fdb7192b791b31882e1e75568dd8b11e4686f))
* **promo:** pull video embed from /promo-chat-avatar.html ([#2724](https://github.com/HankHuang0516/EClaw/issues/2724)) ([2afabc8](https://github.com/HankHuang0516/EClaw/commit/2afabc8c5ff8b25218a7cb857e8adfa572c8e9d5))
* **portal:** reduce QA-discovered request fanout ([#2656](https://github.com/HankHuang0516/EClaw/issues/2656)) ([1e46d6b](https://github.com/HankHuang0516/EClaw/commit/1e46d6bab61e58c65b452b6503d953f8dddeee75))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **portal:** remove org chart fit scale floor ([#2676](https://github.com/HankHuang0516/EClaw/issues/2676)) ([0f01606](https://github.com/HankHuang0516/EClaw/commit/0f016068b963bb5f800a02f28817c7174979d913))
* **i18n:** rename mm_empty_title → mm_state_empty_title in mindmap.html ([#2683](https://github.com/HankHuang0516/EClaw/issues/2683)) ([c79c109](https://github.com/HankHuang0516/EClaw/commit/c79c109bea23142e8a6d9ace976d105af1280ec9))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **chat:** render mention avatars with companion renderer ([#2633](https://github.com/HankHuang0516/EClaw/issues/2633)) ([03e205f](https://github.com/HankHuang0516/EClaw/commit/03e205f663ecd2c2f443d4009dd5af0093f0bbbb))
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* scheduled audit 2026-05-13 — 6 bugs, XSS, i18n ([#2668](https://github.com/HankHuang0516/EClaw/issues/2668)) ([21dd513](https://github.com/HankHuang0516/EClaw/commit/21dd513b4464738de29164265437435ba6cc4817)), closes [#2605](https://github.com/HankHuang0516/EClaw/issues/2605) [#2608](https://github.com/HankHuang0516/EClaw/issues/2608) [#2600](https://github.com/HankHuang0516/EClaw/issues/2600) [#2599](https://github.com/HankHuang0516/EClaw/issues/2599) [#2598](https://github.com/HankHuang0516/EClaw/issues/2598)
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **chat:** smart-chip preview falls back to inline c.comments when /comments fails (PR [#2677](https://github.com/HankHuang0516/EClaw/issues/2677)) ([7f4dffd](https://github.com/HankHuang0516/EClaw/commit/7f4dffd2c83ea86f296b8fa0610f0e67c9f1af11))
* **wallpaper:** stop Android live wallpaper flashing default lobster on companion change ([#2629](https://github.com/HankHuang0516/EClaw/issues/2629)) ([8b4f66f](https://github.com/HankHuang0516/EClaw/commit/8b4f66fcb335bf43128f924b761b6337c817095b)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **app:** WebView pages honor app-selected locale via ?lang= URL param ([#2672](https://github.com/HankHuang0516/EClaw/issues/2672)) ([8ed8757](https://github.com/HankHuang0516/EClaw/commit/8ed8757aec5bf214e837cc0d81bf2b23f1993a91)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* **community:** 1-click chat button on bot cards + utm tagging ([#2610](https://github.com/HankHuang0516/EClaw/issues/2610)) ([eee97b0](https://github.com/HankHuang0516/EClaw/commit/eee97b0e2e4e74945ec24f218a69a52800b97a66))
* **chat:** add avatar size preference ([#2714](https://github.com/HankHuang0516/EClaw/issues/2714)) ([6fe164a](https://github.com/HankHuang0516/EClaw/commit/6fe164ad8b22fa576d2dd9ad37c0d9fc295b5a83))
* **dashboard:** add Claude and Codex channel guides ([#2640](https://github.com/HankHuang0516/EClaw/issues/2640)) ([c64e4c4](https://github.com/HankHuang0516/EClaw/commit/c64e4c4afc78db58c5cd578f00486dd7b2fd3311))
* **dashboard:** add Claude Code channel guide card ([#2667](https://github.com/HankHuang0516/EClaw/issues/2667)) ([d70d75c](https://github.com/HankHuang0516/EClaw/commit/d70d75c0c8caa8a540358a9aab4556b8c1927a5c))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* **portal:** add entity selector to petdx-browser ([#2602](https://github.com/HankHuang0516/EClaw/issues/2602)) ([3fa067e](https://github.com/HankHuang0516/EClaw/commit/3fa067e00b38829b48a37cecd33ee81a9a1122d9))
* **kanban:** add explicit card links ([#2721](https://github.com/HankHuang0516/EClaw/issues/2721)) ([ef9f812](https://github.com/HankHuang0516/EClaw/commit/ef9f812a3fcf39efd07fd158ce90951bdd045ac7))
* **mindmap:** add GET /api/mindmap/graph force-graph projection ([#2680](https://github.com/HankHuang0516/EClaw/issues/2680)) ([a00b2e7](https://github.com/HankHuang0516/EClaw/commit/a00b2e775af2c4c98cd157f760ad87aeeee469f0)), closes [#2679](https://github.com/HankHuang0516/EClaw/issues/2679) [#2679](https://github.com/HankHuang0516/EClaw/issues/2679)
* **dashboard:** add Hermes channel promo card ([#2708](https://github.com/HankHuang0516/EClaw/issues/2708)) ([337aca1](https://github.com/HankHuang0516/EClaw/commit/337aca153d5a1cd7e888c065f00ae54db7872d91))
* **portal:** add Nagoya 5D4N trip static cross-ref page ([#2689](https://github.com/HankHuang0516/EClaw/issues/2689)) ([2e0efb6](https://github.com/HankHuang0516/EClaw/commit/2e0efb6dcdaff52226cc8854a96747000b12bdff))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **settings:** add rental roster management preview ([#2758](https://github.com/HankHuang0516/EClaw/issues/2758)) ([9706e59](https://github.com/HankHuang0516/EClaw/commit/9706e59ded140a90a6e02348124282bc69d89001))
* **rental:** add renter health chat indicator ([#2690](https://github.com/HankHuang0516/EClaw/issues/2690)) ([36cd2e9](https://github.com/HankHuang0516/EClaw/commit/36cd2e9802be4c7ebb03d3024617fa74aca48ffd))
* **companion:** bridge crafter-station/petdex gallery (1784 pets) ([#2601](https://github.com/HankHuang0516/EClaw/issues/2601)) ([2e245be](https://github.com/HankHuang0516/EClaw/commit/2e245bea6dd47ea7361b927d389188a3c23b6bb3))
* **promo:** chat avatar size feature landing page (self-hosted MP4) ([#2722](https://github.com/HankHuang0516/EClaw/issues/2722)) ([3852210](https://github.com/HankHuang0516/EClaw/commit/3852210d355704d018e3daca6b5f9512a011b210)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **rental:** enforce strict rebind refunds ([#2703](https://github.com/HankHuang0516/EClaw/issues/2703)) ([a1859c5](https://github.com/HankHuang0516/EClaw/commit/a1859c50e6fb3991d7a8051491502d824a14a116))
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **chat:** link card previews to kanban ([#2754](https://github.com/HankHuang0516/EClaw/issues/2754)) ([2261240](https://github.com/HankHuang0516/EClaw/commit/22612402c2e95efb07246629e81a849be41ee9c7))
* **mission:** link notes to kanban cards ([#2723](https://github.com/HankHuang0516/EClaw/issues/2723)) ([b36dc18](https://github.com/HankHuang0516/EClaw/commit/b36dc18f3a8facf12e0b6046351c222f1e99dc55))
* **mindmap:** mission.html link to /portal/mindmap.html + deprecate /api/mission/mindmap ([#2685](https://github.com/HankHuang0516/EClaw/issues/2685)) ([11e297b](https://github.com/HankHuang0516/EClaw/commit/11e297bab1c9b56fcde3027d6500b7c58891bf18)), closes [#2680](https://github.com/HankHuang0516/EClaw/issues/2680) [#2684](https://github.com/HankHuang0516/EClaw/issues/2684)
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **avatar:** petdx render on card-holder my-cards (Phase 1b) ([#2621](https://github.com/HankHuang0516/EClaw/issues/2621)) ([f78ba8b](https://github.com/HankHuang0516/EClaw/commit/f78ba8b18acc426936ab6d8a82ca7541effea00d))
* **avatar:** petdx render on dashboard entity grid / org chart / bindings (Phase 1b) ([#2622](https://github.com/HankHuang0516/EClaw/issues/2622)) ([f417749](https://github.com/HankHuang0516/EClaw/commit/f41774914451048e8cd76e9ae30416a0642e173b)), closes [#2620](https://github.com/HankHuang0516/EClaw/issues/2620) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621)
* **avatar:** petdx render on kanban auto-assign / pulse / comment avatars (Phase 1b) ([#2624](https://github.com/HankHuang0516/EClaw/issues/2624)) ([6bff5f8](https://github.com/HankHuang0516/EClaw/commit/6bff5f80440d0bd91a6b1721cde9478d685c4d46))
* **avatar:** petdx render on mission skill/rule/soul entity dialogs (Phase 1b) ([#2623](https://github.com/HankHuang0516/EClaw/issues/2623)) ([129327b](https://github.com/HankHuang0516/EClaw/commit/129327bc7b91056659f1ab7e8d5e3f5260d951fb))
* **mindmap:** portal/mindmap.html force-graph prototype ([#129](https://github.com/HankHuang0516/EClaw/issues/129)) ([#2681](https://github.com/HankHuang0516/EClaw/issues/2681)) ([0f15e69](https://github.com/HankHuang0516/EClaw/commit/0f15e6930f0697c37fa08f3219edb8f9e499837f)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **portal:** redo nagoya trip page in professional tour-guide style ([#2691](https://github.com/HankHuang0516/EClaw/issues/2691)) ([b2378c0](https://github.com/HankHuang0516/EClaw/commit/b2378c06ee20fa9cccfdceceb1a4c9e0b3072f59))
* **avatar:** render selected petdx companion in chat avatars ([#2620](https://github.com/HankHuang0516/EClaw/issues/2620)) ([0bdd046](https://github.com/HankHuang0516/EClaw/commit/0bdd046fe1b1c428e32edda366ff112c08927f4c))
* **home:** replace native home with WebView hosting dashboard.html ([#2634](https://github.com/HankHuang0516/EClaw/issues/2634)) ([e69ea81](https://github.com/HankHuang0516/EClaw/commit/e69ea8160c239b083a83d6dc83a4f1c3f901c863))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **chat:** support message deep links ([#2719](https://github.com/HankHuang0516/EClaw/issues/2719)) ([2dc0f1e](https://github.com/HankHuang0516/EClaw/commit/2dc0f1eeb259e1a0848db4a03186b989372cd91c))
* **mission:** support note deep links ([#2717](https://github.com/HankHuang0516/EClaw/issues/2717)) ([2efd3a5](https://github.com/HankHuang0516/EClaw/commit/2efd3a5e741217a07c0b0ac54a0ddd010e0ebe23))
* **share-chat:** twitter card + per-bot og:image/twitter:* in SSR ([#2609](https://github.com/HankHuang0516/EClaw/issues/2609)) ([6cdc853](https://github.com/HankHuang0516/EClaw/commit/6cdc853dc884cdb95bd47214942768981f218ae0))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))
* **settings:** wire petdx avatar into channel-account chips ([#2626](https://github.com/HankHuang0516/EClaw/issues/2626)) ([88aec77](https://github.com/HankHuang0516/EClaw/commit/88aec772628c240e97b336bb5820892ad632d1ae))
* **files:** wire petdx avatar into entity filter & per-file badges ([#2627](https://github.com/HankHuang0516/EClaw/issues/2627)) ([5b3e5cc](https://github.com/HankHuang0516/EClaw/commit/5b3e5cc542d9da69bb4e92500fd03a542ea33f00))
* **mindmap:** wrap hardcoded zh-TW UI strings with i18n t() ([#2607](https://github.com/HankHuang0516/EClaw/issues/2607)) ([166af87](https://github.com/HankHuang0516/EClaw/commit/166af8772b2121a24aaf34a83b3de970e9b3b571)), closes [#2606](https://github.com/HankHuang0516/EClaw/issues/2606)


### Performance Improvements

* **mindmap:** force-graph hardening for 1000/2000-node graphs ([#2684](https://github.com/HankHuang0516/EClaw/issues/2684)) ([da8b1c8](https://github.com/HankHuang0516/EClaw/commit/da8b1c8f947ab8bc8fa455c1962a91146623a1fc))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-13)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **notifications:** add kanban_done + kanban_done_auto toggles to Android Settings ([#2636](https://github.com/HankHuang0516/EClaw/issues/2636)) ([a710909](https://github.com/HankHuang0516/EClaw/commit/a7109095e3393b8564e7ef1b23d382a4fbb944b8))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **kanban:** comment input no longer overlaps last comment in card detail (PR [#2678](https://github.com/HankHuang0516/EClaw/issues/2678)) ([fba91fc](https://github.com/HankHuang0516/EClaw/commit/fba91fca15402b453a0db5ee857c0b16e6087055))
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **petdx:** drop dark-grey loading placeholder + preload sprite WEBP ([#2628](https://github.com/HankHuang0516/EClaw/issues/2628)) ([59cef38](https://github.com/HankHuang0516/EClaw/commit/59cef387bd69ca99d7d15c86a1364856d3849ad8)), closes [#1a1a1a](https://github.com/HankHuang0516/EClaw/issues/1a1a1a)
* **entities:** expose botSecret to owner so wallpaper service can poll companions ([#2615](https://github.com/HankHuang0516/EClaw/issues/2615)) ([04470fc](https://github.com/HankHuang0516/EClaw/commit/04470fce8f8c3fce2b1ba8b243e776606f107502))
* **rental:** expose owner_public_code in marketplace so plaza CTA can route ([#2616](https://github.com/HankHuang0516/EClaw/issues/2616)) ([4d1372f](https://github.com/HankHuang0516/EClaw/commit/4d1372f717d93cab65543e87c852e74e9fb67071)), closes [#2610](https://github.com/HankHuang0516/EClaw/issues/2610)
* **mindmap:** fallback to device scope when entityId is null ([#2728](https://github.com/HankHuang0516/EClaw/issues/2728)) ([7572312](https://github.com/HankHuang0516/EClaw/commit/7572312433d3d75fc245eda48a28919ce14bd927))
* **i18n:** fill Spanish drift keys ([#2751](https://github.com/HankHuang0516/EClaw/issues/2751)) ([0ad0ee5](https://github.com/HankHuang0516/EClaw/commit/0ad0ee55f7fac3e6ac46d891539950dab4d553cc))
* **portal:** fit embedded org chart to mobile viewport ([#2674](https://github.com/HankHuang0516/EClaw/issues/2674)) ([1c4e1b4](https://github.com/HankHuang0516/EClaw/commit/1c4e1b413ea7027b4cd4b8ecda981b0d0e12e66b))
* **mention-parser:** ignore @-mentions inside markdown code spans ([#2645](https://github.com/HankHuang0516/EClaw/issues/2645)) ([8da19d4](https://github.com/HankHuang0516/EClaw/commit/8da19d4a79ceb4152bf2144ee0847c61ce3e1def)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **kanban:** lazy-load dependency chips via IntersectionObserver ([#2632](https://github.com/HankHuang0516/EClaw/issues/2632)) ([20586b4](https://github.com/HankHuang0516/EClaw/commit/20586b43357335f9eb6a190c02d58c8e36b58aba)), closes [#2631](https://github.com/HankHuang0516/EClaw/issues/2631)
* **kanban:** make card sorting deterministic ([#2756](https://github.com/HankHuang0516/EClaw/issues/2756)) ([48e2117](https://github.com/HankHuang0516/EClaw/commit/48e2117b64e37f05dc635e0a3b67bfd43cbe48f5))
* **kanban:** notify reviewer on manual /move → review ([#2753](https://github.com/HankHuang0516/EClaw/issues/2753)) ([6cbbb4e](https://github.com/HankHuang0516/EClaw/commit/6cbbb4ee8c0d4d8ad54df2e9b5faaa3699bd530f))
* **wallpaper:** off-load spritesheet fetch to IO so per-petdx sprites actually render ([#2618](https://github.com/HankHuang0516/EClaw/issues/2618)) ([61b832c](https://github.com/HankHuang0516/EClaw/commit/61b832c9fa8a1d0caab810ccc942d85c63349267)), closes [#2615](https://github.com/HankHuang0516/EClaw/issues/2615) [#2577](https://github.com/HankHuang0516/EClaw/issues/2577)
* **portal:** petdx-browser cookie-session fallback for device-login ([#2757](https://github.com/HankHuang0516/EClaw/issues/2757)) ([ca275f4](https://github.com/HankHuang0516/EClaw/commit/ca275f4519835da0c7ad71c588908a18f6f138d8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **i18n:** positional format specifiers for feedback_result_logs (7 locales) ([#2597](https://github.com/HankHuang0516/EClaw/issues/2597)) ([21aedc7](https://github.com/HankHuang0516/EClaw/commit/21aedc7eebc7a2839e340136f38dfdfd4dabb9dc))
* **avatar-petdx:** preserve descriptor across transient API failures (flicker) ([#2625](https://github.com/HankHuang0516/EClaw/issues/2625)) ([7b1c606](https://github.com/HankHuang0516/EClaw/commit/7b1c606514f7698d72ec95cf6c556e4043966186))
* **chat:** preserve scroll anchor while reading history ([#2693](https://github.com/HankHuang0516/EClaw/issues/2693)) ([945fdb7](https://github.com/HankHuang0516/EClaw/commit/945fdb7192b791b31882e1e75568dd8b11e4686f))
* **promo:** pull video embed from /promo-chat-avatar.html ([#2724](https://github.com/HankHuang0516/EClaw/issues/2724)) ([2afabc8](https://github.com/HankHuang0516/EClaw/commit/2afabc8c5ff8b25218a7cb857e8adfa572c8e9d5))
* **portal:** reduce QA-discovered request fanout ([#2656](https://github.com/HankHuang0516/EClaw/issues/2656)) ([1e46d6b](https://github.com/HankHuang0516/EClaw/commit/1e46d6bab61e58c65b452b6503d953f8dddeee75))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **portal:** remove org chart fit scale floor ([#2676](https://github.com/HankHuang0516/EClaw/issues/2676)) ([0f01606](https://github.com/HankHuang0516/EClaw/commit/0f016068b963bb5f800a02f28817c7174979d913))
* **i18n:** rename mm_empty_title → mm_state_empty_title in mindmap.html ([#2683](https://github.com/HankHuang0516/EClaw/issues/2683)) ([c79c109](https://github.com/HankHuang0516/EClaw/commit/c79c109bea23142e8a6d9ace976d105af1280ec9))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **chat:** render mention avatars with companion renderer ([#2633](https://github.com/HankHuang0516/EClaw/issues/2633)) ([03e205f](https://github.com/HankHuang0516/EClaw/commit/03e205f663ecd2c2f443d4009dd5af0093f0bbbb))
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* scheduled audit 2026-05-13 — 6 bugs, XSS, i18n ([#2668](https://github.com/HankHuang0516/EClaw/issues/2668)) ([21dd513](https://github.com/HankHuang0516/EClaw/commit/21dd513b4464738de29164265437435ba6cc4817)), closes [#2605](https://github.com/HankHuang0516/EClaw/issues/2605) [#2608](https://github.com/HankHuang0516/EClaw/issues/2608) [#2600](https://github.com/HankHuang0516/EClaw/issues/2600) [#2599](https://github.com/HankHuang0516/EClaw/issues/2599) [#2598](https://github.com/HankHuang0516/EClaw/issues/2598)
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **chat:** smart-chip preview falls back to inline c.comments when /comments fails (PR [#2677](https://github.com/HankHuang0516/EClaw/issues/2677)) ([7f4dffd](https://github.com/HankHuang0516/EClaw/commit/7f4dffd2c83ea86f296b8fa0610f0e67c9f1af11))
* **wallpaper:** stop Android live wallpaper flashing default lobster on companion change ([#2629](https://github.com/HankHuang0516/EClaw/issues/2629)) ([8b4f66f](https://github.com/HankHuang0516/EClaw/commit/8b4f66fcb335bf43128f924b761b6337c817095b)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **app:** WebView pages honor app-selected locale via ?lang= URL param ([#2672](https://github.com/HankHuang0516/EClaw/issues/2672)) ([8ed8757](https://github.com/HankHuang0516/EClaw/commit/8ed8757aec5bf214e837cc0d81bf2b23f1993a91)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* **community:** 1-click chat button on bot cards + utm tagging ([#2610](https://github.com/HankHuang0516/EClaw/issues/2610)) ([eee97b0](https://github.com/HankHuang0516/EClaw/commit/eee97b0e2e4e74945ec24f218a69a52800b97a66))
* **chat:** add avatar size preference ([#2714](https://github.com/HankHuang0516/EClaw/issues/2714)) ([6fe164a](https://github.com/HankHuang0516/EClaw/commit/6fe164ad8b22fa576d2dd9ad37c0d9fc295b5a83))
* **dashboard:** add Claude and Codex channel guides ([#2640](https://github.com/HankHuang0516/EClaw/issues/2640)) ([c64e4c4](https://github.com/HankHuang0516/EClaw/commit/c64e4c4afc78db58c5cd578f00486dd7b2fd3311))
* **dashboard:** add Claude Code channel guide card ([#2667](https://github.com/HankHuang0516/EClaw/issues/2667)) ([d70d75c](https://github.com/HankHuang0516/EClaw/commit/d70d75c0c8caa8a540358a9aab4556b8c1927a5c))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* **portal:** add entity selector to petdx-browser ([#2602](https://github.com/HankHuang0516/EClaw/issues/2602)) ([3fa067e](https://github.com/HankHuang0516/EClaw/commit/3fa067e00b38829b48a37cecd33ee81a9a1122d9))
* **kanban:** add explicit card links ([#2721](https://github.com/HankHuang0516/EClaw/issues/2721)) ([ef9f812](https://github.com/HankHuang0516/EClaw/commit/ef9f812a3fcf39efd07fd158ce90951bdd045ac7))
* **mindmap:** add GET /api/mindmap/graph force-graph projection ([#2680](https://github.com/HankHuang0516/EClaw/issues/2680)) ([a00b2e7](https://github.com/HankHuang0516/EClaw/commit/a00b2e775af2c4c98cd157f760ad87aeeee469f0)), closes [#2679](https://github.com/HankHuang0516/EClaw/issues/2679) [#2679](https://github.com/HankHuang0516/EClaw/issues/2679)
* **dashboard:** add Hermes channel promo card ([#2708](https://github.com/HankHuang0516/EClaw/issues/2708)) ([337aca1](https://github.com/HankHuang0516/EClaw/commit/337aca153d5a1cd7e888c065f00ae54db7872d91))
* **portal:** add Nagoya 5D4N trip static cross-ref page ([#2689](https://github.com/HankHuang0516/EClaw/issues/2689)) ([2e0efb6](https://github.com/HankHuang0516/EClaw/commit/2e0efb6dcdaff52226cc8854a96747000b12bdff))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **settings:** add rental roster management preview ([#2758](https://github.com/HankHuang0516/EClaw/issues/2758)) ([9706e59](https://github.com/HankHuang0516/EClaw/commit/9706e59ded140a90a6e02348124282bc69d89001))
* **rental:** add renter health chat indicator ([#2690](https://github.com/HankHuang0516/EClaw/issues/2690)) ([36cd2e9](https://github.com/HankHuang0516/EClaw/commit/36cd2e9802be4c7ebb03d3024617fa74aca48ffd))
* **companion:** bridge crafter-station/petdex gallery (1784 pets) ([#2601](https://github.com/HankHuang0516/EClaw/issues/2601)) ([2e245be](https://github.com/HankHuang0516/EClaw/commit/2e245bea6dd47ea7361b927d389188a3c23b6bb3))
* **promo:** chat avatar size feature landing page (self-hosted MP4) ([#2722](https://github.com/HankHuang0516/EClaw/issues/2722)) ([3852210](https://github.com/HankHuang0516/EClaw/commit/3852210d355704d018e3daca6b5f9512a011b210)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **rental:** enforce strict rebind refunds ([#2703](https://github.com/HankHuang0516/EClaw/issues/2703)) ([a1859c5](https://github.com/HankHuang0516/EClaw/commit/a1859c50e6fb3991d7a8051491502d824a14a116))
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **chat:** link card previews to kanban ([#2754](https://github.com/HankHuang0516/EClaw/issues/2754)) ([2261240](https://github.com/HankHuang0516/EClaw/commit/22612402c2e95efb07246629e81a849be41ee9c7))
* **mission:** link notes to kanban cards ([#2723](https://github.com/HankHuang0516/EClaw/issues/2723)) ([b36dc18](https://github.com/HankHuang0516/EClaw/commit/b36dc18f3a8facf12e0b6046351c222f1e99dc55))
* **mindmap:** mission.html link to /portal/mindmap.html + deprecate /api/mission/mindmap ([#2685](https://github.com/HankHuang0516/EClaw/issues/2685)) ([11e297b](https://github.com/HankHuang0516/EClaw/commit/11e297bab1c9b56fcde3027d6500b7c58891bf18)), closes [#2680](https://github.com/HankHuang0516/EClaw/issues/2680) [#2684](https://github.com/HankHuang0516/EClaw/issues/2684)
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **avatar:** petdx render on card-holder my-cards (Phase 1b) ([#2621](https://github.com/HankHuang0516/EClaw/issues/2621)) ([f78ba8b](https://github.com/HankHuang0516/EClaw/commit/f78ba8b18acc426936ab6d8a82ca7541effea00d))
* **avatar:** petdx render on dashboard entity grid / org chart / bindings (Phase 1b) ([#2622](https://github.com/HankHuang0516/EClaw/issues/2622)) ([f417749](https://github.com/HankHuang0516/EClaw/commit/f41774914451048e8cd76e9ae30416a0642e173b)), closes [#2620](https://github.com/HankHuang0516/EClaw/issues/2620) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621)
* **avatar:** petdx render on kanban auto-assign / pulse / comment avatars (Phase 1b) ([#2624](https://github.com/HankHuang0516/EClaw/issues/2624)) ([6bff5f8](https://github.com/HankHuang0516/EClaw/commit/6bff5f80440d0bd91a6b1721cde9478d685c4d46))
* **avatar:** petdx render on mission skill/rule/soul entity dialogs (Phase 1b) ([#2623](https://github.com/HankHuang0516/EClaw/issues/2623)) ([129327b](https://github.com/HankHuang0516/EClaw/commit/129327bc7b91056659f1ab7e8d5e3f5260d951fb))
* **mindmap:** portal/mindmap.html force-graph prototype ([#129](https://github.com/HankHuang0516/EClaw/issues/129)) ([#2681](https://github.com/HankHuang0516/EClaw/issues/2681)) ([0f15e69](https://github.com/HankHuang0516/EClaw/commit/0f15e6930f0697c37fa08f3219edb8f9e499837f)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **portal:** redo nagoya trip page in professional tour-guide style ([#2691](https://github.com/HankHuang0516/EClaw/issues/2691)) ([b2378c0](https://github.com/HankHuang0516/EClaw/commit/b2378c06ee20fa9cccfdceceb1a4c9e0b3072f59))
* **avatar:** render selected petdx companion in chat avatars ([#2620](https://github.com/HankHuang0516/EClaw/issues/2620)) ([0bdd046](https://github.com/HankHuang0516/EClaw/commit/0bdd046fe1b1c428e32edda366ff112c08927f4c))
* **home:** replace native home with WebView hosting dashboard.html ([#2634](https://github.com/HankHuang0516/EClaw/issues/2634)) ([e69ea81](https://github.com/HankHuang0516/EClaw/commit/e69ea8160c239b083a83d6dc83a4f1c3f901c863))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **chat:** support message deep links ([#2719](https://github.com/HankHuang0516/EClaw/issues/2719)) ([2dc0f1e](https://github.com/HankHuang0516/EClaw/commit/2dc0f1eeb259e1a0848db4a03186b989372cd91c))
* **mission:** support note deep links ([#2717](https://github.com/HankHuang0516/EClaw/issues/2717)) ([2efd3a5](https://github.com/HankHuang0516/EClaw/commit/2efd3a5e741217a07c0b0ac54a0ddd010e0ebe23))
* **share-chat:** twitter card + per-bot og:image/twitter:* in SSR ([#2609](https://github.com/HankHuang0516/EClaw/issues/2609)) ([6cdc853](https://github.com/HankHuang0516/EClaw/commit/6cdc853dc884cdb95bd47214942768981f218ae0))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))
* **settings:** wire petdx avatar into channel-account chips ([#2626](https://github.com/HankHuang0516/EClaw/issues/2626)) ([88aec77](https://github.com/HankHuang0516/EClaw/commit/88aec772628c240e97b336bb5820892ad632d1ae))
* **files:** wire petdx avatar into entity filter & per-file badges ([#2627](https://github.com/HankHuang0516/EClaw/issues/2627)) ([5b3e5cc](https://github.com/HankHuang0516/EClaw/commit/5b3e5cc542d9da69bb4e92500fd03a542ea33f00))
* **mindmap:** wrap hardcoded zh-TW UI strings with i18n t() ([#2607](https://github.com/HankHuang0516/EClaw/issues/2607)) ([166af87](https://github.com/HankHuang0516/EClaw/commit/166af8772b2121a24aaf34a83b3de970e9b3b571)), closes [#2606](https://github.com/HankHuang0516/EClaw/issues/2606)


### Performance Improvements

* **mindmap:** force-graph hardening for 1000/2000-node graphs ([#2684](https://github.com/HankHuang0516/EClaw/issues/2684)) ([da8b1c8](https://github.com/HankHuang0516/EClaw/commit/da8b1c8f947ab8bc8fa455c1962a91146623a1fc))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-13)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **notifications:** add kanban_done + kanban_done_auto toggles to Android Settings ([#2636](https://github.com/HankHuang0516/EClaw/issues/2636)) ([a710909](https://github.com/HankHuang0516/EClaw/commit/a7109095e3393b8564e7ef1b23d382a4fbb944b8))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **kanban:** comment input no longer overlaps last comment in card detail (PR [#2678](https://github.com/HankHuang0516/EClaw/issues/2678)) ([fba91fc](https://github.com/HankHuang0516/EClaw/commit/fba91fca15402b453a0db5ee857c0b16e6087055))
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **petdx:** drop dark-grey loading placeholder + preload sprite WEBP ([#2628](https://github.com/HankHuang0516/EClaw/issues/2628)) ([59cef38](https://github.com/HankHuang0516/EClaw/commit/59cef387bd69ca99d7d15c86a1364856d3849ad8)), closes [#1a1a1a](https://github.com/HankHuang0516/EClaw/issues/1a1a1a)
* **entities:** expose botSecret to owner so wallpaper service can poll companions ([#2615](https://github.com/HankHuang0516/EClaw/issues/2615)) ([04470fc](https://github.com/HankHuang0516/EClaw/commit/04470fce8f8c3fce2b1ba8b243e776606f107502))
* **rental:** expose owner_public_code in marketplace so plaza CTA can route ([#2616](https://github.com/HankHuang0516/EClaw/issues/2616)) ([4d1372f](https://github.com/HankHuang0516/EClaw/commit/4d1372f717d93cab65543e87c852e74e9fb67071)), closes [#2610](https://github.com/HankHuang0516/EClaw/issues/2610)
* **mindmap:** fallback to device scope when entityId is null ([#2728](https://github.com/HankHuang0516/EClaw/issues/2728)) ([7572312](https://github.com/HankHuang0516/EClaw/commit/7572312433d3d75fc245eda48a28919ce14bd927))
* **i18n:** fill Spanish drift keys ([#2751](https://github.com/HankHuang0516/EClaw/issues/2751)) ([0ad0ee5](https://github.com/HankHuang0516/EClaw/commit/0ad0ee55f7fac3e6ac46d891539950dab4d553cc))
* **portal:** fit embedded org chart to mobile viewport ([#2674](https://github.com/HankHuang0516/EClaw/issues/2674)) ([1c4e1b4](https://github.com/HankHuang0516/EClaw/commit/1c4e1b413ea7027b4cd4b8ecda981b0d0e12e66b))
* **mention-parser:** ignore @-mentions inside markdown code spans ([#2645](https://github.com/HankHuang0516/EClaw/issues/2645)) ([8da19d4](https://github.com/HankHuang0516/EClaw/commit/8da19d4a79ceb4152bf2144ee0847c61ce3e1def)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **kanban:** lazy-load dependency chips via IntersectionObserver ([#2632](https://github.com/HankHuang0516/EClaw/issues/2632)) ([20586b4](https://github.com/HankHuang0516/EClaw/commit/20586b43357335f9eb6a190c02d58c8e36b58aba)), closes [#2631](https://github.com/HankHuang0516/EClaw/issues/2631)
* **kanban:** make card sorting deterministic ([#2756](https://github.com/HankHuang0516/EClaw/issues/2756)) ([48e2117](https://github.com/HankHuang0516/EClaw/commit/48e2117b64e37f05dc635e0a3b67bfd43cbe48f5))
* **kanban:** notify reviewer on manual /move → review ([#2753](https://github.com/HankHuang0516/EClaw/issues/2753)) ([6cbbb4e](https://github.com/HankHuang0516/EClaw/commit/6cbbb4ee8c0d4d8ad54df2e9b5faaa3699bd530f))
* **wallpaper:** off-load spritesheet fetch to IO so per-petdx sprites actually render ([#2618](https://github.com/HankHuang0516/EClaw/issues/2618)) ([61b832c](https://github.com/HankHuang0516/EClaw/commit/61b832c9fa8a1d0caab810ccc942d85c63349267)), closes [#2615](https://github.com/HankHuang0516/EClaw/issues/2615) [#2577](https://github.com/HankHuang0516/EClaw/issues/2577)
* **portal:** petdx-browser cookie-session fallback for device-login ([#2757](https://github.com/HankHuang0516/EClaw/issues/2757)) ([ca275f4](https://github.com/HankHuang0516/EClaw/commit/ca275f4519835da0c7ad71c588908a18f6f138d8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **i18n:** positional format specifiers for feedback_result_logs (7 locales) ([#2597](https://github.com/HankHuang0516/EClaw/issues/2597)) ([21aedc7](https://github.com/HankHuang0516/EClaw/commit/21aedc7eebc7a2839e340136f38dfdfd4dabb9dc))
* **avatar-petdx:** preserve descriptor across transient API failures (flicker) ([#2625](https://github.com/HankHuang0516/EClaw/issues/2625)) ([7b1c606](https://github.com/HankHuang0516/EClaw/commit/7b1c606514f7698d72ec95cf6c556e4043966186))
* **chat:** preserve scroll anchor while reading history ([#2693](https://github.com/HankHuang0516/EClaw/issues/2693)) ([945fdb7](https://github.com/HankHuang0516/EClaw/commit/945fdb7192b791b31882e1e75568dd8b11e4686f))
* **promo:** pull video embed from /promo-chat-avatar.html ([#2724](https://github.com/HankHuang0516/EClaw/issues/2724)) ([2afabc8](https://github.com/HankHuang0516/EClaw/commit/2afabc8c5ff8b25218a7cb857e8adfa572c8e9d5))
* **portal:** reduce QA-discovered request fanout ([#2656](https://github.com/HankHuang0516/EClaw/issues/2656)) ([1e46d6b](https://github.com/HankHuang0516/EClaw/commit/1e46d6bab61e58c65b452b6503d953f8dddeee75))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **portal:** remove org chart fit scale floor ([#2676](https://github.com/HankHuang0516/EClaw/issues/2676)) ([0f01606](https://github.com/HankHuang0516/EClaw/commit/0f016068b963bb5f800a02f28817c7174979d913))
* **i18n:** rename mm_empty_title → mm_state_empty_title in mindmap.html ([#2683](https://github.com/HankHuang0516/EClaw/issues/2683)) ([c79c109](https://github.com/HankHuang0516/EClaw/commit/c79c109bea23142e8a6d9ace976d105af1280ec9))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **chat:** render mention avatars with companion renderer ([#2633](https://github.com/HankHuang0516/EClaw/issues/2633)) ([03e205f](https://github.com/HankHuang0516/EClaw/commit/03e205f663ecd2c2f443d4009dd5af0093f0bbbb))
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* scheduled audit 2026-05-13 — 6 bugs, XSS, i18n ([#2668](https://github.com/HankHuang0516/EClaw/issues/2668)) ([21dd513](https://github.com/HankHuang0516/EClaw/commit/21dd513b4464738de29164265437435ba6cc4817)), closes [#2605](https://github.com/HankHuang0516/EClaw/issues/2605) [#2608](https://github.com/HankHuang0516/EClaw/issues/2608) [#2600](https://github.com/HankHuang0516/EClaw/issues/2600) [#2599](https://github.com/HankHuang0516/EClaw/issues/2599) [#2598](https://github.com/HankHuang0516/EClaw/issues/2598)
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **chat:** smart-chip preview falls back to inline c.comments when /comments fails (PR [#2677](https://github.com/HankHuang0516/EClaw/issues/2677)) ([7f4dffd](https://github.com/HankHuang0516/EClaw/commit/7f4dffd2c83ea86f296b8fa0610f0e67c9f1af11))
* **wallpaper:** stop Android live wallpaper flashing default lobster on companion change ([#2629](https://github.com/HankHuang0516/EClaw/issues/2629)) ([8b4f66f](https://github.com/HankHuang0516/EClaw/commit/8b4f66fcb335bf43128f924b761b6337c817095b)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **app:** WebView pages honor app-selected locale via ?lang= URL param ([#2672](https://github.com/HankHuang0516/EClaw/issues/2672)) ([8ed8757](https://github.com/HankHuang0516/EClaw/commit/8ed8757aec5bf214e837cc0d81bf2b23f1993a91)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* **community:** 1-click chat button on bot cards + utm tagging ([#2610](https://github.com/HankHuang0516/EClaw/issues/2610)) ([eee97b0](https://github.com/HankHuang0516/EClaw/commit/eee97b0e2e4e74945ec24f218a69a52800b97a66))
* **chat:** add avatar size preference ([#2714](https://github.com/HankHuang0516/EClaw/issues/2714)) ([6fe164a](https://github.com/HankHuang0516/EClaw/commit/6fe164ad8b22fa576d2dd9ad37c0d9fc295b5a83))
* **dashboard:** add Claude and Codex channel guides ([#2640](https://github.com/HankHuang0516/EClaw/issues/2640)) ([c64e4c4](https://github.com/HankHuang0516/EClaw/commit/c64e4c4afc78db58c5cd578f00486dd7b2fd3311))
* **dashboard:** add Claude Code channel guide card ([#2667](https://github.com/HankHuang0516/EClaw/issues/2667)) ([d70d75c](https://github.com/HankHuang0516/EClaw/commit/d70d75c0c8caa8a540358a9aab4556b8c1927a5c))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* **portal:** add entity selector to petdx-browser ([#2602](https://github.com/HankHuang0516/EClaw/issues/2602)) ([3fa067e](https://github.com/HankHuang0516/EClaw/commit/3fa067e00b38829b48a37cecd33ee81a9a1122d9))
* **kanban:** add explicit card links ([#2721](https://github.com/HankHuang0516/EClaw/issues/2721)) ([ef9f812](https://github.com/HankHuang0516/EClaw/commit/ef9f812a3fcf39efd07fd158ce90951bdd045ac7))
* **mindmap:** add GET /api/mindmap/graph force-graph projection ([#2680](https://github.com/HankHuang0516/EClaw/issues/2680)) ([a00b2e7](https://github.com/HankHuang0516/EClaw/commit/a00b2e775af2c4c98cd157f760ad87aeeee469f0)), closes [#2679](https://github.com/HankHuang0516/EClaw/issues/2679) [#2679](https://github.com/HankHuang0516/EClaw/issues/2679)
* **dashboard:** add Hermes channel promo card ([#2708](https://github.com/HankHuang0516/EClaw/issues/2708)) ([337aca1](https://github.com/HankHuang0516/EClaw/commit/337aca153d5a1cd7e888c065f00ae54db7872d91))
* **portal:** add Nagoya 5D4N trip static cross-ref page ([#2689](https://github.com/HankHuang0516/EClaw/issues/2689)) ([2e0efb6](https://github.com/HankHuang0516/EClaw/commit/2e0efb6dcdaff52226cc8854a96747000b12bdff))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **settings:** add rental roster management preview ([#2758](https://github.com/HankHuang0516/EClaw/issues/2758)) ([9706e59](https://github.com/HankHuang0516/EClaw/commit/9706e59ded140a90a6e02348124282bc69d89001))
* **rental:** add renter health chat indicator ([#2690](https://github.com/HankHuang0516/EClaw/issues/2690)) ([36cd2e9](https://github.com/HankHuang0516/EClaw/commit/36cd2e9802be4c7ebb03d3024617fa74aca48ffd))
* **companion:** bridge crafter-station/petdex gallery (1784 pets) ([#2601](https://github.com/HankHuang0516/EClaw/issues/2601)) ([2e245be](https://github.com/HankHuang0516/EClaw/commit/2e245bea6dd47ea7361b927d389188a3c23b6bb3))
* **promo:** chat avatar size feature landing page (self-hosted MP4) ([#2722](https://github.com/HankHuang0516/EClaw/issues/2722)) ([3852210](https://github.com/HankHuang0516/EClaw/commit/3852210d355704d018e3daca6b5f9512a011b210)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **rental:** enforce strict rebind refunds ([#2703](https://github.com/HankHuang0516/EClaw/issues/2703)) ([a1859c5](https://github.com/HankHuang0516/EClaw/commit/a1859c50e6fb3991d7a8051491502d824a14a116))
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **chat:** link card previews to kanban ([#2754](https://github.com/HankHuang0516/EClaw/issues/2754)) ([2261240](https://github.com/HankHuang0516/EClaw/commit/22612402c2e95efb07246629e81a849be41ee9c7))
* **mission:** link notes to kanban cards ([#2723](https://github.com/HankHuang0516/EClaw/issues/2723)) ([b36dc18](https://github.com/HankHuang0516/EClaw/commit/b36dc18f3a8facf12e0b6046351c222f1e99dc55))
* **mindmap:** mission.html link to /portal/mindmap.html + deprecate /api/mission/mindmap ([#2685](https://github.com/HankHuang0516/EClaw/issues/2685)) ([11e297b](https://github.com/HankHuang0516/EClaw/commit/11e297bab1c9b56fcde3027d6500b7c58891bf18)), closes [#2680](https://github.com/HankHuang0516/EClaw/issues/2680) [#2684](https://github.com/HankHuang0516/EClaw/issues/2684)
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **avatar:** petdx render on card-holder my-cards (Phase 1b) ([#2621](https://github.com/HankHuang0516/EClaw/issues/2621)) ([f78ba8b](https://github.com/HankHuang0516/EClaw/commit/f78ba8b18acc426936ab6d8a82ca7541effea00d))
* **avatar:** petdx render on dashboard entity grid / org chart / bindings (Phase 1b) ([#2622](https://github.com/HankHuang0516/EClaw/issues/2622)) ([f417749](https://github.com/HankHuang0516/EClaw/commit/f41774914451048e8cd76e9ae30416a0642e173b)), closes [#2620](https://github.com/HankHuang0516/EClaw/issues/2620) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621)
* **avatar:** petdx render on kanban auto-assign / pulse / comment avatars (Phase 1b) ([#2624](https://github.com/HankHuang0516/EClaw/issues/2624)) ([6bff5f8](https://github.com/HankHuang0516/EClaw/commit/6bff5f80440d0bd91a6b1721cde9478d685c4d46))
* **avatar:** petdx render on mission skill/rule/soul entity dialogs (Phase 1b) ([#2623](https://github.com/HankHuang0516/EClaw/issues/2623)) ([129327b](https://github.com/HankHuang0516/EClaw/commit/129327bc7b91056659f1ab7e8d5e3f5260d951fb))
* **mindmap:** portal/mindmap.html force-graph prototype ([#129](https://github.com/HankHuang0516/EClaw/issues/129)) ([#2681](https://github.com/HankHuang0516/EClaw/issues/2681)) ([0f15e69](https://github.com/HankHuang0516/EClaw/commit/0f15e6930f0697c37fa08f3219edb8f9e499837f)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **portal:** redo nagoya trip page in professional tour-guide style ([#2691](https://github.com/HankHuang0516/EClaw/issues/2691)) ([b2378c0](https://github.com/HankHuang0516/EClaw/commit/b2378c06ee20fa9cccfdceceb1a4c9e0b3072f59))
* **avatar:** render selected petdx companion in chat avatars ([#2620](https://github.com/HankHuang0516/EClaw/issues/2620)) ([0bdd046](https://github.com/HankHuang0516/EClaw/commit/0bdd046fe1b1c428e32edda366ff112c08927f4c))
* **home:** replace native home with WebView hosting dashboard.html ([#2634](https://github.com/HankHuang0516/EClaw/issues/2634)) ([e69ea81](https://github.com/HankHuang0516/EClaw/commit/e69ea8160c239b083a83d6dc83a4f1c3f901c863))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **chat:** support message deep links ([#2719](https://github.com/HankHuang0516/EClaw/issues/2719)) ([2dc0f1e](https://github.com/HankHuang0516/EClaw/commit/2dc0f1eeb259e1a0848db4a03186b989372cd91c))
* **mission:** support note deep links ([#2717](https://github.com/HankHuang0516/EClaw/issues/2717)) ([2efd3a5](https://github.com/HankHuang0516/EClaw/commit/2efd3a5e741217a07c0b0ac54a0ddd010e0ebe23))
* **share-chat:** twitter card + per-bot og:image/twitter:* in SSR ([#2609](https://github.com/HankHuang0516/EClaw/issues/2609)) ([6cdc853](https://github.com/HankHuang0516/EClaw/commit/6cdc853dc884cdb95bd47214942768981f218ae0))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))
* **settings:** wire petdx avatar into channel-account chips ([#2626](https://github.com/HankHuang0516/EClaw/issues/2626)) ([88aec77](https://github.com/HankHuang0516/EClaw/commit/88aec772628c240e97b336bb5820892ad632d1ae))
* **files:** wire petdx avatar into entity filter & per-file badges ([#2627](https://github.com/HankHuang0516/EClaw/issues/2627)) ([5b3e5cc](https://github.com/HankHuang0516/EClaw/commit/5b3e5cc542d9da69bb4e92500fd03a542ea33f00))
* **mindmap:** wrap hardcoded zh-TW UI strings with i18n t() ([#2607](https://github.com/HankHuang0516/EClaw/issues/2607)) ([166af87](https://github.com/HankHuang0516/EClaw/commit/166af8772b2121a24aaf34a83b3de970e9b3b571)), closes [#2606](https://github.com/HankHuang0516/EClaw/issues/2606)


### Performance Improvements

* **mindmap:** force-graph hardening for 1000/2000-node graphs ([#2684](https://github.com/HankHuang0516/EClaw/issues/2684)) ([da8b1c8](https://github.com/HankHuang0516/EClaw/commit/da8b1c8f947ab8bc8fa455c1962a91146623a1fc))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-13)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **notifications:** add kanban_done + kanban_done_auto toggles to Android Settings ([#2636](https://github.com/HankHuang0516/EClaw/issues/2636)) ([a710909](https://github.com/HankHuang0516/EClaw/commit/a7109095e3393b8564e7ef1b23d382a4fbb944b8))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **kanban:** comment input no longer overlaps last comment in card detail (PR [#2678](https://github.com/HankHuang0516/EClaw/issues/2678)) ([fba91fc](https://github.com/HankHuang0516/EClaw/commit/fba91fca15402b453a0db5ee857c0b16e6087055))
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **petdx:** drop dark-grey loading placeholder + preload sprite WEBP ([#2628](https://github.com/HankHuang0516/EClaw/issues/2628)) ([59cef38](https://github.com/HankHuang0516/EClaw/commit/59cef387bd69ca99d7d15c86a1364856d3849ad8)), closes [#1a1a1a](https://github.com/HankHuang0516/EClaw/issues/1a1a1a)
* **entities:** expose botSecret to owner so wallpaper service can poll companions ([#2615](https://github.com/HankHuang0516/EClaw/issues/2615)) ([04470fc](https://github.com/HankHuang0516/EClaw/commit/04470fce8f8c3fce2b1ba8b243e776606f107502))
* **rental:** expose owner_public_code in marketplace so plaza CTA can route ([#2616](https://github.com/HankHuang0516/EClaw/issues/2616)) ([4d1372f](https://github.com/HankHuang0516/EClaw/commit/4d1372f717d93cab65543e87c852e74e9fb67071)), closes [#2610](https://github.com/HankHuang0516/EClaw/issues/2610)
* **mindmap:** fallback to device scope when entityId is null ([#2728](https://github.com/HankHuang0516/EClaw/issues/2728)) ([7572312](https://github.com/HankHuang0516/EClaw/commit/7572312433d3d75fc245eda48a28919ce14bd927))
* **i18n:** fill Spanish drift keys ([#2751](https://github.com/HankHuang0516/EClaw/issues/2751)) ([0ad0ee5](https://github.com/HankHuang0516/EClaw/commit/0ad0ee55f7fac3e6ac46d891539950dab4d553cc))
* **portal:** fit embedded org chart to mobile viewport ([#2674](https://github.com/HankHuang0516/EClaw/issues/2674)) ([1c4e1b4](https://github.com/HankHuang0516/EClaw/commit/1c4e1b413ea7027b4cd4b8ecda981b0d0e12e66b))
* **mention-parser:** ignore @-mentions inside markdown code spans ([#2645](https://github.com/HankHuang0516/EClaw/issues/2645)) ([8da19d4](https://github.com/HankHuang0516/EClaw/commit/8da19d4a79ceb4152bf2144ee0847c61ce3e1def)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **kanban:** lazy-load dependency chips via IntersectionObserver ([#2632](https://github.com/HankHuang0516/EClaw/issues/2632)) ([20586b4](https://github.com/HankHuang0516/EClaw/commit/20586b43357335f9eb6a190c02d58c8e36b58aba)), closes [#2631](https://github.com/HankHuang0516/EClaw/issues/2631)
* **kanban:** make card sorting deterministic ([#2756](https://github.com/HankHuang0516/EClaw/issues/2756)) ([48e2117](https://github.com/HankHuang0516/EClaw/commit/48e2117b64e37f05dc635e0a3b67bfd43cbe48f5))
* **kanban:** notify reviewer on manual /move → review ([#2753](https://github.com/HankHuang0516/EClaw/issues/2753)) ([6cbbb4e](https://github.com/HankHuang0516/EClaw/commit/6cbbb4ee8c0d4d8ad54df2e9b5faaa3699bd530f))
* **wallpaper:** off-load spritesheet fetch to IO so per-petdx sprites actually render ([#2618](https://github.com/HankHuang0516/EClaw/issues/2618)) ([61b832c](https://github.com/HankHuang0516/EClaw/commit/61b832c9fa8a1d0caab810ccc942d85c63349267)), closes [#2615](https://github.com/HankHuang0516/EClaw/issues/2615) [#2577](https://github.com/HankHuang0516/EClaw/issues/2577)
* **portal:** petdx-browser cookie-session fallback for device-login ([#2757](https://github.com/HankHuang0516/EClaw/issues/2757)) ([ca275f4](https://github.com/HankHuang0516/EClaw/commit/ca275f4519835da0c7ad71c588908a18f6f138d8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **i18n:** positional format specifiers for feedback_result_logs (7 locales) ([#2597](https://github.com/HankHuang0516/EClaw/issues/2597)) ([21aedc7](https://github.com/HankHuang0516/EClaw/commit/21aedc7eebc7a2839e340136f38dfdfd4dabb9dc))
* **avatar-petdx:** preserve descriptor across transient API failures (flicker) ([#2625](https://github.com/HankHuang0516/EClaw/issues/2625)) ([7b1c606](https://github.com/HankHuang0516/EClaw/commit/7b1c606514f7698d72ec95cf6c556e4043966186))
* **chat:** preserve scroll anchor while reading history ([#2693](https://github.com/HankHuang0516/EClaw/issues/2693)) ([945fdb7](https://github.com/HankHuang0516/EClaw/commit/945fdb7192b791b31882e1e75568dd8b11e4686f))
* **promo:** pull video embed from /promo-chat-avatar.html ([#2724](https://github.com/HankHuang0516/EClaw/issues/2724)) ([2afabc8](https://github.com/HankHuang0516/EClaw/commit/2afabc8c5ff8b25218a7cb857e8adfa572c8e9d5))
* **portal:** reduce QA-discovered request fanout ([#2656](https://github.com/HankHuang0516/EClaw/issues/2656)) ([1e46d6b](https://github.com/HankHuang0516/EClaw/commit/1e46d6bab61e58c65b452b6503d953f8dddeee75))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **portal:** remove org chart fit scale floor ([#2676](https://github.com/HankHuang0516/EClaw/issues/2676)) ([0f01606](https://github.com/HankHuang0516/EClaw/commit/0f016068b963bb5f800a02f28817c7174979d913))
* **i18n:** rename mm_empty_title → mm_state_empty_title in mindmap.html ([#2683](https://github.com/HankHuang0516/EClaw/issues/2683)) ([c79c109](https://github.com/HankHuang0516/EClaw/commit/c79c109bea23142e8a6d9ace976d105af1280ec9))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **chat:** render mention avatars with companion renderer ([#2633](https://github.com/HankHuang0516/EClaw/issues/2633)) ([03e205f](https://github.com/HankHuang0516/EClaw/commit/03e205f663ecd2c2f443d4009dd5af0093f0bbbb))
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* scheduled audit 2026-05-13 — 6 bugs, XSS, i18n ([#2668](https://github.com/HankHuang0516/EClaw/issues/2668)) ([21dd513](https://github.com/HankHuang0516/EClaw/commit/21dd513b4464738de29164265437435ba6cc4817)), closes [#2605](https://github.com/HankHuang0516/EClaw/issues/2605) [#2608](https://github.com/HankHuang0516/EClaw/issues/2608) [#2600](https://github.com/HankHuang0516/EClaw/issues/2600) [#2599](https://github.com/HankHuang0516/EClaw/issues/2599) [#2598](https://github.com/HankHuang0516/EClaw/issues/2598)
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **chat:** smart-chip preview falls back to inline c.comments when /comments fails (PR [#2677](https://github.com/HankHuang0516/EClaw/issues/2677)) ([7f4dffd](https://github.com/HankHuang0516/EClaw/commit/7f4dffd2c83ea86f296b8fa0610f0e67c9f1af11))
* **wallpaper:** stop Android live wallpaper flashing default lobster on companion change ([#2629](https://github.com/HankHuang0516/EClaw/issues/2629)) ([8b4f66f](https://github.com/HankHuang0516/EClaw/commit/8b4f66fcb335bf43128f924b761b6337c817095b)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **app:** WebView pages honor app-selected locale via ?lang= URL param ([#2672](https://github.com/HankHuang0516/EClaw/issues/2672)) ([8ed8757](https://github.com/HankHuang0516/EClaw/commit/8ed8757aec5bf214e837cc0d81bf2b23f1993a91)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* **community:** 1-click chat button on bot cards + utm tagging ([#2610](https://github.com/HankHuang0516/EClaw/issues/2610)) ([eee97b0](https://github.com/HankHuang0516/EClaw/commit/eee97b0e2e4e74945ec24f218a69a52800b97a66))
* **chat:** add avatar size preference ([#2714](https://github.com/HankHuang0516/EClaw/issues/2714)) ([6fe164a](https://github.com/HankHuang0516/EClaw/commit/6fe164ad8b22fa576d2dd9ad37c0d9fc295b5a83))
* **dashboard:** add Claude and Codex channel guides ([#2640](https://github.com/HankHuang0516/EClaw/issues/2640)) ([c64e4c4](https://github.com/HankHuang0516/EClaw/commit/c64e4c4afc78db58c5cd578f00486dd7b2fd3311))
* **dashboard:** add Claude Code channel guide card ([#2667](https://github.com/HankHuang0516/EClaw/issues/2667)) ([d70d75c](https://github.com/HankHuang0516/EClaw/commit/d70d75c0c8caa8a540358a9aab4556b8c1927a5c))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* **portal:** add entity selector to petdx-browser ([#2602](https://github.com/HankHuang0516/EClaw/issues/2602)) ([3fa067e](https://github.com/HankHuang0516/EClaw/commit/3fa067e00b38829b48a37cecd33ee81a9a1122d9))
* **kanban:** add explicit card links ([#2721](https://github.com/HankHuang0516/EClaw/issues/2721)) ([ef9f812](https://github.com/HankHuang0516/EClaw/commit/ef9f812a3fcf39efd07fd158ce90951bdd045ac7))
* **mindmap:** add GET /api/mindmap/graph force-graph projection ([#2680](https://github.com/HankHuang0516/EClaw/issues/2680)) ([a00b2e7](https://github.com/HankHuang0516/EClaw/commit/a00b2e775af2c4c98cd157f760ad87aeeee469f0)), closes [#2679](https://github.com/HankHuang0516/EClaw/issues/2679) [#2679](https://github.com/HankHuang0516/EClaw/issues/2679)
* **dashboard:** add Hermes channel promo card ([#2708](https://github.com/HankHuang0516/EClaw/issues/2708)) ([337aca1](https://github.com/HankHuang0516/EClaw/commit/337aca153d5a1cd7e888c065f00ae54db7872d91))
* **portal:** add Nagoya 5D4N trip static cross-ref page ([#2689](https://github.com/HankHuang0516/EClaw/issues/2689)) ([2e0efb6](https://github.com/HankHuang0516/EClaw/commit/2e0efb6dcdaff52226cc8854a96747000b12bdff))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **settings:** add rental roster management preview ([#2758](https://github.com/HankHuang0516/EClaw/issues/2758)) ([9706e59](https://github.com/HankHuang0516/EClaw/commit/9706e59ded140a90a6e02348124282bc69d89001))
* **rental:** add renter health chat indicator ([#2690](https://github.com/HankHuang0516/EClaw/issues/2690)) ([36cd2e9](https://github.com/HankHuang0516/EClaw/commit/36cd2e9802be4c7ebb03d3024617fa74aca48ffd))
* **companion:** bridge crafter-station/petdex gallery (1784 pets) ([#2601](https://github.com/HankHuang0516/EClaw/issues/2601)) ([2e245be](https://github.com/HankHuang0516/EClaw/commit/2e245bea6dd47ea7361b927d389188a3c23b6bb3))
* **promo:** chat avatar size feature landing page (self-hosted MP4) ([#2722](https://github.com/HankHuang0516/EClaw/issues/2722)) ([3852210](https://github.com/HankHuang0516/EClaw/commit/3852210d355704d018e3daca6b5f9512a011b210)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **rental:** enforce strict rebind refunds ([#2703](https://github.com/HankHuang0516/EClaw/issues/2703)) ([a1859c5](https://github.com/HankHuang0516/EClaw/commit/a1859c50e6fb3991d7a8051491502d824a14a116))
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **chat:** link card previews to kanban ([#2754](https://github.com/HankHuang0516/EClaw/issues/2754)) ([2261240](https://github.com/HankHuang0516/EClaw/commit/22612402c2e95efb07246629e81a849be41ee9c7))
* **mission:** link notes to kanban cards ([#2723](https://github.com/HankHuang0516/EClaw/issues/2723)) ([b36dc18](https://github.com/HankHuang0516/EClaw/commit/b36dc18f3a8facf12e0b6046351c222f1e99dc55))
* **mindmap:** mission.html link to /portal/mindmap.html + deprecate /api/mission/mindmap ([#2685](https://github.com/HankHuang0516/EClaw/issues/2685)) ([11e297b](https://github.com/HankHuang0516/EClaw/commit/11e297bab1c9b56fcde3027d6500b7c58891bf18)), closes [#2680](https://github.com/HankHuang0516/EClaw/issues/2680) [#2684](https://github.com/HankHuang0516/EClaw/issues/2684)
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **avatar:** petdx render on card-holder my-cards (Phase 1b) ([#2621](https://github.com/HankHuang0516/EClaw/issues/2621)) ([f78ba8b](https://github.com/HankHuang0516/EClaw/commit/f78ba8b18acc426936ab6d8a82ca7541effea00d))
* **avatar:** petdx render on dashboard entity grid / org chart / bindings (Phase 1b) ([#2622](https://github.com/HankHuang0516/EClaw/issues/2622)) ([f417749](https://github.com/HankHuang0516/EClaw/commit/f41774914451048e8cd76e9ae30416a0642e173b)), closes [#2620](https://github.com/HankHuang0516/EClaw/issues/2620) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621)
* **avatar:** petdx render on kanban auto-assign / pulse / comment avatars (Phase 1b) ([#2624](https://github.com/HankHuang0516/EClaw/issues/2624)) ([6bff5f8](https://github.com/HankHuang0516/EClaw/commit/6bff5f80440d0bd91a6b1721cde9478d685c4d46))
* **avatar:** petdx render on mission skill/rule/soul entity dialogs (Phase 1b) ([#2623](https://github.com/HankHuang0516/EClaw/issues/2623)) ([129327b](https://github.com/HankHuang0516/EClaw/commit/129327bc7b91056659f1ab7e8d5e3f5260d951fb))
* **mindmap:** portal/mindmap.html force-graph prototype ([#129](https://github.com/HankHuang0516/EClaw/issues/129)) ([#2681](https://github.com/HankHuang0516/EClaw/issues/2681)) ([0f15e69](https://github.com/HankHuang0516/EClaw/commit/0f15e6930f0697c37fa08f3219edb8f9e499837f)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **portal:** redo nagoya trip page in professional tour-guide style ([#2691](https://github.com/HankHuang0516/EClaw/issues/2691)) ([b2378c0](https://github.com/HankHuang0516/EClaw/commit/b2378c06ee20fa9cccfdceceb1a4c9e0b3072f59))
* **avatar:** render selected petdx companion in chat avatars ([#2620](https://github.com/HankHuang0516/EClaw/issues/2620)) ([0bdd046](https://github.com/HankHuang0516/EClaw/commit/0bdd046fe1b1c428e32edda366ff112c08927f4c))
* **home:** replace native home with WebView hosting dashboard.html ([#2634](https://github.com/HankHuang0516/EClaw/issues/2634)) ([e69ea81](https://github.com/HankHuang0516/EClaw/commit/e69ea8160c239b083a83d6dc83a4f1c3f901c863))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **chat:** support message deep links ([#2719](https://github.com/HankHuang0516/EClaw/issues/2719)) ([2dc0f1e](https://github.com/HankHuang0516/EClaw/commit/2dc0f1eeb259e1a0848db4a03186b989372cd91c))
* **mission:** support note deep links ([#2717](https://github.com/HankHuang0516/EClaw/issues/2717)) ([2efd3a5](https://github.com/HankHuang0516/EClaw/commit/2efd3a5e741217a07c0b0ac54a0ddd010e0ebe23))
* **share-chat:** twitter card + per-bot og:image/twitter:* in SSR ([#2609](https://github.com/HankHuang0516/EClaw/issues/2609)) ([6cdc853](https://github.com/HankHuang0516/EClaw/commit/6cdc853dc884cdb95bd47214942768981f218ae0))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))
* **settings:** wire petdx avatar into channel-account chips ([#2626](https://github.com/HankHuang0516/EClaw/issues/2626)) ([88aec77](https://github.com/HankHuang0516/EClaw/commit/88aec772628c240e97b336bb5820892ad632d1ae))
* **files:** wire petdx avatar into entity filter & per-file badges ([#2627](https://github.com/HankHuang0516/EClaw/issues/2627)) ([5b3e5cc](https://github.com/HankHuang0516/EClaw/commit/5b3e5cc542d9da69bb4e92500fd03a542ea33f00))
* **mindmap:** wrap hardcoded zh-TW UI strings with i18n t() ([#2607](https://github.com/HankHuang0516/EClaw/issues/2607)) ([166af87](https://github.com/HankHuang0516/EClaw/commit/166af8772b2121a24aaf34a83b3de970e9b3b571)), closes [#2606](https://github.com/HankHuang0516/EClaw/issues/2606)


### Performance Improvements

* **mindmap:** force-graph hardening for 1000/2000-node graphs ([#2684](https://github.com/HankHuang0516/EClaw/issues/2684)) ([da8b1c8](https://github.com/HankHuang0516/EClaw/commit/da8b1c8f947ab8bc8fa455c1962a91146623a1fc))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-13)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **notifications:** add kanban_done + kanban_done_auto toggles to Android Settings ([#2636](https://github.com/HankHuang0516/EClaw/issues/2636)) ([a710909](https://github.com/HankHuang0516/EClaw/commit/a7109095e3393b8564e7ef1b23d382a4fbb944b8))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **kanban:** comment input no longer overlaps last comment in card detail (PR [#2678](https://github.com/HankHuang0516/EClaw/issues/2678)) ([fba91fc](https://github.com/HankHuang0516/EClaw/commit/fba91fca15402b453a0db5ee857c0b16e6087055))
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **petdx:** drop dark-grey loading placeholder + preload sprite WEBP ([#2628](https://github.com/HankHuang0516/EClaw/issues/2628)) ([59cef38](https://github.com/HankHuang0516/EClaw/commit/59cef387bd69ca99d7d15c86a1364856d3849ad8)), closes [#1a1a1a](https://github.com/HankHuang0516/EClaw/issues/1a1a1a)
* **entities:** expose botSecret to owner so wallpaper service can poll companions ([#2615](https://github.com/HankHuang0516/EClaw/issues/2615)) ([04470fc](https://github.com/HankHuang0516/EClaw/commit/04470fce8f8c3fce2b1ba8b243e776606f107502))
* **rental:** expose owner_public_code in marketplace so plaza CTA can route ([#2616](https://github.com/HankHuang0516/EClaw/issues/2616)) ([4d1372f](https://github.com/HankHuang0516/EClaw/commit/4d1372f717d93cab65543e87c852e74e9fb67071)), closes [#2610](https://github.com/HankHuang0516/EClaw/issues/2610)
* **mindmap:** fallback to device scope when entityId is null ([#2728](https://github.com/HankHuang0516/EClaw/issues/2728)) ([7572312](https://github.com/HankHuang0516/EClaw/commit/7572312433d3d75fc245eda48a28919ce14bd927))
* **i18n:** fill Spanish drift keys ([#2751](https://github.com/HankHuang0516/EClaw/issues/2751)) ([0ad0ee5](https://github.com/HankHuang0516/EClaw/commit/0ad0ee55f7fac3e6ac46d891539950dab4d553cc))
* **portal:** fit embedded org chart to mobile viewport ([#2674](https://github.com/HankHuang0516/EClaw/issues/2674)) ([1c4e1b4](https://github.com/HankHuang0516/EClaw/commit/1c4e1b413ea7027b4cd4b8ecda981b0d0e12e66b))
* **mention-parser:** ignore @-mentions inside markdown code spans ([#2645](https://github.com/HankHuang0516/EClaw/issues/2645)) ([8da19d4](https://github.com/HankHuang0516/EClaw/commit/8da19d4a79ceb4152bf2144ee0847c61ce3e1def)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **kanban:** lazy-load dependency chips via IntersectionObserver ([#2632](https://github.com/HankHuang0516/EClaw/issues/2632)) ([20586b4](https://github.com/HankHuang0516/EClaw/commit/20586b43357335f9eb6a190c02d58c8e36b58aba)), closes [#2631](https://github.com/HankHuang0516/EClaw/issues/2631)
* **kanban:** make card sorting deterministic ([#2756](https://github.com/HankHuang0516/EClaw/issues/2756)) ([48e2117](https://github.com/HankHuang0516/EClaw/commit/48e2117b64e37f05dc635e0a3b67bfd43cbe48f5))
* **kanban:** notify reviewer on manual /move → review ([#2753](https://github.com/HankHuang0516/EClaw/issues/2753)) ([6cbbb4e](https://github.com/HankHuang0516/EClaw/commit/6cbbb4ee8c0d4d8ad54df2e9b5faaa3699bd530f))
* **wallpaper:** off-load spritesheet fetch to IO so per-petdx sprites actually render ([#2618](https://github.com/HankHuang0516/EClaw/issues/2618)) ([61b832c](https://github.com/HankHuang0516/EClaw/commit/61b832c9fa8a1d0caab810ccc942d85c63349267)), closes [#2615](https://github.com/HankHuang0516/EClaw/issues/2615) [#2577](https://github.com/HankHuang0516/EClaw/issues/2577)
* **portal:** petdx-browser cookie-session fallback for device-login ([#2757](https://github.com/HankHuang0516/EClaw/issues/2757)) ([ca275f4](https://github.com/HankHuang0516/EClaw/commit/ca275f4519835da0c7ad71c588908a18f6f138d8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **i18n:** positional format specifiers for feedback_result_logs (7 locales) ([#2597](https://github.com/HankHuang0516/EClaw/issues/2597)) ([21aedc7](https://github.com/HankHuang0516/EClaw/commit/21aedc7eebc7a2839e340136f38dfdfd4dabb9dc))
* **avatar-petdx:** preserve descriptor across transient API failures (flicker) ([#2625](https://github.com/HankHuang0516/EClaw/issues/2625)) ([7b1c606](https://github.com/HankHuang0516/EClaw/commit/7b1c606514f7698d72ec95cf6c556e4043966186))
* **chat:** preserve scroll anchor while reading history ([#2693](https://github.com/HankHuang0516/EClaw/issues/2693)) ([945fdb7](https://github.com/HankHuang0516/EClaw/commit/945fdb7192b791b31882e1e75568dd8b11e4686f))
* **promo:** pull video embed from /promo-chat-avatar.html ([#2724](https://github.com/HankHuang0516/EClaw/issues/2724)) ([2afabc8](https://github.com/HankHuang0516/EClaw/commit/2afabc8c5ff8b25218a7cb857e8adfa572c8e9d5))
* **portal:** reduce QA-discovered request fanout ([#2656](https://github.com/HankHuang0516/EClaw/issues/2656)) ([1e46d6b](https://github.com/HankHuang0516/EClaw/commit/1e46d6bab61e58c65b452b6503d953f8dddeee75))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **portal:** remove org chart fit scale floor ([#2676](https://github.com/HankHuang0516/EClaw/issues/2676)) ([0f01606](https://github.com/HankHuang0516/EClaw/commit/0f016068b963bb5f800a02f28817c7174979d913))
* **i18n:** rename mm_empty_title → mm_state_empty_title in mindmap.html ([#2683](https://github.com/HankHuang0516/EClaw/issues/2683)) ([c79c109](https://github.com/HankHuang0516/EClaw/commit/c79c109bea23142e8a6d9ace976d105af1280ec9))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **chat:** render mention avatars with companion renderer ([#2633](https://github.com/HankHuang0516/EClaw/issues/2633)) ([03e205f](https://github.com/HankHuang0516/EClaw/commit/03e205f663ecd2c2f443d4009dd5af0093f0bbbb))
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* scheduled audit 2026-05-13 — 6 bugs, XSS, i18n ([#2668](https://github.com/HankHuang0516/EClaw/issues/2668)) ([21dd513](https://github.com/HankHuang0516/EClaw/commit/21dd513b4464738de29164265437435ba6cc4817)), closes [#2605](https://github.com/HankHuang0516/EClaw/issues/2605) [#2608](https://github.com/HankHuang0516/EClaw/issues/2608) [#2600](https://github.com/HankHuang0516/EClaw/issues/2600) [#2599](https://github.com/HankHuang0516/EClaw/issues/2599) [#2598](https://github.com/HankHuang0516/EClaw/issues/2598)
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **chat:** smart-chip preview falls back to inline c.comments when /comments fails (PR [#2677](https://github.com/HankHuang0516/EClaw/issues/2677)) ([7f4dffd](https://github.com/HankHuang0516/EClaw/commit/7f4dffd2c83ea86f296b8fa0610f0e67c9f1af11))
* **wallpaper:** stop Android live wallpaper flashing default lobster on companion change ([#2629](https://github.com/HankHuang0516/EClaw/issues/2629)) ([8b4f66f](https://github.com/HankHuang0516/EClaw/commit/8b4f66fcb335bf43128f924b761b6337c817095b)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **app:** WebView pages honor app-selected locale via ?lang= URL param ([#2672](https://github.com/HankHuang0516/EClaw/issues/2672)) ([8ed8757](https://github.com/HankHuang0516/EClaw/commit/8ed8757aec5bf214e837cc0d81bf2b23f1993a91)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* **community:** 1-click chat button on bot cards + utm tagging ([#2610](https://github.com/HankHuang0516/EClaw/issues/2610)) ([eee97b0](https://github.com/HankHuang0516/EClaw/commit/eee97b0e2e4e74945ec24f218a69a52800b97a66))
* **chat:** add avatar size preference ([#2714](https://github.com/HankHuang0516/EClaw/issues/2714)) ([6fe164a](https://github.com/HankHuang0516/EClaw/commit/6fe164ad8b22fa576d2dd9ad37c0d9fc295b5a83))
* **dashboard:** add Claude and Codex channel guides ([#2640](https://github.com/HankHuang0516/EClaw/issues/2640)) ([c64e4c4](https://github.com/HankHuang0516/EClaw/commit/c64e4c4afc78db58c5cd578f00486dd7b2fd3311))
* **dashboard:** add Claude Code channel guide card ([#2667](https://github.com/HankHuang0516/EClaw/issues/2667)) ([d70d75c](https://github.com/HankHuang0516/EClaw/commit/d70d75c0c8caa8a540358a9aab4556b8c1927a5c))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* **portal:** add entity selector to petdx-browser ([#2602](https://github.com/HankHuang0516/EClaw/issues/2602)) ([3fa067e](https://github.com/HankHuang0516/EClaw/commit/3fa067e00b38829b48a37cecd33ee81a9a1122d9))
* **kanban:** add explicit card links ([#2721](https://github.com/HankHuang0516/EClaw/issues/2721)) ([ef9f812](https://github.com/HankHuang0516/EClaw/commit/ef9f812a3fcf39efd07fd158ce90951bdd045ac7))
* **mindmap:** add GET /api/mindmap/graph force-graph projection ([#2680](https://github.com/HankHuang0516/EClaw/issues/2680)) ([a00b2e7](https://github.com/HankHuang0516/EClaw/commit/a00b2e775af2c4c98cd157f760ad87aeeee469f0)), closes [#2679](https://github.com/HankHuang0516/EClaw/issues/2679) [#2679](https://github.com/HankHuang0516/EClaw/issues/2679)
* **dashboard:** add Hermes channel promo card ([#2708](https://github.com/HankHuang0516/EClaw/issues/2708)) ([337aca1](https://github.com/HankHuang0516/EClaw/commit/337aca153d5a1cd7e888c065f00ae54db7872d91))
* **portal:** add Nagoya 5D4N trip static cross-ref page ([#2689](https://github.com/HankHuang0516/EClaw/issues/2689)) ([2e0efb6](https://github.com/HankHuang0516/EClaw/commit/2e0efb6dcdaff52226cc8854a96747000b12bdff))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **rental:** add renter health chat indicator ([#2690](https://github.com/HankHuang0516/EClaw/issues/2690)) ([36cd2e9](https://github.com/HankHuang0516/EClaw/commit/36cd2e9802be4c7ebb03d3024617fa74aca48ffd))
* **companion:** bridge crafter-station/petdex gallery (1784 pets) ([#2601](https://github.com/HankHuang0516/EClaw/issues/2601)) ([2e245be](https://github.com/HankHuang0516/EClaw/commit/2e245bea6dd47ea7361b927d389188a3c23b6bb3))
* **promo:** chat avatar size feature landing page (self-hosted MP4) ([#2722](https://github.com/HankHuang0516/EClaw/issues/2722)) ([3852210](https://github.com/HankHuang0516/EClaw/commit/3852210d355704d018e3daca6b5f9512a011b210)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **chat:** link card previews to kanban ([#2754](https://github.com/HankHuang0516/EClaw/issues/2754)) ([2261240](https://github.com/HankHuang0516/EClaw/commit/22612402c2e95efb07246629e81a849be41ee9c7))
* **mission:** link notes to kanban cards ([#2723](https://github.com/HankHuang0516/EClaw/issues/2723)) ([b36dc18](https://github.com/HankHuang0516/EClaw/commit/b36dc18f3a8facf12e0b6046351c222f1e99dc55))
* **mindmap:** mission.html link to /portal/mindmap.html + deprecate /api/mission/mindmap ([#2685](https://github.com/HankHuang0516/EClaw/issues/2685)) ([11e297b](https://github.com/HankHuang0516/EClaw/commit/11e297bab1c9b56fcde3027d6500b7c58891bf18)), closes [#2680](https://github.com/HankHuang0516/EClaw/issues/2680) [#2684](https://github.com/HankHuang0516/EClaw/issues/2684)
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **avatar:** petdx render on card-holder my-cards (Phase 1b) ([#2621](https://github.com/HankHuang0516/EClaw/issues/2621)) ([f78ba8b](https://github.com/HankHuang0516/EClaw/commit/f78ba8b18acc426936ab6d8a82ca7541effea00d))
* **avatar:** petdx render on dashboard entity grid / org chart / bindings (Phase 1b) ([#2622](https://github.com/HankHuang0516/EClaw/issues/2622)) ([f417749](https://github.com/HankHuang0516/EClaw/commit/f41774914451048e8cd76e9ae30416a0642e173b)), closes [#2620](https://github.com/HankHuang0516/EClaw/issues/2620) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621)
* **avatar:** petdx render on kanban auto-assign / pulse / comment avatars (Phase 1b) ([#2624](https://github.com/HankHuang0516/EClaw/issues/2624)) ([6bff5f8](https://github.com/HankHuang0516/EClaw/commit/6bff5f80440d0bd91a6b1721cde9478d685c4d46))
* **avatar:** petdx render on mission skill/rule/soul entity dialogs (Phase 1b) ([#2623](https://github.com/HankHuang0516/EClaw/issues/2623)) ([129327b](https://github.com/HankHuang0516/EClaw/commit/129327bc7b91056659f1ab7e8d5e3f5260d951fb))
* **mindmap:** portal/mindmap.html force-graph prototype ([#129](https://github.com/HankHuang0516/EClaw/issues/129)) ([#2681](https://github.com/HankHuang0516/EClaw/issues/2681)) ([0f15e69](https://github.com/HankHuang0516/EClaw/commit/0f15e6930f0697c37fa08f3219edb8f9e499837f)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **portal:** redo nagoya trip page in professional tour-guide style ([#2691](https://github.com/HankHuang0516/EClaw/issues/2691)) ([b2378c0](https://github.com/HankHuang0516/EClaw/commit/b2378c06ee20fa9cccfdceceb1a4c9e0b3072f59))
* **avatar:** render selected petdx companion in chat avatars ([#2620](https://github.com/HankHuang0516/EClaw/issues/2620)) ([0bdd046](https://github.com/HankHuang0516/EClaw/commit/0bdd046fe1b1c428e32edda366ff112c08927f4c))
* **home:** replace native home with WebView hosting dashboard.html ([#2634](https://github.com/HankHuang0516/EClaw/issues/2634)) ([e69ea81](https://github.com/HankHuang0516/EClaw/commit/e69ea8160c239b083a83d6dc83a4f1c3f901c863))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **chat:** support message deep links ([#2719](https://github.com/HankHuang0516/EClaw/issues/2719)) ([2dc0f1e](https://github.com/HankHuang0516/EClaw/commit/2dc0f1eeb259e1a0848db4a03186b989372cd91c))
* **mission:** support note deep links ([#2717](https://github.com/HankHuang0516/EClaw/issues/2717)) ([2efd3a5](https://github.com/HankHuang0516/EClaw/commit/2efd3a5e741217a07c0b0ac54a0ddd010e0ebe23))
* **share-chat:** twitter card + per-bot og:image/twitter:* in SSR ([#2609](https://github.com/HankHuang0516/EClaw/issues/2609)) ([6cdc853](https://github.com/HankHuang0516/EClaw/commit/6cdc853dc884cdb95bd47214942768981f218ae0))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))
* **settings:** wire petdx avatar into channel-account chips ([#2626](https://github.com/HankHuang0516/EClaw/issues/2626)) ([88aec77](https://github.com/HankHuang0516/EClaw/commit/88aec772628c240e97b336bb5820892ad632d1ae))
* **files:** wire petdx avatar into entity filter & per-file badges ([#2627](https://github.com/HankHuang0516/EClaw/issues/2627)) ([5b3e5cc](https://github.com/HankHuang0516/EClaw/commit/5b3e5cc542d9da69bb4e92500fd03a542ea33f00))
* **mindmap:** wrap hardcoded zh-TW UI strings with i18n t() ([#2607](https://github.com/HankHuang0516/EClaw/issues/2607)) ([166af87](https://github.com/HankHuang0516/EClaw/commit/166af8772b2121a24aaf34a83b3de970e9b3b571)), closes [#2606](https://github.com/HankHuang0516/EClaw/issues/2606)


### Performance Improvements

* **mindmap:** force-graph hardening for 1000/2000-node graphs ([#2684](https://github.com/HankHuang0516/EClaw/issues/2684)) ([da8b1c8](https://github.com/HankHuang0516/EClaw/commit/da8b1c8f947ab8bc8fa455c1962a91146623a1fc))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-13)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **notifications:** add kanban_done + kanban_done_auto toggles to Android Settings ([#2636](https://github.com/HankHuang0516/EClaw/issues/2636)) ([a710909](https://github.com/HankHuang0516/EClaw/commit/a7109095e3393b8564e7ef1b23d382a4fbb944b8))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **kanban:** comment input no longer overlaps last comment in card detail (PR [#2678](https://github.com/HankHuang0516/EClaw/issues/2678)) ([fba91fc](https://github.com/HankHuang0516/EClaw/commit/fba91fca15402b453a0db5ee857c0b16e6087055))
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **petdx:** drop dark-grey loading placeholder + preload sprite WEBP ([#2628](https://github.com/HankHuang0516/EClaw/issues/2628)) ([59cef38](https://github.com/HankHuang0516/EClaw/commit/59cef387bd69ca99d7d15c86a1364856d3849ad8)), closes [#1a1a1a](https://github.com/HankHuang0516/EClaw/issues/1a1a1a)
* **entities:** expose botSecret to owner so wallpaper service can poll companions ([#2615](https://github.com/HankHuang0516/EClaw/issues/2615)) ([04470fc](https://github.com/HankHuang0516/EClaw/commit/04470fce8f8c3fce2b1ba8b243e776606f107502))
* **rental:** expose owner_public_code in marketplace so plaza CTA can route ([#2616](https://github.com/HankHuang0516/EClaw/issues/2616)) ([4d1372f](https://github.com/HankHuang0516/EClaw/commit/4d1372f717d93cab65543e87c852e74e9fb67071)), closes [#2610](https://github.com/HankHuang0516/EClaw/issues/2610)
* **mindmap:** fallback to device scope when entityId is null ([#2728](https://github.com/HankHuang0516/EClaw/issues/2728)) ([7572312](https://github.com/HankHuang0516/EClaw/commit/7572312433d3d75fc245eda48a28919ce14bd927))
* **i18n:** fill Spanish drift keys ([#2751](https://github.com/HankHuang0516/EClaw/issues/2751)) ([0ad0ee5](https://github.com/HankHuang0516/EClaw/commit/0ad0ee55f7fac3e6ac46d891539950dab4d553cc))
* **portal:** fit embedded org chart to mobile viewport ([#2674](https://github.com/HankHuang0516/EClaw/issues/2674)) ([1c4e1b4](https://github.com/HankHuang0516/EClaw/commit/1c4e1b413ea7027b4cd4b8ecda981b0d0e12e66b))
* **mention-parser:** ignore @-mentions inside markdown code spans ([#2645](https://github.com/HankHuang0516/EClaw/issues/2645)) ([8da19d4](https://github.com/HankHuang0516/EClaw/commit/8da19d4a79ceb4152bf2144ee0847c61ce3e1def)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **kanban:** lazy-load dependency chips via IntersectionObserver ([#2632](https://github.com/HankHuang0516/EClaw/issues/2632)) ([20586b4](https://github.com/HankHuang0516/EClaw/commit/20586b43357335f9eb6a190c02d58c8e36b58aba)), closes [#2631](https://github.com/HankHuang0516/EClaw/issues/2631)
* **kanban:** make card sorting deterministic ([#2756](https://github.com/HankHuang0516/EClaw/issues/2756)) ([48e2117](https://github.com/HankHuang0516/EClaw/commit/48e2117b64e37f05dc635e0a3b67bfd43cbe48f5))
* **kanban:** notify reviewer on manual /move → review ([#2753](https://github.com/HankHuang0516/EClaw/issues/2753)) ([6cbbb4e](https://github.com/HankHuang0516/EClaw/commit/6cbbb4ee8c0d4d8ad54df2e9b5faaa3699bd530f))
* **wallpaper:** off-load spritesheet fetch to IO so per-petdx sprites actually render ([#2618](https://github.com/HankHuang0516/EClaw/issues/2618)) ([61b832c](https://github.com/HankHuang0516/EClaw/commit/61b832c9fa8a1d0caab810ccc942d85c63349267)), closes [#2615](https://github.com/HankHuang0516/EClaw/issues/2615) [#2577](https://github.com/HankHuang0516/EClaw/issues/2577)
* **i18n:** positional format specifiers for feedback_result_logs (7 locales) ([#2597](https://github.com/HankHuang0516/EClaw/issues/2597)) ([21aedc7](https://github.com/HankHuang0516/EClaw/commit/21aedc7eebc7a2839e340136f38dfdfd4dabb9dc))
* **avatar-petdx:** preserve descriptor across transient API failures (flicker) ([#2625](https://github.com/HankHuang0516/EClaw/issues/2625)) ([7b1c606](https://github.com/HankHuang0516/EClaw/commit/7b1c606514f7698d72ec95cf6c556e4043966186))
* **chat:** preserve scroll anchor while reading history ([#2693](https://github.com/HankHuang0516/EClaw/issues/2693)) ([945fdb7](https://github.com/HankHuang0516/EClaw/commit/945fdb7192b791b31882e1e75568dd8b11e4686f))
* **promo:** pull video embed from /promo-chat-avatar.html ([#2724](https://github.com/HankHuang0516/EClaw/issues/2724)) ([2afabc8](https://github.com/HankHuang0516/EClaw/commit/2afabc8c5ff8b25218a7cb857e8adfa572c8e9d5))
* **portal:** reduce QA-discovered request fanout ([#2656](https://github.com/HankHuang0516/EClaw/issues/2656)) ([1e46d6b](https://github.com/HankHuang0516/EClaw/commit/1e46d6bab61e58c65b452b6503d953f8dddeee75))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **portal:** remove org chart fit scale floor ([#2676](https://github.com/HankHuang0516/EClaw/issues/2676)) ([0f01606](https://github.com/HankHuang0516/EClaw/commit/0f016068b963bb5f800a02f28817c7174979d913))
* **i18n:** rename mm_empty_title → mm_state_empty_title in mindmap.html ([#2683](https://github.com/HankHuang0516/EClaw/issues/2683)) ([c79c109](https://github.com/HankHuang0516/EClaw/commit/c79c109bea23142e8a6d9ace976d105af1280ec9))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **chat:** render mention avatars with companion renderer ([#2633](https://github.com/HankHuang0516/EClaw/issues/2633)) ([03e205f](https://github.com/HankHuang0516/EClaw/commit/03e205f663ecd2c2f443d4009dd5af0093f0bbbb))
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* scheduled audit 2026-05-13 — 6 bugs, XSS, i18n ([#2668](https://github.com/HankHuang0516/EClaw/issues/2668)) ([21dd513](https://github.com/HankHuang0516/EClaw/commit/21dd513b4464738de29164265437435ba6cc4817)), closes [#2605](https://github.com/HankHuang0516/EClaw/issues/2605) [#2608](https://github.com/HankHuang0516/EClaw/issues/2608) [#2600](https://github.com/HankHuang0516/EClaw/issues/2600) [#2599](https://github.com/HankHuang0516/EClaw/issues/2599) [#2598](https://github.com/HankHuang0516/EClaw/issues/2598)
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **chat:** smart-chip preview falls back to inline c.comments when /comments fails (PR [#2677](https://github.com/HankHuang0516/EClaw/issues/2677)) ([7f4dffd](https://github.com/HankHuang0516/EClaw/commit/7f4dffd2c83ea86f296b8fa0610f0e67c9f1af11))
* **wallpaper:** stop Android live wallpaper flashing default lobster on companion change ([#2629](https://github.com/HankHuang0516/EClaw/issues/2629)) ([8b4f66f](https://github.com/HankHuang0516/EClaw/commit/8b4f66fcb335bf43128f924b761b6337c817095b)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **app:** WebView pages honor app-selected locale via ?lang= URL param ([#2672](https://github.com/HankHuang0516/EClaw/issues/2672)) ([8ed8757](https://github.com/HankHuang0516/EClaw/commit/8ed8757aec5bf214e837cc0d81bf2b23f1993a91)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* **community:** 1-click chat button on bot cards + utm tagging ([#2610](https://github.com/HankHuang0516/EClaw/issues/2610)) ([eee97b0](https://github.com/HankHuang0516/EClaw/commit/eee97b0e2e4e74945ec24f218a69a52800b97a66))
* **chat:** add avatar size preference ([#2714](https://github.com/HankHuang0516/EClaw/issues/2714)) ([6fe164a](https://github.com/HankHuang0516/EClaw/commit/6fe164ad8b22fa576d2dd9ad37c0d9fc295b5a83))
* **dashboard:** add Claude and Codex channel guides ([#2640](https://github.com/HankHuang0516/EClaw/issues/2640)) ([c64e4c4](https://github.com/HankHuang0516/EClaw/commit/c64e4c4afc78db58c5cd578f00486dd7b2fd3311))
* **dashboard:** add Claude Code channel guide card ([#2667](https://github.com/HankHuang0516/EClaw/issues/2667)) ([d70d75c](https://github.com/HankHuang0516/EClaw/commit/d70d75c0c8caa8a540358a9aab4556b8c1927a5c))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* **portal:** add entity selector to petdx-browser ([#2602](https://github.com/HankHuang0516/EClaw/issues/2602)) ([3fa067e](https://github.com/HankHuang0516/EClaw/commit/3fa067e00b38829b48a37cecd33ee81a9a1122d9))
* **kanban:** add explicit card links ([#2721](https://github.com/HankHuang0516/EClaw/issues/2721)) ([ef9f812](https://github.com/HankHuang0516/EClaw/commit/ef9f812a3fcf39efd07fd158ce90951bdd045ac7))
* **mindmap:** add GET /api/mindmap/graph force-graph projection ([#2680](https://github.com/HankHuang0516/EClaw/issues/2680)) ([a00b2e7](https://github.com/HankHuang0516/EClaw/commit/a00b2e775af2c4c98cd157f760ad87aeeee469f0)), closes [#2679](https://github.com/HankHuang0516/EClaw/issues/2679) [#2679](https://github.com/HankHuang0516/EClaw/issues/2679)
* **dashboard:** add Hermes channel promo card ([#2708](https://github.com/HankHuang0516/EClaw/issues/2708)) ([337aca1](https://github.com/HankHuang0516/EClaw/commit/337aca153d5a1cd7e888c065f00ae54db7872d91))
* **portal:** add Nagoya 5D4N trip static cross-ref page ([#2689](https://github.com/HankHuang0516/EClaw/issues/2689)) ([2e0efb6](https://github.com/HankHuang0516/EClaw/commit/2e0efb6dcdaff52226cc8854a96747000b12bdff))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **rental:** add renter health chat indicator ([#2690](https://github.com/HankHuang0516/EClaw/issues/2690)) ([36cd2e9](https://github.com/HankHuang0516/EClaw/commit/36cd2e9802be4c7ebb03d3024617fa74aca48ffd))
* **companion:** bridge crafter-station/petdex gallery (1784 pets) ([#2601](https://github.com/HankHuang0516/EClaw/issues/2601)) ([2e245be](https://github.com/HankHuang0516/EClaw/commit/2e245bea6dd47ea7361b927d389188a3c23b6bb3))
* **promo:** chat avatar size feature landing page (self-hosted MP4) ([#2722](https://github.com/HankHuang0516/EClaw/issues/2722)) ([3852210](https://github.com/HankHuang0516/EClaw/commit/3852210d355704d018e3daca6b5f9512a011b210)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **chat:** link card previews to kanban ([#2754](https://github.com/HankHuang0516/EClaw/issues/2754)) ([2261240](https://github.com/HankHuang0516/EClaw/commit/22612402c2e95efb07246629e81a849be41ee9c7))
* **mission:** link notes to kanban cards ([#2723](https://github.com/HankHuang0516/EClaw/issues/2723)) ([b36dc18](https://github.com/HankHuang0516/EClaw/commit/b36dc18f3a8facf12e0b6046351c222f1e99dc55))
* **mindmap:** mission.html link to /portal/mindmap.html + deprecate /api/mission/mindmap ([#2685](https://github.com/HankHuang0516/EClaw/issues/2685)) ([11e297b](https://github.com/HankHuang0516/EClaw/commit/11e297bab1c9b56fcde3027d6500b7c58891bf18)), closes [#2680](https://github.com/HankHuang0516/EClaw/issues/2680) [#2684](https://github.com/HankHuang0516/EClaw/issues/2684)
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **avatar:** petdx render on card-holder my-cards (Phase 1b) ([#2621](https://github.com/HankHuang0516/EClaw/issues/2621)) ([f78ba8b](https://github.com/HankHuang0516/EClaw/commit/f78ba8b18acc426936ab6d8a82ca7541effea00d))
* **avatar:** petdx render on dashboard entity grid / org chart / bindings (Phase 1b) ([#2622](https://github.com/HankHuang0516/EClaw/issues/2622)) ([f417749](https://github.com/HankHuang0516/EClaw/commit/f41774914451048e8cd76e9ae30416a0642e173b)), closes [#2620](https://github.com/HankHuang0516/EClaw/issues/2620) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621)
* **avatar:** petdx render on kanban auto-assign / pulse / comment avatars (Phase 1b) ([#2624](https://github.com/HankHuang0516/EClaw/issues/2624)) ([6bff5f8](https://github.com/HankHuang0516/EClaw/commit/6bff5f80440d0bd91a6b1721cde9478d685c4d46))
* **avatar:** petdx render on mission skill/rule/soul entity dialogs (Phase 1b) ([#2623](https://github.com/HankHuang0516/EClaw/issues/2623)) ([129327b](https://github.com/HankHuang0516/EClaw/commit/129327bc7b91056659f1ab7e8d5e3f5260d951fb))
* **mindmap:** portal/mindmap.html force-graph prototype ([#129](https://github.com/HankHuang0516/EClaw/issues/129)) ([#2681](https://github.com/HankHuang0516/EClaw/issues/2681)) ([0f15e69](https://github.com/HankHuang0516/EClaw/commit/0f15e6930f0697c37fa08f3219edb8f9e499837f)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **portal:** redo nagoya trip page in professional tour-guide style ([#2691](https://github.com/HankHuang0516/EClaw/issues/2691)) ([b2378c0](https://github.com/HankHuang0516/EClaw/commit/b2378c06ee20fa9cccfdceceb1a4c9e0b3072f59))
* **avatar:** render selected petdx companion in chat avatars ([#2620](https://github.com/HankHuang0516/EClaw/issues/2620)) ([0bdd046](https://github.com/HankHuang0516/EClaw/commit/0bdd046fe1b1c428e32edda366ff112c08927f4c))
* **home:** replace native home with WebView hosting dashboard.html ([#2634](https://github.com/HankHuang0516/EClaw/issues/2634)) ([e69ea81](https://github.com/HankHuang0516/EClaw/commit/e69ea8160c239b083a83d6dc83a4f1c3f901c863))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **chat:** support message deep links ([#2719](https://github.com/HankHuang0516/EClaw/issues/2719)) ([2dc0f1e](https://github.com/HankHuang0516/EClaw/commit/2dc0f1eeb259e1a0848db4a03186b989372cd91c))
* **mission:** support note deep links ([#2717](https://github.com/HankHuang0516/EClaw/issues/2717)) ([2efd3a5](https://github.com/HankHuang0516/EClaw/commit/2efd3a5e741217a07c0b0ac54a0ddd010e0ebe23))
* **share-chat:** twitter card + per-bot og:image/twitter:* in SSR ([#2609](https://github.com/HankHuang0516/EClaw/issues/2609)) ([6cdc853](https://github.com/HankHuang0516/EClaw/commit/6cdc853dc884cdb95bd47214942768981f218ae0))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))
* **settings:** wire petdx avatar into channel-account chips ([#2626](https://github.com/HankHuang0516/EClaw/issues/2626)) ([88aec77](https://github.com/HankHuang0516/EClaw/commit/88aec772628c240e97b336bb5820892ad632d1ae))
* **files:** wire petdx avatar into entity filter & per-file badges ([#2627](https://github.com/HankHuang0516/EClaw/issues/2627)) ([5b3e5cc](https://github.com/HankHuang0516/EClaw/commit/5b3e5cc542d9da69bb4e92500fd03a542ea33f00))
* **mindmap:** wrap hardcoded zh-TW UI strings with i18n t() ([#2607](https://github.com/HankHuang0516/EClaw/issues/2607)) ([166af87](https://github.com/HankHuang0516/EClaw/commit/166af8772b2121a24aaf34a83b3de970e9b3b571)), closes [#2606](https://github.com/HankHuang0516/EClaw/issues/2606)


### Performance Improvements

* **mindmap:** force-graph hardening for 1000/2000-node graphs ([#2684](https://github.com/HankHuang0516/EClaw/issues/2684)) ([da8b1c8](https://github.com/HankHuang0516/EClaw/commit/da8b1c8f947ab8bc8fa455c1962a91146623a1fc))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-13)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **notifications:** add kanban_done + kanban_done_auto toggles to Android Settings ([#2636](https://github.com/HankHuang0516/EClaw/issues/2636)) ([a710909](https://github.com/HankHuang0516/EClaw/commit/a7109095e3393b8564e7ef1b23d382a4fbb944b8))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **kanban:** comment input no longer overlaps last comment in card detail (PR [#2678](https://github.com/HankHuang0516/EClaw/issues/2678)) ([fba91fc](https://github.com/HankHuang0516/EClaw/commit/fba91fca15402b453a0db5ee857c0b16e6087055))
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **petdx:** drop dark-grey loading placeholder + preload sprite WEBP ([#2628](https://github.com/HankHuang0516/EClaw/issues/2628)) ([59cef38](https://github.com/HankHuang0516/EClaw/commit/59cef387bd69ca99d7d15c86a1364856d3849ad8)), closes [#1a1a1a](https://github.com/HankHuang0516/EClaw/issues/1a1a1a)
* **entities:** expose botSecret to owner so wallpaper service can poll companions ([#2615](https://github.com/HankHuang0516/EClaw/issues/2615)) ([04470fc](https://github.com/HankHuang0516/EClaw/commit/04470fce8f8c3fce2b1ba8b243e776606f107502))
* **rental:** expose owner_public_code in marketplace so plaza CTA can route ([#2616](https://github.com/HankHuang0516/EClaw/issues/2616)) ([4d1372f](https://github.com/HankHuang0516/EClaw/commit/4d1372f717d93cab65543e87c852e74e9fb67071)), closes [#2610](https://github.com/HankHuang0516/EClaw/issues/2610)
* **mindmap:** fallback to device scope when entityId is null ([#2728](https://github.com/HankHuang0516/EClaw/issues/2728)) ([7572312](https://github.com/HankHuang0516/EClaw/commit/7572312433d3d75fc245eda48a28919ce14bd927))
* **i18n:** fill Spanish drift keys ([#2751](https://github.com/HankHuang0516/EClaw/issues/2751)) ([0ad0ee5](https://github.com/HankHuang0516/EClaw/commit/0ad0ee55f7fac3e6ac46d891539950dab4d553cc))
* **portal:** fit embedded org chart to mobile viewport ([#2674](https://github.com/HankHuang0516/EClaw/issues/2674)) ([1c4e1b4](https://github.com/HankHuang0516/EClaw/commit/1c4e1b413ea7027b4cd4b8ecda981b0d0e12e66b))
* **mention-parser:** ignore @-mentions inside markdown code spans ([#2645](https://github.com/HankHuang0516/EClaw/issues/2645)) ([8da19d4](https://github.com/HankHuang0516/EClaw/commit/8da19d4a79ceb4152bf2144ee0847c61ce3e1def)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **kanban:** lazy-load dependency chips via IntersectionObserver ([#2632](https://github.com/HankHuang0516/EClaw/issues/2632)) ([20586b4](https://github.com/HankHuang0516/EClaw/commit/20586b43357335f9eb6a190c02d58c8e36b58aba)), closes [#2631](https://github.com/HankHuang0516/EClaw/issues/2631)
* **kanban:** notify reviewer on manual /move → review ([#2753](https://github.com/HankHuang0516/EClaw/issues/2753)) ([6cbbb4e](https://github.com/HankHuang0516/EClaw/commit/6cbbb4ee8c0d4d8ad54df2e9b5faaa3699bd530f))
* **wallpaper:** off-load spritesheet fetch to IO so per-petdx sprites actually render ([#2618](https://github.com/HankHuang0516/EClaw/issues/2618)) ([61b832c](https://github.com/HankHuang0516/EClaw/commit/61b832c9fa8a1d0caab810ccc942d85c63349267)), closes [#2615](https://github.com/HankHuang0516/EClaw/issues/2615) [#2577](https://github.com/HankHuang0516/EClaw/issues/2577)
* **i18n:** positional format specifiers for feedback_result_logs (7 locales) ([#2597](https://github.com/HankHuang0516/EClaw/issues/2597)) ([21aedc7](https://github.com/HankHuang0516/EClaw/commit/21aedc7eebc7a2839e340136f38dfdfd4dabb9dc))
* **avatar-petdx:** preserve descriptor across transient API failures (flicker) ([#2625](https://github.com/HankHuang0516/EClaw/issues/2625)) ([7b1c606](https://github.com/HankHuang0516/EClaw/commit/7b1c606514f7698d72ec95cf6c556e4043966186))
* **chat:** preserve scroll anchor while reading history ([#2693](https://github.com/HankHuang0516/EClaw/issues/2693)) ([945fdb7](https://github.com/HankHuang0516/EClaw/commit/945fdb7192b791b31882e1e75568dd8b11e4686f))
* **promo:** pull video embed from /promo-chat-avatar.html ([#2724](https://github.com/HankHuang0516/EClaw/issues/2724)) ([2afabc8](https://github.com/HankHuang0516/EClaw/commit/2afabc8c5ff8b25218a7cb857e8adfa572c8e9d5))
* **portal:** reduce QA-discovered request fanout ([#2656](https://github.com/HankHuang0516/EClaw/issues/2656)) ([1e46d6b](https://github.com/HankHuang0516/EClaw/commit/1e46d6bab61e58c65b452b6503d953f8dddeee75))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **portal:** remove org chart fit scale floor ([#2676](https://github.com/HankHuang0516/EClaw/issues/2676)) ([0f01606](https://github.com/HankHuang0516/EClaw/commit/0f016068b963bb5f800a02f28817c7174979d913))
* **i18n:** rename mm_empty_title → mm_state_empty_title in mindmap.html ([#2683](https://github.com/HankHuang0516/EClaw/issues/2683)) ([c79c109](https://github.com/HankHuang0516/EClaw/commit/c79c109bea23142e8a6d9ace976d105af1280ec9))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **chat:** render mention avatars with companion renderer ([#2633](https://github.com/HankHuang0516/EClaw/issues/2633)) ([03e205f](https://github.com/HankHuang0516/EClaw/commit/03e205f663ecd2c2f443d4009dd5af0093f0bbbb))
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* scheduled audit 2026-05-13 — 6 bugs, XSS, i18n ([#2668](https://github.com/HankHuang0516/EClaw/issues/2668)) ([21dd513](https://github.com/HankHuang0516/EClaw/commit/21dd513b4464738de29164265437435ba6cc4817)), closes [#2605](https://github.com/HankHuang0516/EClaw/issues/2605) [#2608](https://github.com/HankHuang0516/EClaw/issues/2608) [#2600](https://github.com/HankHuang0516/EClaw/issues/2600) [#2599](https://github.com/HankHuang0516/EClaw/issues/2599) [#2598](https://github.com/HankHuang0516/EClaw/issues/2598)
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **chat:** smart-chip preview falls back to inline c.comments when /comments fails (PR [#2677](https://github.com/HankHuang0516/EClaw/issues/2677)) ([7f4dffd](https://github.com/HankHuang0516/EClaw/commit/7f4dffd2c83ea86f296b8fa0610f0e67c9f1af11))
* **wallpaper:** stop Android live wallpaper flashing default lobster on companion change ([#2629](https://github.com/HankHuang0516/EClaw/issues/2629)) ([8b4f66f](https://github.com/HankHuang0516/EClaw/commit/8b4f66fcb335bf43128f924b761b6337c817095b)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **app:** WebView pages honor app-selected locale via ?lang= URL param ([#2672](https://github.com/HankHuang0516/EClaw/issues/2672)) ([8ed8757](https://github.com/HankHuang0516/EClaw/commit/8ed8757aec5bf214e837cc0d81bf2b23f1993a91)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* **community:** 1-click chat button on bot cards + utm tagging ([#2610](https://github.com/HankHuang0516/EClaw/issues/2610)) ([eee97b0](https://github.com/HankHuang0516/EClaw/commit/eee97b0e2e4e74945ec24f218a69a52800b97a66))
* **chat:** add avatar size preference ([#2714](https://github.com/HankHuang0516/EClaw/issues/2714)) ([6fe164a](https://github.com/HankHuang0516/EClaw/commit/6fe164ad8b22fa576d2dd9ad37c0d9fc295b5a83))
* **dashboard:** add Claude and Codex channel guides ([#2640](https://github.com/HankHuang0516/EClaw/issues/2640)) ([c64e4c4](https://github.com/HankHuang0516/EClaw/commit/c64e4c4afc78db58c5cd578f00486dd7b2fd3311))
* **dashboard:** add Claude Code channel guide card ([#2667](https://github.com/HankHuang0516/EClaw/issues/2667)) ([d70d75c](https://github.com/HankHuang0516/EClaw/commit/d70d75c0c8caa8a540358a9aab4556b8c1927a5c))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* **portal:** add entity selector to petdx-browser ([#2602](https://github.com/HankHuang0516/EClaw/issues/2602)) ([3fa067e](https://github.com/HankHuang0516/EClaw/commit/3fa067e00b38829b48a37cecd33ee81a9a1122d9))
* **kanban:** add explicit card links ([#2721](https://github.com/HankHuang0516/EClaw/issues/2721)) ([ef9f812](https://github.com/HankHuang0516/EClaw/commit/ef9f812a3fcf39efd07fd158ce90951bdd045ac7))
* **mindmap:** add GET /api/mindmap/graph force-graph projection ([#2680](https://github.com/HankHuang0516/EClaw/issues/2680)) ([a00b2e7](https://github.com/HankHuang0516/EClaw/commit/a00b2e775af2c4c98cd157f760ad87aeeee469f0)), closes [#2679](https://github.com/HankHuang0516/EClaw/issues/2679) [#2679](https://github.com/HankHuang0516/EClaw/issues/2679)
* **dashboard:** add Hermes channel promo card ([#2708](https://github.com/HankHuang0516/EClaw/issues/2708)) ([337aca1](https://github.com/HankHuang0516/EClaw/commit/337aca153d5a1cd7e888c065f00ae54db7872d91))
* **portal:** add Nagoya 5D4N trip static cross-ref page ([#2689](https://github.com/HankHuang0516/EClaw/issues/2689)) ([2e0efb6](https://github.com/HankHuang0516/EClaw/commit/2e0efb6dcdaff52226cc8854a96747000b12bdff))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **rental:** add renter health chat indicator ([#2690](https://github.com/HankHuang0516/EClaw/issues/2690)) ([36cd2e9](https://github.com/HankHuang0516/EClaw/commit/36cd2e9802be4c7ebb03d3024617fa74aca48ffd))
* **companion:** bridge crafter-station/petdex gallery (1784 pets) ([#2601](https://github.com/HankHuang0516/EClaw/issues/2601)) ([2e245be](https://github.com/HankHuang0516/EClaw/commit/2e245bea6dd47ea7361b927d389188a3c23b6bb3))
* **promo:** chat avatar size feature landing page (self-hosted MP4) ([#2722](https://github.com/HankHuang0516/EClaw/issues/2722)) ([3852210](https://github.com/HankHuang0516/EClaw/commit/3852210d355704d018e3daca6b5f9512a011b210)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **chat:** link card previews to kanban ([#2754](https://github.com/HankHuang0516/EClaw/issues/2754)) ([2261240](https://github.com/HankHuang0516/EClaw/commit/22612402c2e95efb07246629e81a849be41ee9c7))
* **mission:** link notes to kanban cards ([#2723](https://github.com/HankHuang0516/EClaw/issues/2723)) ([b36dc18](https://github.com/HankHuang0516/EClaw/commit/b36dc18f3a8facf12e0b6046351c222f1e99dc55))
* **mindmap:** mission.html link to /portal/mindmap.html + deprecate /api/mission/mindmap ([#2685](https://github.com/HankHuang0516/EClaw/issues/2685)) ([11e297b](https://github.com/HankHuang0516/EClaw/commit/11e297bab1c9b56fcde3027d6500b7c58891bf18)), closes [#2680](https://github.com/HankHuang0516/EClaw/issues/2680) [#2684](https://github.com/HankHuang0516/EClaw/issues/2684)
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **avatar:** petdx render on card-holder my-cards (Phase 1b) ([#2621](https://github.com/HankHuang0516/EClaw/issues/2621)) ([f78ba8b](https://github.com/HankHuang0516/EClaw/commit/f78ba8b18acc426936ab6d8a82ca7541effea00d))
* **avatar:** petdx render on dashboard entity grid / org chart / bindings (Phase 1b) ([#2622](https://github.com/HankHuang0516/EClaw/issues/2622)) ([f417749](https://github.com/HankHuang0516/EClaw/commit/f41774914451048e8cd76e9ae30416a0642e173b)), closes [#2620](https://github.com/HankHuang0516/EClaw/issues/2620) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621)
* **avatar:** petdx render on kanban auto-assign / pulse / comment avatars (Phase 1b) ([#2624](https://github.com/HankHuang0516/EClaw/issues/2624)) ([6bff5f8](https://github.com/HankHuang0516/EClaw/commit/6bff5f80440d0bd91a6b1721cde9478d685c4d46))
* **avatar:** petdx render on mission skill/rule/soul entity dialogs (Phase 1b) ([#2623](https://github.com/HankHuang0516/EClaw/issues/2623)) ([129327b](https://github.com/HankHuang0516/EClaw/commit/129327bc7b91056659f1ab7e8d5e3f5260d951fb))
* **mindmap:** portal/mindmap.html force-graph prototype ([#129](https://github.com/HankHuang0516/EClaw/issues/129)) ([#2681](https://github.com/HankHuang0516/EClaw/issues/2681)) ([0f15e69](https://github.com/HankHuang0516/EClaw/commit/0f15e6930f0697c37fa08f3219edb8f9e499837f)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **portal:** redo nagoya trip page in professional tour-guide style ([#2691](https://github.com/HankHuang0516/EClaw/issues/2691)) ([b2378c0](https://github.com/HankHuang0516/EClaw/commit/b2378c06ee20fa9cccfdceceb1a4c9e0b3072f59))
* **avatar:** render selected petdx companion in chat avatars ([#2620](https://github.com/HankHuang0516/EClaw/issues/2620)) ([0bdd046](https://github.com/HankHuang0516/EClaw/commit/0bdd046fe1b1c428e32edda366ff112c08927f4c))
* **home:** replace native home with WebView hosting dashboard.html ([#2634](https://github.com/HankHuang0516/EClaw/issues/2634)) ([e69ea81](https://github.com/HankHuang0516/EClaw/commit/e69ea8160c239b083a83d6dc83a4f1c3f901c863))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **chat:** support message deep links ([#2719](https://github.com/HankHuang0516/EClaw/issues/2719)) ([2dc0f1e](https://github.com/HankHuang0516/EClaw/commit/2dc0f1eeb259e1a0848db4a03186b989372cd91c))
* **mission:** support note deep links ([#2717](https://github.com/HankHuang0516/EClaw/issues/2717)) ([2efd3a5](https://github.com/HankHuang0516/EClaw/commit/2efd3a5e741217a07c0b0ac54a0ddd010e0ebe23))
* **share-chat:** twitter card + per-bot og:image/twitter:* in SSR ([#2609](https://github.com/HankHuang0516/EClaw/issues/2609)) ([6cdc853](https://github.com/HankHuang0516/EClaw/commit/6cdc853dc884cdb95bd47214942768981f218ae0))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))
* **settings:** wire petdx avatar into channel-account chips ([#2626](https://github.com/HankHuang0516/EClaw/issues/2626)) ([88aec77](https://github.com/HankHuang0516/EClaw/commit/88aec772628c240e97b336bb5820892ad632d1ae))
* **files:** wire petdx avatar into entity filter & per-file badges ([#2627](https://github.com/HankHuang0516/EClaw/issues/2627)) ([5b3e5cc](https://github.com/HankHuang0516/EClaw/commit/5b3e5cc542d9da69bb4e92500fd03a542ea33f00))
* **mindmap:** wrap hardcoded zh-TW UI strings with i18n t() ([#2607](https://github.com/HankHuang0516/EClaw/issues/2607)) ([166af87](https://github.com/HankHuang0516/EClaw/commit/166af8772b2121a24aaf34a83b3de970e9b3b571)), closes [#2606](https://github.com/HankHuang0516/EClaw/issues/2606)


### Performance Improvements

* **mindmap:** force-graph hardening for 1000/2000-node graphs ([#2684](https://github.com/HankHuang0516/EClaw/issues/2684)) ([da8b1c8](https://github.com/HankHuang0516/EClaw/commit/da8b1c8f947ab8bc8fa455c1962a91146623a1fc))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-13)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **notifications:** add kanban_done + kanban_done_auto toggles to Android Settings ([#2636](https://github.com/HankHuang0516/EClaw/issues/2636)) ([a710909](https://github.com/HankHuang0516/EClaw/commit/a7109095e3393b8564e7ef1b23d382a4fbb944b8))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **kanban:** comment input no longer overlaps last comment in card detail (PR [#2678](https://github.com/HankHuang0516/EClaw/issues/2678)) ([fba91fc](https://github.com/HankHuang0516/EClaw/commit/fba91fca15402b453a0db5ee857c0b16e6087055))
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **petdx:** drop dark-grey loading placeholder + preload sprite WEBP ([#2628](https://github.com/HankHuang0516/EClaw/issues/2628)) ([59cef38](https://github.com/HankHuang0516/EClaw/commit/59cef387bd69ca99d7d15c86a1364856d3849ad8)), closes [#1a1a1a](https://github.com/HankHuang0516/EClaw/issues/1a1a1a)
* **entities:** expose botSecret to owner so wallpaper service can poll companions ([#2615](https://github.com/HankHuang0516/EClaw/issues/2615)) ([04470fc](https://github.com/HankHuang0516/EClaw/commit/04470fce8f8c3fce2b1ba8b243e776606f107502))
* **rental:** expose owner_public_code in marketplace so plaza CTA can route ([#2616](https://github.com/HankHuang0516/EClaw/issues/2616)) ([4d1372f](https://github.com/HankHuang0516/EClaw/commit/4d1372f717d93cab65543e87c852e74e9fb67071)), closes [#2610](https://github.com/HankHuang0516/EClaw/issues/2610)
* **mindmap:** fallback to device scope when entityId is null ([#2728](https://github.com/HankHuang0516/EClaw/issues/2728)) ([7572312](https://github.com/HankHuang0516/EClaw/commit/7572312433d3d75fc245eda48a28919ce14bd927))
* **i18n:** fill Spanish drift keys ([#2751](https://github.com/HankHuang0516/EClaw/issues/2751)) ([0ad0ee5](https://github.com/HankHuang0516/EClaw/commit/0ad0ee55f7fac3e6ac46d891539950dab4d553cc))
* **portal:** fit embedded org chart to mobile viewport ([#2674](https://github.com/HankHuang0516/EClaw/issues/2674)) ([1c4e1b4](https://github.com/HankHuang0516/EClaw/commit/1c4e1b413ea7027b4cd4b8ecda981b0d0e12e66b))
* **mention-parser:** ignore @-mentions inside markdown code spans ([#2645](https://github.com/HankHuang0516/EClaw/issues/2645)) ([8da19d4](https://github.com/HankHuang0516/EClaw/commit/8da19d4a79ceb4152bf2144ee0847c61ce3e1def)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **kanban:** lazy-load dependency chips via IntersectionObserver ([#2632](https://github.com/HankHuang0516/EClaw/issues/2632)) ([20586b4](https://github.com/HankHuang0516/EClaw/commit/20586b43357335f9eb6a190c02d58c8e36b58aba)), closes [#2631](https://github.com/HankHuang0516/EClaw/issues/2631)
* **kanban:** notify reviewer on manual /move → review ([#2753](https://github.com/HankHuang0516/EClaw/issues/2753)) ([6cbbb4e](https://github.com/HankHuang0516/EClaw/commit/6cbbb4ee8c0d4d8ad54df2e9b5faaa3699bd530f))
* **wallpaper:** off-load spritesheet fetch to IO so per-petdx sprites actually render ([#2618](https://github.com/HankHuang0516/EClaw/issues/2618)) ([61b832c](https://github.com/HankHuang0516/EClaw/commit/61b832c9fa8a1d0caab810ccc942d85c63349267)), closes [#2615](https://github.com/HankHuang0516/EClaw/issues/2615) [#2577](https://github.com/HankHuang0516/EClaw/issues/2577)
* **i18n:** positional format specifiers for feedback_result_logs (7 locales) ([#2597](https://github.com/HankHuang0516/EClaw/issues/2597)) ([21aedc7](https://github.com/HankHuang0516/EClaw/commit/21aedc7eebc7a2839e340136f38dfdfd4dabb9dc))
* **avatar-petdx:** preserve descriptor across transient API failures (flicker) ([#2625](https://github.com/HankHuang0516/EClaw/issues/2625)) ([7b1c606](https://github.com/HankHuang0516/EClaw/commit/7b1c606514f7698d72ec95cf6c556e4043966186))
* **chat:** preserve scroll anchor while reading history ([#2693](https://github.com/HankHuang0516/EClaw/issues/2693)) ([945fdb7](https://github.com/HankHuang0516/EClaw/commit/945fdb7192b791b31882e1e75568dd8b11e4686f))
* **promo:** pull video embed from /promo-chat-avatar.html ([#2724](https://github.com/HankHuang0516/EClaw/issues/2724)) ([2afabc8](https://github.com/HankHuang0516/EClaw/commit/2afabc8c5ff8b25218a7cb857e8adfa572c8e9d5))
* **portal:** reduce QA-discovered request fanout ([#2656](https://github.com/HankHuang0516/EClaw/issues/2656)) ([1e46d6b](https://github.com/HankHuang0516/EClaw/commit/1e46d6bab61e58c65b452b6503d953f8dddeee75))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **portal:** remove org chart fit scale floor ([#2676](https://github.com/HankHuang0516/EClaw/issues/2676)) ([0f01606](https://github.com/HankHuang0516/EClaw/commit/0f016068b963bb5f800a02f28817c7174979d913))
* **i18n:** rename mm_empty_title → mm_state_empty_title in mindmap.html ([#2683](https://github.com/HankHuang0516/EClaw/issues/2683)) ([c79c109](https://github.com/HankHuang0516/EClaw/commit/c79c109bea23142e8a6d9ace976d105af1280ec9))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **chat:** render mention avatars with companion renderer ([#2633](https://github.com/HankHuang0516/EClaw/issues/2633)) ([03e205f](https://github.com/HankHuang0516/EClaw/commit/03e205f663ecd2c2f443d4009dd5af0093f0bbbb))
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* scheduled audit 2026-05-13 — 6 bugs, XSS, i18n ([#2668](https://github.com/HankHuang0516/EClaw/issues/2668)) ([21dd513](https://github.com/HankHuang0516/EClaw/commit/21dd513b4464738de29164265437435ba6cc4817)), closes [#2605](https://github.com/HankHuang0516/EClaw/issues/2605) [#2608](https://github.com/HankHuang0516/EClaw/issues/2608) [#2600](https://github.com/HankHuang0516/EClaw/issues/2600) [#2599](https://github.com/HankHuang0516/EClaw/issues/2599) [#2598](https://github.com/HankHuang0516/EClaw/issues/2598)
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **chat:** smart-chip preview falls back to inline c.comments when /comments fails (PR [#2677](https://github.com/HankHuang0516/EClaw/issues/2677)) ([7f4dffd](https://github.com/HankHuang0516/EClaw/commit/7f4dffd2c83ea86f296b8fa0610f0e67c9f1af11))
* **wallpaper:** stop Android live wallpaper flashing default lobster on companion change ([#2629](https://github.com/HankHuang0516/EClaw/issues/2629)) ([8b4f66f](https://github.com/HankHuang0516/EClaw/commit/8b4f66fcb335bf43128f924b761b6337c817095b)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **app:** WebView pages honor app-selected locale via ?lang= URL param ([#2672](https://github.com/HankHuang0516/EClaw/issues/2672)) ([8ed8757](https://github.com/HankHuang0516/EClaw/commit/8ed8757aec5bf214e837cc0d81bf2b23f1993a91)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* **community:** 1-click chat button on bot cards + utm tagging ([#2610](https://github.com/HankHuang0516/EClaw/issues/2610)) ([eee97b0](https://github.com/HankHuang0516/EClaw/commit/eee97b0e2e4e74945ec24f218a69a52800b97a66))
* **chat:** add avatar size preference ([#2714](https://github.com/HankHuang0516/EClaw/issues/2714)) ([6fe164a](https://github.com/HankHuang0516/EClaw/commit/6fe164ad8b22fa576d2dd9ad37c0d9fc295b5a83))
* **dashboard:** add Claude and Codex channel guides ([#2640](https://github.com/HankHuang0516/EClaw/issues/2640)) ([c64e4c4](https://github.com/HankHuang0516/EClaw/commit/c64e4c4afc78db58c5cd578f00486dd7b2fd3311))
* **dashboard:** add Claude Code channel guide card ([#2667](https://github.com/HankHuang0516/EClaw/issues/2667)) ([d70d75c](https://github.com/HankHuang0516/EClaw/commit/d70d75c0c8caa8a540358a9aab4556b8c1927a5c))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* **portal:** add entity selector to petdx-browser ([#2602](https://github.com/HankHuang0516/EClaw/issues/2602)) ([3fa067e](https://github.com/HankHuang0516/EClaw/commit/3fa067e00b38829b48a37cecd33ee81a9a1122d9))
* **kanban:** add explicit card links ([#2721](https://github.com/HankHuang0516/EClaw/issues/2721)) ([ef9f812](https://github.com/HankHuang0516/EClaw/commit/ef9f812a3fcf39efd07fd158ce90951bdd045ac7))
* **mindmap:** add GET /api/mindmap/graph force-graph projection ([#2680](https://github.com/HankHuang0516/EClaw/issues/2680)) ([a00b2e7](https://github.com/HankHuang0516/EClaw/commit/a00b2e775af2c4c98cd157f760ad87aeeee469f0)), closes [#2679](https://github.com/HankHuang0516/EClaw/issues/2679) [#2679](https://github.com/HankHuang0516/EClaw/issues/2679)
* **dashboard:** add Hermes channel promo card ([#2708](https://github.com/HankHuang0516/EClaw/issues/2708)) ([337aca1](https://github.com/HankHuang0516/EClaw/commit/337aca153d5a1cd7e888c065f00ae54db7872d91))
* **portal:** add Nagoya 5D4N trip static cross-ref page ([#2689](https://github.com/HankHuang0516/EClaw/issues/2689)) ([2e0efb6](https://github.com/HankHuang0516/EClaw/commit/2e0efb6dcdaff52226cc8854a96747000b12bdff))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **rental:** add renter health chat indicator ([#2690](https://github.com/HankHuang0516/EClaw/issues/2690)) ([36cd2e9](https://github.com/HankHuang0516/EClaw/commit/36cd2e9802be4c7ebb03d3024617fa74aca48ffd))
* **companion:** bridge crafter-station/petdex gallery (1784 pets) ([#2601](https://github.com/HankHuang0516/EClaw/issues/2601)) ([2e245be](https://github.com/HankHuang0516/EClaw/commit/2e245bea6dd47ea7361b927d389188a3c23b6bb3))
* **promo:** chat avatar size feature landing page (self-hosted MP4) ([#2722](https://github.com/HankHuang0516/EClaw/issues/2722)) ([3852210](https://github.com/HankHuang0516/EClaw/commit/3852210d355704d018e3daca6b5f9512a011b210)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **chat:** link card previews to kanban ([#2754](https://github.com/HankHuang0516/EClaw/issues/2754)) ([2261240](https://github.com/HankHuang0516/EClaw/commit/22612402c2e95efb07246629e81a849be41ee9c7))
* **mission:** link notes to kanban cards ([#2723](https://github.com/HankHuang0516/EClaw/issues/2723)) ([b36dc18](https://github.com/HankHuang0516/EClaw/commit/b36dc18f3a8facf12e0b6046351c222f1e99dc55))
* **mindmap:** mission.html link to /portal/mindmap.html + deprecate /api/mission/mindmap ([#2685](https://github.com/HankHuang0516/EClaw/issues/2685)) ([11e297b](https://github.com/HankHuang0516/EClaw/commit/11e297bab1c9b56fcde3027d6500b7c58891bf18)), closes [#2680](https://github.com/HankHuang0516/EClaw/issues/2680) [#2684](https://github.com/HankHuang0516/EClaw/issues/2684)
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **avatar:** petdx render on card-holder my-cards (Phase 1b) ([#2621](https://github.com/HankHuang0516/EClaw/issues/2621)) ([f78ba8b](https://github.com/HankHuang0516/EClaw/commit/f78ba8b18acc426936ab6d8a82ca7541effea00d))
* **avatar:** petdx render on dashboard entity grid / org chart / bindings (Phase 1b) ([#2622](https://github.com/HankHuang0516/EClaw/issues/2622)) ([f417749](https://github.com/HankHuang0516/EClaw/commit/f41774914451048e8cd76e9ae30416a0642e173b)), closes [#2620](https://github.com/HankHuang0516/EClaw/issues/2620) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621)
* **avatar:** petdx render on kanban auto-assign / pulse / comment avatars (Phase 1b) ([#2624](https://github.com/HankHuang0516/EClaw/issues/2624)) ([6bff5f8](https://github.com/HankHuang0516/EClaw/commit/6bff5f80440d0bd91a6b1721cde9478d685c4d46))
* **avatar:** petdx render on mission skill/rule/soul entity dialogs (Phase 1b) ([#2623](https://github.com/HankHuang0516/EClaw/issues/2623)) ([129327b](https://github.com/HankHuang0516/EClaw/commit/129327bc7b91056659f1ab7e8d5e3f5260d951fb))
* **mindmap:** portal/mindmap.html force-graph prototype ([#129](https://github.com/HankHuang0516/EClaw/issues/129)) ([#2681](https://github.com/HankHuang0516/EClaw/issues/2681)) ([0f15e69](https://github.com/HankHuang0516/EClaw/commit/0f15e6930f0697c37fa08f3219edb8f9e499837f)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **portal:** redo nagoya trip page in professional tour-guide style ([#2691](https://github.com/HankHuang0516/EClaw/issues/2691)) ([b2378c0](https://github.com/HankHuang0516/EClaw/commit/b2378c06ee20fa9cccfdceceb1a4c9e0b3072f59))
* **avatar:** render selected petdx companion in chat avatars ([#2620](https://github.com/HankHuang0516/EClaw/issues/2620)) ([0bdd046](https://github.com/HankHuang0516/EClaw/commit/0bdd046fe1b1c428e32edda366ff112c08927f4c))
* **home:** replace native home with WebView hosting dashboard.html ([#2634](https://github.com/HankHuang0516/EClaw/issues/2634)) ([e69ea81](https://github.com/HankHuang0516/EClaw/commit/e69ea8160c239b083a83d6dc83a4f1c3f901c863))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **chat:** support message deep links ([#2719](https://github.com/HankHuang0516/EClaw/issues/2719)) ([2dc0f1e](https://github.com/HankHuang0516/EClaw/commit/2dc0f1eeb259e1a0848db4a03186b989372cd91c))
* **mission:** support note deep links ([#2717](https://github.com/HankHuang0516/EClaw/issues/2717)) ([2efd3a5](https://github.com/HankHuang0516/EClaw/commit/2efd3a5e741217a07c0b0ac54a0ddd010e0ebe23))
* **share-chat:** twitter card + per-bot og:image/twitter:* in SSR ([#2609](https://github.com/HankHuang0516/EClaw/issues/2609)) ([6cdc853](https://github.com/HankHuang0516/EClaw/commit/6cdc853dc884cdb95bd47214942768981f218ae0))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))
* **settings:** wire petdx avatar into channel-account chips ([#2626](https://github.com/HankHuang0516/EClaw/issues/2626)) ([88aec77](https://github.com/HankHuang0516/EClaw/commit/88aec772628c240e97b336bb5820892ad632d1ae))
* **files:** wire petdx avatar into entity filter & per-file badges ([#2627](https://github.com/HankHuang0516/EClaw/issues/2627)) ([5b3e5cc](https://github.com/HankHuang0516/EClaw/commit/5b3e5cc542d9da69bb4e92500fd03a542ea33f00))
* **mindmap:** wrap hardcoded zh-TW UI strings with i18n t() ([#2607](https://github.com/HankHuang0516/EClaw/issues/2607)) ([166af87](https://github.com/HankHuang0516/EClaw/commit/166af8772b2121a24aaf34a83b3de970e9b3b571)), closes [#2606](https://github.com/HankHuang0516/EClaw/issues/2606)


### Performance Improvements

* **mindmap:** force-graph hardening for 1000/2000-node graphs ([#2684](https://github.com/HankHuang0516/EClaw/issues/2684)) ([da8b1c8](https://github.com/HankHuang0516/EClaw/commit/da8b1c8f947ab8bc8fa455c1962a91146623a1fc))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-13)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **notifications:** add kanban_done + kanban_done_auto toggles to Android Settings ([#2636](https://github.com/HankHuang0516/EClaw/issues/2636)) ([a710909](https://github.com/HankHuang0516/EClaw/commit/a7109095e3393b8564e7ef1b23d382a4fbb944b8))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **kanban:** comment input no longer overlaps last comment in card detail (PR [#2678](https://github.com/HankHuang0516/EClaw/issues/2678)) ([fba91fc](https://github.com/HankHuang0516/EClaw/commit/fba91fca15402b453a0db5ee857c0b16e6087055))
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **petdx:** drop dark-grey loading placeholder + preload sprite WEBP ([#2628](https://github.com/HankHuang0516/EClaw/issues/2628)) ([59cef38](https://github.com/HankHuang0516/EClaw/commit/59cef387bd69ca99d7d15c86a1364856d3849ad8)), closes [#1a1a1a](https://github.com/HankHuang0516/EClaw/issues/1a1a1a)
* **entities:** expose botSecret to owner so wallpaper service can poll companions ([#2615](https://github.com/HankHuang0516/EClaw/issues/2615)) ([04470fc](https://github.com/HankHuang0516/EClaw/commit/04470fce8f8c3fce2b1ba8b243e776606f107502))
* **rental:** expose owner_public_code in marketplace so plaza CTA can route ([#2616](https://github.com/HankHuang0516/EClaw/issues/2616)) ([4d1372f](https://github.com/HankHuang0516/EClaw/commit/4d1372f717d93cab65543e87c852e74e9fb67071)), closes [#2610](https://github.com/HankHuang0516/EClaw/issues/2610)
* **mindmap:** fallback to device scope when entityId is null ([#2728](https://github.com/HankHuang0516/EClaw/issues/2728)) ([7572312](https://github.com/HankHuang0516/EClaw/commit/7572312433d3d75fc245eda48a28919ce14bd927))
* **i18n:** fill Spanish drift keys ([#2751](https://github.com/HankHuang0516/EClaw/issues/2751)) ([0ad0ee5](https://github.com/HankHuang0516/EClaw/commit/0ad0ee55f7fac3e6ac46d891539950dab4d553cc))
* **portal:** fit embedded org chart to mobile viewport ([#2674](https://github.com/HankHuang0516/EClaw/issues/2674)) ([1c4e1b4](https://github.com/HankHuang0516/EClaw/commit/1c4e1b413ea7027b4cd4b8ecda981b0d0e12e66b))
* **mention-parser:** ignore @-mentions inside markdown code spans ([#2645](https://github.com/HankHuang0516/EClaw/issues/2645)) ([8da19d4](https://github.com/HankHuang0516/EClaw/commit/8da19d4a79ceb4152bf2144ee0847c61ce3e1def)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **kanban:** lazy-load dependency chips via IntersectionObserver ([#2632](https://github.com/HankHuang0516/EClaw/issues/2632)) ([20586b4](https://github.com/HankHuang0516/EClaw/commit/20586b43357335f9eb6a190c02d58c8e36b58aba)), closes [#2631](https://github.com/HankHuang0516/EClaw/issues/2631)
* **kanban:** notify reviewer on manual /move → review ([#2753](https://github.com/HankHuang0516/EClaw/issues/2753)) ([6cbbb4e](https://github.com/HankHuang0516/EClaw/commit/6cbbb4ee8c0d4d8ad54df2e9b5faaa3699bd530f))
* **wallpaper:** off-load spritesheet fetch to IO so per-petdx sprites actually render ([#2618](https://github.com/HankHuang0516/EClaw/issues/2618)) ([61b832c](https://github.com/HankHuang0516/EClaw/commit/61b832c9fa8a1d0caab810ccc942d85c63349267)), closes [#2615](https://github.com/HankHuang0516/EClaw/issues/2615) [#2577](https://github.com/HankHuang0516/EClaw/issues/2577)
* **i18n:** positional format specifiers for feedback_result_logs (7 locales) ([#2597](https://github.com/HankHuang0516/EClaw/issues/2597)) ([21aedc7](https://github.com/HankHuang0516/EClaw/commit/21aedc7eebc7a2839e340136f38dfdfd4dabb9dc))
* **avatar-petdx:** preserve descriptor across transient API failures (flicker) ([#2625](https://github.com/HankHuang0516/EClaw/issues/2625)) ([7b1c606](https://github.com/HankHuang0516/EClaw/commit/7b1c606514f7698d72ec95cf6c556e4043966186))
* **chat:** preserve scroll anchor while reading history ([#2693](https://github.com/HankHuang0516/EClaw/issues/2693)) ([945fdb7](https://github.com/HankHuang0516/EClaw/commit/945fdb7192b791b31882e1e75568dd8b11e4686f))
* **promo:** pull video embed from /promo-chat-avatar.html ([#2724](https://github.com/HankHuang0516/EClaw/issues/2724)) ([2afabc8](https://github.com/HankHuang0516/EClaw/commit/2afabc8c5ff8b25218a7cb857e8adfa572c8e9d5))
* **portal:** reduce QA-discovered request fanout ([#2656](https://github.com/HankHuang0516/EClaw/issues/2656)) ([1e46d6b](https://github.com/HankHuang0516/EClaw/commit/1e46d6bab61e58c65b452b6503d953f8dddeee75))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **portal:** remove org chart fit scale floor ([#2676](https://github.com/HankHuang0516/EClaw/issues/2676)) ([0f01606](https://github.com/HankHuang0516/EClaw/commit/0f016068b963bb5f800a02f28817c7174979d913))
* **i18n:** rename mm_empty_title → mm_state_empty_title in mindmap.html ([#2683](https://github.com/HankHuang0516/EClaw/issues/2683)) ([c79c109](https://github.com/HankHuang0516/EClaw/commit/c79c109bea23142e8a6d9ace976d105af1280ec9))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **chat:** render mention avatars with companion renderer ([#2633](https://github.com/HankHuang0516/EClaw/issues/2633)) ([03e205f](https://github.com/HankHuang0516/EClaw/commit/03e205f663ecd2c2f443d4009dd5af0093f0bbbb))
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* scheduled audit 2026-05-13 — 6 bugs, XSS, i18n ([#2668](https://github.com/HankHuang0516/EClaw/issues/2668)) ([21dd513](https://github.com/HankHuang0516/EClaw/commit/21dd513b4464738de29164265437435ba6cc4817)), closes [#2605](https://github.com/HankHuang0516/EClaw/issues/2605) [#2608](https://github.com/HankHuang0516/EClaw/issues/2608) [#2600](https://github.com/HankHuang0516/EClaw/issues/2600) [#2599](https://github.com/HankHuang0516/EClaw/issues/2599) [#2598](https://github.com/HankHuang0516/EClaw/issues/2598)
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **chat:** smart-chip preview falls back to inline c.comments when /comments fails (PR [#2677](https://github.com/HankHuang0516/EClaw/issues/2677)) ([7f4dffd](https://github.com/HankHuang0516/EClaw/commit/7f4dffd2c83ea86f296b8fa0610f0e67c9f1af11))
* **wallpaper:** stop Android live wallpaper flashing default lobster on companion change ([#2629](https://github.com/HankHuang0516/EClaw/issues/2629)) ([8b4f66f](https://github.com/HankHuang0516/EClaw/commit/8b4f66fcb335bf43128f924b761b6337c817095b)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **app:** WebView pages honor app-selected locale via ?lang= URL param ([#2672](https://github.com/HankHuang0516/EClaw/issues/2672)) ([8ed8757](https://github.com/HankHuang0516/EClaw/commit/8ed8757aec5bf214e837cc0d81bf2b23f1993a91)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* **community:** 1-click chat button on bot cards + utm tagging ([#2610](https://github.com/HankHuang0516/EClaw/issues/2610)) ([eee97b0](https://github.com/HankHuang0516/EClaw/commit/eee97b0e2e4e74945ec24f218a69a52800b97a66))
* **chat:** add avatar size preference ([#2714](https://github.com/HankHuang0516/EClaw/issues/2714)) ([6fe164a](https://github.com/HankHuang0516/EClaw/commit/6fe164ad8b22fa576d2dd9ad37c0d9fc295b5a83))
* **dashboard:** add Claude and Codex channel guides ([#2640](https://github.com/HankHuang0516/EClaw/issues/2640)) ([c64e4c4](https://github.com/HankHuang0516/EClaw/commit/c64e4c4afc78db58c5cd578f00486dd7b2fd3311))
* **dashboard:** add Claude Code channel guide card ([#2667](https://github.com/HankHuang0516/EClaw/issues/2667)) ([d70d75c](https://github.com/HankHuang0516/EClaw/commit/d70d75c0c8caa8a540358a9aab4556b8c1927a5c))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* **portal:** add entity selector to petdx-browser ([#2602](https://github.com/HankHuang0516/EClaw/issues/2602)) ([3fa067e](https://github.com/HankHuang0516/EClaw/commit/3fa067e00b38829b48a37cecd33ee81a9a1122d9))
* **kanban:** add explicit card links ([#2721](https://github.com/HankHuang0516/EClaw/issues/2721)) ([ef9f812](https://github.com/HankHuang0516/EClaw/commit/ef9f812a3fcf39efd07fd158ce90951bdd045ac7))
* **mindmap:** add GET /api/mindmap/graph force-graph projection ([#2680](https://github.com/HankHuang0516/EClaw/issues/2680)) ([a00b2e7](https://github.com/HankHuang0516/EClaw/commit/a00b2e775af2c4c98cd157f760ad87aeeee469f0)), closes [#2679](https://github.com/HankHuang0516/EClaw/issues/2679) [#2679](https://github.com/HankHuang0516/EClaw/issues/2679)
* **dashboard:** add Hermes channel promo card ([#2708](https://github.com/HankHuang0516/EClaw/issues/2708)) ([337aca1](https://github.com/HankHuang0516/EClaw/commit/337aca153d5a1cd7e888c065f00ae54db7872d91))
* **portal:** add Nagoya 5D4N trip static cross-ref page ([#2689](https://github.com/HankHuang0516/EClaw/issues/2689)) ([2e0efb6](https://github.com/HankHuang0516/EClaw/commit/2e0efb6dcdaff52226cc8854a96747000b12bdff))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **rental:** add renter health chat indicator ([#2690](https://github.com/HankHuang0516/EClaw/issues/2690)) ([36cd2e9](https://github.com/HankHuang0516/EClaw/commit/36cd2e9802be4c7ebb03d3024617fa74aca48ffd))
* **companion:** bridge crafter-station/petdex gallery (1784 pets) ([#2601](https://github.com/HankHuang0516/EClaw/issues/2601)) ([2e245be](https://github.com/HankHuang0516/EClaw/commit/2e245bea6dd47ea7361b927d389188a3c23b6bb3))
* **promo:** chat avatar size feature landing page (self-hosted MP4) ([#2722](https://github.com/HankHuang0516/EClaw/issues/2722)) ([3852210](https://github.com/HankHuang0516/EClaw/commit/3852210d355704d018e3daca6b5f9512a011b210)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **mission:** link notes to kanban cards ([#2723](https://github.com/HankHuang0516/EClaw/issues/2723)) ([b36dc18](https://github.com/HankHuang0516/EClaw/commit/b36dc18f3a8facf12e0b6046351c222f1e99dc55))
* **mindmap:** mission.html link to /portal/mindmap.html + deprecate /api/mission/mindmap ([#2685](https://github.com/HankHuang0516/EClaw/issues/2685)) ([11e297b](https://github.com/HankHuang0516/EClaw/commit/11e297bab1c9b56fcde3027d6500b7c58891bf18)), closes [#2680](https://github.com/HankHuang0516/EClaw/issues/2680) [#2684](https://github.com/HankHuang0516/EClaw/issues/2684)
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **avatar:** petdx render on card-holder my-cards (Phase 1b) ([#2621](https://github.com/HankHuang0516/EClaw/issues/2621)) ([f78ba8b](https://github.com/HankHuang0516/EClaw/commit/f78ba8b18acc426936ab6d8a82ca7541effea00d))
* **avatar:** petdx render on dashboard entity grid / org chart / bindings (Phase 1b) ([#2622](https://github.com/HankHuang0516/EClaw/issues/2622)) ([f417749](https://github.com/HankHuang0516/EClaw/commit/f41774914451048e8cd76e9ae30416a0642e173b)), closes [#2620](https://github.com/HankHuang0516/EClaw/issues/2620) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621)
* **avatar:** petdx render on kanban auto-assign / pulse / comment avatars (Phase 1b) ([#2624](https://github.com/HankHuang0516/EClaw/issues/2624)) ([6bff5f8](https://github.com/HankHuang0516/EClaw/commit/6bff5f80440d0bd91a6b1721cde9478d685c4d46))
* **avatar:** petdx render on mission skill/rule/soul entity dialogs (Phase 1b) ([#2623](https://github.com/HankHuang0516/EClaw/issues/2623)) ([129327b](https://github.com/HankHuang0516/EClaw/commit/129327bc7b91056659f1ab7e8d5e3f5260d951fb))
* **mindmap:** portal/mindmap.html force-graph prototype ([#129](https://github.com/HankHuang0516/EClaw/issues/129)) ([#2681](https://github.com/HankHuang0516/EClaw/issues/2681)) ([0f15e69](https://github.com/HankHuang0516/EClaw/commit/0f15e6930f0697c37fa08f3219edb8f9e499837f)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **portal:** redo nagoya trip page in professional tour-guide style ([#2691](https://github.com/HankHuang0516/EClaw/issues/2691)) ([b2378c0](https://github.com/HankHuang0516/EClaw/commit/b2378c06ee20fa9cccfdceceb1a4c9e0b3072f59))
* **avatar:** render selected petdx companion in chat avatars ([#2620](https://github.com/HankHuang0516/EClaw/issues/2620)) ([0bdd046](https://github.com/HankHuang0516/EClaw/commit/0bdd046fe1b1c428e32edda366ff112c08927f4c))
* **home:** replace native home with WebView hosting dashboard.html ([#2634](https://github.com/HankHuang0516/EClaw/issues/2634)) ([e69ea81](https://github.com/HankHuang0516/EClaw/commit/e69ea8160c239b083a83d6dc83a4f1c3f901c863))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **chat:** support message deep links ([#2719](https://github.com/HankHuang0516/EClaw/issues/2719)) ([2dc0f1e](https://github.com/HankHuang0516/EClaw/commit/2dc0f1eeb259e1a0848db4a03186b989372cd91c))
* **mission:** support note deep links ([#2717](https://github.com/HankHuang0516/EClaw/issues/2717)) ([2efd3a5](https://github.com/HankHuang0516/EClaw/commit/2efd3a5e741217a07c0b0ac54a0ddd010e0ebe23))
* **share-chat:** twitter card + per-bot og:image/twitter:* in SSR ([#2609](https://github.com/HankHuang0516/EClaw/issues/2609)) ([6cdc853](https://github.com/HankHuang0516/EClaw/commit/6cdc853dc884cdb95bd47214942768981f218ae0))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))
* **settings:** wire petdx avatar into channel-account chips ([#2626](https://github.com/HankHuang0516/EClaw/issues/2626)) ([88aec77](https://github.com/HankHuang0516/EClaw/commit/88aec772628c240e97b336bb5820892ad632d1ae))
* **files:** wire petdx avatar into entity filter & per-file badges ([#2627](https://github.com/HankHuang0516/EClaw/issues/2627)) ([5b3e5cc](https://github.com/HankHuang0516/EClaw/commit/5b3e5cc542d9da69bb4e92500fd03a542ea33f00))
* **mindmap:** wrap hardcoded zh-TW UI strings with i18n t() ([#2607](https://github.com/HankHuang0516/EClaw/issues/2607)) ([166af87](https://github.com/HankHuang0516/EClaw/commit/166af8772b2121a24aaf34a83b3de970e9b3b571)), closes [#2606](https://github.com/HankHuang0516/EClaw/issues/2606)


### Performance Improvements

* **mindmap:** force-graph hardening for 1000/2000-node graphs ([#2684](https://github.com/HankHuang0516/EClaw/issues/2684)) ([da8b1c8](https://github.com/HankHuang0516/EClaw/commit/da8b1c8f947ab8bc8fa455c1962a91146623a1fc))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-13)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **notifications:** add kanban_done + kanban_done_auto toggles to Android Settings ([#2636](https://github.com/HankHuang0516/EClaw/issues/2636)) ([a710909](https://github.com/HankHuang0516/EClaw/commit/a7109095e3393b8564e7ef1b23d382a4fbb944b8))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **kanban:** comment input no longer overlaps last comment in card detail (PR [#2678](https://github.com/HankHuang0516/EClaw/issues/2678)) ([fba91fc](https://github.com/HankHuang0516/EClaw/commit/fba91fca15402b453a0db5ee857c0b16e6087055))
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **petdx:** drop dark-grey loading placeholder + preload sprite WEBP ([#2628](https://github.com/HankHuang0516/EClaw/issues/2628)) ([59cef38](https://github.com/HankHuang0516/EClaw/commit/59cef387bd69ca99d7d15c86a1364856d3849ad8)), closes [#1a1a1a](https://github.com/HankHuang0516/EClaw/issues/1a1a1a)
* **entities:** expose botSecret to owner so wallpaper service can poll companions ([#2615](https://github.com/HankHuang0516/EClaw/issues/2615)) ([04470fc](https://github.com/HankHuang0516/EClaw/commit/04470fce8f8c3fce2b1ba8b243e776606f107502))
* **rental:** expose owner_public_code in marketplace so plaza CTA can route ([#2616](https://github.com/HankHuang0516/EClaw/issues/2616)) ([4d1372f](https://github.com/HankHuang0516/EClaw/commit/4d1372f717d93cab65543e87c852e74e9fb67071)), closes [#2610](https://github.com/HankHuang0516/EClaw/issues/2610)
* **mindmap:** fallback to device scope when entityId is null ([#2728](https://github.com/HankHuang0516/EClaw/issues/2728)) ([7572312](https://github.com/HankHuang0516/EClaw/commit/7572312433d3d75fc245eda48a28919ce14bd927))
* **i18n:** fill Spanish drift keys ([#2751](https://github.com/HankHuang0516/EClaw/issues/2751)) ([0ad0ee5](https://github.com/HankHuang0516/EClaw/commit/0ad0ee55f7fac3e6ac46d891539950dab4d553cc))
* **portal:** fit embedded org chart to mobile viewport ([#2674](https://github.com/HankHuang0516/EClaw/issues/2674)) ([1c4e1b4](https://github.com/HankHuang0516/EClaw/commit/1c4e1b413ea7027b4cd4b8ecda981b0d0e12e66b))
* **mention-parser:** ignore @-mentions inside markdown code spans ([#2645](https://github.com/HankHuang0516/EClaw/issues/2645)) ([8da19d4](https://github.com/HankHuang0516/EClaw/commit/8da19d4a79ceb4152bf2144ee0847c61ce3e1def)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **kanban:** lazy-load dependency chips via IntersectionObserver ([#2632](https://github.com/HankHuang0516/EClaw/issues/2632)) ([20586b4](https://github.com/HankHuang0516/EClaw/commit/20586b43357335f9eb6a190c02d58c8e36b58aba)), closes [#2631](https://github.com/HankHuang0516/EClaw/issues/2631)
* **wallpaper:** off-load spritesheet fetch to IO so per-petdx sprites actually render ([#2618](https://github.com/HankHuang0516/EClaw/issues/2618)) ([61b832c](https://github.com/HankHuang0516/EClaw/commit/61b832c9fa8a1d0caab810ccc942d85c63349267)), closes [#2615](https://github.com/HankHuang0516/EClaw/issues/2615) [#2577](https://github.com/HankHuang0516/EClaw/issues/2577)
* **i18n:** positional format specifiers for feedback_result_logs (7 locales) ([#2597](https://github.com/HankHuang0516/EClaw/issues/2597)) ([21aedc7](https://github.com/HankHuang0516/EClaw/commit/21aedc7eebc7a2839e340136f38dfdfd4dabb9dc))
* **avatar-petdx:** preserve descriptor across transient API failures (flicker) ([#2625](https://github.com/HankHuang0516/EClaw/issues/2625)) ([7b1c606](https://github.com/HankHuang0516/EClaw/commit/7b1c606514f7698d72ec95cf6c556e4043966186))
* **chat:** preserve scroll anchor while reading history ([#2693](https://github.com/HankHuang0516/EClaw/issues/2693)) ([945fdb7](https://github.com/HankHuang0516/EClaw/commit/945fdb7192b791b31882e1e75568dd8b11e4686f))
* **promo:** pull video embed from /promo-chat-avatar.html ([#2724](https://github.com/HankHuang0516/EClaw/issues/2724)) ([2afabc8](https://github.com/HankHuang0516/EClaw/commit/2afabc8c5ff8b25218a7cb857e8adfa572c8e9d5))
* **portal:** reduce QA-discovered request fanout ([#2656](https://github.com/HankHuang0516/EClaw/issues/2656)) ([1e46d6b](https://github.com/HankHuang0516/EClaw/commit/1e46d6bab61e58c65b452b6503d953f8dddeee75))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **portal:** remove org chart fit scale floor ([#2676](https://github.com/HankHuang0516/EClaw/issues/2676)) ([0f01606](https://github.com/HankHuang0516/EClaw/commit/0f016068b963bb5f800a02f28817c7174979d913))
* **i18n:** rename mm_empty_title → mm_state_empty_title in mindmap.html ([#2683](https://github.com/HankHuang0516/EClaw/issues/2683)) ([c79c109](https://github.com/HankHuang0516/EClaw/commit/c79c109bea23142e8a6d9ace976d105af1280ec9))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **chat:** render mention avatars with companion renderer ([#2633](https://github.com/HankHuang0516/EClaw/issues/2633)) ([03e205f](https://github.com/HankHuang0516/EClaw/commit/03e205f663ecd2c2f443d4009dd5af0093f0bbbb))
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* scheduled audit 2026-05-13 — 6 bugs, XSS, i18n ([#2668](https://github.com/HankHuang0516/EClaw/issues/2668)) ([21dd513](https://github.com/HankHuang0516/EClaw/commit/21dd513b4464738de29164265437435ba6cc4817)), closes [#2605](https://github.com/HankHuang0516/EClaw/issues/2605) [#2608](https://github.com/HankHuang0516/EClaw/issues/2608) [#2600](https://github.com/HankHuang0516/EClaw/issues/2600) [#2599](https://github.com/HankHuang0516/EClaw/issues/2599) [#2598](https://github.com/HankHuang0516/EClaw/issues/2598)
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **chat:** smart-chip preview falls back to inline c.comments when /comments fails (PR [#2677](https://github.com/HankHuang0516/EClaw/issues/2677)) ([7f4dffd](https://github.com/HankHuang0516/EClaw/commit/7f4dffd2c83ea86f296b8fa0610f0e67c9f1af11))
* **wallpaper:** stop Android live wallpaper flashing default lobster on companion change ([#2629](https://github.com/HankHuang0516/EClaw/issues/2629)) ([8b4f66f](https://github.com/HankHuang0516/EClaw/commit/8b4f66fcb335bf43128f924b761b6337c817095b)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **app:** WebView pages honor app-selected locale via ?lang= URL param ([#2672](https://github.com/HankHuang0516/EClaw/issues/2672)) ([8ed8757](https://github.com/HankHuang0516/EClaw/commit/8ed8757aec5bf214e837cc0d81bf2b23f1993a91)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* **community:** 1-click chat button on bot cards + utm tagging ([#2610](https://github.com/HankHuang0516/EClaw/issues/2610)) ([eee97b0](https://github.com/HankHuang0516/EClaw/commit/eee97b0e2e4e74945ec24f218a69a52800b97a66))
* **chat:** add avatar size preference ([#2714](https://github.com/HankHuang0516/EClaw/issues/2714)) ([6fe164a](https://github.com/HankHuang0516/EClaw/commit/6fe164ad8b22fa576d2dd9ad37c0d9fc295b5a83))
* **dashboard:** add Claude and Codex channel guides ([#2640](https://github.com/HankHuang0516/EClaw/issues/2640)) ([c64e4c4](https://github.com/HankHuang0516/EClaw/commit/c64e4c4afc78db58c5cd578f00486dd7b2fd3311))
* **dashboard:** add Claude Code channel guide card ([#2667](https://github.com/HankHuang0516/EClaw/issues/2667)) ([d70d75c](https://github.com/HankHuang0516/EClaw/commit/d70d75c0c8caa8a540358a9aab4556b8c1927a5c))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* **portal:** add entity selector to petdx-browser ([#2602](https://github.com/HankHuang0516/EClaw/issues/2602)) ([3fa067e](https://github.com/HankHuang0516/EClaw/commit/3fa067e00b38829b48a37cecd33ee81a9a1122d9))
* **kanban:** add explicit card links ([#2721](https://github.com/HankHuang0516/EClaw/issues/2721)) ([ef9f812](https://github.com/HankHuang0516/EClaw/commit/ef9f812a3fcf39efd07fd158ce90951bdd045ac7))
* **mindmap:** add GET /api/mindmap/graph force-graph projection ([#2680](https://github.com/HankHuang0516/EClaw/issues/2680)) ([a00b2e7](https://github.com/HankHuang0516/EClaw/commit/a00b2e775af2c4c98cd157f760ad87aeeee469f0)), closes [#2679](https://github.com/HankHuang0516/EClaw/issues/2679) [#2679](https://github.com/HankHuang0516/EClaw/issues/2679)
* **dashboard:** add Hermes channel promo card ([#2708](https://github.com/HankHuang0516/EClaw/issues/2708)) ([337aca1](https://github.com/HankHuang0516/EClaw/commit/337aca153d5a1cd7e888c065f00ae54db7872d91))
* **portal:** add Nagoya 5D4N trip static cross-ref page ([#2689](https://github.com/HankHuang0516/EClaw/issues/2689)) ([2e0efb6](https://github.com/HankHuang0516/EClaw/commit/2e0efb6dcdaff52226cc8854a96747000b12bdff))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **rental:** add renter health chat indicator ([#2690](https://github.com/HankHuang0516/EClaw/issues/2690)) ([36cd2e9](https://github.com/HankHuang0516/EClaw/commit/36cd2e9802be4c7ebb03d3024617fa74aca48ffd))
* **companion:** bridge crafter-station/petdex gallery (1784 pets) ([#2601](https://github.com/HankHuang0516/EClaw/issues/2601)) ([2e245be](https://github.com/HankHuang0516/EClaw/commit/2e245bea6dd47ea7361b927d389188a3c23b6bb3))
* **promo:** chat avatar size feature landing page (self-hosted MP4) ([#2722](https://github.com/HankHuang0516/EClaw/issues/2722)) ([3852210](https://github.com/HankHuang0516/EClaw/commit/3852210d355704d018e3daca6b5f9512a011b210)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **mission:** link notes to kanban cards ([#2723](https://github.com/HankHuang0516/EClaw/issues/2723)) ([b36dc18](https://github.com/HankHuang0516/EClaw/commit/b36dc18f3a8facf12e0b6046351c222f1e99dc55))
* **mindmap:** mission.html link to /portal/mindmap.html + deprecate /api/mission/mindmap ([#2685](https://github.com/HankHuang0516/EClaw/issues/2685)) ([11e297b](https://github.com/HankHuang0516/EClaw/commit/11e297bab1c9b56fcde3027d6500b7c58891bf18)), closes [#2680](https://github.com/HankHuang0516/EClaw/issues/2680) [#2684](https://github.com/HankHuang0516/EClaw/issues/2684)
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **avatar:** petdx render on card-holder my-cards (Phase 1b) ([#2621](https://github.com/HankHuang0516/EClaw/issues/2621)) ([f78ba8b](https://github.com/HankHuang0516/EClaw/commit/f78ba8b18acc426936ab6d8a82ca7541effea00d))
* **avatar:** petdx render on dashboard entity grid / org chart / bindings (Phase 1b) ([#2622](https://github.com/HankHuang0516/EClaw/issues/2622)) ([f417749](https://github.com/HankHuang0516/EClaw/commit/f41774914451048e8cd76e9ae30416a0642e173b)), closes [#2620](https://github.com/HankHuang0516/EClaw/issues/2620) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621)
* **avatar:** petdx render on kanban auto-assign / pulse / comment avatars (Phase 1b) ([#2624](https://github.com/HankHuang0516/EClaw/issues/2624)) ([6bff5f8](https://github.com/HankHuang0516/EClaw/commit/6bff5f80440d0bd91a6b1721cde9478d685c4d46))
* **avatar:** petdx render on mission skill/rule/soul entity dialogs (Phase 1b) ([#2623](https://github.com/HankHuang0516/EClaw/issues/2623)) ([129327b](https://github.com/HankHuang0516/EClaw/commit/129327bc7b91056659f1ab7e8d5e3f5260d951fb))
* **mindmap:** portal/mindmap.html force-graph prototype ([#129](https://github.com/HankHuang0516/EClaw/issues/129)) ([#2681](https://github.com/HankHuang0516/EClaw/issues/2681)) ([0f15e69](https://github.com/HankHuang0516/EClaw/commit/0f15e6930f0697c37fa08f3219edb8f9e499837f)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **portal:** redo nagoya trip page in professional tour-guide style ([#2691](https://github.com/HankHuang0516/EClaw/issues/2691)) ([b2378c0](https://github.com/HankHuang0516/EClaw/commit/b2378c06ee20fa9cccfdceceb1a4c9e0b3072f59))
* **avatar:** render selected petdx companion in chat avatars ([#2620](https://github.com/HankHuang0516/EClaw/issues/2620)) ([0bdd046](https://github.com/HankHuang0516/EClaw/commit/0bdd046fe1b1c428e32edda366ff112c08927f4c))
* **home:** replace native home with WebView hosting dashboard.html ([#2634](https://github.com/HankHuang0516/EClaw/issues/2634)) ([e69ea81](https://github.com/HankHuang0516/EClaw/commit/e69ea8160c239b083a83d6dc83a4f1c3f901c863))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **chat:** support message deep links ([#2719](https://github.com/HankHuang0516/EClaw/issues/2719)) ([2dc0f1e](https://github.com/HankHuang0516/EClaw/commit/2dc0f1eeb259e1a0848db4a03186b989372cd91c))
* **mission:** support note deep links ([#2717](https://github.com/HankHuang0516/EClaw/issues/2717)) ([2efd3a5](https://github.com/HankHuang0516/EClaw/commit/2efd3a5e741217a07c0b0ac54a0ddd010e0ebe23))
* **share-chat:** twitter card + per-bot og:image/twitter:* in SSR ([#2609](https://github.com/HankHuang0516/EClaw/issues/2609)) ([6cdc853](https://github.com/HankHuang0516/EClaw/commit/6cdc853dc884cdb95bd47214942768981f218ae0))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))
* **settings:** wire petdx avatar into channel-account chips ([#2626](https://github.com/HankHuang0516/EClaw/issues/2626)) ([88aec77](https://github.com/HankHuang0516/EClaw/commit/88aec772628c240e97b336bb5820892ad632d1ae))
* **files:** wire petdx avatar into entity filter & per-file badges ([#2627](https://github.com/HankHuang0516/EClaw/issues/2627)) ([5b3e5cc](https://github.com/HankHuang0516/EClaw/commit/5b3e5cc542d9da69bb4e92500fd03a542ea33f00))
* **mindmap:** wrap hardcoded zh-TW UI strings with i18n t() ([#2607](https://github.com/HankHuang0516/EClaw/issues/2607)) ([166af87](https://github.com/HankHuang0516/EClaw/commit/166af8772b2121a24aaf34a83b3de970e9b3b571)), closes [#2606](https://github.com/HankHuang0516/EClaw/issues/2606)


### Performance Improvements

* **mindmap:** force-graph hardening for 1000/2000-node graphs ([#2684](https://github.com/HankHuang0516/EClaw/issues/2684)) ([da8b1c8](https://github.com/HankHuang0516/EClaw/commit/da8b1c8f947ab8bc8fa455c1962a91146623a1fc))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-13)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **notifications:** add kanban_done + kanban_done_auto toggles to Android Settings ([#2636](https://github.com/HankHuang0516/EClaw/issues/2636)) ([a710909](https://github.com/HankHuang0516/EClaw/commit/a7109095e3393b8564e7ef1b23d382a4fbb944b8))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **kanban:** comment input no longer overlaps last comment in card detail (PR [#2678](https://github.com/HankHuang0516/EClaw/issues/2678)) ([fba91fc](https://github.com/HankHuang0516/EClaw/commit/fba91fca15402b453a0db5ee857c0b16e6087055))
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **petdx:** drop dark-grey loading placeholder + preload sprite WEBP ([#2628](https://github.com/HankHuang0516/EClaw/issues/2628)) ([59cef38](https://github.com/HankHuang0516/EClaw/commit/59cef387bd69ca99d7d15c86a1364856d3849ad8)), closes [#1a1a1a](https://github.com/HankHuang0516/EClaw/issues/1a1a1a)
* **entities:** expose botSecret to owner so wallpaper service can poll companions ([#2615](https://github.com/HankHuang0516/EClaw/issues/2615)) ([04470fc](https://github.com/HankHuang0516/EClaw/commit/04470fce8f8c3fce2b1ba8b243e776606f107502))
* **rental:** expose owner_public_code in marketplace so plaza CTA can route ([#2616](https://github.com/HankHuang0516/EClaw/issues/2616)) ([4d1372f](https://github.com/HankHuang0516/EClaw/commit/4d1372f717d93cab65543e87c852e74e9fb67071)), closes [#2610](https://github.com/HankHuang0516/EClaw/issues/2610)
* **mindmap:** fallback to device scope when entityId is null ([#2728](https://github.com/HankHuang0516/EClaw/issues/2728)) ([7572312](https://github.com/HankHuang0516/EClaw/commit/7572312433d3d75fc245eda48a28919ce14bd927))
* **i18n:** fill Spanish drift keys ([#2751](https://github.com/HankHuang0516/EClaw/issues/2751)) ([0ad0ee5](https://github.com/HankHuang0516/EClaw/commit/0ad0ee55f7fac3e6ac46d891539950dab4d553cc))
* **portal:** fit embedded org chart to mobile viewport ([#2674](https://github.com/HankHuang0516/EClaw/issues/2674)) ([1c4e1b4](https://github.com/HankHuang0516/EClaw/commit/1c4e1b413ea7027b4cd4b8ecda981b0d0e12e66b))
* **mention-parser:** ignore @-mentions inside markdown code spans ([#2645](https://github.com/HankHuang0516/EClaw/issues/2645)) ([8da19d4](https://github.com/HankHuang0516/EClaw/commit/8da19d4a79ceb4152bf2144ee0847c61ce3e1def)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **kanban:** lazy-load dependency chips via IntersectionObserver ([#2632](https://github.com/HankHuang0516/EClaw/issues/2632)) ([20586b4](https://github.com/HankHuang0516/EClaw/commit/20586b43357335f9eb6a190c02d58c8e36b58aba)), closes [#2631](https://github.com/HankHuang0516/EClaw/issues/2631)
* **wallpaper:** off-load spritesheet fetch to IO so per-petdx sprites actually render ([#2618](https://github.com/HankHuang0516/EClaw/issues/2618)) ([61b832c](https://github.com/HankHuang0516/EClaw/commit/61b832c9fa8a1d0caab810ccc942d85c63349267)), closes [#2615](https://github.com/HankHuang0516/EClaw/issues/2615) [#2577](https://github.com/HankHuang0516/EClaw/issues/2577)
* **i18n:** positional format specifiers for feedback_result_logs (7 locales) ([#2597](https://github.com/HankHuang0516/EClaw/issues/2597)) ([21aedc7](https://github.com/HankHuang0516/EClaw/commit/21aedc7eebc7a2839e340136f38dfdfd4dabb9dc))
* **avatar-petdx:** preserve descriptor across transient API failures (flicker) ([#2625](https://github.com/HankHuang0516/EClaw/issues/2625)) ([7b1c606](https://github.com/HankHuang0516/EClaw/commit/7b1c606514f7698d72ec95cf6c556e4043966186))
* **chat:** preserve scroll anchor while reading history ([#2693](https://github.com/HankHuang0516/EClaw/issues/2693)) ([945fdb7](https://github.com/HankHuang0516/EClaw/commit/945fdb7192b791b31882e1e75568dd8b11e4686f))
* **promo:** pull video embed from /promo-chat-avatar.html ([#2724](https://github.com/HankHuang0516/EClaw/issues/2724)) ([2afabc8](https://github.com/HankHuang0516/EClaw/commit/2afabc8c5ff8b25218a7cb857e8adfa572c8e9d5))
* **portal:** reduce QA-discovered request fanout ([#2656](https://github.com/HankHuang0516/EClaw/issues/2656)) ([1e46d6b](https://github.com/HankHuang0516/EClaw/commit/1e46d6bab61e58c65b452b6503d953f8dddeee75))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **portal:** remove org chart fit scale floor ([#2676](https://github.com/HankHuang0516/EClaw/issues/2676)) ([0f01606](https://github.com/HankHuang0516/EClaw/commit/0f016068b963bb5f800a02f28817c7174979d913))
* **i18n:** rename mm_empty_title → mm_state_empty_title in mindmap.html ([#2683](https://github.com/HankHuang0516/EClaw/issues/2683)) ([c79c109](https://github.com/HankHuang0516/EClaw/commit/c79c109bea23142e8a6d9ace976d105af1280ec9))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **chat:** render mention avatars with companion renderer ([#2633](https://github.com/HankHuang0516/EClaw/issues/2633)) ([03e205f](https://github.com/HankHuang0516/EClaw/commit/03e205f663ecd2c2f443d4009dd5af0093f0bbbb))
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* scheduled audit 2026-05-13 — 6 bugs, XSS, i18n ([#2668](https://github.com/HankHuang0516/EClaw/issues/2668)) ([21dd513](https://github.com/HankHuang0516/EClaw/commit/21dd513b4464738de29164265437435ba6cc4817)), closes [#2605](https://github.com/HankHuang0516/EClaw/issues/2605) [#2608](https://github.com/HankHuang0516/EClaw/issues/2608) [#2600](https://github.com/HankHuang0516/EClaw/issues/2600) [#2599](https://github.com/HankHuang0516/EClaw/issues/2599) [#2598](https://github.com/HankHuang0516/EClaw/issues/2598)
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **chat:** smart-chip preview falls back to inline c.comments when /comments fails (PR [#2677](https://github.com/HankHuang0516/EClaw/issues/2677)) ([7f4dffd](https://github.com/HankHuang0516/EClaw/commit/7f4dffd2c83ea86f296b8fa0610f0e67c9f1af11))
* **wallpaper:** stop Android live wallpaper flashing default lobster on companion change ([#2629](https://github.com/HankHuang0516/EClaw/issues/2629)) ([8b4f66f](https://github.com/HankHuang0516/EClaw/commit/8b4f66fcb335bf43128f924b761b6337c817095b)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **app:** WebView pages honor app-selected locale via ?lang= URL param ([#2672](https://github.com/HankHuang0516/EClaw/issues/2672)) ([8ed8757](https://github.com/HankHuang0516/EClaw/commit/8ed8757aec5bf214e837cc0d81bf2b23f1993a91)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* **community:** 1-click chat button on bot cards + utm tagging ([#2610](https://github.com/HankHuang0516/EClaw/issues/2610)) ([eee97b0](https://github.com/HankHuang0516/EClaw/commit/eee97b0e2e4e74945ec24f218a69a52800b97a66))
* **chat:** add avatar size preference ([#2714](https://github.com/HankHuang0516/EClaw/issues/2714)) ([6fe164a](https://github.com/HankHuang0516/EClaw/commit/6fe164ad8b22fa576d2dd9ad37c0d9fc295b5a83))
* **dashboard:** add Claude and Codex channel guides ([#2640](https://github.com/HankHuang0516/EClaw/issues/2640)) ([c64e4c4](https://github.com/HankHuang0516/EClaw/commit/c64e4c4afc78db58c5cd578f00486dd7b2fd3311))
* **dashboard:** add Claude Code channel guide card ([#2667](https://github.com/HankHuang0516/EClaw/issues/2667)) ([d70d75c](https://github.com/HankHuang0516/EClaw/commit/d70d75c0c8caa8a540358a9aab4556b8c1927a5c))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* **portal:** add entity selector to petdx-browser ([#2602](https://github.com/HankHuang0516/EClaw/issues/2602)) ([3fa067e](https://github.com/HankHuang0516/EClaw/commit/3fa067e00b38829b48a37cecd33ee81a9a1122d9))
* **kanban:** add explicit card links ([#2721](https://github.com/HankHuang0516/EClaw/issues/2721)) ([ef9f812](https://github.com/HankHuang0516/EClaw/commit/ef9f812a3fcf39efd07fd158ce90951bdd045ac7))
* **mindmap:** add GET /api/mindmap/graph force-graph projection ([#2680](https://github.com/HankHuang0516/EClaw/issues/2680)) ([a00b2e7](https://github.com/HankHuang0516/EClaw/commit/a00b2e775af2c4c98cd157f760ad87aeeee469f0)), closes [#2679](https://github.com/HankHuang0516/EClaw/issues/2679) [#2679](https://github.com/HankHuang0516/EClaw/issues/2679)
* **dashboard:** add Hermes channel promo card ([#2708](https://github.com/HankHuang0516/EClaw/issues/2708)) ([337aca1](https://github.com/HankHuang0516/EClaw/commit/337aca153d5a1cd7e888c065f00ae54db7872d91))
* **portal:** add Nagoya 5D4N trip static cross-ref page ([#2689](https://github.com/HankHuang0516/EClaw/issues/2689)) ([2e0efb6](https://github.com/HankHuang0516/EClaw/commit/2e0efb6dcdaff52226cc8854a96747000b12bdff))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **rental:** add renter health chat indicator ([#2690](https://github.com/HankHuang0516/EClaw/issues/2690)) ([36cd2e9](https://github.com/HankHuang0516/EClaw/commit/36cd2e9802be4c7ebb03d3024617fa74aca48ffd))
* **companion:** bridge crafter-station/petdex gallery (1784 pets) ([#2601](https://github.com/HankHuang0516/EClaw/issues/2601)) ([2e245be](https://github.com/HankHuang0516/EClaw/commit/2e245bea6dd47ea7361b927d389188a3c23b6bb3))
* **promo:** chat avatar size feature landing page (self-hosted MP4) ([#2722](https://github.com/HankHuang0516/EClaw/issues/2722)) ([3852210](https://github.com/HankHuang0516/EClaw/commit/3852210d355704d018e3daca6b5f9512a011b210)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **mission:** link notes to kanban cards ([#2723](https://github.com/HankHuang0516/EClaw/issues/2723)) ([b36dc18](https://github.com/HankHuang0516/EClaw/commit/b36dc18f3a8facf12e0b6046351c222f1e99dc55))
* **mindmap:** mission.html link to /portal/mindmap.html + deprecate /api/mission/mindmap ([#2685](https://github.com/HankHuang0516/EClaw/issues/2685)) ([11e297b](https://github.com/HankHuang0516/EClaw/commit/11e297bab1c9b56fcde3027d6500b7c58891bf18)), closes [#2680](https://github.com/HankHuang0516/EClaw/issues/2680) [#2684](https://github.com/HankHuang0516/EClaw/issues/2684)
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **avatar:** petdx render on card-holder my-cards (Phase 1b) ([#2621](https://github.com/HankHuang0516/EClaw/issues/2621)) ([f78ba8b](https://github.com/HankHuang0516/EClaw/commit/f78ba8b18acc426936ab6d8a82ca7541effea00d))
* **avatar:** petdx render on dashboard entity grid / org chart / bindings (Phase 1b) ([#2622](https://github.com/HankHuang0516/EClaw/issues/2622)) ([f417749](https://github.com/HankHuang0516/EClaw/commit/f41774914451048e8cd76e9ae30416a0642e173b)), closes [#2620](https://github.com/HankHuang0516/EClaw/issues/2620) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621)
* **avatar:** petdx render on kanban auto-assign / pulse / comment avatars (Phase 1b) ([#2624](https://github.com/HankHuang0516/EClaw/issues/2624)) ([6bff5f8](https://github.com/HankHuang0516/EClaw/commit/6bff5f80440d0bd91a6b1721cde9478d685c4d46))
* **avatar:** petdx render on mission skill/rule/soul entity dialogs (Phase 1b) ([#2623](https://github.com/HankHuang0516/EClaw/issues/2623)) ([129327b](https://github.com/HankHuang0516/EClaw/commit/129327bc7b91056659f1ab7e8d5e3f5260d951fb))
* **mindmap:** portal/mindmap.html force-graph prototype ([#129](https://github.com/HankHuang0516/EClaw/issues/129)) ([#2681](https://github.com/HankHuang0516/EClaw/issues/2681)) ([0f15e69](https://github.com/HankHuang0516/EClaw/commit/0f15e6930f0697c37fa08f3219edb8f9e499837f)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **portal:** redo nagoya trip page in professional tour-guide style ([#2691](https://github.com/HankHuang0516/EClaw/issues/2691)) ([b2378c0](https://github.com/HankHuang0516/EClaw/commit/b2378c06ee20fa9cccfdceceb1a4c9e0b3072f59))
* **avatar:** render selected petdx companion in chat avatars ([#2620](https://github.com/HankHuang0516/EClaw/issues/2620)) ([0bdd046](https://github.com/HankHuang0516/EClaw/commit/0bdd046fe1b1c428e32edda366ff112c08927f4c))
* **home:** replace native home with WebView hosting dashboard.html ([#2634](https://github.com/HankHuang0516/EClaw/issues/2634)) ([e69ea81](https://github.com/HankHuang0516/EClaw/commit/e69ea8160c239b083a83d6dc83a4f1c3f901c863))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **chat:** support message deep links ([#2719](https://github.com/HankHuang0516/EClaw/issues/2719)) ([2dc0f1e](https://github.com/HankHuang0516/EClaw/commit/2dc0f1eeb259e1a0848db4a03186b989372cd91c))
* **mission:** support note deep links ([#2717](https://github.com/HankHuang0516/EClaw/issues/2717)) ([2efd3a5](https://github.com/HankHuang0516/EClaw/commit/2efd3a5e741217a07c0b0ac54a0ddd010e0ebe23))
* **share-chat:** twitter card + per-bot og:image/twitter:* in SSR ([#2609](https://github.com/HankHuang0516/EClaw/issues/2609)) ([6cdc853](https://github.com/HankHuang0516/EClaw/commit/6cdc853dc884cdb95bd47214942768981f218ae0))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))
* **settings:** wire petdx avatar into channel-account chips ([#2626](https://github.com/HankHuang0516/EClaw/issues/2626)) ([88aec77](https://github.com/HankHuang0516/EClaw/commit/88aec772628c240e97b336bb5820892ad632d1ae))
* **files:** wire petdx avatar into entity filter & per-file badges ([#2627](https://github.com/HankHuang0516/EClaw/issues/2627)) ([5b3e5cc](https://github.com/HankHuang0516/EClaw/commit/5b3e5cc542d9da69bb4e92500fd03a542ea33f00))
* **mindmap:** wrap hardcoded zh-TW UI strings with i18n t() ([#2607](https://github.com/HankHuang0516/EClaw/issues/2607)) ([166af87](https://github.com/HankHuang0516/EClaw/commit/166af8772b2121a24aaf34a83b3de970e9b3b571)), closes [#2606](https://github.com/HankHuang0516/EClaw/issues/2606)


### Performance Improvements

* **mindmap:** force-graph hardening for 1000/2000-node graphs ([#2684](https://github.com/HankHuang0516/EClaw/issues/2684)) ([da8b1c8](https://github.com/HankHuang0516/EClaw/commit/da8b1c8f947ab8bc8fa455c1962a91146623a1fc))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-13)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **notifications:** add kanban_done + kanban_done_auto toggles to Android Settings ([#2636](https://github.com/HankHuang0516/EClaw/issues/2636)) ([a710909](https://github.com/HankHuang0516/EClaw/commit/a7109095e3393b8564e7ef1b23d382a4fbb944b8))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **kanban:** comment input no longer overlaps last comment in card detail (PR [#2678](https://github.com/HankHuang0516/EClaw/issues/2678)) ([fba91fc](https://github.com/HankHuang0516/EClaw/commit/fba91fca15402b453a0db5ee857c0b16e6087055))
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **petdx:** drop dark-grey loading placeholder + preload sprite WEBP ([#2628](https://github.com/HankHuang0516/EClaw/issues/2628)) ([59cef38](https://github.com/HankHuang0516/EClaw/commit/59cef387bd69ca99d7d15c86a1364856d3849ad8)), closes [#1a1a1a](https://github.com/HankHuang0516/EClaw/issues/1a1a1a)
* **entities:** expose botSecret to owner so wallpaper service can poll companions ([#2615](https://github.com/HankHuang0516/EClaw/issues/2615)) ([04470fc](https://github.com/HankHuang0516/EClaw/commit/04470fce8f8c3fce2b1ba8b243e776606f107502))
* **rental:** expose owner_public_code in marketplace so plaza CTA can route ([#2616](https://github.com/HankHuang0516/EClaw/issues/2616)) ([4d1372f](https://github.com/HankHuang0516/EClaw/commit/4d1372f717d93cab65543e87c852e74e9fb67071)), closes [#2610](https://github.com/HankHuang0516/EClaw/issues/2610)
* **mindmap:** fallback to device scope when entityId is null ([#2728](https://github.com/HankHuang0516/EClaw/issues/2728)) ([7572312](https://github.com/HankHuang0516/EClaw/commit/7572312433d3d75fc245eda48a28919ce14bd927))
* **portal:** fit embedded org chart to mobile viewport ([#2674](https://github.com/HankHuang0516/EClaw/issues/2674)) ([1c4e1b4](https://github.com/HankHuang0516/EClaw/commit/1c4e1b413ea7027b4cd4b8ecda981b0d0e12e66b))
* **mention-parser:** ignore @-mentions inside markdown code spans ([#2645](https://github.com/HankHuang0516/EClaw/issues/2645)) ([8da19d4](https://github.com/HankHuang0516/EClaw/commit/8da19d4a79ceb4152bf2144ee0847c61ce3e1def)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **kanban:** lazy-load dependency chips via IntersectionObserver ([#2632](https://github.com/HankHuang0516/EClaw/issues/2632)) ([20586b4](https://github.com/HankHuang0516/EClaw/commit/20586b43357335f9eb6a190c02d58c8e36b58aba)), closes [#2631](https://github.com/HankHuang0516/EClaw/issues/2631)
* **wallpaper:** off-load spritesheet fetch to IO so per-petdx sprites actually render ([#2618](https://github.com/HankHuang0516/EClaw/issues/2618)) ([61b832c](https://github.com/HankHuang0516/EClaw/commit/61b832c9fa8a1d0caab810ccc942d85c63349267)), closes [#2615](https://github.com/HankHuang0516/EClaw/issues/2615) [#2577](https://github.com/HankHuang0516/EClaw/issues/2577)
* **i18n:** positional format specifiers for feedback_result_logs (7 locales) ([#2597](https://github.com/HankHuang0516/EClaw/issues/2597)) ([21aedc7](https://github.com/HankHuang0516/EClaw/commit/21aedc7eebc7a2839e340136f38dfdfd4dabb9dc))
* **avatar-petdx:** preserve descriptor across transient API failures (flicker) ([#2625](https://github.com/HankHuang0516/EClaw/issues/2625)) ([7b1c606](https://github.com/HankHuang0516/EClaw/commit/7b1c606514f7698d72ec95cf6c556e4043966186))
* **chat:** preserve scroll anchor while reading history ([#2693](https://github.com/HankHuang0516/EClaw/issues/2693)) ([945fdb7](https://github.com/HankHuang0516/EClaw/commit/945fdb7192b791b31882e1e75568dd8b11e4686f))
* **promo:** pull video embed from /promo-chat-avatar.html ([#2724](https://github.com/HankHuang0516/EClaw/issues/2724)) ([2afabc8](https://github.com/HankHuang0516/EClaw/commit/2afabc8c5ff8b25218a7cb857e8adfa572c8e9d5))
* **portal:** reduce QA-discovered request fanout ([#2656](https://github.com/HankHuang0516/EClaw/issues/2656)) ([1e46d6b](https://github.com/HankHuang0516/EClaw/commit/1e46d6bab61e58c65b452b6503d953f8dddeee75))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **portal:** remove org chart fit scale floor ([#2676](https://github.com/HankHuang0516/EClaw/issues/2676)) ([0f01606](https://github.com/HankHuang0516/EClaw/commit/0f016068b963bb5f800a02f28817c7174979d913))
* **i18n:** rename mm_empty_title → mm_state_empty_title in mindmap.html ([#2683](https://github.com/HankHuang0516/EClaw/issues/2683)) ([c79c109](https://github.com/HankHuang0516/EClaw/commit/c79c109bea23142e8a6d9ace976d105af1280ec9))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **chat:** render mention avatars with companion renderer ([#2633](https://github.com/HankHuang0516/EClaw/issues/2633)) ([03e205f](https://github.com/HankHuang0516/EClaw/commit/03e205f663ecd2c2f443d4009dd5af0093f0bbbb))
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* scheduled audit 2026-05-13 — 6 bugs, XSS, i18n ([#2668](https://github.com/HankHuang0516/EClaw/issues/2668)) ([21dd513](https://github.com/HankHuang0516/EClaw/commit/21dd513b4464738de29164265437435ba6cc4817)), closes [#2605](https://github.com/HankHuang0516/EClaw/issues/2605) [#2608](https://github.com/HankHuang0516/EClaw/issues/2608) [#2600](https://github.com/HankHuang0516/EClaw/issues/2600) [#2599](https://github.com/HankHuang0516/EClaw/issues/2599) [#2598](https://github.com/HankHuang0516/EClaw/issues/2598)
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **chat:** smart-chip preview falls back to inline c.comments when /comments fails (PR [#2677](https://github.com/HankHuang0516/EClaw/issues/2677)) ([7f4dffd](https://github.com/HankHuang0516/EClaw/commit/7f4dffd2c83ea86f296b8fa0610f0e67c9f1af11))
* **wallpaper:** stop Android live wallpaper flashing default lobster on companion change ([#2629](https://github.com/HankHuang0516/EClaw/issues/2629)) ([8b4f66f](https://github.com/HankHuang0516/EClaw/commit/8b4f66fcb335bf43128f924b761b6337c817095b)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **app:** WebView pages honor app-selected locale via ?lang= URL param ([#2672](https://github.com/HankHuang0516/EClaw/issues/2672)) ([8ed8757](https://github.com/HankHuang0516/EClaw/commit/8ed8757aec5bf214e837cc0d81bf2b23f1993a91)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* **community:** 1-click chat button on bot cards + utm tagging ([#2610](https://github.com/HankHuang0516/EClaw/issues/2610)) ([eee97b0](https://github.com/HankHuang0516/EClaw/commit/eee97b0e2e4e74945ec24f218a69a52800b97a66))
* **chat:** add avatar size preference ([#2714](https://github.com/HankHuang0516/EClaw/issues/2714)) ([6fe164a](https://github.com/HankHuang0516/EClaw/commit/6fe164ad8b22fa576d2dd9ad37c0d9fc295b5a83))
* **dashboard:** add Claude and Codex channel guides ([#2640](https://github.com/HankHuang0516/EClaw/issues/2640)) ([c64e4c4](https://github.com/HankHuang0516/EClaw/commit/c64e4c4afc78db58c5cd578f00486dd7b2fd3311))
* **dashboard:** add Claude Code channel guide card ([#2667](https://github.com/HankHuang0516/EClaw/issues/2667)) ([d70d75c](https://github.com/HankHuang0516/EClaw/commit/d70d75c0c8caa8a540358a9aab4556b8c1927a5c))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* **portal:** add entity selector to petdx-browser ([#2602](https://github.com/HankHuang0516/EClaw/issues/2602)) ([3fa067e](https://github.com/HankHuang0516/EClaw/commit/3fa067e00b38829b48a37cecd33ee81a9a1122d9))
* **kanban:** add explicit card links ([#2721](https://github.com/HankHuang0516/EClaw/issues/2721)) ([ef9f812](https://github.com/HankHuang0516/EClaw/commit/ef9f812a3fcf39efd07fd158ce90951bdd045ac7))
* **mindmap:** add GET /api/mindmap/graph force-graph projection ([#2680](https://github.com/HankHuang0516/EClaw/issues/2680)) ([a00b2e7](https://github.com/HankHuang0516/EClaw/commit/a00b2e775af2c4c98cd157f760ad87aeeee469f0)), closes [#2679](https://github.com/HankHuang0516/EClaw/issues/2679) [#2679](https://github.com/HankHuang0516/EClaw/issues/2679)
* **dashboard:** add Hermes channel promo card ([#2708](https://github.com/HankHuang0516/EClaw/issues/2708)) ([337aca1](https://github.com/HankHuang0516/EClaw/commit/337aca153d5a1cd7e888c065f00ae54db7872d91))
* **portal:** add Nagoya 5D4N trip static cross-ref page ([#2689](https://github.com/HankHuang0516/EClaw/issues/2689)) ([2e0efb6](https://github.com/HankHuang0516/EClaw/commit/2e0efb6dcdaff52226cc8854a96747000b12bdff))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **rental:** add renter health chat indicator ([#2690](https://github.com/HankHuang0516/EClaw/issues/2690)) ([36cd2e9](https://github.com/HankHuang0516/EClaw/commit/36cd2e9802be4c7ebb03d3024617fa74aca48ffd))
* **companion:** bridge crafter-station/petdex gallery (1784 pets) ([#2601](https://github.com/HankHuang0516/EClaw/issues/2601)) ([2e245be](https://github.com/HankHuang0516/EClaw/commit/2e245bea6dd47ea7361b927d389188a3c23b6bb3))
* **promo:** chat avatar size feature landing page (self-hosted MP4) ([#2722](https://github.com/HankHuang0516/EClaw/issues/2722)) ([3852210](https://github.com/HankHuang0516/EClaw/commit/3852210d355704d018e3daca6b5f9512a011b210)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **mission:** link notes to kanban cards ([#2723](https://github.com/HankHuang0516/EClaw/issues/2723)) ([b36dc18](https://github.com/HankHuang0516/EClaw/commit/b36dc18f3a8facf12e0b6046351c222f1e99dc55))
* **mindmap:** mission.html link to /portal/mindmap.html + deprecate /api/mission/mindmap ([#2685](https://github.com/HankHuang0516/EClaw/issues/2685)) ([11e297b](https://github.com/HankHuang0516/EClaw/commit/11e297bab1c9b56fcde3027d6500b7c58891bf18)), closes [#2680](https://github.com/HankHuang0516/EClaw/issues/2680) [#2684](https://github.com/HankHuang0516/EClaw/issues/2684)
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **avatar:** petdx render on card-holder my-cards (Phase 1b) ([#2621](https://github.com/HankHuang0516/EClaw/issues/2621)) ([f78ba8b](https://github.com/HankHuang0516/EClaw/commit/f78ba8b18acc426936ab6d8a82ca7541effea00d))
* **avatar:** petdx render on dashboard entity grid / org chart / bindings (Phase 1b) ([#2622](https://github.com/HankHuang0516/EClaw/issues/2622)) ([f417749](https://github.com/HankHuang0516/EClaw/commit/f41774914451048e8cd76e9ae30416a0642e173b)), closes [#2620](https://github.com/HankHuang0516/EClaw/issues/2620) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621)
* **avatar:** petdx render on kanban auto-assign / pulse / comment avatars (Phase 1b) ([#2624](https://github.com/HankHuang0516/EClaw/issues/2624)) ([6bff5f8](https://github.com/HankHuang0516/EClaw/commit/6bff5f80440d0bd91a6b1721cde9478d685c4d46))
* **avatar:** petdx render on mission skill/rule/soul entity dialogs (Phase 1b) ([#2623](https://github.com/HankHuang0516/EClaw/issues/2623)) ([129327b](https://github.com/HankHuang0516/EClaw/commit/129327bc7b91056659f1ab7e8d5e3f5260d951fb))
* **mindmap:** portal/mindmap.html force-graph prototype ([#129](https://github.com/HankHuang0516/EClaw/issues/129)) ([#2681](https://github.com/HankHuang0516/EClaw/issues/2681)) ([0f15e69](https://github.com/HankHuang0516/EClaw/commit/0f15e6930f0697c37fa08f3219edb8f9e499837f)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **portal:** redo nagoya trip page in professional tour-guide style ([#2691](https://github.com/HankHuang0516/EClaw/issues/2691)) ([b2378c0](https://github.com/HankHuang0516/EClaw/commit/b2378c06ee20fa9cccfdceceb1a4c9e0b3072f59))
* **avatar:** render selected petdx companion in chat avatars ([#2620](https://github.com/HankHuang0516/EClaw/issues/2620)) ([0bdd046](https://github.com/HankHuang0516/EClaw/commit/0bdd046fe1b1c428e32edda366ff112c08927f4c))
* **home:** replace native home with WebView hosting dashboard.html ([#2634](https://github.com/HankHuang0516/EClaw/issues/2634)) ([e69ea81](https://github.com/HankHuang0516/EClaw/commit/e69ea8160c239b083a83d6dc83a4f1c3f901c863))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **chat:** support message deep links ([#2719](https://github.com/HankHuang0516/EClaw/issues/2719)) ([2dc0f1e](https://github.com/HankHuang0516/EClaw/commit/2dc0f1eeb259e1a0848db4a03186b989372cd91c))
* **mission:** support note deep links ([#2717](https://github.com/HankHuang0516/EClaw/issues/2717)) ([2efd3a5](https://github.com/HankHuang0516/EClaw/commit/2efd3a5e741217a07c0b0ac54a0ddd010e0ebe23))
* **share-chat:** twitter card + per-bot og:image/twitter:* in SSR ([#2609](https://github.com/HankHuang0516/EClaw/issues/2609)) ([6cdc853](https://github.com/HankHuang0516/EClaw/commit/6cdc853dc884cdb95bd47214942768981f218ae0))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))
* **settings:** wire petdx avatar into channel-account chips ([#2626](https://github.com/HankHuang0516/EClaw/issues/2626)) ([88aec77](https://github.com/HankHuang0516/EClaw/commit/88aec772628c240e97b336bb5820892ad632d1ae))
* **files:** wire petdx avatar into entity filter & per-file badges ([#2627](https://github.com/HankHuang0516/EClaw/issues/2627)) ([5b3e5cc](https://github.com/HankHuang0516/EClaw/commit/5b3e5cc542d9da69bb4e92500fd03a542ea33f00))
* **mindmap:** wrap hardcoded zh-TW UI strings with i18n t() ([#2607](https://github.com/HankHuang0516/EClaw/issues/2607)) ([166af87](https://github.com/HankHuang0516/EClaw/commit/166af8772b2121a24aaf34a83b3de970e9b3b571)), closes [#2606](https://github.com/HankHuang0516/EClaw/issues/2606)


### Performance Improvements

* **mindmap:** force-graph hardening for 1000/2000-node graphs ([#2684](https://github.com/HankHuang0516/EClaw/issues/2684)) ([da8b1c8](https://github.com/HankHuang0516/EClaw/commit/da8b1c8f947ab8bc8fa455c1962a91146623a1fc))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-13)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **notifications:** add kanban_done + kanban_done_auto toggles to Android Settings ([#2636](https://github.com/HankHuang0516/EClaw/issues/2636)) ([a710909](https://github.com/HankHuang0516/EClaw/commit/a7109095e3393b8564e7ef1b23d382a4fbb944b8))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **kanban:** comment input no longer overlaps last comment in card detail (PR [#2678](https://github.com/HankHuang0516/EClaw/issues/2678)) ([fba91fc](https://github.com/HankHuang0516/EClaw/commit/fba91fca15402b453a0db5ee857c0b16e6087055))
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **petdx:** drop dark-grey loading placeholder + preload sprite WEBP ([#2628](https://github.com/HankHuang0516/EClaw/issues/2628)) ([59cef38](https://github.com/HankHuang0516/EClaw/commit/59cef387bd69ca99d7d15c86a1364856d3849ad8)), closes [#1a1a1a](https://github.com/HankHuang0516/EClaw/issues/1a1a1a)
* **entities:** expose botSecret to owner so wallpaper service can poll companions ([#2615](https://github.com/HankHuang0516/EClaw/issues/2615)) ([04470fc](https://github.com/HankHuang0516/EClaw/commit/04470fce8f8c3fce2b1ba8b243e776606f107502))
* **rental:** expose owner_public_code in marketplace so plaza CTA can route ([#2616](https://github.com/HankHuang0516/EClaw/issues/2616)) ([4d1372f](https://github.com/HankHuang0516/EClaw/commit/4d1372f717d93cab65543e87c852e74e9fb67071)), closes [#2610](https://github.com/HankHuang0516/EClaw/issues/2610)
* **mindmap:** fallback to device scope when entityId is null ([#2728](https://github.com/HankHuang0516/EClaw/issues/2728)) ([7572312](https://github.com/HankHuang0516/EClaw/commit/7572312433d3d75fc245eda48a28919ce14bd927))
* **portal:** fit embedded org chart to mobile viewport ([#2674](https://github.com/HankHuang0516/EClaw/issues/2674)) ([1c4e1b4](https://github.com/HankHuang0516/EClaw/commit/1c4e1b413ea7027b4cd4b8ecda981b0d0e12e66b))
* **mention-parser:** ignore @-mentions inside markdown code spans ([#2645](https://github.com/HankHuang0516/EClaw/issues/2645)) ([8da19d4](https://github.com/HankHuang0516/EClaw/commit/8da19d4a79ceb4152bf2144ee0847c61ce3e1def)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **kanban:** lazy-load dependency chips via IntersectionObserver ([#2632](https://github.com/HankHuang0516/EClaw/issues/2632)) ([20586b4](https://github.com/HankHuang0516/EClaw/commit/20586b43357335f9eb6a190c02d58c8e36b58aba)), closes [#2631](https://github.com/HankHuang0516/EClaw/issues/2631)
* **wallpaper:** off-load spritesheet fetch to IO so per-petdx sprites actually render ([#2618](https://github.com/HankHuang0516/EClaw/issues/2618)) ([61b832c](https://github.com/HankHuang0516/EClaw/commit/61b832c9fa8a1d0caab810ccc942d85c63349267)), closes [#2615](https://github.com/HankHuang0516/EClaw/issues/2615) [#2577](https://github.com/HankHuang0516/EClaw/issues/2577)
* **i18n:** positional format specifiers for feedback_result_logs (7 locales) ([#2597](https://github.com/HankHuang0516/EClaw/issues/2597)) ([21aedc7](https://github.com/HankHuang0516/EClaw/commit/21aedc7eebc7a2839e340136f38dfdfd4dabb9dc))
* **avatar-petdx:** preserve descriptor across transient API failures (flicker) ([#2625](https://github.com/HankHuang0516/EClaw/issues/2625)) ([7b1c606](https://github.com/HankHuang0516/EClaw/commit/7b1c606514f7698d72ec95cf6c556e4043966186))
* **chat:** preserve scroll anchor while reading history ([#2693](https://github.com/HankHuang0516/EClaw/issues/2693)) ([945fdb7](https://github.com/HankHuang0516/EClaw/commit/945fdb7192b791b31882e1e75568dd8b11e4686f))
* **promo:** pull video embed from /promo-chat-avatar.html ([#2724](https://github.com/HankHuang0516/EClaw/issues/2724)) ([2afabc8](https://github.com/HankHuang0516/EClaw/commit/2afabc8c5ff8b25218a7cb857e8adfa572c8e9d5))
* **portal:** reduce QA-discovered request fanout ([#2656](https://github.com/HankHuang0516/EClaw/issues/2656)) ([1e46d6b](https://github.com/HankHuang0516/EClaw/commit/1e46d6bab61e58c65b452b6503d953f8dddeee75))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **portal:** remove org chart fit scale floor ([#2676](https://github.com/HankHuang0516/EClaw/issues/2676)) ([0f01606](https://github.com/HankHuang0516/EClaw/commit/0f016068b963bb5f800a02f28817c7174979d913))
* **i18n:** rename mm_empty_title → mm_state_empty_title in mindmap.html ([#2683](https://github.com/HankHuang0516/EClaw/issues/2683)) ([c79c109](https://github.com/HankHuang0516/EClaw/commit/c79c109bea23142e8a6d9ace976d105af1280ec9))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **chat:** render mention avatars with companion renderer ([#2633](https://github.com/HankHuang0516/EClaw/issues/2633)) ([03e205f](https://github.com/HankHuang0516/EClaw/commit/03e205f663ecd2c2f443d4009dd5af0093f0bbbb))
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* scheduled audit 2026-05-13 — 6 bugs, XSS, i18n ([#2668](https://github.com/HankHuang0516/EClaw/issues/2668)) ([21dd513](https://github.com/HankHuang0516/EClaw/commit/21dd513b4464738de29164265437435ba6cc4817)), closes [#2605](https://github.com/HankHuang0516/EClaw/issues/2605) [#2608](https://github.com/HankHuang0516/EClaw/issues/2608) [#2600](https://github.com/HankHuang0516/EClaw/issues/2600) [#2599](https://github.com/HankHuang0516/EClaw/issues/2599) [#2598](https://github.com/HankHuang0516/EClaw/issues/2598)
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **chat:** smart-chip preview falls back to inline c.comments when /comments fails (PR [#2677](https://github.com/HankHuang0516/EClaw/issues/2677)) ([7f4dffd](https://github.com/HankHuang0516/EClaw/commit/7f4dffd2c83ea86f296b8fa0610f0e67c9f1af11))
* **wallpaper:** stop Android live wallpaper flashing default lobster on companion change ([#2629](https://github.com/HankHuang0516/EClaw/issues/2629)) ([8b4f66f](https://github.com/HankHuang0516/EClaw/commit/8b4f66fcb335bf43128f924b761b6337c817095b)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **app:** WebView pages honor app-selected locale via ?lang= URL param ([#2672](https://github.com/HankHuang0516/EClaw/issues/2672)) ([8ed8757](https://github.com/HankHuang0516/EClaw/commit/8ed8757aec5bf214e837cc0d81bf2b23f1993a91)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* **community:** 1-click chat button on bot cards + utm tagging ([#2610](https://github.com/HankHuang0516/EClaw/issues/2610)) ([eee97b0](https://github.com/HankHuang0516/EClaw/commit/eee97b0e2e4e74945ec24f218a69a52800b97a66))
* **chat:** add avatar size preference ([#2714](https://github.com/HankHuang0516/EClaw/issues/2714)) ([6fe164a](https://github.com/HankHuang0516/EClaw/commit/6fe164ad8b22fa576d2dd9ad37c0d9fc295b5a83))
* **dashboard:** add Claude and Codex channel guides ([#2640](https://github.com/HankHuang0516/EClaw/issues/2640)) ([c64e4c4](https://github.com/HankHuang0516/EClaw/commit/c64e4c4afc78db58c5cd578f00486dd7b2fd3311))
* **dashboard:** add Claude Code channel guide card ([#2667](https://github.com/HankHuang0516/EClaw/issues/2667)) ([d70d75c](https://github.com/HankHuang0516/EClaw/commit/d70d75c0c8caa8a540358a9aab4556b8c1927a5c))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* **portal:** add entity selector to petdx-browser ([#2602](https://github.com/HankHuang0516/EClaw/issues/2602)) ([3fa067e](https://github.com/HankHuang0516/EClaw/commit/3fa067e00b38829b48a37cecd33ee81a9a1122d9))
* **kanban:** add explicit card links ([#2721](https://github.com/HankHuang0516/EClaw/issues/2721)) ([ef9f812](https://github.com/HankHuang0516/EClaw/commit/ef9f812a3fcf39efd07fd158ce90951bdd045ac7))
* **mindmap:** add GET /api/mindmap/graph force-graph projection ([#2680](https://github.com/HankHuang0516/EClaw/issues/2680)) ([a00b2e7](https://github.com/HankHuang0516/EClaw/commit/a00b2e775af2c4c98cd157f760ad87aeeee469f0)), closes [#2679](https://github.com/HankHuang0516/EClaw/issues/2679) [#2679](https://github.com/HankHuang0516/EClaw/issues/2679)
* **dashboard:** add Hermes channel promo card ([#2708](https://github.com/HankHuang0516/EClaw/issues/2708)) ([337aca1](https://github.com/HankHuang0516/EClaw/commit/337aca153d5a1cd7e888c065f00ae54db7872d91))
* **portal:** add Nagoya 5D4N trip static cross-ref page ([#2689](https://github.com/HankHuang0516/EClaw/issues/2689)) ([2e0efb6](https://github.com/HankHuang0516/EClaw/commit/2e0efb6dcdaff52226cc8854a96747000b12bdff))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **companion:** bridge crafter-station/petdex gallery (1784 pets) ([#2601](https://github.com/HankHuang0516/EClaw/issues/2601)) ([2e245be](https://github.com/HankHuang0516/EClaw/commit/2e245bea6dd47ea7361b927d389188a3c23b6bb3))
* **promo:** chat avatar size feature landing page (self-hosted MP4) ([#2722](https://github.com/HankHuang0516/EClaw/issues/2722)) ([3852210](https://github.com/HankHuang0516/EClaw/commit/3852210d355704d018e3daca6b5f9512a011b210)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **mission:** link notes to kanban cards ([#2723](https://github.com/HankHuang0516/EClaw/issues/2723)) ([b36dc18](https://github.com/HankHuang0516/EClaw/commit/b36dc18f3a8facf12e0b6046351c222f1e99dc55))
* **mindmap:** mission.html link to /portal/mindmap.html + deprecate /api/mission/mindmap ([#2685](https://github.com/HankHuang0516/EClaw/issues/2685)) ([11e297b](https://github.com/HankHuang0516/EClaw/commit/11e297bab1c9b56fcde3027d6500b7c58891bf18)), closes [#2680](https://github.com/HankHuang0516/EClaw/issues/2680) [#2684](https://github.com/HankHuang0516/EClaw/issues/2684)
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **avatar:** petdx render on card-holder my-cards (Phase 1b) ([#2621](https://github.com/HankHuang0516/EClaw/issues/2621)) ([f78ba8b](https://github.com/HankHuang0516/EClaw/commit/f78ba8b18acc426936ab6d8a82ca7541effea00d))
* **avatar:** petdx render on dashboard entity grid / org chart / bindings (Phase 1b) ([#2622](https://github.com/HankHuang0516/EClaw/issues/2622)) ([f417749](https://github.com/HankHuang0516/EClaw/commit/f41774914451048e8cd76e9ae30416a0642e173b)), closes [#2620](https://github.com/HankHuang0516/EClaw/issues/2620) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621)
* **avatar:** petdx render on kanban auto-assign / pulse / comment avatars (Phase 1b) ([#2624](https://github.com/HankHuang0516/EClaw/issues/2624)) ([6bff5f8](https://github.com/HankHuang0516/EClaw/commit/6bff5f80440d0bd91a6b1721cde9478d685c4d46))
* **avatar:** petdx render on mission skill/rule/soul entity dialogs (Phase 1b) ([#2623](https://github.com/HankHuang0516/EClaw/issues/2623)) ([129327b](https://github.com/HankHuang0516/EClaw/commit/129327bc7b91056659f1ab7e8d5e3f5260d951fb))
* **mindmap:** portal/mindmap.html force-graph prototype ([#129](https://github.com/HankHuang0516/EClaw/issues/129)) ([#2681](https://github.com/HankHuang0516/EClaw/issues/2681)) ([0f15e69](https://github.com/HankHuang0516/EClaw/commit/0f15e6930f0697c37fa08f3219edb8f9e499837f)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **portal:** redo nagoya trip page in professional tour-guide style ([#2691](https://github.com/HankHuang0516/EClaw/issues/2691)) ([b2378c0](https://github.com/HankHuang0516/EClaw/commit/b2378c06ee20fa9cccfdceceb1a4c9e0b3072f59))
* **avatar:** render selected petdx companion in chat avatars ([#2620](https://github.com/HankHuang0516/EClaw/issues/2620)) ([0bdd046](https://github.com/HankHuang0516/EClaw/commit/0bdd046fe1b1c428e32edda366ff112c08927f4c))
* **home:** replace native home with WebView hosting dashboard.html ([#2634](https://github.com/HankHuang0516/EClaw/issues/2634)) ([e69ea81](https://github.com/HankHuang0516/EClaw/commit/e69ea8160c239b083a83d6dc83a4f1c3f901c863))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **chat:** support message deep links ([#2719](https://github.com/HankHuang0516/EClaw/issues/2719)) ([2dc0f1e](https://github.com/HankHuang0516/EClaw/commit/2dc0f1eeb259e1a0848db4a03186b989372cd91c))
* **mission:** support note deep links ([#2717](https://github.com/HankHuang0516/EClaw/issues/2717)) ([2efd3a5](https://github.com/HankHuang0516/EClaw/commit/2efd3a5e741217a07c0b0ac54a0ddd010e0ebe23))
* **share-chat:** twitter card + per-bot og:image/twitter:* in SSR ([#2609](https://github.com/HankHuang0516/EClaw/issues/2609)) ([6cdc853](https://github.com/HankHuang0516/EClaw/commit/6cdc853dc884cdb95bd47214942768981f218ae0))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))
* **settings:** wire petdx avatar into channel-account chips ([#2626](https://github.com/HankHuang0516/EClaw/issues/2626)) ([88aec77](https://github.com/HankHuang0516/EClaw/commit/88aec772628c240e97b336bb5820892ad632d1ae))
* **files:** wire petdx avatar into entity filter & per-file badges ([#2627](https://github.com/HankHuang0516/EClaw/issues/2627)) ([5b3e5cc](https://github.com/HankHuang0516/EClaw/commit/5b3e5cc542d9da69bb4e92500fd03a542ea33f00))
* **mindmap:** wrap hardcoded zh-TW UI strings with i18n t() ([#2607](https://github.com/HankHuang0516/EClaw/issues/2607)) ([166af87](https://github.com/HankHuang0516/EClaw/commit/166af8772b2121a24aaf34a83b3de970e9b3b571)), closes [#2606](https://github.com/HankHuang0516/EClaw/issues/2606)


### Performance Improvements

* **mindmap:** force-graph hardening for 1000/2000-node graphs ([#2684](https://github.com/HankHuang0516/EClaw/issues/2684)) ([da8b1c8](https://github.com/HankHuang0516/EClaw/commit/da8b1c8f947ab8bc8fa455c1962a91146623a1fc))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-13)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **notifications:** add kanban_done + kanban_done_auto toggles to Android Settings ([#2636](https://github.com/HankHuang0516/EClaw/issues/2636)) ([a710909](https://github.com/HankHuang0516/EClaw/commit/a7109095e3393b8564e7ef1b23d382a4fbb944b8))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **kanban:** comment input no longer overlaps last comment in card detail (PR [#2678](https://github.com/HankHuang0516/EClaw/issues/2678)) ([fba91fc](https://github.com/HankHuang0516/EClaw/commit/fba91fca15402b453a0db5ee857c0b16e6087055))
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **petdx:** drop dark-grey loading placeholder + preload sprite WEBP ([#2628](https://github.com/HankHuang0516/EClaw/issues/2628)) ([59cef38](https://github.com/HankHuang0516/EClaw/commit/59cef387bd69ca99d7d15c86a1364856d3849ad8)), closes [#1a1a1a](https://github.com/HankHuang0516/EClaw/issues/1a1a1a)
* **entities:** expose botSecret to owner so wallpaper service can poll companions ([#2615](https://github.com/HankHuang0516/EClaw/issues/2615)) ([04470fc](https://github.com/HankHuang0516/EClaw/commit/04470fce8f8c3fce2b1ba8b243e776606f107502))
* **rental:** expose owner_public_code in marketplace so plaza CTA can route ([#2616](https://github.com/HankHuang0516/EClaw/issues/2616)) ([4d1372f](https://github.com/HankHuang0516/EClaw/commit/4d1372f717d93cab65543e87c852e74e9fb67071)), closes [#2610](https://github.com/HankHuang0516/EClaw/issues/2610)
* **mindmap:** fallback to device scope when entityId is null ([#2728](https://github.com/HankHuang0516/EClaw/issues/2728)) ([7572312](https://github.com/HankHuang0516/EClaw/commit/7572312433d3d75fc245eda48a28919ce14bd927))
* **portal:** fit embedded org chart to mobile viewport ([#2674](https://github.com/HankHuang0516/EClaw/issues/2674)) ([1c4e1b4](https://github.com/HankHuang0516/EClaw/commit/1c4e1b413ea7027b4cd4b8ecda981b0d0e12e66b))
* **mention-parser:** ignore @-mentions inside markdown code spans ([#2645](https://github.com/HankHuang0516/EClaw/issues/2645)) ([8da19d4](https://github.com/HankHuang0516/EClaw/commit/8da19d4a79ceb4152bf2144ee0847c61ce3e1def)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **kanban:** lazy-load dependency chips via IntersectionObserver ([#2632](https://github.com/HankHuang0516/EClaw/issues/2632)) ([20586b4](https://github.com/HankHuang0516/EClaw/commit/20586b43357335f9eb6a190c02d58c8e36b58aba)), closes [#2631](https://github.com/HankHuang0516/EClaw/issues/2631)
* **wallpaper:** off-load spritesheet fetch to IO so per-petdx sprites actually render ([#2618](https://github.com/HankHuang0516/EClaw/issues/2618)) ([61b832c](https://github.com/HankHuang0516/EClaw/commit/61b832c9fa8a1d0caab810ccc942d85c63349267)), closes [#2615](https://github.com/HankHuang0516/EClaw/issues/2615) [#2577](https://github.com/HankHuang0516/EClaw/issues/2577)
* **i18n:** positional format specifiers for feedback_result_logs (7 locales) ([#2597](https://github.com/HankHuang0516/EClaw/issues/2597)) ([21aedc7](https://github.com/HankHuang0516/EClaw/commit/21aedc7eebc7a2839e340136f38dfdfd4dabb9dc))
* **avatar-petdx:** preserve descriptor across transient API failures (flicker) ([#2625](https://github.com/HankHuang0516/EClaw/issues/2625)) ([7b1c606](https://github.com/HankHuang0516/EClaw/commit/7b1c606514f7698d72ec95cf6c556e4043966186))
* **chat:** preserve scroll anchor while reading history ([#2693](https://github.com/HankHuang0516/EClaw/issues/2693)) ([945fdb7](https://github.com/HankHuang0516/EClaw/commit/945fdb7192b791b31882e1e75568dd8b11e4686f))
* **promo:** pull video embed from /promo-chat-avatar.html ([#2724](https://github.com/HankHuang0516/EClaw/issues/2724)) ([2afabc8](https://github.com/HankHuang0516/EClaw/commit/2afabc8c5ff8b25218a7cb857e8adfa572c8e9d5))
* **portal:** reduce QA-discovered request fanout ([#2656](https://github.com/HankHuang0516/EClaw/issues/2656)) ([1e46d6b](https://github.com/HankHuang0516/EClaw/commit/1e46d6bab61e58c65b452b6503d953f8dddeee75))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **portal:** remove org chart fit scale floor ([#2676](https://github.com/HankHuang0516/EClaw/issues/2676)) ([0f01606](https://github.com/HankHuang0516/EClaw/commit/0f016068b963bb5f800a02f28817c7174979d913))
* **i18n:** rename mm_empty_title → mm_state_empty_title in mindmap.html ([#2683](https://github.com/HankHuang0516/EClaw/issues/2683)) ([c79c109](https://github.com/HankHuang0516/EClaw/commit/c79c109bea23142e8a6d9ace976d105af1280ec9))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **chat:** render mention avatars with companion renderer ([#2633](https://github.com/HankHuang0516/EClaw/issues/2633)) ([03e205f](https://github.com/HankHuang0516/EClaw/commit/03e205f663ecd2c2f443d4009dd5af0093f0bbbb))
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* scheduled audit 2026-05-13 — 6 bugs, XSS, i18n ([#2668](https://github.com/HankHuang0516/EClaw/issues/2668)) ([21dd513](https://github.com/HankHuang0516/EClaw/commit/21dd513b4464738de29164265437435ba6cc4817)), closes [#2605](https://github.com/HankHuang0516/EClaw/issues/2605) [#2608](https://github.com/HankHuang0516/EClaw/issues/2608) [#2600](https://github.com/HankHuang0516/EClaw/issues/2600) [#2599](https://github.com/HankHuang0516/EClaw/issues/2599) [#2598](https://github.com/HankHuang0516/EClaw/issues/2598)
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **chat:** smart-chip preview falls back to inline c.comments when /comments fails (PR [#2677](https://github.com/HankHuang0516/EClaw/issues/2677)) ([7f4dffd](https://github.com/HankHuang0516/EClaw/commit/7f4dffd2c83ea86f296b8fa0610f0e67c9f1af11))
* **wallpaper:** stop Android live wallpaper flashing default lobster on companion change ([#2629](https://github.com/HankHuang0516/EClaw/issues/2629)) ([8b4f66f](https://github.com/HankHuang0516/EClaw/commit/8b4f66fcb335bf43128f924b761b6337c817095b)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **app:** WebView pages honor app-selected locale via ?lang= URL param ([#2672](https://github.com/HankHuang0516/EClaw/issues/2672)) ([8ed8757](https://github.com/HankHuang0516/EClaw/commit/8ed8757aec5bf214e837cc0d81bf2b23f1993a91)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* **community:** 1-click chat button on bot cards + utm tagging ([#2610](https://github.com/HankHuang0516/EClaw/issues/2610)) ([eee97b0](https://github.com/HankHuang0516/EClaw/commit/eee97b0e2e4e74945ec24f218a69a52800b97a66))
* **chat:** add avatar size preference ([#2714](https://github.com/HankHuang0516/EClaw/issues/2714)) ([6fe164a](https://github.com/HankHuang0516/EClaw/commit/6fe164ad8b22fa576d2dd9ad37c0d9fc295b5a83))
* **dashboard:** add Claude and Codex channel guides ([#2640](https://github.com/HankHuang0516/EClaw/issues/2640)) ([c64e4c4](https://github.com/HankHuang0516/EClaw/commit/c64e4c4afc78db58c5cd578f00486dd7b2fd3311))
* **dashboard:** add Claude Code channel guide card ([#2667](https://github.com/HankHuang0516/EClaw/issues/2667)) ([d70d75c](https://github.com/HankHuang0516/EClaw/commit/d70d75c0c8caa8a540358a9aab4556b8c1927a5c))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* **portal:** add entity selector to petdx-browser ([#2602](https://github.com/HankHuang0516/EClaw/issues/2602)) ([3fa067e](https://github.com/HankHuang0516/EClaw/commit/3fa067e00b38829b48a37cecd33ee81a9a1122d9))
* **mindmap:** add GET /api/mindmap/graph force-graph projection ([#2680](https://github.com/HankHuang0516/EClaw/issues/2680)) ([a00b2e7](https://github.com/HankHuang0516/EClaw/commit/a00b2e775af2c4c98cd157f760ad87aeeee469f0)), closes [#2679](https://github.com/HankHuang0516/EClaw/issues/2679) [#2679](https://github.com/HankHuang0516/EClaw/issues/2679)
* **dashboard:** add Hermes channel promo card ([#2708](https://github.com/HankHuang0516/EClaw/issues/2708)) ([337aca1](https://github.com/HankHuang0516/EClaw/commit/337aca153d5a1cd7e888c065f00ae54db7872d91))
* **portal:** add Nagoya 5D4N trip static cross-ref page ([#2689](https://github.com/HankHuang0516/EClaw/issues/2689)) ([2e0efb6](https://github.com/HankHuang0516/EClaw/commit/2e0efb6dcdaff52226cc8854a96747000b12bdff))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **companion:** bridge crafter-station/petdex gallery (1784 pets) ([#2601](https://github.com/HankHuang0516/EClaw/issues/2601)) ([2e245be](https://github.com/HankHuang0516/EClaw/commit/2e245bea6dd47ea7361b927d389188a3c23b6bb3))
* **promo:** chat avatar size feature landing page (self-hosted MP4) ([#2722](https://github.com/HankHuang0516/EClaw/issues/2722)) ([3852210](https://github.com/HankHuang0516/EClaw/commit/3852210d355704d018e3daca6b5f9512a011b210)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **mission:** link notes to kanban cards ([#2723](https://github.com/HankHuang0516/EClaw/issues/2723)) ([b36dc18](https://github.com/HankHuang0516/EClaw/commit/b36dc18f3a8facf12e0b6046351c222f1e99dc55))
* **mindmap:** mission.html link to /portal/mindmap.html + deprecate /api/mission/mindmap ([#2685](https://github.com/HankHuang0516/EClaw/issues/2685)) ([11e297b](https://github.com/HankHuang0516/EClaw/commit/11e297bab1c9b56fcde3027d6500b7c58891bf18)), closes [#2680](https://github.com/HankHuang0516/EClaw/issues/2680) [#2684](https://github.com/HankHuang0516/EClaw/issues/2684)
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **avatar:** petdx render on card-holder my-cards (Phase 1b) ([#2621](https://github.com/HankHuang0516/EClaw/issues/2621)) ([f78ba8b](https://github.com/HankHuang0516/EClaw/commit/f78ba8b18acc426936ab6d8a82ca7541effea00d))
* **avatar:** petdx render on dashboard entity grid / org chart / bindings (Phase 1b) ([#2622](https://github.com/HankHuang0516/EClaw/issues/2622)) ([f417749](https://github.com/HankHuang0516/EClaw/commit/f41774914451048e8cd76e9ae30416a0642e173b)), closes [#2620](https://github.com/HankHuang0516/EClaw/issues/2620) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621)
* **avatar:** petdx render on kanban auto-assign / pulse / comment avatars (Phase 1b) ([#2624](https://github.com/HankHuang0516/EClaw/issues/2624)) ([6bff5f8](https://github.com/HankHuang0516/EClaw/commit/6bff5f80440d0bd91a6b1721cde9478d685c4d46))
* **avatar:** petdx render on mission skill/rule/soul entity dialogs (Phase 1b) ([#2623](https://github.com/HankHuang0516/EClaw/issues/2623)) ([129327b](https://github.com/HankHuang0516/EClaw/commit/129327bc7b91056659f1ab7e8d5e3f5260d951fb))
* **mindmap:** portal/mindmap.html force-graph prototype ([#129](https://github.com/HankHuang0516/EClaw/issues/129)) ([#2681](https://github.com/HankHuang0516/EClaw/issues/2681)) ([0f15e69](https://github.com/HankHuang0516/EClaw/commit/0f15e6930f0697c37fa08f3219edb8f9e499837f)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **portal:** redo nagoya trip page in professional tour-guide style ([#2691](https://github.com/HankHuang0516/EClaw/issues/2691)) ([b2378c0](https://github.com/HankHuang0516/EClaw/commit/b2378c06ee20fa9cccfdceceb1a4c9e0b3072f59))
* **avatar:** render selected petdx companion in chat avatars ([#2620](https://github.com/HankHuang0516/EClaw/issues/2620)) ([0bdd046](https://github.com/HankHuang0516/EClaw/commit/0bdd046fe1b1c428e32edda366ff112c08927f4c))
* **home:** replace native home with WebView hosting dashboard.html ([#2634](https://github.com/HankHuang0516/EClaw/issues/2634)) ([e69ea81](https://github.com/HankHuang0516/EClaw/commit/e69ea8160c239b083a83d6dc83a4f1c3f901c863))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **chat:** support message deep links ([#2719](https://github.com/HankHuang0516/EClaw/issues/2719)) ([2dc0f1e](https://github.com/HankHuang0516/EClaw/commit/2dc0f1eeb259e1a0848db4a03186b989372cd91c))
* **mission:** support note deep links ([#2717](https://github.com/HankHuang0516/EClaw/issues/2717)) ([2efd3a5](https://github.com/HankHuang0516/EClaw/commit/2efd3a5e741217a07c0b0ac54a0ddd010e0ebe23))
* **share-chat:** twitter card + per-bot og:image/twitter:* in SSR ([#2609](https://github.com/HankHuang0516/EClaw/issues/2609)) ([6cdc853](https://github.com/HankHuang0516/EClaw/commit/6cdc853dc884cdb95bd47214942768981f218ae0))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))
* **settings:** wire petdx avatar into channel-account chips ([#2626](https://github.com/HankHuang0516/EClaw/issues/2626)) ([88aec77](https://github.com/HankHuang0516/EClaw/commit/88aec772628c240e97b336bb5820892ad632d1ae))
* **files:** wire petdx avatar into entity filter & per-file badges ([#2627](https://github.com/HankHuang0516/EClaw/issues/2627)) ([5b3e5cc](https://github.com/HankHuang0516/EClaw/commit/5b3e5cc542d9da69bb4e92500fd03a542ea33f00))
* **mindmap:** wrap hardcoded zh-TW UI strings with i18n t() ([#2607](https://github.com/HankHuang0516/EClaw/issues/2607)) ([166af87](https://github.com/HankHuang0516/EClaw/commit/166af8772b2121a24aaf34a83b3de970e9b3b571)), closes [#2606](https://github.com/HankHuang0516/EClaw/issues/2606)


### Performance Improvements

* **mindmap:** force-graph hardening for 1000/2000-node graphs ([#2684](https://github.com/HankHuang0516/EClaw/issues/2684)) ([da8b1c8](https://github.com/HankHuang0516/EClaw/commit/da8b1c8f947ab8bc8fa455c1962a91146623a1fc))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-13)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **notifications:** add kanban_done + kanban_done_auto toggles to Android Settings ([#2636](https://github.com/HankHuang0516/EClaw/issues/2636)) ([a710909](https://github.com/HankHuang0516/EClaw/commit/a7109095e3393b8564e7ef1b23d382a4fbb944b8))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **kanban:** comment input no longer overlaps last comment in card detail (PR [#2678](https://github.com/HankHuang0516/EClaw/issues/2678)) ([fba91fc](https://github.com/HankHuang0516/EClaw/commit/fba91fca15402b453a0db5ee857c0b16e6087055))
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **petdx:** drop dark-grey loading placeholder + preload sprite WEBP ([#2628](https://github.com/HankHuang0516/EClaw/issues/2628)) ([59cef38](https://github.com/HankHuang0516/EClaw/commit/59cef387bd69ca99d7d15c86a1364856d3849ad8)), closes [#1a1a1a](https://github.com/HankHuang0516/EClaw/issues/1a1a1a)
* **entities:** expose botSecret to owner so wallpaper service can poll companions ([#2615](https://github.com/HankHuang0516/EClaw/issues/2615)) ([04470fc](https://github.com/HankHuang0516/EClaw/commit/04470fce8f8c3fce2b1ba8b243e776606f107502))
* **rental:** expose owner_public_code in marketplace so plaza CTA can route ([#2616](https://github.com/HankHuang0516/EClaw/issues/2616)) ([4d1372f](https://github.com/HankHuang0516/EClaw/commit/4d1372f717d93cab65543e87c852e74e9fb67071)), closes [#2610](https://github.com/HankHuang0516/EClaw/issues/2610)
* **mindmap:** fallback to device scope when entityId is null ([#2728](https://github.com/HankHuang0516/EClaw/issues/2728)) ([7572312](https://github.com/HankHuang0516/EClaw/commit/7572312433d3d75fc245eda48a28919ce14bd927))
* **portal:** fit embedded org chart to mobile viewport ([#2674](https://github.com/HankHuang0516/EClaw/issues/2674)) ([1c4e1b4](https://github.com/HankHuang0516/EClaw/commit/1c4e1b413ea7027b4cd4b8ecda981b0d0e12e66b))
* **mention-parser:** ignore @-mentions inside markdown code spans ([#2645](https://github.com/HankHuang0516/EClaw/issues/2645)) ([8da19d4](https://github.com/HankHuang0516/EClaw/commit/8da19d4a79ceb4152bf2144ee0847c61ce3e1def)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **kanban:** lazy-load dependency chips via IntersectionObserver ([#2632](https://github.com/HankHuang0516/EClaw/issues/2632)) ([20586b4](https://github.com/HankHuang0516/EClaw/commit/20586b43357335f9eb6a190c02d58c8e36b58aba)), closes [#2631](https://github.com/HankHuang0516/EClaw/issues/2631)
* **wallpaper:** off-load spritesheet fetch to IO so per-petdx sprites actually render ([#2618](https://github.com/HankHuang0516/EClaw/issues/2618)) ([61b832c](https://github.com/HankHuang0516/EClaw/commit/61b832c9fa8a1d0caab810ccc942d85c63349267)), closes [#2615](https://github.com/HankHuang0516/EClaw/issues/2615) [#2577](https://github.com/HankHuang0516/EClaw/issues/2577)
* **i18n:** positional format specifiers for feedback_result_logs (7 locales) ([#2597](https://github.com/HankHuang0516/EClaw/issues/2597)) ([21aedc7](https://github.com/HankHuang0516/EClaw/commit/21aedc7eebc7a2839e340136f38dfdfd4dabb9dc))
* **avatar-petdx:** preserve descriptor across transient API failures (flicker) ([#2625](https://github.com/HankHuang0516/EClaw/issues/2625)) ([7b1c606](https://github.com/HankHuang0516/EClaw/commit/7b1c606514f7698d72ec95cf6c556e4043966186))
* **chat:** preserve scroll anchor while reading history ([#2693](https://github.com/HankHuang0516/EClaw/issues/2693)) ([945fdb7](https://github.com/HankHuang0516/EClaw/commit/945fdb7192b791b31882e1e75568dd8b11e4686f))
* **promo:** pull video embed from /promo-chat-avatar.html ([#2724](https://github.com/HankHuang0516/EClaw/issues/2724)) ([2afabc8](https://github.com/HankHuang0516/EClaw/commit/2afabc8c5ff8b25218a7cb857e8adfa572c8e9d5))
* **portal:** reduce QA-discovered request fanout ([#2656](https://github.com/HankHuang0516/EClaw/issues/2656)) ([1e46d6b](https://github.com/HankHuang0516/EClaw/commit/1e46d6bab61e58c65b452b6503d953f8dddeee75))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **portal:** remove org chart fit scale floor ([#2676](https://github.com/HankHuang0516/EClaw/issues/2676)) ([0f01606](https://github.com/HankHuang0516/EClaw/commit/0f016068b963bb5f800a02f28817c7174979d913))
* **i18n:** rename mm_empty_title → mm_state_empty_title in mindmap.html ([#2683](https://github.com/HankHuang0516/EClaw/issues/2683)) ([c79c109](https://github.com/HankHuang0516/EClaw/commit/c79c109bea23142e8a6d9ace976d105af1280ec9))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **chat:** render mention avatars with companion renderer ([#2633](https://github.com/HankHuang0516/EClaw/issues/2633)) ([03e205f](https://github.com/HankHuang0516/EClaw/commit/03e205f663ecd2c2f443d4009dd5af0093f0bbbb))
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* scheduled audit 2026-05-13 — 6 bugs, XSS, i18n ([#2668](https://github.com/HankHuang0516/EClaw/issues/2668)) ([21dd513](https://github.com/HankHuang0516/EClaw/commit/21dd513b4464738de29164265437435ba6cc4817)), closes [#2605](https://github.com/HankHuang0516/EClaw/issues/2605) [#2608](https://github.com/HankHuang0516/EClaw/issues/2608) [#2600](https://github.com/HankHuang0516/EClaw/issues/2600) [#2599](https://github.com/HankHuang0516/EClaw/issues/2599) [#2598](https://github.com/HankHuang0516/EClaw/issues/2598)
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **chat:** smart-chip preview falls back to inline c.comments when /comments fails (PR [#2677](https://github.com/HankHuang0516/EClaw/issues/2677)) ([7f4dffd](https://github.com/HankHuang0516/EClaw/commit/7f4dffd2c83ea86f296b8fa0610f0e67c9f1af11))
* **wallpaper:** stop Android live wallpaper flashing default lobster on companion change ([#2629](https://github.com/HankHuang0516/EClaw/issues/2629)) ([8b4f66f](https://github.com/HankHuang0516/EClaw/commit/8b4f66fcb335bf43128f924b761b6337c817095b)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **app:** WebView pages honor app-selected locale via ?lang= URL param ([#2672](https://github.com/HankHuang0516/EClaw/issues/2672)) ([8ed8757](https://github.com/HankHuang0516/EClaw/commit/8ed8757aec5bf214e837cc0d81bf2b23f1993a91)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* **community:** 1-click chat button on bot cards + utm tagging ([#2610](https://github.com/HankHuang0516/EClaw/issues/2610)) ([eee97b0](https://github.com/HankHuang0516/EClaw/commit/eee97b0e2e4e74945ec24f218a69a52800b97a66))
* **chat:** add avatar size preference ([#2714](https://github.com/HankHuang0516/EClaw/issues/2714)) ([6fe164a](https://github.com/HankHuang0516/EClaw/commit/6fe164ad8b22fa576d2dd9ad37c0d9fc295b5a83))
* **dashboard:** add Claude and Codex channel guides ([#2640](https://github.com/HankHuang0516/EClaw/issues/2640)) ([c64e4c4](https://github.com/HankHuang0516/EClaw/commit/c64e4c4afc78db58c5cd578f00486dd7b2fd3311))
* **dashboard:** add Claude Code channel guide card ([#2667](https://github.com/HankHuang0516/EClaw/issues/2667)) ([d70d75c](https://github.com/HankHuang0516/EClaw/commit/d70d75c0c8caa8a540358a9aab4556b8c1927a5c))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* **portal:** add entity selector to petdx-browser ([#2602](https://github.com/HankHuang0516/EClaw/issues/2602)) ([3fa067e](https://github.com/HankHuang0516/EClaw/commit/3fa067e00b38829b48a37cecd33ee81a9a1122d9))
* **mindmap:** add GET /api/mindmap/graph force-graph projection ([#2680](https://github.com/HankHuang0516/EClaw/issues/2680)) ([a00b2e7](https://github.com/HankHuang0516/EClaw/commit/a00b2e775af2c4c98cd157f760ad87aeeee469f0)), closes [#2679](https://github.com/HankHuang0516/EClaw/issues/2679) [#2679](https://github.com/HankHuang0516/EClaw/issues/2679)
* **dashboard:** add Hermes channel promo card ([#2708](https://github.com/HankHuang0516/EClaw/issues/2708)) ([337aca1](https://github.com/HankHuang0516/EClaw/commit/337aca153d5a1cd7e888c065f00ae54db7872d91))
* **portal:** add Nagoya 5D4N trip static cross-ref page ([#2689](https://github.com/HankHuang0516/EClaw/issues/2689)) ([2e0efb6](https://github.com/HankHuang0516/EClaw/commit/2e0efb6dcdaff52226cc8854a96747000b12bdff))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **companion:** bridge crafter-station/petdex gallery (1784 pets) ([#2601](https://github.com/HankHuang0516/EClaw/issues/2601)) ([2e245be](https://github.com/HankHuang0516/EClaw/commit/2e245bea6dd47ea7361b927d389188a3c23b6bb3))
* **promo:** chat avatar size feature landing page (self-hosted MP4) ([#2722](https://github.com/HankHuang0516/EClaw/issues/2722)) ([3852210](https://github.com/HankHuang0516/EClaw/commit/3852210d355704d018e3daca6b5f9512a011b210)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **mission:** link notes to kanban cards ([#2723](https://github.com/HankHuang0516/EClaw/issues/2723)) ([b36dc18](https://github.com/HankHuang0516/EClaw/commit/b36dc18f3a8facf12e0b6046351c222f1e99dc55))
* **mindmap:** mission.html link to /portal/mindmap.html + deprecate /api/mission/mindmap ([#2685](https://github.com/HankHuang0516/EClaw/issues/2685)) ([11e297b](https://github.com/HankHuang0516/EClaw/commit/11e297bab1c9b56fcde3027d6500b7c58891bf18)), closes [#2680](https://github.com/HankHuang0516/EClaw/issues/2680) [#2684](https://github.com/HankHuang0516/EClaw/issues/2684)
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **avatar:** petdx render on card-holder my-cards (Phase 1b) ([#2621](https://github.com/HankHuang0516/EClaw/issues/2621)) ([f78ba8b](https://github.com/HankHuang0516/EClaw/commit/f78ba8b18acc426936ab6d8a82ca7541effea00d))
* **avatar:** petdx render on dashboard entity grid / org chart / bindings (Phase 1b) ([#2622](https://github.com/HankHuang0516/EClaw/issues/2622)) ([f417749](https://github.com/HankHuang0516/EClaw/commit/f41774914451048e8cd76e9ae30416a0642e173b)), closes [#2620](https://github.com/HankHuang0516/EClaw/issues/2620) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621)
* **avatar:** petdx render on kanban auto-assign / pulse / comment avatars (Phase 1b) ([#2624](https://github.com/HankHuang0516/EClaw/issues/2624)) ([6bff5f8](https://github.com/HankHuang0516/EClaw/commit/6bff5f80440d0bd91a6b1721cde9478d685c4d46))
* **avatar:** petdx render on mission skill/rule/soul entity dialogs (Phase 1b) ([#2623](https://github.com/HankHuang0516/EClaw/issues/2623)) ([129327b](https://github.com/HankHuang0516/EClaw/commit/129327bc7b91056659f1ab7e8d5e3f5260d951fb))
* **mindmap:** portal/mindmap.html force-graph prototype ([#129](https://github.com/HankHuang0516/EClaw/issues/129)) ([#2681](https://github.com/HankHuang0516/EClaw/issues/2681)) ([0f15e69](https://github.com/HankHuang0516/EClaw/commit/0f15e6930f0697c37fa08f3219edb8f9e499837f)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **portal:** redo nagoya trip page in professional tour-guide style ([#2691](https://github.com/HankHuang0516/EClaw/issues/2691)) ([b2378c0](https://github.com/HankHuang0516/EClaw/commit/b2378c06ee20fa9cccfdceceb1a4c9e0b3072f59))
* **avatar:** render selected petdx companion in chat avatars ([#2620](https://github.com/HankHuang0516/EClaw/issues/2620)) ([0bdd046](https://github.com/HankHuang0516/EClaw/commit/0bdd046fe1b1c428e32edda366ff112c08927f4c))
* **home:** replace native home with WebView hosting dashboard.html ([#2634](https://github.com/HankHuang0516/EClaw/issues/2634)) ([e69ea81](https://github.com/HankHuang0516/EClaw/commit/e69ea8160c239b083a83d6dc83a4f1c3f901c863))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **chat:** support message deep links ([#2719](https://github.com/HankHuang0516/EClaw/issues/2719)) ([2dc0f1e](https://github.com/HankHuang0516/EClaw/commit/2dc0f1eeb259e1a0848db4a03186b989372cd91c))
* **mission:** support note deep links ([#2717](https://github.com/HankHuang0516/EClaw/issues/2717)) ([2efd3a5](https://github.com/HankHuang0516/EClaw/commit/2efd3a5e741217a07c0b0ac54a0ddd010e0ebe23))
* **share-chat:** twitter card + per-bot og:image/twitter:* in SSR ([#2609](https://github.com/HankHuang0516/EClaw/issues/2609)) ([6cdc853](https://github.com/HankHuang0516/EClaw/commit/6cdc853dc884cdb95bd47214942768981f218ae0))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))
* **settings:** wire petdx avatar into channel-account chips ([#2626](https://github.com/HankHuang0516/EClaw/issues/2626)) ([88aec77](https://github.com/HankHuang0516/EClaw/commit/88aec772628c240e97b336bb5820892ad632d1ae))
* **files:** wire petdx avatar into entity filter & per-file badges ([#2627](https://github.com/HankHuang0516/EClaw/issues/2627)) ([5b3e5cc](https://github.com/HankHuang0516/EClaw/commit/5b3e5cc542d9da69bb4e92500fd03a542ea33f00))
* **mindmap:** wrap hardcoded zh-TW UI strings with i18n t() ([#2607](https://github.com/HankHuang0516/EClaw/issues/2607)) ([166af87](https://github.com/HankHuang0516/EClaw/commit/166af8772b2121a24aaf34a83b3de970e9b3b571)), closes [#2606](https://github.com/HankHuang0516/EClaw/issues/2606)


### Performance Improvements

* **mindmap:** force-graph hardening for 1000/2000-node graphs ([#2684](https://github.com/HankHuang0516/EClaw/issues/2684)) ([da8b1c8](https://github.com/HankHuang0516/EClaw/commit/da8b1c8f947ab8bc8fa455c1962a91146623a1fc))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-13)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **notifications:** add kanban_done + kanban_done_auto toggles to Android Settings ([#2636](https://github.com/HankHuang0516/EClaw/issues/2636)) ([a710909](https://github.com/HankHuang0516/EClaw/commit/a7109095e3393b8564e7ef1b23d382a4fbb944b8))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **kanban:** comment input no longer overlaps last comment in card detail (PR [#2678](https://github.com/HankHuang0516/EClaw/issues/2678)) ([fba91fc](https://github.com/HankHuang0516/EClaw/commit/fba91fca15402b453a0db5ee857c0b16e6087055))
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **petdx:** drop dark-grey loading placeholder + preload sprite WEBP ([#2628](https://github.com/HankHuang0516/EClaw/issues/2628)) ([59cef38](https://github.com/HankHuang0516/EClaw/commit/59cef387bd69ca99d7d15c86a1364856d3849ad8)), closes [#1a1a1a](https://github.com/HankHuang0516/EClaw/issues/1a1a1a)
* **entities:** expose botSecret to owner so wallpaper service can poll companions ([#2615](https://github.com/HankHuang0516/EClaw/issues/2615)) ([04470fc](https://github.com/HankHuang0516/EClaw/commit/04470fce8f8c3fce2b1ba8b243e776606f107502))
* **rental:** expose owner_public_code in marketplace so plaza CTA can route ([#2616](https://github.com/HankHuang0516/EClaw/issues/2616)) ([4d1372f](https://github.com/HankHuang0516/EClaw/commit/4d1372f717d93cab65543e87c852e74e9fb67071)), closes [#2610](https://github.com/HankHuang0516/EClaw/issues/2610)
* **mindmap:** fallback to device scope when entityId is null ([#2728](https://github.com/HankHuang0516/EClaw/issues/2728)) ([7572312](https://github.com/HankHuang0516/EClaw/commit/7572312433d3d75fc245eda48a28919ce14bd927))
* **portal:** fit embedded org chart to mobile viewport ([#2674](https://github.com/HankHuang0516/EClaw/issues/2674)) ([1c4e1b4](https://github.com/HankHuang0516/EClaw/commit/1c4e1b413ea7027b4cd4b8ecda981b0d0e12e66b))
* **mention-parser:** ignore @-mentions inside markdown code spans ([#2645](https://github.com/HankHuang0516/EClaw/issues/2645)) ([8da19d4](https://github.com/HankHuang0516/EClaw/commit/8da19d4a79ceb4152bf2144ee0847c61ce3e1def)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **kanban:** lazy-load dependency chips via IntersectionObserver ([#2632](https://github.com/HankHuang0516/EClaw/issues/2632)) ([20586b4](https://github.com/HankHuang0516/EClaw/commit/20586b43357335f9eb6a190c02d58c8e36b58aba)), closes [#2631](https://github.com/HankHuang0516/EClaw/issues/2631)
* **wallpaper:** off-load spritesheet fetch to IO so per-petdx sprites actually render ([#2618](https://github.com/HankHuang0516/EClaw/issues/2618)) ([61b832c](https://github.com/HankHuang0516/EClaw/commit/61b832c9fa8a1d0caab810ccc942d85c63349267)), closes [#2615](https://github.com/HankHuang0516/EClaw/issues/2615) [#2577](https://github.com/HankHuang0516/EClaw/issues/2577)
* **i18n:** positional format specifiers for feedback_result_logs (7 locales) ([#2597](https://github.com/HankHuang0516/EClaw/issues/2597)) ([21aedc7](https://github.com/HankHuang0516/EClaw/commit/21aedc7eebc7a2839e340136f38dfdfd4dabb9dc))
* **avatar-petdx:** preserve descriptor across transient API failures (flicker) ([#2625](https://github.com/HankHuang0516/EClaw/issues/2625)) ([7b1c606](https://github.com/HankHuang0516/EClaw/commit/7b1c606514f7698d72ec95cf6c556e4043966186))
* **chat:** preserve scroll anchor while reading history ([#2693](https://github.com/HankHuang0516/EClaw/issues/2693)) ([945fdb7](https://github.com/HankHuang0516/EClaw/commit/945fdb7192b791b31882e1e75568dd8b11e4686f))
* **promo:** pull video embed from /promo-chat-avatar.html ([#2724](https://github.com/HankHuang0516/EClaw/issues/2724)) ([2afabc8](https://github.com/HankHuang0516/EClaw/commit/2afabc8c5ff8b25218a7cb857e8adfa572c8e9d5))
* **portal:** reduce QA-discovered request fanout ([#2656](https://github.com/HankHuang0516/EClaw/issues/2656)) ([1e46d6b](https://github.com/HankHuang0516/EClaw/commit/1e46d6bab61e58c65b452b6503d953f8dddeee75))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **portal:** remove org chart fit scale floor ([#2676](https://github.com/HankHuang0516/EClaw/issues/2676)) ([0f01606](https://github.com/HankHuang0516/EClaw/commit/0f016068b963bb5f800a02f28817c7174979d913))
* **i18n:** rename mm_empty_title → mm_state_empty_title in mindmap.html ([#2683](https://github.com/HankHuang0516/EClaw/issues/2683)) ([c79c109](https://github.com/HankHuang0516/EClaw/commit/c79c109bea23142e8a6d9ace976d105af1280ec9))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **chat:** render mention avatars with companion renderer ([#2633](https://github.com/HankHuang0516/EClaw/issues/2633)) ([03e205f](https://github.com/HankHuang0516/EClaw/commit/03e205f663ecd2c2f443d4009dd5af0093f0bbbb))
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* scheduled audit 2026-05-13 — 6 bugs, XSS, i18n ([#2668](https://github.com/HankHuang0516/EClaw/issues/2668)) ([21dd513](https://github.com/HankHuang0516/EClaw/commit/21dd513b4464738de29164265437435ba6cc4817)), closes [#2605](https://github.com/HankHuang0516/EClaw/issues/2605) [#2608](https://github.com/HankHuang0516/EClaw/issues/2608) [#2600](https://github.com/HankHuang0516/EClaw/issues/2600) [#2599](https://github.com/HankHuang0516/EClaw/issues/2599) [#2598](https://github.com/HankHuang0516/EClaw/issues/2598)
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **chat:** smart-chip preview falls back to inline c.comments when /comments fails (PR [#2677](https://github.com/HankHuang0516/EClaw/issues/2677)) ([7f4dffd](https://github.com/HankHuang0516/EClaw/commit/7f4dffd2c83ea86f296b8fa0610f0e67c9f1af11))
* **wallpaper:** stop Android live wallpaper flashing default lobster on companion change ([#2629](https://github.com/HankHuang0516/EClaw/issues/2629)) ([8b4f66f](https://github.com/HankHuang0516/EClaw/commit/8b4f66fcb335bf43128f924b761b6337c817095b)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **app:** WebView pages honor app-selected locale via ?lang= URL param ([#2672](https://github.com/HankHuang0516/EClaw/issues/2672)) ([8ed8757](https://github.com/HankHuang0516/EClaw/commit/8ed8757aec5bf214e837cc0d81bf2b23f1993a91)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* **community:** 1-click chat button on bot cards + utm tagging ([#2610](https://github.com/HankHuang0516/EClaw/issues/2610)) ([eee97b0](https://github.com/HankHuang0516/EClaw/commit/eee97b0e2e4e74945ec24f218a69a52800b97a66))
* **chat:** add avatar size preference ([#2714](https://github.com/HankHuang0516/EClaw/issues/2714)) ([6fe164a](https://github.com/HankHuang0516/EClaw/commit/6fe164ad8b22fa576d2dd9ad37c0d9fc295b5a83))
* **dashboard:** add Claude and Codex channel guides ([#2640](https://github.com/HankHuang0516/EClaw/issues/2640)) ([c64e4c4](https://github.com/HankHuang0516/EClaw/commit/c64e4c4afc78db58c5cd578f00486dd7b2fd3311))
* **dashboard:** add Claude Code channel guide card ([#2667](https://github.com/HankHuang0516/EClaw/issues/2667)) ([d70d75c](https://github.com/HankHuang0516/EClaw/commit/d70d75c0c8caa8a540358a9aab4556b8c1927a5c))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* **portal:** add entity selector to petdx-browser ([#2602](https://github.com/HankHuang0516/EClaw/issues/2602)) ([3fa067e](https://github.com/HankHuang0516/EClaw/commit/3fa067e00b38829b48a37cecd33ee81a9a1122d9))
* **mindmap:** add GET /api/mindmap/graph force-graph projection ([#2680](https://github.com/HankHuang0516/EClaw/issues/2680)) ([a00b2e7](https://github.com/HankHuang0516/EClaw/commit/a00b2e775af2c4c98cd157f760ad87aeeee469f0)), closes [#2679](https://github.com/HankHuang0516/EClaw/issues/2679) [#2679](https://github.com/HankHuang0516/EClaw/issues/2679)
* **dashboard:** add Hermes channel promo card ([#2708](https://github.com/HankHuang0516/EClaw/issues/2708)) ([337aca1](https://github.com/HankHuang0516/EClaw/commit/337aca153d5a1cd7e888c065f00ae54db7872d91))
* **portal:** add Nagoya 5D4N trip static cross-ref page ([#2689](https://github.com/HankHuang0516/EClaw/issues/2689)) ([2e0efb6](https://github.com/HankHuang0516/EClaw/commit/2e0efb6dcdaff52226cc8854a96747000b12bdff))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **companion:** bridge crafter-station/petdex gallery (1784 pets) ([#2601](https://github.com/HankHuang0516/EClaw/issues/2601)) ([2e245be](https://github.com/HankHuang0516/EClaw/commit/2e245bea6dd47ea7361b927d389188a3c23b6bb3))
* **promo:** chat avatar size feature landing page (self-hosted MP4) ([#2722](https://github.com/HankHuang0516/EClaw/issues/2722)) ([3852210](https://github.com/HankHuang0516/EClaw/commit/3852210d355704d018e3daca6b5f9512a011b210)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **mission:** link notes to kanban cards ([#2723](https://github.com/HankHuang0516/EClaw/issues/2723)) ([b36dc18](https://github.com/HankHuang0516/EClaw/commit/b36dc18f3a8facf12e0b6046351c222f1e99dc55))
* **mindmap:** mission.html link to /portal/mindmap.html + deprecate /api/mission/mindmap ([#2685](https://github.com/HankHuang0516/EClaw/issues/2685)) ([11e297b](https://github.com/HankHuang0516/EClaw/commit/11e297bab1c9b56fcde3027d6500b7c58891bf18)), closes [#2680](https://github.com/HankHuang0516/EClaw/issues/2680) [#2684](https://github.com/HankHuang0516/EClaw/issues/2684)
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **avatar:** petdx render on card-holder my-cards (Phase 1b) ([#2621](https://github.com/HankHuang0516/EClaw/issues/2621)) ([f78ba8b](https://github.com/HankHuang0516/EClaw/commit/f78ba8b18acc426936ab6d8a82ca7541effea00d))
* **avatar:** petdx render on dashboard entity grid / org chart / bindings (Phase 1b) ([#2622](https://github.com/HankHuang0516/EClaw/issues/2622)) ([f417749](https://github.com/HankHuang0516/EClaw/commit/f41774914451048e8cd76e9ae30416a0642e173b)), closes [#2620](https://github.com/HankHuang0516/EClaw/issues/2620) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621)
* **avatar:** petdx render on kanban auto-assign / pulse / comment avatars (Phase 1b) ([#2624](https://github.com/HankHuang0516/EClaw/issues/2624)) ([6bff5f8](https://github.com/HankHuang0516/EClaw/commit/6bff5f80440d0bd91a6b1721cde9478d685c4d46))
* **avatar:** petdx render on mission skill/rule/soul entity dialogs (Phase 1b) ([#2623](https://github.com/HankHuang0516/EClaw/issues/2623)) ([129327b](https://github.com/HankHuang0516/EClaw/commit/129327bc7b91056659f1ab7e8d5e3f5260d951fb))
* **mindmap:** portal/mindmap.html force-graph prototype ([#129](https://github.com/HankHuang0516/EClaw/issues/129)) ([#2681](https://github.com/HankHuang0516/EClaw/issues/2681)) ([0f15e69](https://github.com/HankHuang0516/EClaw/commit/0f15e6930f0697c37fa08f3219edb8f9e499837f)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **portal:** redo nagoya trip page in professional tour-guide style ([#2691](https://github.com/HankHuang0516/EClaw/issues/2691)) ([b2378c0](https://github.com/HankHuang0516/EClaw/commit/b2378c06ee20fa9cccfdceceb1a4c9e0b3072f59))
* **avatar:** render selected petdx companion in chat avatars ([#2620](https://github.com/HankHuang0516/EClaw/issues/2620)) ([0bdd046](https://github.com/HankHuang0516/EClaw/commit/0bdd046fe1b1c428e32edda366ff112c08927f4c))
* **home:** replace native home with WebView hosting dashboard.html ([#2634](https://github.com/HankHuang0516/EClaw/issues/2634)) ([e69ea81](https://github.com/HankHuang0516/EClaw/commit/e69ea8160c239b083a83d6dc83a4f1c3f901c863))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **share-chat:** twitter card + per-bot og:image/twitter:* in SSR ([#2609](https://github.com/HankHuang0516/EClaw/issues/2609)) ([6cdc853](https://github.com/HankHuang0516/EClaw/commit/6cdc853dc884cdb95bd47214942768981f218ae0))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))
* **settings:** wire petdx avatar into channel-account chips ([#2626](https://github.com/HankHuang0516/EClaw/issues/2626)) ([88aec77](https://github.com/HankHuang0516/EClaw/commit/88aec772628c240e97b336bb5820892ad632d1ae))
* **files:** wire petdx avatar into entity filter & per-file badges ([#2627](https://github.com/HankHuang0516/EClaw/issues/2627)) ([5b3e5cc](https://github.com/HankHuang0516/EClaw/commit/5b3e5cc542d9da69bb4e92500fd03a542ea33f00))
* **mindmap:** wrap hardcoded zh-TW UI strings with i18n t() ([#2607](https://github.com/HankHuang0516/EClaw/issues/2607)) ([166af87](https://github.com/HankHuang0516/EClaw/commit/166af8772b2121a24aaf34a83b3de970e9b3b571)), closes [#2606](https://github.com/HankHuang0516/EClaw/issues/2606)


### Performance Improvements

* **mindmap:** force-graph hardening for 1000/2000-node graphs ([#2684](https://github.com/HankHuang0516/EClaw/issues/2684)) ([da8b1c8](https://github.com/HankHuang0516/EClaw/commit/da8b1c8f947ab8bc8fa455c1962a91146623a1fc))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-13)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **notifications:** add kanban_done + kanban_done_auto toggles to Android Settings ([#2636](https://github.com/HankHuang0516/EClaw/issues/2636)) ([a710909](https://github.com/HankHuang0516/EClaw/commit/a7109095e3393b8564e7ef1b23d382a4fbb944b8))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **kanban:** comment input no longer overlaps last comment in card detail (PR [#2678](https://github.com/HankHuang0516/EClaw/issues/2678)) ([fba91fc](https://github.com/HankHuang0516/EClaw/commit/fba91fca15402b453a0db5ee857c0b16e6087055))
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **petdx:** drop dark-grey loading placeholder + preload sprite WEBP ([#2628](https://github.com/HankHuang0516/EClaw/issues/2628)) ([59cef38](https://github.com/HankHuang0516/EClaw/commit/59cef387bd69ca99d7d15c86a1364856d3849ad8)), closes [#1a1a1a](https://github.com/HankHuang0516/EClaw/issues/1a1a1a)
* **entities:** expose botSecret to owner so wallpaper service can poll companions ([#2615](https://github.com/HankHuang0516/EClaw/issues/2615)) ([04470fc](https://github.com/HankHuang0516/EClaw/commit/04470fce8f8c3fce2b1ba8b243e776606f107502))
* **rental:** expose owner_public_code in marketplace so plaza CTA can route ([#2616](https://github.com/HankHuang0516/EClaw/issues/2616)) ([4d1372f](https://github.com/HankHuang0516/EClaw/commit/4d1372f717d93cab65543e87c852e74e9fb67071)), closes [#2610](https://github.com/HankHuang0516/EClaw/issues/2610)
* **mindmap:** fallback to device scope when entityId is null ([#2728](https://github.com/HankHuang0516/EClaw/issues/2728)) ([7572312](https://github.com/HankHuang0516/EClaw/commit/7572312433d3d75fc245eda48a28919ce14bd927))
* **portal:** fit embedded org chart to mobile viewport ([#2674](https://github.com/HankHuang0516/EClaw/issues/2674)) ([1c4e1b4](https://github.com/HankHuang0516/EClaw/commit/1c4e1b413ea7027b4cd4b8ecda981b0d0e12e66b))
* **mention-parser:** ignore @-mentions inside markdown code spans ([#2645](https://github.com/HankHuang0516/EClaw/issues/2645)) ([8da19d4](https://github.com/HankHuang0516/EClaw/commit/8da19d4a79ceb4152bf2144ee0847c61ce3e1def)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **kanban:** lazy-load dependency chips via IntersectionObserver ([#2632](https://github.com/HankHuang0516/EClaw/issues/2632)) ([20586b4](https://github.com/HankHuang0516/EClaw/commit/20586b43357335f9eb6a190c02d58c8e36b58aba)), closes [#2631](https://github.com/HankHuang0516/EClaw/issues/2631)
* **wallpaper:** off-load spritesheet fetch to IO so per-petdx sprites actually render ([#2618](https://github.com/HankHuang0516/EClaw/issues/2618)) ([61b832c](https://github.com/HankHuang0516/EClaw/commit/61b832c9fa8a1d0caab810ccc942d85c63349267)), closes [#2615](https://github.com/HankHuang0516/EClaw/issues/2615) [#2577](https://github.com/HankHuang0516/EClaw/issues/2577)
* **i18n:** positional format specifiers for feedback_result_logs (7 locales) ([#2597](https://github.com/HankHuang0516/EClaw/issues/2597)) ([21aedc7](https://github.com/HankHuang0516/EClaw/commit/21aedc7eebc7a2839e340136f38dfdfd4dabb9dc))
* **avatar-petdx:** preserve descriptor across transient API failures (flicker) ([#2625](https://github.com/HankHuang0516/EClaw/issues/2625)) ([7b1c606](https://github.com/HankHuang0516/EClaw/commit/7b1c606514f7698d72ec95cf6c556e4043966186))
* **chat:** preserve scroll anchor while reading history ([#2693](https://github.com/HankHuang0516/EClaw/issues/2693)) ([945fdb7](https://github.com/HankHuang0516/EClaw/commit/945fdb7192b791b31882e1e75568dd8b11e4686f))
* **promo:** pull video embed from /promo-chat-avatar.html ([#2724](https://github.com/HankHuang0516/EClaw/issues/2724)) ([2afabc8](https://github.com/HankHuang0516/EClaw/commit/2afabc8c5ff8b25218a7cb857e8adfa572c8e9d5))
* **portal:** reduce QA-discovered request fanout ([#2656](https://github.com/HankHuang0516/EClaw/issues/2656)) ([1e46d6b](https://github.com/HankHuang0516/EClaw/commit/1e46d6bab61e58c65b452b6503d953f8dddeee75))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **portal:** remove org chart fit scale floor ([#2676](https://github.com/HankHuang0516/EClaw/issues/2676)) ([0f01606](https://github.com/HankHuang0516/EClaw/commit/0f016068b963bb5f800a02f28817c7174979d913))
* **i18n:** rename mm_empty_title → mm_state_empty_title in mindmap.html ([#2683](https://github.com/HankHuang0516/EClaw/issues/2683)) ([c79c109](https://github.com/HankHuang0516/EClaw/commit/c79c109bea23142e8a6d9ace976d105af1280ec9))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **chat:** render mention avatars with companion renderer ([#2633](https://github.com/HankHuang0516/EClaw/issues/2633)) ([03e205f](https://github.com/HankHuang0516/EClaw/commit/03e205f663ecd2c2f443d4009dd5af0093f0bbbb))
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* scheduled audit 2026-05-13 — 6 bugs, XSS, i18n ([#2668](https://github.com/HankHuang0516/EClaw/issues/2668)) ([21dd513](https://github.com/HankHuang0516/EClaw/commit/21dd513b4464738de29164265437435ba6cc4817)), closes [#2605](https://github.com/HankHuang0516/EClaw/issues/2605) [#2608](https://github.com/HankHuang0516/EClaw/issues/2608) [#2600](https://github.com/HankHuang0516/EClaw/issues/2600) [#2599](https://github.com/HankHuang0516/EClaw/issues/2599) [#2598](https://github.com/HankHuang0516/EClaw/issues/2598)
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **chat:** smart-chip preview falls back to inline c.comments when /comments fails (PR [#2677](https://github.com/HankHuang0516/EClaw/issues/2677)) ([7f4dffd](https://github.com/HankHuang0516/EClaw/commit/7f4dffd2c83ea86f296b8fa0610f0e67c9f1af11))
* **wallpaper:** stop Android live wallpaper flashing default lobster on companion change ([#2629](https://github.com/HankHuang0516/EClaw/issues/2629)) ([8b4f66f](https://github.com/HankHuang0516/EClaw/commit/8b4f66fcb335bf43128f924b761b6337c817095b)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **app:** WebView pages honor app-selected locale via ?lang= URL param ([#2672](https://github.com/HankHuang0516/EClaw/issues/2672)) ([8ed8757](https://github.com/HankHuang0516/EClaw/commit/8ed8757aec5bf214e837cc0d81bf2b23f1993a91)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* **community:** 1-click chat button on bot cards + utm tagging ([#2610](https://github.com/HankHuang0516/EClaw/issues/2610)) ([eee97b0](https://github.com/HankHuang0516/EClaw/commit/eee97b0e2e4e74945ec24f218a69a52800b97a66))
* **chat:** add avatar size preference ([#2714](https://github.com/HankHuang0516/EClaw/issues/2714)) ([6fe164a](https://github.com/HankHuang0516/EClaw/commit/6fe164ad8b22fa576d2dd9ad37c0d9fc295b5a83))
* **dashboard:** add Claude and Codex channel guides ([#2640](https://github.com/HankHuang0516/EClaw/issues/2640)) ([c64e4c4](https://github.com/HankHuang0516/EClaw/commit/c64e4c4afc78db58c5cd578f00486dd7b2fd3311))
* **dashboard:** add Claude Code channel guide card ([#2667](https://github.com/HankHuang0516/EClaw/issues/2667)) ([d70d75c](https://github.com/HankHuang0516/EClaw/commit/d70d75c0c8caa8a540358a9aab4556b8c1927a5c))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* **portal:** add entity selector to petdx-browser ([#2602](https://github.com/HankHuang0516/EClaw/issues/2602)) ([3fa067e](https://github.com/HankHuang0516/EClaw/commit/3fa067e00b38829b48a37cecd33ee81a9a1122d9))
* **mindmap:** add GET /api/mindmap/graph force-graph projection ([#2680](https://github.com/HankHuang0516/EClaw/issues/2680)) ([a00b2e7](https://github.com/HankHuang0516/EClaw/commit/a00b2e775af2c4c98cd157f760ad87aeeee469f0)), closes [#2679](https://github.com/HankHuang0516/EClaw/issues/2679) [#2679](https://github.com/HankHuang0516/EClaw/issues/2679)
* **dashboard:** add Hermes channel promo card ([#2708](https://github.com/HankHuang0516/EClaw/issues/2708)) ([337aca1](https://github.com/HankHuang0516/EClaw/commit/337aca153d5a1cd7e888c065f00ae54db7872d91))
* **portal:** add Nagoya 5D4N trip static cross-ref page ([#2689](https://github.com/HankHuang0516/EClaw/issues/2689)) ([2e0efb6](https://github.com/HankHuang0516/EClaw/commit/2e0efb6dcdaff52226cc8854a96747000b12bdff))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **companion:** bridge crafter-station/petdex gallery (1784 pets) ([#2601](https://github.com/HankHuang0516/EClaw/issues/2601)) ([2e245be](https://github.com/HankHuang0516/EClaw/commit/2e245bea6dd47ea7361b927d389188a3c23b6bb3))
* **promo:** chat avatar size feature landing page (self-hosted MP4) ([#2722](https://github.com/HankHuang0516/EClaw/issues/2722)) ([3852210](https://github.com/HankHuang0516/EClaw/commit/3852210d355704d018e3daca6b5f9512a011b210)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **mindmap:** mission.html link to /portal/mindmap.html + deprecate /api/mission/mindmap ([#2685](https://github.com/HankHuang0516/EClaw/issues/2685)) ([11e297b](https://github.com/HankHuang0516/EClaw/commit/11e297bab1c9b56fcde3027d6500b7c58891bf18)), closes [#2680](https://github.com/HankHuang0516/EClaw/issues/2680) [#2684](https://github.com/HankHuang0516/EClaw/issues/2684)
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **avatar:** petdx render on card-holder my-cards (Phase 1b) ([#2621](https://github.com/HankHuang0516/EClaw/issues/2621)) ([f78ba8b](https://github.com/HankHuang0516/EClaw/commit/f78ba8b18acc426936ab6d8a82ca7541effea00d))
* **avatar:** petdx render on dashboard entity grid / org chart / bindings (Phase 1b) ([#2622](https://github.com/HankHuang0516/EClaw/issues/2622)) ([f417749](https://github.com/HankHuang0516/EClaw/commit/f41774914451048e8cd76e9ae30416a0642e173b)), closes [#2620](https://github.com/HankHuang0516/EClaw/issues/2620) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621)
* **avatar:** petdx render on kanban auto-assign / pulse / comment avatars (Phase 1b) ([#2624](https://github.com/HankHuang0516/EClaw/issues/2624)) ([6bff5f8](https://github.com/HankHuang0516/EClaw/commit/6bff5f80440d0bd91a6b1721cde9478d685c4d46))
* **avatar:** petdx render on mission skill/rule/soul entity dialogs (Phase 1b) ([#2623](https://github.com/HankHuang0516/EClaw/issues/2623)) ([129327b](https://github.com/HankHuang0516/EClaw/commit/129327bc7b91056659f1ab7e8d5e3f5260d951fb))
* **mindmap:** portal/mindmap.html force-graph prototype ([#129](https://github.com/HankHuang0516/EClaw/issues/129)) ([#2681](https://github.com/HankHuang0516/EClaw/issues/2681)) ([0f15e69](https://github.com/HankHuang0516/EClaw/commit/0f15e6930f0697c37fa08f3219edb8f9e499837f)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **portal:** redo nagoya trip page in professional tour-guide style ([#2691](https://github.com/HankHuang0516/EClaw/issues/2691)) ([b2378c0](https://github.com/HankHuang0516/EClaw/commit/b2378c06ee20fa9cccfdceceb1a4c9e0b3072f59))
* **avatar:** render selected petdx companion in chat avatars ([#2620](https://github.com/HankHuang0516/EClaw/issues/2620)) ([0bdd046](https://github.com/HankHuang0516/EClaw/commit/0bdd046fe1b1c428e32edda366ff112c08927f4c))
* **home:** replace native home with WebView hosting dashboard.html ([#2634](https://github.com/HankHuang0516/EClaw/issues/2634)) ([e69ea81](https://github.com/HankHuang0516/EClaw/commit/e69ea8160c239b083a83d6dc83a4f1c3f901c863))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **share-chat:** twitter card + per-bot og:image/twitter:* in SSR ([#2609](https://github.com/HankHuang0516/EClaw/issues/2609)) ([6cdc853](https://github.com/HankHuang0516/EClaw/commit/6cdc853dc884cdb95bd47214942768981f218ae0))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))
* **settings:** wire petdx avatar into channel-account chips ([#2626](https://github.com/HankHuang0516/EClaw/issues/2626)) ([88aec77](https://github.com/HankHuang0516/EClaw/commit/88aec772628c240e97b336bb5820892ad632d1ae))
* **files:** wire petdx avatar into entity filter & per-file badges ([#2627](https://github.com/HankHuang0516/EClaw/issues/2627)) ([5b3e5cc](https://github.com/HankHuang0516/EClaw/commit/5b3e5cc542d9da69bb4e92500fd03a542ea33f00))
* **mindmap:** wrap hardcoded zh-TW UI strings with i18n t() ([#2607](https://github.com/HankHuang0516/EClaw/issues/2607)) ([166af87](https://github.com/HankHuang0516/EClaw/commit/166af8772b2121a24aaf34a83b3de970e9b3b571)), closes [#2606](https://github.com/HankHuang0516/EClaw/issues/2606)


### Performance Improvements

* **mindmap:** force-graph hardening for 1000/2000-node graphs ([#2684](https://github.com/HankHuang0516/EClaw/issues/2684)) ([da8b1c8](https://github.com/HankHuang0516/EClaw/commit/da8b1c8f947ab8bc8fa455c1962a91146623a1fc))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-13)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **notifications:** add kanban_done + kanban_done_auto toggles to Android Settings ([#2636](https://github.com/HankHuang0516/EClaw/issues/2636)) ([a710909](https://github.com/HankHuang0516/EClaw/commit/a7109095e3393b8564e7ef1b23d382a4fbb944b8))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **kanban:** comment input no longer overlaps last comment in card detail (PR [#2678](https://github.com/HankHuang0516/EClaw/issues/2678)) ([fba91fc](https://github.com/HankHuang0516/EClaw/commit/fba91fca15402b453a0db5ee857c0b16e6087055))
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **petdx:** drop dark-grey loading placeholder + preload sprite WEBP ([#2628](https://github.com/HankHuang0516/EClaw/issues/2628)) ([59cef38](https://github.com/HankHuang0516/EClaw/commit/59cef387bd69ca99d7d15c86a1364856d3849ad8)), closes [#1a1a1a](https://github.com/HankHuang0516/EClaw/issues/1a1a1a)
* **entities:** expose botSecret to owner so wallpaper service can poll companions ([#2615](https://github.com/HankHuang0516/EClaw/issues/2615)) ([04470fc](https://github.com/HankHuang0516/EClaw/commit/04470fce8f8c3fce2b1ba8b243e776606f107502))
* **rental:** expose owner_public_code in marketplace so plaza CTA can route ([#2616](https://github.com/HankHuang0516/EClaw/issues/2616)) ([4d1372f](https://github.com/HankHuang0516/EClaw/commit/4d1372f717d93cab65543e87c852e74e9fb67071)), closes [#2610](https://github.com/HankHuang0516/EClaw/issues/2610)
* **portal:** fit embedded org chart to mobile viewport ([#2674](https://github.com/HankHuang0516/EClaw/issues/2674)) ([1c4e1b4](https://github.com/HankHuang0516/EClaw/commit/1c4e1b413ea7027b4cd4b8ecda981b0d0e12e66b))
* **mention-parser:** ignore @-mentions inside markdown code spans ([#2645](https://github.com/HankHuang0516/EClaw/issues/2645)) ([8da19d4](https://github.com/HankHuang0516/EClaw/commit/8da19d4a79ceb4152bf2144ee0847c61ce3e1def)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **kanban:** lazy-load dependency chips via IntersectionObserver ([#2632](https://github.com/HankHuang0516/EClaw/issues/2632)) ([20586b4](https://github.com/HankHuang0516/EClaw/commit/20586b43357335f9eb6a190c02d58c8e36b58aba)), closes [#2631](https://github.com/HankHuang0516/EClaw/issues/2631)
* **wallpaper:** off-load spritesheet fetch to IO so per-petdx sprites actually render ([#2618](https://github.com/HankHuang0516/EClaw/issues/2618)) ([61b832c](https://github.com/HankHuang0516/EClaw/commit/61b832c9fa8a1d0caab810ccc942d85c63349267)), closes [#2615](https://github.com/HankHuang0516/EClaw/issues/2615) [#2577](https://github.com/HankHuang0516/EClaw/issues/2577)
* **i18n:** positional format specifiers for feedback_result_logs (7 locales) ([#2597](https://github.com/HankHuang0516/EClaw/issues/2597)) ([21aedc7](https://github.com/HankHuang0516/EClaw/commit/21aedc7eebc7a2839e340136f38dfdfd4dabb9dc))
* **avatar-petdx:** preserve descriptor across transient API failures (flicker) ([#2625](https://github.com/HankHuang0516/EClaw/issues/2625)) ([7b1c606](https://github.com/HankHuang0516/EClaw/commit/7b1c606514f7698d72ec95cf6c556e4043966186))
* **chat:** preserve scroll anchor while reading history ([#2693](https://github.com/HankHuang0516/EClaw/issues/2693)) ([945fdb7](https://github.com/HankHuang0516/EClaw/commit/945fdb7192b791b31882e1e75568dd8b11e4686f))
* **promo:** pull video embed from /promo-chat-avatar.html ([#2724](https://github.com/HankHuang0516/EClaw/issues/2724)) ([2afabc8](https://github.com/HankHuang0516/EClaw/commit/2afabc8c5ff8b25218a7cb857e8adfa572c8e9d5))
* **portal:** reduce QA-discovered request fanout ([#2656](https://github.com/HankHuang0516/EClaw/issues/2656)) ([1e46d6b](https://github.com/HankHuang0516/EClaw/commit/1e46d6bab61e58c65b452b6503d953f8dddeee75))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **portal:** remove org chart fit scale floor ([#2676](https://github.com/HankHuang0516/EClaw/issues/2676)) ([0f01606](https://github.com/HankHuang0516/EClaw/commit/0f016068b963bb5f800a02f28817c7174979d913))
* **i18n:** rename mm_empty_title → mm_state_empty_title in mindmap.html ([#2683](https://github.com/HankHuang0516/EClaw/issues/2683)) ([c79c109](https://github.com/HankHuang0516/EClaw/commit/c79c109bea23142e8a6d9ace976d105af1280ec9))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **chat:** render mention avatars with companion renderer ([#2633](https://github.com/HankHuang0516/EClaw/issues/2633)) ([03e205f](https://github.com/HankHuang0516/EClaw/commit/03e205f663ecd2c2f443d4009dd5af0093f0bbbb))
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* scheduled audit 2026-05-13 — 6 bugs, XSS, i18n ([#2668](https://github.com/HankHuang0516/EClaw/issues/2668)) ([21dd513](https://github.com/HankHuang0516/EClaw/commit/21dd513b4464738de29164265437435ba6cc4817)), closes [#2605](https://github.com/HankHuang0516/EClaw/issues/2605) [#2608](https://github.com/HankHuang0516/EClaw/issues/2608) [#2600](https://github.com/HankHuang0516/EClaw/issues/2600) [#2599](https://github.com/HankHuang0516/EClaw/issues/2599) [#2598](https://github.com/HankHuang0516/EClaw/issues/2598)
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **chat:** smart-chip preview falls back to inline c.comments when /comments fails (PR [#2677](https://github.com/HankHuang0516/EClaw/issues/2677)) ([7f4dffd](https://github.com/HankHuang0516/EClaw/commit/7f4dffd2c83ea86f296b8fa0610f0e67c9f1af11))
* **wallpaper:** stop Android live wallpaper flashing default lobster on companion change ([#2629](https://github.com/HankHuang0516/EClaw/issues/2629)) ([8b4f66f](https://github.com/HankHuang0516/EClaw/commit/8b4f66fcb335bf43128f924b761b6337c817095b)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **app:** WebView pages honor app-selected locale via ?lang= URL param ([#2672](https://github.com/HankHuang0516/EClaw/issues/2672)) ([8ed8757](https://github.com/HankHuang0516/EClaw/commit/8ed8757aec5bf214e837cc0d81bf2b23f1993a91)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* **community:** 1-click chat button on bot cards + utm tagging ([#2610](https://github.com/HankHuang0516/EClaw/issues/2610)) ([eee97b0](https://github.com/HankHuang0516/EClaw/commit/eee97b0e2e4e74945ec24f218a69a52800b97a66))
* **chat:** add avatar size preference ([#2714](https://github.com/HankHuang0516/EClaw/issues/2714)) ([6fe164a](https://github.com/HankHuang0516/EClaw/commit/6fe164ad8b22fa576d2dd9ad37c0d9fc295b5a83))
* **dashboard:** add Claude and Codex channel guides ([#2640](https://github.com/HankHuang0516/EClaw/issues/2640)) ([c64e4c4](https://github.com/HankHuang0516/EClaw/commit/c64e4c4afc78db58c5cd578f00486dd7b2fd3311))
* **dashboard:** add Claude Code channel guide card ([#2667](https://github.com/HankHuang0516/EClaw/issues/2667)) ([d70d75c](https://github.com/HankHuang0516/EClaw/commit/d70d75c0c8caa8a540358a9aab4556b8c1927a5c))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* **portal:** add entity selector to petdx-browser ([#2602](https://github.com/HankHuang0516/EClaw/issues/2602)) ([3fa067e](https://github.com/HankHuang0516/EClaw/commit/3fa067e00b38829b48a37cecd33ee81a9a1122d9))
* **mindmap:** add GET /api/mindmap/graph force-graph projection ([#2680](https://github.com/HankHuang0516/EClaw/issues/2680)) ([a00b2e7](https://github.com/HankHuang0516/EClaw/commit/a00b2e775af2c4c98cd157f760ad87aeeee469f0)), closes [#2679](https://github.com/HankHuang0516/EClaw/issues/2679) [#2679](https://github.com/HankHuang0516/EClaw/issues/2679)
* **dashboard:** add Hermes channel promo card ([#2708](https://github.com/HankHuang0516/EClaw/issues/2708)) ([337aca1](https://github.com/HankHuang0516/EClaw/commit/337aca153d5a1cd7e888c065f00ae54db7872d91))
* **portal:** add Nagoya 5D4N trip static cross-ref page ([#2689](https://github.com/HankHuang0516/EClaw/issues/2689)) ([2e0efb6](https://github.com/HankHuang0516/EClaw/commit/2e0efb6dcdaff52226cc8854a96747000b12bdff))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **companion:** bridge crafter-station/petdex gallery (1784 pets) ([#2601](https://github.com/HankHuang0516/EClaw/issues/2601)) ([2e245be](https://github.com/HankHuang0516/EClaw/commit/2e245bea6dd47ea7361b927d389188a3c23b6bb3))
* **promo:** chat avatar size feature landing page (self-hosted MP4) ([#2722](https://github.com/HankHuang0516/EClaw/issues/2722)) ([3852210](https://github.com/HankHuang0516/EClaw/commit/3852210d355704d018e3daca6b5f9512a011b210)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **mindmap:** mission.html link to /portal/mindmap.html + deprecate /api/mission/mindmap ([#2685](https://github.com/HankHuang0516/EClaw/issues/2685)) ([11e297b](https://github.com/HankHuang0516/EClaw/commit/11e297bab1c9b56fcde3027d6500b7c58891bf18)), closes [#2680](https://github.com/HankHuang0516/EClaw/issues/2680) [#2684](https://github.com/HankHuang0516/EClaw/issues/2684)
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **avatar:** petdx render on card-holder my-cards (Phase 1b) ([#2621](https://github.com/HankHuang0516/EClaw/issues/2621)) ([f78ba8b](https://github.com/HankHuang0516/EClaw/commit/f78ba8b18acc426936ab6d8a82ca7541effea00d))
* **avatar:** petdx render on dashboard entity grid / org chart / bindings (Phase 1b) ([#2622](https://github.com/HankHuang0516/EClaw/issues/2622)) ([f417749](https://github.com/HankHuang0516/EClaw/commit/f41774914451048e8cd76e9ae30416a0642e173b)), closes [#2620](https://github.com/HankHuang0516/EClaw/issues/2620) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621)
* **avatar:** petdx render on kanban auto-assign / pulse / comment avatars (Phase 1b) ([#2624](https://github.com/HankHuang0516/EClaw/issues/2624)) ([6bff5f8](https://github.com/HankHuang0516/EClaw/commit/6bff5f80440d0bd91a6b1721cde9478d685c4d46))
* **avatar:** petdx render on mission skill/rule/soul entity dialogs (Phase 1b) ([#2623](https://github.com/HankHuang0516/EClaw/issues/2623)) ([129327b](https://github.com/HankHuang0516/EClaw/commit/129327bc7b91056659f1ab7e8d5e3f5260d951fb))
* **mindmap:** portal/mindmap.html force-graph prototype ([#129](https://github.com/HankHuang0516/EClaw/issues/129)) ([#2681](https://github.com/HankHuang0516/EClaw/issues/2681)) ([0f15e69](https://github.com/HankHuang0516/EClaw/commit/0f15e6930f0697c37fa08f3219edb8f9e499837f)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **portal:** redo nagoya trip page in professional tour-guide style ([#2691](https://github.com/HankHuang0516/EClaw/issues/2691)) ([b2378c0](https://github.com/HankHuang0516/EClaw/commit/b2378c06ee20fa9cccfdceceb1a4c9e0b3072f59))
* **avatar:** render selected petdx companion in chat avatars ([#2620](https://github.com/HankHuang0516/EClaw/issues/2620)) ([0bdd046](https://github.com/HankHuang0516/EClaw/commit/0bdd046fe1b1c428e32edda366ff112c08927f4c))
* **home:** replace native home with WebView hosting dashboard.html ([#2634](https://github.com/HankHuang0516/EClaw/issues/2634)) ([e69ea81](https://github.com/HankHuang0516/EClaw/commit/e69ea8160c239b083a83d6dc83a4f1c3f901c863))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **share-chat:** twitter card + per-bot og:image/twitter:* in SSR ([#2609](https://github.com/HankHuang0516/EClaw/issues/2609)) ([6cdc853](https://github.com/HankHuang0516/EClaw/commit/6cdc853dc884cdb95bd47214942768981f218ae0))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))
* **settings:** wire petdx avatar into channel-account chips ([#2626](https://github.com/HankHuang0516/EClaw/issues/2626)) ([88aec77](https://github.com/HankHuang0516/EClaw/commit/88aec772628c240e97b336bb5820892ad632d1ae))
* **files:** wire petdx avatar into entity filter & per-file badges ([#2627](https://github.com/HankHuang0516/EClaw/issues/2627)) ([5b3e5cc](https://github.com/HankHuang0516/EClaw/commit/5b3e5cc542d9da69bb4e92500fd03a542ea33f00))
* **mindmap:** wrap hardcoded zh-TW UI strings with i18n t() ([#2607](https://github.com/HankHuang0516/EClaw/issues/2607)) ([166af87](https://github.com/HankHuang0516/EClaw/commit/166af8772b2121a24aaf34a83b3de970e9b3b571)), closes [#2606](https://github.com/HankHuang0516/EClaw/issues/2606)


### Performance Improvements

* **mindmap:** force-graph hardening for 1000/2000-node graphs ([#2684](https://github.com/HankHuang0516/EClaw/issues/2684)) ([da8b1c8](https://github.com/HankHuang0516/EClaw/commit/da8b1c8f947ab8bc8fa455c1962a91146623a1fc))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-13)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **notifications:** add kanban_done + kanban_done_auto toggles to Android Settings ([#2636](https://github.com/HankHuang0516/EClaw/issues/2636)) ([a710909](https://github.com/HankHuang0516/EClaw/commit/a7109095e3393b8564e7ef1b23d382a4fbb944b8))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **kanban:** comment input no longer overlaps last comment in card detail (PR [#2678](https://github.com/HankHuang0516/EClaw/issues/2678)) ([fba91fc](https://github.com/HankHuang0516/EClaw/commit/fba91fca15402b453a0db5ee857c0b16e6087055))
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **petdx:** drop dark-grey loading placeholder + preload sprite WEBP ([#2628](https://github.com/HankHuang0516/EClaw/issues/2628)) ([59cef38](https://github.com/HankHuang0516/EClaw/commit/59cef387bd69ca99d7d15c86a1364856d3849ad8)), closes [#1a1a1a](https://github.com/HankHuang0516/EClaw/issues/1a1a1a)
* **entities:** expose botSecret to owner so wallpaper service can poll companions ([#2615](https://github.com/HankHuang0516/EClaw/issues/2615)) ([04470fc](https://github.com/HankHuang0516/EClaw/commit/04470fce8f8c3fce2b1ba8b243e776606f107502))
* **rental:** expose owner_public_code in marketplace so plaza CTA can route ([#2616](https://github.com/HankHuang0516/EClaw/issues/2616)) ([4d1372f](https://github.com/HankHuang0516/EClaw/commit/4d1372f717d93cab65543e87c852e74e9fb67071)), closes [#2610](https://github.com/HankHuang0516/EClaw/issues/2610)
* **portal:** fit embedded org chart to mobile viewport ([#2674](https://github.com/HankHuang0516/EClaw/issues/2674)) ([1c4e1b4](https://github.com/HankHuang0516/EClaw/commit/1c4e1b413ea7027b4cd4b8ecda981b0d0e12e66b))
* **mention-parser:** ignore @-mentions inside markdown code spans ([#2645](https://github.com/HankHuang0516/EClaw/issues/2645)) ([8da19d4](https://github.com/HankHuang0516/EClaw/commit/8da19d4a79ceb4152bf2144ee0847c61ce3e1def)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **kanban:** lazy-load dependency chips via IntersectionObserver ([#2632](https://github.com/HankHuang0516/EClaw/issues/2632)) ([20586b4](https://github.com/HankHuang0516/EClaw/commit/20586b43357335f9eb6a190c02d58c8e36b58aba)), closes [#2631](https://github.com/HankHuang0516/EClaw/issues/2631)
* **wallpaper:** off-load spritesheet fetch to IO so per-petdx sprites actually render ([#2618](https://github.com/HankHuang0516/EClaw/issues/2618)) ([61b832c](https://github.com/HankHuang0516/EClaw/commit/61b832c9fa8a1d0caab810ccc942d85c63349267)), closes [#2615](https://github.com/HankHuang0516/EClaw/issues/2615) [#2577](https://github.com/HankHuang0516/EClaw/issues/2577)
* **i18n:** positional format specifiers for feedback_result_logs (7 locales) ([#2597](https://github.com/HankHuang0516/EClaw/issues/2597)) ([21aedc7](https://github.com/HankHuang0516/EClaw/commit/21aedc7eebc7a2839e340136f38dfdfd4dabb9dc))
* **avatar-petdx:** preserve descriptor across transient API failures (flicker) ([#2625](https://github.com/HankHuang0516/EClaw/issues/2625)) ([7b1c606](https://github.com/HankHuang0516/EClaw/commit/7b1c606514f7698d72ec95cf6c556e4043966186))
* **chat:** preserve scroll anchor while reading history ([#2693](https://github.com/HankHuang0516/EClaw/issues/2693)) ([945fdb7](https://github.com/HankHuang0516/EClaw/commit/945fdb7192b791b31882e1e75568dd8b11e4686f))
* **portal:** reduce QA-discovered request fanout ([#2656](https://github.com/HankHuang0516/EClaw/issues/2656)) ([1e46d6b](https://github.com/HankHuang0516/EClaw/commit/1e46d6bab61e58c65b452b6503d953f8dddeee75))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **portal:** remove org chart fit scale floor ([#2676](https://github.com/HankHuang0516/EClaw/issues/2676)) ([0f01606](https://github.com/HankHuang0516/EClaw/commit/0f016068b963bb5f800a02f28817c7174979d913))
* **i18n:** rename mm_empty_title → mm_state_empty_title in mindmap.html ([#2683](https://github.com/HankHuang0516/EClaw/issues/2683)) ([c79c109](https://github.com/HankHuang0516/EClaw/commit/c79c109bea23142e8a6d9ace976d105af1280ec9))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **chat:** render mention avatars with companion renderer ([#2633](https://github.com/HankHuang0516/EClaw/issues/2633)) ([03e205f](https://github.com/HankHuang0516/EClaw/commit/03e205f663ecd2c2f443d4009dd5af0093f0bbbb))
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* scheduled audit 2026-05-13 — 6 bugs, XSS, i18n ([#2668](https://github.com/HankHuang0516/EClaw/issues/2668)) ([21dd513](https://github.com/HankHuang0516/EClaw/commit/21dd513b4464738de29164265437435ba6cc4817)), closes [#2605](https://github.com/HankHuang0516/EClaw/issues/2605) [#2608](https://github.com/HankHuang0516/EClaw/issues/2608) [#2600](https://github.com/HankHuang0516/EClaw/issues/2600) [#2599](https://github.com/HankHuang0516/EClaw/issues/2599) [#2598](https://github.com/HankHuang0516/EClaw/issues/2598)
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **chat:** smart-chip preview falls back to inline c.comments when /comments fails (PR [#2677](https://github.com/HankHuang0516/EClaw/issues/2677)) ([7f4dffd](https://github.com/HankHuang0516/EClaw/commit/7f4dffd2c83ea86f296b8fa0610f0e67c9f1af11))
* **wallpaper:** stop Android live wallpaper flashing default lobster on companion change ([#2629](https://github.com/HankHuang0516/EClaw/issues/2629)) ([8b4f66f](https://github.com/HankHuang0516/EClaw/commit/8b4f66fcb335bf43128f924b761b6337c817095b)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **app:** WebView pages honor app-selected locale via ?lang= URL param ([#2672](https://github.com/HankHuang0516/EClaw/issues/2672)) ([8ed8757](https://github.com/HankHuang0516/EClaw/commit/8ed8757aec5bf214e837cc0d81bf2b23f1993a91)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* **community:** 1-click chat button on bot cards + utm tagging ([#2610](https://github.com/HankHuang0516/EClaw/issues/2610)) ([eee97b0](https://github.com/HankHuang0516/EClaw/commit/eee97b0e2e4e74945ec24f218a69a52800b97a66))
* **chat:** add avatar size preference ([#2714](https://github.com/HankHuang0516/EClaw/issues/2714)) ([6fe164a](https://github.com/HankHuang0516/EClaw/commit/6fe164ad8b22fa576d2dd9ad37c0d9fc295b5a83))
* **dashboard:** add Claude and Codex channel guides ([#2640](https://github.com/HankHuang0516/EClaw/issues/2640)) ([c64e4c4](https://github.com/HankHuang0516/EClaw/commit/c64e4c4afc78db58c5cd578f00486dd7b2fd3311))
* **dashboard:** add Claude Code channel guide card ([#2667](https://github.com/HankHuang0516/EClaw/issues/2667)) ([d70d75c](https://github.com/HankHuang0516/EClaw/commit/d70d75c0c8caa8a540358a9aab4556b8c1927a5c))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* **portal:** add entity selector to petdx-browser ([#2602](https://github.com/HankHuang0516/EClaw/issues/2602)) ([3fa067e](https://github.com/HankHuang0516/EClaw/commit/3fa067e00b38829b48a37cecd33ee81a9a1122d9))
* **mindmap:** add GET /api/mindmap/graph force-graph projection ([#2680](https://github.com/HankHuang0516/EClaw/issues/2680)) ([a00b2e7](https://github.com/HankHuang0516/EClaw/commit/a00b2e775af2c4c98cd157f760ad87aeeee469f0)), closes [#2679](https://github.com/HankHuang0516/EClaw/issues/2679) [#2679](https://github.com/HankHuang0516/EClaw/issues/2679)
* **dashboard:** add Hermes channel promo card ([#2708](https://github.com/HankHuang0516/EClaw/issues/2708)) ([337aca1](https://github.com/HankHuang0516/EClaw/commit/337aca153d5a1cd7e888c065f00ae54db7872d91))
* **portal:** add Nagoya 5D4N trip static cross-ref page ([#2689](https://github.com/HankHuang0516/EClaw/issues/2689)) ([2e0efb6](https://github.com/HankHuang0516/EClaw/commit/2e0efb6dcdaff52226cc8854a96747000b12bdff))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **companion:** bridge crafter-station/petdex gallery (1784 pets) ([#2601](https://github.com/HankHuang0516/EClaw/issues/2601)) ([2e245be](https://github.com/HankHuang0516/EClaw/commit/2e245bea6dd47ea7361b927d389188a3c23b6bb3))
* **promo:** chat avatar size feature landing page (self-hosted MP4) ([#2722](https://github.com/HankHuang0516/EClaw/issues/2722)) ([3852210](https://github.com/HankHuang0516/EClaw/commit/3852210d355704d018e3daca6b5f9512a011b210)), closes [#2714](https://github.com/HankHuang0516/EClaw/issues/2714)
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **mindmap:** mission.html link to /portal/mindmap.html + deprecate /api/mission/mindmap ([#2685](https://github.com/HankHuang0516/EClaw/issues/2685)) ([11e297b](https://github.com/HankHuang0516/EClaw/commit/11e297bab1c9b56fcde3027d6500b7c58891bf18)), closes [#2680](https://github.com/HankHuang0516/EClaw/issues/2680) [#2684](https://github.com/HankHuang0516/EClaw/issues/2684)
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **avatar:** petdx render on card-holder my-cards (Phase 1b) ([#2621](https://github.com/HankHuang0516/EClaw/issues/2621)) ([f78ba8b](https://github.com/HankHuang0516/EClaw/commit/f78ba8b18acc426936ab6d8a82ca7541effea00d))
* **avatar:** petdx render on dashboard entity grid / org chart / bindings (Phase 1b) ([#2622](https://github.com/HankHuang0516/EClaw/issues/2622)) ([f417749](https://github.com/HankHuang0516/EClaw/commit/f41774914451048e8cd76e9ae30416a0642e173b)), closes [#2620](https://github.com/HankHuang0516/EClaw/issues/2620) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621)
* **avatar:** petdx render on kanban auto-assign / pulse / comment avatars (Phase 1b) ([#2624](https://github.com/HankHuang0516/EClaw/issues/2624)) ([6bff5f8](https://github.com/HankHuang0516/EClaw/commit/6bff5f80440d0bd91a6b1721cde9478d685c4d46))
* **avatar:** petdx render on mission skill/rule/soul entity dialogs (Phase 1b) ([#2623](https://github.com/HankHuang0516/EClaw/issues/2623)) ([129327b](https://github.com/HankHuang0516/EClaw/commit/129327bc7b91056659f1ab7e8d5e3f5260d951fb))
* **mindmap:** portal/mindmap.html force-graph prototype ([#129](https://github.com/HankHuang0516/EClaw/issues/129)) ([#2681](https://github.com/HankHuang0516/EClaw/issues/2681)) ([0f15e69](https://github.com/HankHuang0516/EClaw/commit/0f15e6930f0697c37fa08f3219edb8f9e499837f)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **portal:** redo nagoya trip page in professional tour-guide style ([#2691](https://github.com/HankHuang0516/EClaw/issues/2691)) ([b2378c0](https://github.com/HankHuang0516/EClaw/commit/b2378c06ee20fa9cccfdceceb1a4c9e0b3072f59))
* **avatar:** render selected petdx companion in chat avatars ([#2620](https://github.com/HankHuang0516/EClaw/issues/2620)) ([0bdd046](https://github.com/HankHuang0516/EClaw/commit/0bdd046fe1b1c428e32edda366ff112c08927f4c))
* **home:** replace native home with WebView hosting dashboard.html ([#2634](https://github.com/HankHuang0516/EClaw/issues/2634)) ([e69ea81](https://github.com/HankHuang0516/EClaw/commit/e69ea8160c239b083a83d6dc83a4f1c3f901c863))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **share-chat:** twitter card + per-bot og:image/twitter:* in SSR ([#2609](https://github.com/HankHuang0516/EClaw/issues/2609)) ([6cdc853](https://github.com/HankHuang0516/EClaw/commit/6cdc853dc884cdb95bd47214942768981f218ae0))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))
* **settings:** wire petdx avatar into channel-account chips ([#2626](https://github.com/HankHuang0516/EClaw/issues/2626)) ([88aec77](https://github.com/HankHuang0516/EClaw/commit/88aec772628c240e97b336bb5820892ad632d1ae))
* **files:** wire petdx avatar into entity filter & per-file badges ([#2627](https://github.com/HankHuang0516/EClaw/issues/2627)) ([5b3e5cc](https://github.com/HankHuang0516/EClaw/commit/5b3e5cc542d9da69bb4e92500fd03a542ea33f00))
* **mindmap:** wrap hardcoded zh-TW UI strings with i18n t() ([#2607](https://github.com/HankHuang0516/EClaw/issues/2607)) ([166af87](https://github.com/HankHuang0516/EClaw/commit/166af8772b2121a24aaf34a83b3de970e9b3b571)), closes [#2606](https://github.com/HankHuang0516/EClaw/issues/2606)


### Performance Improvements

* **mindmap:** force-graph hardening for 1000/2000-node graphs ([#2684](https://github.com/HankHuang0516/EClaw/issues/2684)) ([da8b1c8](https://github.com/HankHuang0516/EClaw/commit/da8b1c8f947ab8bc8fa455c1962a91146623a1fc))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-13)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **notifications:** add kanban_done + kanban_done_auto toggles to Android Settings ([#2636](https://github.com/HankHuang0516/EClaw/issues/2636)) ([a710909](https://github.com/HankHuang0516/EClaw/commit/a7109095e3393b8564e7ef1b23d382a4fbb944b8))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **kanban:** comment input no longer overlaps last comment in card detail (PR [#2678](https://github.com/HankHuang0516/EClaw/issues/2678)) ([fba91fc](https://github.com/HankHuang0516/EClaw/commit/fba91fca15402b453a0db5ee857c0b16e6087055))
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **petdx:** drop dark-grey loading placeholder + preload sprite WEBP ([#2628](https://github.com/HankHuang0516/EClaw/issues/2628)) ([59cef38](https://github.com/HankHuang0516/EClaw/commit/59cef387bd69ca99d7d15c86a1364856d3849ad8)), closes [#1a1a1a](https://github.com/HankHuang0516/EClaw/issues/1a1a1a)
* **entities:** expose botSecret to owner so wallpaper service can poll companions ([#2615](https://github.com/HankHuang0516/EClaw/issues/2615)) ([04470fc](https://github.com/HankHuang0516/EClaw/commit/04470fce8f8c3fce2b1ba8b243e776606f107502))
* **rental:** expose owner_public_code in marketplace so plaza CTA can route ([#2616](https://github.com/HankHuang0516/EClaw/issues/2616)) ([4d1372f](https://github.com/HankHuang0516/EClaw/commit/4d1372f717d93cab65543e87c852e74e9fb67071)), closes [#2610](https://github.com/HankHuang0516/EClaw/issues/2610)
* **portal:** fit embedded org chart to mobile viewport ([#2674](https://github.com/HankHuang0516/EClaw/issues/2674)) ([1c4e1b4](https://github.com/HankHuang0516/EClaw/commit/1c4e1b413ea7027b4cd4b8ecda981b0d0e12e66b))
* **mention-parser:** ignore @-mentions inside markdown code spans ([#2645](https://github.com/HankHuang0516/EClaw/issues/2645)) ([8da19d4](https://github.com/HankHuang0516/EClaw/commit/8da19d4a79ceb4152bf2144ee0847c61ce3e1def)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **kanban:** lazy-load dependency chips via IntersectionObserver ([#2632](https://github.com/HankHuang0516/EClaw/issues/2632)) ([20586b4](https://github.com/HankHuang0516/EClaw/commit/20586b43357335f9eb6a190c02d58c8e36b58aba)), closes [#2631](https://github.com/HankHuang0516/EClaw/issues/2631)
* **wallpaper:** off-load spritesheet fetch to IO so per-petdx sprites actually render ([#2618](https://github.com/HankHuang0516/EClaw/issues/2618)) ([61b832c](https://github.com/HankHuang0516/EClaw/commit/61b832c9fa8a1d0caab810ccc942d85c63349267)), closes [#2615](https://github.com/HankHuang0516/EClaw/issues/2615) [#2577](https://github.com/HankHuang0516/EClaw/issues/2577)
* **i18n:** positional format specifiers for feedback_result_logs (7 locales) ([#2597](https://github.com/HankHuang0516/EClaw/issues/2597)) ([21aedc7](https://github.com/HankHuang0516/EClaw/commit/21aedc7eebc7a2839e340136f38dfdfd4dabb9dc))
* **avatar-petdx:** preserve descriptor across transient API failures (flicker) ([#2625](https://github.com/HankHuang0516/EClaw/issues/2625)) ([7b1c606](https://github.com/HankHuang0516/EClaw/commit/7b1c606514f7698d72ec95cf6c556e4043966186))
* **chat:** preserve scroll anchor while reading history ([#2693](https://github.com/HankHuang0516/EClaw/issues/2693)) ([945fdb7](https://github.com/HankHuang0516/EClaw/commit/945fdb7192b791b31882e1e75568dd8b11e4686f))
* **portal:** reduce QA-discovered request fanout ([#2656](https://github.com/HankHuang0516/EClaw/issues/2656)) ([1e46d6b](https://github.com/HankHuang0516/EClaw/commit/1e46d6bab61e58c65b452b6503d953f8dddeee75))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **portal:** remove org chart fit scale floor ([#2676](https://github.com/HankHuang0516/EClaw/issues/2676)) ([0f01606](https://github.com/HankHuang0516/EClaw/commit/0f016068b963bb5f800a02f28817c7174979d913))
* **i18n:** rename mm_empty_title → mm_state_empty_title in mindmap.html ([#2683](https://github.com/HankHuang0516/EClaw/issues/2683)) ([c79c109](https://github.com/HankHuang0516/EClaw/commit/c79c109bea23142e8a6d9ace976d105af1280ec9))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **chat:** render mention avatars with companion renderer ([#2633](https://github.com/HankHuang0516/EClaw/issues/2633)) ([03e205f](https://github.com/HankHuang0516/EClaw/commit/03e205f663ecd2c2f443d4009dd5af0093f0bbbb))
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* scheduled audit 2026-05-13 — 6 bugs, XSS, i18n ([#2668](https://github.com/HankHuang0516/EClaw/issues/2668)) ([21dd513](https://github.com/HankHuang0516/EClaw/commit/21dd513b4464738de29164265437435ba6cc4817)), closes [#2605](https://github.com/HankHuang0516/EClaw/issues/2605) [#2608](https://github.com/HankHuang0516/EClaw/issues/2608) [#2600](https://github.com/HankHuang0516/EClaw/issues/2600) [#2599](https://github.com/HankHuang0516/EClaw/issues/2599) [#2598](https://github.com/HankHuang0516/EClaw/issues/2598)
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **chat:** smart-chip preview falls back to inline c.comments when /comments fails (PR [#2677](https://github.com/HankHuang0516/EClaw/issues/2677)) ([7f4dffd](https://github.com/HankHuang0516/EClaw/commit/7f4dffd2c83ea86f296b8fa0610f0e67c9f1af11))
* **wallpaper:** stop Android live wallpaper flashing default lobster on companion change ([#2629](https://github.com/HankHuang0516/EClaw/issues/2629)) ([8b4f66f](https://github.com/HankHuang0516/EClaw/commit/8b4f66fcb335bf43128f924b761b6337c817095b)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **app:** WebView pages honor app-selected locale via ?lang= URL param ([#2672](https://github.com/HankHuang0516/EClaw/issues/2672)) ([8ed8757](https://github.com/HankHuang0516/EClaw/commit/8ed8757aec5bf214e837cc0d81bf2b23f1993a91)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* **community:** 1-click chat button on bot cards + utm tagging ([#2610](https://github.com/HankHuang0516/EClaw/issues/2610)) ([eee97b0](https://github.com/HankHuang0516/EClaw/commit/eee97b0e2e4e74945ec24f218a69a52800b97a66))
* **chat:** add avatar size preference ([#2714](https://github.com/HankHuang0516/EClaw/issues/2714)) ([6fe164a](https://github.com/HankHuang0516/EClaw/commit/6fe164ad8b22fa576d2dd9ad37c0d9fc295b5a83))
* **dashboard:** add Claude and Codex channel guides ([#2640](https://github.com/HankHuang0516/EClaw/issues/2640)) ([c64e4c4](https://github.com/HankHuang0516/EClaw/commit/c64e4c4afc78db58c5cd578f00486dd7b2fd3311))
* **dashboard:** add Claude Code channel guide card ([#2667](https://github.com/HankHuang0516/EClaw/issues/2667)) ([d70d75c](https://github.com/HankHuang0516/EClaw/commit/d70d75c0c8caa8a540358a9aab4556b8c1927a5c))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* **portal:** add entity selector to petdx-browser ([#2602](https://github.com/HankHuang0516/EClaw/issues/2602)) ([3fa067e](https://github.com/HankHuang0516/EClaw/commit/3fa067e00b38829b48a37cecd33ee81a9a1122d9))
* **mindmap:** add GET /api/mindmap/graph force-graph projection ([#2680](https://github.com/HankHuang0516/EClaw/issues/2680)) ([a00b2e7](https://github.com/HankHuang0516/EClaw/commit/a00b2e775af2c4c98cd157f760ad87aeeee469f0)), closes [#2679](https://github.com/HankHuang0516/EClaw/issues/2679) [#2679](https://github.com/HankHuang0516/EClaw/issues/2679)
* **dashboard:** add Hermes channel promo card ([#2708](https://github.com/HankHuang0516/EClaw/issues/2708)) ([337aca1](https://github.com/HankHuang0516/EClaw/commit/337aca153d5a1cd7e888c065f00ae54db7872d91))
* **portal:** add Nagoya 5D4N trip static cross-ref page ([#2689](https://github.com/HankHuang0516/EClaw/issues/2689)) ([2e0efb6](https://github.com/HankHuang0516/EClaw/commit/2e0efb6dcdaff52226cc8854a96747000b12bdff))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **companion:** bridge crafter-station/petdex gallery (1784 pets) ([#2601](https://github.com/HankHuang0516/EClaw/issues/2601)) ([2e245be](https://github.com/HankHuang0516/EClaw/commit/2e245bea6dd47ea7361b927d389188a3c23b6bb3))
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **mindmap:** mission.html link to /portal/mindmap.html + deprecate /api/mission/mindmap ([#2685](https://github.com/HankHuang0516/EClaw/issues/2685)) ([11e297b](https://github.com/HankHuang0516/EClaw/commit/11e297bab1c9b56fcde3027d6500b7c58891bf18)), closes [#2680](https://github.com/HankHuang0516/EClaw/issues/2680) [#2684](https://github.com/HankHuang0516/EClaw/issues/2684)
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **avatar:** petdx render on card-holder my-cards (Phase 1b) ([#2621](https://github.com/HankHuang0516/EClaw/issues/2621)) ([f78ba8b](https://github.com/HankHuang0516/EClaw/commit/f78ba8b18acc426936ab6d8a82ca7541effea00d))
* **avatar:** petdx render on dashboard entity grid / org chart / bindings (Phase 1b) ([#2622](https://github.com/HankHuang0516/EClaw/issues/2622)) ([f417749](https://github.com/HankHuang0516/EClaw/commit/f41774914451048e8cd76e9ae30416a0642e173b)), closes [#2620](https://github.com/HankHuang0516/EClaw/issues/2620) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621)
* **avatar:** petdx render on kanban auto-assign / pulse / comment avatars (Phase 1b) ([#2624](https://github.com/HankHuang0516/EClaw/issues/2624)) ([6bff5f8](https://github.com/HankHuang0516/EClaw/commit/6bff5f80440d0bd91a6b1721cde9478d685c4d46))
* **avatar:** petdx render on mission skill/rule/soul entity dialogs (Phase 1b) ([#2623](https://github.com/HankHuang0516/EClaw/issues/2623)) ([129327b](https://github.com/HankHuang0516/EClaw/commit/129327bc7b91056659f1ab7e8d5e3f5260d951fb))
* **mindmap:** portal/mindmap.html force-graph prototype ([#129](https://github.com/HankHuang0516/EClaw/issues/129)) ([#2681](https://github.com/HankHuang0516/EClaw/issues/2681)) ([0f15e69](https://github.com/HankHuang0516/EClaw/commit/0f15e6930f0697c37fa08f3219edb8f9e499837f)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **portal:** redo nagoya trip page in professional tour-guide style ([#2691](https://github.com/HankHuang0516/EClaw/issues/2691)) ([b2378c0](https://github.com/HankHuang0516/EClaw/commit/b2378c06ee20fa9cccfdceceb1a4c9e0b3072f59))
* **avatar:** render selected petdx companion in chat avatars ([#2620](https://github.com/HankHuang0516/EClaw/issues/2620)) ([0bdd046](https://github.com/HankHuang0516/EClaw/commit/0bdd046fe1b1c428e32edda366ff112c08927f4c))
* **home:** replace native home with WebView hosting dashboard.html ([#2634](https://github.com/HankHuang0516/EClaw/issues/2634)) ([e69ea81](https://github.com/HankHuang0516/EClaw/commit/e69ea8160c239b083a83d6dc83a4f1c3f901c863))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **share-chat:** twitter card + per-bot og:image/twitter:* in SSR ([#2609](https://github.com/HankHuang0516/EClaw/issues/2609)) ([6cdc853](https://github.com/HankHuang0516/EClaw/commit/6cdc853dc884cdb95bd47214942768981f218ae0))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))
* **settings:** wire petdx avatar into channel-account chips ([#2626](https://github.com/HankHuang0516/EClaw/issues/2626)) ([88aec77](https://github.com/HankHuang0516/EClaw/commit/88aec772628c240e97b336bb5820892ad632d1ae))
* **files:** wire petdx avatar into entity filter & per-file badges ([#2627](https://github.com/HankHuang0516/EClaw/issues/2627)) ([5b3e5cc](https://github.com/HankHuang0516/EClaw/commit/5b3e5cc542d9da69bb4e92500fd03a542ea33f00))
* **mindmap:** wrap hardcoded zh-TW UI strings with i18n t() ([#2607](https://github.com/HankHuang0516/EClaw/issues/2607)) ([166af87](https://github.com/HankHuang0516/EClaw/commit/166af8772b2121a24aaf34a83b3de970e9b3b571)), closes [#2606](https://github.com/HankHuang0516/EClaw/issues/2606)


### Performance Improvements

* **mindmap:** force-graph hardening for 1000/2000-node graphs ([#2684](https://github.com/HankHuang0516/EClaw/issues/2684)) ([da8b1c8](https://github.com/HankHuang0516/EClaw/commit/da8b1c8f947ab8bc8fa455c1962a91146623a1fc))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-13)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **notifications:** add kanban_done + kanban_done_auto toggles to Android Settings ([#2636](https://github.com/HankHuang0516/EClaw/issues/2636)) ([a710909](https://github.com/HankHuang0516/EClaw/commit/a7109095e3393b8564e7ef1b23d382a4fbb944b8))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **kanban:** comment input no longer overlaps last comment in card detail (PR [#2678](https://github.com/HankHuang0516/EClaw/issues/2678)) ([fba91fc](https://github.com/HankHuang0516/EClaw/commit/fba91fca15402b453a0db5ee857c0b16e6087055))
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **petdx:** drop dark-grey loading placeholder + preload sprite WEBP ([#2628](https://github.com/HankHuang0516/EClaw/issues/2628)) ([59cef38](https://github.com/HankHuang0516/EClaw/commit/59cef387bd69ca99d7d15c86a1364856d3849ad8)), closes [#1a1a1a](https://github.com/HankHuang0516/EClaw/issues/1a1a1a)
* **entities:** expose botSecret to owner so wallpaper service can poll companions ([#2615](https://github.com/HankHuang0516/EClaw/issues/2615)) ([04470fc](https://github.com/HankHuang0516/EClaw/commit/04470fce8f8c3fce2b1ba8b243e776606f107502))
* **rental:** expose owner_public_code in marketplace so plaza CTA can route ([#2616](https://github.com/HankHuang0516/EClaw/issues/2616)) ([4d1372f](https://github.com/HankHuang0516/EClaw/commit/4d1372f717d93cab65543e87c852e74e9fb67071)), closes [#2610](https://github.com/HankHuang0516/EClaw/issues/2610)
* **portal:** fit embedded org chart to mobile viewport ([#2674](https://github.com/HankHuang0516/EClaw/issues/2674)) ([1c4e1b4](https://github.com/HankHuang0516/EClaw/commit/1c4e1b413ea7027b4cd4b8ecda981b0d0e12e66b))
* **mention-parser:** ignore @-mentions inside markdown code spans ([#2645](https://github.com/HankHuang0516/EClaw/issues/2645)) ([8da19d4](https://github.com/HankHuang0516/EClaw/commit/8da19d4a79ceb4152bf2144ee0847c61ce3e1def)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **kanban:** lazy-load dependency chips via IntersectionObserver ([#2632](https://github.com/HankHuang0516/EClaw/issues/2632)) ([20586b4](https://github.com/HankHuang0516/EClaw/commit/20586b43357335f9eb6a190c02d58c8e36b58aba)), closes [#2631](https://github.com/HankHuang0516/EClaw/issues/2631)
* **wallpaper:** off-load spritesheet fetch to IO so per-petdx sprites actually render ([#2618](https://github.com/HankHuang0516/EClaw/issues/2618)) ([61b832c](https://github.com/HankHuang0516/EClaw/commit/61b832c9fa8a1d0caab810ccc942d85c63349267)), closes [#2615](https://github.com/HankHuang0516/EClaw/issues/2615) [#2577](https://github.com/HankHuang0516/EClaw/issues/2577)
* **i18n:** positional format specifiers for feedback_result_logs (7 locales) ([#2597](https://github.com/HankHuang0516/EClaw/issues/2597)) ([21aedc7](https://github.com/HankHuang0516/EClaw/commit/21aedc7eebc7a2839e340136f38dfdfd4dabb9dc))
* **avatar-petdx:** preserve descriptor across transient API failures (flicker) ([#2625](https://github.com/HankHuang0516/EClaw/issues/2625)) ([7b1c606](https://github.com/HankHuang0516/EClaw/commit/7b1c606514f7698d72ec95cf6c556e4043966186))
* **chat:** preserve scroll anchor while reading history ([#2693](https://github.com/HankHuang0516/EClaw/issues/2693)) ([945fdb7](https://github.com/HankHuang0516/EClaw/commit/945fdb7192b791b31882e1e75568dd8b11e4686f))
* **portal:** reduce QA-discovered request fanout ([#2656](https://github.com/HankHuang0516/EClaw/issues/2656)) ([1e46d6b](https://github.com/HankHuang0516/EClaw/commit/1e46d6bab61e58c65b452b6503d953f8dddeee75))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **portal:** remove org chart fit scale floor ([#2676](https://github.com/HankHuang0516/EClaw/issues/2676)) ([0f01606](https://github.com/HankHuang0516/EClaw/commit/0f016068b963bb5f800a02f28817c7174979d913))
* **i18n:** rename mm_empty_title → mm_state_empty_title in mindmap.html ([#2683](https://github.com/HankHuang0516/EClaw/issues/2683)) ([c79c109](https://github.com/HankHuang0516/EClaw/commit/c79c109bea23142e8a6d9ace976d105af1280ec9))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **chat:** render mention avatars with companion renderer ([#2633](https://github.com/HankHuang0516/EClaw/issues/2633)) ([03e205f](https://github.com/HankHuang0516/EClaw/commit/03e205f663ecd2c2f443d4009dd5af0093f0bbbb))
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* scheduled audit 2026-05-13 — 6 bugs, XSS, i18n ([#2668](https://github.com/HankHuang0516/EClaw/issues/2668)) ([21dd513](https://github.com/HankHuang0516/EClaw/commit/21dd513b4464738de29164265437435ba6cc4817)), closes [#2605](https://github.com/HankHuang0516/EClaw/issues/2605) [#2608](https://github.com/HankHuang0516/EClaw/issues/2608) [#2600](https://github.com/HankHuang0516/EClaw/issues/2600) [#2599](https://github.com/HankHuang0516/EClaw/issues/2599) [#2598](https://github.com/HankHuang0516/EClaw/issues/2598)
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **chat:** smart-chip preview falls back to inline c.comments when /comments fails (PR [#2677](https://github.com/HankHuang0516/EClaw/issues/2677)) ([7f4dffd](https://github.com/HankHuang0516/EClaw/commit/7f4dffd2c83ea86f296b8fa0610f0e67c9f1af11))
* **wallpaper:** stop Android live wallpaper flashing default lobster on companion change ([#2629](https://github.com/HankHuang0516/EClaw/issues/2629)) ([8b4f66f](https://github.com/HankHuang0516/EClaw/commit/8b4f66fcb335bf43128f924b761b6337c817095b)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **app:** WebView pages honor app-selected locale via ?lang= URL param ([#2672](https://github.com/HankHuang0516/EClaw/issues/2672)) ([8ed8757](https://github.com/HankHuang0516/EClaw/commit/8ed8757aec5bf214e837cc0d81bf2b23f1993a91)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* **community:** 1-click chat button on bot cards + utm tagging ([#2610](https://github.com/HankHuang0516/EClaw/issues/2610)) ([eee97b0](https://github.com/HankHuang0516/EClaw/commit/eee97b0e2e4e74945ec24f218a69a52800b97a66))
* **dashboard:** add Claude and Codex channel guides ([#2640](https://github.com/HankHuang0516/EClaw/issues/2640)) ([c64e4c4](https://github.com/HankHuang0516/EClaw/commit/c64e4c4afc78db58c5cd578f00486dd7b2fd3311))
* **dashboard:** add Claude Code channel guide card ([#2667](https://github.com/HankHuang0516/EClaw/issues/2667)) ([d70d75c](https://github.com/HankHuang0516/EClaw/commit/d70d75c0c8caa8a540358a9aab4556b8c1927a5c))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* **portal:** add entity selector to petdx-browser ([#2602](https://github.com/HankHuang0516/EClaw/issues/2602)) ([3fa067e](https://github.com/HankHuang0516/EClaw/commit/3fa067e00b38829b48a37cecd33ee81a9a1122d9))
* **mindmap:** add GET /api/mindmap/graph force-graph projection ([#2680](https://github.com/HankHuang0516/EClaw/issues/2680)) ([a00b2e7](https://github.com/HankHuang0516/EClaw/commit/a00b2e775af2c4c98cd157f760ad87aeeee469f0)), closes [#2679](https://github.com/HankHuang0516/EClaw/issues/2679) [#2679](https://github.com/HankHuang0516/EClaw/issues/2679)
* **dashboard:** add Hermes channel promo card ([#2708](https://github.com/HankHuang0516/EClaw/issues/2708)) ([337aca1](https://github.com/HankHuang0516/EClaw/commit/337aca153d5a1cd7e888c065f00ae54db7872d91))
* **portal:** add Nagoya 5D4N trip static cross-ref page ([#2689](https://github.com/HankHuang0516/EClaw/issues/2689)) ([2e0efb6](https://github.com/HankHuang0516/EClaw/commit/2e0efb6dcdaff52226cc8854a96747000b12bdff))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **companion:** bridge crafter-station/petdex gallery (1784 pets) ([#2601](https://github.com/HankHuang0516/EClaw/issues/2601)) ([2e245be](https://github.com/HankHuang0516/EClaw/commit/2e245bea6dd47ea7361b927d389188a3c23b6bb3))
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **mindmap:** mission.html link to /portal/mindmap.html + deprecate /api/mission/mindmap ([#2685](https://github.com/HankHuang0516/EClaw/issues/2685)) ([11e297b](https://github.com/HankHuang0516/EClaw/commit/11e297bab1c9b56fcde3027d6500b7c58891bf18)), closes [#2680](https://github.com/HankHuang0516/EClaw/issues/2680) [#2684](https://github.com/HankHuang0516/EClaw/issues/2684)
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **avatar:** petdx render on card-holder my-cards (Phase 1b) ([#2621](https://github.com/HankHuang0516/EClaw/issues/2621)) ([f78ba8b](https://github.com/HankHuang0516/EClaw/commit/f78ba8b18acc426936ab6d8a82ca7541effea00d))
* **avatar:** petdx render on dashboard entity grid / org chart / bindings (Phase 1b) ([#2622](https://github.com/HankHuang0516/EClaw/issues/2622)) ([f417749](https://github.com/HankHuang0516/EClaw/commit/f41774914451048e8cd76e9ae30416a0642e173b)), closes [#2620](https://github.com/HankHuang0516/EClaw/issues/2620) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621)
* **avatar:** petdx render on kanban auto-assign / pulse / comment avatars (Phase 1b) ([#2624](https://github.com/HankHuang0516/EClaw/issues/2624)) ([6bff5f8](https://github.com/HankHuang0516/EClaw/commit/6bff5f80440d0bd91a6b1721cde9478d685c4d46))
* **avatar:** petdx render on mission skill/rule/soul entity dialogs (Phase 1b) ([#2623](https://github.com/HankHuang0516/EClaw/issues/2623)) ([129327b](https://github.com/HankHuang0516/EClaw/commit/129327bc7b91056659f1ab7e8d5e3f5260d951fb))
* **mindmap:** portal/mindmap.html force-graph prototype ([#129](https://github.com/HankHuang0516/EClaw/issues/129)) ([#2681](https://github.com/HankHuang0516/EClaw/issues/2681)) ([0f15e69](https://github.com/HankHuang0516/EClaw/commit/0f15e6930f0697c37fa08f3219edb8f9e499837f)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **portal:** redo nagoya trip page in professional tour-guide style ([#2691](https://github.com/HankHuang0516/EClaw/issues/2691)) ([b2378c0](https://github.com/HankHuang0516/EClaw/commit/b2378c06ee20fa9cccfdceceb1a4c9e0b3072f59))
* **avatar:** render selected petdx companion in chat avatars ([#2620](https://github.com/HankHuang0516/EClaw/issues/2620)) ([0bdd046](https://github.com/HankHuang0516/EClaw/commit/0bdd046fe1b1c428e32edda366ff112c08927f4c))
* **home:** replace native home with WebView hosting dashboard.html ([#2634](https://github.com/HankHuang0516/EClaw/issues/2634)) ([e69ea81](https://github.com/HankHuang0516/EClaw/commit/e69ea8160c239b083a83d6dc83a4f1c3f901c863))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **share-chat:** twitter card + per-bot og:image/twitter:* in SSR ([#2609](https://github.com/HankHuang0516/EClaw/issues/2609)) ([6cdc853](https://github.com/HankHuang0516/EClaw/commit/6cdc853dc884cdb95bd47214942768981f218ae0))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))
* **settings:** wire petdx avatar into channel-account chips ([#2626](https://github.com/HankHuang0516/EClaw/issues/2626)) ([88aec77](https://github.com/HankHuang0516/EClaw/commit/88aec772628c240e97b336bb5820892ad632d1ae))
* **files:** wire petdx avatar into entity filter & per-file badges ([#2627](https://github.com/HankHuang0516/EClaw/issues/2627)) ([5b3e5cc](https://github.com/HankHuang0516/EClaw/commit/5b3e5cc542d9da69bb4e92500fd03a542ea33f00))
* **mindmap:** wrap hardcoded zh-TW UI strings with i18n t() ([#2607](https://github.com/HankHuang0516/EClaw/issues/2607)) ([166af87](https://github.com/HankHuang0516/EClaw/commit/166af8772b2121a24aaf34a83b3de970e9b3b571)), closes [#2606](https://github.com/HankHuang0516/EClaw/issues/2606)


### Performance Improvements

* **mindmap:** force-graph hardening for 1000/2000-node graphs ([#2684](https://github.com/HankHuang0516/EClaw/issues/2684)) ([da8b1c8](https://github.com/HankHuang0516/EClaw/commit/da8b1c8f947ab8bc8fa455c1962a91146623a1fc))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-13)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **notifications:** add kanban_done + kanban_done_auto toggles to Android Settings ([#2636](https://github.com/HankHuang0516/EClaw/issues/2636)) ([a710909](https://github.com/HankHuang0516/EClaw/commit/a7109095e3393b8564e7ef1b23d382a4fbb944b8))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **kanban:** comment input no longer overlaps last comment in card detail (PR [#2678](https://github.com/HankHuang0516/EClaw/issues/2678)) ([fba91fc](https://github.com/HankHuang0516/EClaw/commit/fba91fca15402b453a0db5ee857c0b16e6087055))
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **petdx:** drop dark-grey loading placeholder + preload sprite WEBP ([#2628](https://github.com/HankHuang0516/EClaw/issues/2628)) ([59cef38](https://github.com/HankHuang0516/EClaw/commit/59cef387bd69ca99d7d15c86a1364856d3849ad8)), closes [#1a1a1a](https://github.com/HankHuang0516/EClaw/issues/1a1a1a)
* **entities:** expose botSecret to owner so wallpaper service can poll companions ([#2615](https://github.com/HankHuang0516/EClaw/issues/2615)) ([04470fc](https://github.com/HankHuang0516/EClaw/commit/04470fce8f8c3fce2b1ba8b243e776606f107502))
* **rental:** expose owner_public_code in marketplace so plaza CTA can route ([#2616](https://github.com/HankHuang0516/EClaw/issues/2616)) ([4d1372f](https://github.com/HankHuang0516/EClaw/commit/4d1372f717d93cab65543e87c852e74e9fb67071)), closes [#2610](https://github.com/HankHuang0516/EClaw/issues/2610)
* **portal:** fit embedded org chart to mobile viewport ([#2674](https://github.com/HankHuang0516/EClaw/issues/2674)) ([1c4e1b4](https://github.com/HankHuang0516/EClaw/commit/1c4e1b413ea7027b4cd4b8ecda981b0d0e12e66b))
* **mention-parser:** ignore @-mentions inside markdown code spans ([#2645](https://github.com/HankHuang0516/EClaw/issues/2645)) ([8da19d4](https://github.com/HankHuang0516/EClaw/commit/8da19d4a79ceb4152bf2144ee0847c61ce3e1def)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **kanban:** lazy-load dependency chips via IntersectionObserver ([#2632](https://github.com/HankHuang0516/EClaw/issues/2632)) ([20586b4](https://github.com/HankHuang0516/EClaw/commit/20586b43357335f9eb6a190c02d58c8e36b58aba)), closes [#2631](https://github.com/HankHuang0516/EClaw/issues/2631)
* **wallpaper:** off-load spritesheet fetch to IO so per-petdx sprites actually render ([#2618](https://github.com/HankHuang0516/EClaw/issues/2618)) ([61b832c](https://github.com/HankHuang0516/EClaw/commit/61b832c9fa8a1d0caab810ccc942d85c63349267)), closes [#2615](https://github.com/HankHuang0516/EClaw/issues/2615) [#2577](https://github.com/HankHuang0516/EClaw/issues/2577)
* **i18n:** positional format specifiers for feedback_result_logs (7 locales) ([#2597](https://github.com/HankHuang0516/EClaw/issues/2597)) ([21aedc7](https://github.com/HankHuang0516/EClaw/commit/21aedc7eebc7a2839e340136f38dfdfd4dabb9dc))
* **avatar-petdx:** preserve descriptor across transient API failures (flicker) ([#2625](https://github.com/HankHuang0516/EClaw/issues/2625)) ([7b1c606](https://github.com/HankHuang0516/EClaw/commit/7b1c606514f7698d72ec95cf6c556e4043966186))
* **chat:** preserve scroll anchor while reading history ([#2693](https://github.com/HankHuang0516/EClaw/issues/2693)) ([945fdb7](https://github.com/HankHuang0516/EClaw/commit/945fdb7192b791b31882e1e75568dd8b11e4686f))
* **portal:** reduce QA-discovered request fanout ([#2656](https://github.com/HankHuang0516/EClaw/issues/2656)) ([1e46d6b](https://github.com/HankHuang0516/EClaw/commit/1e46d6bab61e58c65b452b6503d953f8dddeee75))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **portal:** remove org chart fit scale floor ([#2676](https://github.com/HankHuang0516/EClaw/issues/2676)) ([0f01606](https://github.com/HankHuang0516/EClaw/commit/0f016068b963bb5f800a02f28817c7174979d913))
* **i18n:** rename mm_empty_title → mm_state_empty_title in mindmap.html ([#2683](https://github.com/HankHuang0516/EClaw/issues/2683)) ([c79c109](https://github.com/HankHuang0516/EClaw/commit/c79c109bea23142e8a6d9ace976d105af1280ec9))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **chat:** render mention avatars with companion renderer ([#2633](https://github.com/HankHuang0516/EClaw/issues/2633)) ([03e205f](https://github.com/HankHuang0516/EClaw/commit/03e205f663ecd2c2f443d4009dd5af0093f0bbbb))
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* scheduled audit 2026-05-13 — 6 bugs, XSS, i18n ([#2668](https://github.com/HankHuang0516/EClaw/issues/2668)) ([21dd513](https://github.com/HankHuang0516/EClaw/commit/21dd513b4464738de29164265437435ba6cc4817)), closes [#2605](https://github.com/HankHuang0516/EClaw/issues/2605) [#2608](https://github.com/HankHuang0516/EClaw/issues/2608) [#2600](https://github.com/HankHuang0516/EClaw/issues/2600) [#2599](https://github.com/HankHuang0516/EClaw/issues/2599) [#2598](https://github.com/HankHuang0516/EClaw/issues/2598)
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **chat:** smart-chip preview falls back to inline c.comments when /comments fails (PR [#2677](https://github.com/HankHuang0516/EClaw/issues/2677)) ([7f4dffd](https://github.com/HankHuang0516/EClaw/commit/7f4dffd2c83ea86f296b8fa0610f0e67c9f1af11))
* **wallpaper:** stop Android live wallpaper flashing default lobster on companion change ([#2629](https://github.com/HankHuang0516/EClaw/issues/2629)) ([8b4f66f](https://github.com/HankHuang0516/EClaw/commit/8b4f66fcb335bf43128f924b761b6337c817095b)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **app:** WebView pages honor app-selected locale via ?lang= URL param ([#2672](https://github.com/HankHuang0516/EClaw/issues/2672)) ([8ed8757](https://github.com/HankHuang0516/EClaw/commit/8ed8757aec5bf214e837cc0d81bf2b23f1993a91)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* **community:** 1-click chat button on bot cards + utm tagging ([#2610](https://github.com/HankHuang0516/EClaw/issues/2610)) ([eee97b0](https://github.com/HankHuang0516/EClaw/commit/eee97b0e2e4e74945ec24f218a69a52800b97a66))
* **dashboard:** add Claude and Codex channel guides ([#2640](https://github.com/HankHuang0516/EClaw/issues/2640)) ([c64e4c4](https://github.com/HankHuang0516/EClaw/commit/c64e4c4afc78db58c5cd578f00486dd7b2fd3311))
* **dashboard:** add Claude Code channel guide card ([#2667](https://github.com/HankHuang0516/EClaw/issues/2667)) ([d70d75c](https://github.com/HankHuang0516/EClaw/commit/d70d75c0c8caa8a540358a9aab4556b8c1927a5c))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* **portal:** add entity selector to petdx-browser ([#2602](https://github.com/HankHuang0516/EClaw/issues/2602)) ([3fa067e](https://github.com/HankHuang0516/EClaw/commit/3fa067e00b38829b48a37cecd33ee81a9a1122d9))
* **mindmap:** add GET /api/mindmap/graph force-graph projection ([#2680](https://github.com/HankHuang0516/EClaw/issues/2680)) ([a00b2e7](https://github.com/HankHuang0516/EClaw/commit/a00b2e775af2c4c98cd157f760ad87aeeee469f0)), closes [#2679](https://github.com/HankHuang0516/EClaw/issues/2679) [#2679](https://github.com/HankHuang0516/EClaw/issues/2679)
* **dashboard:** add Hermes channel promo card ([#2708](https://github.com/HankHuang0516/EClaw/issues/2708)) ([337aca1](https://github.com/HankHuang0516/EClaw/commit/337aca153d5a1cd7e888c065f00ae54db7872d91))
* **portal:** add Nagoya 5D4N trip static cross-ref page ([#2689](https://github.com/HankHuang0516/EClaw/issues/2689)) ([2e0efb6](https://github.com/HankHuang0516/EClaw/commit/2e0efb6dcdaff52226cc8854a96747000b12bdff))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **companion:** bridge crafter-station/petdex gallery (1784 pets) ([#2601](https://github.com/HankHuang0516/EClaw/issues/2601)) ([2e245be](https://github.com/HankHuang0516/EClaw/commit/2e245bea6dd47ea7361b927d389188a3c23b6bb3))
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **mindmap:** mission.html link to /portal/mindmap.html + deprecate /api/mission/mindmap ([#2685](https://github.com/HankHuang0516/EClaw/issues/2685)) ([11e297b](https://github.com/HankHuang0516/EClaw/commit/11e297bab1c9b56fcde3027d6500b7c58891bf18)), closes [#2680](https://github.com/HankHuang0516/EClaw/issues/2680) [#2684](https://github.com/HankHuang0516/EClaw/issues/2684)
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **avatar:** petdx render on card-holder my-cards (Phase 1b) ([#2621](https://github.com/HankHuang0516/EClaw/issues/2621)) ([f78ba8b](https://github.com/HankHuang0516/EClaw/commit/f78ba8b18acc426936ab6d8a82ca7541effea00d))
* **avatar:** petdx render on dashboard entity grid / org chart / bindings (Phase 1b) ([#2622](https://github.com/HankHuang0516/EClaw/issues/2622)) ([f417749](https://github.com/HankHuang0516/EClaw/commit/f41774914451048e8cd76e9ae30416a0642e173b)), closes [#2620](https://github.com/HankHuang0516/EClaw/issues/2620) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621)
* **avatar:** petdx render on kanban auto-assign / pulse / comment avatars (Phase 1b) ([#2624](https://github.com/HankHuang0516/EClaw/issues/2624)) ([6bff5f8](https://github.com/HankHuang0516/EClaw/commit/6bff5f80440d0bd91a6b1721cde9478d685c4d46))
* **avatar:** petdx render on mission skill/rule/soul entity dialogs (Phase 1b) ([#2623](https://github.com/HankHuang0516/EClaw/issues/2623)) ([129327b](https://github.com/HankHuang0516/EClaw/commit/129327bc7b91056659f1ab7e8d5e3f5260d951fb))
* **mindmap:** portal/mindmap.html force-graph prototype ([#129](https://github.com/HankHuang0516/EClaw/issues/129)) ([#2681](https://github.com/HankHuang0516/EClaw/issues/2681)) ([0f15e69](https://github.com/HankHuang0516/EClaw/commit/0f15e6930f0697c37fa08f3219edb8f9e499837f)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **portal:** redo nagoya trip page in professional tour-guide style ([#2691](https://github.com/HankHuang0516/EClaw/issues/2691)) ([b2378c0](https://github.com/HankHuang0516/EClaw/commit/b2378c06ee20fa9cccfdceceb1a4c9e0b3072f59))
* **avatar:** render selected petdx companion in chat avatars ([#2620](https://github.com/HankHuang0516/EClaw/issues/2620)) ([0bdd046](https://github.com/HankHuang0516/EClaw/commit/0bdd046fe1b1c428e32edda366ff112c08927f4c))
* **home:** replace native home with WebView hosting dashboard.html ([#2634](https://github.com/HankHuang0516/EClaw/issues/2634)) ([e69ea81](https://github.com/HankHuang0516/EClaw/commit/e69ea8160c239b083a83d6dc83a4f1c3f901c863))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **share-chat:** twitter card + per-bot og:image/twitter:* in SSR ([#2609](https://github.com/HankHuang0516/EClaw/issues/2609)) ([6cdc853](https://github.com/HankHuang0516/EClaw/commit/6cdc853dc884cdb95bd47214942768981f218ae0))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))
* **settings:** wire petdx avatar into channel-account chips ([#2626](https://github.com/HankHuang0516/EClaw/issues/2626)) ([88aec77](https://github.com/HankHuang0516/EClaw/commit/88aec772628c240e97b336bb5820892ad632d1ae))
* **files:** wire petdx avatar into entity filter & per-file badges ([#2627](https://github.com/HankHuang0516/EClaw/issues/2627)) ([5b3e5cc](https://github.com/HankHuang0516/EClaw/commit/5b3e5cc542d9da69bb4e92500fd03a542ea33f00))
* **mindmap:** wrap hardcoded zh-TW UI strings with i18n t() ([#2607](https://github.com/HankHuang0516/EClaw/issues/2607)) ([166af87](https://github.com/HankHuang0516/EClaw/commit/166af8772b2121a24aaf34a83b3de970e9b3b571)), closes [#2606](https://github.com/HankHuang0516/EClaw/issues/2606)


### Performance Improvements

* **mindmap:** force-graph hardening for 1000/2000-node graphs ([#2684](https://github.com/HankHuang0516/EClaw/issues/2684)) ([da8b1c8](https://github.com/HankHuang0516/EClaw/commit/da8b1c8f947ab8bc8fa455c1962a91146623a1fc))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-13)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **notifications:** add kanban_done + kanban_done_auto toggles to Android Settings ([#2636](https://github.com/HankHuang0516/EClaw/issues/2636)) ([a710909](https://github.com/HankHuang0516/EClaw/commit/a7109095e3393b8564e7ef1b23d382a4fbb944b8))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **kanban:** comment input no longer overlaps last comment in card detail (PR [#2678](https://github.com/HankHuang0516/EClaw/issues/2678)) ([fba91fc](https://github.com/HankHuang0516/EClaw/commit/fba91fca15402b453a0db5ee857c0b16e6087055))
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **petdx:** drop dark-grey loading placeholder + preload sprite WEBP ([#2628](https://github.com/HankHuang0516/EClaw/issues/2628)) ([59cef38](https://github.com/HankHuang0516/EClaw/commit/59cef387bd69ca99d7d15c86a1364856d3849ad8)), closes [#1a1a1a](https://github.com/HankHuang0516/EClaw/issues/1a1a1a)
* **entities:** expose botSecret to owner so wallpaper service can poll companions ([#2615](https://github.com/HankHuang0516/EClaw/issues/2615)) ([04470fc](https://github.com/HankHuang0516/EClaw/commit/04470fce8f8c3fce2b1ba8b243e776606f107502))
* **rental:** expose owner_public_code in marketplace so plaza CTA can route ([#2616](https://github.com/HankHuang0516/EClaw/issues/2616)) ([4d1372f](https://github.com/HankHuang0516/EClaw/commit/4d1372f717d93cab65543e87c852e74e9fb67071)), closes [#2610](https://github.com/HankHuang0516/EClaw/issues/2610)
* **portal:** fit embedded org chart to mobile viewport ([#2674](https://github.com/HankHuang0516/EClaw/issues/2674)) ([1c4e1b4](https://github.com/HankHuang0516/EClaw/commit/1c4e1b413ea7027b4cd4b8ecda981b0d0e12e66b))
* **mention-parser:** ignore @-mentions inside markdown code spans ([#2645](https://github.com/HankHuang0516/EClaw/issues/2645)) ([8da19d4](https://github.com/HankHuang0516/EClaw/commit/8da19d4a79ceb4152bf2144ee0847c61ce3e1def)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **kanban:** lazy-load dependency chips via IntersectionObserver ([#2632](https://github.com/HankHuang0516/EClaw/issues/2632)) ([20586b4](https://github.com/HankHuang0516/EClaw/commit/20586b43357335f9eb6a190c02d58c8e36b58aba)), closes [#2631](https://github.com/HankHuang0516/EClaw/issues/2631)
* **wallpaper:** off-load spritesheet fetch to IO so per-petdx sprites actually render ([#2618](https://github.com/HankHuang0516/EClaw/issues/2618)) ([61b832c](https://github.com/HankHuang0516/EClaw/commit/61b832c9fa8a1d0caab810ccc942d85c63349267)), closes [#2615](https://github.com/HankHuang0516/EClaw/issues/2615) [#2577](https://github.com/HankHuang0516/EClaw/issues/2577)
* **i18n:** positional format specifiers for feedback_result_logs (7 locales) ([#2597](https://github.com/HankHuang0516/EClaw/issues/2597)) ([21aedc7](https://github.com/HankHuang0516/EClaw/commit/21aedc7eebc7a2839e340136f38dfdfd4dabb9dc))
* **avatar-petdx:** preserve descriptor across transient API failures (flicker) ([#2625](https://github.com/HankHuang0516/EClaw/issues/2625)) ([7b1c606](https://github.com/HankHuang0516/EClaw/commit/7b1c606514f7698d72ec95cf6c556e4043966186))
* **chat:** preserve scroll anchor while reading history ([#2693](https://github.com/HankHuang0516/EClaw/issues/2693)) ([945fdb7](https://github.com/HankHuang0516/EClaw/commit/945fdb7192b791b31882e1e75568dd8b11e4686f))
* **portal:** reduce QA-discovered request fanout ([#2656](https://github.com/HankHuang0516/EClaw/issues/2656)) ([1e46d6b](https://github.com/HankHuang0516/EClaw/commit/1e46d6bab61e58c65b452b6503d953f8dddeee75))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **portal:** remove org chart fit scale floor ([#2676](https://github.com/HankHuang0516/EClaw/issues/2676)) ([0f01606](https://github.com/HankHuang0516/EClaw/commit/0f016068b963bb5f800a02f28817c7174979d913))
* **i18n:** rename mm_empty_title → mm_state_empty_title in mindmap.html ([#2683](https://github.com/HankHuang0516/EClaw/issues/2683)) ([c79c109](https://github.com/HankHuang0516/EClaw/commit/c79c109bea23142e8a6d9ace976d105af1280ec9))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **chat:** render mention avatars with companion renderer ([#2633](https://github.com/HankHuang0516/EClaw/issues/2633)) ([03e205f](https://github.com/HankHuang0516/EClaw/commit/03e205f663ecd2c2f443d4009dd5af0093f0bbbb))
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* scheduled audit 2026-05-13 — 6 bugs, XSS, i18n ([#2668](https://github.com/HankHuang0516/EClaw/issues/2668)) ([21dd513](https://github.com/HankHuang0516/EClaw/commit/21dd513b4464738de29164265437435ba6cc4817)), closes [#2605](https://github.com/HankHuang0516/EClaw/issues/2605) [#2608](https://github.com/HankHuang0516/EClaw/issues/2608) [#2600](https://github.com/HankHuang0516/EClaw/issues/2600) [#2599](https://github.com/HankHuang0516/EClaw/issues/2599) [#2598](https://github.com/HankHuang0516/EClaw/issues/2598)
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **chat:** smart-chip preview falls back to inline c.comments when /comments fails (PR [#2677](https://github.com/HankHuang0516/EClaw/issues/2677)) ([7f4dffd](https://github.com/HankHuang0516/EClaw/commit/7f4dffd2c83ea86f296b8fa0610f0e67c9f1af11))
* **wallpaper:** stop Android live wallpaper flashing default lobster on companion change ([#2629](https://github.com/HankHuang0516/EClaw/issues/2629)) ([8b4f66f](https://github.com/HankHuang0516/EClaw/commit/8b4f66fcb335bf43128f924b761b6337c817095b)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **app:** WebView pages honor app-selected locale via ?lang= URL param ([#2672](https://github.com/HankHuang0516/EClaw/issues/2672)) ([8ed8757](https://github.com/HankHuang0516/EClaw/commit/8ed8757aec5bf214e837cc0d81bf2b23f1993a91)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* **community:** 1-click chat button on bot cards + utm tagging ([#2610](https://github.com/HankHuang0516/EClaw/issues/2610)) ([eee97b0](https://github.com/HankHuang0516/EClaw/commit/eee97b0e2e4e74945ec24f218a69a52800b97a66))
* **dashboard:** add Claude and Codex channel guides ([#2640](https://github.com/HankHuang0516/EClaw/issues/2640)) ([c64e4c4](https://github.com/HankHuang0516/EClaw/commit/c64e4c4afc78db58c5cd578f00486dd7b2fd3311))
* **dashboard:** add Claude Code channel guide card ([#2667](https://github.com/HankHuang0516/EClaw/issues/2667)) ([d70d75c](https://github.com/HankHuang0516/EClaw/commit/d70d75c0c8caa8a540358a9aab4556b8c1927a5c))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* **portal:** add entity selector to petdx-browser ([#2602](https://github.com/HankHuang0516/EClaw/issues/2602)) ([3fa067e](https://github.com/HankHuang0516/EClaw/commit/3fa067e00b38829b48a37cecd33ee81a9a1122d9))
* **mindmap:** add GET /api/mindmap/graph force-graph projection ([#2680](https://github.com/HankHuang0516/EClaw/issues/2680)) ([a00b2e7](https://github.com/HankHuang0516/EClaw/commit/a00b2e775af2c4c98cd157f760ad87aeeee469f0)), closes [#2679](https://github.com/HankHuang0516/EClaw/issues/2679) [#2679](https://github.com/HankHuang0516/EClaw/issues/2679)
* **dashboard:** add Hermes channel promo card ([#2708](https://github.com/HankHuang0516/EClaw/issues/2708)) ([337aca1](https://github.com/HankHuang0516/EClaw/commit/337aca153d5a1cd7e888c065f00ae54db7872d91))
* **portal:** add Nagoya 5D4N trip static cross-ref page ([#2689](https://github.com/HankHuang0516/EClaw/issues/2689)) ([2e0efb6](https://github.com/HankHuang0516/EClaw/commit/2e0efb6dcdaff52226cc8854a96747000b12bdff))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **companion:** bridge crafter-station/petdex gallery (1784 pets) ([#2601](https://github.com/HankHuang0516/EClaw/issues/2601)) ([2e245be](https://github.com/HankHuang0516/EClaw/commit/2e245bea6dd47ea7361b927d389188a3c23b6bb3))
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **mindmap:** mission.html link to /portal/mindmap.html + deprecate /api/mission/mindmap ([#2685](https://github.com/HankHuang0516/EClaw/issues/2685)) ([11e297b](https://github.com/HankHuang0516/EClaw/commit/11e297bab1c9b56fcde3027d6500b7c58891bf18)), closes [#2680](https://github.com/HankHuang0516/EClaw/issues/2680) [#2684](https://github.com/HankHuang0516/EClaw/issues/2684)
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **avatar:** petdx render on card-holder my-cards (Phase 1b) ([#2621](https://github.com/HankHuang0516/EClaw/issues/2621)) ([f78ba8b](https://github.com/HankHuang0516/EClaw/commit/f78ba8b18acc426936ab6d8a82ca7541effea00d))
* **avatar:** petdx render on dashboard entity grid / org chart / bindings (Phase 1b) ([#2622](https://github.com/HankHuang0516/EClaw/issues/2622)) ([f417749](https://github.com/HankHuang0516/EClaw/commit/f41774914451048e8cd76e9ae30416a0642e173b)), closes [#2620](https://github.com/HankHuang0516/EClaw/issues/2620) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621)
* **avatar:** petdx render on kanban auto-assign / pulse / comment avatars (Phase 1b) ([#2624](https://github.com/HankHuang0516/EClaw/issues/2624)) ([6bff5f8](https://github.com/HankHuang0516/EClaw/commit/6bff5f80440d0bd91a6b1721cde9478d685c4d46))
* **avatar:** petdx render on mission skill/rule/soul entity dialogs (Phase 1b) ([#2623](https://github.com/HankHuang0516/EClaw/issues/2623)) ([129327b](https://github.com/HankHuang0516/EClaw/commit/129327bc7b91056659f1ab7e8d5e3f5260d951fb))
* **mindmap:** portal/mindmap.html force-graph prototype ([#129](https://github.com/HankHuang0516/EClaw/issues/129)) ([#2681](https://github.com/HankHuang0516/EClaw/issues/2681)) ([0f15e69](https://github.com/HankHuang0516/EClaw/commit/0f15e6930f0697c37fa08f3219edb8f9e499837f)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **portal:** redo nagoya trip page in professional tour-guide style ([#2691](https://github.com/HankHuang0516/EClaw/issues/2691)) ([b2378c0](https://github.com/HankHuang0516/EClaw/commit/b2378c06ee20fa9cccfdceceb1a4c9e0b3072f59))
* **avatar:** render selected petdx companion in chat avatars ([#2620](https://github.com/HankHuang0516/EClaw/issues/2620)) ([0bdd046](https://github.com/HankHuang0516/EClaw/commit/0bdd046fe1b1c428e32edda366ff112c08927f4c))
* **home:** replace native home with WebView hosting dashboard.html ([#2634](https://github.com/HankHuang0516/EClaw/issues/2634)) ([e69ea81](https://github.com/HankHuang0516/EClaw/commit/e69ea8160c239b083a83d6dc83a4f1c3f901c863))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **share-chat:** twitter card + per-bot og:image/twitter:* in SSR ([#2609](https://github.com/HankHuang0516/EClaw/issues/2609)) ([6cdc853](https://github.com/HankHuang0516/EClaw/commit/6cdc853dc884cdb95bd47214942768981f218ae0))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))
* **settings:** wire petdx avatar into channel-account chips ([#2626](https://github.com/HankHuang0516/EClaw/issues/2626)) ([88aec77](https://github.com/HankHuang0516/EClaw/commit/88aec772628c240e97b336bb5820892ad632d1ae))
* **files:** wire petdx avatar into entity filter & per-file badges ([#2627](https://github.com/HankHuang0516/EClaw/issues/2627)) ([5b3e5cc](https://github.com/HankHuang0516/EClaw/commit/5b3e5cc542d9da69bb4e92500fd03a542ea33f00))
* **mindmap:** wrap hardcoded zh-TW UI strings with i18n t() ([#2607](https://github.com/HankHuang0516/EClaw/issues/2607)) ([166af87](https://github.com/HankHuang0516/EClaw/commit/166af8772b2121a24aaf34a83b3de970e9b3b571)), closes [#2606](https://github.com/HankHuang0516/EClaw/issues/2606)


### Performance Improvements

* **mindmap:** force-graph hardening for 1000/2000-node graphs ([#2684](https://github.com/HankHuang0516/EClaw/issues/2684)) ([da8b1c8](https://github.com/HankHuang0516/EClaw/commit/da8b1c8f947ab8bc8fa455c1962a91146623a1fc))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-13)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **notifications:** add kanban_done + kanban_done_auto toggles to Android Settings ([#2636](https://github.com/HankHuang0516/EClaw/issues/2636)) ([a710909](https://github.com/HankHuang0516/EClaw/commit/a7109095e3393b8564e7ef1b23d382a4fbb944b8))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **kanban:** comment input no longer overlaps last comment in card detail (PR [#2678](https://github.com/HankHuang0516/EClaw/issues/2678)) ([fba91fc](https://github.com/HankHuang0516/EClaw/commit/fba91fca15402b453a0db5ee857c0b16e6087055))
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **petdx:** drop dark-grey loading placeholder + preload sprite WEBP ([#2628](https://github.com/HankHuang0516/EClaw/issues/2628)) ([59cef38](https://github.com/HankHuang0516/EClaw/commit/59cef387bd69ca99d7d15c86a1364856d3849ad8)), closes [#1a1a1a](https://github.com/HankHuang0516/EClaw/issues/1a1a1a)
* **entities:** expose botSecret to owner so wallpaper service can poll companions ([#2615](https://github.com/HankHuang0516/EClaw/issues/2615)) ([04470fc](https://github.com/HankHuang0516/EClaw/commit/04470fce8f8c3fce2b1ba8b243e776606f107502))
* **rental:** expose owner_public_code in marketplace so plaza CTA can route ([#2616](https://github.com/HankHuang0516/EClaw/issues/2616)) ([4d1372f](https://github.com/HankHuang0516/EClaw/commit/4d1372f717d93cab65543e87c852e74e9fb67071)), closes [#2610](https://github.com/HankHuang0516/EClaw/issues/2610)
* **portal:** fit embedded org chart to mobile viewport ([#2674](https://github.com/HankHuang0516/EClaw/issues/2674)) ([1c4e1b4](https://github.com/HankHuang0516/EClaw/commit/1c4e1b413ea7027b4cd4b8ecda981b0d0e12e66b))
* **mention-parser:** ignore @-mentions inside markdown code spans ([#2645](https://github.com/HankHuang0516/EClaw/issues/2645)) ([8da19d4](https://github.com/HankHuang0516/EClaw/commit/8da19d4a79ceb4152bf2144ee0847c61ce3e1def)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **kanban:** lazy-load dependency chips via IntersectionObserver ([#2632](https://github.com/HankHuang0516/EClaw/issues/2632)) ([20586b4](https://github.com/HankHuang0516/EClaw/commit/20586b43357335f9eb6a190c02d58c8e36b58aba)), closes [#2631](https://github.com/HankHuang0516/EClaw/issues/2631)
* **wallpaper:** off-load spritesheet fetch to IO so per-petdx sprites actually render ([#2618](https://github.com/HankHuang0516/EClaw/issues/2618)) ([61b832c](https://github.com/HankHuang0516/EClaw/commit/61b832c9fa8a1d0caab810ccc942d85c63349267)), closes [#2615](https://github.com/HankHuang0516/EClaw/issues/2615) [#2577](https://github.com/HankHuang0516/EClaw/issues/2577)
* **i18n:** positional format specifiers for feedback_result_logs (7 locales) ([#2597](https://github.com/HankHuang0516/EClaw/issues/2597)) ([21aedc7](https://github.com/HankHuang0516/EClaw/commit/21aedc7eebc7a2839e340136f38dfdfd4dabb9dc))
* **avatar-petdx:** preserve descriptor across transient API failures (flicker) ([#2625](https://github.com/HankHuang0516/EClaw/issues/2625)) ([7b1c606](https://github.com/HankHuang0516/EClaw/commit/7b1c606514f7698d72ec95cf6c556e4043966186))
* **chat:** preserve scroll anchor while reading history ([#2693](https://github.com/HankHuang0516/EClaw/issues/2693)) ([945fdb7](https://github.com/HankHuang0516/EClaw/commit/945fdb7192b791b31882e1e75568dd8b11e4686f))
* **portal:** reduce QA-discovered request fanout ([#2656](https://github.com/HankHuang0516/EClaw/issues/2656)) ([1e46d6b](https://github.com/HankHuang0516/EClaw/commit/1e46d6bab61e58c65b452b6503d953f8dddeee75))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **portal:** remove org chart fit scale floor ([#2676](https://github.com/HankHuang0516/EClaw/issues/2676)) ([0f01606](https://github.com/HankHuang0516/EClaw/commit/0f016068b963bb5f800a02f28817c7174979d913))
* **i18n:** rename mm_empty_title → mm_state_empty_title in mindmap.html ([#2683](https://github.com/HankHuang0516/EClaw/issues/2683)) ([c79c109](https://github.com/HankHuang0516/EClaw/commit/c79c109bea23142e8a6d9ace976d105af1280ec9))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **chat:** render mention avatars with companion renderer ([#2633](https://github.com/HankHuang0516/EClaw/issues/2633)) ([03e205f](https://github.com/HankHuang0516/EClaw/commit/03e205f663ecd2c2f443d4009dd5af0093f0bbbb))
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* scheduled audit 2026-05-13 — 6 bugs, XSS, i18n ([#2668](https://github.com/HankHuang0516/EClaw/issues/2668)) ([21dd513](https://github.com/HankHuang0516/EClaw/commit/21dd513b4464738de29164265437435ba6cc4817)), closes [#2605](https://github.com/HankHuang0516/EClaw/issues/2605) [#2608](https://github.com/HankHuang0516/EClaw/issues/2608) [#2600](https://github.com/HankHuang0516/EClaw/issues/2600) [#2599](https://github.com/HankHuang0516/EClaw/issues/2599) [#2598](https://github.com/HankHuang0516/EClaw/issues/2598)
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **chat:** smart-chip preview falls back to inline c.comments when /comments fails (PR [#2677](https://github.com/HankHuang0516/EClaw/issues/2677)) ([7f4dffd](https://github.com/HankHuang0516/EClaw/commit/7f4dffd2c83ea86f296b8fa0610f0e67c9f1af11))
* **wallpaper:** stop Android live wallpaper flashing default lobster on companion change ([#2629](https://github.com/HankHuang0516/EClaw/issues/2629)) ([8b4f66f](https://github.com/HankHuang0516/EClaw/commit/8b4f66fcb335bf43128f924b761b6337c817095b)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **app:** WebView pages honor app-selected locale via ?lang= URL param ([#2672](https://github.com/HankHuang0516/EClaw/issues/2672)) ([8ed8757](https://github.com/HankHuang0516/EClaw/commit/8ed8757aec5bf214e837cc0d81bf2b23f1993a91)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* **community:** 1-click chat button on bot cards + utm tagging ([#2610](https://github.com/HankHuang0516/EClaw/issues/2610)) ([eee97b0](https://github.com/HankHuang0516/EClaw/commit/eee97b0e2e4e74945ec24f218a69a52800b97a66))
* **dashboard:** add Claude and Codex channel guides ([#2640](https://github.com/HankHuang0516/EClaw/issues/2640)) ([c64e4c4](https://github.com/HankHuang0516/EClaw/commit/c64e4c4afc78db58c5cd578f00486dd7b2fd3311))
* **dashboard:** add Claude Code channel guide card ([#2667](https://github.com/HankHuang0516/EClaw/issues/2667)) ([d70d75c](https://github.com/HankHuang0516/EClaw/commit/d70d75c0c8caa8a540358a9aab4556b8c1927a5c))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* **portal:** add entity selector to petdx-browser ([#2602](https://github.com/HankHuang0516/EClaw/issues/2602)) ([3fa067e](https://github.com/HankHuang0516/EClaw/commit/3fa067e00b38829b48a37cecd33ee81a9a1122d9))
* **mindmap:** add GET /api/mindmap/graph force-graph projection ([#2680](https://github.com/HankHuang0516/EClaw/issues/2680)) ([a00b2e7](https://github.com/HankHuang0516/EClaw/commit/a00b2e775af2c4c98cd157f760ad87aeeee469f0)), closes [#2679](https://github.com/HankHuang0516/EClaw/issues/2679) [#2679](https://github.com/HankHuang0516/EClaw/issues/2679)
* **dashboard:** add Hermes channel promo card ([#2708](https://github.com/HankHuang0516/EClaw/issues/2708)) ([337aca1](https://github.com/HankHuang0516/EClaw/commit/337aca153d5a1cd7e888c065f00ae54db7872d91))
* **portal:** add Nagoya 5D4N trip static cross-ref page ([#2689](https://github.com/HankHuang0516/EClaw/issues/2689)) ([2e0efb6](https://github.com/HankHuang0516/EClaw/commit/2e0efb6dcdaff52226cc8854a96747000b12bdff))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **companion:** bridge crafter-station/petdex gallery (1784 pets) ([#2601](https://github.com/HankHuang0516/EClaw/issues/2601)) ([2e245be](https://github.com/HankHuang0516/EClaw/commit/2e245bea6dd47ea7361b927d389188a3c23b6bb3))
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **mindmap:** mission.html link to /portal/mindmap.html + deprecate /api/mission/mindmap ([#2685](https://github.com/HankHuang0516/EClaw/issues/2685)) ([11e297b](https://github.com/HankHuang0516/EClaw/commit/11e297bab1c9b56fcde3027d6500b7c58891bf18)), closes [#2680](https://github.com/HankHuang0516/EClaw/issues/2680) [#2684](https://github.com/HankHuang0516/EClaw/issues/2684)
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **avatar:** petdx render on card-holder my-cards (Phase 1b) ([#2621](https://github.com/HankHuang0516/EClaw/issues/2621)) ([f78ba8b](https://github.com/HankHuang0516/EClaw/commit/f78ba8b18acc426936ab6d8a82ca7541effea00d))
* **avatar:** petdx render on dashboard entity grid / org chart / bindings (Phase 1b) ([#2622](https://github.com/HankHuang0516/EClaw/issues/2622)) ([f417749](https://github.com/HankHuang0516/EClaw/commit/f41774914451048e8cd76e9ae30416a0642e173b)), closes [#2620](https://github.com/HankHuang0516/EClaw/issues/2620) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621)
* **avatar:** petdx render on kanban auto-assign / pulse / comment avatars (Phase 1b) ([#2624](https://github.com/HankHuang0516/EClaw/issues/2624)) ([6bff5f8](https://github.com/HankHuang0516/EClaw/commit/6bff5f80440d0bd91a6b1721cde9478d685c4d46))
* **avatar:** petdx render on mission skill/rule/soul entity dialogs (Phase 1b) ([#2623](https://github.com/HankHuang0516/EClaw/issues/2623)) ([129327b](https://github.com/HankHuang0516/EClaw/commit/129327bc7b91056659f1ab7e8d5e3f5260d951fb))
* **mindmap:** portal/mindmap.html force-graph prototype ([#129](https://github.com/HankHuang0516/EClaw/issues/129)) ([#2681](https://github.com/HankHuang0516/EClaw/issues/2681)) ([0f15e69](https://github.com/HankHuang0516/EClaw/commit/0f15e6930f0697c37fa08f3219edb8f9e499837f)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **portal:** redo nagoya trip page in professional tour-guide style ([#2691](https://github.com/HankHuang0516/EClaw/issues/2691)) ([b2378c0](https://github.com/HankHuang0516/EClaw/commit/b2378c06ee20fa9cccfdceceb1a4c9e0b3072f59))
* **avatar:** render selected petdx companion in chat avatars ([#2620](https://github.com/HankHuang0516/EClaw/issues/2620)) ([0bdd046](https://github.com/HankHuang0516/EClaw/commit/0bdd046fe1b1c428e32edda366ff112c08927f4c))
* **home:** replace native home with WebView hosting dashboard.html ([#2634](https://github.com/HankHuang0516/EClaw/issues/2634)) ([e69ea81](https://github.com/HankHuang0516/EClaw/commit/e69ea8160c239b083a83d6dc83a4f1c3f901c863))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **share-chat:** twitter card + per-bot og:image/twitter:* in SSR ([#2609](https://github.com/HankHuang0516/EClaw/issues/2609)) ([6cdc853](https://github.com/HankHuang0516/EClaw/commit/6cdc853dc884cdb95bd47214942768981f218ae0))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))
* **settings:** wire petdx avatar into channel-account chips ([#2626](https://github.com/HankHuang0516/EClaw/issues/2626)) ([88aec77](https://github.com/HankHuang0516/EClaw/commit/88aec772628c240e97b336bb5820892ad632d1ae))
* **files:** wire petdx avatar into entity filter & per-file badges ([#2627](https://github.com/HankHuang0516/EClaw/issues/2627)) ([5b3e5cc](https://github.com/HankHuang0516/EClaw/commit/5b3e5cc542d9da69bb4e92500fd03a542ea33f00))
* **mindmap:** wrap hardcoded zh-TW UI strings with i18n t() ([#2607](https://github.com/HankHuang0516/EClaw/issues/2607)) ([166af87](https://github.com/HankHuang0516/EClaw/commit/166af8772b2121a24aaf34a83b3de970e9b3b571)), closes [#2606](https://github.com/HankHuang0516/EClaw/issues/2606)


### Performance Improvements

* **mindmap:** force-graph hardening for 1000/2000-node graphs ([#2684](https://github.com/HankHuang0516/EClaw/issues/2684)) ([da8b1c8](https://github.com/HankHuang0516/EClaw/commit/da8b1c8f947ab8bc8fa455c1962a91146623a1fc))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-13)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **notifications:** add kanban_done + kanban_done_auto toggles to Android Settings ([#2636](https://github.com/HankHuang0516/EClaw/issues/2636)) ([a710909](https://github.com/HankHuang0516/EClaw/commit/a7109095e3393b8564e7ef1b23d382a4fbb944b8))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **kanban:** comment input no longer overlaps last comment in card detail (PR [#2678](https://github.com/HankHuang0516/EClaw/issues/2678)) ([fba91fc](https://github.com/HankHuang0516/EClaw/commit/fba91fca15402b453a0db5ee857c0b16e6087055))
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **petdx:** drop dark-grey loading placeholder + preload sprite WEBP ([#2628](https://github.com/HankHuang0516/EClaw/issues/2628)) ([59cef38](https://github.com/HankHuang0516/EClaw/commit/59cef387bd69ca99d7d15c86a1364856d3849ad8)), closes [#1a1a1a](https://github.com/HankHuang0516/EClaw/issues/1a1a1a)
* **entities:** expose botSecret to owner so wallpaper service can poll companions ([#2615](https://github.com/HankHuang0516/EClaw/issues/2615)) ([04470fc](https://github.com/HankHuang0516/EClaw/commit/04470fce8f8c3fce2b1ba8b243e776606f107502))
* **rental:** expose owner_public_code in marketplace so plaza CTA can route ([#2616](https://github.com/HankHuang0516/EClaw/issues/2616)) ([4d1372f](https://github.com/HankHuang0516/EClaw/commit/4d1372f717d93cab65543e87c852e74e9fb67071)), closes [#2610](https://github.com/HankHuang0516/EClaw/issues/2610)
* **portal:** fit embedded org chart to mobile viewport ([#2674](https://github.com/HankHuang0516/EClaw/issues/2674)) ([1c4e1b4](https://github.com/HankHuang0516/EClaw/commit/1c4e1b413ea7027b4cd4b8ecda981b0d0e12e66b))
* **mention-parser:** ignore @-mentions inside markdown code spans ([#2645](https://github.com/HankHuang0516/EClaw/issues/2645)) ([8da19d4](https://github.com/HankHuang0516/EClaw/commit/8da19d4a79ceb4152bf2144ee0847c61ce3e1def)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **kanban:** lazy-load dependency chips via IntersectionObserver ([#2632](https://github.com/HankHuang0516/EClaw/issues/2632)) ([20586b4](https://github.com/HankHuang0516/EClaw/commit/20586b43357335f9eb6a190c02d58c8e36b58aba)), closes [#2631](https://github.com/HankHuang0516/EClaw/issues/2631)
* **wallpaper:** off-load spritesheet fetch to IO so per-petdx sprites actually render ([#2618](https://github.com/HankHuang0516/EClaw/issues/2618)) ([61b832c](https://github.com/HankHuang0516/EClaw/commit/61b832c9fa8a1d0caab810ccc942d85c63349267)), closes [#2615](https://github.com/HankHuang0516/EClaw/issues/2615) [#2577](https://github.com/HankHuang0516/EClaw/issues/2577)
* **i18n:** positional format specifiers for feedback_result_logs (7 locales) ([#2597](https://github.com/HankHuang0516/EClaw/issues/2597)) ([21aedc7](https://github.com/HankHuang0516/EClaw/commit/21aedc7eebc7a2839e340136f38dfdfd4dabb9dc))
* **avatar-petdx:** preserve descriptor across transient API failures (flicker) ([#2625](https://github.com/HankHuang0516/EClaw/issues/2625)) ([7b1c606](https://github.com/HankHuang0516/EClaw/commit/7b1c606514f7698d72ec95cf6c556e4043966186))
* **chat:** preserve scroll anchor while reading history ([#2693](https://github.com/HankHuang0516/EClaw/issues/2693)) ([945fdb7](https://github.com/HankHuang0516/EClaw/commit/945fdb7192b791b31882e1e75568dd8b11e4686f))
* **portal:** reduce QA-discovered request fanout ([#2656](https://github.com/HankHuang0516/EClaw/issues/2656)) ([1e46d6b](https://github.com/HankHuang0516/EClaw/commit/1e46d6bab61e58c65b452b6503d953f8dddeee75))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **portal:** remove org chart fit scale floor ([#2676](https://github.com/HankHuang0516/EClaw/issues/2676)) ([0f01606](https://github.com/HankHuang0516/EClaw/commit/0f016068b963bb5f800a02f28817c7174979d913))
* **i18n:** rename mm_empty_title → mm_state_empty_title in mindmap.html ([#2683](https://github.com/HankHuang0516/EClaw/issues/2683)) ([c79c109](https://github.com/HankHuang0516/EClaw/commit/c79c109bea23142e8a6d9ace976d105af1280ec9))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **chat:** render mention avatars with companion renderer ([#2633](https://github.com/HankHuang0516/EClaw/issues/2633)) ([03e205f](https://github.com/HankHuang0516/EClaw/commit/03e205f663ecd2c2f443d4009dd5af0093f0bbbb))
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* scheduled audit 2026-05-13 — 6 bugs, XSS, i18n ([#2668](https://github.com/HankHuang0516/EClaw/issues/2668)) ([21dd513](https://github.com/HankHuang0516/EClaw/commit/21dd513b4464738de29164265437435ba6cc4817)), closes [#2605](https://github.com/HankHuang0516/EClaw/issues/2605) [#2608](https://github.com/HankHuang0516/EClaw/issues/2608) [#2600](https://github.com/HankHuang0516/EClaw/issues/2600) [#2599](https://github.com/HankHuang0516/EClaw/issues/2599) [#2598](https://github.com/HankHuang0516/EClaw/issues/2598)
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **chat:** smart-chip preview falls back to inline c.comments when /comments fails (PR [#2677](https://github.com/HankHuang0516/EClaw/issues/2677)) ([7f4dffd](https://github.com/HankHuang0516/EClaw/commit/7f4dffd2c83ea86f296b8fa0610f0e67c9f1af11))
* **wallpaper:** stop Android live wallpaper flashing default lobster on companion change ([#2629](https://github.com/HankHuang0516/EClaw/issues/2629)) ([8b4f66f](https://github.com/HankHuang0516/EClaw/commit/8b4f66fcb335bf43128f924b761b6337c817095b)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **app:** WebView pages honor app-selected locale via ?lang= URL param ([#2672](https://github.com/HankHuang0516/EClaw/issues/2672)) ([8ed8757](https://github.com/HankHuang0516/EClaw/commit/8ed8757aec5bf214e837cc0d81bf2b23f1993a91)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* **community:** 1-click chat button on bot cards + utm tagging ([#2610](https://github.com/HankHuang0516/EClaw/issues/2610)) ([eee97b0](https://github.com/HankHuang0516/EClaw/commit/eee97b0e2e4e74945ec24f218a69a52800b97a66))
* **dashboard:** add Claude and Codex channel guides ([#2640](https://github.com/HankHuang0516/EClaw/issues/2640)) ([c64e4c4](https://github.com/HankHuang0516/EClaw/commit/c64e4c4afc78db58c5cd578f00486dd7b2fd3311))
* **dashboard:** add Claude Code channel guide card ([#2667](https://github.com/HankHuang0516/EClaw/issues/2667)) ([d70d75c](https://github.com/HankHuang0516/EClaw/commit/d70d75c0c8caa8a540358a9aab4556b8c1927a5c))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* **portal:** add entity selector to petdx-browser ([#2602](https://github.com/HankHuang0516/EClaw/issues/2602)) ([3fa067e](https://github.com/HankHuang0516/EClaw/commit/3fa067e00b38829b48a37cecd33ee81a9a1122d9))
* **mindmap:** add GET /api/mindmap/graph force-graph projection ([#2680](https://github.com/HankHuang0516/EClaw/issues/2680)) ([a00b2e7](https://github.com/HankHuang0516/EClaw/commit/a00b2e775af2c4c98cd157f760ad87aeeee469f0)), closes [#2679](https://github.com/HankHuang0516/EClaw/issues/2679) [#2679](https://github.com/HankHuang0516/EClaw/issues/2679)
* **portal:** add Nagoya 5D4N trip static cross-ref page ([#2689](https://github.com/HankHuang0516/EClaw/issues/2689)) ([2e0efb6](https://github.com/HankHuang0516/EClaw/commit/2e0efb6dcdaff52226cc8854a96747000b12bdff))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **companion:** bridge crafter-station/petdex gallery (1784 pets) ([#2601](https://github.com/HankHuang0516/EClaw/issues/2601)) ([2e245be](https://github.com/HankHuang0516/EClaw/commit/2e245bea6dd47ea7361b927d389188a3c23b6bb3))
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **mindmap:** mission.html link to /portal/mindmap.html + deprecate /api/mission/mindmap ([#2685](https://github.com/HankHuang0516/EClaw/issues/2685)) ([11e297b](https://github.com/HankHuang0516/EClaw/commit/11e297bab1c9b56fcde3027d6500b7c58891bf18)), closes [#2680](https://github.com/HankHuang0516/EClaw/issues/2680) [#2684](https://github.com/HankHuang0516/EClaw/issues/2684)
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **avatar:** petdx render on card-holder my-cards (Phase 1b) ([#2621](https://github.com/HankHuang0516/EClaw/issues/2621)) ([f78ba8b](https://github.com/HankHuang0516/EClaw/commit/f78ba8b18acc426936ab6d8a82ca7541effea00d))
* **avatar:** petdx render on dashboard entity grid / org chart / bindings (Phase 1b) ([#2622](https://github.com/HankHuang0516/EClaw/issues/2622)) ([f417749](https://github.com/HankHuang0516/EClaw/commit/f41774914451048e8cd76e9ae30416a0642e173b)), closes [#2620](https://github.com/HankHuang0516/EClaw/issues/2620) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621)
* **avatar:** petdx render on kanban auto-assign / pulse / comment avatars (Phase 1b) ([#2624](https://github.com/HankHuang0516/EClaw/issues/2624)) ([6bff5f8](https://github.com/HankHuang0516/EClaw/commit/6bff5f80440d0bd91a6b1721cde9478d685c4d46))
* **avatar:** petdx render on mission skill/rule/soul entity dialogs (Phase 1b) ([#2623](https://github.com/HankHuang0516/EClaw/issues/2623)) ([129327b](https://github.com/HankHuang0516/EClaw/commit/129327bc7b91056659f1ab7e8d5e3f5260d951fb))
* **mindmap:** portal/mindmap.html force-graph prototype ([#129](https://github.com/HankHuang0516/EClaw/issues/129)) ([#2681](https://github.com/HankHuang0516/EClaw/issues/2681)) ([0f15e69](https://github.com/HankHuang0516/EClaw/commit/0f15e6930f0697c37fa08f3219edb8f9e499837f)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **portal:** redo nagoya trip page in professional tour-guide style ([#2691](https://github.com/HankHuang0516/EClaw/issues/2691)) ([b2378c0](https://github.com/HankHuang0516/EClaw/commit/b2378c06ee20fa9cccfdceceb1a4c9e0b3072f59))
* **avatar:** render selected petdx companion in chat avatars ([#2620](https://github.com/HankHuang0516/EClaw/issues/2620)) ([0bdd046](https://github.com/HankHuang0516/EClaw/commit/0bdd046fe1b1c428e32edda366ff112c08927f4c))
* **home:** replace native home with WebView hosting dashboard.html ([#2634](https://github.com/HankHuang0516/EClaw/issues/2634)) ([e69ea81](https://github.com/HankHuang0516/EClaw/commit/e69ea8160c239b083a83d6dc83a4f1c3f901c863))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **share-chat:** twitter card + per-bot og:image/twitter:* in SSR ([#2609](https://github.com/HankHuang0516/EClaw/issues/2609)) ([6cdc853](https://github.com/HankHuang0516/EClaw/commit/6cdc853dc884cdb95bd47214942768981f218ae0))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))
* **settings:** wire petdx avatar into channel-account chips ([#2626](https://github.com/HankHuang0516/EClaw/issues/2626)) ([88aec77](https://github.com/HankHuang0516/EClaw/commit/88aec772628c240e97b336bb5820892ad632d1ae))
* **files:** wire petdx avatar into entity filter & per-file badges ([#2627](https://github.com/HankHuang0516/EClaw/issues/2627)) ([5b3e5cc](https://github.com/HankHuang0516/EClaw/commit/5b3e5cc542d9da69bb4e92500fd03a542ea33f00))
* **mindmap:** wrap hardcoded zh-TW UI strings with i18n t() ([#2607](https://github.com/HankHuang0516/EClaw/issues/2607)) ([166af87](https://github.com/HankHuang0516/EClaw/commit/166af8772b2121a24aaf34a83b3de970e9b3b571)), closes [#2606](https://github.com/HankHuang0516/EClaw/issues/2606)


### Performance Improvements

* **mindmap:** force-graph hardening for 1000/2000-node graphs ([#2684](https://github.com/HankHuang0516/EClaw/issues/2684)) ([da8b1c8](https://github.com/HankHuang0516/EClaw/commit/da8b1c8f947ab8bc8fa455c1962a91146623a1fc))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-13)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **notifications:** add kanban_done + kanban_done_auto toggles to Android Settings ([#2636](https://github.com/HankHuang0516/EClaw/issues/2636)) ([a710909](https://github.com/HankHuang0516/EClaw/commit/a7109095e3393b8564e7ef1b23d382a4fbb944b8))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **kanban:** comment input no longer overlaps last comment in card detail (PR [#2678](https://github.com/HankHuang0516/EClaw/issues/2678)) ([fba91fc](https://github.com/HankHuang0516/EClaw/commit/fba91fca15402b453a0db5ee857c0b16e6087055))
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **petdx:** drop dark-grey loading placeholder + preload sprite WEBP ([#2628](https://github.com/HankHuang0516/EClaw/issues/2628)) ([59cef38](https://github.com/HankHuang0516/EClaw/commit/59cef387bd69ca99d7d15c86a1364856d3849ad8)), closes [#1a1a1a](https://github.com/HankHuang0516/EClaw/issues/1a1a1a)
* **entities:** expose botSecret to owner so wallpaper service can poll companions ([#2615](https://github.com/HankHuang0516/EClaw/issues/2615)) ([04470fc](https://github.com/HankHuang0516/EClaw/commit/04470fce8f8c3fce2b1ba8b243e776606f107502))
* **rental:** expose owner_public_code in marketplace so plaza CTA can route ([#2616](https://github.com/HankHuang0516/EClaw/issues/2616)) ([4d1372f](https://github.com/HankHuang0516/EClaw/commit/4d1372f717d93cab65543e87c852e74e9fb67071)), closes [#2610](https://github.com/HankHuang0516/EClaw/issues/2610)
* **portal:** fit embedded org chart to mobile viewport ([#2674](https://github.com/HankHuang0516/EClaw/issues/2674)) ([1c4e1b4](https://github.com/HankHuang0516/EClaw/commit/1c4e1b413ea7027b4cd4b8ecda981b0d0e12e66b))
* **mention-parser:** ignore @-mentions inside markdown code spans ([#2645](https://github.com/HankHuang0516/EClaw/issues/2645)) ([8da19d4](https://github.com/HankHuang0516/EClaw/commit/8da19d4a79ceb4152bf2144ee0847c61ce3e1def)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **kanban:** lazy-load dependency chips via IntersectionObserver ([#2632](https://github.com/HankHuang0516/EClaw/issues/2632)) ([20586b4](https://github.com/HankHuang0516/EClaw/commit/20586b43357335f9eb6a190c02d58c8e36b58aba)), closes [#2631](https://github.com/HankHuang0516/EClaw/issues/2631)
* **wallpaper:** off-load spritesheet fetch to IO so per-petdx sprites actually render ([#2618](https://github.com/HankHuang0516/EClaw/issues/2618)) ([61b832c](https://github.com/HankHuang0516/EClaw/commit/61b832c9fa8a1d0caab810ccc942d85c63349267)), closes [#2615](https://github.com/HankHuang0516/EClaw/issues/2615) [#2577](https://github.com/HankHuang0516/EClaw/issues/2577)
* **i18n:** positional format specifiers for feedback_result_logs (7 locales) ([#2597](https://github.com/HankHuang0516/EClaw/issues/2597)) ([21aedc7](https://github.com/HankHuang0516/EClaw/commit/21aedc7eebc7a2839e340136f38dfdfd4dabb9dc))
* **avatar-petdx:** preserve descriptor across transient API failures (flicker) ([#2625](https://github.com/HankHuang0516/EClaw/issues/2625)) ([7b1c606](https://github.com/HankHuang0516/EClaw/commit/7b1c606514f7698d72ec95cf6c556e4043966186))
* **portal:** reduce QA-discovered request fanout ([#2656](https://github.com/HankHuang0516/EClaw/issues/2656)) ([1e46d6b](https://github.com/HankHuang0516/EClaw/commit/1e46d6bab61e58c65b452b6503d953f8dddeee75))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **portal:** remove org chart fit scale floor ([#2676](https://github.com/HankHuang0516/EClaw/issues/2676)) ([0f01606](https://github.com/HankHuang0516/EClaw/commit/0f016068b963bb5f800a02f28817c7174979d913))
* **i18n:** rename mm_empty_title → mm_state_empty_title in mindmap.html ([#2683](https://github.com/HankHuang0516/EClaw/issues/2683)) ([c79c109](https://github.com/HankHuang0516/EClaw/commit/c79c109bea23142e8a6d9ace976d105af1280ec9))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **chat:** render mention avatars with companion renderer ([#2633](https://github.com/HankHuang0516/EClaw/issues/2633)) ([03e205f](https://github.com/HankHuang0516/EClaw/commit/03e205f663ecd2c2f443d4009dd5af0093f0bbbb))
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* scheduled audit 2026-05-13 — 6 bugs, XSS, i18n ([#2668](https://github.com/HankHuang0516/EClaw/issues/2668)) ([21dd513](https://github.com/HankHuang0516/EClaw/commit/21dd513b4464738de29164265437435ba6cc4817)), closes [#2605](https://github.com/HankHuang0516/EClaw/issues/2605) [#2608](https://github.com/HankHuang0516/EClaw/issues/2608) [#2600](https://github.com/HankHuang0516/EClaw/issues/2600) [#2599](https://github.com/HankHuang0516/EClaw/issues/2599) [#2598](https://github.com/HankHuang0516/EClaw/issues/2598)
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **chat:** smart-chip preview falls back to inline c.comments when /comments fails (PR [#2677](https://github.com/HankHuang0516/EClaw/issues/2677)) ([7f4dffd](https://github.com/HankHuang0516/EClaw/commit/7f4dffd2c83ea86f296b8fa0610f0e67c9f1af11))
* **wallpaper:** stop Android live wallpaper flashing default lobster on companion change ([#2629](https://github.com/HankHuang0516/EClaw/issues/2629)) ([8b4f66f](https://github.com/HankHuang0516/EClaw/commit/8b4f66fcb335bf43128f924b761b6337c817095b)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **app:** WebView pages honor app-selected locale via ?lang= URL param ([#2672](https://github.com/HankHuang0516/EClaw/issues/2672)) ([8ed8757](https://github.com/HankHuang0516/EClaw/commit/8ed8757aec5bf214e837cc0d81bf2b23f1993a91)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* **community:** 1-click chat button on bot cards + utm tagging ([#2610](https://github.com/HankHuang0516/EClaw/issues/2610)) ([eee97b0](https://github.com/HankHuang0516/EClaw/commit/eee97b0e2e4e74945ec24f218a69a52800b97a66))
* **dashboard:** add Claude and Codex channel guides ([#2640](https://github.com/HankHuang0516/EClaw/issues/2640)) ([c64e4c4](https://github.com/HankHuang0516/EClaw/commit/c64e4c4afc78db58c5cd578f00486dd7b2fd3311))
* **dashboard:** add Claude Code channel guide card ([#2667](https://github.com/HankHuang0516/EClaw/issues/2667)) ([d70d75c](https://github.com/HankHuang0516/EClaw/commit/d70d75c0c8caa8a540358a9aab4556b8c1927a5c))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* **portal:** add entity selector to petdx-browser ([#2602](https://github.com/HankHuang0516/EClaw/issues/2602)) ([3fa067e](https://github.com/HankHuang0516/EClaw/commit/3fa067e00b38829b48a37cecd33ee81a9a1122d9))
* **mindmap:** add GET /api/mindmap/graph force-graph projection ([#2680](https://github.com/HankHuang0516/EClaw/issues/2680)) ([a00b2e7](https://github.com/HankHuang0516/EClaw/commit/a00b2e775af2c4c98cd157f760ad87aeeee469f0)), closes [#2679](https://github.com/HankHuang0516/EClaw/issues/2679) [#2679](https://github.com/HankHuang0516/EClaw/issues/2679)
* **portal:** add Nagoya 5D4N trip static cross-ref page ([#2689](https://github.com/HankHuang0516/EClaw/issues/2689)) ([2e0efb6](https://github.com/HankHuang0516/EClaw/commit/2e0efb6dcdaff52226cc8854a96747000b12bdff))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **companion:** bridge crafter-station/petdex gallery (1784 pets) ([#2601](https://github.com/HankHuang0516/EClaw/issues/2601)) ([2e245be](https://github.com/HankHuang0516/EClaw/commit/2e245bea6dd47ea7361b927d389188a3c23b6bb3))
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **mindmap:** mission.html link to /portal/mindmap.html + deprecate /api/mission/mindmap ([#2685](https://github.com/HankHuang0516/EClaw/issues/2685)) ([11e297b](https://github.com/HankHuang0516/EClaw/commit/11e297bab1c9b56fcde3027d6500b7c58891bf18)), closes [#2680](https://github.com/HankHuang0516/EClaw/issues/2680) [#2684](https://github.com/HankHuang0516/EClaw/issues/2684)
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **avatar:** petdx render on card-holder my-cards (Phase 1b) ([#2621](https://github.com/HankHuang0516/EClaw/issues/2621)) ([f78ba8b](https://github.com/HankHuang0516/EClaw/commit/f78ba8b18acc426936ab6d8a82ca7541effea00d))
* **avatar:** petdx render on dashboard entity grid / org chart / bindings (Phase 1b) ([#2622](https://github.com/HankHuang0516/EClaw/issues/2622)) ([f417749](https://github.com/HankHuang0516/EClaw/commit/f41774914451048e8cd76e9ae30416a0642e173b)), closes [#2620](https://github.com/HankHuang0516/EClaw/issues/2620) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621)
* **avatar:** petdx render on kanban auto-assign / pulse / comment avatars (Phase 1b) ([#2624](https://github.com/HankHuang0516/EClaw/issues/2624)) ([6bff5f8](https://github.com/HankHuang0516/EClaw/commit/6bff5f80440d0bd91a6b1721cde9478d685c4d46))
* **avatar:** petdx render on mission skill/rule/soul entity dialogs (Phase 1b) ([#2623](https://github.com/HankHuang0516/EClaw/issues/2623)) ([129327b](https://github.com/HankHuang0516/EClaw/commit/129327bc7b91056659f1ab7e8d5e3f5260d951fb))
* **mindmap:** portal/mindmap.html force-graph prototype ([#129](https://github.com/HankHuang0516/EClaw/issues/129)) ([#2681](https://github.com/HankHuang0516/EClaw/issues/2681)) ([0f15e69](https://github.com/HankHuang0516/EClaw/commit/0f15e6930f0697c37fa08f3219edb8f9e499837f)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **portal:** redo nagoya trip page in professional tour-guide style ([#2691](https://github.com/HankHuang0516/EClaw/issues/2691)) ([b2378c0](https://github.com/HankHuang0516/EClaw/commit/b2378c06ee20fa9cccfdceceb1a4c9e0b3072f59))
* **avatar:** render selected petdx companion in chat avatars ([#2620](https://github.com/HankHuang0516/EClaw/issues/2620)) ([0bdd046](https://github.com/HankHuang0516/EClaw/commit/0bdd046fe1b1c428e32edda366ff112c08927f4c))
* **home:** replace native home with WebView hosting dashboard.html ([#2634](https://github.com/HankHuang0516/EClaw/issues/2634)) ([e69ea81](https://github.com/HankHuang0516/EClaw/commit/e69ea8160c239b083a83d6dc83a4f1c3f901c863))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **share-chat:** twitter card + per-bot og:image/twitter:* in SSR ([#2609](https://github.com/HankHuang0516/EClaw/issues/2609)) ([6cdc853](https://github.com/HankHuang0516/EClaw/commit/6cdc853dc884cdb95bd47214942768981f218ae0))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))
* **settings:** wire petdx avatar into channel-account chips ([#2626](https://github.com/HankHuang0516/EClaw/issues/2626)) ([88aec77](https://github.com/HankHuang0516/EClaw/commit/88aec772628c240e97b336bb5820892ad632d1ae))
* **files:** wire petdx avatar into entity filter & per-file badges ([#2627](https://github.com/HankHuang0516/EClaw/issues/2627)) ([5b3e5cc](https://github.com/HankHuang0516/EClaw/commit/5b3e5cc542d9da69bb4e92500fd03a542ea33f00))
* **mindmap:** wrap hardcoded zh-TW UI strings with i18n t() ([#2607](https://github.com/HankHuang0516/EClaw/issues/2607)) ([166af87](https://github.com/HankHuang0516/EClaw/commit/166af8772b2121a24aaf34a83b3de970e9b3b571)), closes [#2606](https://github.com/HankHuang0516/EClaw/issues/2606)


### Performance Improvements

* **mindmap:** force-graph hardening for 1000/2000-node graphs ([#2684](https://github.com/HankHuang0516/EClaw/issues/2684)) ([da8b1c8](https://github.com/HankHuang0516/EClaw/commit/da8b1c8f947ab8bc8fa455c1962a91146623a1fc))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-13)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **notifications:** add kanban_done + kanban_done_auto toggles to Android Settings ([#2636](https://github.com/HankHuang0516/EClaw/issues/2636)) ([a710909](https://github.com/HankHuang0516/EClaw/commit/a7109095e3393b8564e7ef1b23d382a4fbb944b8))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **kanban:** comment input no longer overlaps last comment in card detail (PR [#2678](https://github.com/HankHuang0516/EClaw/issues/2678)) ([fba91fc](https://github.com/HankHuang0516/EClaw/commit/fba91fca15402b453a0db5ee857c0b16e6087055))
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **petdx:** drop dark-grey loading placeholder + preload sprite WEBP ([#2628](https://github.com/HankHuang0516/EClaw/issues/2628)) ([59cef38](https://github.com/HankHuang0516/EClaw/commit/59cef387bd69ca99d7d15c86a1364856d3849ad8)), closes [#1a1a1a](https://github.com/HankHuang0516/EClaw/issues/1a1a1a)
* **entities:** expose botSecret to owner so wallpaper service can poll companions ([#2615](https://github.com/HankHuang0516/EClaw/issues/2615)) ([04470fc](https://github.com/HankHuang0516/EClaw/commit/04470fce8f8c3fce2b1ba8b243e776606f107502))
* **rental:** expose owner_public_code in marketplace so plaza CTA can route ([#2616](https://github.com/HankHuang0516/EClaw/issues/2616)) ([4d1372f](https://github.com/HankHuang0516/EClaw/commit/4d1372f717d93cab65543e87c852e74e9fb67071)), closes [#2610](https://github.com/HankHuang0516/EClaw/issues/2610)
* **portal:** fit embedded org chart to mobile viewport ([#2674](https://github.com/HankHuang0516/EClaw/issues/2674)) ([1c4e1b4](https://github.com/HankHuang0516/EClaw/commit/1c4e1b413ea7027b4cd4b8ecda981b0d0e12e66b))
* **mention-parser:** ignore @-mentions inside markdown code spans ([#2645](https://github.com/HankHuang0516/EClaw/issues/2645)) ([8da19d4](https://github.com/HankHuang0516/EClaw/commit/8da19d4a79ceb4152bf2144ee0847c61ce3e1def)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **kanban:** lazy-load dependency chips via IntersectionObserver ([#2632](https://github.com/HankHuang0516/EClaw/issues/2632)) ([20586b4](https://github.com/HankHuang0516/EClaw/commit/20586b43357335f9eb6a190c02d58c8e36b58aba)), closes [#2631](https://github.com/HankHuang0516/EClaw/issues/2631)
* **wallpaper:** off-load spritesheet fetch to IO so per-petdx sprites actually render ([#2618](https://github.com/HankHuang0516/EClaw/issues/2618)) ([61b832c](https://github.com/HankHuang0516/EClaw/commit/61b832c9fa8a1d0caab810ccc942d85c63349267)), closes [#2615](https://github.com/HankHuang0516/EClaw/issues/2615) [#2577](https://github.com/HankHuang0516/EClaw/issues/2577)
* **i18n:** positional format specifiers for feedback_result_logs (7 locales) ([#2597](https://github.com/HankHuang0516/EClaw/issues/2597)) ([21aedc7](https://github.com/HankHuang0516/EClaw/commit/21aedc7eebc7a2839e340136f38dfdfd4dabb9dc))
* **avatar-petdx:** preserve descriptor across transient API failures (flicker) ([#2625](https://github.com/HankHuang0516/EClaw/issues/2625)) ([7b1c606](https://github.com/HankHuang0516/EClaw/commit/7b1c606514f7698d72ec95cf6c556e4043966186))
* **portal:** reduce QA-discovered request fanout ([#2656](https://github.com/HankHuang0516/EClaw/issues/2656)) ([1e46d6b](https://github.com/HankHuang0516/EClaw/commit/1e46d6bab61e58c65b452b6503d953f8dddeee75))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **portal:** remove org chart fit scale floor ([#2676](https://github.com/HankHuang0516/EClaw/issues/2676)) ([0f01606](https://github.com/HankHuang0516/EClaw/commit/0f016068b963bb5f800a02f28817c7174979d913))
* **i18n:** rename mm_empty_title → mm_state_empty_title in mindmap.html ([#2683](https://github.com/HankHuang0516/EClaw/issues/2683)) ([c79c109](https://github.com/HankHuang0516/EClaw/commit/c79c109bea23142e8a6d9ace976d105af1280ec9))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **chat:** render mention avatars with companion renderer ([#2633](https://github.com/HankHuang0516/EClaw/issues/2633)) ([03e205f](https://github.com/HankHuang0516/EClaw/commit/03e205f663ecd2c2f443d4009dd5af0093f0bbbb))
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* scheduled audit 2026-05-13 — 6 bugs, XSS, i18n ([#2668](https://github.com/HankHuang0516/EClaw/issues/2668)) ([21dd513](https://github.com/HankHuang0516/EClaw/commit/21dd513b4464738de29164265437435ba6cc4817)), closes [#2605](https://github.com/HankHuang0516/EClaw/issues/2605) [#2608](https://github.com/HankHuang0516/EClaw/issues/2608) [#2600](https://github.com/HankHuang0516/EClaw/issues/2600) [#2599](https://github.com/HankHuang0516/EClaw/issues/2599) [#2598](https://github.com/HankHuang0516/EClaw/issues/2598)
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **chat:** smart-chip preview falls back to inline c.comments when /comments fails (PR [#2677](https://github.com/HankHuang0516/EClaw/issues/2677)) ([7f4dffd](https://github.com/HankHuang0516/EClaw/commit/7f4dffd2c83ea86f296b8fa0610f0e67c9f1af11))
* **wallpaper:** stop Android live wallpaper flashing default lobster on companion change ([#2629](https://github.com/HankHuang0516/EClaw/issues/2629)) ([8b4f66f](https://github.com/HankHuang0516/EClaw/commit/8b4f66fcb335bf43128f924b761b6337c817095b)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **app:** WebView pages honor app-selected locale via ?lang= URL param ([#2672](https://github.com/HankHuang0516/EClaw/issues/2672)) ([8ed8757](https://github.com/HankHuang0516/EClaw/commit/8ed8757aec5bf214e837cc0d81bf2b23f1993a91)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* **community:** 1-click chat button on bot cards + utm tagging ([#2610](https://github.com/HankHuang0516/EClaw/issues/2610)) ([eee97b0](https://github.com/HankHuang0516/EClaw/commit/eee97b0e2e4e74945ec24f218a69a52800b97a66))
* **dashboard:** add Claude and Codex channel guides ([#2640](https://github.com/HankHuang0516/EClaw/issues/2640)) ([c64e4c4](https://github.com/HankHuang0516/EClaw/commit/c64e4c4afc78db58c5cd578f00486dd7b2fd3311))
* **dashboard:** add Claude Code channel guide card ([#2667](https://github.com/HankHuang0516/EClaw/issues/2667)) ([d70d75c](https://github.com/HankHuang0516/EClaw/commit/d70d75c0c8caa8a540358a9aab4556b8c1927a5c))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* **portal:** add entity selector to petdx-browser ([#2602](https://github.com/HankHuang0516/EClaw/issues/2602)) ([3fa067e](https://github.com/HankHuang0516/EClaw/commit/3fa067e00b38829b48a37cecd33ee81a9a1122d9))
* **mindmap:** add GET /api/mindmap/graph force-graph projection ([#2680](https://github.com/HankHuang0516/EClaw/issues/2680)) ([a00b2e7](https://github.com/HankHuang0516/EClaw/commit/a00b2e775af2c4c98cd157f760ad87aeeee469f0)), closes [#2679](https://github.com/HankHuang0516/EClaw/issues/2679) [#2679](https://github.com/HankHuang0516/EClaw/issues/2679)
* **portal:** add Nagoya 5D4N trip static cross-ref page ([#2689](https://github.com/HankHuang0516/EClaw/issues/2689)) ([2e0efb6](https://github.com/HankHuang0516/EClaw/commit/2e0efb6dcdaff52226cc8854a96747000b12bdff))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **companion:** bridge crafter-station/petdex gallery (1784 pets) ([#2601](https://github.com/HankHuang0516/EClaw/issues/2601)) ([2e245be](https://github.com/HankHuang0516/EClaw/commit/2e245bea6dd47ea7361b927d389188a3c23b6bb3))
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **mindmap:** mission.html link to /portal/mindmap.html + deprecate /api/mission/mindmap ([#2685](https://github.com/HankHuang0516/EClaw/issues/2685)) ([11e297b](https://github.com/HankHuang0516/EClaw/commit/11e297bab1c9b56fcde3027d6500b7c58891bf18)), closes [#2680](https://github.com/HankHuang0516/EClaw/issues/2680) [#2684](https://github.com/HankHuang0516/EClaw/issues/2684)
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **avatar:** petdx render on card-holder my-cards (Phase 1b) ([#2621](https://github.com/HankHuang0516/EClaw/issues/2621)) ([f78ba8b](https://github.com/HankHuang0516/EClaw/commit/f78ba8b18acc426936ab6d8a82ca7541effea00d))
* **avatar:** petdx render on dashboard entity grid / org chart / bindings (Phase 1b) ([#2622](https://github.com/HankHuang0516/EClaw/issues/2622)) ([f417749](https://github.com/HankHuang0516/EClaw/commit/f41774914451048e8cd76e9ae30416a0642e173b)), closes [#2620](https://github.com/HankHuang0516/EClaw/issues/2620) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621)
* **avatar:** petdx render on kanban auto-assign / pulse / comment avatars (Phase 1b) ([#2624](https://github.com/HankHuang0516/EClaw/issues/2624)) ([6bff5f8](https://github.com/HankHuang0516/EClaw/commit/6bff5f80440d0bd91a6b1721cde9478d685c4d46))
* **avatar:** petdx render on mission skill/rule/soul entity dialogs (Phase 1b) ([#2623](https://github.com/HankHuang0516/EClaw/issues/2623)) ([129327b](https://github.com/HankHuang0516/EClaw/commit/129327bc7b91056659f1ab7e8d5e3f5260d951fb))
* **mindmap:** portal/mindmap.html force-graph prototype ([#129](https://github.com/HankHuang0516/EClaw/issues/129)) ([#2681](https://github.com/HankHuang0516/EClaw/issues/2681)) ([0f15e69](https://github.com/HankHuang0516/EClaw/commit/0f15e6930f0697c37fa08f3219edb8f9e499837f)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **portal:** redo nagoya trip page in professional tour-guide style ([#2691](https://github.com/HankHuang0516/EClaw/issues/2691)) ([b2378c0](https://github.com/HankHuang0516/EClaw/commit/b2378c06ee20fa9cccfdceceb1a4c9e0b3072f59))
* **avatar:** render selected petdx companion in chat avatars ([#2620](https://github.com/HankHuang0516/EClaw/issues/2620)) ([0bdd046](https://github.com/HankHuang0516/EClaw/commit/0bdd046fe1b1c428e32edda366ff112c08927f4c))
* **home:** replace native home with WebView hosting dashboard.html ([#2634](https://github.com/HankHuang0516/EClaw/issues/2634)) ([e69ea81](https://github.com/HankHuang0516/EClaw/commit/e69ea8160c239b083a83d6dc83a4f1c3f901c863))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **share-chat:** twitter card + per-bot og:image/twitter:* in SSR ([#2609](https://github.com/HankHuang0516/EClaw/issues/2609)) ([6cdc853](https://github.com/HankHuang0516/EClaw/commit/6cdc853dc884cdb95bd47214942768981f218ae0))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))
* **settings:** wire petdx avatar into channel-account chips ([#2626](https://github.com/HankHuang0516/EClaw/issues/2626)) ([88aec77](https://github.com/HankHuang0516/EClaw/commit/88aec772628c240e97b336bb5820892ad632d1ae))
* **files:** wire petdx avatar into entity filter & per-file badges ([#2627](https://github.com/HankHuang0516/EClaw/issues/2627)) ([5b3e5cc](https://github.com/HankHuang0516/EClaw/commit/5b3e5cc542d9da69bb4e92500fd03a542ea33f00))
* **mindmap:** wrap hardcoded zh-TW UI strings with i18n t() ([#2607](https://github.com/HankHuang0516/EClaw/issues/2607)) ([166af87](https://github.com/HankHuang0516/EClaw/commit/166af8772b2121a24aaf34a83b3de970e9b3b571)), closes [#2606](https://github.com/HankHuang0516/EClaw/issues/2606)


### Performance Improvements

* **mindmap:** force-graph hardening for 1000/2000-node graphs ([#2684](https://github.com/HankHuang0516/EClaw/issues/2684)) ([da8b1c8](https://github.com/HankHuang0516/EClaw/commit/da8b1c8f947ab8bc8fa455c1962a91146623a1fc))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-13)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **notifications:** add kanban_done + kanban_done_auto toggles to Android Settings ([#2636](https://github.com/HankHuang0516/EClaw/issues/2636)) ([a710909](https://github.com/HankHuang0516/EClaw/commit/a7109095e3393b8564e7ef1b23d382a4fbb944b8))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **kanban:** comment input no longer overlaps last comment in card detail (PR [#2678](https://github.com/HankHuang0516/EClaw/issues/2678)) ([fba91fc](https://github.com/HankHuang0516/EClaw/commit/fba91fca15402b453a0db5ee857c0b16e6087055))
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **petdx:** drop dark-grey loading placeholder + preload sprite WEBP ([#2628](https://github.com/HankHuang0516/EClaw/issues/2628)) ([59cef38](https://github.com/HankHuang0516/EClaw/commit/59cef387bd69ca99d7d15c86a1364856d3849ad8)), closes [#1a1a1a](https://github.com/HankHuang0516/EClaw/issues/1a1a1a)
* **entities:** expose botSecret to owner so wallpaper service can poll companions ([#2615](https://github.com/HankHuang0516/EClaw/issues/2615)) ([04470fc](https://github.com/HankHuang0516/EClaw/commit/04470fce8f8c3fce2b1ba8b243e776606f107502))
* **rental:** expose owner_public_code in marketplace so plaza CTA can route ([#2616](https://github.com/HankHuang0516/EClaw/issues/2616)) ([4d1372f](https://github.com/HankHuang0516/EClaw/commit/4d1372f717d93cab65543e87c852e74e9fb67071)), closes [#2610](https://github.com/HankHuang0516/EClaw/issues/2610)
* **portal:** fit embedded org chart to mobile viewport ([#2674](https://github.com/HankHuang0516/EClaw/issues/2674)) ([1c4e1b4](https://github.com/HankHuang0516/EClaw/commit/1c4e1b413ea7027b4cd4b8ecda981b0d0e12e66b))
* **mention-parser:** ignore @-mentions inside markdown code spans ([#2645](https://github.com/HankHuang0516/EClaw/issues/2645)) ([8da19d4](https://github.com/HankHuang0516/EClaw/commit/8da19d4a79ceb4152bf2144ee0847c61ce3e1def)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **kanban:** lazy-load dependency chips via IntersectionObserver ([#2632](https://github.com/HankHuang0516/EClaw/issues/2632)) ([20586b4](https://github.com/HankHuang0516/EClaw/commit/20586b43357335f9eb6a190c02d58c8e36b58aba)), closes [#2631](https://github.com/HankHuang0516/EClaw/issues/2631)
* **wallpaper:** off-load spritesheet fetch to IO so per-petdx sprites actually render ([#2618](https://github.com/HankHuang0516/EClaw/issues/2618)) ([61b832c](https://github.com/HankHuang0516/EClaw/commit/61b832c9fa8a1d0caab810ccc942d85c63349267)), closes [#2615](https://github.com/HankHuang0516/EClaw/issues/2615) [#2577](https://github.com/HankHuang0516/EClaw/issues/2577)
* **i18n:** positional format specifiers for feedback_result_logs (7 locales) ([#2597](https://github.com/HankHuang0516/EClaw/issues/2597)) ([21aedc7](https://github.com/HankHuang0516/EClaw/commit/21aedc7eebc7a2839e340136f38dfdfd4dabb9dc))
* **avatar-petdx:** preserve descriptor across transient API failures (flicker) ([#2625](https://github.com/HankHuang0516/EClaw/issues/2625)) ([7b1c606](https://github.com/HankHuang0516/EClaw/commit/7b1c606514f7698d72ec95cf6c556e4043966186))
* **portal:** reduce QA-discovered request fanout ([#2656](https://github.com/HankHuang0516/EClaw/issues/2656)) ([1e46d6b](https://github.com/HankHuang0516/EClaw/commit/1e46d6bab61e58c65b452b6503d953f8dddeee75))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **portal:** remove org chart fit scale floor ([#2676](https://github.com/HankHuang0516/EClaw/issues/2676)) ([0f01606](https://github.com/HankHuang0516/EClaw/commit/0f016068b963bb5f800a02f28817c7174979d913))
* **i18n:** rename mm_empty_title → mm_state_empty_title in mindmap.html ([#2683](https://github.com/HankHuang0516/EClaw/issues/2683)) ([c79c109](https://github.com/HankHuang0516/EClaw/commit/c79c109bea23142e8a6d9ace976d105af1280ec9))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **chat:** render mention avatars with companion renderer ([#2633](https://github.com/HankHuang0516/EClaw/issues/2633)) ([03e205f](https://github.com/HankHuang0516/EClaw/commit/03e205f663ecd2c2f443d4009dd5af0093f0bbbb))
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* scheduled audit 2026-05-13 — 6 bugs, XSS, i18n ([#2668](https://github.com/HankHuang0516/EClaw/issues/2668)) ([21dd513](https://github.com/HankHuang0516/EClaw/commit/21dd513b4464738de29164265437435ba6cc4817)), closes [#2605](https://github.com/HankHuang0516/EClaw/issues/2605) [#2608](https://github.com/HankHuang0516/EClaw/issues/2608) [#2600](https://github.com/HankHuang0516/EClaw/issues/2600) [#2599](https://github.com/HankHuang0516/EClaw/issues/2599) [#2598](https://github.com/HankHuang0516/EClaw/issues/2598)
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **chat:** smart-chip preview falls back to inline c.comments when /comments fails (PR [#2677](https://github.com/HankHuang0516/EClaw/issues/2677)) ([7f4dffd](https://github.com/HankHuang0516/EClaw/commit/7f4dffd2c83ea86f296b8fa0610f0e67c9f1af11))
* **wallpaper:** stop Android live wallpaper flashing default lobster on companion change ([#2629](https://github.com/HankHuang0516/EClaw/issues/2629)) ([8b4f66f](https://github.com/HankHuang0516/EClaw/commit/8b4f66fcb335bf43128f924b761b6337c817095b)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **app:** WebView pages honor app-selected locale via ?lang= URL param ([#2672](https://github.com/HankHuang0516/EClaw/issues/2672)) ([8ed8757](https://github.com/HankHuang0516/EClaw/commit/8ed8757aec5bf214e837cc0d81bf2b23f1993a91)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* **community:** 1-click chat button on bot cards + utm tagging ([#2610](https://github.com/HankHuang0516/EClaw/issues/2610)) ([eee97b0](https://github.com/HankHuang0516/EClaw/commit/eee97b0e2e4e74945ec24f218a69a52800b97a66))
* **dashboard:** add Claude and Codex channel guides ([#2640](https://github.com/HankHuang0516/EClaw/issues/2640)) ([c64e4c4](https://github.com/HankHuang0516/EClaw/commit/c64e4c4afc78db58c5cd578f00486dd7b2fd3311))
* **dashboard:** add Claude Code channel guide card ([#2667](https://github.com/HankHuang0516/EClaw/issues/2667)) ([d70d75c](https://github.com/HankHuang0516/EClaw/commit/d70d75c0c8caa8a540358a9aab4556b8c1927a5c))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* **portal:** add entity selector to petdx-browser ([#2602](https://github.com/HankHuang0516/EClaw/issues/2602)) ([3fa067e](https://github.com/HankHuang0516/EClaw/commit/3fa067e00b38829b48a37cecd33ee81a9a1122d9))
* **mindmap:** add GET /api/mindmap/graph force-graph projection ([#2680](https://github.com/HankHuang0516/EClaw/issues/2680)) ([a00b2e7](https://github.com/HankHuang0516/EClaw/commit/a00b2e775af2c4c98cd157f760ad87aeeee469f0)), closes [#2679](https://github.com/HankHuang0516/EClaw/issues/2679) [#2679](https://github.com/HankHuang0516/EClaw/issues/2679)
* **portal:** add Nagoya 5D4N trip static cross-ref page ([#2689](https://github.com/HankHuang0516/EClaw/issues/2689)) ([2e0efb6](https://github.com/HankHuang0516/EClaw/commit/2e0efb6dcdaff52226cc8854a96747000b12bdff))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **companion:** bridge crafter-station/petdex gallery (1784 pets) ([#2601](https://github.com/HankHuang0516/EClaw/issues/2601)) ([2e245be](https://github.com/HankHuang0516/EClaw/commit/2e245bea6dd47ea7361b927d389188a3c23b6bb3))
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **mindmap:** mission.html link to /portal/mindmap.html + deprecate /api/mission/mindmap ([#2685](https://github.com/HankHuang0516/EClaw/issues/2685)) ([11e297b](https://github.com/HankHuang0516/EClaw/commit/11e297bab1c9b56fcde3027d6500b7c58891bf18)), closes [#2680](https://github.com/HankHuang0516/EClaw/issues/2680) [#2684](https://github.com/HankHuang0516/EClaw/issues/2684)
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **avatar:** petdx render on card-holder my-cards (Phase 1b) ([#2621](https://github.com/HankHuang0516/EClaw/issues/2621)) ([f78ba8b](https://github.com/HankHuang0516/EClaw/commit/f78ba8b18acc426936ab6d8a82ca7541effea00d))
* **avatar:** petdx render on dashboard entity grid / org chart / bindings (Phase 1b) ([#2622](https://github.com/HankHuang0516/EClaw/issues/2622)) ([f417749](https://github.com/HankHuang0516/EClaw/commit/f41774914451048e8cd76e9ae30416a0642e173b)), closes [#2620](https://github.com/HankHuang0516/EClaw/issues/2620) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621)
* **avatar:** petdx render on kanban auto-assign / pulse / comment avatars (Phase 1b) ([#2624](https://github.com/HankHuang0516/EClaw/issues/2624)) ([6bff5f8](https://github.com/HankHuang0516/EClaw/commit/6bff5f80440d0bd91a6b1721cde9478d685c4d46))
* **avatar:** petdx render on mission skill/rule/soul entity dialogs (Phase 1b) ([#2623](https://github.com/HankHuang0516/EClaw/issues/2623)) ([129327b](https://github.com/HankHuang0516/EClaw/commit/129327bc7b91056659f1ab7e8d5e3f5260d951fb))
* **mindmap:** portal/mindmap.html force-graph prototype ([#129](https://github.com/HankHuang0516/EClaw/issues/129)) ([#2681](https://github.com/HankHuang0516/EClaw/issues/2681)) ([0f15e69](https://github.com/HankHuang0516/EClaw/commit/0f15e6930f0697c37fa08f3219edb8f9e499837f)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **avatar:** render selected petdx companion in chat avatars ([#2620](https://github.com/HankHuang0516/EClaw/issues/2620)) ([0bdd046](https://github.com/HankHuang0516/EClaw/commit/0bdd046fe1b1c428e32edda366ff112c08927f4c))
* **home:** replace native home with WebView hosting dashboard.html ([#2634](https://github.com/HankHuang0516/EClaw/issues/2634)) ([e69ea81](https://github.com/HankHuang0516/EClaw/commit/e69ea8160c239b083a83d6dc83a4f1c3f901c863))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **share-chat:** twitter card + per-bot og:image/twitter:* in SSR ([#2609](https://github.com/HankHuang0516/EClaw/issues/2609)) ([6cdc853](https://github.com/HankHuang0516/EClaw/commit/6cdc853dc884cdb95bd47214942768981f218ae0))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))
* **settings:** wire petdx avatar into channel-account chips ([#2626](https://github.com/HankHuang0516/EClaw/issues/2626)) ([88aec77](https://github.com/HankHuang0516/EClaw/commit/88aec772628c240e97b336bb5820892ad632d1ae))
* **files:** wire petdx avatar into entity filter & per-file badges ([#2627](https://github.com/HankHuang0516/EClaw/issues/2627)) ([5b3e5cc](https://github.com/HankHuang0516/EClaw/commit/5b3e5cc542d9da69bb4e92500fd03a542ea33f00))
* **mindmap:** wrap hardcoded zh-TW UI strings with i18n t() ([#2607](https://github.com/HankHuang0516/EClaw/issues/2607)) ([166af87](https://github.com/HankHuang0516/EClaw/commit/166af8772b2121a24aaf34a83b3de970e9b3b571)), closes [#2606](https://github.com/HankHuang0516/EClaw/issues/2606)


### Performance Improvements

* **mindmap:** force-graph hardening for 1000/2000-node graphs ([#2684](https://github.com/HankHuang0516/EClaw/issues/2684)) ([da8b1c8](https://github.com/HankHuang0516/EClaw/commit/da8b1c8f947ab8bc8fa455c1962a91146623a1fc))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-13)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **notifications:** add kanban_done + kanban_done_auto toggles to Android Settings ([#2636](https://github.com/HankHuang0516/EClaw/issues/2636)) ([a710909](https://github.com/HankHuang0516/EClaw/commit/a7109095e3393b8564e7ef1b23d382a4fbb944b8))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **kanban:** comment input no longer overlaps last comment in card detail (PR [#2678](https://github.com/HankHuang0516/EClaw/issues/2678)) ([fba91fc](https://github.com/HankHuang0516/EClaw/commit/fba91fca15402b453a0db5ee857c0b16e6087055))
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **petdx:** drop dark-grey loading placeholder + preload sprite WEBP ([#2628](https://github.com/HankHuang0516/EClaw/issues/2628)) ([59cef38](https://github.com/HankHuang0516/EClaw/commit/59cef387bd69ca99d7d15c86a1364856d3849ad8)), closes [#1a1a1a](https://github.com/HankHuang0516/EClaw/issues/1a1a1a)
* **entities:** expose botSecret to owner so wallpaper service can poll companions ([#2615](https://github.com/HankHuang0516/EClaw/issues/2615)) ([04470fc](https://github.com/HankHuang0516/EClaw/commit/04470fce8f8c3fce2b1ba8b243e776606f107502))
* **rental:** expose owner_public_code in marketplace so plaza CTA can route ([#2616](https://github.com/HankHuang0516/EClaw/issues/2616)) ([4d1372f](https://github.com/HankHuang0516/EClaw/commit/4d1372f717d93cab65543e87c852e74e9fb67071)), closes [#2610](https://github.com/HankHuang0516/EClaw/issues/2610)
* **portal:** fit embedded org chart to mobile viewport ([#2674](https://github.com/HankHuang0516/EClaw/issues/2674)) ([1c4e1b4](https://github.com/HankHuang0516/EClaw/commit/1c4e1b413ea7027b4cd4b8ecda981b0d0e12e66b))
* **mention-parser:** ignore @-mentions inside markdown code spans ([#2645](https://github.com/HankHuang0516/EClaw/issues/2645)) ([8da19d4](https://github.com/HankHuang0516/EClaw/commit/8da19d4a79ceb4152bf2144ee0847c61ce3e1def)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **kanban:** lazy-load dependency chips via IntersectionObserver ([#2632](https://github.com/HankHuang0516/EClaw/issues/2632)) ([20586b4](https://github.com/HankHuang0516/EClaw/commit/20586b43357335f9eb6a190c02d58c8e36b58aba)), closes [#2631](https://github.com/HankHuang0516/EClaw/issues/2631)
* **wallpaper:** off-load spritesheet fetch to IO so per-petdx sprites actually render ([#2618](https://github.com/HankHuang0516/EClaw/issues/2618)) ([61b832c](https://github.com/HankHuang0516/EClaw/commit/61b832c9fa8a1d0caab810ccc942d85c63349267)), closes [#2615](https://github.com/HankHuang0516/EClaw/issues/2615) [#2577](https://github.com/HankHuang0516/EClaw/issues/2577)
* **i18n:** positional format specifiers for feedback_result_logs (7 locales) ([#2597](https://github.com/HankHuang0516/EClaw/issues/2597)) ([21aedc7](https://github.com/HankHuang0516/EClaw/commit/21aedc7eebc7a2839e340136f38dfdfd4dabb9dc))
* **avatar-petdx:** preserve descriptor across transient API failures (flicker) ([#2625](https://github.com/HankHuang0516/EClaw/issues/2625)) ([7b1c606](https://github.com/HankHuang0516/EClaw/commit/7b1c606514f7698d72ec95cf6c556e4043966186))
* **portal:** reduce QA-discovered request fanout ([#2656](https://github.com/HankHuang0516/EClaw/issues/2656)) ([1e46d6b](https://github.com/HankHuang0516/EClaw/commit/1e46d6bab61e58c65b452b6503d953f8dddeee75))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **portal:** remove org chart fit scale floor ([#2676](https://github.com/HankHuang0516/EClaw/issues/2676)) ([0f01606](https://github.com/HankHuang0516/EClaw/commit/0f016068b963bb5f800a02f28817c7174979d913))
* **i18n:** rename mm_empty_title → mm_state_empty_title in mindmap.html ([#2683](https://github.com/HankHuang0516/EClaw/issues/2683)) ([c79c109](https://github.com/HankHuang0516/EClaw/commit/c79c109bea23142e8a6d9ace976d105af1280ec9))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **chat:** render mention avatars with companion renderer ([#2633](https://github.com/HankHuang0516/EClaw/issues/2633)) ([03e205f](https://github.com/HankHuang0516/EClaw/commit/03e205f663ecd2c2f443d4009dd5af0093f0bbbb))
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* scheduled audit 2026-05-13 — 6 bugs, XSS, i18n ([#2668](https://github.com/HankHuang0516/EClaw/issues/2668)) ([21dd513](https://github.com/HankHuang0516/EClaw/commit/21dd513b4464738de29164265437435ba6cc4817)), closes [#2605](https://github.com/HankHuang0516/EClaw/issues/2605) [#2608](https://github.com/HankHuang0516/EClaw/issues/2608) [#2600](https://github.com/HankHuang0516/EClaw/issues/2600) [#2599](https://github.com/HankHuang0516/EClaw/issues/2599) [#2598](https://github.com/HankHuang0516/EClaw/issues/2598)
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **chat:** smart-chip preview falls back to inline c.comments when /comments fails (PR [#2677](https://github.com/HankHuang0516/EClaw/issues/2677)) ([7f4dffd](https://github.com/HankHuang0516/EClaw/commit/7f4dffd2c83ea86f296b8fa0610f0e67c9f1af11))
* **wallpaper:** stop Android live wallpaper flashing default lobster on companion change ([#2629](https://github.com/HankHuang0516/EClaw/issues/2629)) ([8b4f66f](https://github.com/HankHuang0516/EClaw/commit/8b4f66fcb335bf43128f924b761b6337c817095b)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **app:** WebView pages honor app-selected locale via ?lang= URL param ([#2672](https://github.com/HankHuang0516/EClaw/issues/2672)) ([8ed8757](https://github.com/HankHuang0516/EClaw/commit/8ed8757aec5bf214e837cc0d81bf2b23f1993a91)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* **community:** 1-click chat button on bot cards + utm tagging ([#2610](https://github.com/HankHuang0516/EClaw/issues/2610)) ([eee97b0](https://github.com/HankHuang0516/EClaw/commit/eee97b0e2e4e74945ec24f218a69a52800b97a66))
* **dashboard:** add Claude and Codex channel guides ([#2640](https://github.com/HankHuang0516/EClaw/issues/2640)) ([c64e4c4](https://github.com/HankHuang0516/EClaw/commit/c64e4c4afc78db58c5cd578f00486dd7b2fd3311))
* **dashboard:** add Claude Code channel guide card ([#2667](https://github.com/HankHuang0516/EClaw/issues/2667)) ([d70d75c](https://github.com/HankHuang0516/EClaw/commit/d70d75c0c8caa8a540358a9aab4556b8c1927a5c))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* **portal:** add entity selector to petdx-browser ([#2602](https://github.com/HankHuang0516/EClaw/issues/2602)) ([3fa067e](https://github.com/HankHuang0516/EClaw/commit/3fa067e00b38829b48a37cecd33ee81a9a1122d9))
* **mindmap:** add GET /api/mindmap/graph force-graph projection ([#2680](https://github.com/HankHuang0516/EClaw/issues/2680)) ([a00b2e7](https://github.com/HankHuang0516/EClaw/commit/a00b2e775af2c4c98cd157f760ad87aeeee469f0)), closes [#2679](https://github.com/HankHuang0516/EClaw/issues/2679) [#2679](https://github.com/HankHuang0516/EClaw/issues/2679)
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **companion:** bridge crafter-station/petdex gallery (1784 pets) ([#2601](https://github.com/HankHuang0516/EClaw/issues/2601)) ([2e245be](https://github.com/HankHuang0516/EClaw/commit/2e245bea6dd47ea7361b927d389188a3c23b6bb3))
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **mindmap:** mission.html link to /portal/mindmap.html + deprecate /api/mission/mindmap ([#2685](https://github.com/HankHuang0516/EClaw/issues/2685)) ([11e297b](https://github.com/HankHuang0516/EClaw/commit/11e297bab1c9b56fcde3027d6500b7c58891bf18)), closes [#2680](https://github.com/HankHuang0516/EClaw/issues/2680) [#2684](https://github.com/HankHuang0516/EClaw/issues/2684)
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **avatar:** petdx render on card-holder my-cards (Phase 1b) ([#2621](https://github.com/HankHuang0516/EClaw/issues/2621)) ([f78ba8b](https://github.com/HankHuang0516/EClaw/commit/f78ba8b18acc426936ab6d8a82ca7541effea00d))
* **avatar:** petdx render on dashboard entity grid / org chart / bindings (Phase 1b) ([#2622](https://github.com/HankHuang0516/EClaw/issues/2622)) ([f417749](https://github.com/HankHuang0516/EClaw/commit/f41774914451048e8cd76e9ae30416a0642e173b)), closes [#2620](https://github.com/HankHuang0516/EClaw/issues/2620) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621)
* **avatar:** petdx render on kanban auto-assign / pulse / comment avatars (Phase 1b) ([#2624](https://github.com/HankHuang0516/EClaw/issues/2624)) ([6bff5f8](https://github.com/HankHuang0516/EClaw/commit/6bff5f80440d0bd91a6b1721cde9478d685c4d46))
* **avatar:** petdx render on mission skill/rule/soul entity dialogs (Phase 1b) ([#2623](https://github.com/HankHuang0516/EClaw/issues/2623)) ([129327b](https://github.com/HankHuang0516/EClaw/commit/129327bc7b91056659f1ab7e8d5e3f5260d951fb))
* **mindmap:** portal/mindmap.html force-graph prototype ([#129](https://github.com/HankHuang0516/EClaw/issues/129)) ([#2681](https://github.com/HankHuang0516/EClaw/issues/2681)) ([0f15e69](https://github.com/HankHuang0516/EClaw/commit/0f15e6930f0697c37fa08f3219edb8f9e499837f)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **avatar:** render selected petdx companion in chat avatars ([#2620](https://github.com/HankHuang0516/EClaw/issues/2620)) ([0bdd046](https://github.com/HankHuang0516/EClaw/commit/0bdd046fe1b1c428e32edda366ff112c08927f4c))
* **home:** replace native home with WebView hosting dashboard.html ([#2634](https://github.com/HankHuang0516/EClaw/issues/2634)) ([e69ea81](https://github.com/HankHuang0516/EClaw/commit/e69ea8160c239b083a83d6dc83a4f1c3f901c863))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **share-chat:** twitter card + per-bot og:image/twitter:* in SSR ([#2609](https://github.com/HankHuang0516/EClaw/issues/2609)) ([6cdc853](https://github.com/HankHuang0516/EClaw/commit/6cdc853dc884cdb95bd47214942768981f218ae0))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))
* **settings:** wire petdx avatar into channel-account chips ([#2626](https://github.com/HankHuang0516/EClaw/issues/2626)) ([88aec77](https://github.com/HankHuang0516/EClaw/commit/88aec772628c240e97b336bb5820892ad632d1ae))
* **files:** wire petdx avatar into entity filter & per-file badges ([#2627](https://github.com/HankHuang0516/EClaw/issues/2627)) ([5b3e5cc](https://github.com/HankHuang0516/EClaw/commit/5b3e5cc542d9da69bb4e92500fd03a542ea33f00))
* **mindmap:** wrap hardcoded zh-TW UI strings with i18n t() ([#2607](https://github.com/HankHuang0516/EClaw/issues/2607)) ([166af87](https://github.com/HankHuang0516/EClaw/commit/166af8772b2121a24aaf34a83b3de970e9b3b571)), closes [#2606](https://github.com/HankHuang0516/EClaw/issues/2606)


### Performance Improvements

* **mindmap:** force-graph hardening for 1000/2000-node graphs ([#2684](https://github.com/HankHuang0516/EClaw/issues/2684)) ([da8b1c8](https://github.com/HankHuang0516/EClaw/commit/da8b1c8f947ab8bc8fa455c1962a91146623a1fc))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-13)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **notifications:** add kanban_done + kanban_done_auto toggles to Android Settings ([#2636](https://github.com/HankHuang0516/EClaw/issues/2636)) ([a710909](https://github.com/HankHuang0516/EClaw/commit/a7109095e3393b8564e7ef1b23d382a4fbb944b8))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **kanban:** comment input no longer overlaps last comment in card detail (PR [#2678](https://github.com/HankHuang0516/EClaw/issues/2678)) ([fba91fc](https://github.com/HankHuang0516/EClaw/commit/fba91fca15402b453a0db5ee857c0b16e6087055))
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **petdx:** drop dark-grey loading placeholder + preload sprite WEBP ([#2628](https://github.com/HankHuang0516/EClaw/issues/2628)) ([59cef38](https://github.com/HankHuang0516/EClaw/commit/59cef387bd69ca99d7d15c86a1364856d3849ad8)), closes [#1a1a1a](https://github.com/HankHuang0516/EClaw/issues/1a1a1a)
* **entities:** expose botSecret to owner so wallpaper service can poll companions ([#2615](https://github.com/HankHuang0516/EClaw/issues/2615)) ([04470fc](https://github.com/HankHuang0516/EClaw/commit/04470fce8f8c3fce2b1ba8b243e776606f107502))
* **rental:** expose owner_public_code in marketplace so plaza CTA can route ([#2616](https://github.com/HankHuang0516/EClaw/issues/2616)) ([4d1372f](https://github.com/HankHuang0516/EClaw/commit/4d1372f717d93cab65543e87c852e74e9fb67071)), closes [#2610](https://github.com/HankHuang0516/EClaw/issues/2610)
* **portal:** fit embedded org chart to mobile viewport ([#2674](https://github.com/HankHuang0516/EClaw/issues/2674)) ([1c4e1b4](https://github.com/HankHuang0516/EClaw/commit/1c4e1b413ea7027b4cd4b8ecda981b0d0e12e66b))
* **mention-parser:** ignore @-mentions inside markdown code spans ([#2645](https://github.com/HankHuang0516/EClaw/issues/2645)) ([8da19d4](https://github.com/HankHuang0516/EClaw/commit/8da19d4a79ceb4152bf2144ee0847c61ce3e1def)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **kanban:** lazy-load dependency chips via IntersectionObserver ([#2632](https://github.com/HankHuang0516/EClaw/issues/2632)) ([20586b4](https://github.com/HankHuang0516/EClaw/commit/20586b43357335f9eb6a190c02d58c8e36b58aba)), closes [#2631](https://github.com/HankHuang0516/EClaw/issues/2631)
* **wallpaper:** off-load spritesheet fetch to IO so per-petdx sprites actually render ([#2618](https://github.com/HankHuang0516/EClaw/issues/2618)) ([61b832c](https://github.com/HankHuang0516/EClaw/commit/61b832c9fa8a1d0caab810ccc942d85c63349267)), closes [#2615](https://github.com/HankHuang0516/EClaw/issues/2615) [#2577](https://github.com/HankHuang0516/EClaw/issues/2577)
* **i18n:** positional format specifiers for feedback_result_logs (7 locales) ([#2597](https://github.com/HankHuang0516/EClaw/issues/2597)) ([21aedc7](https://github.com/HankHuang0516/EClaw/commit/21aedc7eebc7a2839e340136f38dfdfd4dabb9dc))
* **avatar-petdx:** preserve descriptor across transient API failures (flicker) ([#2625](https://github.com/HankHuang0516/EClaw/issues/2625)) ([7b1c606](https://github.com/HankHuang0516/EClaw/commit/7b1c606514f7698d72ec95cf6c556e4043966186))
* **portal:** reduce QA-discovered request fanout ([#2656](https://github.com/HankHuang0516/EClaw/issues/2656)) ([1e46d6b](https://github.com/HankHuang0516/EClaw/commit/1e46d6bab61e58c65b452b6503d953f8dddeee75))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **portal:** remove org chart fit scale floor ([#2676](https://github.com/HankHuang0516/EClaw/issues/2676)) ([0f01606](https://github.com/HankHuang0516/EClaw/commit/0f016068b963bb5f800a02f28817c7174979d913))
* **i18n:** rename mm_empty_title → mm_state_empty_title in mindmap.html ([#2683](https://github.com/HankHuang0516/EClaw/issues/2683)) ([c79c109](https://github.com/HankHuang0516/EClaw/commit/c79c109bea23142e8a6d9ace976d105af1280ec9))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **chat:** render mention avatars with companion renderer ([#2633](https://github.com/HankHuang0516/EClaw/issues/2633)) ([03e205f](https://github.com/HankHuang0516/EClaw/commit/03e205f663ecd2c2f443d4009dd5af0093f0bbbb))
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* scheduled audit 2026-05-13 — 6 bugs, XSS, i18n ([#2668](https://github.com/HankHuang0516/EClaw/issues/2668)) ([21dd513](https://github.com/HankHuang0516/EClaw/commit/21dd513b4464738de29164265437435ba6cc4817)), closes [#2605](https://github.com/HankHuang0516/EClaw/issues/2605) [#2608](https://github.com/HankHuang0516/EClaw/issues/2608) [#2600](https://github.com/HankHuang0516/EClaw/issues/2600) [#2599](https://github.com/HankHuang0516/EClaw/issues/2599) [#2598](https://github.com/HankHuang0516/EClaw/issues/2598)
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **chat:** smart-chip preview falls back to inline c.comments when /comments fails (PR [#2677](https://github.com/HankHuang0516/EClaw/issues/2677)) ([7f4dffd](https://github.com/HankHuang0516/EClaw/commit/7f4dffd2c83ea86f296b8fa0610f0e67c9f1af11))
* **wallpaper:** stop Android live wallpaper flashing default lobster on companion change ([#2629](https://github.com/HankHuang0516/EClaw/issues/2629)) ([8b4f66f](https://github.com/HankHuang0516/EClaw/commit/8b4f66fcb335bf43128f924b761b6337c817095b)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **app:** WebView pages honor app-selected locale via ?lang= URL param ([#2672](https://github.com/HankHuang0516/EClaw/issues/2672)) ([8ed8757](https://github.com/HankHuang0516/EClaw/commit/8ed8757aec5bf214e837cc0d81bf2b23f1993a91)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* **community:** 1-click chat button on bot cards + utm tagging ([#2610](https://github.com/HankHuang0516/EClaw/issues/2610)) ([eee97b0](https://github.com/HankHuang0516/EClaw/commit/eee97b0e2e4e74945ec24f218a69a52800b97a66))
* **dashboard:** add Claude and Codex channel guides ([#2640](https://github.com/HankHuang0516/EClaw/issues/2640)) ([c64e4c4](https://github.com/HankHuang0516/EClaw/commit/c64e4c4afc78db58c5cd578f00486dd7b2fd3311))
* **dashboard:** add Claude Code channel guide card ([#2667](https://github.com/HankHuang0516/EClaw/issues/2667)) ([d70d75c](https://github.com/HankHuang0516/EClaw/commit/d70d75c0c8caa8a540358a9aab4556b8c1927a5c))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* **portal:** add entity selector to petdx-browser ([#2602](https://github.com/HankHuang0516/EClaw/issues/2602)) ([3fa067e](https://github.com/HankHuang0516/EClaw/commit/3fa067e00b38829b48a37cecd33ee81a9a1122d9))
* **mindmap:** add GET /api/mindmap/graph force-graph projection ([#2680](https://github.com/HankHuang0516/EClaw/issues/2680)) ([a00b2e7](https://github.com/HankHuang0516/EClaw/commit/a00b2e775af2c4c98cd157f760ad87aeeee469f0)), closes [#2679](https://github.com/HankHuang0516/EClaw/issues/2679) [#2679](https://github.com/HankHuang0516/EClaw/issues/2679)
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **companion:** bridge crafter-station/petdex gallery (1784 pets) ([#2601](https://github.com/HankHuang0516/EClaw/issues/2601)) ([2e245be](https://github.com/HankHuang0516/EClaw/commit/2e245bea6dd47ea7361b927d389188a3c23b6bb3))
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **mindmap:** mission.html link to /portal/mindmap.html + deprecate /api/mission/mindmap ([#2685](https://github.com/HankHuang0516/EClaw/issues/2685)) ([11e297b](https://github.com/HankHuang0516/EClaw/commit/11e297bab1c9b56fcde3027d6500b7c58891bf18)), closes [#2680](https://github.com/HankHuang0516/EClaw/issues/2680) [#2684](https://github.com/HankHuang0516/EClaw/issues/2684)
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **avatar:** petdx render on card-holder my-cards (Phase 1b) ([#2621](https://github.com/HankHuang0516/EClaw/issues/2621)) ([f78ba8b](https://github.com/HankHuang0516/EClaw/commit/f78ba8b18acc426936ab6d8a82ca7541effea00d))
* **avatar:** petdx render on dashboard entity grid / org chart / bindings (Phase 1b) ([#2622](https://github.com/HankHuang0516/EClaw/issues/2622)) ([f417749](https://github.com/HankHuang0516/EClaw/commit/f41774914451048e8cd76e9ae30416a0642e173b)), closes [#2620](https://github.com/HankHuang0516/EClaw/issues/2620) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621)
* **avatar:** petdx render on kanban auto-assign / pulse / comment avatars (Phase 1b) ([#2624](https://github.com/HankHuang0516/EClaw/issues/2624)) ([6bff5f8](https://github.com/HankHuang0516/EClaw/commit/6bff5f80440d0bd91a6b1721cde9478d685c4d46))
* **avatar:** petdx render on mission skill/rule/soul entity dialogs (Phase 1b) ([#2623](https://github.com/HankHuang0516/EClaw/issues/2623)) ([129327b](https://github.com/HankHuang0516/EClaw/commit/129327bc7b91056659f1ab7e8d5e3f5260d951fb))
* **mindmap:** portal/mindmap.html force-graph prototype ([#129](https://github.com/HankHuang0516/EClaw/issues/129)) ([#2681](https://github.com/HankHuang0516/EClaw/issues/2681)) ([0f15e69](https://github.com/HankHuang0516/EClaw/commit/0f15e6930f0697c37fa08f3219edb8f9e499837f)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **avatar:** render selected petdx companion in chat avatars ([#2620](https://github.com/HankHuang0516/EClaw/issues/2620)) ([0bdd046](https://github.com/HankHuang0516/EClaw/commit/0bdd046fe1b1c428e32edda366ff112c08927f4c))
* **home:** replace native home with WebView hosting dashboard.html ([#2634](https://github.com/HankHuang0516/EClaw/issues/2634)) ([e69ea81](https://github.com/HankHuang0516/EClaw/commit/e69ea8160c239b083a83d6dc83a4f1c3f901c863))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **share-chat:** twitter card + per-bot og:image/twitter:* in SSR ([#2609](https://github.com/HankHuang0516/EClaw/issues/2609)) ([6cdc853](https://github.com/HankHuang0516/EClaw/commit/6cdc853dc884cdb95bd47214942768981f218ae0))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))
* **settings:** wire petdx avatar into channel-account chips ([#2626](https://github.com/HankHuang0516/EClaw/issues/2626)) ([88aec77](https://github.com/HankHuang0516/EClaw/commit/88aec772628c240e97b336bb5820892ad632d1ae))
* **files:** wire petdx avatar into entity filter & per-file badges ([#2627](https://github.com/HankHuang0516/EClaw/issues/2627)) ([5b3e5cc](https://github.com/HankHuang0516/EClaw/commit/5b3e5cc542d9da69bb4e92500fd03a542ea33f00))
* **mindmap:** wrap hardcoded zh-TW UI strings with i18n t() ([#2607](https://github.com/HankHuang0516/EClaw/issues/2607)) ([166af87](https://github.com/HankHuang0516/EClaw/commit/166af8772b2121a24aaf34a83b3de970e9b3b571)), closes [#2606](https://github.com/HankHuang0516/EClaw/issues/2606)


### Performance Improvements

* **mindmap:** force-graph hardening for 1000/2000-node graphs ([#2684](https://github.com/HankHuang0516/EClaw/issues/2684)) ([da8b1c8](https://github.com/HankHuang0516/EClaw/commit/da8b1c8f947ab8bc8fa455c1962a91146623a1fc))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-13)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **notifications:** add kanban_done + kanban_done_auto toggles to Android Settings ([#2636](https://github.com/HankHuang0516/EClaw/issues/2636)) ([a710909](https://github.com/HankHuang0516/EClaw/commit/a7109095e3393b8564e7ef1b23d382a4fbb944b8))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **kanban:** comment input no longer overlaps last comment in card detail (PR [#2678](https://github.com/HankHuang0516/EClaw/issues/2678)) ([fba91fc](https://github.com/HankHuang0516/EClaw/commit/fba91fca15402b453a0db5ee857c0b16e6087055))
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **petdx:** drop dark-grey loading placeholder + preload sprite WEBP ([#2628](https://github.com/HankHuang0516/EClaw/issues/2628)) ([59cef38](https://github.com/HankHuang0516/EClaw/commit/59cef387bd69ca99d7d15c86a1364856d3849ad8)), closes [#1a1a1a](https://github.com/HankHuang0516/EClaw/issues/1a1a1a)
* **entities:** expose botSecret to owner so wallpaper service can poll companions ([#2615](https://github.com/HankHuang0516/EClaw/issues/2615)) ([04470fc](https://github.com/HankHuang0516/EClaw/commit/04470fce8f8c3fce2b1ba8b243e776606f107502))
* **rental:** expose owner_public_code in marketplace so plaza CTA can route ([#2616](https://github.com/HankHuang0516/EClaw/issues/2616)) ([4d1372f](https://github.com/HankHuang0516/EClaw/commit/4d1372f717d93cab65543e87c852e74e9fb67071)), closes [#2610](https://github.com/HankHuang0516/EClaw/issues/2610)
* **portal:** fit embedded org chart to mobile viewport ([#2674](https://github.com/HankHuang0516/EClaw/issues/2674)) ([1c4e1b4](https://github.com/HankHuang0516/EClaw/commit/1c4e1b413ea7027b4cd4b8ecda981b0d0e12e66b))
* **mention-parser:** ignore @-mentions inside markdown code spans ([#2645](https://github.com/HankHuang0516/EClaw/issues/2645)) ([8da19d4](https://github.com/HankHuang0516/EClaw/commit/8da19d4a79ceb4152bf2144ee0847c61ce3e1def)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **kanban:** lazy-load dependency chips via IntersectionObserver ([#2632](https://github.com/HankHuang0516/EClaw/issues/2632)) ([20586b4](https://github.com/HankHuang0516/EClaw/commit/20586b43357335f9eb6a190c02d58c8e36b58aba)), closes [#2631](https://github.com/HankHuang0516/EClaw/issues/2631)
* **wallpaper:** off-load spritesheet fetch to IO so per-petdx sprites actually render ([#2618](https://github.com/HankHuang0516/EClaw/issues/2618)) ([61b832c](https://github.com/HankHuang0516/EClaw/commit/61b832c9fa8a1d0caab810ccc942d85c63349267)), closes [#2615](https://github.com/HankHuang0516/EClaw/issues/2615) [#2577](https://github.com/HankHuang0516/EClaw/issues/2577)
* **i18n:** positional format specifiers for feedback_result_logs (7 locales) ([#2597](https://github.com/HankHuang0516/EClaw/issues/2597)) ([21aedc7](https://github.com/HankHuang0516/EClaw/commit/21aedc7eebc7a2839e340136f38dfdfd4dabb9dc))
* **avatar-petdx:** preserve descriptor across transient API failures (flicker) ([#2625](https://github.com/HankHuang0516/EClaw/issues/2625)) ([7b1c606](https://github.com/HankHuang0516/EClaw/commit/7b1c606514f7698d72ec95cf6c556e4043966186))
* **portal:** reduce QA-discovered request fanout ([#2656](https://github.com/HankHuang0516/EClaw/issues/2656)) ([1e46d6b](https://github.com/HankHuang0516/EClaw/commit/1e46d6bab61e58c65b452b6503d953f8dddeee75))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **portal:** remove org chart fit scale floor ([#2676](https://github.com/HankHuang0516/EClaw/issues/2676)) ([0f01606](https://github.com/HankHuang0516/EClaw/commit/0f016068b963bb5f800a02f28817c7174979d913))
* **i18n:** rename mm_empty_title → mm_state_empty_title in mindmap.html ([#2683](https://github.com/HankHuang0516/EClaw/issues/2683)) ([c79c109](https://github.com/HankHuang0516/EClaw/commit/c79c109bea23142e8a6d9ace976d105af1280ec9))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **chat:** render mention avatars with companion renderer ([#2633](https://github.com/HankHuang0516/EClaw/issues/2633)) ([03e205f](https://github.com/HankHuang0516/EClaw/commit/03e205f663ecd2c2f443d4009dd5af0093f0bbbb))
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* scheduled audit 2026-05-13 — 6 bugs, XSS, i18n ([#2668](https://github.com/HankHuang0516/EClaw/issues/2668)) ([21dd513](https://github.com/HankHuang0516/EClaw/commit/21dd513b4464738de29164265437435ba6cc4817)), closes [#2605](https://github.com/HankHuang0516/EClaw/issues/2605) [#2608](https://github.com/HankHuang0516/EClaw/issues/2608) [#2600](https://github.com/HankHuang0516/EClaw/issues/2600) [#2599](https://github.com/HankHuang0516/EClaw/issues/2599) [#2598](https://github.com/HankHuang0516/EClaw/issues/2598)
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **chat:** smart-chip preview falls back to inline c.comments when /comments fails (PR [#2677](https://github.com/HankHuang0516/EClaw/issues/2677)) ([7f4dffd](https://github.com/HankHuang0516/EClaw/commit/7f4dffd2c83ea86f296b8fa0610f0e67c9f1af11))
* **wallpaper:** stop Android live wallpaper flashing default lobster on companion change ([#2629](https://github.com/HankHuang0516/EClaw/issues/2629)) ([8b4f66f](https://github.com/HankHuang0516/EClaw/commit/8b4f66fcb335bf43128f924b761b6337c817095b)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **app:** WebView pages honor app-selected locale via ?lang= URL param ([#2672](https://github.com/HankHuang0516/EClaw/issues/2672)) ([8ed8757](https://github.com/HankHuang0516/EClaw/commit/8ed8757aec5bf214e837cc0d81bf2b23f1993a91)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* **community:** 1-click chat button on bot cards + utm tagging ([#2610](https://github.com/HankHuang0516/EClaw/issues/2610)) ([eee97b0](https://github.com/HankHuang0516/EClaw/commit/eee97b0e2e4e74945ec24f218a69a52800b97a66))
* **dashboard:** add Claude and Codex channel guides ([#2640](https://github.com/HankHuang0516/EClaw/issues/2640)) ([c64e4c4](https://github.com/HankHuang0516/EClaw/commit/c64e4c4afc78db58c5cd578f00486dd7b2fd3311))
* **dashboard:** add Claude Code channel guide card ([#2667](https://github.com/HankHuang0516/EClaw/issues/2667)) ([d70d75c](https://github.com/HankHuang0516/EClaw/commit/d70d75c0c8caa8a540358a9aab4556b8c1927a5c))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* **portal:** add entity selector to petdx-browser ([#2602](https://github.com/HankHuang0516/EClaw/issues/2602)) ([3fa067e](https://github.com/HankHuang0516/EClaw/commit/3fa067e00b38829b48a37cecd33ee81a9a1122d9))
* **mindmap:** add GET /api/mindmap/graph force-graph projection ([#2680](https://github.com/HankHuang0516/EClaw/issues/2680)) ([a00b2e7](https://github.com/HankHuang0516/EClaw/commit/a00b2e775af2c4c98cd157f760ad87aeeee469f0)), closes [#2679](https://github.com/HankHuang0516/EClaw/issues/2679) [#2679](https://github.com/HankHuang0516/EClaw/issues/2679)
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **companion:** bridge crafter-station/petdex gallery (1784 pets) ([#2601](https://github.com/HankHuang0516/EClaw/issues/2601)) ([2e245be](https://github.com/HankHuang0516/EClaw/commit/2e245bea6dd47ea7361b927d389188a3c23b6bb3))
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **mindmap:** mission.html link to /portal/mindmap.html + deprecate /api/mission/mindmap ([#2685](https://github.com/HankHuang0516/EClaw/issues/2685)) ([11e297b](https://github.com/HankHuang0516/EClaw/commit/11e297bab1c9b56fcde3027d6500b7c58891bf18)), closes [#2680](https://github.com/HankHuang0516/EClaw/issues/2680) [#2684](https://github.com/HankHuang0516/EClaw/issues/2684)
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **avatar:** petdx render on card-holder my-cards (Phase 1b) ([#2621](https://github.com/HankHuang0516/EClaw/issues/2621)) ([f78ba8b](https://github.com/HankHuang0516/EClaw/commit/f78ba8b18acc426936ab6d8a82ca7541effea00d))
* **avatar:** petdx render on dashboard entity grid / org chart / bindings (Phase 1b) ([#2622](https://github.com/HankHuang0516/EClaw/issues/2622)) ([f417749](https://github.com/HankHuang0516/EClaw/commit/f41774914451048e8cd76e9ae30416a0642e173b)), closes [#2620](https://github.com/HankHuang0516/EClaw/issues/2620) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621)
* **avatar:** petdx render on kanban auto-assign / pulse / comment avatars (Phase 1b) ([#2624](https://github.com/HankHuang0516/EClaw/issues/2624)) ([6bff5f8](https://github.com/HankHuang0516/EClaw/commit/6bff5f80440d0bd91a6b1721cde9478d685c4d46))
* **avatar:** petdx render on mission skill/rule/soul entity dialogs (Phase 1b) ([#2623](https://github.com/HankHuang0516/EClaw/issues/2623)) ([129327b](https://github.com/HankHuang0516/EClaw/commit/129327bc7b91056659f1ab7e8d5e3f5260d951fb))
* **mindmap:** portal/mindmap.html force-graph prototype ([#129](https://github.com/HankHuang0516/EClaw/issues/129)) ([#2681](https://github.com/HankHuang0516/EClaw/issues/2681)) ([0f15e69](https://github.com/HankHuang0516/EClaw/commit/0f15e6930f0697c37fa08f3219edb8f9e499837f)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **avatar:** render selected petdx companion in chat avatars ([#2620](https://github.com/HankHuang0516/EClaw/issues/2620)) ([0bdd046](https://github.com/HankHuang0516/EClaw/commit/0bdd046fe1b1c428e32edda366ff112c08927f4c))
* **home:** replace native home with WebView hosting dashboard.html ([#2634](https://github.com/HankHuang0516/EClaw/issues/2634)) ([e69ea81](https://github.com/HankHuang0516/EClaw/commit/e69ea8160c239b083a83d6dc83a4f1c3f901c863))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **share-chat:** twitter card + per-bot og:image/twitter:* in SSR ([#2609](https://github.com/HankHuang0516/EClaw/issues/2609)) ([6cdc853](https://github.com/HankHuang0516/EClaw/commit/6cdc853dc884cdb95bd47214942768981f218ae0))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))
* **settings:** wire petdx avatar into channel-account chips ([#2626](https://github.com/HankHuang0516/EClaw/issues/2626)) ([88aec77](https://github.com/HankHuang0516/EClaw/commit/88aec772628c240e97b336bb5820892ad632d1ae))
* **files:** wire petdx avatar into entity filter & per-file badges ([#2627](https://github.com/HankHuang0516/EClaw/issues/2627)) ([5b3e5cc](https://github.com/HankHuang0516/EClaw/commit/5b3e5cc542d9da69bb4e92500fd03a542ea33f00))
* **mindmap:** wrap hardcoded zh-TW UI strings with i18n t() ([#2607](https://github.com/HankHuang0516/EClaw/issues/2607)) ([166af87](https://github.com/HankHuang0516/EClaw/commit/166af8772b2121a24aaf34a83b3de970e9b3b571)), closes [#2606](https://github.com/HankHuang0516/EClaw/issues/2606)


### Performance Improvements

* **mindmap:** force-graph hardening for 1000/2000-node graphs ([#2684](https://github.com/HankHuang0516/EClaw/issues/2684)) ([da8b1c8](https://github.com/HankHuang0516/EClaw/commit/da8b1c8f947ab8bc8fa455c1962a91146623a1fc))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-13)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **notifications:** add kanban_done + kanban_done_auto toggles to Android Settings ([#2636](https://github.com/HankHuang0516/EClaw/issues/2636)) ([a710909](https://github.com/HankHuang0516/EClaw/commit/a7109095e3393b8564e7ef1b23d382a4fbb944b8))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **kanban:** comment input no longer overlaps last comment in card detail (PR [#2678](https://github.com/HankHuang0516/EClaw/issues/2678)) ([fba91fc](https://github.com/HankHuang0516/EClaw/commit/fba91fca15402b453a0db5ee857c0b16e6087055))
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **petdx:** drop dark-grey loading placeholder + preload sprite WEBP ([#2628](https://github.com/HankHuang0516/EClaw/issues/2628)) ([59cef38](https://github.com/HankHuang0516/EClaw/commit/59cef387bd69ca99d7d15c86a1364856d3849ad8)), closes [#1a1a1a](https://github.com/HankHuang0516/EClaw/issues/1a1a1a)
* **entities:** expose botSecret to owner so wallpaper service can poll companions ([#2615](https://github.com/HankHuang0516/EClaw/issues/2615)) ([04470fc](https://github.com/HankHuang0516/EClaw/commit/04470fce8f8c3fce2b1ba8b243e776606f107502))
* **rental:** expose owner_public_code in marketplace so plaza CTA can route ([#2616](https://github.com/HankHuang0516/EClaw/issues/2616)) ([4d1372f](https://github.com/HankHuang0516/EClaw/commit/4d1372f717d93cab65543e87c852e74e9fb67071)), closes [#2610](https://github.com/HankHuang0516/EClaw/issues/2610)
* **portal:** fit embedded org chart to mobile viewport ([#2674](https://github.com/HankHuang0516/EClaw/issues/2674)) ([1c4e1b4](https://github.com/HankHuang0516/EClaw/commit/1c4e1b413ea7027b4cd4b8ecda981b0d0e12e66b))
* **mention-parser:** ignore @-mentions inside markdown code spans ([#2645](https://github.com/HankHuang0516/EClaw/issues/2645)) ([8da19d4](https://github.com/HankHuang0516/EClaw/commit/8da19d4a79ceb4152bf2144ee0847c61ce3e1def)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **kanban:** lazy-load dependency chips via IntersectionObserver ([#2632](https://github.com/HankHuang0516/EClaw/issues/2632)) ([20586b4](https://github.com/HankHuang0516/EClaw/commit/20586b43357335f9eb6a190c02d58c8e36b58aba)), closes [#2631](https://github.com/HankHuang0516/EClaw/issues/2631)
* **wallpaper:** off-load spritesheet fetch to IO so per-petdx sprites actually render ([#2618](https://github.com/HankHuang0516/EClaw/issues/2618)) ([61b832c](https://github.com/HankHuang0516/EClaw/commit/61b832c9fa8a1d0caab810ccc942d85c63349267)), closes [#2615](https://github.com/HankHuang0516/EClaw/issues/2615) [#2577](https://github.com/HankHuang0516/EClaw/issues/2577)
* **i18n:** positional format specifiers for feedback_result_logs (7 locales) ([#2597](https://github.com/HankHuang0516/EClaw/issues/2597)) ([21aedc7](https://github.com/HankHuang0516/EClaw/commit/21aedc7eebc7a2839e340136f38dfdfd4dabb9dc))
* **avatar-petdx:** preserve descriptor across transient API failures (flicker) ([#2625](https://github.com/HankHuang0516/EClaw/issues/2625)) ([7b1c606](https://github.com/HankHuang0516/EClaw/commit/7b1c606514f7698d72ec95cf6c556e4043966186))
* **portal:** reduce QA-discovered request fanout ([#2656](https://github.com/HankHuang0516/EClaw/issues/2656)) ([1e46d6b](https://github.com/HankHuang0516/EClaw/commit/1e46d6bab61e58c65b452b6503d953f8dddeee75))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **portal:** remove org chart fit scale floor ([#2676](https://github.com/HankHuang0516/EClaw/issues/2676)) ([0f01606](https://github.com/HankHuang0516/EClaw/commit/0f016068b963bb5f800a02f28817c7174979d913))
* **i18n:** rename mm_empty_title → mm_state_empty_title in mindmap.html ([#2683](https://github.com/HankHuang0516/EClaw/issues/2683)) ([c79c109](https://github.com/HankHuang0516/EClaw/commit/c79c109bea23142e8a6d9ace976d105af1280ec9))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **chat:** render mention avatars with companion renderer ([#2633](https://github.com/HankHuang0516/EClaw/issues/2633)) ([03e205f](https://github.com/HankHuang0516/EClaw/commit/03e205f663ecd2c2f443d4009dd5af0093f0bbbb))
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* scheduled audit 2026-05-13 — 6 bugs, XSS, i18n ([#2668](https://github.com/HankHuang0516/EClaw/issues/2668)) ([21dd513](https://github.com/HankHuang0516/EClaw/commit/21dd513b4464738de29164265437435ba6cc4817)), closes [#2605](https://github.com/HankHuang0516/EClaw/issues/2605) [#2608](https://github.com/HankHuang0516/EClaw/issues/2608) [#2600](https://github.com/HankHuang0516/EClaw/issues/2600) [#2599](https://github.com/HankHuang0516/EClaw/issues/2599) [#2598](https://github.com/HankHuang0516/EClaw/issues/2598)
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **chat:** smart-chip preview falls back to inline c.comments when /comments fails (PR [#2677](https://github.com/HankHuang0516/EClaw/issues/2677)) ([7f4dffd](https://github.com/HankHuang0516/EClaw/commit/7f4dffd2c83ea86f296b8fa0610f0e67c9f1af11))
* **wallpaper:** stop Android live wallpaper flashing default lobster on companion change ([#2629](https://github.com/HankHuang0516/EClaw/issues/2629)) ([8b4f66f](https://github.com/HankHuang0516/EClaw/commit/8b4f66fcb335bf43128f924b761b6337c817095b)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **app:** WebView pages honor app-selected locale via ?lang= URL param ([#2672](https://github.com/HankHuang0516/EClaw/issues/2672)) ([8ed8757](https://github.com/HankHuang0516/EClaw/commit/8ed8757aec5bf214e837cc0d81bf2b23f1993a91)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* **community:** 1-click chat button on bot cards + utm tagging ([#2610](https://github.com/HankHuang0516/EClaw/issues/2610)) ([eee97b0](https://github.com/HankHuang0516/EClaw/commit/eee97b0e2e4e74945ec24f218a69a52800b97a66))
* **dashboard:** add Claude and Codex channel guides ([#2640](https://github.com/HankHuang0516/EClaw/issues/2640)) ([c64e4c4](https://github.com/HankHuang0516/EClaw/commit/c64e4c4afc78db58c5cd578f00486dd7b2fd3311))
* **dashboard:** add Claude Code channel guide card ([#2667](https://github.com/HankHuang0516/EClaw/issues/2667)) ([d70d75c](https://github.com/HankHuang0516/EClaw/commit/d70d75c0c8caa8a540358a9aab4556b8c1927a5c))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* **portal:** add entity selector to petdx-browser ([#2602](https://github.com/HankHuang0516/EClaw/issues/2602)) ([3fa067e](https://github.com/HankHuang0516/EClaw/commit/3fa067e00b38829b48a37cecd33ee81a9a1122d9))
* **mindmap:** add GET /api/mindmap/graph force-graph projection ([#2680](https://github.com/HankHuang0516/EClaw/issues/2680)) ([a00b2e7](https://github.com/HankHuang0516/EClaw/commit/a00b2e775af2c4c98cd157f760ad87aeeee469f0)), closes [#2679](https://github.com/HankHuang0516/EClaw/issues/2679) [#2679](https://github.com/HankHuang0516/EClaw/issues/2679)
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **companion:** bridge crafter-station/petdex gallery (1784 pets) ([#2601](https://github.com/HankHuang0516/EClaw/issues/2601)) ([2e245be](https://github.com/HankHuang0516/EClaw/commit/2e245bea6dd47ea7361b927d389188a3c23b6bb3))
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **avatar:** petdx render on card-holder my-cards (Phase 1b) ([#2621](https://github.com/HankHuang0516/EClaw/issues/2621)) ([f78ba8b](https://github.com/HankHuang0516/EClaw/commit/f78ba8b18acc426936ab6d8a82ca7541effea00d))
* **avatar:** petdx render on dashboard entity grid / org chart / bindings (Phase 1b) ([#2622](https://github.com/HankHuang0516/EClaw/issues/2622)) ([f417749](https://github.com/HankHuang0516/EClaw/commit/f41774914451048e8cd76e9ae30416a0642e173b)), closes [#2620](https://github.com/HankHuang0516/EClaw/issues/2620) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621)
* **avatar:** petdx render on kanban auto-assign / pulse / comment avatars (Phase 1b) ([#2624](https://github.com/HankHuang0516/EClaw/issues/2624)) ([6bff5f8](https://github.com/HankHuang0516/EClaw/commit/6bff5f80440d0bd91a6b1721cde9478d685c4d46))
* **avatar:** petdx render on mission skill/rule/soul entity dialogs (Phase 1b) ([#2623](https://github.com/HankHuang0516/EClaw/issues/2623)) ([129327b](https://github.com/HankHuang0516/EClaw/commit/129327bc7b91056659f1ab7e8d5e3f5260d951fb))
* **mindmap:** portal/mindmap.html force-graph prototype ([#129](https://github.com/HankHuang0516/EClaw/issues/129)) ([#2681](https://github.com/HankHuang0516/EClaw/issues/2681)) ([0f15e69](https://github.com/HankHuang0516/EClaw/commit/0f15e6930f0697c37fa08f3219edb8f9e499837f)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **avatar:** render selected petdx companion in chat avatars ([#2620](https://github.com/HankHuang0516/EClaw/issues/2620)) ([0bdd046](https://github.com/HankHuang0516/EClaw/commit/0bdd046fe1b1c428e32edda366ff112c08927f4c))
* **home:** replace native home with WebView hosting dashboard.html ([#2634](https://github.com/HankHuang0516/EClaw/issues/2634)) ([e69ea81](https://github.com/HankHuang0516/EClaw/commit/e69ea8160c239b083a83d6dc83a4f1c3f901c863))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **share-chat:** twitter card + per-bot og:image/twitter:* in SSR ([#2609](https://github.com/HankHuang0516/EClaw/issues/2609)) ([6cdc853](https://github.com/HankHuang0516/EClaw/commit/6cdc853dc884cdb95bd47214942768981f218ae0))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))
* **settings:** wire petdx avatar into channel-account chips ([#2626](https://github.com/HankHuang0516/EClaw/issues/2626)) ([88aec77](https://github.com/HankHuang0516/EClaw/commit/88aec772628c240e97b336bb5820892ad632d1ae))
* **files:** wire petdx avatar into entity filter & per-file badges ([#2627](https://github.com/HankHuang0516/EClaw/issues/2627)) ([5b3e5cc](https://github.com/HankHuang0516/EClaw/commit/5b3e5cc542d9da69bb4e92500fd03a542ea33f00))
* **mindmap:** wrap hardcoded zh-TW UI strings with i18n t() ([#2607](https://github.com/HankHuang0516/EClaw/issues/2607)) ([166af87](https://github.com/HankHuang0516/EClaw/commit/166af8772b2121a24aaf34a83b3de970e9b3b571)), closes [#2606](https://github.com/HankHuang0516/EClaw/issues/2606)


### Performance Improvements

* **mindmap:** force-graph hardening for 1000/2000-node graphs ([#2684](https://github.com/HankHuang0516/EClaw/issues/2684)) ([da8b1c8](https://github.com/HankHuang0516/EClaw/commit/da8b1c8f947ab8bc8fa455c1962a91146623a1fc))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-13)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **notifications:** add kanban_done + kanban_done_auto toggles to Android Settings ([#2636](https://github.com/HankHuang0516/EClaw/issues/2636)) ([a710909](https://github.com/HankHuang0516/EClaw/commit/a7109095e3393b8564e7ef1b23d382a4fbb944b8))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **kanban:** comment input no longer overlaps last comment in card detail (PR [#2678](https://github.com/HankHuang0516/EClaw/issues/2678)) ([fba91fc](https://github.com/HankHuang0516/EClaw/commit/fba91fca15402b453a0db5ee857c0b16e6087055))
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **petdx:** drop dark-grey loading placeholder + preload sprite WEBP ([#2628](https://github.com/HankHuang0516/EClaw/issues/2628)) ([59cef38](https://github.com/HankHuang0516/EClaw/commit/59cef387bd69ca99d7d15c86a1364856d3849ad8)), closes [#1a1a1a](https://github.com/HankHuang0516/EClaw/issues/1a1a1a)
* **entities:** expose botSecret to owner so wallpaper service can poll companions ([#2615](https://github.com/HankHuang0516/EClaw/issues/2615)) ([04470fc](https://github.com/HankHuang0516/EClaw/commit/04470fce8f8c3fce2b1ba8b243e776606f107502))
* **rental:** expose owner_public_code in marketplace so plaza CTA can route ([#2616](https://github.com/HankHuang0516/EClaw/issues/2616)) ([4d1372f](https://github.com/HankHuang0516/EClaw/commit/4d1372f717d93cab65543e87c852e74e9fb67071)), closes [#2610](https://github.com/HankHuang0516/EClaw/issues/2610)
* **portal:** fit embedded org chart to mobile viewport ([#2674](https://github.com/HankHuang0516/EClaw/issues/2674)) ([1c4e1b4](https://github.com/HankHuang0516/EClaw/commit/1c4e1b413ea7027b4cd4b8ecda981b0d0e12e66b))
* **mention-parser:** ignore @-mentions inside markdown code spans ([#2645](https://github.com/HankHuang0516/EClaw/issues/2645)) ([8da19d4](https://github.com/HankHuang0516/EClaw/commit/8da19d4a79ceb4152bf2144ee0847c61ce3e1def)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **kanban:** lazy-load dependency chips via IntersectionObserver ([#2632](https://github.com/HankHuang0516/EClaw/issues/2632)) ([20586b4](https://github.com/HankHuang0516/EClaw/commit/20586b43357335f9eb6a190c02d58c8e36b58aba)), closes [#2631](https://github.com/HankHuang0516/EClaw/issues/2631)
* **wallpaper:** off-load spritesheet fetch to IO so per-petdx sprites actually render ([#2618](https://github.com/HankHuang0516/EClaw/issues/2618)) ([61b832c](https://github.com/HankHuang0516/EClaw/commit/61b832c9fa8a1d0caab810ccc942d85c63349267)), closes [#2615](https://github.com/HankHuang0516/EClaw/issues/2615) [#2577](https://github.com/HankHuang0516/EClaw/issues/2577)
* **i18n:** positional format specifiers for feedback_result_logs (7 locales) ([#2597](https://github.com/HankHuang0516/EClaw/issues/2597)) ([21aedc7](https://github.com/HankHuang0516/EClaw/commit/21aedc7eebc7a2839e340136f38dfdfd4dabb9dc))
* **avatar-petdx:** preserve descriptor across transient API failures (flicker) ([#2625](https://github.com/HankHuang0516/EClaw/issues/2625)) ([7b1c606](https://github.com/HankHuang0516/EClaw/commit/7b1c606514f7698d72ec95cf6c556e4043966186))
* **portal:** reduce QA-discovered request fanout ([#2656](https://github.com/HankHuang0516/EClaw/issues/2656)) ([1e46d6b](https://github.com/HankHuang0516/EClaw/commit/1e46d6bab61e58c65b452b6503d953f8dddeee75))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **portal:** remove org chart fit scale floor ([#2676](https://github.com/HankHuang0516/EClaw/issues/2676)) ([0f01606](https://github.com/HankHuang0516/EClaw/commit/0f016068b963bb5f800a02f28817c7174979d913))
* **i18n:** rename mm_empty_title → mm_state_empty_title in mindmap.html ([#2683](https://github.com/HankHuang0516/EClaw/issues/2683)) ([c79c109](https://github.com/HankHuang0516/EClaw/commit/c79c109bea23142e8a6d9ace976d105af1280ec9))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **chat:** render mention avatars with companion renderer ([#2633](https://github.com/HankHuang0516/EClaw/issues/2633)) ([03e205f](https://github.com/HankHuang0516/EClaw/commit/03e205f663ecd2c2f443d4009dd5af0093f0bbbb))
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* scheduled audit 2026-05-13 — 6 bugs, XSS, i18n ([#2668](https://github.com/HankHuang0516/EClaw/issues/2668)) ([21dd513](https://github.com/HankHuang0516/EClaw/commit/21dd513b4464738de29164265437435ba6cc4817)), closes [#2605](https://github.com/HankHuang0516/EClaw/issues/2605) [#2608](https://github.com/HankHuang0516/EClaw/issues/2608) [#2600](https://github.com/HankHuang0516/EClaw/issues/2600) [#2599](https://github.com/HankHuang0516/EClaw/issues/2599) [#2598](https://github.com/HankHuang0516/EClaw/issues/2598)
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **chat:** smart-chip preview falls back to inline c.comments when /comments fails (PR [#2677](https://github.com/HankHuang0516/EClaw/issues/2677)) ([7f4dffd](https://github.com/HankHuang0516/EClaw/commit/7f4dffd2c83ea86f296b8fa0610f0e67c9f1af11))
* **wallpaper:** stop Android live wallpaper flashing default lobster on companion change ([#2629](https://github.com/HankHuang0516/EClaw/issues/2629)) ([8b4f66f](https://github.com/HankHuang0516/EClaw/commit/8b4f66fcb335bf43128f924b761b6337c817095b)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **app:** WebView pages honor app-selected locale via ?lang= URL param ([#2672](https://github.com/HankHuang0516/EClaw/issues/2672)) ([8ed8757](https://github.com/HankHuang0516/EClaw/commit/8ed8757aec5bf214e837cc0d81bf2b23f1993a91)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* **community:** 1-click chat button on bot cards + utm tagging ([#2610](https://github.com/HankHuang0516/EClaw/issues/2610)) ([eee97b0](https://github.com/HankHuang0516/EClaw/commit/eee97b0e2e4e74945ec24f218a69a52800b97a66))
* **dashboard:** add Claude and Codex channel guides ([#2640](https://github.com/HankHuang0516/EClaw/issues/2640)) ([c64e4c4](https://github.com/HankHuang0516/EClaw/commit/c64e4c4afc78db58c5cd578f00486dd7b2fd3311))
* **dashboard:** add Claude Code channel guide card ([#2667](https://github.com/HankHuang0516/EClaw/issues/2667)) ([d70d75c](https://github.com/HankHuang0516/EClaw/commit/d70d75c0c8caa8a540358a9aab4556b8c1927a5c))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* **portal:** add entity selector to petdx-browser ([#2602](https://github.com/HankHuang0516/EClaw/issues/2602)) ([3fa067e](https://github.com/HankHuang0516/EClaw/commit/3fa067e00b38829b48a37cecd33ee81a9a1122d9))
* **mindmap:** add GET /api/mindmap/graph force-graph projection ([#2680](https://github.com/HankHuang0516/EClaw/issues/2680)) ([a00b2e7](https://github.com/HankHuang0516/EClaw/commit/a00b2e775af2c4c98cd157f760ad87aeeee469f0)), closes [#2679](https://github.com/HankHuang0516/EClaw/issues/2679) [#2679](https://github.com/HankHuang0516/EClaw/issues/2679)
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **companion:** bridge crafter-station/petdex gallery (1784 pets) ([#2601](https://github.com/HankHuang0516/EClaw/issues/2601)) ([2e245be](https://github.com/HankHuang0516/EClaw/commit/2e245bea6dd47ea7361b927d389188a3c23b6bb3))
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **avatar:** petdx render on card-holder my-cards (Phase 1b) ([#2621](https://github.com/HankHuang0516/EClaw/issues/2621)) ([f78ba8b](https://github.com/HankHuang0516/EClaw/commit/f78ba8b18acc426936ab6d8a82ca7541effea00d))
* **avatar:** petdx render on dashboard entity grid / org chart / bindings (Phase 1b) ([#2622](https://github.com/HankHuang0516/EClaw/issues/2622)) ([f417749](https://github.com/HankHuang0516/EClaw/commit/f41774914451048e8cd76e9ae30416a0642e173b)), closes [#2620](https://github.com/HankHuang0516/EClaw/issues/2620) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621)
* **avatar:** petdx render on kanban auto-assign / pulse / comment avatars (Phase 1b) ([#2624](https://github.com/HankHuang0516/EClaw/issues/2624)) ([6bff5f8](https://github.com/HankHuang0516/EClaw/commit/6bff5f80440d0bd91a6b1721cde9478d685c4d46))
* **avatar:** petdx render on mission skill/rule/soul entity dialogs (Phase 1b) ([#2623](https://github.com/HankHuang0516/EClaw/issues/2623)) ([129327b](https://github.com/HankHuang0516/EClaw/commit/129327bc7b91056659f1ab7e8d5e3f5260d951fb))
* **mindmap:** portal/mindmap.html force-graph prototype ([#129](https://github.com/HankHuang0516/EClaw/issues/129)) ([#2681](https://github.com/HankHuang0516/EClaw/issues/2681)) ([0f15e69](https://github.com/HankHuang0516/EClaw/commit/0f15e6930f0697c37fa08f3219edb8f9e499837f)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **avatar:** render selected petdx companion in chat avatars ([#2620](https://github.com/HankHuang0516/EClaw/issues/2620)) ([0bdd046](https://github.com/HankHuang0516/EClaw/commit/0bdd046fe1b1c428e32edda366ff112c08927f4c))
* **home:** replace native home with WebView hosting dashboard.html ([#2634](https://github.com/HankHuang0516/EClaw/issues/2634)) ([e69ea81](https://github.com/HankHuang0516/EClaw/commit/e69ea8160c239b083a83d6dc83a4f1c3f901c863))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **share-chat:** twitter card + per-bot og:image/twitter:* in SSR ([#2609](https://github.com/HankHuang0516/EClaw/issues/2609)) ([6cdc853](https://github.com/HankHuang0516/EClaw/commit/6cdc853dc884cdb95bd47214942768981f218ae0))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))
* **settings:** wire petdx avatar into channel-account chips ([#2626](https://github.com/HankHuang0516/EClaw/issues/2626)) ([88aec77](https://github.com/HankHuang0516/EClaw/commit/88aec772628c240e97b336bb5820892ad632d1ae))
* **files:** wire petdx avatar into entity filter & per-file badges ([#2627](https://github.com/HankHuang0516/EClaw/issues/2627)) ([5b3e5cc](https://github.com/HankHuang0516/EClaw/commit/5b3e5cc542d9da69bb4e92500fd03a542ea33f00))
* **mindmap:** wrap hardcoded zh-TW UI strings with i18n t() ([#2607](https://github.com/HankHuang0516/EClaw/issues/2607)) ([166af87](https://github.com/HankHuang0516/EClaw/commit/166af8772b2121a24aaf34a83b3de970e9b3b571)), closes [#2606](https://github.com/HankHuang0516/EClaw/issues/2606)

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-13)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **notifications:** add kanban_done + kanban_done_auto toggles to Android Settings ([#2636](https://github.com/HankHuang0516/EClaw/issues/2636)) ([a710909](https://github.com/HankHuang0516/EClaw/commit/a7109095e3393b8564e7ef1b23d382a4fbb944b8))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **kanban:** comment input no longer overlaps last comment in card detail (PR [#2678](https://github.com/HankHuang0516/EClaw/issues/2678)) ([fba91fc](https://github.com/HankHuang0516/EClaw/commit/fba91fca15402b453a0db5ee857c0b16e6087055))
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **petdx:** drop dark-grey loading placeholder + preload sprite WEBP ([#2628](https://github.com/HankHuang0516/EClaw/issues/2628)) ([59cef38](https://github.com/HankHuang0516/EClaw/commit/59cef387bd69ca99d7d15c86a1364856d3849ad8)), closes [#1a1a1a](https://github.com/HankHuang0516/EClaw/issues/1a1a1a)
* **entities:** expose botSecret to owner so wallpaper service can poll companions ([#2615](https://github.com/HankHuang0516/EClaw/issues/2615)) ([04470fc](https://github.com/HankHuang0516/EClaw/commit/04470fce8f8c3fce2b1ba8b243e776606f107502))
* **rental:** expose owner_public_code in marketplace so plaza CTA can route ([#2616](https://github.com/HankHuang0516/EClaw/issues/2616)) ([4d1372f](https://github.com/HankHuang0516/EClaw/commit/4d1372f717d93cab65543e87c852e74e9fb67071)), closes [#2610](https://github.com/HankHuang0516/EClaw/issues/2610)
* **portal:** fit embedded org chart to mobile viewport ([#2674](https://github.com/HankHuang0516/EClaw/issues/2674)) ([1c4e1b4](https://github.com/HankHuang0516/EClaw/commit/1c4e1b413ea7027b4cd4b8ecda981b0d0e12e66b))
* **mention-parser:** ignore @-mentions inside markdown code spans ([#2645](https://github.com/HankHuang0516/EClaw/issues/2645)) ([8da19d4](https://github.com/HankHuang0516/EClaw/commit/8da19d4a79ceb4152bf2144ee0847c61ce3e1def)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **kanban:** lazy-load dependency chips via IntersectionObserver ([#2632](https://github.com/HankHuang0516/EClaw/issues/2632)) ([20586b4](https://github.com/HankHuang0516/EClaw/commit/20586b43357335f9eb6a190c02d58c8e36b58aba)), closes [#2631](https://github.com/HankHuang0516/EClaw/issues/2631)
* **wallpaper:** off-load spritesheet fetch to IO so per-petdx sprites actually render ([#2618](https://github.com/HankHuang0516/EClaw/issues/2618)) ([61b832c](https://github.com/HankHuang0516/EClaw/commit/61b832c9fa8a1d0caab810ccc942d85c63349267)), closes [#2615](https://github.com/HankHuang0516/EClaw/issues/2615) [#2577](https://github.com/HankHuang0516/EClaw/issues/2577)
* **i18n:** positional format specifiers for feedback_result_logs (7 locales) ([#2597](https://github.com/HankHuang0516/EClaw/issues/2597)) ([21aedc7](https://github.com/HankHuang0516/EClaw/commit/21aedc7eebc7a2839e340136f38dfdfd4dabb9dc))
* **avatar-petdx:** preserve descriptor across transient API failures (flicker) ([#2625](https://github.com/HankHuang0516/EClaw/issues/2625)) ([7b1c606](https://github.com/HankHuang0516/EClaw/commit/7b1c606514f7698d72ec95cf6c556e4043966186))
* **portal:** reduce QA-discovered request fanout ([#2656](https://github.com/HankHuang0516/EClaw/issues/2656)) ([1e46d6b](https://github.com/HankHuang0516/EClaw/commit/1e46d6bab61e58c65b452b6503d953f8dddeee75))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **portal:** remove org chart fit scale floor ([#2676](https://github.com/HankHuang0516/EClaw/issues/2676)) ([0f01606](https://github.com/HankHuang0516/EClaw/commit/0f016068b963bb5f800a02f28817c7174979d913))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **chat:** render mention avatars with companion renderer ([#2633](https://github.com/HankHuang0516/EClaw/issues/2633)) ([03e205f](https://github.com/HankHuang0516/EClaw/commit/03e205f663ecd2c2f443d4009dd5af0093f0bbbb))
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* scheduled audit 2026-05-13 — 6 bugs, XSS, i18n ([#2668](https://github.com/HankHuang0516/EClaw/issues/2668)) ([21dd513](https://github.com/HankHuang0516/EClaw/commit/21dd513b4464738de29164265437435ba6cc4817)), closes [#2605](https://github.com/HankHuang0516/EClaw/issues/2605) [#2608](https://github.com/HankHuang0516/EClaw/issues/2608) [#2600](https://github.com/HankHuang0516/EClaw/issues/2600) [#2599](https://github.com/HankHuang0516/EClaw/issues/2599) [#2598](https://github.com/HankHuang0516/EClaw/issues/2598)
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **chat:** smart-chip preview falls back to inline c.comments when /comments fails (PR [#2677](https://github.com/HankHuang0516/EClaw/issues/2677)) ([7f4dffd](https://github.com/HankHuang0516/EClaw/commit/7f4dffd2c83ea86f296b8fa0610f0e67c9f1af11))
* **wallpaper:** stop Android live wallpaper flashing default lobster on companion change ([#2629](https://github.com/HankHuang0516/EClaw/issues/2629)) ([8b4f66f](https://github.com/HankHuang0516/EClaw/commit/8b4f66fcb335bf43128f924b761b6337c817095b)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **app:** WebView pages honor app-selected locale via ?lang= URL param ([#2672](https://github.com/HankHuang0516/EClaw/issues/2672)) ([8ed8757](https://github.com/HankHuang0516/EClaw/commit/8ed8757aec5bf214e837cc0d81bf2b23f1993a91)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* **community:** 1-click chat button on bot cards + utm tagging ([#2610](https://github.com/HankHuang0516/EClaw/issues/2610)) ([eee97b0](https://github.com/HankHuang0516/EClaw/commit/eee97b0e2e4e74945ec24f218a69a52800b97a66))
* **dashboard:** add Claude and Codex channel guides ([#2640](https://github.com/HankHuang0516/EClaw/issues/2640)) ([c64e4c4](https://github.com/HankHuang0516/EClaw/commit/c64e4c4afc78db58c5cd578f00486dd7b2fd3311))
* **dashboard:** add Claude Code channel guide card ([#2667](https://github.com/HankHuang0516/EClaw/issues/2667)) ([d70d75c](https://github.com/HankHuang0516/EClaw/commit/d70d75c0c8caa8a540358a9aab4556b8c1927a5c))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* **portal:** add entity selector to petdx-browser ([#2602](https://github.com/HankHuang0516/EClaw/issues/2602)) ([3fa067e](https://github.com/HankHuang0516/EClaw/commit/3fa067e00b38829b48a37cecd33ee81a9a1122d9))
* **mindmap:** add GET /api/mindmap/graph force-graph projection ([#2680](https://github.com/HankHuang0516/EClaw/issues/2680)) ([a00b2e7](https://github.com/HankHuang0516/EClaw/commit/a00b2e775af2c4c98cd157f760ad87aeeee469f0)), closes [#2679](https://github.com/HankHuang0516/EClaw/issues/2679) [#2679](https://github.com/HankHuang0516/EClaw/issues/2679)
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **companion:** bridge crafter-station/petdex gallery (1784 pets) ([#2601](https://github.com/HankHuang0516/EClaw/issues/2601)) ([2e245be](https://github.com/HankHuang0516/EClaw/commit/2e245bea6dd47ea7361b927d389188a3c23b6bb3))
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **avatar:** petdx render on card-holder my-cards (Phase 1b) ([#2621](https://github.com/HankHuang0516/EClaw/issues/2621)) ([f78ba8b](https://github.com/HankHuang0516/EClaw/commit/f78ba8b18acc426936ab6d8a82ca7541effea00d))
* **avatar:** petdx render on dashboard entity grid / org chart / bindings (Phase 1b) ([#2622](https://github.com/HankHuang0516/EClaw/issues/2622)) ([f417749](https://github.com/HankHuang0516/EClaw/commit/f41774914451048e8cd76e9ae30416a0642e173b)), closes [#2620](https://github.com/HankHuang0516/EClaw/issues/2620) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621)
* **avatar:** petdx render on kanban auto-assign / pulse / comment avatars (Phase 1b) ([#2624](https://github.com/HankHuang0516/EClaw/issues/2624)) ([6bff5f8](https://github.com/HankHuang0516/EClaw/commit/6bff5f80440d0bd91a6b1721cde9478d685c4d46))
* **avatar:** petdx render on mission skill/rule/soul entity dialogs (Phase 1b) ([#2623](https://github.com/HankHuang0516/EClaw/issues/2623)) ([129327b](https://github.com/HankHuang0516/EClaw/commit/129327bc7b91056659f1ab7e8d5e3f5260d951fb))
* **mindmap:** portal/mindmap.html force-graph prototype ([#129](https://github.com/HankHuang0516/EClaw/issues/129)) ([#2681](https://github.com/HankHuang0516/EClaw/issues/2681)) ([0f15e69](https://github.com/HankHuang0516/EClaw/commit/0f15e6930f0697c37fa08f3219edb8f9e499837f)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **avatar:** render selected petdx companion in chat avatars ([#2620](https://github.com/HankHuang0516/EClaw/issues/2620)) ([0bdd046](https://github.com/HankHuang0516/EClaw/commit/0bdd046fe1b1c428e32edda366ff112c08927f4c))
* **home:** replace native home with WebView hosting dashboard.html ([#2634](https://github.com/HankHuang0516/EClaw/issues/2634)) ([e69ea81](https://github.com/HankHuang0516/EClaw/commit/e69ea8160c239b083a83d6dc83a4f1c3f901c863))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **share-chat:** twitter card + per-bot og:image/twitter:* in SSR ([#2609](https://github.com/HankHuang0516/EClaw/issues/2609)) ([6cdc853](https://github.com/HankHuang0516/EClaw/commit/6cdc853dc884cdb95bd47214942768981f218ae0))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))
* **settings:** wire petdx avatar into channel-account chips ([#2626](https://github.com/HankHuang0516/EClaw/issues/2626)) ([88aec77](https://github.com/HankHuang0516/EClaw/commit/88aec772628c240e97b336bb5820892ad632d1ae))
* **files:** wire petdx avatar into entity filter & per-file badges ([#2627](https://github.com/HankHuang0516/EClaw/issues/2627)) ([5b3e5cc](https://github.com/HankHuang0516/EClaw/commit/5b3e5cc542d9da69bb4e92500fd03a542ea33f00))
* **mindmap:** wrap hardcoded zh-TW UI strings with i18n t() ([#2607](https://github.com/HankHuang0516/EClaw/issues/2607)) ([166af87](https://github.com/HankHuang0516/EClaw/commit/166af8772b2121a24aaf34a83b3de970e9b3b571)), closes [#2606](https://github.com/HankHuang0516/EClaw/issues/2606)

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-13)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **notifications:** add kanban_done + kanban_done_auto toggles to Android Settings ([#2636](https://github.com/HankHuang0516/EClaw/issues/2636)) ([a710909](https://github.com/HankHuang0516/EClaw/commit/a7109095e3393b8564e7ef1b23d382a4fbb944b8))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **kanban:** comment input no longer overlaps last comment in card detail (PR [#2678](https://github.com/HankHuang0516/EClaw/issues/2678)) ([fba91fc](https://github.com/HankHuang0516/EClaw/commit/fba91fca15402b453a0db5ee857c0b16e6087055))
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **petdx:** drop dark-grey loading placeholder + preload sprite WEBP ([#2628](https://github.com/HankHuang0516/EClaw/issues/2628)) ([59cef38](https://github.com/HankHuang0516/EClaw/commit/59cef387bd69ca99d7d15c86a1364856d3849ad8)), closes [#1a1a1a](https://github.com/HankHuang0516/EClaw/issues/1a1a1a)
* **entities:** expose botSecret to owner so wallpaper service can poll companions ([#2615](https://github.com/HankHuang0516/EClaw/issues/2615)) ([04470fc](https://github.com/HankHuang0516/EClaw/commit/04470fce8f8c3fce2b1ba8b243e776606f107502))
* **rental:** expose owner_public_code in marketplace so plaza CTA can route ([#2616](https://github.com/HankHuang0516/EClaw/issues/2616)) ([4d1372f](https://github.com/HankHuang0516/EClaw/commit/4d1372f717d93cab65543e87c852e74e9fb67071)), closes [#2610](https://github.com/HankHuang0516/EClaw/issues/2610)
* **portal:** fit embedded org chart to mobile viewport ([#2674](https://github.com/HankHuang0516/EClaw/issues/2674)) ([1c4e1b4](https://github.com/HankHuang0516/EClaw/commit/1c4e1b413ea7027b4cd4b8ecda981b0d0e12e66b))
* **mention-parser:** ignore @-mentions inside markdown code spans ([#2645](https://github.com/HankHuang0516/EClaw/issues/2645)) ([8da19d4](https://github.com/HankHuang0516/EClaw/commit/8da19d4a79ceb4152bf2144ee0847c61ce3e1def)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **kanban:** lazy-load dependency chips via IntersectionObserver ([#2632](https://github.com/HankHuang0516/EClaw/issues/2632)) ([20586b4](https://github.com/HankHuang0516/EClaw/commit/20586b43357335f9eb6a190c02d58c8e36b58aba)), closes [#2631](https://github.com/HankHuang0516/EClaw/issues/2631)
* **wallpaper:** off-load spritesheet fetch to IO so per-petdx sprites actually render ([#2618](https://github.com/HankHuang0516/EClaw/issues/2618)) ([61b832c](https://github.com/HankHuang0516/EClaw/commit/61b832c9fa8a1d0caab810ccc942d85c63349267)), closes [#2615](https://github.com/HankHuang0516/EClaw/issues/2615) [#2577](https://github.com/HankHuang0516/EClaw/issues/2577)
* **i18n:** positional format specifiers for feedback_result_logs (7 locales) ([#2597](https://github.com/HankHuang0516/EClaw/issues/2597)) ([21aedc7](https://github.com/HankHuang0516/EClaw/commit/21aedc7eebc7a2839e340136f38dfdfd4dabb9dc))
* **avatar-petdx:** preserve descriptor across transient API failures (flicker) ([#2625](https://github.com/HankHuang0516/EClaw/issues/2625)) ([7b1c606](https://github.com/HankHuang0516/EClaw/commit/7b1c606514f7698d72ec95cf6c556e4043966186))
* **portal:** reduce QA-discovered request fanout ([#2656](https://github.com/HankHuang0516/EClaw/issues/2656)) ([1e46d6b](https://github.com/HankHuang0516/EClaw/commit/1e46d6bab61e58c65b452b6503d953f8dddeee75))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **portal:** remove org chart fit scale floor ([#2676](https://github.com/HankHuang0516/EClaw/issues/2676)) ([0f01606](https://github.com/HankHuang0516/EClaw/commit/0f016068b963bb5f800a02f28817c7174979d913))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **chat:** render mention avatars with companion renderer ([#2633](https://github.com/HankHuang0516/EClaw/issues/2633)) ([03e205f](https://github.com/HankHuang0516/EClaw/commit/03e205f663ecd2c2f443d4009dd5af0093f0bbbb))
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* scheduled audit 2026-05-13 — 6 bugs, XSS, i18n ([#2668](https://github.com/HankHuang0516/EClaw/issues/2668)) ([21dd513](https://github.com/HankHuang0516/EClaw/commit/21dd513b4464738de29164265437435ba6cc4817)), closes [#2605](https://github.com/HankHuang0516/EClaw/issues/2605) [#2608](https://github.com/HankHuang0516/EClaw/issues/2608) [#2600](https://github.com/HankHuang0516/EClaw/issues/2600) [#2599](https://github.com/HankHuang0516/EClaw/issues/2599) [#2598](https://github.com/HankHuang0516/EClaw/issues/2598)
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **chat:** smart-chip preview falls back to inline c.comments when /comments fails (PR [#2677](https://github.com/HankHuang0516/EClaw/issues/2677)) ([7f4dffd](https://github.com/HankHuang0516/EClaw/commit/7f4dffd2c83ea86f296b8fa0610f0e67c9f1af11))
* **wallpaper:** stop Android live wallpaper flashing default lobster on companion change ([#2629](https://github.com/HankHuang0516/EClaw/issues/2629)) ([8b4f66f](https://github.com/HankHuang0516/EClaw/commit/8b4f66fcb335bf43128f924b761b6337c817095b)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **app:** WebView pages honor app-selected locale via ?lang= URL param ([#2672](https://github.com/HankHuang0516/EClaw/issues/2672)) ([8ed8757](https://github.com/HankHuang0516/EClaw/commit/8ed8757aec5bf214e837cc0d81bf2b23f1993a91)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* **community:** 1-click chat button on bot cards + utm tagging ([#2610](https://github.com/HankHuang0516/EClaw/issues/2610)) ([eee97b0](https://github.com/HankHuang0516/EClaw/commit/eee97b0e2e4e74945ec24f218a69a52800b97a66))
* **dashboard:** add Claude and Codex channel guides ([#2640](https://github.com/HankHuang0516/EClaw/issues/2640)) ([c64e4c4](https://github.com/HankHuang0516/EClaw/commit/c64e4c4afc78db58c5cd578f00486dd7b2fd3311))
* **dashboard:** add Claude Code channel guide card ([#2667](https://github.com/HankHuang0516/EClaw/issues/2667)) ([d70d75c](https://github.com/HankHuang0516/EClaw/commit/d70d75c0c8caa8a540358a9aab4556b8c1927a5c))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* **portal:** add entity selector to petdx-browser ([#2602](https://github.com/HankHuang0516/EClaw/issues/2602)) ([3fa067e](https://github.com/HankHuang0516/EClaw/commit/3fa067e00b38829b48a37cecd33ee81a9a1122d9))
* **mindmap:** add GET /api/mindmap/graph force-graph projection ([#2680](https://github.com/HankHuang0516/EClaw/issues/2680)) ([a00b2e7](https://github.com/HankHuang0516/EClaw/commit/a00b2e775af2c4c98cd157f760ad87aeeee469f0)), closes [#2679](https://github.com/HankHuang0516/EClaw/issues/2679) [#2679](https://github.com/HankHuang0516/EClaw/issues/2679)
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **companion:** bridge crafter-station/petdex gallery (1784 pets) ([#2601](https://github.com/HankHuang0516/EClaw/issues/2601)) ([2e245be](https://github.com/HankHuang0516/EClaw/commit/2e245bea6dd47ea7361b927d389188a3c23b6bb3))
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **avatar:** petdx render on card-holder my-cards (Phase 1b) ([#2621](https://github.com/HankHuang0516/EClaw/issues/2621)) ([f78ba8b](https://github.com/HankHuang0516/EClaw/commit/f78ba8b18acc426936ab6d8a82ca7541effea00d))
* **avatar:** petdx render on dashboard entity grid / org chart / bindings (Phase 1b) ([#2622](https://github.com/HankHuang0516/EClaw/issues/2622)) ([f417749](https://github.com/HankHuang0516/EClaw/commit/f41774914451048e8cd76e9ae30416a0642e173b)), closes [#2620](https://github.com/HankHuang0516/EClaw/issues/2620) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621)
* **avatar:** petdx render on kanban auto-assign / pulse / comment avatars (Phase 1b) ([#2624](https://github.com/HankHuang0516/EClaw/issues/2624)) ([6bff5f8](https://github.com/HankHuang0516/EClaw/commit/6bff5f80440d0bd91a6b1721cde9478d685c4d46))
* **avatar:** petdx render on mission skill/rule/soul entity dialogs (Phase 1b) ([#2623](https://github.com/HankHuang0516/EClaw/issues/2623)) ([129327b](https://github.com/HankHuang0516/EClaw/commit/129327bc7b91056659f1ab7e8d5e3f5260d951fb))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **avatar:** render selected petdx companion in chat avatars ([#2620](https://github.com/HankHuang0516/EClaw/issues/2620)) ([0bdd046](https://github.com/HankHuang0516/EClaw/commit/0bdd046fe1b1c428e32edda366ff112c08927f4c))
* **home:** replace native home with WebView hosting dashboard.html ([#2634](https://github.com/HankHuang0516/EClaw/issues/2634)) ([e69ea81](https://github.com/HankHuang0516/EClaw/commit/e69ea8160c239b083a83d6dc83a4f1c3f901c863))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **share-chat:** twitter card + per-bot og:image/twitter:* in SSR ([#2609](https://github.com/HankHuang0516/EClaw/issues/2609)) ([6cdc853](https://github.com/HankHuang0516/EClaw/commit/6cdc853dc884cdb95bd47214942768981f218ae0))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))
* **settings:** wire petdx avatar into channel-account chips ([#2626](https://github.com/HankHuang0516/EClaw/issues/2626)) ([88aec77](https://github.com/HankHuang0516/EClaw/commit/88aec772628c240e97b336bb5820892ad632d1ae))
* **files:** wire petdx avatar into entity filter & per-file badges ([#2627](https://github.com/HankHuang0516/EClaw/issues/2627)) ([5b3e5cc](https://github.com/HankHuang0516/EClaw/commit/5b3e5cc542d9da69bb4e92500fd03a542ea33f00))
* **mindmap:** wrap hardcoded zh-TW UI strings with i18n t() ([#2607](https://github.com/HankHuang0516/EClaw/issues/2607)) ([166af87](https://github.com/HankHuang0516/EClaw/commit/166af8772b2121a24aaf34a83b3de970e9b3b571)), closes [#2606](https://github.com/HankHuang0516/EClaw/issues/2606)

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-13)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **notifications:** add kanban_done + kanban_done_auto toggles to Android Settings ([#2636](https://github.com/HankHuang0516/EClaw/issues/2636)) ([a710909](https://github.com/HankHuang0516/EClaw/commit/a7109095e3393b8564e7ef1b23d382a4fbb944b8))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **kanban:** comment input no longer overlaps last comment in card detail (PR [#2678](https://github.com/HankHuang0516/EClaw/issues/2678)) ([fba91fc](https://github.com/HankHuang0516/EClaw/commit/fba91fca15402b453a0db5ee857c0b16e6087055))
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **petdx:** drop dark-grey loading placeholder + preload sprite WEBP ([#2628](https://github.com/HankHuang0516/EClaw/issues/2628)) ([59cef38](https://github.com/HankHuang0516/EClaw/commit/59cef387bd69ca99d7d15c86a1364856d3849ad8)), closes [#1a1a1a](https://github.com/HankHuang0516/EClaw/issues/1a1a1a)
* **entities:** expose botSecret to owner so wallpaper service can poll companions ([#2615](https://github.com/HankHuang0516/EClaw/issues/2615)) ([04470fc](https://github.com/HankHuang0516/EClaw/commit/04470fce8f8c3fce2b1ba8b243e776606f107502))
* **rental:** expose owner_public_code in marketplace so plaza CTA can route ([#2616](https://github.com/HankHuang0516/EClaw/issues/2616)) ([4d1372f](https://github.com/HankHuang0516/EClaw/commit/4d1372f717d93cab65543e87c852e74e9fb67071)), closes [#2610](https://github.com/HankHuang0516/EClaw/issues/2610)
* **portal:** fit embedded org chart to mobile viewport ([#2674](https://github.com/HankHuang0516/EClaw/issues/2674)) ([1c4e1b4](https://github.com/HankHuang0516/EClaw/commit/1c4e1b413ea7027b4cd4b8ecda981b0d0e12e66b))
* **mention-parser:** ignore @-mentions inside markdown code spans ([#2645](https://github.com/HankHuang0516/EClaw/issues/2645)) ([8da19d4](https://github.com/HankHuang0516/EClaw/commit/8da19d4a79ceb4152bf2144ee0847c61ce3e1def)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **kanban:** lazy-load dependency chips via IntersectionObserver ([#2632](https://github.com/HankHuang0516/EClaw/issues/2632)) ([20586b4](https://github.com/HankHuang0516/EClaw/commit/20586b43357335f9eb6a190c02d58c8e36b58aba)), closes [#2631](https://github.com/HankHuang0516/EClaw/issues/2631)
* **wallpaper:** off-load spritesheet fetch to IO so per-petdx sprites actually render ([#2618](https://github.com/HankHuang0516/EClaw/issues/2618)) ([61b832c](https://github.com/HankHuang0516/EClaw/commit/61b832c9fa8a1d0caab810ccc942d85c63349267)), closes [#2615](https://github.com/HankHuang0516/EClaw/issues/2615) [#2577](https://github.com/HankHuang0516/EClaw/issues/2577)
* **i18n:** positional format specifiers for feedback_result_logs (7 locales) ([#2597](https://github.com/HankHuang0516/EClaw/issues/2597)) ([21aedc7](https://github.com/HankHuang0516/EClaw/commit/21aedc7eebc7a2839e340136f38dfdfd4dabb9dc))
* **avatar-petdx:** preserve descriptor across transient API failures (flicker) ([#2625](https://github.com/HankHuang0516/EClaw/issues/2625)) ([7b1c606](https://github.com/HankHuang0516/EClaw/commit/7b1c606514f7698d72ec95cf6c556e4043966186))
* **portal:** reduce QA-discovered request fanout ([#2656](https://github.com/HankHuang0516/EClaw/issues/2656)) ([1e46d6b](https://github.com/HankHuang0516/EClaw/commit/1e46d6bab61e58c65b452b6503d953f8dddeee75))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **portal:** remove org chart fit scale floor ([#2676](https://github.com/HankHuang0516/EClaw/issues/2676)) ([0f01606](https://github.com/HankHuang0516/EClaw/commit/0f016068b963bb5f800a02f28817c7174979d913))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **chat:** render mention avatars with companion renderer ([#2633](https://github.com/HankHuang0516/EClaw/issues/2633)) ([03e205f](https://github.com/HankHuang0516/EClaw/commit/03e205f663ecd2c2f443d4009dd5af0093f0bbbb))
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* scheduled audit 2026-05-13 — 6 bugs, XSS, i18n ([#2668](https://github.com/HankHuang0516/EClaw/issues/2668)) ([21dd513](https://github.com/HankHuang0516/EClaw/commit/21dd513b4464738de29164265437435ba6cc4817)), closes [#2605](https://github.com/HankHuang0516/EClaw/issues/2605) [#2608](https://github.com/HankHuang0516/EClaw/issues/2608) [#2600](https://github.com/HankHuang0516/EClaw/issues/2600) [#2599](https://github.com/HankHuang0516/EClaw/issues/2599) [#2598](https://github.com/HankHuang0516/EClaw/issues/2598)
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **chat:** smart-chip preview falls back to inline c.comments when /comments fails (PR [#2677](https://github.com/HankHuang0516/EClaw/issues/2677)) ([7f4dffd](https://github.com/HankHuang0516/EClaw/commit/7f4dffd2c83ea86f296b8fa0610f0e67c9f1af11))
* **wallpaper:** stop Android live wallpaper flashing default lobster on companion change ([#2629](https://github.com/HankHuang0516/EClaw/issues/2629)) ([8b4f66f](https://github.com/HankHuang0516/EClaw/commit/8b4f66fcb335bf43128f924b761b6337c817095b)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **app:** WebView pages honor app-selected locale via ?lang= URL param ([#2672](https://github.com/HankHuang0516/EClaw/issues/2672)) ([8ed8757](https://github.com/HankHuang0516/EClaw/commit/8ed8757aec5bf214e837cc0d81bf2b23f1993a91)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* **community:** 1-click chat button on bot cards + utm tagging ([#2610](https://github.com/HankHuang0516/EClaw/issues/2610)) ([eee97b0](https://github.com/HankHuang0516/EClaw/commit/eee97b0e2e4e74945ec24f218a69a52800b97a66))
* **dashboard:** add Claude and Codex channel guides ([#2640](https://github.com/HankHuang0516/EClaw/issues/2640)) ([c64e4c4](https://github.com/HankHuang0516/EClaw/commit/c64e4c4afc78db58c5cd578f00486dd7b2fd3311))
* **dashboard:** add Claude Code channel guide card ([#2667](https://github.com/HankHuang0516/EClaw/issues/2667)) ([d70d75c](https://github.com/HankHuang0516/EClaw/commit/d70d75c0c8caa8a540358a9aab4556b8c1927a5c))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* **portal:** add entity selector to petdx-browser ([#2602](https://github.com/HankHuang0516/EClaw/issues/2602)) ([3fa067e](https://github.com/HankHuang0516/EClaw/commit/3fa067e00b38829b48a37cecd33ee81a9a1122d9))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **companion:** bridge crafter-station/petdex gallery (1784 pets) ([#2601](https://github.com/HankHuang0516/EClaw/issues/2601)) ([2e245be](https://github.com/HankHuang0516/EClaw/commit/2e245bea6dd47ea7361b927d389188a3c23b6bb3))
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **avatar:** petdx render on card-holder my-cards (Phase 1b) ([#2621](https://github.com/HankHuang0516/EClaw/issues/2621)) ([f78ba8b](https://github.com/HankHuang0516/EClaw/commit/f78ba8b18acc426936ab6d8a82ca7541effea00d))
* **avatar:** petdx render on dashboard entity grid / org chart / bindings (Phase 1b) ([#2622](https://github.com/HankHuang0516/EClaw/issues/2622)) ([f417749](https://github.com/HankHuang0516/EClaw/commit/f41774914451048e8cd76e9ae30416a0642e173b)), closes [#2620](https://github.com/HankHuang0516/EClaw/issues/2620) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621)
* **avatar:** petdx render on kanban auto-assign / pulse / comment avatars (Phase 1b) ([#2624](https://github.com/HankHuang0516/EClaw/issues/2624)) ([6bff5f8](https://github.com/HankHuang0516/EClaw/commit/6bff5f80440d0bd91a6b1721cde9478d685c4d46))
* **avatar:** petdx render on mission skill/rule/soul entity dialogs (Phase 1b) ([#2623](https://github.com/HankHuang0516/EClaw/issues/2623)) ([129327b](https://github.com/HankHuang0516/EClaw/commit/129327bc7b91056659f1ab7e8d5e3f5260d951fb))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **avatar:** render selected petdx companion in chat avatars ([#2620](https://github.com/HankHuang0516/EClaw/issues/2620)) ([0bdd046](https://github.com/HankHuang0516/EClaw/commit/0bdd046fe1b1c428e32edda366ff112c08927f4c))
* **home:** replace native home with WebView hosting dashboard.html ([#2634](https://github.com/HankHuang0516/EClaw/issues/2634)) ([e69ea81](https://github.com/HankHuang0516/EClaw/commit/e69ea8160c239b083a83d6dc83a4f1c3f901c863))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **share-chat:** twitter card + per-bot og:image/twitter:* in SSR ([#2609](https://github.com/HankHuang0516/EClaw/issues/2609)) ([6cdc853](https://github.com/HankHuang0516/EClaw/commit/6cdc853dc884cdb95bd47214942768981f218ae0))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))
* **settings:** wire petdx avatar into channel-account chips ([#2626](https://github.com/HankHuang0516/EClaw/issues/2626)) ([88aec77](https://github.com/HankHuang0516/EClaw/commit/88aec772628c240e97b336bb5820892ad632d1ae))
* **files:** wire petdx avatar into entity filter & per-file badges ([#2627](https://github.com/HankHuang0516/EClaw/issues/2627)) ([5b3e5cc](https://github.com/HankHuang0516/EClaw/commit/5b3e5cc542d9da69bb4e92500fd03a542ea33f00))
* **mindmap:** wrap hardcoded zh-TW UI strings with i18n t() ([#2607](https://github.com/HankHuang0516/EClaw/issues/2607)) ([166af87](https://github.com/HankHuang0516/EClaw/commit/166af8772b2121a24aaf34a83b3de970e9b3b571)), closes [#2606](https://github.com/HankHuang0516/EClaw/issues/2606)

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-13)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **notifications:** add kanban_done + kanban_done_auto toggles to Android Settings ([#2636](https://github.com/HankHuang0516/EClaw/issues/2636)) ([a710909](https://github.com/HankHuang0516/EClaw/commit/a7109095e3393b8564e7ef1b23d382a4fbb944b8))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **kanban:** comment input no longer overlaps last comment in card detail (PR [#2678](https://github.com/HankHuang0516/EClaw/issues/2678)) ([fba91fc](https://github.com/HankHuang0516/EClaw/commit/fba91fca15402b453a0db5ee857c0b16e6087055))
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **petdx:** drop dark-grey loading placeholder + preload sprite WEBP ([#2628](https://github.com/HankHuang0516/EClaw/issues/2628)) ([59cef38](https://github.com/HankHuang0516/EClaw/commit/59cef387bd69ca99d7d15c86a1364856d3849ad8)), closes [#1a1a1a](https://github.com/HankHuang0516/EClaw/issues/1a1a1a)
* **entities:** expose botSecret to owner so wallpaper service can poll companions ([#2615](https://github.com/HankHuang0516/EClaw/issues/2615)) ([04470fc](https://github.com/HankHuang0516/EClaw/commit/04470fce8f8c3fce2b1ba8b243e776606f107502))
* **rental:** expose owner_public_code in marketplace so plaza CTA can route ([#2616](https://github.com/HankHuang0516/EClaw/issues/2616)) ([4d1372f](https://github.com/HankHuang0516/EClaw/commit/4d1372f717d93cab65543e87c852e74e9fb67071)), closes [#2610](https://github.com/HankHuang0516/EClaw/issues/2610)
* **portal:** fit embedded org chart to mobile viewport ([#2674](https://github.com/HankHuang0516/EClaw/issues/2674)) ([1c4e1b4](https://github.com/HankHuang0516/EClaw/commit/1c4e1b413ea7027b4cd4b8ecda981b0d0e12e66b))
* **mention-parser:** ignore @-mentions inside markdown code spans ([#2645](https://github.com/HankHuang0516/EClaw/issues/2645)) ([8da19d4](https://github.com/HankHuang0516/EClaw/commit/8da19d4a79ceb4152bf2144ee0847c61ce3e1def)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **kanban:** lazy-load dependency chips via IntersectionObserver ([#2632](https://github.com/HankHuang0516/EClaw/issues/2632)) ([20586b4](https://github.com/HankHuang0516/EClaw/commit/20586b43357335f9eb6a190c02d58c8e36b58aba)), closes [#2631](https://github.com/HankHuang0516/EClaw/issues/2631)
* **wallpaper:** off-load spritesheet fetch to IO so per-petdx sprites actually render ([#2618](https://github.com/HankHuang0516/EClaw/issues/2618)) ([61b832c](https://github.com/HankHuang0516/EClaw/commit/61b832c9fa8a1d0caab810ccc942d85c63349267)), closes [#2615](https://github.com/HankHuang0516/EClaw/issues/2615) [#2577](https://github.com/HankHuang0516/EClaw/issues/2577)
* **i18n:** positional format specifiers for feedback_result_logs (7 locales) ([#2597](https://github.com/HankHuang0516/EClaw/issues/2597)) ([21aedc7](https://github.com/HankHuang0516/EClaw/commit/21aedc7eebc7a2839e340136f38dfdfd4dabb9dc))
* **avatar-petdx:** preserve descriptor across transient API failures (flicker) ([#2625](https://github.com/HankHuang0516/EClaw/issues/2625)) ([7b1c606](https://github.com/HankHuang0516/EClaw/commit/7b1c606514f7698d72ec95cf6c556e4043966186))
* **portal:** reduce QA-discovered request fanout ([#2656](https://github.com/HankHuang0516/EClaw/issues/2656)) ([1e46d6b](https://github.com/HankHuang0516/EClaw/commit/1e46d6bab61e58c65b452b6503d953f8dddeee75))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **portal:** remove org chart fit scale floor ([#2676](https://github.com/HankHuang0516/EClaw/issues/2676)) ([0f01606](https://github.com/HankHuang0516/EClaw/commit/0f016068b963bb5f800a02f28817c7174979d913))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **chat:** render mention avatars with companion renderer ([#2633](https://github.com/HankHuang0516/EClaw/issues/2633)) ([03e205f](https://github.com/HankHuang0516/EClaw/commit/03e205f663ecd2c2f443d4009dd5af0093f0bbbb))
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* scheduled audit 2026-05-13 — 6 bugs, XSS, i18n ([#2668](https://github.com/HankHuang0516/EClaw/issues/2668)) ([21dd513](https://github.com/HankHuang0516/EClaw/commit/21dd513b4464738de29164265437435ba6cc4817)), closes [#2605](https://github.com/HankHuang0516/EClaw/issues/2605) [#2608](https://github.com/HankHuang0516/EClaw/issues/2608) [#2600](https://github.com/HankHuang0516/EClaw/issues/2600) [#2599](https://github.com/HankHuang0516/EClaw/issues/2599) [#2598](https://github.com/HankHuang0516/EClaw/issues/2598)
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **chat:** smart-chip preview falls back to inline c.comments when /comments fails (PR [#2677](https://github.com/HankHuang0516/EClaw/issues/2677)) ([7f4dffd](https://github.com/HankHuang0516/EClaw/commit/7f4dffd2c83ea86f296b8fa0610f0e67c9f1af11))
* **wallpaper:** stop Android live wallpaper flashing default lobster on companion change ([#2629](https://github.com/HankHuang0516/EClaw/issues/2629)) ([8b4f66f](https://github.com/HankHuang0516/EClaw/commit/8b4f66fcb335bf43128f924b761b6337c817095b)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **app:** WebView pages honor app-selected locale via ?lang= URL param ([#2672](https://github.com/HankHuang0516/EClaw/issues/2672)) ([8ed8757](https://github.com/HankHuang0516/EClaw/commit/8ed8757aec5bf214e837cc0d81bf2b23f1993a91)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* **community:** 1-click chat button on bot cards + utm tagging ([#2610](https://github.com/HankHuang0516/EClaw/issues/2610)) ([eee97b0](https://github.com/HankHuang0516/EClaw/commit/eee97b0e2e4e74945ec24f218a69a52800b97a66))
* **dashboard:** add Claude and Codex channel guides ([#2640](https://github.com/HankHuang0516/EClaw/issues/2640)) ([c64e4c4](https://github.com/HankHuang0516/EClaw/commit/c64e4c4afc78db58c5cd578f00486dd7b2fd3311))
* **dashboard:** add Claude Code channel guide card ([#2667](https://github.com/HankHuang0516/EClaw/issues/2667)) ([d70d75c](https://github.com/HankHuang0516/EClaw/commit/d70d75c0c8caa8a540358a9aab4556b8c1927a5c))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* **portal:** add entity selector to petdx-browser ([#2602](https://github.com/HankHuang0516/EClaw/issues/2602)) ([3fa067e](https://github.com/HankHuang0516/EClaw/commit/3fa067e00b38829b48a37cecd33ee81a9a1122d9))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **companion:** bridge crafter-station/petdex gallery (1784 pets) ([#2601](https://github.com/HankHuang0516/EClaw/issues/2601)) ([2e245be](https://github.com/HankHuang0516/EClaw/commit/2e245bea6dd47ea7361b927d389188a3c23b6bb3))
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **avatar:** petdx render on card-holder my-cards (Phase 1b) ([#2621](https://github.com/HankHuang0516/EClaw/issues/2621)) ([f78ba8b](https://github.com/HankHuang0516/EClaw/commit/f78ba8b18acc426936ab6d8a82ca7541effea00d))
* **avatar:** petdx render on dashboard entity grid / org chart / bindings (Phase 1b) ([#2622](https://github.com/HankHuang0516/EClaw/issues/2622)) ([f417749](https://github.com/HankHuang0516/EClaw/commit/f41774914451048e8cd76e9ae30416a0642e173b)), closes [#2620](https://github.com/HankHuang0516/EClaw/issues/2620) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621)
* **avatar:** petdx render on kanban auto-assign / pulse / comment avatars (Phase 1b) ([#2624](https://github.com/HankHuang0516/EClaw/issues/2624)) ([6bff5f8](https://github.com/HankHuang0516/EClaw/commit/6bff5f80440d0bd91a6b1721cde9478d685c4d46))
* **avatar:** petdx render on mission skill/rule/soul entity dialogs (Phase 1b) ([#2623](https://github.com/HankHuang0516/EClaw/issues/2623)) ([129327b](https://github.com/HankHuang0516/EClaw/commit/129327bc7b91056659f1ab7e8d5e3f5260d951fb))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **avatar:** render selected petdx companion in chat avatars ([#2620](https://github.com/HankHuang0516/EClaw/issues/2620)) ([0bdd046](https://github.com/HankHuang0516/EClaw/commit/0bdd046fe1b1c428e32edda366ff112c08927f4c))
* **home:** replace native home with WebView hosting dashboard.html ([#2634](https://github.com/HankHuang0516/EClaw/issues/2634)) ([e69ea81](https://github.com/HankHuang0516/EClaw/commit/e69ea8160c239b083a83d6dc83a4f1c3f901c863))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **share-chat:** twitter card + per-bot og:image/twitter:* in SSR ([#2609](https://github.com/HankHuang0516/EClaw/issues/2609)) ([6cdc853](https://github.com/HankHuang0516/EClaw/commit/6cdc853dc884cdb95bd47214942768981f218ae0))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))
* **settings:** wire petdx avatar into channel-account chips ([#2626](https://github.com/HankHuang0516/EClaw/issues/2626)) ([88aec77](https://github.com/HankHuang0516/EClaw/commit/88aec772628c240e97b336bb5820892ad632d1ae))
* **files:** wire petdx avatar into entity filter & per-file badges ([#2627](https://github.com/HankHuang0516/EClaw/issues/2627)) ([5b3e5cc](https://github.com/HankHuang0516/EClaw/commit/5b3e5cc542d9da69bb4e92500fd03a542ea33f00))
* **mindmap:** wrap hardcoded zh-TW UI strings with i18n t() ([#2607](https://github.com/HankHuang0516/EClaw/issues/2607)) ([166af87](https://github.com/HankHuang0516/EClaw/commit/166af8772b2121a24aaf34a83b3de970e9b3b571)), closes [#2606](https://github.com/HankHuang0516/EClaw/issues/2606)

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-13)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **notifications:** add kanban_done + kanban_done_auto toggles to Android Settings ([#2636](https://github.com/HankHuang0516/EClaw/issues/2636)) ([a710909](https://github.com/HankHuang0516/EClaw/commit/a7109095e3393b8564e7ef1b23d382a4fbb944b8))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **kanban:** comment input no longer overlaps last comment in card detail (PR [#2678](https://github.com/HankHuang0516/EClaw/issues/2678)) ([fba91fc](https://github.com/HankHuang0516/EClaw/commit/fba91fca15402b453a0db5ee857c0b16e6087055))
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **petdx:** drop dark-grey loading placeholder + preload sprite WEBP ([#2628](https://github.com/HankHuang0516/EClaw/issues/2628)) ([59cef38](https://github.com/HankHuang0516/EClaw/commit/59cef387bd69ca99d7d15c86a1364856d3849ad8)), closes [#1a1a1a](https://github.com/HankHuang0516/EClaw/issues/1a1a1a)
* **entities:** expose botSecret to owner so wallpaper service can poll companions ([#2615](https://github.com/HankHuang0516/EClaw/issues/2615)) ([04470fc](https://github.com/HankHuang0516/EClaw/commit/04470fce8f8c3fce2b1ba8b243e776606f107502))
* **rental:** expose owner_public_code in marketplace so plaza CTA can route ([#2616](https://github.com/HankHuang0516/EClaw/issues/2616)) ([4d1372f](https://github.com/HankHuang0516/EClaw/commit/4d1372f717d93cab65543e87c852e74e9fb67071)), closes [#2610](https://github.com/HankHuang0516/EClaw/issues/2610)
* **portal:** fit embedded org chart to mobile viewport ([#2674](https://github.com/HankHuang0516/EClaw/issues/2674)) ([1c4e1b4](https://github.com/HankHuang0516/EClaw/commit/1c4e1b413ea7027b4cd4b8ecda981b0d0e12e66b))
* **mention-parser:** ignore @-mentions inside markdown code spans ([#2645](https://github.com/HankHuang0516/EClaw/issues/2645)) ([8da19d4](https://github.com/HankHuang0516/EClaw/commit/8da19d4a79ceb4152bf2144ee0847c61ce3e1def)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **kanban:** lazy-load dependency chips via IntersectionObserver ([#2632](https://github.com/HankHuang0516/EClaw/issues/2632)) ([20586b4](https://github.com/HankHuang0516/EClaw/commit/20586b43357335f9eb6a190c02d58c8e36b58aba)), closes [#2631](https://github.com/HankHuang0516/EClaw/issues/2631)
* **wallpaper:** off-load spritesheet fetch to IO so per-petdx sprites actually render ([#2618](https://github.com/HankHuang0516/EClaw/issues/2618)) ([61b832c](https://github.com/HankHuang0516/EClaw/commit/61b832c9fa8a1d0caab810ccc942d85c63349267)), closes [#2615](https://github.com/HankHuang0516/EClaw/issues/2615) [#2577](https://github.com/HankHuang0516/EClaw/issues/2577)
* **i18n:** positional format specifiers for feedback_result_logs (7 locales) ([#2597](https://github.com/HankHuang0516/EClaw/issues/2597)) ([21aedc7](https://github.com/HankHuang0516/EClaw/commit/21aedc7eebc7a2839e340136f38dfdfd4dabb9dc))
* **avatar-petdx:** preserve descriptor across transient API failures (flicker) ([#2625](https://github.com/HankHuang0516/EClaw/issues/2625)) ([7b1c606](https://github.com/HankHuang0516/EClaw/commit/7b1c606514f7698d72ec95cf6c556e4043966186))
* **portal:** reduce QA-discovered request fanout ([#2656](https://github.com/HankHuang0516/EClaw/issues/2656)) ([1e46d6b](https://github.com/HankHuang0516/EClaw/commit/1e46d6bab61e58c65b452b6503d953f8dddeee75))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **chat:** render mention avatars with companion renderer ([#2633](https://github.com/HankHuang0516/EClaw/issues/2633)) ([03e205f](https://github.com/HankHuang0516/EClaw/commit/03e205f663ecd2c2f443d4009dd5af0093f0bbbb))
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* scheduled audit 2026-05-13 — 6 bugs, XSS, i18n ([#2668](https://github.com/HankHuang0516/EClaw/issues/2668)) ([21dd513](https://github.com/HankHuang0516/EClaw/commit/21dd513b4464738de29164265437435ba6cc4817)), closes [#2605](https://github.com/HankHuang0516/EClaw/issues/2605) [#2608](https://github.com/HankHuang0516/EClaw/issues/2608) [#2600](https://github.com/HankHuang0516/EClaw/issues/2600) [#2599](https://github.com/HankHuang0516/EClaw/issues/2599) [#2598](https://github.com/HankHuang0516/EClaw/issues/2598)
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **chat:** smart-chip preview falls back to inline c.comments when /comments fails (PR [#2677](https://github.com/HankHuang0516/EClaw/issues/2677)) ([7f4dffd](https://github.com/HankHuang0516/EClaw/commit/7f4dffd2c83ea86f296b8fa0610f0e67c9f1af11))
* **wallpaper:** stop Android live wallpaper flashing default lobster on companion change ([#2629](https://github.com/HankHuang0516/EClaw/issues/2629)) ([8b4f66f](https://github.com/HankHuang0516/EClaw/commit/8b4f66fcb335bf43128f924b761b6337c817095b)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **app:** WebView pages honor app-selected locale via ?lang= URL param ([#2672](https://github.com/HankHuang0516/EClaw/issues/2672)) ([8ed8757](https://github.com/HankHuang0516/EClaw/commit/8ed8757aec5bf214e837cc0d81bf2b23f1993a91)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* **community:** 1-click chat button on bot cards + utm tagging ([#2610](https://github.com/HankHuang0516/EClaw/issues/2610)) ([eee97b0](https://github.com/HankHuang0516/EClaw/commit/eee97b0e2e4e74945ec24f218a69a52800b97a66))
* **dashboard:** add Claude and Codex channel guides ([#2640](https://github.com/HankHuang0516/EClaw/issues/2640)) ([c64e4c4](https://github.com/HankHuang0516/EClaw/commit/c64e4c4afc78db58c5cd578f00486dd7b2fd3311))
* **dashboard:** add Claude Code channel guide card ([#2667](https://github.com/HankHuang0516/EClaw/issues/2667)) ([d70d75c](https://github.com/HankHuang0516/EClaw/commit/d70d75c0c8caa8a540358a9aab4556b8c1927a5c))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* **portal:** add entity selector to petdx-browser ([#2602](https://github.com/HankHuang0516/EClaw/issues/2602)) ([3fa067e](https://github.com/HankHuang0516/EClaw/commit/3fa067e00b38829b48a37cecd33ee81a9a1122d9))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **companion:** bridge crafter-station/petdex gallery (1784 pets) ([#2601](https://github.com/HankHuang0516/EClaw/issues/2601)) ([2e245be](https://github.com/HankHuang0516/EClaw/commit/2e245bea6dd47ea7361b927d389188a3c23b6bb3))
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **avatar:** petdx render on card-holder my-cards (Phase 1b) ([#2621](https://github.com/HankHuang0516/EClaw/issues/2621)) ([f78ba8b](https://github.com/HankHuang0516/EClaw/commit/f78ba8b18acc426936ab6d8a82ca7541effea00d))
* **avatar:** petdx render on dashboard entity grid / org chart / bindings (Phase 1b) ([#2622](https://github.com/HankHuang0516/EClaw/issues/2622)) ([f417749](https://github.com/HankHuang0516/EClaw/commit/f41774914451048e8cd76e9ae30416a0642e173b)), closes [#2620](https://github.com/HankHuang0516/EClaw/issues/2620) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621)
* **avatar:** petdx render on kanban auto-assign / pulse / comment avatars (Phase 1b) ([#2624](https://github.com/HankHuang0516/EClaw/issues/2624)) ([6bff5f8](https://github.com/HankHuang0516/EClaw/commit/6bff5f80440d0bd91a6b1721cde9478d685c4d46))
* **avatar:** petdx render on mission skill/rule/soul entity dialogs (Phase 1b) ([#2623](https://github.com/HankHuang0516/EClaw/issues/2623)) ([129327b](https://github.com/HankHuang0516/EClaw/commit/129327bc7b91056659f1ab7e8d5e3f5260d951fb))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **avatar:** render selected petdx companion in chat avatars ([#2620](https://github.com/HankHuang0516/EClaw/issues/2620)) ([0bdd046](https://github.com/HankHuang0516/EClaw/commit/0bdd046fe1b1c428e32edda366ff112c08927f4c))
* **home:** replace native home with WebView hosting dashboard.html ([#2634](https://github.com/HankHuang0516/EClaw/issues/2634)) ([e69ea81](https://github.com/HankHuang0516/EClaw/commit/e69ea8160c239b083a83d6dc83a4f1c3f901c863))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **share-chat:** twitter card + per-bot og:image/twitter:* in SSR ([#2609](https://github.com/HankHuang0516/EClaw/issues/2609)) ([6cdc853](https://github.com/HankHuang0516/EClaw/commit/6cdc853dc884cdb95bd47214942768981f218ae0))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))
* **settings:** wire petdx avatar into channel-account chips ([#2626](https://github.com/HankHuang0516/EClaw/issues/2626)) ([88aec77](https://github.com/HankHuang0516/EClaw/commit/88aec772628c240e97b336bb5820892ad632d1ae))
* **files:** wire petdx avatar into entity filter & per-file badges ([#2627](https://github.com/HankHuang0516/EClaw/issues/2627)) ([5b3e5cc](https://github.com/HankHuang0516/EClaw/commit/5b3e5cc542d9da69bb4e92500fd03a542ea33f00))
* **mindmap:** wrap hardcoded zh-TW UI strings with i18n t() ([#2607](https://github.com/HankHuang0516/EClaw/issues/2607)) ([166af87](https://github.com/HankHuang0516/EClaw/commit/166af8772b2121a24aaf34a83b3de970e9b3b571)), closes [#2606](https://github.com/HankHuang0516/EClaw/issues/2606)

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-13)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **notifications:** add kanban_done + kanban_done_auto toggles to Android Settings ([#2636](https://github.com/HankHuang0516/EClaw/issues/2636)) ([a710909](https://github.com/HankHuang0516/EClaw/commit/a7109095e3393b8564e7ef1b23d382a4fbb944b8))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **petdx:** drop dark-grey loading placeholder + preload sprite WEBP ([#2628](https://github.com/HankHuang0516/EClaw/issues/2628)) ([59cef38](https://github.com/HankHuang0516/EClaw/commit/59cef387bd69ca99d7d15c86a1364856d3849ad8)), closes [#1a1a1a](https://github.com/HankHuang0516/EClaw/issues/1a1a1a)
* **entities:** expose botSecret to owner so wallpaper service can poll companions ([#2615](https://github.com/HankHuang0516/EClaw/issues/2615)) ([04470fc](https://github.com/HankHuang0516/EClaw/commit/04470fce8f8c3fce2b1ba8b243e776606f107502))
* **rental:** expose owner_public_code in marketplace so plaza CTA can route ([#2616](https://github.com/HankHuang0516/EClaw/issues/2616)) ([4d1372f](https://github.com/HankHuang0516/EClaw/commit/4d1372f717d93cab65543e87c852e74e9fb67071)), closes [#2610](https://github.com/HankHuang0516/EClaw/issues/2610)
* **portal:** fit embedded org chart to mobile viewport ([#2674](https://github.com/HankHuang0516/EClaw/issues/2674)) ([1c4e1b4](https://github.com/HankHuang0516/EClaw/commit/1c4e1b413ea7027b4cd4b8ecda981b0d0e12e66b))
* **mention-parser:** ignore @-mentions inside markdown code spans ([#2645](https://github.com/HankHuang0516/EClaw/issues/2645)) ([8da19d4](https://github.com/HankHuang0516/EClaw/commit/8da19d4a79ceb4152bf2144ee0847c61ce3e1def)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **kanban:** lazy-load dependency chips via IntersectionObserver ([#2632](https://github.com/HankHuang0516/EClaw/issues/2632)) ([20586b4](https://github.com/HankHuang0516/EClaw/commit/20586b43357335f9eb6a190c02d58c8e36b58aba)), closes [#2631](https://github.com/HankHuang0516/EClaw/issues/2631)
* **wallpaper:** off-load spritesheet fetch to IO so per-petdx sprites actually render ([#2618](https://github.com/HankHuang0516/EClaw/issues/2618)) ([61b832c](https://github.com/HankHuang0516/EClaw/commit/61b832c9fa8a1d0caab810ccc942d85c63349267)), closes [#2615](https://github.com/HankHuang0516/EClaw/issues/2615) [#2577](https://github.com/HankHuang0516/EClaw/issues/2577)
* **i18n:** positional format specifiers for feedback_result_logs (7 locales) ([#2597](https://github.com/HankHuang0516/EClaw/issues/2597)) ([21aedc7](https://github.com/HankHuang0516/EClaw/commit/21aedc7eebc7a2839e340136f38dfdfd4dabb9dc))
* **avatar-petdx:** preserve descriptor across transient API failures (flicker) ([#2625](https://github.com/HankHuang0516/EClaw/issues/2625)) ([7b1c606](https://github.com/HankHuang0516/EClaw/commit/7b1c606514f7698d72ec95cf6c556e4043966186))
* **portal:** reduce QA-discovered request fanout ([#2656](https://github.com/HankHuang0516/EClaw/issues/2656)) ([1e46d6b](https://github.com/HankHuang0516/EClaw/commit/1e46d6bab61e58c65b452b6503d953f8dddeee75))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **chat:** render mention avatars with companion renderer ([#2633](https://github.com/HankHuang0516/EClaw/issues/2633)) ([03e205f](https://github.com/HankHuang0516/EClaw/commit/03e205f663ecd2c2f443d4009dd5af0093f0bbbb))
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* scheduled audit 2026-05-13 — 6 bugs, XSS, i18n ([#2668](https://github.com/HankHuang0516/EClaw/issues/2668)) ([21dd513](https://github.com/HankHuang0516/EClaw/commit/21dd513b4464738de29164265437435ba6cc4817)), closes [#2605](https://github.com/HankHuang0516/EClaw/issues/2605) [#2608](https://github.com/HankHuang0516/EClaw/issues/2608) [#2600](https://github.com/HankHuang0516/EClaw/issues/2600) [#2599](https://github.com/HankHuang0516/EClaw/issues/2599) [#2598](https://github.com/HankHuang0516/EClaw/issues/2598)
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **chat:** smart-chip preview falls back to inline c.comments when /comments fails (PR [#2677](https://github.com/HankHuang0516/EClaw/issues/2677)) ([7f4dffd](https://github.com/HankHuang0516/EClaw/commit/7f4dffd2c83ea86f296b8fa0610f0e67c9f1af11))
* **wallpaper:** stop Android live wallpaper flashing default lobster on companion change ([#2629](https://github.com/HankHuang0516/EClaw/issues/2629)) ([8b4f66f](https://github.com/HankHuang0516/EClaw/commit/8b4f66fcb335bf43128f924b761b6337c817095b)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **app:** WebView pages honor app-selected locale via ?lang= URL param ([#2672](https://github.com/HankHuang0516/EClaw/issues/2672)) ([8ed8757](https://github.com/HankHuang0516/EClaw/commit/8ed8757aec5bf214e837cc0d81bf2b23f1993a91)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* **community:** 1-click chat button on bot cards + utm tagging ([#2610](https://github.com/HankHuang0516/EClaw/issues/2610)) ([eee97b0](https://github.com/HankHuang0516/EClaw/commit/eee97b0e2e4e74945ec24f218a69a52800b97a66))
* **dashboard:** add Claude and Codex channel guides ([#2640](https://github.com/HankHuang0516/EClaw/issues/2640)) ([c64e4c4](https://github.com/HankHuang0516/EClaw/commit/c64e4c4afc78db58c5cd578f00486dd7b2fd3311))
* **dashboard:** add Claude Code channel guide card ([#2667](https://github.com/HankHuang0516/EClaw/issues/2667)) ([d70d75c](https://github.com/HankHuang0516/EClaw/commit/d70d75c0c8caa8a540358a9aab4556b8c1927a5c))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* **portal:** add entity selector to petdx-browser ([#2602](https://github.com/HankHuang0516/EClaw/issues/2602)) ([3fa067e](https://github.com/HankHuang0516/EClaw/commit/3fa067e00b38829b48a37cecd33ee81a9a1122d9))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **companion:** bridge crafter-station/petdex gallery (1784 pets) ([#2601](https://github.com/HankHuang0516/EClaw/issues/2601)) ([2e245be](https://github.com/HankHuang0516/EClaw/commit/2e245bea6dd47ea7361b927d389188a3c23b6bb3))
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **avatar:** petdx render on card-holder my-cards (Phase 1b) ([#2621](https://github.com/HankHuang0516/EClaw/issues/2621)) ([f78ba8b](https://github.com/HankHuang0516/EClaw/commit/f78ba8b18acc426936ab6d8a82ca7541effea00d))
* **avatar:** petdx render on dashboard entity grid / org chart / bindings (Phase 1b) ([#2622](https://github.com/HankHuang0516/EClaw/issues/2622)) ([f417749](https://github.com/HankHuang0516/EClaw/commit/f41774914451048e8cd76e9ae30416a0642e173b)), closes [#2620](https://github.com/HankHuang0516/EClaw/issues/2620) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621)
* **avatar:** petdx render on kanban auto-assign / pulse / comment avatars (Phase 1b) ([#2624](https://github.com/HankHuang0516/EClaw/issues/2624)) ([6bff5f8](https://github.com/HankHuang0516/EClaw/commit/6bff5f80440d0bd91a6b1721cde9478d685c4d46))
* **avatar:** petdx render on mission skill/rule/soul entity dialogs (Phase 1b) ([#2623](https://github.com/HankHuang0516/EClaw/issues/2623)) ([129327b](https://github.com/HankHuang0516/EClaw/commit/129327bc7b91056659f1ab7e8d5e3f5260d951fb))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **avatar:** render selected petdx companion in chat avatars ([#2620](https://github.com/HankHuang0516/EClaw/issues/2620)) ([0bdd046](https://github.com/HankHuang0516/EClaw/commit/0bdd046fe1b1c428e32edda366ff112c08927f4c))
* **home:** replace native home with WebView hosting dashboard.html ([#2634](https://github.com/HankHuang0516/EClaw/issues/2634)) ([e69ea81](https://github.com/HankHuang0516/EClaw/commit/e69ea8160c239b083a83d6dc83a4f1c3f901c863))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **share-chat:** twitter card + per-bot og:image/twitter:* in SSR ([#2609](https://github.com/HankHuang0516/EClaw/issues/2609)) ([6cdc853](https://github.com/HankHuang0516/EClaw/commit/6cdc853dc884cdb95bd47214942768981f218ae0))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))
* **settings:** wire petdx avatar into channel-account chips ([#2626](https://github.com/HankHuang0516/EClaw/issues/2626)) ([88aec77](https://github.com/HankHuang0516/EClaw/commit/88aec772628c240e97b336bb5820892ad632d1ae))
* **files:** wire petdx avatar into entity filter & per-file badges ([#2627](https://github.com/HankHuang0516/EClaw/issues/2627)) ([5b3e5cc](https://github.com/HankHuang0516/EClaw/commit/5b3e5cc542d9da69bb4e92500fd03a542ea33f00))
* **mindmap:** wrap hardcoded zh-TW UI strings with i18n t() ([#2607](https://github.com/HankHuang0516/EClaw/issues/2607)) ([166af87](https://github.com/HankHuang0516/EClaw/commit/166af8772b2121a24aaf34a83b3de970e9b3b571)), closes [#2606](https://github.com/HankHuang0516/EClaw/issues/2606)

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-13)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **notifications:** add kanban_done + kanban_done_auto toggles to Android Settings ([#2636](https://github.com/HankHuang0516/EClaw/issues/2636)) ([a710909](https://github.com/HankHuang0516/EClaw/commit/a7109095e3393b8564e7ef1b23d382a4fbb944b8))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **petdx:** drop dark-grey loading placeholder + preload sprite WEBP ([#2628](https://github.com/HankHuang0516/EClaw/issues/2628)) ([59cef38](https://github.com/HankHuang0516/EClaw/commit/59cef387bd69ca99d7d15c86a1364856d3849ad8)), closes [#1a1a1a](https://github.com/HankHuang0516/EClaw/issues/1a1a1a)
* **entities:** expose botSecret to owner so wallpaper service can poll companions ([#2615](https://github.com/HankHuang0516/EClaw/issues/2615)) ([04470fc](https://github.com/HankHuang0516/EClaw/commit/04470fce8f8c3fce2b1ba8b243e776606f107502))
* **rental:** expose owner_public_code in marketplace so plaza CTA can route ([#2616](https://github.com/HankHuang0516/EClaw/issues/2616)) ([4d1372f](https://github.com/HankHuang0516/EClaw/commit/4d1372f717d93cab65543e87c852e74e9fb67071)), closes [#2610](https://github.com/HankHuang0516/EClaw/issues/2610)
* **portal:** fit embedded org chart to mobile viewport ([#2674](https://github.com/HankHuang0516/EClaw/issues/2674)) ([1c4e1b4](https://github.com/HankHuang0516/EClaw/commit/1c4e1b413ea7027b4cd4b8ecda981b0d0e12e66b))
* **mention-parser:** ignore @-mentions inside markdown code spans ([#2645](https://github.com/HankHuang0516/EClaw/issues/2645)) ([8da19d4](https://github.com/HankHuang0516/EClaw/commit/8da19d4a79ceb4152bf2144ee0847c61ce3e1def)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **kanban:** lazy-load dependency chips via IntersectionObserver ([#2632](https://github.com/HankHuang0516/EClaw/issues/2632)) ([20586b4](https://github.com/HankHuang0516/EClaw/commit/20586b43357335f9eb6a190c02d58c8e36b58aba)), closes [#2631](https://github.com/HankHuang0516/EClaw/issues/2631)
* **wallpaper:** off-load spritesheet fetch to IO so per-petdx sprites actually render ([#2618](https://github.com/HankHuang0516/EClaw/issues/2618)) ([61b832c](https://github.com/HankHuang0516/EClaw/commit/61b832c9fa8a1d0caab810ccc942d85c63349267)), closes [#2615](https://github.com/HankHuang0516/EClaw/issues/2615) [#2577](https://github.com/HankHuang0516/EClaw/issues/2577)
* **i18n:** positional format specifiers for feedback_result_logs (7 locales) ([#2597](https://github.com/HankHuang0516/EClaw/issues/2597)) ([21aedc7](https://github.com/HankHuang0516/EClaw/commit/21aedc7eebc7a2839e340136f38dfdfd4dabb9dc))
* **avatar-petdx:** preserve descriptor across transient API failures (flicker) ([#2625](https://github.com/HankHuang0516/EClaw/issues/2625)) ([7b1c606](https://github.com/HankHuang0516/EClaw/commit/7b1c606514f7698d72ec95cf6c556e4043966186))
* **portal:** reduce QA-discovered request fanout ([#2656](https://github.com/HankHuang0516/EClaw/issues/2656)) ([1e46d6b](https://github.com/HankHuang0516/EClaw/commit/1e46d6bab61e58c65b452b6503d953f8dddeee75))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **chat:** render mention avatars with companion renderer ([#2633](https://github.com/HankHuang0516/EClaw/issues/2633)) ([03e205f](https://github.com/HankHuang0516/EClaw/commit/03e205f663ecd2c2f443d4009dd5af0093f0bbbb))
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* scheduled audit 2026-05-13 — 6 bugs, XSS, i18n ([#2668](https://github.com/HankHuang0516/EClaw/issues/2668)) ([21dd513](https://github.com/HankHuang0516/EClaw/commit/21dd513b4464738de29164265437435ba6cc4817)), closes [#2605](https://github.com/HankHuang0516/EClaw/issues/2605) [#2608](https://github.com/HankHuang0516/EClaw/issues/2608) [#2600](https://github.com/HankHuang0516/EClaw/issues/2600) [#2599](https://github.com/HankHuang0516/EClaw/issues/2599) [#2598](https://github.com/HankHuang0516/EClaw/issues/2598)
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **wallpaper:** stop Android live wallpaper flashing default lobster on companion change ([#2629](https://github.com/HankHuang0516/EClaw/issues/2629)) ([8b4f66f](https://github.com/HankHuang0516/EClaw/commit/8b4f66fcb335bf43128f924b761b6337c817095b)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **app:** WebView pages honor app-selected locale via ?lang= URL param ([#2672](https://github.com/HankHuang0516/EClaw/issues/2672)) ([8ed8757](https://github.com/HankHuang0516/EClaw/commit/8ed8757aec5bf214e837cc0d81bf2b23f1993a91)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* **community:** 1-click chat button on bot cards + utm tagging ([#2610](https://github.com/HankHuang0516/EClaw/issues/2610)) ([eee97b0](https://github.com/HankHuang0516/EClaw/commit/eee97b0e2e4e74945ec24f218a69a52800b97a66))
* **dashboard:** add Claude and Codex channel guides ([#2640](https://github.com/HankHuang0516/EClaw/issues/2640)) ([c64e4c4](https://github.com/HankHuang0516/EClaw/commit/c64e4c4afc78db58c5cd578f00486dd7b2fd3311))
* **dashboard:** add Claude Code channel guide card ([#2667](https://github.com/HankHuang0516/EClaw/issues/2667)) ([d70d75c](https://github.com/HankHuang0516/EClaw/commit/d70d75c0c8caa8a540358a9aab4556b8c1927a5c))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* **portal:** add entity selector to petdx-browser ([#2602](https://github.com/HankHuang0516/EClaw/issues/2602)) ([3fa067e](https://github.com/HankHuang0516/EClaw/commit/3fa067e00b38829b48a37cecd33ee81a9a1122d9))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **companion:** bridge crafter-station/petdex gallery (1784 pets) ([#2601](https://github.com/HankHuang0516/EClaw/issues/2601)) ([2e245be](https://github.com/HankHuang0516/EClaw/commit/2e245bea6dd47ea7361b927d389188a3c23b6bb3))
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **avatar:** petdx render on card-holder my-cards (Phase 1b) ([#2621](https://github.com/HankHuang0516/EClaw/issues/2621)) ([f78ba8b](https://github.com/HankHuang0516/EClaw/commit/f78ba8b18acc426936ab6d8a82ca7541effea00d))
* **avatar:** petdx render on dashboard entity grid / org chart / bindings (Phase 1b) ([#2622](https://github.com/HankHuang0516/EClaw/issues/2622)) ([f417749](https://github.com/HankHuang0516/EClaw/commit/f41774914451048e8cd76e9ae30416a0642e173b)), closes [#2620](https://github.com/HankHuang0516/EClaw/issues/2620) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621)
* **avatar:** petdx render on kanban auto-assign / pulse / comment avatars (Phase 1b) ([#2624](https://github.com/HankHuang0516/EClaw/issues/2624)) ([6bff5f8](https://github.com/HankHuang0516/EClaw/commit/6bff5f80440d0bd91a6b1721cde9478d685c4d46))
* **avatar:** petdx render on mission skill/rule/soul entity dialogs (Phase 1b) ([#2623](https://github.com/HankHuang0516/EClaw/issues/2623)) ([129327b](https://github.com/HankHuang0516/EClaw/commit/129327bc7b91056659f1ab7e8d5e3f5260d951fb))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **avatar:** render selected petdx companion in chat avatars ([#2620](https://github.com/HankHuang0516/EClaw/issues/2620)) ([0bdd046](https://github.com/HankHuang0516/EClaw/commit/0bdd046fe1b1c428e32edda366ff112c08927f4c))
* **home:** replace native home with WebView hosting dashboard.html ([#2634](https://github.com/HankHuang0516/EClaw/issues/2634)) ([e69ea81](https://github.com/HankHuang0516/EClaw/commit/e69ea8160c239b083a83d6dc83a4f1c3f901c863))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **share-chat:** twitter card + per-bot og:image/twitter:* in SSR ([#2609](https://github.com/HankHuang0516/EClaw/issues/2609)) ([6cdc853](https://github.com/HankHuang0516/EClaw/commit/6cdc853dc884cdb95bd47214942768981f218ae0))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))
* **settings:** wire petdx avatar into channel-account chips ([#2626](https://github.com/HankHuang0516/EClaw/issues/2626)) ([88aec77](https://github.com/HankHuang0516/EClaw/commit/88aec772628c240e97b336bb5820892ad632d1ae))
* **files:** wire petdx avatar into entity filter & per-file badges ([#2627](https://github.com/HankHuang0516/EClaw/issues/2627)) ([5b3e5cc](https://github.com/HankHuang0516/EClaw/commit/5b3e5cc542d9da69bb4e92500fd03a542ea33f00))
* **mindmap:** wrap hardcoded zh-TW UI strings with i18n t() ([#2607](https://github.com/HankHuang0516/EClaw/issues/2607)) ([166af87](https://github.com/HankHuang0516/EClaw/commit/166af8772b2121a24aaf34a83b3de970e9b3b571)), closes [#2606](https://github.com/HankHuang0516/EClaw/issues/2606)

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-12)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **notifications:** add kanban_done + kanban_done_auto toggles to Android Settings ([#2636](https://github.com/HankHuang0516/EClaw/issues/2636)) ([a710909](https://github.com/HankHuang0516/EClaw/commit/a7109095e3393b8564e7ef1b23d382a4fbb944b8))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **petdx:** drop dark-grey loading placeholder + preload sprite WEBP ([#2628](https://github.com/HankHuang0516/EClaw/issues/2628)) ([59cef38](https://github.com/HankHuang0516/EClaw/commit/59cef387bd69ca99d7d15c86a1364856d3849ad8)), closes [#1a1a1a](https://github.com/HankHuang0516/EClaw/issues/1a1a1a)
* **entities:** expose botSecret to owner so wallpaper service can poll companions ([#2615](https://github.com/HankHuang0516/EClaw/issues/2615)) ([04470fc](https://github.com/HankHuang0516/EClaw/commit/04470fce8f8c3fce2b1ba8b243e776606f107502))
* **rental:** expose owner_public_code in marketplace so plaza CTA can route ([#2616](https://github.com/HankHuang0516/EClaw/issues/2616)) ([4d1372f](https://github.com/HankHuang0516/EClaw/commit/4d1372f717d93cab65543e87c852e74e9fb67071)), closes [#2610](https://github.com/HankHuang0516/EClaw/issues/2610)
* **mention-parser:** ignore @-mentions inside markdown code spans ([#2645](https://github.com/HankHuang0516/EClaw/issues/2645)) ([8da19d4](https://github.com/HankHuang0516/EClaw/commit/8da19d4a79ceb4152bf2144ee0847c61ce3e1def)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **kanban:** lazy-load dependency chips via IntersectionObserver ([#2632](https://github.com/HankHuang0516/EClaw/issues/2632)) ([20586b4](https://github.com/HankHuang0516/EClaw/commit/20586b43357335f9eb6a190c02d58c8e36b58aba)), closes [#2631](https://github.com/HankHuang0516/EClaw/issues/2631)
* **wallpaper:** off-load spritesheet fetch to IO so per-petdx sprites actually render ([#2618](https://github.com/HankHuang0516/EClaw/issues/2618)) ([61b832c](https://github.com/HankHuang0516/EClaw/commit/61b832c9fa8a1d0caab810ccc942d85c63349267)), closes [#2615](https://github.com/HankHuang0516/EClaw/issues/2615) [#2577](https://github.com/HankHuang0516/EClaw/issues/2577)
* **i18n:** positional format specifiers for feedback_result_logs (7 locales) ([#2597](https://github.com/HankHuang0516/EClaw/issues/2597)) ([21aedc7](https://github.com/HankHuang0516/EClaw/commit/21aedc7eebc7a2839e340136f38dfdfd4dabb9dc))
* **avatar-petdx:** preserve descriptor across transient API failures (flicker) ([#2625](https://github.com/HankHuang0516/EClaw/issues/2625)) ([7b1c606](https://github.com/HankHuang0516/EClaw/commit/7b1c606514f7698d72ec95cf6c556e4043966186))
* **portal:** reduce QA-discovered request fanout ([#2656](https://github.com/HankHuang0516/EClaw/issues/2656)) ([1e46d6b](https://github.com/HankHuang0516/EClaw/commit/1e46d6bab61e58c65b452b6503d953f8dddeee75))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **chat:** render mention avatars with companion renderer ([#2633](https://github.com/HankHuang0516/EClaw/issues/2633)) ([03e205f](https://github.com/HankHuang0516/EClaw/commit/03e205f663ecd2c2f443d4009dd5af0093f0bbbb))
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* scheduled audit 2026-05-13 — 6 bugs, XSS, i18n ([#2668](https://github.com/HankHuang0516/EClaw/issues/2668)) ([21dd513](https://github.com/HankHuang0516/EClaw/commit/21dd513b4464738de29164265437435ba6cc4817)), closes [#2605](https://github.com/HankHuang0516/EClaw/issues/2605) [#2608](https://github.com/HankHuang0516/EClaw/issues/2608) [#2600](https://github.com/HankHuang0516/EClaw/issues/2600) [#2599](https://github.com/HankHuang0516/EClaw/issues/2599) [#2598](https://github.com/HankHuang0516/EClaw/issues/2598)
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **wallpaper:** stop Android live wallpaper flashing default lobster on companion change ([#2629](https://github.com/HankHuang0516/EClaw/issues/2629)) ([8b4f66f](https://github.com/HankHuang0516/EClaw/commit/8b4f66fcb335bf43128f924b761b6337c817095b)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **app:** WebView pages honor app-selected locale via ?lang= URL param ([#2672](https://github.com/HankHuang0516/EClaw/issues/2672)) ([8ed8757](https://github.com/HankHuang0516/EClaw/commit/8ed8757aec5bf214e837cc0d81bf2b23f1993a91)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* **community:** 1-click chat button on bot cards + utm tagging ([#2610](https://github.com/HankHuang0516/EClaw/issues/2610)) ([eee97b0](https://github.com/HankHuang0516/EClaw/commit/eee97b0e2e4e74945ec24f218a69a52800b97a66))
* **dashboard:** add Claude and Codex channel guides ([#2640](https://github.com/HankHuang0516/EClaw/issues/2640)) ([c64e4c4](https://github.com/HankHuang0516/EClaw/commit/c64e4c4afc78db58c5cd578f00486dd7b2fd3311))
* **dashboard:** add Claude Code channel guide card ([#2667](https://github.com/HankHuang0516/EClaw/issues/2667)) ([d70d75c](https://github.com/HankHuang0516/EClaw/commit/d70d75c0c8caa8a540358a9aab4556b8c1927a5c))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* **portal:** add entity selector to petdx-browser ([#2602](https://github.com/HankHuang0516/EClaw/issues/2602)) ([3fa067e](https://github.com/HankHuang0516/EClaw/commit/3fa067e00b38829b48a37cecd33ee81a9a1122d9))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **companion:** bridge crafter-station/petdex gallery (1784 pets) ([#2601](https://github.com/HankHuang0516/EClaw/issues/2601)) ([2e245be](https://github.com/HankHuang0516/EClaw/commit/2e245bea6dd47ea7361b927d389188a3c23b6bb3))
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **avatar:** petdx render on card-holder my-cards (Phase 1b) ([#2621](https://github.com/HankHuang0516/EClaw/issues/2621)) ([f78ba8b](https://github.com/HankHuang0516/EClaw/commit/f78ba8b18acc426936ab6d8a82ca7541effea00d))
* **avatar:** petdx render on dashboard entity grid / org chart / bindings (Phase 1b) ([#2622](https://github.com/HankHuang0516/EClaw/issues/2622)) ([f417749](https://github.com/HankHuang0516/EClaw/commit/f41774914451048e8cd76e9ae30416a0642e173b)), closes [#2620](https://github.com/HankHuang0516/EClaw/issues/2620) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621)
* **avatar:** petdx render on kanban auto-assign / pulse / comment avatars (Phase 1b) ([#2624](https://github.com/HankHuang0516/EClaw/issues/2624)) ([6bff5f8](https://github.com/HankHuang0516/EClaw/commit/6bff5f80440d0bd91a6b1721cde9478d685c4d46))
* **avatar:** petdx render on mission skill/rule/soul entity dialogs (Phase 1b) ([#2623](https://github.com/HankHuang0516/EClaw/issues/2623)) ([129327b](https://github.com/HankHuang0516/EClaw/commit/129327bc7b91056659f1ab7e8d5e3f5260d951fb))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **avatar:** render selected petdx companion in chat avatars ([#2620](https://github.com/HankHuang0516/EClaw/issues/2620)) ([0bdd046](https://github.com/HankHuang0516/EClaw/commit/0bdd046fe1b1c428e32edda366ff112c08927f4c))
* **home:** replace native home with WebView hosting dashboard.html ([#2634](https://github.com/HankHuang0516/EClaw/issues/2634)) ([e69ea81](https://github.com/HankHuang0516/EClaw/commit/e69ea8160c239b083a83d6dc83a4f1c3f901c863))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **share-chat:** twitter card + per-bot og:image/twitter:* in SSR ([#2609](https://github.com/HankHuang0516/EClaw/issues/2609)) ([6cdc853](https://github.com/HankHuang0516/EClaw/commit/6cdc853dc884cdb95bd47214942768981f218ae0))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))
* **settings:** wire petdx avatar into channel-account chips ([#2626](https://github.com/HankHuang0516/EClaw/issues/2626)) ([88aec77](https://github.com/HankHuang0516/EClaw/commit/88aec772628c240e97b336bb5820892ad632d1ae))
* **files:** wire petdx avatar into entity filter & per-file badges ([#2627](https://github.com/HankHuang0516/EClaw/issues/2627)) ([5b3e5cc](https://github.com/HankHuang0516/EClaw/commit/5b3e5cc542d9da69bb4e92500fd03a542ea33f00))
* **mindmap:** wrap hardcoded zh-TW UI strings with i18n t() ([#2607](https://github.com/HankHuang0516/EClaw/issues/2607)) ([166af87](https://github.com/HankHuang0516/EClaw/commit/166af8772b2121a24aaf34a83b3de970e9b3b571)), closes [#2606](https://github.com/HankHuang0516/EClaw/issues/2606)

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-12)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **notifications:** add kanban_done + kanban_done_auto toggles to Android Settings ([#2636](https://github.com/HankHuang0516/EClaw/issues/2636)) ([a710909](https://github.com/HankHuang0516/EClaw/commit/a7109095e3393b8564e7ef1b23d382a4fbb944b8))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **petdx:** drop dark-grey loading placeholder + preload sprite WEBP ([#2628](https://github.com/HankHuang0516/EClaw/issues/2628)) ([59cef38](https://github.com/HankHuang0516/EClaw/commit/59cef387bd69ca99d7d15c86a1364856d3849ad8)), closes [#1a1a1a](https://github.com/HankHuang0516/EClaw/issues/1a1a1a)
* **entities:** expose botSecret to owner so wallpaper service can poll companions ([#2615](https://github.com/HankHuang0516/EClaw/issues/2615)) ([04470fc](https://github.com/HankHuang0516/EClaw/commit/04470fce8f8c3fce2b1ba8b243e776606f107502))
* **rental:** expose owner_public_code in marketplace so plaza CTA can route ([#2616](https://github.com/HankHuang0516/EClaw/issues/2616)) ([4d1372f](https://github.com/HankHuang0516/EClaw/commit/4d1372f717d93cab65543e87c852e74e9fb67071)), closes [#2610](https://github.com/HankHuang0516/EClaw/issues/2610)
* **mention-parser:** ignore @-mentions inside markdown code spans ([#2645](https://github.com/HankHuang0516/EClaw/issues/2645)) ([8da19d4](https://github.com/HankHuang0516/EClaw/commit/8da19d4a79ceb4152bf2144ee0847c61ce3e1def)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **kanban:** lazy-load dependency chips via IntersectionObserver ([#2632](https://github.com/HankHuang0516/EClaw/issues/2632)) ([20586b4](https://github.com/HankHuang0516/EClaw/commit/20586b43357335f9eb6a190c02d58c8e36b58aba)), closes [#2631](https://github.com/HankHuang0516/EClaw/issues/2631)
* **wallpaper:** off-load spritesheet fetch to IO so per-petdx sprites actually render ([#2618](https://github.com/HankHuang0516/EClaw/issues/2618)) ([61b832c](https://github.com/HankHuang0516/EClaw/commit/61b832c9fa8a1d0caab810ccc942d85c63349267)), closes [#2615](https://github.com/HankHuang0516/EClaw/issues/2615) [#2577](https://github.com/HankHuang0516/EClaw/issues/2577)
* **i18n:** positional format specifiers for feedback_result_logs (7 locales) ([#2597](https://github.com/HankHuang0516/EClaw/issues/2597)) ([21aedc7](https://github.com/HankHuang0516/EClaw/commit/21aedc7eebc7a2839e340136f38dfdfd4dabb9dc))
* **avatar-petdx:** preserve descriptor across transient API failures (flicker) ([#2625](https://github.com/HankHuang0516/EClaw/issues/2625)) ([7b1c606](https://github.com/HankHuang0516/EClaw/commit/7b1c606514f7698d72ec95cf6c556e4043966186))
* **portal:** reduce QA-discovered request fanout ([#2656](https://github.com/HankHuang0516/EClaw/issues/2656)) ([1e46d6b](https://github.com/HankHuang0516/EClaw/commit/1e46d6bab61e58c65b452b6503d953f8dddeee75))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **chat:** render mention avatars with companion renderer ([#2633](https://github.com/HankHuang0516/EClaw/issues/2633)) ([03e205f](https://github.com/HankHuang0516/EClaw/commit/03e205f663ecd2c2f443d4009dd5af0093f0bbbb))
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* scheduled audit 2026-05-13 — 6 bugs, XSS, i18n ([#2668](https://github.com/HankHuang0516/EClaw/issues/2668)) ([21dd513](https://github.com/HankHuang0516/EClaw/commit/21dd513b4464738de29164265437435ba6cc4817)), closes [#2605](https://github.com/HankHuang0516/EClaw/issues/2605) [#2608](https://github.com/HankHuang0516/EClaw/issues/2608) [#2600](https://github.com/HankHuang0516/EClaw/issues/2600) [#2599](https://github.com/HankHuang0516/EClaw/issues/2599) [#2598](https://github.com/HankHuang0516/EClaw/issues/2598)
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **wallpaper:** stop Android live wallpaper flashing default lobster on companion change ([#2629](https://github.com/HankHuang0516/EClaw/issues/2629)) ([8b4f66f](https://github.com/HankHuang0516/EClaw/commit/8b4f66fcb335bf43128f924b761b6337c817095b)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* **community:** 1-click chat button on bot cards + utm tagging ([#2610](https://github.com/HankHuang0516/EClaw/issues/2610)) ([eee97b0](https://github.com/HankHuang0516/EClaw/commit/eee97b0e2e4e74945ec24f218a69a52800b97a66))
* **dashboard:** add Claude and Codex channel guides ([#2640](https://github.com/HankHuang0516/EClaw/issues/2640)) ([c64e4c4](https://github.com/HankHuang0516/EClaw/commit/c64e4c4afc78db58c5cd578f00486dd7b2fd3311))
* **dashboard:** add Claude Code channel guide card ([#2667](https://github.com/HankHuang0516/EClaw/issues/2667)) ([d70d75c](https://github.com/HankHuang0516/EClaw/commit/d70d75c0c8caa8a540358a9aab4556b8c1927a5c))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* **portal:** add entity selector to petdx-browser ([#2602](https://github.com/HankHuang0516/EClaw/issues/2602)) ([3fa067e](https://github.com/HankHuang0516/EClaw/commit/3fa067e00b38829b48a37cecd33ee81a9a1122d9))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **companion:** bridge crafter-station/petdex gallery (1784 pets) ([#2601](https://github.com/HankHuang0516/EClaw/issues/2601)) ([2e245be](https://github.com/HankHuang0516/EClaw/commit/2e245bea6dd47ea7361b927d389188a3c23b6bb3))
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **avatar:** petdx render on card-holder my-cards (Phase 1b) ([#2621](https://github.com/HankHuang0516/EClaw/issues/2621)) ([f78ba8b](https://github.com/HankHuang0516/EClaw/commit/f78ba8b18acc426936ab6d8a82ca7541effea00d))
* **avatar:** petdx render on dashboard entity grid / org chart / bindings (Phase 1b) ([#2622](https://github.com/HankHuang0516/EClaw/issues/2622)) ([f417749](https://github.com/HankHuang0516/EClaw/commit/f41774914451048e8cd76e9ae30416a0642e173b)), closes [#2620](https://github.com/HankHuang0516/EClaw/issues/2620) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621)
* **avatar:** petdx render on kanban auto-assign / pulse / comment avatars (Phase 1b) ([#2624](https://github.com/HankHuang0516/EClaw/issues/2624)) ([6bff5f8](https://github.com/HankHuang0516/EClaw/commit/6bff5f80440d0bd91a6b1721cde9478d685c4d46))
* **avatar:** petdx render on mission skill/rule/soul entity dialogs (Phase 1b) ([#2623](https://github.com/HankHuang0516/EClaw/issues/2623)) ([129327b](https://github.com/HankHuang0516/EClaw/commit/129327bc7b91056659f1ab7e8d5e3f5260d951fb))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **avatar:** render selected petdx companion in chat avatars ([#2620](https://github.com/HankHuang0516/EClaw/issues/2620)) ([0bdd046](https://github.com/HankHuang0516/EClaw/commit/0bdd046fe1b1c428e32edda366ff112c08927f4c))
* **home:** replace native home with WebView hosting dashboard.html ([#2634](https://github.com/HankHuang0516/EClaw/issues/2634)) ([e69ea81](https://github.com/HankHuang0516/EClaw/commit/e69ea8160c239b083a83d6dc83a4f1c3f901c863))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **share-chat:** twitter card + per-bot og:image/twitter:* in SSR ([#2609](https://github.com/HankHuang0516/EClaw/issues/2609)) ([6cdc853](https://github.com/HankHuang0516/EClaw/commit/6cdc853dc884cdb95bd47214942768981f218ae0))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))
* **settings:** wire petdx avatar into channel-account chips ([#2626](https://github.com/HankHuang0516/EClaw/issues/2626)) ([88aec77](https://github.com/HankHuang0516/EClaw/commit/88aec772628c240e97b336bb5820892ad632d1ae))
* **files:** wire petdx avatar into entity filter & per-file badges ([#2627](https://github.com/HankHuang0516/EClaw/issues/2627)) ([5b3e5cc](https://github.com/HankHuang0516/EClaw/commit/5b3e5cc542d9da69bb4e92500fd03a542ea33f00))
* **mindmap:** wrap hardcoded zh-TW UI strings with i18n t() ([#2607](https://github.com/HankHuang0516/EClaw/issues/2607)) ([166af87](https://github.com/HankHuang0516/EClaw/commit/166af8772b2121a24aaf34a83b3de970e9b3b571)), closes [#2606](https://github.com/HankHuang0516/EClaw/issues/2606)

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-12)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **notifications:** add kanban_done + kanban_done_auto toggles to Android Settings ([#2636](https://github.com/HankHuang0516/EClaw/issues/2636)) ([a710909](https://github.com/HankHuang0516/EClaw/commit/a7109095e3393b8564e7ef1b23d382a4fbb944b8))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **petdx:** drop dark-grey loading placeholder + preload sprite WEBP ([#2628](https://github.com/HankHuang0516/EClaw/issues/2628)) ([59cef38](https://github.com/HankHuang0516/EClaw/commit/59cef387bd69ca99d7d15c86a1364856d3849ad8)), closes [#1a1a1a](https://github.com/HankHuang0516/EClaw/issues/1a1a1a)
* **entities:** expose botSecret to owner so wallpaper service can poll companions ([#2615](https://github.com/HankHuang0516/EClaw/issues/2615)) ([04470fc](https://github.com/HankHuang0516/EClaw/commit/04470fce8f8c3fce2b1ba8b243e776606f107502))
* **rental:** expose owner_public_code in marketplace so plaza CTA can route ([#2616](https://github.com/HankHuang0516/EClaw/issues/2616)) ([4d1372f](https://github.com/HankHuang0516/EClaw/commit/4d1372f717d93cab65543e87c852e74e9fb67071)), closes [#2610](https://github.com/HankHuang0516/EClaw/issues/2610)
* **mention-parser:** ignore @-mentions inside markdown code spans ([#2645](https://github.com/HankHuang0516/EClaw/issues/2645)) ([8da19d4](https://github.com/HankHuang0516/EClaw/commit/8da19d4a79ceb4152bf2144ee0847c61ce3e1def)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **kanban:** lazy-load dependency chips via IntersectionObserver ([#2632](https://github.com/HankHuang0516/EClaw/issues/2632)) ([20586b4](https://github.com/HankHuang0516/EClaw/commit/20586b43357335f9eb6a190c02d58c8e36b58aba)), closes [#2631](https://github.com/HankHuang0516/EClaw/issues/2631)
* **wallpaper:** off-load spritesheet fetch to IO so per-petdx sprites actually render ([#2618](https://github.com/HankHuang0516/EClaw/issues/2618)) ([61b832c](https://github.com/HankHuang0516/EClaw/commit/61b832c9fa8a1d0caab810ccc942d85c63349267)), closes [#2615](https://github.com/HankHuang0516/EClaw/issues/2615) [#2577](https://github.com/HankHuang0516/EClaw/issues/2577)
* **i18n:** positional format specifiers for feedback_result_logs (7 locales) ([#2597](https://github.com/HankHuang0516/EClaw/issues/2597)) ([21aedc7](https://github.com/HankHuang0516/EClaw/commit/21aedc7eebc7a2839e340136f38dfdfd4dabb9dc))
* **avatar-petdx:** preserve descriptor across transient API failures (flicker) ([#2625](https://github.com/HankHuang0516/EClaw/issues/2625)) ([7b1c606](https://github.com/HankHuang0516/EClaw/commit/7b1c606514f7698d72ec95cf6c556e4043966186))
* **portal:** reduce QA-discovered request fanout ([#2656](https://github.com/HankHuang0516/EClaw/issues/2656)) ([1e46d6b](https://github.com/HankHuang0516/EClaw/commit/1e46d6bab61e58c65b452b6503d953f8dddeee75))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **chat:** render mention avatars with companion renderer ([#2633](https://github.com/HankHuang0516/EClaw/issues/2633)) ([03e205f](https://github.com/HankHuang0516/EClaw/commit/03e205f663ecd2c2f443d4009dd5af0093f0bbbb))
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* scheduled audit 2026-05-13 — 6 bugs, XSS, i18n ([#2668](https://github.com/HankHuang0516/EClaw/issues/2668)) ([21dd513](https://github.com/HankHuang0516/EClaw/commit/21dd513b4464738de29164265437435ba6cc4817)), closes [#2605](https://github.com/HankHuang0516/EClaw/issues/2605) [#2608](https://github.com/HankHuang0516/EClaw/issues/2608) [#2600](https://github.com/HankHuang0516/EClaw/issues/2600) [#2599](https://github.com/HankHuang0516/EClaw/issues/2599) [#2598](https://github.com/HankHuang0516/EClaw/issues/2598)
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **wallpaper:** stop Android live wallpaper flashing default lobster on companion change ([#2629](https://github.com/HankHuang0516/EClaw/issues/2629)) ([8b4f66f](https://github.com/HankHuang0516/EClaw/commit/8b4f66fcb335bf43128f924b761b6337c817095b)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* **community:** 1-click chat button on bot cards + utm tagging ([#2610](https://github.com/HankHuang0516/EClaw/issues/2610)) ([eee97b0](https://github.com/HankHuang0516/EClaw/commit/eee97b0e2e4e74945ec24f218a69a52800b97a66))
* **dashboard:** add Claude and Codex channel guides ([#2640](https://github.com/HankHuang0516/EClaw/issues/2640)) ([c64e4c4](https://github.com/HankHuang0516/EClaw/commit/c64e4c4afc78db58c5cd578f00486dd7b2fd3311))
* **dashboard:** add Claude Code channel guide card ([#2667](https://github.com/HankHuang0516/EClaw/issues/2667)) ([d70d75c](https://github.com/HankHuang0516/EClaw/commit/d70d75c0c8caa8a540358a9aab4556b8c1927a5c))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* **portal:** add entity selector to petdx-browser ([#2602](https://github.com/HankHuang0516/EClaw/issues/2602)) ([3fa067e](https://github.com/HankHuang0516/EClaw/commit/3fa067e00b38829b48a37cecd33ee81a9a1122d9))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **companion:** bridge crafter-station/petdex gallery (1784 pets) ([#2601](https://github.com/HankHuang0516/EClaw/issues/2601)) ([2e245be](https://github.com/HankHuang0516/EClaw/commit/2e245bea6dd47ea7361b927d389188a3c23b6bb3))
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **avatar:** petdx render on card-holder my-cards (Phase 1b) ([#2621](https://github.com/HankHuang0516/EClaw/issues/2621)) ([f78ba8b](https://github.com/HankHuang0516/EClaw/commit/f78ba8b18acc426936ab6d8a82ca7541effea00d))
* **avatar:** petdx render on dashboard entity grid / org chart / bindings (Phase 1b) ([#2622](https://github.com/HankHuang0516/EClaw/issues/2622)) ([f417749](https://github.com/HankHuang0516/EClaw/commit/f41774914451048e8cd76e9ae30416a0642e173b)), closes [#2620](https://github.com/HankHuang0516/EClaw/issues/2620) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621)
* **avatar:** petdx render on kanban auto-assign / pulse / comment avatars (Phase 1b) ([#2624](https://github.com/HankHuang0516/EClaw/issues/2624)) ([6bff5f8](https://github.com/HankHuang0516/EClaw/commit/6bff5f80440d0bd91a6b1721cde9478d685c4d46))
* **avatar:** petdx render on mission skill/rule/soul entity dialogs (Phase 1b) ([#2623](https://github.com/HankHuang0516/EClaw/issues/2623)) ([129327b](https://github.com/HankHuang0516/EClaw/commit/129327bc7b91056659f1ab7e8d5e3f5260d951fb))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **avatar:** render selected petdx companion in chat avatars ([#2620](https://github.com/HankHuang0516/EClaw/issues/2620)) ([0bdd046](https://github.com/HankHuang0516/EClaw/commit/0bdd046fe1b1c428e32edda366ff112c08927f4c))
* **home:** replace native home with WebView hosting dashboard.html ([#2634](https://github.com/HankHuang0516/EClaw/issues/2634)) ([e69ea81](https://github.com/HankHuang0516/EClaw/commit/e69ea8160c239b083a83d6dc83a4f1c3f901c863))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **share-chat:** twitter card + per-bot og:image/twitter:* in SSR ([#2609](https://github.com/HankHuang0516/EClaw/issues/2609)) ([6cdc853](https://github.com/HankHuang0516/EClaw/commit/6cdc853dc884cdb95bd47214942768981f218ae0))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))
* **settings:** wire petdx avatar into channel-account chips ([#2626](https://github.com/HankHuang0516/EClaw/issues/2626)) ([88aec77](https://github.com/HankHuang0516/EClaw/commit/88aec772628c240e97b336bb5820892ad632d1ae))
* **files:** wire petdx avatar into entity filter & per-file badges ([#2627](https://github.com/HankHuang0516/EClaw/issues/2627)) ([5b3e5cc](https://github.com/HankHuang0516/EClaw/commit/5b3e5cc542d9da69bb4e92500fd03a542ea33f00))
* **mindmap:** wrap hardcoded zh-TW UI strings with i18n t() ([#2607](https://github.com/HankHuang0516/EClaw/issues/2607)) ([166af87](https://github.com/HankHuang0516/EClaw/commit/166af8772b2121a24aaf34a83b3de970e9b3b571)), closes [#2606](https://github.com/HankHuang0516/EClaw/issues/2606)

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-12)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **notifications:** add kanban_done + kanban_done_auto toggles to Android Settings ([#2636](https://github.com/HankHuang0516/EClaw/issues/2636)) ([a710909](https://github.com/HankHuang0516/EClaw/commit/a7109095e3393b8564e7ef1b23d382a4fbb944b8))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **petdx:** drop dark-grey loading placeholder + preload sprite WEBP ([#2628](https://github.com/HankHuang0516/EClaw/issues/2628)) ([59cef38](https://github.com/HankHuang0516/EClaw/commit/59cef387bd69ca99d7d15c86a1364856d3849ad8)), closes [#1a1a1a](https://github.com/HankHuang0516/EClaw/issues/1a1a1a)
* **entities:** expose botSecret to owner so wallpaper service can poll companions ([#2615](https://github.com/HankHuang0516/EClaw/issues/2615)) ([04470fc](https://github.com/HankHuang0516/EClaw/commit/04470fce8f8c3fce2b1ba8b243e776606f107502))
* **rental:** expose owner_public_code in marketplace so plaza CTA can route ([#2616](https://github.com/HankHuang0516/EClaw/issues/2616)) ([4d1372f](https://github.com/HankHuang0516/EClaw/commit/4d1372f717d93cab65543e87c852e74e9fb67071)), closes [#2610](https://github.com/HankHuang0516/EClaw/issues/2610)
* **mention-parser:** ignore @-mentions inside markdown code spans ([#2645](https://github.com/HankHuang0516/EClaw/issues/2645)) ([8da19d4](https://github.com/HankHuang0516/EClaw/commit/8da19d4a79ceb4152bf2144ee0847c61ce3e1def)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **kanban:** lazy-load dependency chips via IntersectionObserver ([#2632](https://github.com/HankHuang0516/EClaw/issues/2632)) ([20586b4](https://github.com/HankHuang0516/EClaw/commit/20586b43357335f9eb6a190c02d58c8e36b58aba)), closes [#2631](https://github.com/HankHuang0516/EClaw/issues/2631)
* **wallpaper:** off-load spritesheet fetch to IO so per-petdx sprites actually render ([#2618](https://github.com/HankHuang0516/EClaw/issues/2618)) ([61b832c](https://github.com/HankHuang0516/EClaw/commit/61b832c9fa8a1d0caab810ccc942d85c63349267)), closes [#2615](https://github.com/HankHuang0516/EClaw/issues/2615) [#2577](https://github.com/HankHuang0516/EClaw/issues/2577)
* **i18n:** positional format specifiers for feedback_result_logs (7 locales) ([#2597](https://github.com/HankHuang0516/EClaw/issues/2597)) ([21aedc7](https://github.com/HankHuang0516/EClaw/commit/21aedc7eebc7a2839e340136f38dfdfd4dabb9dc))
* **avatar-petdx:** preserve descriptor across transient API failures (flicker) ([#2625](https://github.com/HankHuang0516/EClaw/issues/2625)) ([7b1c606](https://github.com/HankHuang0516/EClaw/commit/7b1c606514f7698d72ec95cf6c556e4043966186))
* **portal:** reduce QA-discovered request fanout ([#2656](https://github.com/HankHuang0516/EClaw/issues/2656)) ([1e46d6b](https://github.com/HankHuang0516/EClaw/commit/1e46d6bab61e58c65b452b6503d953f8dddeee75))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **chat:** render mention avatars with companion renderer ([#2633](https://github.com/HankHuang0516/EClaw/issues/2633)) ([03e205f](https://github.com/HankHuang0516/EClaw/commit/03e205f663ecd2c2f443d4009dd5af0093f0bbbb))
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* scheduled audit 2026-05-13 — 6 bugs, XSS, i18n ([#2668](https://github.com/HankHuang0516/EClaw/issues/2668)) ([21dd513](https://github.com/HankHuang0516/EClaw/commit/21dd513b4464738de29164265437435ba6cc4817)), closes [#2605](https://github.com/HankHuang0516/EClaw/issues/2605) [#2608](https://github.com/HankHuang0516/EClaw/issues/2608) [#2600](https://github.com/HankHuang0516/EClaw/issues/2600) [#2599](https://github.com/HankHuang0516/EClaw/issues/2599) [#2598](https://github.com/HankHuang0516/EClaw/issues/2598)
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **wallpaper:** stop Android live wallpaper flashing default lobster on companion change ([#2629](https://github.com/HankHuang0516/EClaw/issues/2629)) ([8b4f66f](https://github.com/HankHuang0516/EClaw/commit/8b4f66fcb335bf43128f924b761b6337c817095b)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* **community:** 1-click chat button on bot cards + utm tagging ([#2610](https://github.com/HankHuang0516/EClaw/issues/2610)) ([eee97b0](https://github.com/HankHuang0516/EClaw/commit/eee97b0e2e4e74945ec24f218a69a52800b97a66))
* **dashboard:** add Claude and Codex channel guides ([#2640](https://github.com/HankHuang0516/EClaw/issues/2640)) ([c64e4c4](https://github.com/HankHuang0516/EClaw/commit/c64e4c4afc78db58c5cd578f00486dd7b2fd3311))
* **dashboard:** add Claude Code channel guide card ([#2667](https://github.com/HankHuang0516/EClaw/issues/2667)) ([d70d75c](https://github.com/HankHuang0516/EClaw/commit/d70d75c0c8caa8a540358a9aab4556b8c1927a5c))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* **portal:** add entity selector to petdx-browser ([#2602](https://github.com/HankHuang0516/EClaw/issues/2602)) ([3fa067e](https://github.com/HankHuang0516/EClaw/commit/3fa067e00b38829b48a37cecd33ee81a9a1122d9))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **companion:** bridge crafter-station/petdex gallery (1784 pets) ([#2601](https://github.com/HankHuang0516/EClaw/issues/2601)) ([2e245be](https://github.com/HankHuang0516/EClaw/commit/2e245bea6dd47ea7361b927d389188a3c23b6bb3))
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **avatar:** petdx render on card-holder my-cards (Phase 1b) ([#2621](https://github.com/HankHuang0516/EClaw/issues/2621)) ([f78ba8b](https://github.com/HankHuang0516/EClaw/commit/f78ba8b18acc426936ab6d8a82ca7541effea00d))
* **avatar:** petdx render on dashboard entity grid / org chart / bindings (Phase 1b) ([#2622](https://github.com/HankHuang0516/EClaw/issues/2622)) ([f417749](https://github.com/HankHuang0516/EClaw/commit/f41774914451048e8cd76e9ae30416a0642e173b)), closes [#2620](https://github.com/HankHuang0516/EClaw/issues/2620) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621)
* **avatar:** petdx render on kanban auto-assign / pulse / comment avatars (Phase 1b) ([#2624](https://github.com/HankHuang0516/EClaw/issues/2624)) ([6bff5f8](https://github.com/HankHuang0516/EClaw/commit/6bff5f80440d0bd91a6b1721cde9478d685c4d46))
* **avatar:** petdx render on mission skill/rule/soul entity dialogs (Phase 1b) ([#2623](https://github.com/HankHuang0516/EClaw/issues/2623)) ([129327b](https://github.com/HankHuang0516/EClaw/commit/129327bc7b91056659f1ab7e8d5e3f5260d951fb))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **avatar:** render selected petdx companion in chat avatars ([#2620](https://github.com/HankHuang0516/EClaw/issues/2620)) ([0bdd046](https://github.com/HankHuang0516/EClaw/commit/0bdd046fe1b1c428e32edda366ff112c08927f4c))
* **home:** replace native home with WebView hosting dashboard.html ([#2634](https://github.com/HankHuang0516/EClaw/issues/2634)) ([e69ea81](https://github.com/HankHuang0516/EClaw/commit/e69ea8160c239b083a83d6dc83a4f1c3f901c863))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **share-chat:** twitter card + per-bot og:image/twitter:* in SSR ([#2609](https://github.com/HankHuang0516/EClaw/issues/2609)) ([6cdc853](https://github.com/HankHuang0516/EClaw/commit/6cdc853dc884cdb95bd47214942768981f218ae0))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))
* **settings:** wire petdx avatar into channel-account chips ([#2626](https://github.com/HankHuang0516/EClaw/issues/2626)) ([88aec77](https://github.com/HankHuang0516/EClaw/commit/88aec772628c240e97b336bb5820892ad632d1ae))
* **files:** wire petdx avatar into entity filter & per-file badges ([#2627](https://github.com/HankHuang0516/EClaw/issues/2627)) ([5b3e5cc](https://github.com/HankHuang0516/EClaw/commit/5b3e5cc542d9da69bb4e92500fd03a542ea33f00))
* **mindmap:** wrap hardcoded zh-TW UI strings with i18n t() ([#2607](https://github.com/HankHuang0516/EClaw/issues/2607)) ([166af87](https://github.com/HankHuang0516/EClaw/commit/166af8772b2121a24aaf34a83b3de970e9b3b571)), closes [#2606](https://github.com/HankHuang0516/EClaw/issues/2606)

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-12)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **notifications:** add kanban_done + kanban_done_auto toggles to Android Settings ([#2636](https://github.com/HankHuang0516/EClaw/issues/2636)) ([a710909](https://github.com/HankHuang0516/EClaw/commit/a7109095e3393b8564e7ef1b23d382a4fbb944b8))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **petdx:** drop dark-grey loading placeholder + preload sprite WEBP ([#2628](https://github.com/HankHuang0516/EClaw/issues/2628)) ([59cef38](https://github.com/HankHuang0516/EClaw/commit/59cef387bd69ca99d7d15c86a1364856d3849ad8)), closes [#1a1a1a](https://github.com/HankHuang0516/EClaw/issues/1a1a1a)
* **entities:** expose botSecret to owner so wallpaper service can poll companions ([#2615](https://github.com/HankHuang0516/EClaw/issues/2615)) ([04470fc](https://github.com/HankHuang0516/EClaw/commit/04470fce8f8c3fce2b1ba8b243e776606f107502))
* **rental:** expose owner_public_code in marketplace so plaza CTA can route ([#2616](https://github.com/HankHuang0516/EClaw/issues/2616)) ([4d1372f](https://github.com/HankHuang0516/EClaw/commit/4d1372f717d93cab65543e87c852e74e9fb67071)), closes [#2610](https://github.com/HankHuang0516/EClaw/issues/2610)
* **mention-parser:** ignore @-mentions inside markdown code spans ([#2645](https://github.com/HankHuang0516/EClaw/issues/2645)) ([8da19d4](https://github.com/HankHuang0516/EClaw/commit/8da19d4a79ceb4152bf2144ee0847c61ce3e1def)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **kanban:** lazy-load dependency chips via IntersectionObserver ([#2632](https://github.com/HankHuang0516/EClaw/issues/2632)) ([20586b4](https://github.com/HankHuang0516/EClaw/commit/20586b43357335f9eb6a190c02d58c8e36b58aba)), closes [#2631](https://github.com/HankHuang0516/EClaw/issues/2631)
* **wallpaper:** off-load spritesheet fetch to IO so per-petdx sprites actually render ([#2618](https://github.com/HankHuang0516/EClaw/issues/2618)) ([61b832c](https://github.com/HankHuang0516/EClaw/commit/61b832c9fa8a1d0caab810ccc942d85c63349267)), closes [#2615](https://github.com/HankHuang0516/EClaw/issues/2615) [#2577](https://github.com/HankHuang0516/EClaw/issues/2577)
* **i18n:** positional format specifiers for feedback_result_logs (7 locales) ([#2597](https://github.com/HankHuang0516/EClaw/issues/2597)) ([21aedc7](https://github.com/HankHuang0516/EClaw/commit/21aedc7eebc7a2839e340136f38dfdfd4dabb9dc))
* **avatar-petdx:** preserve descriptor across transient API failures (flicker) ([#2625](https://github.com/HankHuang0516/EClaw/issues/2625)) ([7b1c606](https://github.com/HankHuang0516/EClaw/commit/7b1c606514f7698d72ec95cf6c556e4043966186))
* **portal:** reduce QA-discovered request fanout ([#2656](https://github.com/HankHuang0516/EClaw/issues/2656)) ([1e46d6b](https://github.com/HankHuang0516/EClaw/commit/1e46d6bab61e58c65b452b6503d953f8dddeee75))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **chat:** render mention avatars with companion renderer ([#2633](https://github.com/HankHuang0516/EClaw/issues/2633)) ([03e205f](https://github.com/HankHuang0516/EClaw/commit/03e205f663ecd2c2f443d4009dd5af0093f0bbbb))
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* scheduled audit 2026-05-13 — 6 bugs, XSS, i18n ([#2668](https://github.com/HankHuang0516/EClaw/issues/2668)) ([21dd513](https://github.com/HankHuang0516/EClaw/commit/21dd513b4464738de29164265437435ba6cc4817)), closes [#2605](https://github.com/HankHuang0516/EClaw/issues/2605) [#2608](https://github.com/HankHuang0516/EClaw/issues/2608) [#2600](https://github.com/HankHuang0516/EClaw/issues/2600) [#2599](https://github.com/HankHuang0516/EClaw/issues/2599) [#2598](https://github.com/HankHuang0516/EClaw/issues/2598)
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **wallpaper:** stop Android live wallpaper flashing default lobster on companion change ([#2629](https://github.com/HankHuang0516/EClaw/issues/2629)) ([8b4f66f](https://github.com/HankHuang0516/EClaw/commit/8b4f66fcb335bf43128f924b761b6337c817095b)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* **community:** 1-click chat button on bot cards + utm tagging ([#2610](https://github.com/HankHuang0516/EClaw/issues/2610)) ([eee97b0](https://github.com/HankHuang0516/EClaw/commit/eee97b0e2e4e74945ec24f218a69a52800b97a66))
* **dashboard:** add Claude and Codex channel guides ([#2640](https://github.com/HankHuang0516/EClaw/issues/2640)) ([c64e4c4](https://github.com/HankHuang0516/EClaw/commit/c64e4c4afc78db58c5cd578f00486dd7b2fd3311))
* **dashboard:** add Claude Code channel guide card ([#2667](https://github.com/HankHuang0516/EClaw/issues/2667)) ([d70d75c](https://github.com/HankHuang0516/EClaw/commit/d70d75c0c8caa8a540358a9aab4556b8c1927a5c))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* **portal:** add entity selector to petdx-browser ([#2602](https://github.com/HankHuang0516/EClaw/issues/2602)) ([3fa067e](https://github.com/HankHuang0516/EClaw/commit/3fa067e00b38829b48a37cecd33ee81a9a1122d9))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **companion:** bridge crafter-station/petdex gallery (1784 pets) ([#2601](https://github.com/HankHuang0516/EClaw/issues/2601)) ([2e245be](https://github.com/HankHuang0516/EClaw/commit/2e245bea6dd47ea7361b927d389188a3c23b6bb3))
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **avatar:** petdx render on card-holder my-cards (Phase 1b) ([#2621](https://github.com/HankHuang0516/EClaw/issues/2621)) ([f78ba8b](https://github.com/HankHuang0516/EClaw/commit/f78ba8b18acc426936ab6d8a82ca7541effea00d))
* **avatar:** petdx render on dashboard entity grid / org chart / bindings (Phase 1b) ([#2622](https://github.com/HankHuang0516/EClaw/issues/2622)) ([f417749](https://github.com/HankHuang0516/EClaw/commit/f41774914451048e8cd76e9ae30416a0642e173b)), closes [#2620](https://github.com/HankHuang0516/EClaw/issues/2620) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621)
* **avatar:** petdx render on kanban auto-assign / pulse / comment avatars (Phase 1b) ([#2624](https://github.com/HankHuang0516/EClaw/issues/2624)) ([6bff5f8](https://github.com/HankHuang0516/EClaw/commit/6bff5f80440d0bd91a6b1721cde9478d685c4d46))
* **avatar:** petdx render on mission skill/rule/soul entity dialogs (Phase 1b) ([#2623](https://github.com/HankHuang0516/EClaw/issues/2623)) ([129327b](https://github.com/HankHuang0516/EClaw/commit/129327bc7b91056659f1ab7e8d5e3f5260d951fb))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **avatar:** render selected petdx companion in chat avatars ([#2620](https://github.com/HankHuang0516/EClaw/issues/2620)) ([0bdd046](https://github.com/HankHuang0516/EClaw/commit/0bdd046fe1b1c428e32edda366ff112c08927f4c))
* **home:** replace native home with WebView hosting dashboard.html ([#2634](https://github.com/HankHuang0516/EClaw/issues/2634)) ([e69ea81](https://github.com/HankHuang0516/EClaw/commit/e69ea8160c239b083a83d6dc83a4f1c3f901c863))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **share-chat:** twitter card + per-bot og:image/twitter:* in SSR ([#2609](https://github.com/HankHuang0516/EClaw/issues/2609)) ([6cdc853](https://github.com/HankHuang0516/EClaw/commit/6cdc853dc884cdb95bd47214942768981f218ae0))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))
* **settings:** wire petdx avatar into channel-account chips ([#2626](https://github.com/HankHuang0516/EClaw/issues/2626)) ([88aec77](https://github.com/HankHuang0516/EClaw/commit/88aec772628c240e97b336bb5820892ad632d1ae))
* **files:** wire petdx avatar into entity filter & per-file badges ([#2627](https://github.com/HankHuang0516/EClaw/issues/2627)) ([5b3e5cc](https://github.com/HankHuang0516/EClaw/commit/5b3e5cc542d9da69bb4e92500fd03a542ea33f00))
* **mindmap:** wrap hardcoded zh-TW UI strings with i18n t() ([#2607](https://github.com/HankHuang0516/EClaw/issues/2607)) ([166af87](https://github.com/HankHuang0516/EClaw/commit/166af8772b2121a24aaf34a83b3de970e9b3b571)), closes [#2606](https://github.com/HankHuang0516/EClaw/issues/2606)

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-12)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **notifications:** add kanban_done + kanban_done_auto toggles to Android Settings ([#2636](https://github.com/HankHuang0516/EClaw/issues/2636)) ([a710909](https://github.com/HankHuang0516/EClaw/commit/a7109095e3393b8564e7ef1b23d382a4fbb944b8))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **petdx:** drop dark-grey loading placeholder + preload sprite WEBP ([#2628](https://github.com/HankHuang0516/EClaw/issues/2628)) ([59cef38](https://github.com/HankHuang0516/EClaw/commit/59cef387bd69ca99d7d15c86a1364856d3849ad8)), closes [#1a1a1a](https://github.com/HankHuang0516/EClaw/issues/1a1a1a)
* **entities:** expose botSecret to owner so wallpaper service can poll companions ([#2615](https://github.com/HankHuang0516/EClaw/issues/2615)) ([04470fc](https://github.com/HankHuang0516/EClaw/commit/04470fce8f8c3fce2b1ba8b243e776606f107502))
* **rental:** expose owner_public_code in marketplace so plaza CTA can route ([#2616](https://github.com/HankHuang0516/EClaw/issues/2616)) ([4d1372f](https://github.com/HankHuang0516/EClaw/commit/4d1372f717d93cab65543e87c852e74e9fb67071)), closes [#2610](https://github.com/HankHuang0516/EClaw/issues/2610)
* **mention-parser:** ignore @-mentions inside markdown code spans ([#2645](https://github.com/HankHuang0516/EClaw/issues/2645)) ([8da19d4](https://github.com/HankHuang0516/EClaw/commit/8da19d4a79ceb4152bf2144ee0847c61ce3e1def)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **kanban:** lazy-load dependency chips via IntersectionObserver ([#2632](https://github.com/HankHuang0516/EClaw/issues/2632)) ([20586b4](https://github.com/HankHuang0516/EClaw/commit/20586b43357335f9eb6a190c02d58c8e36b58aba)), closes [#2631](https://github.com/HankHuang0516/EClaw/issues/2631)
* **wallpaper:** off-load spritesheet fetch to IO so per-petdx sprites actually render ([#2618](https://github.com/HankHuang0516/EClaw/issues/2618)) ([61b832c](https://github.com/HankHuang0516/EClaw/commit/61b832c9fa8a1d0caab810ccc942d85c63349267)), closes [#2615](https://github.com/HankHuang0516/EClaw/issues/2615) [#2577](https://github.com/HankHuang0516/EClaw/issues/2577)
* **i18n:** positional format specifiers for feedback_result_logs (7 locales) ([#2597](https://github.com/HankHuang0516/EClaw/issues/2597)) ([21aedc7](https://github.com/HankHuang0516/EClaw/commit/21aedc7eebc7a2839e340136f38dfdfd4dabb9dc))
* **avatar-petdx:** preserve descriptor across transient API failures (flicker) ([#2625](https://github.com/HankHuang0516/EClaw/issues/2625)) ([7b1c606](https://github.com/HankHuang0516/EClaw/commit/7b1c606514f7698d72ec95cf6c556e4043966186))
* **portal:** reduce QA-discovered request fanout ([#2656](https://github.com/HankHuang0516/EClaw/issues/2656)) ([1e46d6b](https://github.com/HankHuang0516/EClaw/commit/1e46d6bab61e58c65b452b6503d953f8dddeee75))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **chat:** render mention avatars with companion renderer ([#2633](https://github.com/HankHuang0516/EClaw/issues/2633)) ([03e205f](https://github.com/HankHuang0516/EClaw/commit/03e205f663ecd2c2f443d4009dd5af0093f0bbbb))
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* scheduled audit 2026-05-13 — 6 bugs, XSS, i18n ([#2668](https://github.com/HankHuang0516/EClaw/issues/2668)) ([21dd513](https://github.com/HankHuang0516/EClaw/commit/21dd513b4464738de29164265437435ba6cc4817)), closes [#2605](https://github.com/HankHuang0516/EClaw/issues/2605) [#2608](https://github.com/HankHuang0516/EClaw/issues/2608) [#2600](https://github.com/HankHuang0516/EClaw/issues/2600) [#2599](https://github.com/HankHuang0516/EClaw/issues/2599) [#2598](https://github.com/HankHuang0516/EClaw/issues/2598)
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **wallpaper:** stop Android live wallpaper flashing default lobster on companion change ([#2629](https://github.com/HankHuang0516/EClaw/issues/2629)) ([8b4f66f](https://github.com/HankHuang0516/EClaw/commit/8b4f66fcb335bf43128f924b761b6337c817095b)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* **community:** 1-click chat button on bot cards + utm tagging ([#2610](https://github.com/HankHuang0516/EClaw/issues/2610)) ([eee97b0](https://github.com/HankHuang0516/EClaw/commit/eee97b0e2e4e74945ec24f218a69a52800b97a66))
* **dashboard:** add Claude and Codex channel guides ([#2640](https://github.com/HankHuang0516/EClaw/issues/2640)) ([c64e4c4](https://github.com/HankHuang0516/EClaw/commit/c64e4c4afc78db58c5cd578f00486dd7b2fd3311))
* **dashboard:** add Claude Code channel guide card ([#2667](https://github.com/HankHuang0516/EClaw/issues/2667)) ([d70d75c](https://github.com/HankHuang0516/EClaw/commit/d70d75c0c8caa8a540358a9aab4556b8c1927a5c))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* **portal:** add entity selector to petdx-browser ([#2602](https://github.com/HankHuang0516/EClaw/issues/2602)) ([3fa067e](https://github.com/HankHuang0516/EClaw/commit/3fa067e00b38829b48a37cecd33ee81a9a1122d9))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **companion:** bridge crafter-station/petdex gallery (1784 pets) ([#2601](https://github.com/HankHuang0516/EClaw/issues/2601)) ([2e245be](https://github.com/HankHuang0516/EClaw/commit/2e245bea6dd47ea7361b927d389188a3c23b6bb3))
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **avatar:** petdx render on card-holder my-cards (Phase 1b) ([#2621](https://github.com/HankHuang0516/EClaw/issues/2621)) ([f78ba8b](https://github.com/HankHuang0516/EClaw/commit/f78ba8b18acc426936ab6d8a82ca7541effea00d))
* **avatar:** petdx render on dashboard entity grid / org chart / bindings (Phase 1b) ([#2622](https://github.com/HankHuang0516/EClaw/issues/2622)) ([f417749](https://github.com/HankHuang0516/EClaw/commit/f41774914451048e8cd76e9ae30416a0642e173b)), closes [#2620](https://github.com/HankHuang0516/EClaw/issues/2620) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621)
* **avatar:** petdx render on kanban auto-assign / pulse / comment avatars (Phase 1b) ([#2624](https://github.com/HankHuang0516/EClaw/issues/2624)) ([6bff5f8](https://github.com/HankHuang0516/EClaw/commit/6bff5f80440d0bd91a6b1721cde9478d685c4d46))
* **avatar:** petdx render on mission skill/rule/soul entity dialogs (Phase 1b) ([#2623](https://github.com/HankHuang0516/EClaw/issues/2623)) ([129327b](https://github.com/HankHuang0516/EClaw/commit/129327bc7b91056659f1ab7e8d5e3f5260d951fb))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **avatar:** render selected petdx companion in chat avatars ([#2620](https://github.com/HankHuang0516/EClaw/issues/2620)) ([0bdd046](https://github.com/HankHuang0516/EClaw/commit/0bdd046fe1b1c428e32edda366ff112c08927f4c))
* **home:** replace native home with WebView hosting dashboard.html ([#2634](https://github.com/HankHuang0516/EClaw/issues/2634)) ([e69ea81](https://github.com/HankHuang0516/EClaw/commit/e69ea8160c239b083a83d6dc83a4f1c3f901c863))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **share-chat:** twitter card + per-bot og:image/twitter:* in SSR ([#2609](https://github.com/HankHuang0516/EClaw/issues/2609)) ([6cdc853](https://github.com/HankHuang0516/EClaw/commit/6cdc853dc884cdb95bd47214942768981f218ae0))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))
* **settings:** wire petdx avatar into channel-account chips ([#2626](https://github.com/HankHuang0516/EClaw/issues/2626)) ([88aec77](https://github.com/HankHuang0516/EClaw/commit/88aec772628c240e97b336bb5820892ad632d1ae))
* **files:** wire petdx avatar into entity filter & per-file badges ([#2627](https://github.com/HankHuang0516/EClaw/issues/2627)) ([5b3e5cc](https://github.com/HankHuang0516/EClaw/commit/5b3e5cc542d9da69bb4e92500fd03a542ea33f00))
* **mindmap:** wrap hardcoded zh-TW UI strings with i18n t() ([#2607](https://github.com/HankHuang0516/EClaw/issues/2607)) ([166af87](https://github.com/HankHuang0516/EClaw/commit/166af8772b2121a24aaf34a83b3de970e9b3b571)), closes [#2606](https://github.com/HankHuang0516/EClaw/issues/2606)

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-12)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **notifications:** add kanban_done + kanban_done_auto toggles to Android Settings ([#2636](https://github.com/HankHuang0516/EClaw/issues/2636)) ([a710909](https://github.com/HankHuang0516/EClaw/commit/a7109095e3393b8564e7ef1b23d382a4fbb944b8))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **petdx:** drop dark-grey loading placeholder + preload sprite WEBP ([#2628](https://github.com/HankHuang0516/EClaw/issues/2628)) ([59cef38](https://github.com/HankHuang0516/EClaw/commit/59cef387bd69ca99d7d15c86a1364856d3849ad8)), closes [#1a1a1a](https://github.com/HankHuang0516/EClaw/issues/1a1a1a)
* **entities:** expose botSecret to owner so wallpaper service can poll companions ([#2615](https://github.com/HankHuang0516/EClaw/issues/2615)) ([04470fc](https://github.com/HankHuang0516/EClaw/commit/04470fce8f8c3fce2b1ba8b243e776606f107502))
* **rental:** expose owner_public_code in marketplace so plaza CTA can route ([#2616](https://github.com/HankHuang0516/EClaw/issues/2616)) ([4d1372f](https://github.com/HankHuang0516/EClaw/commit/4d1372f717d93cab65543e87c852e74e9fb67071)), closes [#2610](https://github.com/HankHuang0516/EClaw/issues/2610)
* **mention-parser:** ignore @-mentions inside markdown code spans ([#2645](https://github.com/HankHuang0516/EClaw/issues/2645)) ([8da19d4](https://github.com/HankHuang0516/EClaw/commit/8da19d4a79ceb4152bf2144ee0847c61ce3e1def)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **kanban:** lazy-load dependency chips via IntersectionObserver ([#2632](https://github.com/HankHuang0516/EClaw/issues/2632)) ([20586b4](https://github.com/HankHuang0516/EClaw/commit/20586b43357335f9eb6a190c02d58c8e36b58aba)), closes [#2631](https://github.com/HankHuang0516/EClaw/issues/2631)
* **wallpaper:** off-load spritesheet fetch to IO so per-petdx sprites actually render ([#2618](https://github.com/HankHuang0516/EClaw/issues/2618)) ([61b832c](https://github.com/HankHuang0516/EClaw/commit/61b832c9fa8a1d0caab810ccc942d85c63349267)), closes [#2615](https://github.com/HankHuang0516/EClaw/issues/2615) [#2577](https://github.com/HankHuang0516/EClaw/issues/2577)
* **i18n:** positional format specifiers for feedback_result_logs (7 locales) ([#2597](https://github.com/HankHuang0516/EClaw/issues/2597)) ([21aedc7](https://github.com/HankHuang0516/EClaw/commit/21aedc7eebc7a2839e340136f38dfdfd4dabb9dc))
* **avatar-petdx:** preserve descriptor across transient API failures (flicker) ([#2625](https://github.com/HankHuang0516/EClaw/issues/2625)) ([7b1c606](https://github.com/HankHuang0516/EClaw/commit/7b1c606514f7698d72ec95cf6c556e4043966186))
* **portal:** reduce QA-discovered request fanout ([#2656](https://github.com/HankHuang0516/EClaw/issues/2656)) ([1e46d6b](https://github.com/HankHuang0516/EClaw/commit/1e46d6bab61e58c65b452b6503d953f8dddeee75))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **chat:** render mention avatars with companion renderer ([#2633](https://github.com/HankHuang0516/EClaw/issues/2633)) ([03e205f](https://github.com/HankHuang0516/EClaw/commit/03e205f663ecd2c2f443d4009dd5af0093f0bbbb))
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **wallpaper:** stop Android live wallpaper flashing default lobster on companion change ([#2629](https://github.com/HankHuang0516/EClaw/issues/2629)) ([8b4f66f](https://github.com/HankHuang0516/EClaw/commit/8b4f66fcb335bf43128f924b761b6337c817095b)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* **community:** 1-click chat button on bot cards + utm tagging ([#2610](https://github.com/HankHuang0516/EClaw/issues/2610)) ([eee97b0](https://github.com/HankHuang0516/EClaw/commit/eee97b0e2e4e74945ec24f218a69a52800b97a66))
* **dashboard:** add Claude and Codex channel guides ([#2640](https://github.com/HankHuang0516/EClaw/issues/2640)) ([c64e4c4](https://github.com/HankHuang0516/EClaw/commit/c64e4c4afc78db58c5cd578f00486dd7b2fd3311))
* **dashboard:** add Claude Code channel guide card ([#2667](https://github.com/HankHuang0516/EClaw/issues/2667)) ([d70d75c](https://github.com/HankHuang0516/EClaw/commit/d70d75c0c8caa8a540358a9aab4556b8c1927a5c))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* **portal:** add entity selector to petdx-browser ([#2602](https://github.com/HankHuang0516/EClaw/issues/2602)) ([3fa067e](https://github.com/HankHuang0516/EClaw/commit/3fa067e00b38829b48a37cecd33ee81a9a1122d9))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **companion:** bridge crafter-station/petdex gallery (1784 pets) ([#2601](https://github.com/HankHuang0516/EClaw/issues/2601)) ([2e245be](https://github.com/HankHuang0516/EClaw/commit/2e245bea6dd47ea7361b927d389188a3c23b6bb3))
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **avatar:** petdx render on card-holder my-cards (Phase 1b) ([#2621](https://github.com/HankHuang0516/EClaw/issues/2621)) ([f78ba8b](https://github.com/HankHuang0516/EClaw/commit/f78ba8b18acc426936ab6d8a82ca7541effea00d))
* **avatar:** petdx render on dashboard entity grid / org chart / bindings (Phase 1b) ([#2622](https://github.com/HankHuang0516/EClaw/issues/2622)) ([f417749](https://github.com/HankHuang0516/EClaw/commit/f41774914451048e8cd76e9ae30416a0642e173b)), closes [#2620](https://github.com/HankHuang0516/EClaw/issues/2620) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621)
* **avatar:** petdx render on kanban auto-assign / pulse / comment avatars (Phase 1b) ([#2624](https://github.com/HankHuang0516/EClaw/issues/2624)) ([6bff5f8](https://github.com/HankHuang0516/EClaw/commit/6bff5f80440d0bd91a6b1721cde9478d685c4d46))
* **avatar:** petdx render on mission skill/rule/soul entity dialogs (Phase 1b) ([#2623](https://github.com/HankHuang0516/EClaw/issues/2623)) ([129327b](https://github.com/HankHuang0516/EClaw/commit/129327bc7b91056659f1ab7e8d5e3f5260d951fb))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **avatar:** render selected petdx companion in chat avatars ([#2620](https://github.com/HankHuang0516/EClaw/issues/2620)) ([0bdd046](https://github.com/HankHuang0516/EClaw/commit/0bdd046fe1b1c428e32edda366ff112c08927f4c))
* **home:** replace native home with WebView hosting dashboard.html ([#2634](https://github.com/HankHuang0516/EClaw/issues/2634)) ([e69ea81](https://github.com/HankHuang0516/EClaw/commit/e69ea8160c239b083a83d6dc83a4f1c3f901c863))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **share-chat:** twitter card + per-bot og:image/twitter:* in SSR ([#2609](https://github.com/HankHuang0516/EClaw/issues/2609)) ([6cdc853](https://github.com/HankHuang0516/EClaw/commit/6cdc853dc884cdb95bd47214942768981f218ae0))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))
* **settings:** wire petdx avatar into channel-account chips ([#2626](https://github.com/HankHuang0516/EClaw/issues/2626)) ([88aec77](https://github.com/HankHuang0516/EClaw/commit/88aec772628c240e97b336bb5820892ad632d1ae))
* **files:** wire petdx avatar into entity filter & per-file badges ([#2627](https://github.com/HankHuang0516/EClaw/issues/2627)) ([5b3e5cc](https://github.com/HankHuang0516/EClaw/commit/5b3e5cc542d9da69bb4e92500fd03a542ea33f00))
* **mindmap:** wrap hardcoded zh-TW UI strings with i18n t() ([#2607](https://github.com/HankHuang0516/EClaw/issues/2607)) ([166af87](https://github.com/HankHuang0516/EClaw/commit/166af8772b2121a24aaf34a83b3de970e9b3b571)), closes [#2606](https://github.com/HankHuang0516/EClaw/issues/2606)

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-12)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **notifications:** add kanban_done + kanban_done_auto toggles to Android Settings ([#2636](https://github.com/HankHuang0516/EClaw/issues/2636)) ([a710909](https://github.com/HankHuang0516/EClaw/commit/a7109095e3393b8564e7ef1b23d382a4fbb944b8))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **petdx:** drop dark-grey loading placeholder + preload sprite WEBP ([#2628](https://github.com/HankHuang0516/EClaw/issues/2628)) ([59cef38](https://github.com/HankHuang0516/EClaw/commit/59cef387bd69ca99d7d15c86a1364856d3849ad8)), closes [#1a1a1a](https://github.com/HankHuang0516/EClaw/issues/1a1a1a)
* **entities:** expose botSecret to owner so wallpaper service can poll companions ([#2615](https://github.com/HankHuang0516/EClaw/issues/2615)) ([04470fc](https://github.com/HankHuang0516/EClaw/commit/04470fce8f8c3fce2b1ba8b243e776606f107502))
* **rental:** expose owner_public_code in marketplace so plaza CTA can route ([#2616](https://github.com/HankHuang0516/EClaw/issues/2616)) ([4d1372f](https://github.com/HankHuang0516/EClaw/commit/4d1372f717d93cab65543e87c852e74e9fb67071)), closes [#2610](https://github.com/HankHuang0516/EClaw/issues/2610)
* **mention-parser:** ignore @-mentions inside markdown code spans ([#2645](https://github.com/HankHuang0516/EClaw/issues/2645)) ([8da19d4](https://github.com/HankHuang0516/EClaw/commit/8da19d4a79ceb4152bf2144ee0847c61ce3e1def)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **kanban:** lazy-load dependency chips via IntersectionObserver ([#2632](https://github.com/HankHuang0516/EClaw/issues/2632)) ([20586b4](https://github.com/HankHuang0516/EClaw/commit/20586b43357335f9eb6a190c02d58c8e36b58aba)), closes [#2631](https://github.com/HankHuang0516/EClaw/issues/2631)
* **wallpaper:** off-load spritesheet fetch to IO so per-petdx sprites actually render ([#2618](https://github.com/HankHuang0516/EClaw/issues/2618)) ([61b832c](https://github.com/HankHuang0516/EClaw/commit/61b832c9fa8a1d0caab810ccc942d85c63349267)), closes [#2615](https://github.com/HankHuang0516/EClaw/issues/2615) [#2577](https://github.com/HankHuang0516/EClaw/issues/2577)
* **i18n:** positional format specifiers for feedback_result_logs (7 locales) ([#2597](https://github.com/HankHuang0516/EClaw/issues/2597)) ([21aedc7](https://github.com/HankHuang0516/EClaw/commit/21aedc7eebc7a2839e340136f38dfdfd4dabb9dc))
* **avatar-petdx:** preserve descriptor across transient API failures (flicker) ([#2625](https://github.com/HankHuang0516/EClaw/issues/2625)) ([7b1c606](https://github.com/HankHuang0516/EClaw/commit/7b1c606514f7698d72ec95cf6c556e4043966186))
* **portal:** reduce QA-discovered request fanout ([#2656](https://github.com/HankHuang0516/EClaw/issues/2656)) ([1e46d6b](https://github.com/HankHuang0516/EClaw/commit/1e46d6bab61e58c65b452b6503d953f8dddeee75))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **chat:** render mention avatars with companion renderer ([#2633](https://github.com/HankHuang0516/EClaw/issues/2633)) ([03e205f](https://github.com/HankHuang0516/EClaw/commit/03e205f663ecd2c2f443d4009dd5af0093f0bbbb))
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **wallpaper:** stop Android live wallpaper flashing default lobster on companion change ([#2629](https://github.com/HankHuang0516/EClaw/issues/2629)) ([8b4f66f](https://github.com/HankHuang0516/EClaw/commit/8b4f66fcb335bf43128f924b761b6337c817095b)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* **community:** 1-click chat button on bot cards + utm tagging ([#2610](https://github.com/HankHuang0516/EClaw/issues/2610)) ([eee97b0](https://github.com/HankHuang0516/EClaw/commit/eee97b0e2e4e74945ec24f218a69a52800b97a66))
* **dashboard:** add Claude and Codex channel guides ([#2640](https://github.com/HankHuang0516/EClaw/issues/2640)) ([c64e4c4](https://github.com/HankHuang0516/EClaw/commit/c64e4c4afc78db58c5cd578f00486dd7b2fd3311))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* **portal:** add entity selector to petdx-browser ([#2602](https://github.com/HankHuang0516/EClaw/issues/2602)) ([3fa067e](https://github.com/HankHuang0516/EClaw/commit/3fa067e00b38829b48a37cecd33ee81a9a1122d9))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **companion:** bridge crafter-station/petdex gallery (1784 pets) ([#2601](https://github.com/HankHuang0516/EClaw/issues/2601)) ([2e245be](https://github.com/HankHuang0516/EClaw/commit/2e245bea6dd47ea7361b927d389188a3c23b6bb3))
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **avatar:** petdx render on card-holder my-cards (Phase 1b) ([#2621](https://github.com/HankHuang0516/EClaw/issues/2621)) ([f78ba8b](https://github.com/HankHuang0516/EClaw/commit/f78ba8b18acc426936ab6d8a82ca7541effea00d))
* **avatar:** petdx render on dashboard entity grid / org chart / bindings (Phase 1b) ([#2622](https://github.com/HankHuang0516/EClaw/issues/2622)) ([f417749](https://github.com/HankHuang0516/EClaw/commit/f41774914451048e8cd76e9ae30416a0642e173b)), closes [#2620](https://github.com/HankHuang0516/EClaw/issues/2620) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621)
* **avatar:** petdx render on kanban auto-assign / pulse / comment avatars (Phase 1b) ([#2624](https://github.com/HankHuang0516/EClaw/issues/2624)) ([6bff5f8](https://github.com/HankHuang0516/EClaw/commit/6bff5f80440d0bd91a6b1721cde9478d685c4d46))
* **avatar:** petdx render on mission skill/rule/soul entity dialogs (Phase 1b) ([#2623](https://github.com/HankHuang0516/EClaw/issues/2623)) ([129327b](https://github.com/HankHuang0516/EClaw/commit/129327bc7b91056659f1ab7e8d5e3f5260d951fb))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **avatar:** render selected petdx companion in chat avatars ([#2620](https://github.com/HankHuang0516/EClaw/issues/2620)) ([0bdd046](https://github.com/HankHuang0516/EClaw/commit/0bdd046fe1b1c428e32edda366ff112c08927f4c))
* **home:** replace native home with WebView hosting dashboard.html ([#2634](https://github.com/HankHuang0516/EClaw/issues/2634)) ([e69ea81](https://github.com/HankHuang0516/EClaw/commit/e69ea8160c239b083a83d6dc83a4f1c3f901c863))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **share-chat:** twitter card + per-bot og:image/twitter:* in SSR ([#2609](https://github.com/HankHuang0516/EClaw/issues/2609)) ([6cdc853](https://github.com/HankHuang0516/EClaw/commit/6cdc853dc884cdb95bd47214942768981f218ae0))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))
* **settings:** wire petdx avatar into channel-account chips ([#2626](https://github.com/HankHuang0516/EClaw/issues/2626)) ([88aec77](https://github.com/HankHuang0516/EClaw/commit/88aec772628c240e97b336bb5820892ad632d1ae))
* **files:** wire petdx avatar into entity filter & per-file badges ([#2627](https://github.com/HankHuang0516/EClaw/issues/2627)) ([5b3e5cc](https://github.com/HankHuang0516/EClaw/commit/5b3e5cc542d9da69bb4e92500fd03a542ea33f00))
* **mindmap:** wrap hardcoded zh-TW UI strings with i18n t() ([#2607](https://github.com/HankHuang0516/EClaw/issues/2607)) ([166af87](https://github.com/HankHuang0516/EClaw/commit/166af8772b2121a24aaf34a83b3de970e9b3b571)), closes [#2606](https://github.com/HankHuang0516/EClaw/issues/2606)

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-12)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **notifications:** add kanban_done + kanban_done_auto toggles to Android Settings ([#2636](https://github.com/HankHuang0516/EClaw/issues/2636)) ([a710909](https://github.com/HankHuang0516/EClaw/commit/a7109095e3393b8564e7ef1b23d382a4fbb944b8))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **petdx:** drop dark-grey loading placeholder + preload sprite WEBP ([#2628](https://github.com/HankHuang0516/EClaw/issues/2628)) ([59cef38](https://github.com/HankHuang0516/EClaw/commit/59cef387bd69ca99d7d15c86a1364856d3849ad8)), closes [#1a1a1a](https://github.com/HankHuang0516/EClaw/issues/1a1a1a)
* **entities:** expose botSecret to owner so wallpaper service can poll companions ([#2615](https://github.com/HankHuang0516/EClaw/issues/2615)) ([04470fc](https://github.com/HankHuang0516/EClaw/commit/04470fce8f8c3fce2b1ba8b243e776606f107502))
* **rental:** expose owner_public_code in marketplace so plaza CTA can route ([#2616](https://github.com/HankHuang0516/EClaw/issues/2616)) ([4d1372f](https://github.com/HankHuang0516/EClaw/commit/4d1372f717d93cab65543e87c852e74e9fb67071)), closes [#2610](https://github.com/HankHuang0516/EClaw/issues/2610)
* **mention-parser:** ignore @-mentions inside markdown code spans ([#2645](https://github.com/HankHuang0516/EClaw/issues/2645)) ([8da19d4](https://github.com/HankHuang0516/EClaw/commit/8da19d4a79ceb4152bf2144ee0847c61ce3e1def)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **kanban:** lazy-load dependency chips via IntersectionObserver ([#2632](https://github.com/HankHuang0516/EClaw/issues/2632)) ([20586b4](https://github.com/HankHuang0516/EClaw/commit/20586b43357335f9eb6a190c02d58c8e36b58aba)), closes [#2631](https://github.com/HankHuang0516/EClaw/issues/2631)
* **wallpaper:** off-load spritesheet fetch to IO so per-petdx sprites actually render ([#2618](https://github.com/HankHuang0516/EClaw/issues/2618)) ([61b832c](https://github.com/HankHuang0516/EClaw/commit/61b832c9fa8a1d0caab810ccc942d85c63349267)), closes [#2615](https://github.com/HankHuang0516/EClaw/issues/2615) [#2577](https://github.com/HankHuang0516/EClaw/issues/2577)
* **i18n:** positional format specifiers for feedback_result_logs (7 locales) ([#2597](https://github.com/HankHuang0516/EClaw/issues/2597)) ([21aedc7](https://github.com/HankHuang0516/EClaw/commit/21aedc7eebc7a2839e340136f38dfdfd4dabb9dc))
* **avatar-petdx:** preserve descriptor across transient API failures (flicker) ([#2625](https://github.com/HankHuang0516/EClaw/issues/2625)) ([7b1c606](https://github.com/HankHuang0516/EClaw/commit/7b1c606514f7698d72ec95cf6c556e4043966186))
* **portal:** reduce QA-discovered request fanout ([#2656](https://github.com/HankHuang0516/EClaw/issues/2656)) ([1e46d6b](https://github.com/HankHuang0516/EClaw/commit/1e46d6bab61e58c65b452b6503d953f8dddeee75))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **chat:** render mention avatars with companion renderer ([#2633](https://github.com/HankHuang0516/EClaw/issues/2633)) ([03e205f](https://github.com/HankHuang0516/EClaw/commit/03e205f663ecd2c2f443d4009dd5af0093f0bbbb))
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **wallpaper:** stop Android live wallpaper flashing default lobster on companion change ([#2629](https://github.com/HankHuang0516/EClaw/issues/2629)) ([8b4f66f](https://github.com/HankHuang0516/EClaw/commit/8b4f66fcb335bf43128f924b761b6337c817095b)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* **community:** 1-click chat button on bot cards + utm tagging ([#2610](https://github.com/HankHuang0516/EClaw/issues/2610)) ([eee97b0](https://github.com/HankHuang0516/EClaw/commit/eee97b0e2e4e74945ec24f218a69a52800b97a66))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* **portal:** add entity selector to petdx-browser ([#2602](https://github.com/HankHuang0516/EClaw/issues/2602)) ([3fa067e](https://github.com/HankHuang0516/EClaw/commit/3fa067e00b38829b48a37cecd33ee81a9a1122d9))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **companion:** bridge crafter-station/petdex gallery (1784 pets) ([#2601](https://github.com/HankHuang0516/EClaw/issues/2601)) ([2e245be](https://github.com/HankHuang0516/EClaw/commit/2e245bea6dd47ea7361b927d389188a3c23b6bb3))
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **avatar:** petdx render on card-holder my-cards (Phase 1b) ([#2621](https://github.com/HankHuang0516/EClaw/issues/2621)) ([f78ba8b](https://github.com/HankHuang0516/EClaw/commit/f78ba8b18acc426936ab6d8a82ca7541effea00d))
* **avatar:** petdx render on dashboard entity grid / org chart / bindings (Phase 1b) ([#2622](https://github.com/HankHuang0516/EClaw/issues/2622)) ([f417749](https://github.com/HankHuang0516/EClaw/commit/f41774914451048e8cd76e9ae30416a0642e173b)), closes [#2620](https://github.com/HankHuang0516/EClaw/issues/2620) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621)
* **avatar:** petdx render on kanban auto-assign / pulse / comment avatars (Phase 1b) ([#2624](https://github.com/HankHuang0516/EClaw/issues/2624)) ([6bff5f8](https://github.com/HankHuang0516/EClaw/commit/6bff5f80440d0bd91a6b1721cde9478d685c4d46))
* **avatar:** petdx render on mission skill/rule/soul entity dialogs (Phase 1b) ([#2623](https://github.com/HankHuang0516/EClaw/issues/2623)) ([129327b](https://github.com/HankHuang0516/EClaw/commit/129327bc7b91056659f1ab7e8d5e3f5260d951fb))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **avatar:** render selected petdx companion in chat avatars ([#2620](https://github.com/HankHuang0516/EClaw/issues/2620)) ([0bdd046](https://github.com/HankHuang0516/EClaw/commit/0bdd046fe1b1c428e32edda366ff112c08927f4c))
* **home:** replace native home with WebView hosting dashboard.html ([#2634](https://github.com/HankHuang0516/EClaw/issues/2634)) ([e69ea81](https://github.com/HankHuang0516/EClaw/commit/e69ea8160c239b083a83d6dc83a4f1c3f901c863))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **share-chat:** twitter card + per-bot og:image/twitter:* in SSR ([#2609](https://github.com/HankHuang0516/EClaw/issues/2609)) ([6cdc853](https://github.com/HankHuang0516/EClaw/commit/6cdc853dc884cdb95bd47214942768981f218ae0))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))
* **settings:** wire petdx avatar into channel-account chips ([#2626](https://github.com/HankHuang0516/EClaw/issues/2626)) ([88aec77](https://github.com/HankHuang0516/EClaw/commit/88aec772628c240e97b336bb5820892ad632d1ae))
* **files:** wire petdx avatar into entity filter & per-file badges ([#2627](https://github.com/HankHuang0516/EClaw/issues/2627)) ([5b3e5cc](https://github.com/HankHuang0516/EClaw/commit/5b3e5cc542d9da69bb4e92500fd03a542ea33f00))
* **mindmap:** wrap hardcoded zh-TW UI strings with i18n t() ([#2607](https://github.com/HankHuang0516/EClaw/issues/2607)) ([166af87](https://github.com/HankHuang0516/EClaw/commit/166af8772b2121a24aaf34a83b3de970e9b3b571)), closes [#2606](https://github.com/HankHuang0516/EClaw/issues/2606)

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-12)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **notifications:** add kanban_done + kanban_done_auto toggles to Android Settings ([#2636](https://github.com/HankHuang0516/EClaw/issues/2636)) ([a710909](https://github.com/HankHuang0516/EClaw/commit/a7109095e3393b8564e7ef1b23d382a4fbb944b8))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **petdx:** drop dark-grey loading placeholder + preload sprite WEBP ([#2628](https://github.com/HankHuang0516/EClaw/issues/2628)) ([59cef38](https://github.com/HankHuang0516/EClaw/commit/59cef387bd69ca99d7d15c86a1364856d3849ad8)), closes [#1a1a1a](https://github.com/HankHuang0516/EClaw/issues/1a1a1a)
* **entities:** expose botSecret to owner so wallpaper service can poll companions ([#2615](https://github.com/HankHuang0516/EClaw/issues/2615)) ([04470fc](https://github.com/HankHuang0516/EClaw/commit/04470fce8f8c3fce2b1ba8b243e776606f107502))
* **rental:** expose owner_public_code in marketplace so plaza CTA can route ([#2616](https://github.com/HankHuang0516/EClaw/issues/2616)) ([4d1372f](https://github.com/HankHuang0516/EClaw/commit/4d1372f717d93cab65543e87c852e74e9fb67071)), closes [#2610](https://github.com/HankHuang0516/EClaw/issues/2610)
* **mention-parser:** ignore @-mentions inside markdown code spans ([#2645](https://github.com/HankHuang0516/EClaw/issues/2645)) ([8da19d4](https://github.com/HankHuang0516/EClaw/commit/8da19d4a79ceb4152bf2144ee0847c61ce3e1def)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **kanban:** lazy-load dependency chips via IntersectionObserver ([#2632](https://github.com/HankHuang0516/EClaw/issues/2632)) ([20586b4](https://github.com/HankHuang0516/EClaw/commit/20586b43357335f9eb6a190c02d58c8e36b58aba)), closes [#2631](https://github.com/HankHuang0516/EClaw/issues/2631)
* **wallpaper:** off-load spritesheet fetch to IO so per-petdx sprites actually render ([#2618](https://github.com/HankHuang0516/EClaw/issues/2618)) ([61b832c](https://github.com/HankHuang0516/EClaw/commit/61b832c9fa8a1d0caab810ccc942d85c63349267)), closes [#2615](https://github.com/HankHuang0516/EClaw/issues/2615) [#2577](https://github.com/HankHuang0516/EClaw/issues/2577)
* **i18n:** positional format specifiers for feedback_result_logs (7 locales) ([#2597](https://github.com/HankHuang0516/EClaw/issues/2597)) ([21aedc7](https://github.com/HankHuang0516/EClaw/commit/21aedc7eebc7a2839e340136f38dfdfd4dabb9dc))
* **avatar-petdx:** preserve descriptor across transient API failures (flicker) ([#2625](https://github.com/HankHuang0516/EClaw/issues/2625)) ([7b1c606](https://github.com/HankHuang0516/EClaw/commit/7b1c606514f7698d72ec95cf6c556e4043966186))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **chat:** render mention avatars with companion renderer ([#2633](https://github.com/HankHuang0516/EClaw/issues/2633)) ([03e205f](https://github.com/HankHuang0516/EClaw/commit/03e205f663ecd2c2f443d4009dd5af0093f0bbbb))
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **wallpaper:** stop Android live wallpaper flashing default lobster on companion change ([#2629](https://github.com/HankHuang0516/EClaw/issues/2629)) ([8b4f66f](https://github.com/HankHuang0516/EClaw/commit/8b4f66fcb335bf43128f924b761b6337c817095b)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* **community:** 1-click chat button on bot cards + utm tagging ([#2610](https://github.com/HankHuang0516/EClaw/issues/2610)) ([eee97b0](https://github.com/HankHuang0516/EClaw/commit/eee97b0e2e4e74945ec24f218a69a52800b97a66))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* **portal:** add entity selector to petdx-browser ([#2602](https://github.com/HankHuang0516/EClaw/issues/2602)) ([3fa067e](https://github.com/HankHuang0516/EClaw/commit/3fa067e00b38829b48a37cecd33ee81a9a1122d9))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **companion:** bridge crafter-station/petdex gallery (1784 pets) ([#2601](https://github.com/HankHuang0516/EClaw/issues/2601)) ([2e245be](https://github.com/HankHuang0516/EClaw/commit/2e245bea6dd47ea7361b927d389188a3c23b6bb3))
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **avatar:** petdx render on card-holder my-cards (Phase 1b) ([#2621](https://github.com/HankHuang0516/EClaw/issues/2621)) ([f78ba8b](https://github.com/HankHuang0516/EClaw/commit/f78ba8b18acc426936ab6d8a82ca7541effea00d))
* **avatar:** petdx render on dashboard entity grid / org chart / bindings (Phase 1b) ([#2622](https://github.com/HankHuang0516/EClaw/issues/2622)) ([f417749](https://github.com/HankHuang0516/EClaw/commit/f41774914451048e8cd76e9ae30416a0642e173b)), closes [#2620](https://github.com/HankHuang0516/EClaw/issues/2620) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621)
* **avatar:** petdx render on kanban auto-assign / pulse / comment avatars (Phase 1b) ([#2624](https://github.com/HankHuang0516/EClaw/issues/2624)) ([6bff5f8](https://github.com/HankHuang0516/EClaw/commit/6bff5f80440d0bd91a6b1721cde9478d685c4d46))
* **avatar:** petdx render on mission skill/rule/soul entity dialogs (Phase 1b) ([#2623](https://github.com/HankHuang0516/EClaw/issues/2623)) ([129327b](https://github.com/HankHuang0516/EClaw/commit/129327bc7b91056659f1ab7e8d5e3f5260d951fb))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **avatar:** render selected petdx companion in chat avatars ([#2620](https://github.com/HankHuang0516/EClaw/issues/2620)) ([0bdd046](https://github.com/HankHuang0516/EClaw/commit/0bdd046fe1b1c428e32edda366ff112c08927f4c))
* **home:** replace native home with WebView hosting dashboard.html ([#2634](https://github.com/HankHuang0516/EClaw/issues/2634)) ([e69ea81](https://github.com/HankHuang0516/EClaw/commit/e69ea8160c239b083a83d6dc83a4f1c3f901c863))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **share-chat:** twitter card + per-bot og:image/twitter:* in SSR ([#2609](https://github.com/HankHuang0516/EClaw/issues/2609)) ([6cdc853](https://github.com/HankHuang0516/EClaw/commit/6cdc853dc884cdb95bd47214942768981f218ae0))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))
* **settings:** wire petdx avatar into channel-account chips ([#2626](https://github.com/HankHuang0516/EClaw/issues/2626)) ([88aec77](https://github.com/HankHuang0516/EClaw/commit/88aec772628c240e97b336bb5820892ad632d1ae))
* **files:** wire petdx avatar into entity filter & per-file badges ([#2627](https://github.com/HankHuang0516/EClaw/issues/2627)) ([5b3e5cc](https://github.com/HankHuang0516/EClaw/commit/5b3e5cc542d9da69bb4e92500fd03a542ea33f00))
* **mindmap:** wrap hardcoded zh-TW UI strings with i18n t() ([#2607](https://github.com/HankHuang0516/EClaw/issues/2607)) ([166af87](https://github.com/HankHuang0516/EClaw/commit/166af8772b2121a24aaf34a83b3de970e9b3b571)), closes [#2606](https://github.com/HankHuang0516/EClaw/issues/2606)

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-12)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **notifications:** add kanban_done + kanban_done_auto toggles to Android Settings ([#2636](https://github.com/HankHuang0516/EClaw/issues/2636)) ([a710909](https://github.com/HankHuang0516/EClaw/commit/a7109095e3393b8564e7ef1b23d382a4fbb944b8))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **petdx:** drop dark-grey loading placeholder + preload sprite WEBP ([#2628](https://github.com/HankHuang0516/EClaw/issues/2628)) ([59cef38](https://github.com/HankHuang0516/EClaw/commit/59cef387bd69ca99d7d15c86a1364856d3849ad8)), closes [#1a1a1a](https://github.com/HankHuang0516/EClaw/issues/1a1a1a)
* **entities:** expose botSecret to owner so wallpaper service can poll companions ([#2615](https://github.com/HankHuang0516/EClaw/issues/2615)) ([04470fc](https://github.com/HankHuang0516/EClaw/commit/04470fce8f8c3fce2b1ba8b243e776606f107502))
* **rental:** expose owner_public_code in marketplace so plaza CTA can route ([#2616](https://github.com/HankHuang0516/EClaw/issues/2616)) ([4d1372f](https://github.com/HankHuang0516/EClaw/commit/4d1372f717d93cab65543e87c852e74e9fb67071)), closes [#2610](https://github.com/HankHuang0516/EClaw/issues/2610)
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **kanban:** lazy-load dependency chips via IntersectionObserver ([#2632](https://github.com/HankHuang0516/EClaw/issues/2632)) ([20586b4](https://github.com/HankHuang0516/EClaw/commit/20586b43357335f9eb6a190c02d58c8e36b58aba)), closes [#2631](https://github.com/HankHuang0516/EClaw/issues/2631)
* **wallpaper:** off-load spritesheet fetch to IO so per-petdx sprites actually render ([#2618](https://github.com/HankHuang0516/EClaw/issues/2618)) ([61b832c](https://github.com/HankHuang0516/EClaw/commit/61b832c9fa8a1d0caab810ccc942d85c63349267)), closes [#2615](https://github.com/HankHuang0516/EClaw/issues/2615) [#2577](https://github.com/HankHuang0516/EClaw/issues/2577)
* **i18n:** positional format specifiers for feedback_result_logs (7 locales) ([#2597](https://github.com/HankHuang0516/EClaw/issues/2597)) ([21aedc7](https://github.com/HankHuang0516/EClaw/commit/21aedc7eebc7a2839e340136f38dfdfd4dabb9dc))
* **avatar-petdx:** preserve descriptor across transient API failures (flicker) ([#2625](https://github.com/HankHuang0516/EClaw/issues/2625)) ([7b1c606](https://github.com/HankHuang0516/EClaw/commit/7b1c606514f7698d72ec95cf6c556e4043966186))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **chat:** render mention avatars with companion renderer ([#2633](https://github.com/HankHuang0516/EClaw/issues/2633)) ([03e205f](https://github.com/HankHuang0516/EClaw/commit/03e205f663ecd2c2f443d4009dd5af0093f0bbbb))
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **wallpaper:** stop Android live wallpaper flashing default lobster on companion change ([#2629](https://github.com/HankHuang0516/EClaw/issues/2629)) ([8b4f66f](https://github.com/HankHuang0516/EClaw/commit/8b4f66fcb335bf43128f924b761b6337c817095b)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* **community:** 1-click chat button on bot cards + utm tagging ([#2610](https://github.com/HankHuang0516/EClaw/issues/2610)) ([eee97b0](https://github.com/HankHuang0516/EClaw/commit/eee97b0e2e4e74945ec24f218a69a52800b97a66))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* **portal:** add entity selector to petdx-browser ([#2602](https://github.com/HankHuang0516/EClaw/issues/2602)) ([3fa067e](https://github.com/HankHuang0516/EClaw/commit/3fa067e00b38829b48a37cecd33ee81a9a1122d9))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **companion:** bridge crafter-station/petdex gallery (1784 pets) ([#2601](https://github.com/HankHuang0516/EClaw/issues/2601)) ([2e245be](https://github.com/HankHuang0516/EClaw/commit/2e245bea6dd47ea7361b927d389188a3c23b6bb3))
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **avatar:** petdx render on card-holder my-cards (Phase 1b) ([#2621](https://github.com/HankHuang0516/EClaw/issues/2621)) ([f78ba8b](https://github.com/HankHuang0516/EClaw/commit/f78ba8b18acc426936ab6d8a82ca7541effea00d))
* **avatar:** petdx render on dashboard entity grid / org chart / bindings (Phase 1b) ([#2622](https://github.com/HankHuang0516/EClaw/issues/2622)) ([f417749](https://github.com/HankHuang0516/EClaw/commit/f41774914451048e8cd76e9ae30416a0642e173b)), closes [#2620](https://github.com/HankHuang0516/EClaw/issues/2620) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621)
* **avatar:** petdx render on kanban auto-assign / pulse / comment avatars (Phase 1b) ([#2624](https://github.com/HankHuang0516/EClaw/issues/2624)) ([6bff5f8](https://github.com/HankHuang0516/EClaw/commit/6bff5f80440d0bd91a6b1721cde9478d685c4d46))
* **avatar:** petdx render on mission skill/rule/soul entity dialogs (Phase 1b) ([#2623](https://github.com/HankHuang0516/EClaw/issues/2623)) ([129327b](https://github.com/HankHuang0516/EClaw/commit/129327bc7b91056659f1ab7e8d5e3f5260d951fb))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **avatar:** render selected petdx companion in chat avatars ([#2620](https://github.com/HankHuang0516/EClaw/issues/2620)) ([0bdd046](https://github.com/HankHuang0516/EClaw/commit/0bdd046fe1b1c428e32edda366ff112c08927f4c))
* **home:** replace native home with WebView hosting dashboard.html ([#2634](https://github.com/HankHuang0516/EClaw/issues/2634)) ([e69ea81](https://github.com/HankHuang0516/EClaw/commit/e69ea8160c239b083a83d6dc83a4f1c3f901c863))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **share-chat:** twitter card + per-bot og:image/twitter:* in SSR ([#2609](https://github.com/HankHuang0516/EClaw/issues/2609)) ([6cdc853](https://github.com/HankHuang0516/EClaw/commit/6cdc853dc884cdb95bd47214942768981f218ae0))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))
* **settings:** wire petdx avatar into channel-account chips ([#2626](https://github.com/HankHuang0516/EClaw/issues/2626)) ([88aec77](https://github.com/HankHuang0516/EClaw/commit/88aec772628c240e97b336bb5820892ad632d1ae))
* **files:** wire petdx avatar into entity filter & per-file badges ([#2627](https://github.com/HankHuang0516/EClaw/issues/2627)) ([5b3e5cc](https://github.com/HankHuang0516/EClaw/commit/5b3e5cc542d9da69bb4e92500fd03a542ea33f00))
* **mindmap:** wrap hardcoded zh-TW UI strings with i18n t() ([#2607](https://github.com/HankHuang0516/EClaw/issues/2607)) ([166af87](https://github.com/HankHuang0516/EClaw/commit/166af8772b2121a24aaf34a83b3de970e9b3b571)), closes [#2606](https://github.com/HankHuang0516/EClaw/issues/2606)

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-12)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **notifications:** add kanban_done + kanban_done_auto toggles to Android Settings ([#2636](https://github.com/HankHuang0516/EClaw/issues/2636)) ([a710909](https://github.com/HankHuang0516/EClaw/commit/a7109095e3393b8564e7ef1b23d382a4fbb944b8))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **petdx:** drop dark-grey loading placeholder + preload sprite WEBP ([#2628](https://github.com/HankHuang0516/EClaw/issues/2628)) ([59cef38](https://github.com/HankHuang0516/EClaw/commit/59cef387bd69ca99d7d15c86a1364856d3849ad8)), closes [#1a1a1a](https://github.com/HankHuang0516/EClaw/issues/1a1a1a)
* **entities:** expose botSecret to owner so wallpaper service can poll companions ([#2615](https://github.com/HankHuang0516/EClaw/issues/2615)) ([04470fc](https://github.com/HankHuang0516/EClaw/commit/04470fce8f8c3fce2b1ba8b243e776606f107502))
* **rental:** expose owner_public_code in marketplace so plaza CTA can route ([#2616](https://github.com/HankHuang0516/EClaw/issues/2616)) ([4d1372f](https://github.com/HankHuang0516/EClaw/commit/4d1372f717d93cab65543e87c852e74e9fb67071)), closes [#2610](https://github.com/HankHuang0516/EClaw/issues/2610)
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **kanban:** lazy-load dependency chips via IntersectionObserver ([#2632](https://github.com/HankHuang0516/EClaw/issues/2632)) ([20586b4](https://github.com/HankHuang0516/EClaw/commit/20586b43357335f9eb6a190c02d58c8e36b58aba)), closes [#2631](https://github.com/HankHuang0516/EClaw/issues/2631)
* **wallpaper:** off-load spritesheet fetch to IO so per-petdx sprites actually render ([#2618](https://github.com/HankHuang0516/EClaw/issues/2618)) ([61b832c](https://github.com/HankHuang0516/EClaw/commit/61b832c9fa8a1d0caab810ccc942d85c63349267)), closes [#2615](https://github.com/HankHuang0516/EClaw/issues/2615) [#2577](https://github.com/HankHuang0516/EClaw/issues/2577)
* **i18n:** positional format specifiers for feedback_result_logs (7 locales) ([#2597](https://github.com/HankHuang0516/EClaw/issues/2597)) ([21aedc7](https://github.com/HankHuang0516/EClaw/commit/21aedc7eebc7a2839e340136f38dfdfd4dabb9dc))
* **avatar-petdx:** preserve descriptor across transient API failures (flicker) ([#2625](https://github.com/HankHuang0516/EClaw/issues/2625)) ([7b1c606](https://github.com/HankHuang0516/EClaw/commit/7b1c606514f7698d72ec95cf6c556e4043966186))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **chat:** render mention avatars with companion renderer ([#2633](https://github.com/HankHuang0516/EClaw/issues/2633)) ([03e205f](https://github.com/HankHuang0516/EClaw/commit/03e205f663ecd2c2f443d4009dd5af0093f0bbbb))
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **wallpaper:** stop Android live wallpaper flashing default lobster on companion change ([#2629](https://github.com/HankHuang0516/EClaw/issues/2629)) ([8b4f66f](https://github.com/HankHuang0516/EClaw/commit/8b4f66fcb335bf43128f924b761b6337c817095b)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* **community:** 1-click chat button on bot cards + utm tagging ([#2610](https://github.com/HankHuang0516/EClaw/issues/2610)) ([eee97b0](https://github.com/HankHuang0516/EClaw/commit/eee97b0e2e4e74945ec24f218a69a52800b97a66))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* **portal:** add entity selector to petdx-browser ([#2602](https://github.com/HankHuang0516/EClaw/issues/2602)) ([3fa067e](https://github.com/HankHuang0516/EClaw/commit/3fa067e00b38829b48a37cecd33ee81a9a1122d9))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **companion:** bridge crafter-station/petdex gallery (1784 pets) ([#2601](https://github.com/HankHuang0516/EClaw/issues/2601)) ([2e245be](https://github.com/HankHuang0516/EClaw/commit/2e245bea6dd47ea7361b927d389188a3c23b6bb3))
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **avatar:** petdx render on card-holder my-cards (Phase 1b) ([#2621](https://github.com/HankHuang0516/EClaw/issues/2621)) ([f78ba8b](https://github.com/HankHuang0516/EClaw/commit/f78ba8b18acc426936ab6d8a82ca7541effea00d))
* **avatar:** petdx render on dashboard entity grid / org chart / bindings (Phase 1b) ([#2622](https://github.com/HankHuang0516/EClaw/issues/2622)) ([f417749](https://github.com/HankHuang0516/EClaw/commit/f41774914451048e8cd76e9ae30416a0642e173b)), closes [#2620](https://github.com/HankHuang0516/EClaw/issues/2620) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621)
* **avatar:** petdx render on kanban auto-assign / pulse / comment avatars (Phase 1b) ([#2624](https://github.com/HankHuang0516/EClaw/issues/2624)) ([6bff5f8](https://github.com/HankHuang0516/EClaw/commit/6bff5f80440d0bd91a6b1721cde9478d685c4d46))
* **avatar:** petdx render on mission skill/rule/soul entity dialogs (Phase 1b) ([#2623](https://github.com/HankHuang0516/EClaw/issues/2623)) ([129327b](https://github.com/HankHuang0516/EClaw/commit/129327bc7b91056659f1ab7e8d5e3f5260d951fb))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **avatar:** render selected petdx companion in chat avatars ([#2620](https://github.com/HankHuang0516/EClaw/issues/2620)) ([0bdd046](https://github.com/HankHuang0516/EClaw/commit/0bdd046fe1b1c428e32edda366ff112c08927f4c))
* **home:** replace native home with WebView hosting dashboard.html ([#2634](https://github.com/HankHuang0516/EClaw/issues/2634)) ([e69ea81](https://github.com/HankHuang0516/EClaw/commit/e69ea8160c239b083a83d6dc83a4f1c3f901c863))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **share-chat:** twitter card + per-bot og:image/twitter:* in SSR ([#2609](https://github.com/HankHuang0516/EClaw/issues/2609)) ([6cdc853](https://github.com/HankHuang0516/EClaw/commit/6cdc853dc884cdb95bd47214942768981f218ae0))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))
* **settings:** wire petdx avatar into channel-account chips ([#2626](https://github.com/HankHuang0516/EClaw/issues/2626)) ([88aec77](https://github.com/HankHuang0516/EClaw/commit/88aec772628c240e97b336bb5820892ad632d1ae))
* **files:** wire petdx avatar into entity filter & per-file badges ([#2627](https://github.com/HankHuang0516/EClaw/issues/2627)) ([5b3e5cc](https://github.com/HankHuang0516/EClaw/commit/5b3e5cc542d9da69bb4e92500fd03a542ea33f00))
* **mindmap:** wrap hardcoded zh-TW UI strings with i18n t() ([#2607](https://github.com/HankHuang0516/EClaw/issues/2607)) ([166af87](https://github.com/HankHuang0516/EClaw/commit/166af8772b2121a24aaf34a83b3de970e9b3b571)), closes [#2606](https://github.com/HankHuang0516/EClaw/issues/2606)

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-12)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **notifications:** add kanban_done + kanban_done_auto toggles to Android Settings ([#2636](https://github.com/HankHuang0516/EClaw/issues/2636)) ([a710909](https://github.com/HankHuang0516/EClaw/commit/a7109095e3393b8564e7ef1b23d382a4fbb944b8))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **petdx:** drop dark-grey loading placeholder + preload sprite WEBP ([#2628](https://github.com/HankHuang0516/EClaw/issues/2628)) ([59cef38](https://github.com/HankHuang0516/EClaw/commit/59cef387bd69ca99d7d15c86a1364856d3849ad8)), closes [#1a1a1a](https://github.com/HankHuang0516/EClaw/issues/1a1a1a)
* **entities:** expose botSecret to owner so wallpaper service can poll companions ([#2615](https://github.com/HankHuang0516/EClaw/issues/2615)) ([04470fc](https://github.com/HankHuang0516/EClaw/commit/04470fce8f8c3fce2b1ba8b243e776606f107502))
* **rental:** expose owner_public_code in marketplace so plaza CTA can route ([#2616](https://github.com/HankHuang0516/EClaw/issues/2616)) ([4d1372f](https://github.com/HankHuang0516/EClaw/commit/4d1372f717d93cab65543e87c852e74e9fb67071)), closes [#2610](https://github.com/HankHuang0516/EClaw/issues/2610)
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **kanban:** lazy-load dependency chips via IntersectionObserver ([#2632](https://github.com/HankHuang0516/EClaw/issues/2632)) ([20586b4](https://github.com/HankHuang0516/EClaw/commit/20586b43357335f9eb6a190c02d58c8e36b58aba)), closes [#2631](https://github.com/HankHuang0516/EClaw/issues/2631)
* **wallpaper:** off-load spritesheet fetch to IO so per-petdx sprites actually render ([#2618](https://github.com/HankHuang0516/EClaw/issues/2618)) ([61b832c](https://github.com/HankHuang0516/EClaw/commit/61b832c9fa8a1d0caab810ccc942d85c63349267)), closes [#2615](https://github.com/HankHuang0516/EClaw/issues/2615) [#2577](https://github.com/HankHuang0516/EClaw/issues/2577)
* **i18n:** positional format specifiers for feedback_result_logs (7 locales) ([#2597](https://github.com/HankHuang0516/EClaw/issues/2597)) ([21aedc7](https://github.com/HankHuang0516/EClaw/commit/21aedc7eebc7a2839e340136f38dfdfd4dabb9dc))
* **avatar-petdx:** preserve descriptor across transient API failures (flicker) ([#2625](https://github.com/HankHuang0516/EClaw/issues/2625)) ([7b1c606](https://github.com/HankHuang0516/EClaw/commit/7b1c606514f7698d72ec95cf6c556e4043966186))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **chat:** render mention avatars with companion renderer ([#2633](https://github.com/HankHuang0516/EClaw/issues/2633)) ([03e205f](https://github.com/HankHuang0516/EClaw/commit/03e205f663ecd2c2f443d4009dd5af0093f0bbbb))
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **wallpaper:** stop Android live wallpaper flashing default lobster on companion change ([#2629](https://github.com/HankHuang0516/EClaw/issues/2629)) ([8b4f66f](https://github.com/HankHuang0516/EClaw/commit/8b4f66fcb335bf43128f924b761b6337c817095b)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* **community:** 1-click chat button on bot cards + utm tagging ([#2610](https://github.com/HankHuang0516/EClaw/issues/2610)) ([eee97b0](https://github.com/HankHuang0516/EClaw/commit/eee97b0e2e4e74945ec24f218a69a52800b97a66))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* **portal:** add entity selector to petdx-browser ([#2602](https://github.com/HankHuang0516/EClaw/issues/2602)) ([3fa067e](https://github.com/HankHuang0516/EClaw/commit/3fa067e00b38829b48a37cecd33ee81a9a1122d9))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **companion:** bridge crafter-station/petdex gallery (1784 pets) ([#2601](https://github.com/HankHuang0516/EClaw/issues/2601)) ([2e245be](https://github.com/HankHuang0516/EClaw/commit/2e245bea6dd47ea7361b927d389188a3c23b6bb3))
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **avatar:** petdx render on card-holder my-cards (Phase 1b) ([#2621](https://github.com/HankHuang0516/EClaw/issues/2621)) ([f78ba8b](https://github.com/HankHuang0516/EClaw/commit/f78ba8b18acc426936ab6d8a82ca7541effea00d))
* **avatar:** petdx render on dashboard entity grid / org chart / bindings (Phase 1b) ([#2622](https://github.com/HankHuang0516/EClaw/issues/2622)) ([f417749](https://github.com/HankHuang0516/EClaw/commit/f41774914451048e8cd76e9ae30416a0642e173b)), closes [#2620](https://github.com/HankHuang0516/EClaw/issues/2620) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621)
* **avatar:** petdx render on kanban auto-assign / pulse / comment avatars (Phase 1b) ([#2624](https://github.com/HankHuang0516/EClaw/issues/2624)) ([6bff5f8](https://github.com/HankHuang0516/EClaw/commit/6bff5f80440d0bd91a6b1721cde9478d685c4d46))
* **avatar:** petdx render on mission skill/rule/soul entity dialogs (Phase 1b) ([#2623](https://github.com/HankHuang0516/EClaw/issues/2623)) ([129327b](https://github.com/HankHuang0516/EClaw/commit/129327bc7b91056659f1ab7e8d5e3f5260d951fb))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **avatar:** render selected petdx companion in chat avatars ([#2620](https://github.com/HankHuang0516/EClaw/issues/2620)) ([0bdd046](https://github.com/HankHuang0516/EClaw/commit/0bdd046fe1b1c428e32edda366ff112c08927f4c))
* **home:** replace native home with WebView hosting dashboard.html ([#2634](https://github.com/HankHuang0516/EClaw/issues/2634)) ([e69ea81](https://github.com/HankHuang0516/EClaw/commit/e69ea8160c239b083a83d6dc83a4f1c3f901c863))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **share-chat:** twitter card + per-bot og:image/twitter:* in SSR ([#2609](https://github.com/HankHuang0516/EClaw/issues/2609)) ([6cdc853](https://github.com/HankHuang0516/EClaw/commit/6cdc853dc884cdb95bd47214942768981f218ae0))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))
* **settings:** wire petdx avatar into channel-account chips ([#2626](https://github.com/HankHuang0516/EClaw/issues/2626)) ([88aec77](https://github.com/HankHuang0516/EClaw/commit/88aec772628c240e97b336bb5820892ad632d1ae))
* **files:** wire petdx avatar into entity filter & per-file badges ([#2627](https://github.com/HankHuang0516/EClaw/issues/2627)) ([5b3e5cc](https://github.com/HankHuang0516/EClaw/commit/5b3e5cc542d9da69bb4e92500fd03a542ea33f00))
* **mindmap:** wrap hardcoded zh-TW UI strings with i18n t() ([#2607](https://github.com/HankHuang0516/EClaw/issues/2607)) ([166af87](https://github.com/HankHuang0516/EClaw/commit/166af8772b2121a24aaf34a83b3de970e9b3b571)), closes [#2606](https://github.com/HankHuang0516/EClaw/issues/2606)

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-12)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **petdx:** drop dark-grey loading placeholder + preload sprite WEBP ([#2628](https://github.com/HankHuang0516/EClaw/issues/2628)) ([59cef38](https://github.com/HankHuang0516/EClaw/commit/59cef387bd69ca99d7d15c86a1364856d3849ad8)), closes [#1a1a1a](https://github.com/HankHuang0516/EClaw/issues/1a1a1a)
* **entities:** expose botSecret to owner so wallpaper service can poll companions ([#2615](https://github.com/HankHuang0516/EClaw/issues/2615)) ([04470fc](https://github.com/HankHuang0516/EClaw/commit/04470fce8f8c3fce2b1ba8b243e776606f107502))
* **rental:** expose owner_public_code in marketplace so plaza CTA can route ([#2616](https://github.com/HankHuang0516/EClaw/issues/2616)) ([4d1372f](https://github.com/HankHuang0516/EClaw/commit/4d1372f717d93cab65543e87c852e74e9fb67071)), closes [#2610](https://github.com/HankHuang0516/EClaw/issues/2610)
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **kanban:** lazy-load dependency chips via IntersectionObserver ([#2632](https://github.com/HankHuang0516/EClaw/issues/2632)) ([20586b4](https://github.com/HankHuang0516/EClaw/commit/20586b43357335f9eb6a190c02d58c8e36b58aba)), closes [#2631](https://github.com/HankHuang0516/EClaw/issues/2631)
* **wallpaper:** off-load spritesheet fetch to IO so per-petdx sprites actually render ([#2618](https://github.com/HankHuang0516/EClaw/issues/2618)) ([61b832c](https://github.com/HankHuang0516/EClaw/commit/61b832c9fa8a1d0caab810ccc942d85c63349267)), closes [#2615](https://github.com/HankHuang0516/EClaw/issues/2615) [#2577](https://github.com/HankHuang0516/EClaw/issues/2577)
* **i18n:** positional format specifiers for feedback_result_logs (7 locales) ([#2597](https://github.com/HankHuang0516/EClaw/issues/2597)) ([21aedc7](https://github.com/HankHuang0516/EClaw/commit/21aedc7eebc7a2839e340136f38dfdfd4dabb9dc))
* **avatar-petdx:** preserve descriptor across transient API failures (flicker) ([#2625](https://github.com/HankHuang0516/EClaw/issues/2625)) ([7b1c606](https://github.com/HankHuang0516/EClaw/commit/7b1c606514f7698d72ec95cf6c556e4043966186))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **chat:** render mention avatars with companion renderer ([#2633](https://github.com/HankHuang0516/EClaw/issues/2633)) ([03e205f](https://github.com/HankHuang0516/EClaw/commit/03e205f663ecd2c2f443d4009dd5af0093f0bbbb))
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **wallpaper:** stop Android live wallpaper flashing default lobster on companion change ([#2629](https://github.com/HankHuang0516/EClaw/issues/2629)) ([8b4f66f](https://github.com/HankHuang0516/EClaw/commit/8b4f66fcb335bf43128f924b761b6337c817095b)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* **community:** 1-click chat button on bot cards + utm tagging ([#2610](https://github.com/HankHuang0516/EClaw/issues/2610)) ([eee97b0](https://github.com/HankHuang0516/EClaw/commit/eee97b0e2e4e74945ec24f218a69a52800b97a66))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* **portal:** add entity selector to petdx-browser ([#2602](https://github.com/HankHuang0516/EClaw/issues/2602)) ([3fa067e](https://github.com/HankHuang0516/EClaw/commit/3fa067e00b38829b48a37cecd33ee81a9a1122d9))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **companion:** bridge crafter-station/petdex gallery (1784 pets) ([#2601](https://github.com/HankHuang0516/EClaw/issues/2601)) ([2e245be](https://github.com/HankHuang0516/EClaw/commit/2e245bea6dd47ea7361b927d389188a3c23b6bb3))
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **avatar:** petdx render on card-holder my-cards (Phase 1b) ([#2621](https://github.com/HankHuang0516/EClaw/issues/2621)) ([f78ba8b](https://github.com/HankHuang0516/EClaw/commit/f78ba8b18acc426936ab6d8a82ca7541effea00d))
* **avatar:** petdx render on dashboard entity grid / org chart / bindings (Phase 1b) ([#2622](https://github.com/HankHuang0516/EClaw/issues/2622)) ([f417749](https://github.com/HankHuang0516/EClaw/commit/f41774914451048e8cd76e9ae30416a0642e173b)), closes [#2620](https://github.com/HankHuang0516/EClaw/issues/2620) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621)
* **avatar:** petdx render on kanban auto-assign / pulse / comment avatars (Phase 1b) ([#2624](https://github.com/HankHuang0516/EClaw/issues/2624)) ([6bff5f8](https://github.com/HankHuang0516/EClaw/commit/6bff5f80440d0bd91a6b1721cde9478d685c4d46))
* **avatar:** petdx render on mission skill/rule/soul entity dialogs (Phase 1b) ([#2623](https://github.com/HankHuang0516/EClaw/issues/2623)) ([129327b](https://github.com/HankHuang0516/EClaw/commit/129327bc7b91056659f1ab7e8d5e3f5260d951fb))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **avatar:** render selected petdx companion in chat avatars ([#2620](https://github.com/HankHuang0516/EClaw/issues/2620)) ([0bdd046](https://github.com/HankHuang0516/EClaw/commit/0bdd046fe1b1c428e32edda366ff112c08927f4c))
* **home:** replace native home with WebView hosting dashboard.html ([#2634](https://github.com/HankHuang0516/EClaw/issues/2634)) ([e69ea81](https://github.com/HankHuang0516/EClaw/commit/e69ea8160c239b083a83d6dc83a4f1c3f901c863))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **share-chat:** twitter card + per-bot og:image/twitter:* in SSR ([#2609](https://github.com/HankHuang0516/EClaw/issues/2609)) ([6cdc853](https://github.com/HankHuang0516/EClaw/commit/6cdc853dc884cdb95bd47214942768981f218ae0))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))
* **settings:** wire petdx avatar into channel-account chips ([#2626](https://github.com/HankHuang0516/EClaw/issues/2626)) ([88aec77](https://github.com/HankHuang0516/EClaw/commit/88aec772628c240e97b336bb5820892ad632d1ae))
* **files:** wire petdx avatar into entity filter & per-file badges ([#2627](https://github.com/HankHuang0516/EClaw/issues/2627)) ([5b3e5cc](https://github.com/HankHuang0516/EClaw/commit/5b3e5cc542d9da69bb4e92500fd03a542ea33f00))
* **mindmap:** wrap hardcoded zh-TW UI strings with i18n t() ([#2607](https://github.com/HankHuang0516/EClaw/issues/2607)) ([166af87](https://github.com/HankHuang0516/EClaw/commit/166af8772b2121a24aaf34a83b3de970e9b3b571)), closes [#2606](https://github.com/HankHuang0516/EClaw/issues/2606)

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-12)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **petdx:** drop dark-grey loading placeholder + preload sprite WEBP ([#2628](https://github.com/HankHuang0516/EClaw/issues/2628)) ([59cef38](https://github.com/HankHuang0516/EClaw/commit/59cef387bd69ca99d7d15c86a1364856d3849ad8)), closes [#1a1a1a](https://github.com/HankHuang0516/EClaw/issues/1a1a1a)
* **entities:** expose botSecret to owner so wallpaper service can poll companions ([#2615](https://github.com/HankHuang0516/EClaw/issues/2615)) ([04470fc](https://github.com/HankHuang0516/EClaw/commit/04470fce8f8c3fce2b1ba8b243e776606f107502))
* **rental:** expose owner_public_code in marketplace so plaza CTA can route ([#2616](https://github.com/HankHuang0516/EClaw/issues/2616)) ([4d1372f](https://github.com/HankHuang0516/EClaw/commit/4d1372f717d93cab65543e87c852e74e9fb67071)), closes [#2610](https://github.com/HankHuang0516/EClaw/issues/2610)
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **kanban:** lazy-load dependency chips via IntersectionObserver ([#2632](https://github.com/HankHuang0516/EClaw/issues/2632)) ([20586b4](https://github.com/HankHuang0516/EClaw/commit/20586b43357335f9eb6a190c02d58c8e36b58aba)), closes [#2631](https://github.com/HankHuang0516/EClaw/issues/2631)
* **wallpaper:** off-load spritesheet fetch to IO so per-petdx sprites actually render ([#2618](https://github.com/HankHuang0516/EClaw/issues/2618)) ([61b832c](https://github.com/HankHuang0516/EClaw/commit/61b832c9fa8a1d0caab810ccc942d85c63349267)), closes [#2615](https://github.com/HankHuang0516/EClaw/issues/2615) [#2577](https://github.com/HankHuang0516/EClaw/issues/2577)
* **i18n:** positional format specifiers for feedback_result_logs (7 locales) ([#2597](https://github.com/HankHuang0516/EClaw/issues/2597)) ([21aedc7](https://github.com/HankHuang0516/EClaw/commit/21aedc7eebc7a2839e340136f38dfdfd4dabb9dc))
* **avatar-petdx:** preserve descriptor across transient API failures (flicker) ([#2625](https://github.com/HankHuang0516/EClaw/issues/2625)) ([7b1c606](https://github.com/HankHuang0516/EClaw/commit/7b1c606514f7698d72ec95cf6c556e4043966186))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **chat:** render mention avatars with companion renderer ([#2633](https://github.com/HankHuang0516/EClaw/issues/2633)) ([03e205f](https://github.com/HankHuang0516/EClaw/commit/03e205f663ecd2c2f443d4009dd5af0093f0bbbb))
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **wallpaper:** stop Android live wallpaper flashing default lobster on companion change ([#2629](https://github.com/HankHuang0516/EClaw/issues/2629)) ([8b4f66f](https://github.com/HankHuang0516/EClaw/commit/8b4f66fcb335bf43128f924b761b6337c817095b)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* **community:** 1-click chat button on bot cards + utm tagging ([#2610](https://github.com/HankHuang0516/EClaw/issues/2610)) ([eee97b0](https://github.com/HankHuang0516/EClaw/commit/eee97b0e2e4e74945ec24f218a69a52800b97a66))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* **portal:** add entity selector to petdx-browser ([#2602](https://github.com/HankHuang0516/EClaw/issues/2602)) ([3fa067e](https://github.com/HankHuang0516/EClaw/commit/3fa067e00b38829b48a37cecd33ee81a9a1122d9))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **companion:** bridge crafter-station/petdex gallery (1784 pets) ([#2601](https://github.com/HankHuang0516/EClaw/issues/2601)) ([2e245be](https://github.com/HankHuang0516/EClaw/commit/2e245bea6dd47ea7361b927d389188a3c23b6bb3))
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **avatar:** petdx render on card-holder my-cards (Phase 1b) ([#2621](https://github.com/HankHuang0516/EClaw/issues/2621)) ([f78ba8b](https://github.com/HankHuang0516/EClaw/commit/f78ba8b18acc426936ab6d8a82ca7541effea00d))
* **avatar:** petdx render on dashboard entity grid / org chart / bindings (Phase 1b) ([#2622](https://github.com/HankHuang0516/EClaw/issues/2622)) ([f417749](https://github.com/HankHuang0516/EClaw/commit/f41774914451048e8cd76e9ae30416a0642e173b)), closes [#2620](https://github.com/HankHuang0516/EClaw/issues/2620) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621)
* **avatar:** petdx render on kanban auto-assign / pulse / comment avatars (Phase 1b) ([#2624](https://github.com/HankHuang0516/EClaw/issues/2624)) ([6bff5f8](https://github.com/HankHuang0516/EClaw/commit/6bff5f80440d0bd91a6b1721cde9478d685c4d46))
* **avatar:** petdx render on mission skill/rule/soul entity dialogs (Phase 1b) ([#2623](https://github.com/HankHuang0516/EClaw/issues/2623)) ([129327b](https://github.com/HankHuang0516/EClaw/commit/129327bc7b91056659f1ab7e8d5e3f5260d951fb))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **avatar:** render selected petdx companion in chat avatars ([#2620](https://github.com/HankHuang0516/EClaw/issues/2620)) ([0bdd046](https://github.com/HankHuang0516/EClaw/commit/0bdd046fe1b1c428e32edda366ff112c08927f4c))
* **home:** replace native home with WebView hosting dashboard.html ([#2634](https://github.com/HankHuang0516/EClaw/issues/2634)) ([e69ea81](https://github.com/HankHuang0516/EClaw/commit/e69ea8160c239b083a83d6dc83a4f1c3f901c863))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **share-chat:** twitter card + per-bot og:image/twitter:* in SSR ([#2609](https://github.com/HankHuang0516/EClaw/issues/2609)) ([6cdc853](https://github.com/HankHuang0516/EClaw/commit/6cdc853dc884cdb95bd47214942768981f218ae0))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))
* **settings:** wire petdx avatar into channel-account chips ([#2626](https://github.com/HankHuang0516/EClaw/issues/2626)) ([88aec77](https://github.com/HankHuang0516/EClaw/commit/88aec772628c240e97b336bb5820892ad632d1ae))
* **files:** wire petdx avatar into entity filter & per-file badges ([#2627](https://github.com/HankHuang0516/EClaw/issues/2627)) ([5b3e5cc](https://github.com/HankHuang0516/EClaw/commit/5b3e5cc542d9da69bb4e92500fd03a542ea33f00))
* **mindmap:** wrap hardcoded zh-TW UI strings with i18n t() ([#2607](https://github.com/HankHuang0516/EClaw/issues/2607)) ([166af87](https://github.com/HankHuang0516/EClaw/commit/166af8772b2121a24aaf34a83b3de970e9b3b571)), closes [#2606](https://github.com/HankHuang0516/EClaw/issues/2606)

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-12)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **petdx:** drop dark-grey loading placeholder + preload sprite WEBP ([#2628](https://github.com/HankHuang0516/EClaw/issues/2628)) ([59cef38](https://github.com/HankHuang0516/EClaw/commit/59cef387bd69ca99d7d15c86a1364856d3849ad8)), closes [#1a1a1a](https://github.com/HankHuang0516/EClaw/issues/1a1a1a)
* **entities:** expose botSecret to owner so wallpaper service can poll companions ([#2615](https://github.com/HankHuang0516/EClaw/issues/2615)) ([04470fc](https://github.com/HankHuang0516/EClaw/commit/04470fce8f8c3fce2b1ba8b243e776606f107502))
* **rental:** expose owner_public_code in marketplace so plaza CTA can route ([#2616](https://github.com/HankHuang0516/EClaw/issues/2616)) ([4d1372f](https://github.com/HankHuang0516/EClaw/commit/4d1372f717d93cab65543e87c852e74e9fb67071)), closes [#2610](https://github.com/HankHuang0516/EClaw/issues/2610)
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **kanban:** lazy-load dependency chips via IntersectionObserver ([#2632](https://github.com/HankHuang0516/EClaw/issues/2632)) ([20586b4](https://github.com/HankHuang0516/EClaw/commit/20586b43357335f9eb6a190c02d58c8e36b58aba)), closes [#2631](https://github.com/HankHuang0516/EClaw/issues/2631)
* **wallpaper:** off-load spritesheet fetch to IO so per-petdx sprites actually render ([#2618](https://github.com/HankHuang0516/EClaw/issues/2618)) ([61b832c](https://github.com/HankHuang0516/EClaw/commit/61b832c9fa8a1d0caab810ccc942d85c63349267)), closes [#2615](https://github.com/HankHuang0516/EClaw/issues/2615) [#2577](https://github.com/HankHuang0516/EClaw/issues/2577)
* **i18n:** positional format specifiers for feedback_result_logs (7 locales) ([#2597](https://github.com/HankHuang0516/EClaw/issues/2597)) ([21aedc7](https://github.com/HankHuang0516/EClaw/commit/21aedc7eebc7a2839e340136f38dfdfd4dabb9dc))
* **avatar-petdx:** preserve descriptor across transient API failures (flicker) ([#2625](https://github.com/HankHuang0516/EClaw/issues/2625)) ([7b1c606](https://github.com/HankHuang0516/EClaw/commit/7b1c606514f7698d72ec95cf6c556e4043966186))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **chat:** render mention avatars with companion renderer ([#2633](https://github.com/HankHuang0516/EClaw/issues/2633)) ([03e205f](https://github.com/HankHuang0516/EClaw/commit/03e205f663ecd2c2f443d4009dd5af0093f0bbbb))
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **wallpaper:** stop Android live wallpaper flashing default lobster on companion change ([#2629](https://github.com/HankHuang0516/EClaw/issues/2629)) ([8b4f66f](https://github.com/HankHuang0516/EClaw/commit/8b4f66fcb335bf43128f924b761b6337c817095b)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* **community:** 1-click chat button on bot cards + utm tagging ([#2610](https://github.com/HankHuang0516/EClaw/issues/2610)) ([eee97b0](https://github.com/HankHuang0516/EClaw/commit/eee97b0e2e4e74945ec24f218a69a52800b97a66))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* **portal:** add entity selector to petdx-browser ([#2602](https://github.com/HankHuang0516/EClaw/issues/2602)) ([3fa067e](https://github.com/HankHuang0516/EClaw/commit/3fa067e00b38829b48a37cecd33ee81a9a1122d9))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **companion:** bridge crafter-station/petdex gallery (1784 pets) ([#2601](https://github.com/HankHuang0516/EClaw/issues/2601)) ([2e245be](https://github.com/HankHuang0516/EClaw/commit/2e245bea6dd47ea7361b927d389188a3c23b6bb3))
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **avatar:** petdx render on card-holder my-cards (Phase 1b) ([#2621](https://github.com/HankHuang0516/EClaw/issues/2621)) ([f78ba8b](https://github.com/HankHuang0516/EClaw/commit/f78ba8b18acc426936ab6d8a82ca7541effea00d))
* **avatar:** petdx render on dashboard entity grid / org chart / bindings (Phase 1b) ([#2622](https://github.com/HankHuang0516/EClaw/issues/2622)) ([f417749](https://github.com/HankHuang0516/EClaw/commit/f41774914451048e8cd76e9ae30416a0642e173b)), closes [#2620](https://github.com/HankHuang0516/EClaw/issues/2620) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621)
* **avatar:** petdx render on kanban auto-assign / pulse / comment avatars (Phase 1b) ([#2624](https://github.com/HankHuang0516/EClaw/issues/2624)) ([6bff5f8](https://github.com/HankHuang0516/EClaw/commit/6bff5f80440d0bd91a6b1721cde9478d685c4d46))
* **avatar:** petdx render on mission skill/rule/soul entity dialogs (Phase 1b) ([#2623](https://github.com/HankHuang0516/EClaw/issues/2623)) ([129327b](https://github.com/HankHuang0516/EClaw/commit/129327bc7b91056659f1ab7e8d5e3f5260d951fb))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **avatar:** render selected petdx companion in chat avatars ([#2620](https://github.com/HankHuang0516/EClaw/issues/2620)) ([0bdd046](https://github.com/HankHuang0516/EClaw/commit/0bdd046fe1b1c428e32edda366ff112c08927f4c))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **share-chat:** twitter card + per-bot og:image/twitter:* in SSR ([#2609](https://github.com/HankHuang0516/EClaw/issues/2609)) ([6cdc853](https://github.com/HankHuang0516/EClaw/commit/6cdc853dc884cdb95bd47214942768981f218ae0))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))
* **settings:** wire petdx avatar into channel-account chips ([#2626](https://github.com/HankHuang0516/EClaw/issues/2626)) ([88aec77](https://github.com/HankHuang0516/EClaw/commit/88aec772628c240e97b336bb5820892ad632d1ae))
* **files:** wire petdx avatar into entity filter & per-file badges ([#2627](https://github.com/HankHuang0516/EClaw/issues/2627)) ([5b3e5cc](https://github.com/HankHuang0516/EClaw/commit/5b3e5cc542d9da69bb4e92500fd03a542ea33f00))
* **mindmap:** wrap hardcoded zh-TW UI strings with i18n t() ([#2607](https://github.com/HankHuang0516/EClaw/issues/2607)) ([166af87](https://github.com/HankHuang0516/EClaw/commit/166af8772b2121a24aaf34a83b3de970e9b3b571)), closes [#2606](https://github.com/HankHuang0516/EClaw/issues/2606)

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-12)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **petdx:** drop dark-grey loading placeholder + preload sprite WEBP ([#2628](https://github.com/HankHuang0516/EClaw/issues/2628)) ([59cef38](https://github.com/HankHuang0516/EClaw/commit/59cef387bd69ca99d7d15c86a1364856d3849ad8)), closes [#1a1a1a](https://github.com/HankHuang0516/EClaw/issues/1a1a1a)
* **entities:** expose botSecret to owner so wallpaper service can poll companions ([#2615](https://github.com/HankHuang0516/EClaw/issues/2615)) ([04470fc](https://github.com/HankHuang0516/EClaw/commit/04470fce8f8c3fce2b1ba8b243e776606f107502))
* **rental:** expose owner_public_code in marketplace so plaza CTA can route ([#2616](https://github.com/HankHuang0516/EClaw/issues/2616)) ([4d1372f](https://github.com/HankHuang0516/EClaw/commit/4d1372f717d93cab65543e87c852e74e9fb67071)), closes [#2610](https://github.com/HankHuang0516/EClaw/issues/2610)
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **kanban:** lazy-load dependency chips via IntersectionObserver ([#2632](https://github.com/HankHuang0516/EClaw/issues/2632)) ([20586b4](https://github.com/HankHuang0516/EClaw/commit/20586b43357335f9eb6a190c02d58c8e36b58aba)), closes [#2631](https://github.com/HankHuang0516/EClaw/issues/2631)
* **wallpaper:** off-load spritesheet fetch to IO so per-petdx sprites actually render ([#2618](https://github.com/HankHuang0516/EClaw/issues/2618)) ([61b832c](https://github.com/HankHuang0516/EClaw/commit/61b832c9fa8a1d0caab810ccc942d85c63349267)), closes [#2615](https://github.com/HankHuang0516/EClaw/issues/2615) [#2577](https://github.com/HankHuang0516/EClaw/issues/2577)
* **i18n:** positional format specifiers for feedback_result_logs (7 locales) ([#2597](https://github.com/HankHuang0516/EClaw/issues/2597)) ([21aedc7](https://github.com/HankHuang0516/EClaw/commit/21aedc7eebc7a2839e340136f38dfdfd4dabb9dc))
* **avatar-petdx:** preserve descriptor across transient API failures (flicker) ([#2625](https://github.com/HankHuang0516/EClaw/issues/2625)) ([7b1c606](https://github.com/HankHuang0516/EClaw/commit/7b1c606514f7698d72ec95cf6c556e4043966186))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **wallpaper:** stop Android live wallpaper flashing default lobster on companion change ([#2629](https://github.com/HankHuang0516/EClaw/issues/2629)) ([8b4f66f](https://github.com/HankHuang0516/EClaw/commit/8b4f66fcb335bf43128f924b761b6337c817095b)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* **community:** 1-click chat button on bot cards + utm tagging ([#2610](https://github.com/HankHuang0516/EClaw/issues/2610)) ([eee97b0](https://github.com/HankHuang0516/EClaw/commit/eee97b0e2e4e74945ec24f218a69a52800b97a66))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* **portal:** add entity selector to petdx-browser ([#2602](https://github.com/HankHuang0516/EClaw/issues/2602)) ([3fa067e](https://github.com/HankHuang0516/EClaw/commit/3fa067e00b38829b48a37cecd33ee81a9a1122d9))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **companion:** bridge crafter-station/petdex gallery (1784 pets) ([#2601](https://github.com/HankHuang0516/EClaw/issues/2601)) ([2e245be](https://github.com/HankHuang0516/EClaw/commit/2e245bea6dd47ea7361b927d389188a3c23b6bb3))
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **avatar:** petdx render on card-holder my-cards (Phase 1b) ([#2621](https://github.com/HankHuang0516/EClaw/issues/2621)) ([f78ba8b](https://github.com/HankHuang0516/EClaw/commit/f78ba8b18acc426936ab6d8a82ca7541effea00d))
* **avatar:** petdx render on dashboard entity grid / org chart / bindings (Phase 1b) ([#2622](https://github.com/HankHuang0516/EClaw/issues/2622)) ([f417749](https://github.com/HankHuang0516/EClaw/commit/f41774914451048e8cd76e9ae30416a0642e173b)), closes [#2620](https://github.com/HankHuang0516/EClaw/issues/2620) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621)
* **avatar:** petdx render on kanban auto-assign / pulse / comment avatars (Phase 1b) ([#2624](https://github.com/HankHuang0516/EClaw/issues/2624)) ([6bff5f8](https://github.com/HankHuang0516/EClaw/commit/6bff5f80440d0bd91a6b1721cde9478d685c4d46))
* **avatar:** petdx render on mission skill/rule/soul entity dialogs (Phase 1b) ([#2623](https://github.com/HankHuang0516/EClaw/issues/2623)) ([129327b](https://github.com/HankHuang0516/EClaw/commit/129327bc7b91056659f1ab7e8d5e3f5260d951fb))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **avatar:** render selected petdx companion in chat avatars ([#2620](https://github.com/HankHuang0516/EClaw/issues/2620)) ([0bdd046](https://github.com/HankHuang0516/EClaw/commit/0bdd046fe1b1c428e32edda366ff112c08927f4c))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **share-chat:** twitter card + per-bot og:image/twitter:* in SSR ([#2609](https://github.com/HankHuang0516/EClaw/issues/2609)) ([6cdc853](https://github.com/HankHuang0516/EClaw/commit/6cdc853dc884cdb95bd47214942768981f218ae0))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))
* **settings:** wire petdx avatar into channel-account chips ([#2626](https://github.com/HankHuang0516/EClaw/issues/2626)) ([88aec77](https://github.com/HankHuang0516/EClaw/commit/88aec772628c240e97b336bb5820892ad632d1ae))
* **files:** wire petdx avatar into entity filter & per-file badges ([#2627](https://github.com/HankHuang0516/EClaw/issues/2627)) ([5b3e5cc](https://github.com/HankHuang0516/EClaw/commit/5b3e5cc542d9da69bb4e92500fd03a542ea33f00))
* **mindmap:** wrap hardcoded zh-TW UI strings with i18n t() ([#2607](https://github.com/HankHuang0516/EClaw/issues/2607)) ([166af87](https://github.com/HankHuang0516/EClaw/commit/166af8772b2121a24aaf34a83b3de970e9b3b571)), closes [#2606](https://github.com/HankHuang0516/EClaw/issues/2606)

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-12)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **petdx:** drop dark-grey loading placeholder + preload sprite WEBP ([#2628](https://github.com/HankHuang0516/EClaw/issues/2628)) ([59cef38](https://github.com/HankHuang0516/EClaw/commit/59cef387bd69ca99d7d15c86a1364856d3849ad8)), closes [#1a1a1a](https://github.com/HankHuang0516/EClaw/issues/1a1a1a)
* **entities:** expose botSecret to owner so wallpaper service can poll companions ([#2615](https://github.com/HankHuang0516/EClaw/issues/2615)) ([04470fc](https://github.com/HankHuang0516/EClaw/commit/04470fce8f8c3fce2b1ba8b243e776606f107502))
* **rental:** expose owner_public_code in marketplace so plaza CTA can route ([#2616](https://github.com/HankHuang0516/EClaw/issues/2616)) ([4d1372f](https://github.com/HankHuang0516/EClaw/commit/4d1372f717d93cab65543e87c852e74e9fb67071)), closes [#2610](https://github.com/HankHuang0516/EClaw/issues/2610)
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **wallpaper:** off-load spritesheet fetch to IO so per-petdx sprites actually render ([#2618](https://github.com/HankHuang0516/EClaw/issues/2618)) ([61b832c](https://github.com/HankHuang0516/EClaw/commit/61b832c9fa8a1d0caab810ccc942d85c63349267)), closes [#2615](https://github.com/HankHuang0516/EClaw/issues/2615) [#2577](https://github.com/HankHuang0516/EClaw/issues/2577)
* **i18n:** positional format specifiers for feedback_result_logs (7 locales) ([#2597](https://github.com/HankHuang0516/EClaw/issues/2597)) ([21aedc7](https://github.com/HankHuang0516/EClaw/commit/21aedc7eebc7a2839e340136f38dfdfd4dabb9dc))
* **avatar-petdx:** preserve descriptor across transient API failures (flicker) ([#2625](https://github.com/HankHuang0516/EClaw/issues/2625)) ([7b1c606](https://github.com/HankHuang0516/EClaw/commit/7b1c606514f7698d72ec95cf6c556e4043966186))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **wallpaper:** stop Android live wallpaper flashing default lobster on companion change ([#2629](https://github.com/HankHuang0516/EClaw/issues/2629)) ([8b4f66f](https://github.com/HankHuang0516/EClaw/commit/8b4f66fcb335bf43128f924b761b6337c817095b)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* **community:** 1-click chat button on bot cards + utm tagging ([#2610](https://github.com/HankHuang0516/EClaw/issues/2610)) ([eee97b0](https://github.com/HankHuang0516/EClaw/commit/eee97b0e2e4e74945ec24f218a69a52800b97a66))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* **portal:** add entity selector to petdx-browser ([#2602](https://github.com/HankHuang0516/EClaw/issues/2602)) ([3fa067e](https://github.com/HankHuang0516/EClaw/commit/3fa067e00b38829b48a37cecd33ee81a9a1122d9))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **companion:** bridge crafter-station/petdex gallery (1784 pets) ([#2601](https://github.com/HankHuang0516/EClaw/issues/2601)) ([2e245be](https://github.com/HankHuang0516/EClaw/commit/2e245bea6dd47ea7361b927d389188a3c23b6bb3))
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **avatar:** petdx render on card-holder my-cards (Phase 1b) ([#2621](https://github.com/HankHuang0516/EClaw/issues/2621)) ([f78ba8b](https://github.com/HankHuang0516/EClaw/commit/f78ba8b18acc426936ab6d8a82ca7541effea00d))
* **avatar:** petdx render on dashboard entity grid / org chart / bindings (Phase 1b) ([#2622](https://github.com/HankHuang0516/EClaw/issues/2622)) ([f417749](https://github.com/HankHuang0516/EClaw/commit/f41774914451048e8cd76e9ae30416a0642e173b)), closes [#2620](https://github.com/HankHuang0516/EClaw/issues/2620) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621)
* **avatar:** petdx render on kanban auto-assign / pulse / comment avatars (Phase 1b) ([#2624](https://github.com/HankHuang0516/EClaw/issues/2624)) ([6bff5f8](https://github.com/HankHuang0516/EClaw/commit/6bff5f80440d0bd91a6b1721cde9478d685c4d46))
* **avatar:** petdx render on mission skill/rule/soul entity dialogs (Phase 1b) ([#2623](https://github.com/HankHuang0516/EClaw/issues/2623)) ([129327b](https://github.com/HankHuang0516/EClaw/commit/129327bc7b91056659f1ab7e8d5e3f5260d951fb))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **avatar:** render selected petdx companion in chat avatars ([#2620](https://github.com/HankHuang0516/EClaw/issues/2620)) ([0bdd046](https://github.com/HankHuang0516/EClaw/commit/0bdd046fe1b1c428e32edda366ff112c08927f4c))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **share-chat:** twitter card + per-bot og:image/twitter:* in SSR ([#2609](https://github.com/HankHuang0516/EClaw/issues/2609)) ([6cdc853](https://github.com/HankHuang0516/EClaw/commit/6cdc853dc884cdb95bd47214942768981f218ae0))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))
* **settings:** wire petdx avatar into channel-account chips ([#2626](https://github.com/HankHuang0516/EClaw/issues/2626)) ([88aec77](https://github.com/HankHuang0516/EClaw/commit/88aec772628c240e97b336bb5820892ad632d1ae))
* **files:** wire petdx avatar into entity filter & per-file badges ([#2627](https://github.com/HankHuang0516/EClaw/issues/2627)) ([5b3e5cc](https://github.com/HankHuang0516/EClaw/commit/5b3e5cc542d9da69bb4e92500fd03a542ea33f00))
* **mindmap:** wrap hardcoded zh-TW UI strings with i18n t() ([#2607](https://github.com/HankHuang0516/EClaw/issues/2607)) ([166af87](https://github.com/HankHuang0516/EClaw/commit/166af8772b2121a24aaf34a83b3de970e9b3b571)), closes [#2606](https://github.com/HankHuang0516/EClaw/issues/2606)

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-12)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **petdx:** drop dark-grey loading placeholder + preload sprite WEBP ([#2628](https://github.com/HankHuang0516/EClaw/issues/2628)) ([59cef38](https://github.com/HankHuang0516/EClaw/commit/59cef387bd69ca99d7d15c86a1364856d3849ad8)), closes [#1a1a1a](https://github.com/HankHuang0516/EClaw/issues/1a1a1a)
* **entities:** expose botSecret to owner so wallpaper service can poll companions ([#2615](https://github.com/HankHuang0516/EClaw/issues/2615)) ([04470fc](https://github.com/HankHuang0516/EClaw/commit/04470fce8f8c3fce2b1ba8b243e776606f107502))
* **rental:** expose owner_public_code in marketplace so plaza CTA can route ([#2616](https://github.com/HankHuang0516/EClaw/issues/2616)) ([4d1372f](https://github.com/HankHuang0516/EClaw/commit/4d1372f717d93cab65543e87c852e74e9fb67071)), closes [#2610](https://github.com/HankHuang0516/EClaw/issues/2610)
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **wallpaper:** off-load spritesheet fetch to IO so per-petdx sprites actually render ([#2618](https://github.com/HankHuang0516/EClaw/issues/2618)) ([61b832c](https://github.com/HankHuang0516/EClaw/commit/61b832c9fa8a1d0caab810ccc942d85c63349267)), closes [#2615](https://github.com/HankHuang0516/EClaw/issues/2615) [#2577](https://github.com/HankHuang0516/EClaw/issues/2577)
* **i18n:** positional format specifiers for feedback_result_logs (7 locales) ([#2597](https://github.com/HankHuang0516/EClaw/issues/2597)) ([21aedc7](https://github.com/HankHuang0516/EClaw/commit/21aedc7eebc7a2839e340136f38dfdfd4dabb9dc))
* **avatar-petdx:** preserve descriptor across transient API failures (flicker) ([#2625](https://github.com/HankHuang0516/EClaw/issues/2625)) ([7b1c606](https://github.com/HankHuang0516/EClaw/commit/7b1c606514f7698d72ec95cf6c556e4043966186))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **wallpaper:** stop Android live wallpaper flashing default lobster on companion change ([#2629](https://github.com/HankHuang0516/EClaw/issues/2629)) ([8b4f66f](https://github.com/HankHuang0516/EClaw/commit/8b4f66fcb335bf43128f924b761b6337c817095b)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* **community:** 1-click chat button on bot cards + utm tagging ([#2610](https://github.com/HankHuang0516/EClaw/issues/2610)) ([eee97b0](https://github.com/HankHuang0516/EClaw/commit/eee97b0e2e4e74945ec24f218a69a52800b97a66))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* **portal:** add entity selector to petdx-browser ([#2602](https://github.com/HankHuang0516/EClaw/issues/2602)) ([3fa067e](https://github.com/HankHuang0516/EClaw/commit/3fa067e00b38829b48a37cecd33ee81a9a1122d9))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **companion:** bridge crafter-station/petdex gallery (1784 pets) ([#2601](https://github.com/HankHuang0516/EClaw/issues/2601)) ([2e245be](https://github.com/HankHuang0516/EClaw/commit/2e245bea6dd47ea7361b927d389188a3c23b6bb3))
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **avatar:** petdx render on card-holder my-cards (Phase 1b) ([#2621](https://github.com/HankHuang0516/EClaw/issues/2621)) ([f78ba8b](https://github.com/HankHuang0516/EClaw/commit/f78ba8b18acc426936ab6d8a82ca7541effea00d))
* **avatar:** petdx render on dashboard entity grid / org chart / bindings (Phase 1b) ([#2622](https://github.com/HankHuang0516/EClaw/issues/2622)) ([f417749](https://github.com/HankHuang0516/EClaw/commit/f41774914451048e8cd76e9ae30416a0642e173b)), closes [#2620](https://github.com/HankHuang0516/EClaw/issues/2620) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621)
* **avatar:** petdx render on kanban auto-assign / pulse / comment avatars (Phase 1b) ([#2624](https://github.com/HankHuang0516/EClaw/issues/2624)) ([6bff5f8](https://github.com/HankHuang0516/EClaw/commit/6bff5f80440d0bd91a6b1721cde9478d685c4d46))
* **avatar:** petdx render on mission skill/rule/soul entity dialogs (Phase 1b) ([#2623](https://github.com/HankHuang0516/EClaw/issues/2623)) ([129327b](https://github.com/HankHuang0516/EClaw/commit/129327bc7b91056659f1ab7e8d5e3f5260d951fb))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **avatar:** render selected petdx companion in chat avatars ([#2620](https://github.com/HankHuang0516/EClaw/issues/2620)) ([0bdd046](https://github.com/HankHuang0516/EClaw/commit/0bdd046fe1b1c428e32edda366ff112c08927f4c))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **share-chat:** twitter card + per-bot og:image/twitter:* in SSR ([#2609](https://github.com/HankHuang0516/EClaw/issues/2609)) ([6cdc853](https://github.com/HankHuang0516/EClaw/commit/6cdc853dc884cdb95bd47214942768981f218ae0))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))
* **settings:** wire petdx avatar into channel-account chips ([#2626](https://github.com/HankHuang0516/EClaw/issues/2626)) ([88aec77](https://github.com/HankHuang0516/EClaw/commit/88aec772628c240e97b336bb5820892ad632d1ae))
* **files:** wire petdx avatar into entity filter & per-file badges ([#2627](https://github.com/HankHuang0516/EClaw/issues/2627)) ([5b3e5cc](https://github.com/HankHuang0516/EClaw/commit/5b3e5cc542d9da69bb4e92500fd03a542ea33f00))
* **mindmap:** wrap hardcoded zh-TW UI strings with i18n t() ([#2607](https://github.com/HankHuang0516/EClaw/issues/2607)) ([166af87](https://github.com/HankHuang0516/EClaw/commit/166af8772b2121a24aaf34a83b3de970e9b3b571)), closes [#2606](https://github.com/HankHuang0516/EClaw/issues/2606)

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-12)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **petdx:** drop dark-grey loading placeholder + preload sprite WEBP ([#2628](https://github.com/HankHuang0516/EClaw/issues/2628)) ([59cef38](https://github.com/HankHuang0516/EClaw/commit/59cef387bd69ca99d7d15c86a1364856d3849ad8)), closes [#1a1a1a](https://github.com/HankHuang0516/EClaw/issues/1a1a1a)
* **entities:** expose botSecret to owner so wallpaper service can poll companions ([#2615](https://github.com/HankHuang0516/EClaw/issues/2615)) ([04470fc](https://github.com/HankHuang0516/EClaw/commit/04470fce8f8c3fce2b1ba8b243e776606f107502))
* **rental:** expose owner_public_code in marketplace so plaza CTA can route ([#2616](https://github.com/HankHuang0516/EClaw/issues/2616)) ([4d1372f](https://github.com/HankHuang0516/EClaw/commit/4d1372f717d93cab65543e87c852e74e9fb67071)), closes [#2610](https://github.com/HankHuang0516/EClaw/issues/2610)
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **wallpaper:** off-load spritesheet fetch to IO so per-petdx sprites actually render ([#2618](https://github.com/HankHuang0516/EClaw/issues/2618)) ([61b832c](https://github.com/HankHuang0516/EClaw/commit/61b832c9fa8a1d0caab810ccc942d85c63349267)), closes [#2615](https://github.com/HankHuang0516/EClaw/issues/2615) [#2577](https://github.com/HankHuang0516/EClaw/issues/2577)
* **i18n:** positional format specifiers for feedback_result_logs (7 locales) ([#2597](https://github.com/HankHuang0516/EClaw/issues/2597)) ([21aedc7](https://github.com/HankHuang0516/EClaw/commit/21aedc7eebc7a2839e340136f38dfdfd4dabb9dc))
* **avatar-petdx:** preserve descriptor across transient API failures (flicker) ([#2625](https://github.com/HankHuang0516/EClaw/issues/2625)) ([7b1c606](https://github.com/HankHuang0516/EClaw/commit/7b1c606514f7698d72ec95cf6c556e4043966186))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* **community:** 1-click chat button on bot cards + utm tagging ([#2610](https://github.com/HankHuang0516/EClaw/issues/2610)) ([eee97b0](https://github.com/HankHuang0516/EClaw/commit/eee97b0e2e4e74945ec24f218a69a52800b97a66))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* **portal:** add entity selector to petdx-browser ([#2602](https://github.com/HankHuang0516/EClaw/issues/2602)) ([3fa067e](https://github.com/HankHuang0516/EClaw/commit/3fa067e00b38829b48a37cecd33ee81a9a1122d9))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **companion:** bridge crafter-station/petdex gallery (1784 pets) ([#2601](https://github.com/HankHuang0516/EClaw/issues/2601)) ([2e245be](https://github.com/HankHuang0516/EClaw/commit/2e245bea6dd47ea7361b927d389188a3c23b6bb3))
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **avatar:** petdx render on card-holder my-cards (Phase 1b) ([#2621](https://github.com/HankHuang0516/EClaw/issues/2621)) ([f78ba8b](https://github.com/HankHuang0516/EClaw/commit/f78ba8b18acc426936ab6d8a82ca7541effea00d))
* **avatar:** petdx render on dashboard entity grid / org chart / bindings (Phase 1b) ([#2622](https://github.com/HankHuang0516/EClaw/issues/2622)) ([f417749](https://github.com/HankHuang0516/EClaw/commit/f41774914451048e8cd76e9ae30416a0642e173b)), closes [#2620](https://github.com/HankHuang0516/EClaw/issues/2620) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621)
* **avatar:** petdx render on kanban auto-assign / pulse / comment avatars (Phase 1b) ([#2624](https://github.com/HankHuang0516/EClaw/issues/2624)) ([6bff5f8](https://github.com/HankHuang0516/EClaw/commit/6bff5f80440d0bd91a6b1721cde9478d685c4d46))
* **avatar:** petdx render on mission skill/rule/soul entity dialogs (Phase 1b) ([#2623](https://github.com/HankHuang0516/EClaw/issues/2623)) ([129327b](https://github.com/HankHuang0516/EClaw/commit/129327bc7b91056659f1ab7e8d5e3f5260d951fb))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **avatar:** render selected petdx companion in chat avatars ([#2620](https://github.com/HankHuang0516/EClaw/issues/2620)) ([0bdd046](https://github.com/HankHuang0516/EClaw/commit/0bdd046fe1b1c428e32edda366ff112c08927f4c))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **share-chat:** twitter card + per-bot og:image/twitter:* in SSR ([#2609](https://github.com/HankHuang0516/EClaw/issues/2609)) ([6cdc853](https://github.com/HankHuang0516/EClaw/commit/6cdc853dc884cdb95bd47214942768981f218ae0))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))
* **settings:** wire petdx avatar into channel-account chips ([#2626](https://github.com/HankHuang0516/EClaw/issues/2626)) ([88aec77](https://github.com/HankHuang0516/EClaw/commit/88aec772628c240e97b336bb5820892ad632d1ae))
* **files:** wire petdx avatar into entity filter & per-file badges ([#2627](https://github.com/HankHuang0516/EClaw/issues/2627)) ([5b3e5cc](https://github.com/HankHuang0516/EClaw/commit/5b3e5cc542d9da69bb4e92500fd03a542ea33f00))
* **mindmap:** wrap hardcoded zh-TW UI strings with i18n t() ([#2607](https://github.com/HankHuang0516/EClaw/issues/2607)) ([166af87](https://github.com/HankHuang0516/EClaw/commit/166af8772b2121a24aaf34a83b3de970e9b3b571)), closes [#2606](https://github.com/HankHuang0516/EClaw/issues/2606)

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-12)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **entities:** expose botSecret to owner so wallpaper service can poll companions ([#2615](https://github.com/HankHuang0516/EClaw/issues/2615)) ([04470fc](https://github.com/HankHuang0516/EClaw/commit/04470fce8f8c3fce2b1ba8b243e776606f107502))
* **rental:** expose owner_public_code in marketplace so plaza CTA can route ([#2616](https://github.com/HankHuang0516/EClaw/issues/2616)) ([4d1372f](https://github.com/HankHuang0516/EClaw/commit/4d1372f717d93cab65543e87c852e74e9fb67071)), closes [#2610](https://github.com/HankHuang0516/EClaw/issues/2610)
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **wallpaper:** off-load spritesheet fetch to IO so per-petdx sprites actually render ([#2618](https://github.com/HankHuang0516/EClaw/issues/2618)) ([61b832c](https://github.com/HankHuang0516/EClaw/commit/61b832c9fa8a1d0caab810ccc942d85c63349267)), closes [#2615](https://github.com/HankHuang0516/EClaw/issues/2615) [#2577](https://github.com/HankHuang0516/EClaw/issues/2577)
* **i18n:** positional format specifiers for feedback_result_logs (7 locales) ([#2597](https://github.com/HankHuang0516/EClaw/issues/2597)) ([21aedc7](https://github.com/HankHuang0516/EClaw/commit/21aedc7eebc7a2839e340136f38dfdfd4dabb9dc))
* **avatar-petdx:** preserve descriptor across transient API failures (flicker) ([#2625](https://github.com/HankHuang0516/EClaw/issues/2625)) ([7b1c606](https://github.com/HankHuang0516/EClaw/commit/7b1c606514f7698d72ec95cf6c556e4043966186))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* **community:** 1-click chat button on bot cards + utm tagging ([#2610](https://github.com/HankHuang0516/EClaw/issues/2610)) ([eee97b0](https://github.com/HankHuang0516/EClaw/commit/eee97b0e2e4e74945ec24f218a69a52800b97a66))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* **portal:** add entity selector to petdx-browser ([#2602](https://github.com/HankHuang0516/EClaw/issues/2602)) ([3fa067e](https://github.com/HankHuang0516/EClaw/commit/3fa067e00b38829b48a37cecd33ee81a9a1122d9))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **companion:** bridge crafter-station/petdex gallery (1784 pets) ([#2601](https://github.com/HankHuang0516/EClaw/issues/2601)) ([2e245be](https://github.com/HankHuang0516/EClaw/commit/2e245bea6dd47ea7361b927d389188a3c23b6bb3))
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **avatar:** petdx render on card-holder my-cards (Phase 1b) ([#2621](https://github.com/HankHuang0516/EClaw/issues/2621)) ([f78ba8b](https://github.com/HankHuang0516/EClaw/commit/f78ba8b18acc426936ab6d8a82ca7541effea00d))
* **avatar:** petdx render on dashboard entity grid / org chart / bindings (Phase 1b) ([#2622](https://github.com/HankHuang0516/EClaw/issues/2622)) ([f417749](https://github.com/HankHuang0516/EClaw/commit/f41774914451048e8cd76e9ae30416a0642e173b)), closes [#2620](https://github.com/HankHuang0516/EClaw/issues/2620) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621)
* **avatar:** petdx render on kanban auto-assign / pulse / comment avatars (Phase 1b) ([#2624](https://github.com/HankHuang0516/EClaw/issues/2624)) ([6bff5f8](https://github.com/HankHuang0516/EClaw/commit/6bff5f80440d0bd91a6b1721cde9478d685c4d46))
* **avatar:** petdx render on mission skill/rule/soul entity dialogs (Phase 1b) ([#2623](https://github.com/HankHuang0516/EClaw/issues/2623)) ([129327b](https://github.com/HankHuang0516/EClaw/commit/129327bc7b91056659f1ab7e8d5e3f5260d951fb))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **avatar:** render selected petdx companion in chat avatars ([#2620](https://github.com/HankHuang0516/EClaw/issues/2620)) ([0bdd046](https://github.com/HankHuang0516/EClaw/commit/0bdd046fe1b1c428e32edda366ff112c08927f4c))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **share-chat:** twitter card + per-bot og:image/twitter:* in SSR ([#2609](https://github.com/HankHuang0516/EClaw/issues/2609)) ([6cdc853](https://github.com/HankHuang0516/EClaw/commit/6cdc853dc884cdb95bd47214942768981f218ae0))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))
* **settings:** wire petdx avatar into channel-account chips ([#2626](https://github.com/HankHuang0516/EClaw/issues/2626)) ([88aec77](https://github.com/HankHuang0516/EClaw/commit/88aec772628c240e97b336bb5820892ad632d1ae))
* **files:** wire petdx avatar into entity filter & per-file badges ([#2627](https://github.com/HankHuang0516/EClaw/issues/2627)) ([5b3e5cc](https://github.com/HankHuang0516/EClaw/commit/5b3e5cc542d9da69bb4e92500fd03a542ea33f00))
* **mindmap:** wrap hardcoded zh-TW UI strings with i18n t() ([#2607](https://github.com/HankHuang0516/EClaw/issues/2607)) ([166af87](https://github.com/HankHuang0516/EClaw/commit/166af8772b2121a24aaf34a83b3de970e9b3b571)), closes [#2606](https://github.com/HankHuang0516/EClaw/issues/2606)

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-12)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **entities:** expose botSecret to owner so wallpaper service can poll companions ([#2615](https://github.com/HankHuang0516/EClaw/issues/2615)) ([04470fc](https://github.com/HankHuang0516/EClaw/commit/04470fce8f8c3fce2b1ba8b243e776606f107502))
* **rental:** expose owner_public_code in marketplace so plaza CTA can route ([#2616](https://github.com/HankHuang0516/EClaw/issues/2616)) ([4d1372f](https://github.com/HankHuang0516/EClaw/commit/4d1372f717d93cab65543e87c852e74e9fb67071)), closes [#2610](https://github.com/HankHuang0516/EClaw/issues/2610)
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **wallpaper:** off-load spritesheet fetch to IO so per-petdx sprites actually render ([#2618](https://github.com/HankHuang0516/EClaw/issues/2618)) ([61b832c](https://github.com/HankHuang0516/EClaw/commit/61b832c9fa8a1d0caab810ccc942d85c63349267)), closes [#2615](https://github.com/HankHuang0516/EClaw/issues/2615) [#2577](https://github.com/HankHuang0516/EClaw/issues/2577)
* **i18n:** positional format specifiers for feedback_result_logs (7 locales) ([#2597](https://github.com/HankHuang0516/EClaw/issues/2597)) ([21aedc7](https://github.com/HankHuang0516/EClaw/commit/21aedc7eebc7a2839e340136f38dfdfd4dabb9dc))
* **avatar-petdx:** preserve descriptor across transient API failures (flicker) ([#2625](https://github.com/HankHuang0516/EClaw/issues/2625)) ([7b1c606](https://github.com/HankHuang0516/EClaw/commit/7b1c606514f7698d72ec95cf6c556e4043966186))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* **community:** 1-click chat button on bot cards + utm tagging ([#2610](https://github.com/HankHuang0516/EClaw/issues/2610)) ([eee97b0](https://github.com/HankHuang0516/EClaw/commit/eee97b0e2e4e74945ec24f218a69a52800b97a66))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* **portal:** add entity selector to petdx-browser ([#2602](https://github.com/HankHuang0516/EClaw/issues/2602)) ([3fa067e](https://github.com/HankHuang0516/EClaw/commit/3fa067e00b38829b48a37cecd33ee81a9a1122d9))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **companion:** bridge crafter-station/petdex gallery (1784 pets) ([#2601](https://github.com/HankHuang0516/EClaw/issues/2601)) ([2e245be](https://github.com/HankHuang0516/EClaw/commit/2e245bea6dd47ea7361b927d389188a3c23b6bb3))
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **avatar:** petdx render on card-holder my-cards (Phase 1b) ([#2621](https://github.com/HankHuang0516/EClaw/issues/2621)) ([f78ba8b](https://github.com/HankHuang0516/EClaw/commit/f78ba8b18acc426936ab6d8a82ca7541effea00d))
* **avatar:** petdx render on dashboard entity grid / org chart / bindings (Phase 1b) ([#2622](https://github.com/HankHuang0516/EClaw/issues/2622)) ([f417749](https://github.com/HankHuang0516/EClaw/commit/f41774914451048e8cd76e9ae30416a0642e173b)), closes [#2620](https://github.com/HankHuang0516/EClaw/issues/2620) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621)
* **avatar:** petdx render on kanban auto-assign / pulse / comment avatars (Phase 1b) ([#2624](https://github.com/HankHuang0516/EClaw/issues/2624)) ([6bff5f8](https://github.com/HankHuang0516/EClaw/commit/6bff5f80440d0bd91a6b1721cde9478d685c4d46))
* **avatar:** petdx render on mission skill/rule/soul entity dialogs (Phase 1b) ([#2623](https://github.com/HankHuang0516/EClaw/issues/2623)) ([129327b](https://github.com/HankHuang0516/EClaw/commit/129327bc7b91056659f1ab7e8d5e3f5260d951fb))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **avatar:** render selected petdx companion in chat avatars ([#2620](https://github.com/HankHuang0516/EClaw/issues/2620)) ([0bdd046](https://github.com/HankHuang0516/EClaw/commit/0bdd046fe1b1c428e32edda366ff112c08927f4c))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **share-chat:** twitter card + per-bot og:image/twitter:* in SSR ([#2609](https://github.com/HankHuang0516/EClaw/issues/2609)) ([6cdc853](https://github.com/HankHuang0516/EClaw/commit/6cdc853dc884cdb95bd47214942768981f218ae0))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))
* **settings:** wire petdx avatar into channel-account chips ([#2626](https://github.com/HankHuang0516/EClaw/issues/2626)) ([88aec77](https://github.com/HankHuang0516/EClaw/commit/88aec772628c240e97b336bb5820892ad632d1ae))
* **mindmap:** wrap hardcoded zh-TW UI strings with i18n t() ([#2607](https://github.com/HankHuang0516/EClaw/issues/2607)) ([166af87](https://github.com/HankHuang0516/EClaw/commit/166af8772b2121a24aaf34a83b3de970e9b3b571)), closes [#2606](https://github.com/HankHuang0516/EClaw/issues/2606)

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-12)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **entities:** expose botSecret to owner so wallpaper service can poll companions ([#2615](https://github.com/HankHuang0516/EClaw/issues/2615)) ([04470fc](https://github.com/HankHuang0516/EClaw/commit/04470fce8f8c3fce2b1ba8b243e776606f107502))
* **rental:** expose owner_public_code in marketplace so plaza CTA can route ([#2616](https://github.com/HankHuang0516/EClaw/issues/2616)) ([4d1372f](https://github.com/HankHuang0516/EClaw/commit/4d1372f717d93cab65543e87c852e74e9fb67071)), closes [#2610](https://github.com/HankHuang0516/EClaw/issues/2610)
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **wallpaper:** off-load spritesheet fetch to IO so per-petdx sprites actually render ([#2618](https://github.com/HankHuang0516/EClaw/issues/2618)) ([61b832c](https://github.com/HankHuang0516/EClaw/commit/61b832c9fa8a1d0caab810ccc942d85c63349267)), closes [#2615](https://github.com/HankHuang0516/EClaw/issues/2615) [#2577](https://github.com/HankHuang0516/EClaw/issues/2577)
* **i18n:** positional format specifiers for feedback_result_logs (7 locales) ([#2597](https://github.com/HankHuang0516/EClaw/issues/2597)) ([21aedc7](https://github.com/HankHuang0516/EClaw/commit/21aedc7eebc7a2839e340136f38dfdfd4dabb9dc))
* **avatar-petdx:** preserve descriptor across transient API failures (flicker) ([#2625](https://github.com/HankHuang0516/EClaw/issues/2625)) ([7b1c606](https://github.com/HankHuang0516/EClaw/commit/7b1c606514f7698d72ec95cf6c556e4043966186))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* **community:** 1-click chat button on bot cards + utm tagging ([#2610](https://github.com/HankHuang0516/EClaw/issues/2610)) ([eee97b0](https://github.com/HankHuang0516/EClaw/commit/eee97b0e2e4e74945ec24f218a69a52800b97a66))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* **portal:** add entity selector to petdx-browser ([#2602](https://github.com/HankHuang0516/EClaw/issues/2602)) ([3fa067e](https://github.com/HankHuang0516/EClaw/commit/3fa067e00b38829b48a37cecd33ee81a9a1122d9))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **companion:** bridge crafter-station/petdex gallery (1784 pets) ([#2601](https://github.com/HankHuang0516/EClaw/issues/2601)) ([2e245be](https://github.com/HankHuang0516/EClaw/commit/2e245bea6dd47ea7361b927d389188a3c23b6bb3))
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **avatar:** petdx render on card-holder my-cards (Phase 1b) ([#2621](https://github.com/HankHuang0516/EClaw/issues/2621)) ([f78ba8b](https://github.com/HankHuang0516/EClaw/commit/f78ba8b18acc426936ab6d8a82ca7541effea00d))
* **avatar:** petdx render on dashboard entity grid / org chart / bindings (Phase 1b) ([#2622](https://github.com/HankHuang0516/EClaw/issues/2622)) ([f417749](https://github.com/HankHuang0516/EClaw/commit/f41774914451048e8cd76e9ae30416a0642e173b)), closes [#2620](https://github.com/HankHuang0516/EClaw/issues/2620) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621)
* **avatar:** petdx render on kanban auto-assign / pulse / comment avatars (Phase 1b) ([#2624](https://github.com/HankHuang0516/EClaw/issues/2624)) ([6bff5f8](https://github.com/HankHuang0516/EClaw/commit/6bff5f80440d0bd91a6b1721cde9478d685c4d46))
* **avatar:** petdx render on mission skill/rule/soul entity dialogs (Phase 1b) ([#2623](https://github.com/HankHuang0516/EClaw/issues/2623)) ([129327b](https://github.com/HankHuang0516/EClaw/commit/129327bc7b91056659f1ab7e8d5e3f5260d951fb))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **avatar:** render selected petdx companion in chat avatars ([#2620](https://github.com/HankHuang0516/EClaw/issues/2620)) ([0bdd046](https://github.com/HankHuang0516/EClaw/commit/0bdd046fe1b1c428e32edda366ff112c08927f4c))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **share-chat:** twitter card + per-bot og:image/twitter:* in SSR ([#2609](https://github.com/HankHuang0516/EClaw/issues/2609)) ([6cdc853](https://github.com/HankHuang0516/EClaw/commit/6cdc853dc884cdb95bd47214942768981f218ae0))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))
* **mindmap:** wrap hardcoded zh-TW UI strings with i18n t() ([#2607](https://github.com/HankHuang0516/EClaw/issues/2607)) ([166af87](https://github.com/HankHuang0516/EClaw/commit/166af8772b2121a24aaf34a83b3de970e9b3b571)), closes [#2606](https://github.com/HankHuang0516/EClaw/issues/2606)

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-12)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **entities:** expose botSecret to owner so wallpaper service can poll companions ([#2615](https://github.com/HankHuang0516/EClaw/issues/2615)) ([04470fc](https://github.com/HankHuang0516/EClaw/commit/04470fce8f8c3fce2b1ba8b243e776606f107502))
* **rental:** expose owner_public_code in marketplace so plaza CTA can route ([#2616](https://github.com/HankHuang0516/EClaw/issues/2616)) ([4d1372f](https://github.com/HankHuang0516/EClaw/commit/4d1372f717d93cab65543e87c852e74e9fb67071)), closes [#2610](https://github.com/HankHuang0516/EClaw/issues/2610)
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **wallpaper:** off-load spritesheet fetch to IO so per-petdx sprites actually render ([#2618](https://github.com/HankHuang0516/EClaw/issues/2618)) ([61b832c](https://github.com/HankHuang0516/EClaw/commit/61b832c9fa8a1d0caab810ccc942d85c63349267)), closes [#2615](https://github.com/HankHuang0516/EClaw/issues/2615) [#2577](https://github.com/HankHuang0516/EClaw/issues/2577)
* **i18n:** positional format specifiers for feedback_result_logs (7 locales) ([#2597](https://github.com/HankHuang0516/EClaw/issues/2597)) ([21aedc7](https://github.com/HankHuang0516/EClaw/commit/21aedc7eebc7a2839e340136f38dfdfd4dabb9dc))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* **community:** 1-click chat button on bot cards + utm tagging ([#2610](https://github.com/HankHuang0516/EClaw/issues/2610)) ([eee97b0](https://github.com/HankHuang0516/EClaw/commit/eee97b0e2e4e74945ec24f218a69a52800b97a66))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* **portal:** add entity selector to petdx-browser ([#2602](https://github.com/HankHuang0516/EClaw/issues/2602)) ([3fa067e](https://github.com/HankHuang0516/EClaw/commit/3fa067e00b38829b48a37cecd33ee81a9a1122d9))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **companion:** bridge crafter-station/petdex gallery (1784 pets) ([#2601](https://github.com/HankHuang0516/EClaw/issues/2601)) ([2e245be](https://github.com/HankHuang0516/EClaw/commit/2e245bea6dd47ea7361b927d389188a3c23b6bb3))
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **avatar:** petdx render on card-holder my-cards (Phase 1b) ([#2621](https://github.com/HankHuang0516/EClaw/issues/2621)) ([f78ba8b](https://github.com/HankHuang0516/EClaw/commit/f78ba8b18acc426936ab6d8a82ca7541effea00d))
* **avatar:** petdx render on dashboard entity grid / org chart / bindings (Phase 1b) ([#2622](https://github.com/HankHuang0516/EClaw/issues/2622)) ([f417749](https://github.com/HankHuang0516/EClaw/commit/f41774914451048e8cd76e9ae30416a0642e173b)), closes [#2620](https://github.com/HankHuang0516/EClaw/issues/2620) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621)
* **avatar:** petdx render on kanban auto-assign / pulse / comment avatars (Phase 1b) ([#2624](https://github.com/HankHuang0516/EClaw/issues/2624)) ([6bff5f8](https://github.com/HankHuang0516/EClaw/commit/6bff5f80440d0bd91a6b1721cde9478d685c4d46))
* **avatar:** petdx render on mission skill/rule/soul entity dialogs (Phase 1b) ([#2623](https://github.com/HankHuang0516/EClaw/issues/2623)) ([129327b](https://github.com/HankHuang0516/EClaw/commit/129327bc7b91056659f1ab7e8d5e3f5260d951fb))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **avatar:** render selected petdx companion in chat avatars ([#2620](https://github.com/HankHuang0516/EClaw/issues/2620)) ([0bdd046](https://github.com/HankHuang0516/EClaw/commit/0bdd046fe1b1c428e32edda366ff112c08927f4c))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **share-chat:** twitter card + per-bot og:image/twitter:* in SSR ([#2609](https://github.com/HankHuang0516/EClaw/issues/2609)) ([6cdc853](https://github.com/HankHuang0516/EClaw/commit/6cdc853dc884cdb95bd47214942768981f218ae0))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))
* **mindmap:** wrap hardcoded zh-TW UI strings with i18n t() ([#2607](https://github.com/HankHuang0516/EClaw/issues/2607)) ([166af87](https://github.com/HankHuang0516/EClaw/commit/166af8772b2121a24aaf34a83b3de970e9b3b571)), closes [#2606](https://github.com/HankHuang0516/EClaw/issues/2606)

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-12)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **entities:** expose botSecret to owner so wallpaper service can poll companions ([#2615](https://github.com/HankHuang0516/EClaw/issues/2615)) ([04470fc](https://github.com/HankHuang0516/EClaw/commit/04470fce8f8c3fce2b1ba8b243e776606f107502))
* **rental:** expose owner_public_code in marketplace so plaza CTA can route ([#2616](https://github.com/HankHuang0516/EClaw/issues/2616)) ([4d1372f](https://github.com/HankHuang0516/EClaw/commit/4d1372f717d93cab65543e87c852e74e9fb67071)), closes [#2610](https://github.com/HankHuang0516/EClaw/issues/2610)
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **wallpaper:** off-load spritesheet fetch to IO so per-petdx sprites actually render ([#2618](https://github.com/HankHuang0516/EClaw/issues/2618)) ([61b832c](https://github.com/HankHuang0516/EClaw/commit/61b832c9fa8a1d0caab810ccc942d85c63349267)), closes [#2615](https://github.com/HankHuang0516/EClaw/issues/2615) [#2577](https://github.com/HankHuang0516/EClaw/issues/2577)
* **i18n:** positional format specifiers for feedback_result_logs (7 locales) ([#2597](https://github.com/HankHuang0516/EClaw/issues/2597)) ([21aedc7](https://github.com/HankHuang0516/EClaw/commit/21aedc7eebc7a2839e340136f38dfdfd4dabb9dc))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* **community:** 1-click chat button on bot cards + utm tagging ([#2610](https://github.com/HankHuang0516/EClaw/issues/2610)) ([eee97b0](https://github.com/HankHuang0516/EClaw/commit/eee97b0e2e4e74945ec24f218a69a52800b97a66))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* **portal:** add entity selector to petdx-browser ([#2602](https://github.com/HankHuang0516/EClaw/issues/2602)) ([3fa067e](https://github.com/HankHuang0516/EClaw/commit/3fa067e00b38829b48a37cecd33ee81a9a1122d9))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **companion:** bridge crafter-station/petdex gallery (1784 pets) ([#2601](https://github.com/HankHuang0516/EClaw/issues/2601)) ([2e245be](https://github.com/HankHuang0516/EClaw/commit/2e245bea6dd47ea7361b927d389188a3c23b6bb3))
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **avatar:** petdx render on card-holder my-cards (Phase 1b) ([#2621](https://github.com/HankHuang0516/EClaw/issues/2621)) ([f78ba8b](https://github.com/HankHuang0516/EClaw/commit/f78ba8b18acc426936ab6d8a82ca7541effea00d))
* **avatar:** petdx render on dashboard entity grid / org chart / bindings (Phase 1b) ([#2622](https://github.com/HankHuang0516/EClaw/issues/2622)) ([f417749](https://github.com/HankHuang0516/EClaw/commit/f41774914451048e8cd76e9ae30416a0642e173b)), closes [#2620](https://github.com/HankHuang0516/EClaw/issues/2620) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621)
* **avatar:** petdx render on mission skill/rule/soul entity dialogs (Phase 1b) ([#2623](https://github.com/HankHuang0516/EClaw/issues/2623)) ([129327b](https://github.com/HankHuang0516/EClaw/commit/129327bc7b91056659f1ab7e8d5e3f5260d951fb))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **avatar:** render selected petdx companion in chat avatars ([#2620](https://github.com/HankHuang0516/EClaw/issues/2620)) ([0bdd046](https://github.com/HankHuang0516/EClaw/commit/0bdd046fe1b1c428e32edda366ff112c08927f4c))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **share-chat:** twitter card + per-bot og:image/twitter:* in SSR ([#2609](https://github.com/HankHuang0516/EClaw/issues/2609)) ([6cdc853](https://github.com/HankHuang0516/EClaw/commit/6cdc853dc884cdb95bd47214942768981f218ae0))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))
* **mindmap:** wrap hardcoded zh-TW UI strings with i18n t() ([#2607](https://github.com/HankHuang0516/EClaw/issues/2607)) ([166af87](https://github.com/HankHuang0516/EClaw/commit/166af8772b2121a24aaf34a83b3de970e9b3b571)), closes [#2606](https://github.com/HankHuang0516/EClaw/issues/2606)

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-12)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **entities:** expose botSecret to owner so wallpaper service can poll companions ([#2615](https://github.com/HankHuang0516/EClaw/issues/2615)) ([04470fc](https://github.com/HankHuang0516/EClaw/commit/04470fce8f8c3fce2b1ba8b243e776606f107502))
* **rental:** expose owner_public_code in marketplace so plaza CTA can route ([#2616](https://github.com/HankHuang0516/EClaw/issues/2616)) ([4d1372f](https://github.com/HankHuang0516/EClaw/commit/4d1372f717d93cab65543e87c852e74e9fb67071)), closes [#2610](https://github.com/HankHuang0516/EClaw/issues/2610)
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **wallpaper:** off-load spritesheet fetch to IO so per-petdx sprites actually render ([#2618](https://github.com/HankHuang0516/EClaw/issues/2618)) ([61b832c](https://github.com/HankHuang0516/EClaw/commit/61b832c9fa8a1d0caab810ccc942d85c63349267)), closes [#2615](https://github.com/HankHuang0516/EClaw/issues/2615) [#2577](https://github.com/HankHuang0516/EClaw/issues/2577)
* **i18n:** positional format specifiers for feedback_result_logs (7 locales) ([#2597](https://github.com/HankHuang0516/EClaw/issues/2597)) ([21aedc7](https://github.com/HankHuang0516/EClaw/commit/21aedc7eebc7a2839e340136f38dfdfd4dabb9dc))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* **community:** 1-click chat button on bot cards + utm tagging ([#2610](https://github.com/HankHuang0516/EClaw/issues/2610)) ([eee97b0](https://github.com/HankHuang0516/EClaw/commit/eee97b0e2e4e74945ec24f218a69a52800b97a66))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* **portal:** add entity selector to petdx-browser ([#2602](https://github.com/HankHuang0516/EClaw/issues/2602)) ([3fa067e](https://github.com/HankHuang0516/EClaw/commit/3fa067e00b38829b48a37cecd33ee81a9a1122d9))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **companion:** bridge crafter-station/petdex gallery (1784 pets) ([#2601](https://github.com/HankHuang0516/EClaw/issues/2601)) ([2e245be](https://github.com/HankHuang0516/EClaw/commit/2e245bea6dd47ea7361b927d389188a3c23b6bb3))
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **avatar:** petdx render on card-holder my-cards (Phase 1b) ([#2621](https://github.com/HankHuang0516/EClaw/issues/2621)) ([f78ba8b](https://github.com/HankHuang0516/EClaw/commit/f78ba8b18acc426936ab6d8a82ca7541effea00d))
* **avatar:** petdx render on dashboard entity grid / org chart / bindings (Phase 1b) ([#2622](https://github.com/HankHuang0516/EClaw/issues/2622)) ([f417749](https://github.com/HankHuang0516/EClaw/commit/f41774914451048e8cd76e9ae30416a0642e173b)), closes [#2620](https://github.com/HankHuang0516/EClaw/issues/2620) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621) [#2621](https://github.com/HankHuang0516/EClaw/issues/2621)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **avatar:** render selected petdx companion in chat avatars ([#2620](https://github.com/HankHuang0516/EClaw/issues/2620)) ([0bdd046](https://github.com/HankHuang0516/EClaw/commit/0bdd046fe1b1c428e32edda366ff112c08927f4c))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **share-chat:** twitter card + per-bot og:image/twitter:* in SSR ([#2609](https://github.com/HankHuang0516/EClaw/issues/2609)) ([6cdc853](https://github.com/HankHuang0516/EClaw/commit/6cdc853dc884cdb95bd47214942768981f218ae0))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))
* **mindmap:** wrap hardcoded zh-TW UI strings with i18n t() ([#2607](https://github.com/HankHuang0516/EClaw/issues/2607)) ([166af87](https://github.com/HankHuang0516/EClaw/commit/166af8772b2121a24aaf34a83b3de970e9b3b571)), closes [#2606](https://github.com/HankHuang0516/EClaw/issues/2606)

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-12)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **entities:** expose botSecret to owner so wallpaper service can poll companions ([#2615](https://github.com/HankHuang0516/EClaw/issues/2615)) ([04470fc](https://github.com/HankHuang0516/EClaw/commit/04470fce8f8c3fce2b1ba8b243e776606f107502))
* **rental:** expose owner_public_code in marketplace so plaza CTA can route ([#2616](https://github.com/HankHuang0516/EClaw/issues/2616)) ([4d1372f](https://github.com/HankHuang0516/EClaw/commit/4d1372f717d93cab65543e87c852e74e9fb67071)), closes [#2610](https://github.com/HankHuang0516/EClaw/issues/2610)
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **wallpaper:** off-load spritesheet fetch to IO so per-petdx sprites actually render ([#2618](https://github.com/HankHuang0516/EClaw/issues/2618)) ([61b832c](https://github.com/HankHuang0516/EClaw/commit/61b832c9fa8a1d0caab810ccc942d85c63349267)), closes [#2615](https://github.com/HankHuang0516/EClaw/issues/2615) [#2577](https://github.com/HankHuang0516/EClaw/issues/2577)
* **i18n:** positional format specifiers for feedback_result_logs (7 locales) ([#2597](https://github.com/HankHuang0516/EClaw/issues/2597)) ([21aedc7](https://github.com/HankHuang0516/EClaw/commit/21aedc7eebc7a2839e340136f38dfdfd4dabb9dc))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* **community:** 1-click chat button on bot cards + utm tagging ([#2610](https://github.com/HankHuang0516/EClaw/issues/2610)) ([eee97b0](https://github.com/HankHuang0516/EClaw/commit/eee97b0e2e4e74945ec24f218a69a52800b97a66))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* **portal:** add entity selector to petdx-browser ([#2602](https://github.com/HankHuang0516/EClaw/issues/2602)) ([3fa067e](https://github.com/HankHuang0516/EClaw/commit/3fa067e00b38829b48a37cecd33ee81a9a1122d9))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **companion:** bridge crafter-station/petdex gallery (1784 pets) ([#2601](https://github.com/HankHuang0516/EClaw/issues/2601)) ([2e245be](https://github.com/HankHuang0516/EClaw/commit/2e245bea6dd47ea7361b927d389188a3c23b6bb3))
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **avatar:** petdx render on card-holder my-cards (Phase 1b) ([#2621](https://github.com/HankHuang0516/EClaw/issues/2621)) ([f78ba8b](https://github.com/HankHuang0516/EClaw/commit/f78ba8b18acc426936ab6d8a82ca7541effea00d))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **avatar:** render selected petdx companion in chat avatars ([#2620](https://github.com/HankHuang0516/EClaw/issues/2620)) ([0bdd046](https://github.com/HankHuang0516/EClaw/commit/0bdd046fe1b1c428e32edda366ff112c08927f4c))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **share-chat:** twitter card + per-bot og:image/twitter:* in SSR ([#2609](https://github.com/HankHuang0516/EClaw/issues/2609)) ([6cdc853](https://github.com/HankHuang0516/EClaw/commit/6cdc853dc884cdb95bd47214942768981f218ae0))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))
* **mindmap:** wrap hardcoded zh-TW UI strings with i18n t() ([#2607](https://github.com/HankHuang0516/EClaw/issues/2607)) ([166af87](https://github.com/HankHuang0516/EClaw/commit/166af8772b2121a24aaf34a83b3de970e9b3b571)), closes [#2606](https://github.com/HankHuang0516/EClaw/issues/2606)

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-12)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **entities:** expose botSecret to owner so wallpaper service can poll companions ([#2615](https://github.com/HankHuang0516/EClaw/issues/2615)) ([04470fc](https://github.com/HankHuang0516/EClaw/commit/04470fce8f8c3fce2b1ba8b243e776606f107502))
* **rental:** expose owner_public_code in marketplace so plaza CTA can route ([#2616](https://github.com/HankHuang0516/EClaw/issues/2616)) ([4d1372f](https://github.com/HankHuang0516/EClaw/commit/4d1372f717d93cab65543e87c852e74e9fb67071)), closes [#2610](https://github.com/HankHuang0516/EClaw/issues/2610)
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **wallpaper:** off-load spritesheet fetch to IO so per-petdx sprites actually render ([#2618](https://github.com/HankHuang0516/EClaw/issues/2618)) ([61b832c](https://github.com/HankHuang0516/EClaw/commit/61b832c9fa8a1d0caab810ccc942d85c63349267)), closes [#2615](https://github.com/HankHuang0516/EClaw/issues/2615) [#2577](https://github.com/HankHuang0516/EClaw/issues/2577)
* **i18n:** positional format specifiers for feedback_result_logs (7 locales) ([#2597](https://github.com/HankHuang0516/EClaw/issues/2597)) ([21aedc7](https://github.com/HankHuang0516/EClaw/commit/21aedc7eebc7a2839e340136f38dfdfd4dabb9dc))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* **community:** 1-click chat button on bot cards + utm tagging ([#2610](https://github.com/HankHuang0516/EClaw/issues/2610)) ([eee97b0](https://github.com/HankHuang0516/EClaw/commit/eee97b0e2e4e74945ec24f218a69a52800b97a66))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* **portal:** add entity selector to petdx-browser ([#2602](https://github.com/HankHuang0516/EClaw/issues/2602)) ([3fa067e](https://github.com/HankHuang0516/EClaw/commit/3fa067e00b38829b48a37cecd33ee81a9a1122d9))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **companion:** bridge crafter-station/petdex gallery (1784 pets) ([#2601](https://github.com/HankHuang0516/EClaw/issues/2601)) ([2e245be](https://github.com/HankHuang0516/EClaw/commit/2e245bea6dd47ea7361b927d389188a3c23b6bb3))
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **avatar:** render selected petdx companion in chat avatars ([#2620](https://github.com/HankHuang0516/EClaw/issues/2620)) ([0bdd046](https://github.com/HankHuang0516/EClaw/commit/0bdd046fe1b1c428e32edda366ff112c08927f4c))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **share-chat:** twitter card + per-bot og:image/twitter:* in SSR ([#2609](https://github.com/HankHuang0516/EClaw/issues/2609)) ([6cdc853](https://github.com/HankHuang0516/EClaw/commit/6cdc853dc884cdb95bd47214942768981f218ae0))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))
* **mindmap:** wrap hardcoded zh-TW UI strings with i18n t() ([#2607](https://github.com/HankHuang0516/EClaw/issues/2607)) ([166af87](https://github.com/HankHuang0516/EClaw/commit/166af8772b2121a24aaf34a83b3de970e9b3b571)), closes [#2606](https://github.com/HankHuang0516/EClaw/issues/2606)

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-12)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **entities:** expose botSecret to owner so wallpaper service can poll companions ([#2615](https://github.com/HankHuang0516/EClaw/issues/2615)) ([04470fc](https://github.com/HankHuang0516/EClaw/commit/04470fce8f8c3fce2b1ba8b243e776606f107502))
* **rental:** expose owner_public_code in marketplace so plaza CTA can route ([#2616](https://github.com/HankHuang0516/EClaw/issues/2616)) ([4d1372f](https://github.com/HankHuang0516/EClaw/commit/4d1372f717d93cab65543e87c852e74e9fb67071)), closes [#2610](https://github.com/HankHuang0516/EClaw/issues/2610)
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **wallpaper:** off-load spritesheet fetch to IO so per-petdx sprites actually render ([#2618](https://github.com/HankHuang0516/EClaw/issues/2618)) ([61b832c](https://github.com/HankHuang0516/EClaw/commit/61b832c9fa8a1d0caab810ccc942d85c63349267)), closes [#2615](https://github.com/HankHuang0516/EClaw/issues/2615) [#2577](https://github.com/HankHuang0516/EClaw/issues/2577)
* **i18n:** positional format specifiers for feedback_result_logs (7 locales) ([#2597](https://github.com/HankHuang0516/EClaw/issues/2597)) ([21aedc7](https://github.com/HankHuang0516/EClaw/commit/21aedc7eebc7a2839e340136f38dfdfd4dabb9dc))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* **community:** 1-click chat button on bot cards + utm tagging ([#2610](https://github.com/HankHuang0516/EClaw/issues/2610)) ([eee97b0](https://github.com/HankHuang0516/EClaw/commit/eee97b0e2e4e74945ec24f218a69a52800b97a66))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* **portal:** add entity selector to petdx-browser ([#2602](https://github.com/HankHuang0516/EClaw/issues/2602)) ([3fa067e](https://github.com/HankHuang0516/EClaw/commit/3fa067e00b38829b48a37cecd33ee81a9a1122d9))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **companion:** bridge crafter-station/petdex gallery (1784 pets) ([#2601](https://github.com/HankHuang0516/EClaw/issues/2601)) ([2e245be](https://github.com/HankHuang0516/EClaw/commit/2e245bea6dd47ea7361b927d389188a3c23b6bb3))
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **share-chat:** twitter card + per-bot og:image/twitter:* in SSR ([#2609](https://github.com/HankHuang0516/EClaw/issues/2609)) ([6cdc853](https://github.com/HankHuang0516/EClaw/commit/6cdc853dc884cdb95bd47214942768981f218ae0))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))
* **mindmap:** wrap hardcoded zh-TW UI strings with i18n t() ([#2607](https://github.com/HankHuang0516/EClaw/issues/2607)) ([166af87](https://github.com/HankHuang0516/EClaw/commit/166af8772b2121a24aaf34a83b3de970e9b3b571)), closes [#2606](https://github.com/HankHuang0516/EClaw/issues/2606)

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-12)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **entities:** expose botSecret to owner so wallpaper service can poll companions ([#2615](https://github.com/HankHuang0516/EClaw/issues/2615)) ([04470fc](https://github.com/HankHuang0516/EClaw/commit/04470fce8f8c3fce2b1ba8b243e776606f107502))
* **rental:** expose owner_public_code in marketplace so plaza CTA can route ([#2616](https://github.com/HankHuang0516/EClaw/issues/2616)) ([4d1372f](https://github.com/HankHuang0516/EClaw/commit/4d1372f717d93cab65543e87c852e74e9fb67071)), closes [#2610](https://github.com/HankHuang0516/EClaw/issues/2610)
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **i18n:** positional format specifiers for feedback_result_logs (7 locales) ([#2597](https://github.com/HankHuang0516/EClaw/issues/2597)) ([21aedc7](https://github.com/HankHuang0516/EClaw/commit/21aedc7eebc7a2839e340136f38dfdfd4dabb9dc))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* **community:** 1-click chat button on bot cards + utm tagging ([#2610](https://github.com/HankHuang0516/EClaw/issues/2610)) ([eee97b0](https://github.com/HankHuang0516/EClaw/commit/eee97b0e2e4e74945ec24f218a69a52800b97a66))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* **portal:** add entity selector to petdx-browser ([#2602](https://github.com/HankHuang0516/EClaw/issues/2602)) ([3fa067e](https://github.com/HankHuang0516/EClaw/commit/3fa067e00b38829b48a37cecd33ee81a9a1122d9))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **companion:** bridge crafter-station/petdex gallery (1784 pets) ([#2601](https://github.com/HankHuang0516/EClaw/issues/2601)) ([2e245be](https://github.com/HankHuang0516/EClaw/commit/2e245bea6dd47ea7361b927d389188a3c23b6bb3))
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **share-chat:** twitter card + per-bot og:image/twitter:* in SSR ([#2609](https://github.com/HankHuang0516/EClaw/issues/2609)) ([6cdc853](https://github.com/HankHuang0516/EClaw/commit/6cdc853dc884cdb95bd47214942768981f218ae0))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))
* **mindmap:** wrap hardcoded zh-TW UI strings with i18n t() ([#2607](https://github.com/HankHuang0516/EClaw/issues/2607)) ([166af87](https://github.com/HankHuang0516/EClaw/commit/166af8772b2121a24aaf34a83b3de970e9b3b571)), closes [#2606](https://github.com/HankHuang0516/EClaw/issues/2606)

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-12)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **entities:** expose botSecret to owner so wallpaper service can poll companions ([#2615](https://github.com/HankHuang0516/EClaw/issues/2615)) ([04470fc](https://github.com/HankHuang0516/EClaw/commit/04470fce8f8c3fce2b1ba8b243e776606f107502))
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **i18n:** positional format specifiers for feedback_result_logs (7 locales) ([#2597](https://github.com/HankHuang0516/EClaw/issues/2597)) ([21aedc7](https://github.com/HankHuang0516/EClaw/commit/21aedc7eebc7a2839e340136f38dfdfd4dabb9dc))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* **community:** 1-click chat button on bot cards + utm tagging ([#2610](https://github.com/HankHuang0516/EClaw/issues/2610)) ([eee97b0](https://github.com/HankHuang0516/EClaw/commit/eee97b0e2e4e74945ec24f218a69a52800b97a66))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* **portal:** add entity selector to petdx-browser ([#2602](https://github.com/HankHuang0516/EClaw/issues/2602)) ([3fa067e](https://github.com/HankHuang0516/EClaw/commit/3fa067e00b38829b48a37cecd33ee81a9a1122d9))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **companion:** bridge crafter-station/petdex gallery (1784 pets) ([#2601](https://github.com/HankHuang0516/EClaw/issues/2601)) ([2e245be](https://github.com/HankHuang0516/EClaw/commit/2e245bea6dd47ea7361b927d389188a3c23b6bb3))
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **share-chat:** twitter card + per-bot og:image/twitter:* in SSR ([#2609](https://github.com/HankHuang0516/EClaw/issues/2609)) ([6cdc853](https://github.com/HankHuang0516/EClaw/commit/6cdc853dc884cdb95bd47214942768981f218ae0))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))
* **mindmap:** wrap hardcoded zh-TW UI strings with i18n t() ([#2607](https://github.com/HankHuang0516/EClaw/issues/2607)) ([166af87](https://github.com/HankHuang0516/EClaw/commit/166af8772b2121a24aaf34a83b3de970e9b3b571)), closes [#2606](https://github.com/HankHuang0516/EClaw/issues/2606)

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-12)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **i18n:** positional format specifiers for feedback_result_logs (7 locales) ([#2597](https://github.com/HankHuang0516/EClaw/issues/2597)) ([21aedc7](https://github.com/HankHuang0516/EClaw/commit/21aedc7eebc7a2839e340136f38dfdfd4dabb9dc))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* **community:** 1-click chat button on bot cards + utm tagging ([#2610](https://github.com/HankHuang0516/EClaw/issues/2610)) ([eee97b0](https://github.com/HankHuang0516/EClaw/commit/eee97b0e2e4e74945ec24f218a69a52800b97a66))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* **portal:** add entity selector to petdx-browser ([#2602](https://github.com/HankHuang0516/EClaw/issues/2602)) ([3fa067e](https://github.com/HankHuang0516/EClaw/commit/3fa067e00b38829b48a37cecd33ee81a9a1122d9))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **companion:** bridge crafter-station/petdex gallery (1784 pets) ([#2601](https://github.com/HankHuang0516/EClaw/issues/2601)) ([2e245be](https://github.com/HankHuang0516/EClaw/commit/2e245bea6dd47ea7361b927d389188a3c23b6bb3))
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **share-chat:** twitter card + per-bot og:image/twitter:* in SSR ([#2609](https://github.com/HankHuang0516/EClaw/issues/2609)) ([6cdc853](https://github.com/HankHuang0516/EClaw/commit/6cdc853dc884cdb95bd47214942768981f218ae0))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))
* **mindmap:** wrap hardcoded zh-TW UI strings with i18n t() ([#2607](https://github.com/HankHuang0516/EClaw/issues/2607)) ([166af87](https://github.com/HankHuang0516/EClaw/commit/166af8772b2121a24aaf34a83b3de970e9b3b571)), closes [#2606](https://github.com/HankHuang0516/EClaw/issues/2606)

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-12)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **i18n:** positional format specifiers for feedback_result_logs (7 locales) ([#2597](https://github.com/HankHuang0516/EClaw/issues/2597)) ([21aedc7](https://github.com/HankHuang0516/EClaw/commit/21aedc7eebc7a2839e340136f38dfdfd4dabb9dc))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* **portal:** add entity selector to petdx-browser ([#2602](https://github.com/HankHuang0516/EClaw/issues/2602)) ([3fa067e](https://github.com/HankHuang0516/EClaw/commit/3fa067e00b38829b48a37cecd33ee81a9a1122d9))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **companion:** bridge crafter-station/petdex gallery (1784 pets) ([#2601](https://github.com/HankHuang0516/EClaw/issues/2601)) ([2e245be](https://github.com/HankHuang0516/EClaw/commit/2e245bea6dd47ea7361b927d389188a3c23b6bb3))
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **share-chat:** twitter card + per-bot og:image/twitter:* in SSR ([#2609](https://github.com/HankHuang0516/EClaw/issues/2609)) ([6cdc853](https://github.com/HankHuang0516/EClaw/commit/6cdc853dc884cdb95bd47214942768981f218ae0))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))
* **mindmap:** wrap hardcoded zh-TW UI strings with i18n t() ([#2607](https://github.com/HankHuang0516/EClaw/issues/2607)) ([166af87](https://github.com/HankHuang0516/EClaw/commit/166af8772b2121a24aaf34a83b3de970e9b3b571)), closes [#2606](https://github.com/HankHuang0516/EClaw/issues/2606)

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-12)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **i18n:** positional format specifiers for feedback_result_logs (7 locales) ([#2597](https://github.com/HankHuang0516/EClaw/issues/2597)) ([21aedc7](https://github.com/HankHuang0516/EClaw/commit/21aedc7eebc7a2839e340136f38dfdfd4dabb9dc))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* **portal:** add entity selector to petdx-browser ([#2602](https://github.com/HankHuang0516/EClaw/issues/2602)) ([3fa067e](https://github.com/HankHuang0516/EClaw/commit/3fa067e00b38829b48a37cecd33ee81a9a1122d9))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **companion:** bridge crafter-station/petdex gallery (1784 pets) ([#2601](https://github.com/HankHuang0516/EClaw/issues/2601)) ([2e245be](https://github.com/HankHuang0516/EClaw/commit/2e245bea6dd47ea7361b927d389188a3c23b6bb3))
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))
* **mindmap:** wrap hardcoded zh-TW UI strings with i18n t() ([#2607](https://github.com/HankHuang0516/EClaw/issues/2607)) ([166af87](https://github.com/HankHuang0516/EClaw/commit/166af8772b2121a24aaf34a83b3de970e9b3b571)), closes [#2606](https://github.com/HankHuang0516/EClaw/issues/2606)

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-12)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **i18n:** positional format specifiers for feedback_result_logs (7 locales) ([#2597](https://github.com/HankHuang0516/EClaw/issues/2597)) ([21aedc7](https://github.com/HankHuang0516/EClaw/commit/21aedc7eebc7a2839e340136f38dfdfd4dabb9dc))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* **portal:** add entity selector to petdx-browser ([#2602](https://github.com/HankHuang0516/EClaw/issues/2602)) ([3fa067e](https://github.com/HankHuang0516/EClaw/commit/3fa067e00b38829b48a37cecd33ee81a9a1122d9))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **companion:** bridge crafter-station/petdex gallery (1784 pets) ([#2601](https://github.com/HankHuang0516/EClaw/issues/2601)) ([2e245be](https://github.com/HankHuang0516/EClaw/commit/2e245bea6dd47ea7361b927d389188a3c23b6bb3))
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-12)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **i18n:** positional format specifiers for feedback_result_logs (7 locales) ([#2597](https://github.com/HankHuang0516/EClaw/issues/2597)) ([21aedc7](https://github.com/HankHuang0516/EClaw/commit/21aedc7eebc7a2839e340136f38dfdfd4dabb9dc))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **companion:** bridge crafter-station/petdex gallery (1784 pets) ([#2601](https://github.com/HankHuang0516/EClaw/issues/2601)) ([2e245be](https://github.com/HankHuang0516/EClaw/commit/2e245bea6dd47ea7361b927d389188a3c23b6bb3))
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-11)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **i18n:** positional format specifiers for feedback_result_logs (7 locales) ([#2597](https://github.com/HankHuang0516/EClaw/issues/2597)) ([21aedc7](https://github.com/HankHuang0516/EClaw/commit/21aedc7eebc7a2839e340136f38dfdfd4dabb9dc))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-10)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-10)


### Bug Fixes

* **portal:** 3 QA-audit visual bugs ([#2592](https://github.com/HankHuang0516/EClaw/issues/2592) [#2593](https://github.com/HankHuang0516/EClaw/issues/2593) [#2594](https://github.com/HankHuang0516/EClaw/issues/2594)) ([#2595](https://github.com/HankHuang0516/EClaw/issues/2595)) ([ef55cc4](https://github.com/HankHuang0516/EClaw/commit/ef55cc43deb72aaa94777a1c75ffae5c4f158d4b)), closes [#entityFilters](https://github.com/HankHuang0516/EClaw/issues/entityFilters)
* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-10)


### Bug Fixes

* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **audit:** scheduled audit 2026-05-11 — skill template sync + SEO fix ([#2591](https://github.com/HankHuang0516/EClaw/issues/2591)) ([eb9615b](https://github.com/HankHuang0516/EClaw/commit/eb9615bbebdd01ddf85681f4f1a98b0dfa8217cf))
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-10)


### Bug Fixes

* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-10)


### Bug Fixes

* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **wallpaper:** show 'Loading entities…' until first API response ([#2587](https://github.com/HankHuang0516/EClaw/issues/2587)) ([29f4159](https://github.com/HankHuang0516/EClaw/commit/29f4159ad9eed18b01177d3c277130bde1f516d4))
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-10)


### Bug Fixes

* **petdx:** add dog-procedural + cat-procedural drawers ([#2586](https://github.com/HankHuang0516/EClaw/issues/2586)) ([e1f7203](https://github.com/HankHuang0516/EClaw/commit/e1f7203daa65db6af5252777ef82f62f85861884))
* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-10)


### Bug Fixes

* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **petdx:** refresh owner state on detail dialog open ([#2585](https://github.com/HankHuang0516/EClaw/issues/2585)) ([d9bb6e3](https://github.com/HankHuang0516/EClaw/commit/d9bb6e36b9cf305404b858ebd69feede922c5c0b))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-10)


### Bug Fixes

* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **kanban:** device push on card done (manual + auto/cron) ([#2584](https://github.com/HankHuang0516/EClaw/issues/2584)) ([3adcbfb](https://github.com/HankHuang0516/EClaw/commit/3adcbfbd09b00c197ba6054700916e1653c24028))
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-10)


### Bug Fixes

* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-10)


### Bug Fixes

* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-10)


### Bug Fixes

* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **kanban:** surface dispatch mode controls ([#2483](https://github.com/HankHuang0516/EClaw/issues/2483)) ([3caeaca](https://github.com/HankHuang0516/EClaw/commit/3caeaca974e67a2dc18fb8cf4147b7ca266455da))
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-10)


### Bug Fixes

* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **petdx-wallpaper:** multi-creature drawers + Settings → 瀏覽伙伴 entry ([#2578](https://github.com/HankHuang0516/EClaw/issues/2578)) ([8d5b718](https://github.com/HankHuang0516/EClaw/commit/8d5b71815b9f26e3d1fc856e24c051947088f638))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-10)


### Bug Fixes

* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx-wallpaper:** companion descriptor → live wallpaper ([#2577](https://github.com/HankHuang0516/EClaw/issues/2577)) ([730a305](https://github.com/HankHuang0516/EClaw/commit/730a305fe95d94fe594fa58d047db79968562701))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-10)


### Bug Fixes

* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **petdx:** companion Stage 4 — community submit + review + delete ([#2576](https://github.com/HankHuang0516/EClaw/issues/2576)) ([929f86a](https://github.com/HankHuang0516/EClaw/commit/929f86aaa4ebbb809fc1fa9b41a2568e9848951f))
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-10)


### Bug Fixes

* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **petdx:** companion Stage 3 — ratings + comments ([#2575](https://github.com/HankHuang0516/EClaw/issues/2575)) ([3da898e](https://github.com/HankHuang0516/EClaw/commit/3da898e2e562a95a5fa46f5e27f1876483bcdd65))
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-10)


### Bug Fixes

* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **petdx:** companion Stage 2 — favorites + select + current ([#2574](https://github.com/HankHuang0516/EClaw/issues/2574)) ([4d1f09f](https://github.com/HankHuang0516/EClaw/commit/4d1f09f3b75b6c2da35c7df50cb20c37eed244d5))
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-10)


### Bug Fixes

* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **petdx:** companion browser portal + deviceSecret read auth + system seed ([#2573](https://github.com/HankHuang0516/EClaw/issues/2573)) ([728c9e0](https://github.com/HankHuang0516/EClaw/commit/728c9e0ff95795da5b6478195e8797ca5146f1f4))
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-10)


### Bug Fixes

* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))
* **petdx:** Web Canvas renderer + preview portal (v0.2 PoC) ([#2572](https://github.com/HankHuang0516/EClaw/issues/2572)) ([bc2e4fa](https://github.com/HankHuang0516/EClaw/commit/bc2e4fa0d255e9fe776511e573387df9d72d632f))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-10)


### Bug Fixes

* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)


### Features

* **companion:** /api/companion list + detail endpoints (Stage 1) ([#2571](https://github.com/HankHuang0516/EClaw/issues/2571)) ([8bf0ac6](https://github.com/HankHuang0516/EClaw/commit/8bf0ac6078c63402080df43d48643f6e1a364e1f))
* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-10)


### Bug Fixes

* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)


### Features

* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **plaza:** community.html auto-opens detail modal from ?bot=<publicCode> ([#2570](https://github.com/HankHuang0516/EClaw/issues/2570)) ([7b386b8](https://github.com/HankHuang0516/EClaw/commit/7b386b886b701401123b29e7324e7b5937c23262)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-10)


### Bug Fixes

* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)
* **seo:** swap /community route order so sitemap.xml resolves ([#2569](https://github.com/HankHuang0516/EClaw/issues/2569)) ([1d2b814](https://github.com/HankHuang0516/EClaw/commit/1d2b81476cb8d1a983230327f598662f7d23a1b4)), closes [#2568](https://github.com/HankHuang0516/EClaw/issues/2568)


### Features

* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-10)


### Bug Fixes

* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)


### Features

* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))
* **seo:** SSR per-bot Plaza pages + dynamic community sitemap ([#2568](https://github.com/HankHuang0516/EClaw/issues/2568)) ([75dc188](https://github.com/HankHuang0516/EClaw/commit/75dc188e267f02d9e3b2dd2b71454738d02f452d))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-10)


### Bug Fixes

* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)


### Features

* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-09)


### Bug Fixes

* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)


### Features

* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-09)


### Bug Fixes

* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)


### Features

* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-09)


### Bug Fixes

* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)


### Features

* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-09)


### Bug Fixes

* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))
* **kanban:** render dep chips in card detail modal ([#2562](https://github.com/HankHuang0516/EClaw/issues/2562)) ([e1da0e8](https://github.com/HankHuang0516/EClaw/commit/e1da0e8e18d1dd06d7883741f2e6b119f3cca701)), closes [#2560](https://github.com/HankHuang0516/EClaw/issues/2560)


### Features

* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-09)


### Bug Fixes

* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **kanban:** apply sort to mobile/WebView card list ([#2561](https://github.com/HankHuang0516/EClaw/issues/2561)) ([9ae766e](https://github.com/HankHuang0516/EClaw/commit/9ae766eb440b3a2f31bb35e28bb4549ddc4155b1))
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))


### Features

* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-09)


### Bug Fixes

* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))


### Features

* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **ui:** dependency chain UIUX complete implementation ([#2560](https://github.com/HankHuang0516/EClaw/issues/2560)) ([ae7292f](https://github.com/HankHuang0516/EClaw/commit/ae7292fd6fa3354e046e358342125b09571b62cb))
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-09)


### Bug Fixes

* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **api:** dependency chain API deployment ready ([#2559](https://github.com/HankHuang0516/EClaw/issues/2559)) ([2b40b84](https://github.com/HankHuang0516/EClaw/commit/2b40b8424885864097cfe33c25c5d264ca3ed238))
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))


### Features

* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-09)


### Bug Fixes

* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))


### Features

* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-09)


### Bug Fixes

* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))
* **i18n:** remove 4814 duplicate key occurrences across zh/ja/ko/ar ([#2557](https://github.com/HankHuang0516/EClaw/issues/2557)) ([77891a5](https://github.com/HankHuang0516/EClaw/commit/77891a597d40c7ce38dd4e00d713ddb2605c7613))


### Features

* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-09)


### Bug Fixes

* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))
* **api:** include avatar in GET /api/status so polling clients sync ([#2528](https://github.com/HankHuang0516/EClaw/issues/2528)) ([49cb118](https://github.com/HankHuang0516/EClaw/commit/49cb118541465284b885b0b0bbf0e18e0fee4eac))


### Features

* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-08)


### Bug Fixes

* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))


### Features

* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **landing:** embed Day 0 promo video on hero (#card_a3afc098) ([#2527](https://github.com/HankHuang0516/EClaw/issues/2527)) ([f348bc7](https://github.com/HankHuang0516/EClaw/commit/f348bc7ee4eb6f149dfd9b793ecb1a9bd161562c)), closes [#card_a3afc098](https://github.com/HankHuang0516/EClaw/issues/card_a3afc098)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-08)


### Bug Fixes

* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))


### Features

* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-08)


### Bug Fixes

* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **chat:** collapse attachment chip whitespace under chat-bubble pre-wrap ([#2524](https://github.com/HankHuang0516/EClaw/issues/2524)) ([cfccdb9](https://github.com/HankHuang0516/EClaw/commit/cfccdb93ab96694ab01075cddef407b0900ddc05))
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))


### Features

* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-08)


### Bug Fixes

* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **chat:** compact download chip when inline video/audio player is present ([#2523](https://github.com/HankHuang0516/EClaw/issues/2523)) ([9c4004b](https://github.com/HankHuang0516/EClaw/commit/9c4004bdcf828b85a7f3bb5d06eb3a25583f8990))
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))


### Features

* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-08)


### Bug Fixes

* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **csp:** add media-src so chat <video>/<audio> can load R2 signed URLs ([#2522](https://github.com/HankHuang0516/EClaw/issues/2522)) ([b39e7a9](https://github.com/HankHuang0516/EClaw/commit/b39e7a9261d24cda9331488a6d443ea632fb7026)), closes [#2521](https://github.com/HankHuang0516/EClaw/issues/2521)
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))


### Features

* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-08)


### Bug Fixes

* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))


### Features

* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **chat:** inline video/audio player for attachment messages ([#2521](https://github.com/HankHuang0516/EClaw/issues/2521)) ([5e1c3d9](https://github.com/HankHuang0516/EClaw/commit/5e1c3d92ae2bbcdc4c0da1ba1883a5ff28b9eac0))
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-08)


### Bug Fixes

* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))
* **portal:** improve QA accessibility shims ([#2520](https://github.com/HankHuang0516/EClaw/issues/2520)) ([5a170bb](https://github.com/HankHuang0516/EClaw/commit/5a170bbfaf4d24b88ad14da416e1cd481fe8b4e2))


### Features

* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-07)


### Bug Fixes

* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))


### Features

* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-07)


### Bug Fixes

* **seo:** add Express route for /promo-meta.html ([#2515](https://github.com/HankHuang0516/EClaw/issues/2515)) ([#2516](https://github.com/HankHuang0516/EClaw/issues/2516)) ([8d96529](https://github.com/HankHuang0516/EClaw/commit/8d965292e98993bdf3e9295cc390cfb20b9349bf))


### Features

* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-07)


### Features

* add Concept A promo meta page ([#2514](https://github.com/HankHuang0516/EClaw/issues/2514)) ([a04d283](https://github.com/HankHuang0516/EClaw/commit/a04d283dc2b58848730d42bb993218c2bc29fd87))
* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-07)


### Features

* add promo video embed page ([#2513](https://github.com/HankHuang0516/EClaw/issues/2513)) ([31f6094](https://github.com/HankHuang0516/EClaw/commit/31f6094808af7003044ffd1d99570797ec197d35)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-07)


### Features

* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **kanban-deps:** PR-DCC race-window hardening with device-scoped advisory lock ([#2509](https://github.com/HankHuang0516/EClaw/issues/2509)) ([1bb65a0](https://github.com/HankHuang0516/EClaw/commit/1bb65a078ef29104a13e6f0d8b8f970f3ff1ee44))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-07)


### Features

* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **kanban:** PR-DCB — dep-chain HTTP API + jest supertest ([#2507](https://github.com/HankHuang0516/EClaw/issues/2507)) ([2a5d87c](https://github.com/HankHuang0516/EClaw/commit/2a5d87c01913159c2c930e02e33a03d773a646ee)), closes [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-07)


### Features

* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **kanban:** PR-DCA — dep-chain schema + cycle detection ([#2506](https://github.com/HankHuang0516/EClaw/issues/2506)) ([5c86b19](https://github.com/HankHuang0516/EClaw/commit/5c86b19c42f5597a6ef10f654028d0fd772b81b6)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2481](https://github.com/HankHuang0516/EClaw/issues/2481) [#2494](https://github.com/HankHuang0516/EClaw/issues/2494)
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-07)


### Features

* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **idle-dispatch:** PR-C wire createAutoCronCard to kanbanEvents.emit ([#2505](https://github.com/HankHuang0516/EClaw/issues/2505)) ([b68a61c](https://github.com/HankHuang0516/EClaw/commit/b68a61c385a7d6398fd678bcaee497be7870a333))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-07)


### Features

* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **idle-dispatch:** PR-B wire onCardStatusChange to kanbanEvents.emit ([#2504](https://github.com/HankHuang0516/EClaw/issues/2504)) ([7a71a31](https://github.com/HankHuang0516/EClaw/commit/7a71a31c6c17249c561820a3ae53bc7e2e9ad726))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-07)


### Features

* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-07)


### Features

* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-07)


### Features

* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))
* **recovery:** rebuild P0 CTA register intent + portal beacons (PR [#2496](https://github.com/HankHuang0516/EClaw/issues/2496)) ([#2501](https://github.com/HankHuang0516/EClaw/issues/2501)) ([60ea806](https://github.com/HankHuang0516/EClaw/commit/60ea806baee665d166733681c03c8b2a27ef0bfd))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-07)


### Features

* **growth:** P1a invite_clicks + P1 funnel endpoint (recovery rebuild — 2 commits) ([#2500](https://github.com/HankHuang0516/EClaw/issues/2500)) ([e965a72](https://github.com/HankHuang0516/EClaw/commit/e965a72a9c41734a24f6e108ea676702549bae09)), closes [#2499](https://github.com/HankHuang0516/EClaw/issues/2499)
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-07)


### Features

* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))

# [1.1172.0](https://github.com/HankHuang0516/EClaw/compare/v1.1171.1...v1.1172.0) (2026-05-07)


### Features

* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([d7526e2](https://github.com/HankHuang0516/EClaw/commit/d7526e26daaee6bd1089af5491cc2aee30c9fa7e))
* **idle-dispatch:** PR-A instrumentation - feature flag + event emitter + tests ([a3e5c9d](https://github.com/HankHuang0516/EClaw/commit/a3e5c9dca6eb380a52ccd540a2a9101b60a47fb9))

## [1.1171.1](https://github.com/HankHuang0516/EClaw/compare/v1.1171.0...v1.1171.1) (2026-05-06)


### Bug Fixes

* **kanban:** edit automation dispatch mode ([c54e41a](https://github.com/HankHuang0516/EClaw/commit/c54e41a30671e8c2cbac28d36d919cd2babfc5ff))

# [1.1171.0](https://github.com/HankHuang0516/EClaw/compare/v1.1170.0...v1.1171.0) (2026-05-06)


### Bug Fixes

* **i18n:** P1 Emergency Patch — Critical missing keys for es/de/ar ([77b4e00](https://github.com/HankHuang0516/EClaw/commit/77b4e00a18e92e41f0c5d0db81fbcb9a87637eae)), closes [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **i18n:** P1 Emergency Patch — Critical missing keys for Japanese (ja) ([408800b](https://github.com/HankHuang0516/EClaw/commit/408800b69710a905fb8450eebef9ded253edb160))
* Remove over-escaped quotes in i18n translations (1,821 instances) ([3b98a7f](https://github.com/HankHuang0516/EClaw/commit/3b98a7f979287d5564054031b8313423dadad6e5))
* **pr-2481:** resolve lint errors and i18n missing keys ([521b404](https://github.com/HankHuang0516/EClaw/commit/521b404757eab4b591e307b67d00452df0193d04))


### Features

* **roadmap:** add EClaw desktop one-click configuration roadmap ([323521b](https://github.com/HankHuang0516/EClaw/commit/323521b10082f49ba6e11aedadb023af0301ed6f))
* **kanban:** Add idle dispatch automation ([c1acfab](https://github.com/HankHuang0516/EClaw/commit/c1acfabda99c61c1b731fecdea4bc363425d28cd))
* add MiniGame admin analytics ([faefcb8](https://github.com/HankHuang0516/EClaw/commit/faefcb844c4f6409e76722287701e21ab64d37ed))
* complete idle dispatch automation system ([289700f](https://github.com/HankHuang0516/EClaw/commit/289700f82eacde569a06c6b6e05dc621bae69b46))
* implement idle dispatch automation system ([f7aff72](https://github.com/HankHuang0516/EClaw/commit/f7aff72bf2f7d744a28023749f478f844e846257))
* resolve merge conflict with main - idle dispatch ready for production ([1e89015](https://github.com/HankHuang0516/EClaw/commit/1e8901575cbd6c77cdb5db61aca76589e731d074)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.1170.0](https://github.com/HankHuang0516/EClaw/compare/v1.1169.0...v1.1170.0) (2026-05-06)


### Features

* add MiniGame admin analytics ([#2473](https://github.com/HankHuang0516/EClaw/issues/2473)) ([a40c9b5](https://github.com/HankHuang0516/EClaw/commit/a40c9b5f72484c909a176e5bf06d8725095a4ba6))

# [1.1169.0](https://github.com/HankHuang0516/EClaw/compare/v1.1168.3...v1.1169.0) (2026-05-06)


### Features

* show MiniGame submissions in admin ([#2472](https://github.com/HankHuang0516/EClaw/issues/2472)) ([a5a900b](https://github.com/HankHuang0516/EClaw/commit/a5a900bb063f1d5989abd83eb57f30c0910c1dc8))

## [1.1168.3](https://github.com/HankHuang0516/EClaw/compare/v1.1168.2...v1.1168.3) (2026-05-05)


### Bug Fixes

* **android:** resolve compilation errors in MainViewModel and ScheduleAdapter ([#2467](https://github.com/HankHuang0516/EClaw/issues/2467)) ([829bfe7](https://github.com/HankHuang0516/EClaw/commit/829bfe715a9f669f3c4d925dd2bc34b755086a99))

## [1.1168.2](https://github.com/HankHuang0516/EClaw/compare/v1.1168.1...v1.1168.2) (2026-05-05)


### Bug Fixes

* **android:** i18n-ify 'Failed to generate binding code' in MainViewModel ([318bc98](https://github.com/HankHuang0516/EClaw/commit/318bc98b020155a5642f6673e5311828e23b6fb1))
* **android:** i18n-ify 3 hardcoded strings ([e1e2dcd](https://github.com/HankHuang0516/EClaw/commit/e1e2dcd40de8659c78c22c93f747670925ddc0d5))

## [1.1168.1](https://github.com/HankHuang0516/EClaw/compare/v1.1168.0...v1.1168.1) (2026-05-05)


### Bug Fixes

* **growth:** serve tracking helper ([fb42302](https://github.com/HankHuang0516/EClaw/commit/fb4230255a35d8f6d99b37eb7c08aa39eea3d2e0))

# [1.1168.0](https://github.com/HankHuang0516/EClaw/compare/v1.1167.14...v1.1168.0) (2026-05-05)


### Features

* **onboarding:** add five-minute quick win demo ([2bd1ac7](https://github.com/HankHuang0516/EClaw/commit/2bd1ac79882b0c8e85f159f8a69848f923e368dd))
* **onboarding:** integrate tutorial and growth tracking ([87061b5](https://github.com/HankHuang0516/EClaw/commit/87061b5c65966952026ea971a7735c07b1f4d247))
* **growth:** track signup source attribution ([743ec9d](https://github.com/HankHuang0516/EClaw/commit/743ec9d58e12795fa92332d5a621aed7d7a1f687))

## [1.1167.14](https://github.com/HankHuang0516/EClaw/compare/v1.1167.13...v1.1167.14) (2026-05-05)


### Bug Fixes

* **i18n:** clean ko locale leak baseline ([#2426](https://github.com/HankHuang0516/EClaw/issues/2426)) ([cb85bec](https://github.com/HankHuang0516/EClaw/commit/cb85bec14bfc34e67894d5b0694edde930d467ce))

## [1.1167.13](https://github.com/HankHuang0516/EClaw/compare/v1.1167.12...v1.1167.13) (2026-05-04)


### Bug Fixes

* **i18n:** clean ja locale leak baseline keys ([25a3b0e](https://github.com/HankHuang0516/EClaw/commit/25a3b0e27cbf8f8de3b5108880140d32d5ba019a))

## [1.1167.12](https://github.com/HankHuang0516/EClaw/compare/v1.1167.11...v1.1167.12) (2026-05-04)


### Bug Fixes

* **portal:** resolve emoji-icon mobile positioning conflicts ([#2438](https://github.com/HankHuang0516/EClaw/issues/2438)) ([f32e900](https://github.com/HankHuang0516/EClaw/commit/f32e9006d83a743e44ad077d75d95d5d50ce5b0c)), closes [portal/info.html#quickstart](https://github.com/portal/info.html/issues/quickstart)

## [1.1167.11](https://github.com/HankHuang0516/EClaw/compare/v1.1167.10...v1.1167.11) (2026-05-04)


### Bug Fixes

* **info:** mark performance slide metrics as illustrative ([167107d](https://github.com/HankHuang0516/EClaw/commit/167107da9fadf3b3318d6b277ec938e6d7006052)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

## [1.1167.10](https://github.com/HankHuang0516/EClaw/compare/v1.1167.9...v1.1167.10) (2026-05-04)


### Bug Fixes

* replace embedded Quick Start slides with image cards to resolve visual conflicts ([#2434](https://github.com/HankHuang0516/EClaw/issues/2434)) ([57585d5](https://github.com/HankHuang0516/EClaw/commit/57585d5082bc2316f4cfcbaf0ff513a229385302)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

## [1.1167.9](https://github.com/HankHuang0516/EClaw/compare/v1.1167.8...v1.1167.9) (2026-05-04)


### Bug Fixes

* **test:** guard module-scope timers to prevent Jest flakiness ([#2433](https://github.com/HankHuang0516/EClaw/issues/2433)) ([7578aca](https://github.com/HankHuang0516/EClaw/commit/7578acaa6015cba9f68ed246a9affccf0794d160))

## [1.1167.8](https://github.com/HankHuang0516/EClaw/compare/v1.1167.7...v1.1167.8) (2026-05-04)


### Bug Fixes

* **portal:** align cross-device code display with spec S4.1.3 ([#2430](https://github.com/HankHuang0516/EClaw/issues/2430)) ([60b5265](https://github.com/HankHuang0516/EClaw/commit/60b526569e89c2e26f8aed5a083937b17d431fc6))

## [1.1167.7](https://github.com/HankHuang0516/EClaw/compare/v1.1167.6...v1.1167.7) (2026-05-04)


### Bug Fixes

* **i18n:** clean de locale leak baseline ([#2427](https://github.com/HankHuang0516/EClaw/issues/2427)) ([5a56578](https://github.com/HankHuang0516/EClaw/commit/5a565788f08e70b3dd01d3f2e6e11816b19d5f43))
* **android:** cross-device message direction uses publicCode map ([#2130](https://github.com/HankHuang0516/EClaw/issues/2130)) ([#2429](https://github.com/HankHuang0516/EClaw/issues/2429)) ([0b434a7](https://github.com/HankHuang0516/EClaw/commit/0b434a774345446bd0e9f605aa6030a6326117af))
* **i18n:** es baseline cleanup (31 keys) ([#2428](https://github.com/HankHuang0516/EClaw/issues/2428)) ([3edebcb](https://github.com/HankHuang0516/EClaw/commit/3edebcbea560f89e8e190bb0185e600f2e52a198))

## [1.1167.6](https://github.com/HankHuang0516/EClaw/compare/v1.1167.5...v1.1167.6) (2026-05-04)


### Bug Fixes

* **portal:** collaborative Quick Start + mobile guide optimization ([4f8f58d](https://github.com/HankHuang0516/EClaw/commit/4f8f58de0b8fbda0df706319e576801a18eb4538)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

## [1.1167.5](https://github.com/HankHuang0516/EClaw/compare/v1.1167.4...v1.1167.5) (2026-05-04)


### Bug Fixes

* auth console noise on public pages (PR [#2420](https://github.com/HankHuang0516/EClaw/issues/2420)) ([6f0acac](https://github.com/HankHuang0516/EClaw/commit/6f0acac9d46dfe9bbe47e0ad3f436d68691df24d))

## [1.1167.4](https://github.com/HankHuang0516/EClaw/compare/v1.1167.3...v1.1167.4) (2026-05-04)


### Bug Fixes

* **i18n:** zh-TW / zh-CN fall back to canonical zh dict before en ([#2407](https://github.com/HankHuang0516/EClaw/issues/2407)) ([7173ec0](https://github.com/HankHuang0516/EClaw/commit/7173ec059edfec9edd650a7c1a09db362e72bee5)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)

## [1.1167.3](https://github.com/HankHuang0516/EClaw/compare/v1.1167.2...v1.1167.3) (2026-05-04)


### Bug Fixes

* **kanban:** require aboutCardId for auto-close to stop IDLE-content false-close ([#2405](https://github.com/HankHuang0516/EClaw/issues/2405)) ([5bc502f](https://github.com/HankHuang0516/EClaw/commit/5bc502f5cff06e1d93fe90dd2774ea33ab0e35fa)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2403](https://github.com/HankHuang0516/EClaw/issues/2403)

## [1.1167.2](https://github.com/HankHuang0516/EClaw/compare/v1.1167.1...v1.1167.2) (2026-05-04)


### Bug Fixes

* **growth:** count invite redemptions from invite_codes, not unmounted Phase-5 table ([#2404](https://github.com/HankHuang0516/EClaw/issues/2404)) ([0d42828](https://github.com/HankHuang0516/EClaw/commit/0d4282801335471b3dcaf4d15a307a48c52b5506))

## [1.1167.1](https://github.com/HankHuang0516/EClaw/compare/v1.1167.0...v1.1167.1) (2026-05-04)


### Bug Fixes

* **kanban:** guard auto-review during progress heartbeats ([#2403](https://github.com/HankHuang0516/EClaw/issues/2403)) ([371b619](https://github.com/HankHuang0516/EClaw/commit/371b619172aafb19c654094d41aa65d9ef4223ab))

# [1.1167.0](https://github.com/HankHuang0516/EClaw/compare/v1.1166.0...v1.1167.0) (2026-05-04)


### Features

* **info:** embed Claude Design slide for guide_voice ([ccfc69b](https://github.com/HankHuang0516/EClaw/commit/ccfc69b0ba6a81cc6e0a8d93ad523dafbce507c5))

# [1.1166.0](https://github.com/HankHuang0516/EClaw/compare/v1.1165.0...v1.1166.0) (2026-05-04)


### Features

* **transform:** channel key auth for /api/transform (Phase 1) ([#2401](https://github.com/HankHuang0516/EClaw/issues/2401)) ([627ab30](https://github.com/HankHuang0516/EClaw/commit/627ab3099d6e0d8b16cb2c63ca3095bab44b0535))

# [1.1165.0](https://github.com/HankHuang0516/EClaw/compare/v1.1164.1...v1.1165.0) (2026-05-04)


### Features

* **info:** embed Claude Design slide for guide_identity ([33f6e52](https://github.com/HankHuang0516/EClaw/commit/33f6e5250f1b16fa689f57829cc865223de16ffb))

## [1.1164.1](https://github.com/HankHuang0516/EClaw/compare/v1.1164.0...v1.1164.1) (2026-05-04)


### Bug Fixes

* **mockup-chat:** prevent product-card / note-preview collapse to 2px ([#2399](https://github.com/HankHuang0516/EClaw/issues/2399)) ([9b6ed18](https://github.com/HankHuang0516/EClaw/commit/9b6ed18c7917984506dddf58b32fc985ef9caa54))

# [1.1164.0](https://github.com/HankHuang0516/EClaw/compare/v1.1163.0...v1.1164.0) (2026-05-04)


### Features

* **info:** embed Claude Design slide for guide_agentcard ([7bbe4b9](https://github.com/HankHuang0516/EClaw/commit/7bbe4b91c99e89aaaaa7a105f142d5307bbf962e))

# [1.1163.0](https://github.com/HankHuang0516/EClaw/compare/v1.1162.0...v1.1163.0) (2026-05-04)


### Features

* **info:** embed Claude Design slide for guide_msg ([ad4a33d](https://github.com/HankHuang0516/EClaw/commit/ad4a33dcf8792b20df455b311b2c5ad8cf6469b7))

# [1.1162.0](https://github.com/HankHuang0516/EClaw/compare/v1.1161.0...v1.1162.0) (2026-05-04)


### Features

* **info:** embed Claude Design slide for guide_mention ([12596fd](https://github.com/HankHuang0516/EClaw/commit/12596fdcd9ce141023b4cbf588e4e6197de4b57b))

# [1.1161.0](https://github.com/HankHuang0516/EClaw/compare/v1.1160.0...v1.1161.0) (2026-05-04)


### Features

* **info:** embed Claude Design slide for guide_crossdevice ([f52af59](https://github.com/HankHuang0516/EClaw/commit/f52af59eee87b39f24dcb082d18354872b419acd))

# [1.1160.0](https://github.com/HankHuang0516/EClaw/compare/v1.1159.0...v1.1160.0) (2026-05-04)


### Features

* **info:** embed Claude Design slide for guide_proxy_window ([221598d](https://github.com/HankHuang0516/EClaw/commit/221598d68be9e8923e340765b7b33a7c473c0ad4))

# [1.1159.0](https://github.com/HankHuang0516/EClaw/compare/v1.1158.0...v1.1159.0) (2026-05-04)


### Features

* **info:** embed Claude Design slide for guide_publisher ([8662474](https://github.com/HankHuang0516/EClaw/commit/8662474ca7e4396b1e210c8ea0a6a40523f89a82))

# [1.1158.0](https://github.com/HankHuang0516/EClaw/compare/v1.1157.0...v1.1158.0) (2026-05-03)


### Features

* **info:** embed Claude Design slide for guide_usecase_claude_openclaw ([48c703c](https://github.com/HankHuang0516/EClaw/commit/48c703cfc9bc8d79a9acf2fa0c3d23e7e67c13a8))

# [1.1157.0](https://github.com/HankHuang0516/EClaw/compare/v1.1156.0...v1.1157.0) (2026-05-03)


### Features

* **info:** embed Claude Design slide for why_eclaw_b11_insurance_pool_referral_rewards ([958844b](https://github.com/HankHuang0516/EClaw/commit/958844b53d64bb3e0c54a8378d3fdbf9db8695d5))

# [1.1156.0](https://github.com/HankHuang0516/EClaw/compare/v1.1155.0...v1.1156.0) (2026-05-03)


### Features

* **info:** embed Claude Design slide for why_eclaw_b10_post_rental_a2a_collaboration ([dadf695](https://github.com/HankHuang0516/EClaw/commit/dadf6958992a46fa884407266426e2ab050d3845))

# [1.1155.0](https://github.com/HankHuang0516/EClaw/compare/v1.1154.0...v1.1155.0) (2026-05-03)


### Features

* **info:** embed Claude Design slide for why_eclaw_b9_live_bot_handover ([fa6aa07](https://github.com/HankHuang0516/EClaw/commit/fa6aa077c2522d6dc7c31777a276b03128e031b7))

# [1.1154.0](https://github.com/HankHuang0516/EClaw/compare/v1.1153.0...v1.1154.0) (2026-05-03)


### Features

* **info:** embed Claude Design slide for why_eclaw_b8_token_metering ([8360743](https://github.com/HankHuang0516/EClaw/commit/83607434bffd2fa90dfed49f3e82e1ac607bfcdb))

# [1.1153.0](https://github.com/HankHuang0516/EClaw/compare/v1.1152.0...v1.1153.0) (2026-05-03)


### Features

* **info:** embed Claude Design slide for why_eclaw_b7_contract_version_locking ([7912878](https://github.com/HankHuang0516/EClaw/commit/7912878621de9c007b5831d99c15ca828b07278f))

# [1.1152.0](https://github.com/HankHuang0516/EClaw/compare/v1.1151.0...v1.1152.0) (2026-05-03)


### Features

* **info:** embed Claude Design slide for why_eclaw_b6_interview_arena_leaderboard ([badc355](https://github.com/HankHuang0516/EClaw/commit/badc355fd7d61c1ec6d7af89410e4bdb3cf480d8))

# [1.1151.0](https://github.com/HankHuang0516/EClaw/compare/v1.1150.7...v1.1151.0) (2026-05-03)


### Features

* **info:** embed Claude Design slide for why_eclaw_b4_auto_bot_interview ([50075d5](https://github.com/HankHuang0516/EClaw/commit/50075d53bc9e68e5d372cc4bbc1bc1ab614a6935))
* **info:** embed Claude Design slide for why_eclaw_b5_pricing_advisor ([b4601d4](https://github.com/HankHuang0516/EClaw/commit/b4601d44fff49a5d5adf8e3ed3aa19c9ec9f7496))

## [1.1150.7](https://github.com/HankHuang0516/EClaw/compare/v1.1150.6...v1.1150.7) (2026-05-03)


### Bug Fixes

* **i18n hi:** translate guide_kb_uc_th_scene to clear stripped-baseline leak ([#2358](https://github.com/HankHuang0516/EClaw/issues/2358)) ([28cbc64](https://github.com/HankHuang0516/EClaw/commit/28cbc64960c9d99ab752b2f66278315522650943)), closes [#2352](https://github.com/HankHuang0516/EClaw/issues/2352) [#2356](https://github.com/HankHuang0516/EClaw/issues/2356)

## [1.1150.6](https://github.com/HankHuang0516/EClaw/compare/v1.1150.5...v1.1150.6) (2026-05-03)


### Bug Fixes

* **i18n hi:** repair 7 truncated anchor tags from earlier batches ([#2357](https://github.com/HankHuang0516/EClaw/issues/2357)) ([0c4e6be](https://github.com/HankHuang0516/EClaw/commit/0c4e6be495d4a78c830a0daa66e3a8a748f5b8e7)), closes [#2352](https://github.com/HankHuang0516/EClaw/issues/2352)

## [1.1150.5](https://github.com/HankHuang0516/EClaw/compare/v1.1150.4...v1.1150.5) (2026-05-03)


### Bug Fixes

* **info:** cache-bust why_eclaw_b3 thumbnail ([c79b921](https://github.com/HankHuang0516/EClaw/commit/c79b92144b52174d6626532e9364ef7ba461c039))

## [1.1150.4](https://github.com/HankHuang0516/EClaw/compare/v1.1150.3...v1.1150.4) (2026-05-03)


### Bug Fixes

* **security:** redact device IDs from /api/health ([#2350](https://github.com/HankHuang0516/EClaw/issues/2350)) ([88aebf4](https://github.com/HankHuang0516/EClaw/commit/88aebf4c00b71eb9737f86be6a736037d29cd5c2))

## [1.1150.3](https://github.com/HankHuang0516/EClaw/compare/v1.1150.2...v1.1150.3) (2026-05-03)


### Bug Fixes

* **i18n:** add data-i18n attrs to 11 hardcoded buttons in settings & dashboard ([#2348](https://github.com/HankHuang0516/EClaw/issues/2348)) ([39443d1](https://github.com/HankHuang0516/EClaw/commit/39443d119dad389cd7a44d16d70ce56bbc192a66))

## [1.1150.2](https://github.com/HankHuang0516/EClaw/compare/v1.1150.1...v1.1150.2) (2026-05-03)


### Bug Fixes

* **ux:** kanban Escape-key + info mobile tab overflow ([#2345](https://github.com/HankHuang0516/EClaw/issues/2345)) ([7bda4dc](https://github.com/HankHuang0516/EClaw/commit/7bda4dcb6fb237ac8f2719aea8eadb0492efbfb7)), closes [#2343](https://github.com/HankHuang0516/EClaw/issues/2343) [#2265](https://github.com/HankHuang0516/EClaw/issues/2265)

## [1.1150.1](https://github.com/HankHuang0516/EClaw/compare/v1.1150.0...v1.1150.1) (2026-05-03)


### Bug Fixes

* **settings:** unbreak channel-api and kanban-nudge APP deep links ([#2340](https://github.com/HankHuang0516/EClaw/issues/2340)) ([f6aa25d](https://github.com/HankHuang0516/EClaw/commit/f6aa25d7bbdc232cf1cecfd8a8cdcb431646b255))

# [1.1150.0](https://github.com/HankHuang0516/EClaw/compare/v1.1149.0...v1.1150.0) (2026-05-03)


### Features

* **info:** embed privacy slide in qs-hooks-section (8/8 — final) ([#2339](https://github.com/HankHuang0516/EClaw/issues/2339)) ([b9fce9f](https://github.com/HankHuang0516/EClaw/commit/b9fce9faf75a8ac78b0848957e3a646b4a72d9e6))

# [1.1149.0](https://github.com/HankHuang0516/EClaw/compare/v1.1148.0...v1.1149.0) (2026-05-03)


### Features

* **info:** embed enterprise slide in qs-hooks-section (7/8) ([#2338](https://github.com/HankHuang0516/EClaw/issues/2338)) ([7eeb99a](https://github.com/HankHuang0516/EClaw/commit/7eeb99a65e21054e9db7c12ebd60e71f87a25159))

# [1.1148.0](https://github.com/HankHuang0516/EClaw/compare/v1.1147.0...v1.1148.0) (2026-05-03)


### Features

* **info:** embed integration slide in qs-hooks-section (6/8) ([#2337](https://github.com/HankHuang0516/EClaw/issues/2337)) ([b905663](https://github.com/HankHuang0516/EClaw/commit/b9056634aed8c1b9e3eb9b66cfda874251c2fdd1))

# [1.1147.0](https://github.com/HankHuang0516/EClaw/compare/v1.1146.0...v1.1147.0) (2026-05-03)


### Features

* **info:** embed performance slide in qs-hooks-section (5/8) ([#2336](https://github.com/HankHuang0516/EClaw/issues/2336)) ([8292db0](https://github.com/HankHuang0516/EClaw/commit/8292db05e51969097ee5929ec810ea108db3ee3d)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)

# [1.1146.0](https://github.com/HankHuang0516/EClaw/compare/v1.1145.0...v1.1146.0) (2026-05-03)


### Features

* **info:** embed quick_start slide in qs-steps-section (4/8) ([#2335](https://github.com/HankHuang0516/EClaw/issues/2335)) ([7137a12](https://github.com/HankHuang0516/EClaw/commit/7137a12d7915f1af8d2b583aecafe0884c0c03ae)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)

# [1.1145.0](https://github.com/HankHuang0516/EClaw/compare/v1.1144.0...v1.1145.0) (2026-05-03)


### Features

* **info:** embed credit_swap slide in info guide panel ([#2334](https://github.com/HankHuang0516/EClaw/issues/2334)) ([c2ed2ed](https://github.com/HankHuang0516/EClaw/commit/c2ed2ed4cb30bad54ae407141d8f2a483e47deac))

# [1.1144.0](https://github.com/HankHuang0516/EClaw/compare/v1.1143.1...v1.1144.0) (2026-05-03)


### Features

* **info:** embed Claude Design slide for rent_to_use (slide 02/55) ([#2333](https://github.com/HankHuang0516/EClaw/issues/2333)) ([be2467e](https://github.com/HankHuang0516/EClaw/commit/be2467e90fa45158ca9b419347311b8c601e8a66))
* **info:** embed Claude Design slide for why_eclaw_b2_topup_tiers ([d31c45a](https://github.com/HankHuang0516/EClaw/commit/d31c45a28044741237e1a998f3b2f79ca3ec2e7f))

## [1.1143.1](https://github.com/HankHuang0516/EClaw/compare/v1.1143.0...v1.1143.1) (2026-05-03)


### Bug Fixes

* **i18n:** relocate b1_dual_currency_cta zh value from ko block to zh block ([#2331](https://github.com/HankHuang0516/EClaw/issues/2331)) ([2873732](https://github.com/HankHuang0516/EClaw/commit/2873732395f3795555a2faf4328b7e9f7cb8ee1b)), closes [#2329](https://github.com/HankHuang0516/EClaw/issues/2329)

# [1.1143.0](https://github.com/HankHuang0516/EClaw/compare/v1.1142.0...v1.1143.0) (2026-05-03)


### Features

* **info:** embed Claude Design slide for why_eclaw_b1_dual_currency ([3cfb580](https://github.com/HankHuang0516/EClaw/commit/3cfb58098c722a37ef1cc0fa9d8fce9921e4ca02))

# [1.1142.0](https://github.com/HankHuang0516/EClaw/compare/v1.1141.0...v1.1142.0) (2026-05-03)


### Features

* **info:** embed Claude Design slide for passive_income ([#2330](https://github.com/HankHuang0516/EClaw/issues/2330)) ([4a7ab10](https://github.com/HankHuang0516/EClaw/commit/4a7ab103b050fdc60798071923fb582e75343d9c))

# [1.1141.0](https://github.com/HankHuang0516/EClaw/compare/v1.1140.5...v1.1141.0) (2026-05-03)


### Features

* **chat:** jump-to-latest button for scroll-up reading ([#2328](https://github.com/HankHuang0516/EClaw/issues/2328)) ([e896c89](https://github.com/HankHuang0516/EClaw/commit/e896c89f244175d73865247cf0148dc1c9ae6c7f))

## [1.1140.5](https://github.com/HankHuang0516/EClaw/compare/v1.1140.4...v1.1140.5) (2026-05-03)


### Bug Fixes

* **enterprise:** replace stale product catalog demo link ([#2325](https://github.com/HankHuang0516/EClaw/issues/2325)) ([830be25](https://github.com/HankHuang0516/EClaw/commit/830be25aa3124aa1cdf7423d08b571076aabdba8))

## [1.1140.4](https://github.com/HankHuang0516/EClaw/compare/v1.1140.3...v1.1140.4) (2026-05-03)


### Bug Fixes

* **notif:** merge partial prefs PUT instead of overwriting whole blob ([#2322](https://github.com/HankHuang0516/EClaw/issues/2322)) ([7345f83](https://github.com/HankHuang0516/EClaw/commit/7345f835666e64fa89100c6efc5b554ad6f16fdd))

## [1.1140.3](https://github.com/HankHuang0516/EClaw/compare/v1.1140.2...v1.1140.3) (2026-05-03)


### Bug Fixes

* **notif:** FCM logs to serverLog + /api/device/fcm-status diagnostic ([#2321](https://github.com/HankHuang0516/EClaw/issues/2321)) ([7ec3487](https://github.com/HankHuang0516/EClaw/commit/7ec3487a6a00a82b7862196733423317e7c2cd6f))

## [1.1140.2](https://github.com/HankHuang0516/EClaw/compare/v1.1140.1...v1.1140.2) (2026-05-03)


### Bug Fixes

* **notif:** cross_speak/cross_speak_sent honor speak_to toggle ([#2320](https://github.com/HankHuang0516/EClaw/issues/2320)) ([1cb5ede](https://github.com/HankHuang0516/EClaw/commit/1cb5ede7d0ca974d60f51dd4a469237b65164444))

## [1.1140.1](https://github.com/HankHuang0516/EClaw/compare/v1.1140.0...v1.1140.1) (2026-05-03)


### Bug Fixes

* **kanban:** smart-queue gate uses queue-empty, not bot-active (Phase 2 hotfix) ([#2307](https://github.com/HankHuang0516/EClaw/issues/2307)) ([929732e](https://github.com/HankHuang0516/EClaw/commit/929732ec00a6e3fc9d9cf6fc2cec790dd8b33e8b)), closes [#2303](https://github.com/HankHuang0516/EClaw/issues/2303)

# [1.1140.0](https://github.com/HankHuang0516/EClaw/compare/v1.1139.0...v1.1140.0) (2026-05-03)


### Features

* **kanban:** smart per-bot pending_notify queue (card_dfe3b8df Phase 2) ([#2303](https://github.com/HankHuang0516/EClaw/issues/2303)) ([e065e11](https://github.com/HankHuang0516/EClaw/commit/e065e11cb0e7c56840f701eb8c0bc4f7b54fcc40))

# [1.1139.0](https://github.com/HankHuang0516/EClaw/compare/v1.1138.4...v1.1139.0) (2026-05-03)


### Features

* **mention-parser:** support bare [@public](https://github.com/public)Code form (Slack convention) ([#2300](https://github.com/HankHuang0516/EClaw/issues/2300)) ([5302ca6](https://github.com/HankHuang0516/EClaw/commit/5302ca66c282a3d7a3590b00320b3d2644078f2f)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#2287](https://github.com/HankHuang0516/EClaw/issues/2287) [#2299](https://github.com/HankHuang0516/EClaw/issues/2299) [#2299](https://github.com/HankHuang0516/EClaw/issues/2299)

## [1.1138.4](https://github.com/HankHuang0516/EClaw/compare/v1.1138.3...v1.1138.4) (2026-05-03)


### Bug Fixes

* **channel-api:** add @-mention auto-router parity with /api/transform ([#2299](https://github.com/HankHuang0516/EClaw/issues/2299)) ([a295bea](https://github.com/HankHuang0516/EClaw/commit/a295beaaacb62185cc74da7106738df0cf95ba13)), closes [#1619](https://github.com/HankHuang0516/EClaw/issues/1619) [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#6](https://github.com/HankHuang0516/EClaw/issues/6)

## [1.1138.3](https://github.com/HankHuang0516/EClaw/compare/v1.1138.2...v1.1138.3) (2026-05-03)


### Bug Fixes

* **kanban:** guard autoReviewOnTransform against unrelated batch-close ([#2298](https://github.com/HankHuang0516/EClaw/issues/2298)) ([637e894](https://github.com/HankHuang0516/EClaw/commit/637e8948d56bac5a5bc121d32ee5fc66c2aa4b5e))

## [1.1138.2](https://github.com/HankHuang0516/EClaw/compare/v1.1138.1...v1.1138.2) (2026-05-02)


### Bug Fixes

* **kanban:** skip recurring automation parents in stale escalation ([#2297](https://github.com/HankHuang0516/EClaw/issues/2297)) ([052f656](https://github.com/HankHuang0516/EClaw/commit/052f656ef31fdc42c01338824c129f0d5490c298))

## [1.1138.1](https://github.com/HankHuang0516/EClaw/compare/v1.1138.0...v1.1138.1) (2026-05-02)


### Bug Fixes

* **i18n:** honor ?lang= URL param at portal page init ([#2296](https://github.com/HankHuang0516/EClaw/issues/2296)) ([1e3b4f1](https://github.com/HankHuang0516/EClaw/commit/1e3b4f19d14cedf4c8a335813b2ec2827ce131df))

# [1.1138.0](https://github.com/HankHuang0516/EClaw/compare/v1.1137.3...v1.1138.0) (2026-05-02)


### Features

* **quote:** split-pane in-place delivery + source-page toast ([#2295](https://github.com/HankHuang0516/EClaw/issues/2295)) ([a22ee22](https://github.com/HankHuang0516/EClaw/commit/a22ee22989616c30c55e71340051c81720771643))

## [1.1137.3](https://github.com/HankHuang0516/EClaw/compare/v1.1137.2...v1.1137.3) (2026-05-02)


### Bug Fixes

* **transform:** self-save chatSource no longer leaks pendingA2A ([#2294](https://github.com/HankHuang0516/EClaw/issues/2294)) ([8939063](https://github.com/HankHuang0516/EClaw/commit/893906334b4851a316474645321f7dbc8e30866c)), closes [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#2291](https://github.com/HankHuang0516/EClaw/issues/2291) [#2282](https://github.com/HankHuang0516/EClaw/issues/2282)

## [1.1137.2](https://github.com/HankHuang0516/EClaw/compare/v1.1137.1...v1.1137.2) (2026-05-02)


### Bug Fixes

* **transform:** tolerant speakTo formats + clean fallback chatSource ([#2291](https://github.com/HankHuang0516/EClaw/issues/2291)) ([338f7de](https://github.com/HankHuang0516/EClaw/commit/338f7de87bf6b6fda39d7d496a769d27ecff1661)), closes [#2290](https://github.com/HankHuang0516/EClaw/issues/2290) [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#2282](https://github.com/HankHuang0516/EClaw/issues/2282)

## [1.1137.1](https://github.com/HankHuang0516/EClaw/compare/v1.1137.0...v1.1137.1) (2026-05-02)


### Bug Fixes

* **transform:** resolve routing before self-save to prevent duplicate chat rows ([#2290](https://github.com/HankHuang0516/EClaw/issues/2290)) ([d2fd70e](https://github.com/HankHuang0516/EClaw/commit/d2fd70ef9465250487dea952b44bc49e1668b3e5)), closes [#2285](https://github.com/HankHuang0516/EClaw/issues/2285) [#2285](https://github.com/HankHuang0516/EClaw/issues/2285) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2287](https://github.com/HankHuang0516/EClaw/issues/2287) [#2282](https://github.com/HankHuang0516/EClaw/issues/2282) [#2282](https://github.com/HankHuang0516/EClaw/issues/2282)

# [1.1137.0](https://github.com/HankHuang0516/EClaw/compare/v1.1136.0...v1.1137.0) (2026-05-02)


### Features

* **channel-api:** /api/channel/message accepts senderHint (Phase 3a [#2285](https://github.com/HankHuang0516/EClaw/issues/2285)) ([#2289](https://github.com/HankHuang0516/EClaw/issues/2289)) ([7a1d50d](https://github.com/HankHuang0516/EClaw/commit/7a1d50dce398b5a7d46b48a7aabcd186789ab229))

# [1.1136.0](https://github.com/HankHuang0516/EClaw/compare/v1.1135.0...v1.1136.0) (2026-05-02)


### Features

* **channel-routing:** add senderHint + /api/channel/routing-policy ([#2285](https://github.com/HankHuang0516/EClaw/issues/2285)) ([#2287](https://github.com/HankHuang0516/EClaw/issues/2287)) ([f6b3434](https://github.com/HankHuang0516/EClaw/commit/f6b34343b15d5d44a4f7e547e4002a390f471f3f)), closes [#2282](https://github.com/HankHuang0516/EClaw/issues/2282)

# [1.1135.0](https://github.com/HankHuang0516/EClaw/compare/v1.1134.0...v1.1135.0) (2026-05-02)


### Features

* **i18n:** Add guidepub* translations for ja/ko/zh-CN/zh-TW ([#2281](https://github.com/HankHuang0516/EClaw/issues/2281)) ([eeba930](https://github.com/HankHuang0516/EClaw/commit/eeba9307650df9aa89dc48fabec87220121017c7)), closes [#2157](https://github.com/HankHuang0516/EClaw/issues/2157) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#2](https://github.com/HankHuang0516/EClaw/issues/2)

# [1.1134.0](https://github.com/HankHuang0516/EClaw/compare/v1.1133.3...v1.1134.0) (2026-05-02)


### Features

* **i18n:** info_hooks/info_hero marketing × 11 locales ([31a8792](https://github.com/HankHuang0516/EClaw/commit/31a8792ea9368797cd7af17634aeaafd9b8de121))

## [1.1133.3](https://github.com/HankHuang0516/EClaw/compare/v1.1133.2...v1.1133.3) (2026-05-01)


### Bug Fixes

* guard saveChatMessage against null text parameter ([#2279](https://github.com/HankHuang0516/EClaw/issues/2279)) ([9fb168b](https://github.com/HankHuang0516/EClaw/commit/9fb168b10db5b3ca70bf9d77ae6e247f42fba652))

## [1.1133.2](https://github.com/HankHuang0516/EClaw/compare/v1.1133.1...v1.1133.2) (2026-05-01)


### Bug Fixes

* repair rental safeEqual import and share-chat R2 script path ([#2278](https://github.com/HankHuang0516/EClaw/issues/2278)) ([0167eb2](https://github.com/HankHuang0516/EClaw/commit/0167eb27bc8bea5c949668ff93d3542b2f52da49))

## [1.1133.1](https://github.com/HankHuang0516/EClaw/compare/v1.1133.0...v1.1133.1) (2026-05-01)


### Bug Fixes

* **kanban:** change screenshot review default to disabled ([777aa37](https://github.com/HankHuang0516/EClaw/commit/777aa3723604100f46815c723ea8c5594b40e8ef))

# [1.1133.0](https://github.com/HankHuang0516/EClaw/compare/v1.1132.0...v1.1133.0) (2026-05-01)


### Features

* infer dashboard agent policy channel ([6a961de](https://github.com/HankHuang0516/EClaw/commit/6a961de47c2e7a049dd6ebd070a03e8fb1b1bb1c))

# [1.1132.0](https://github.com/HankHuang0516/EClaw/compare/v1.1131.1...v1.1132.0) (2026-05-01)


### Features

* hide dashboard agent policy until edit mode ([149a217](https://github.com/HankHuang0516/EClaw/commit/149a21775a6796c361676ba07dd548cd01fb02be))

## [1.1131.1](https://github.com/HankHuang0516/EClaw/compare/v1.1131.0...v1.1131.1) (2026-05-01)


### Bug Fixes

* focus agent policy deep links ([567e6ba](https://github.com/HankHuang0516/EClaw/commit/567e6bacc938c968ce32de8074200e0adfc61b4b))

# [1.1131.0](https://github.com/HankHuang0516/EClaw/compare/v1.1130.0...v1.1131.0) (2026-05-01)


### Features

* add dashboard agent policy card ([7ac8874](https://github.com/HankHuang0516/EClaw/commit/7ac88746b1c05e6013beac2257aa284d3df67dd3))

# [1.1130.0](https://github.com/HankHuang0516/EClaw/compare/v1.1129.0...v1.1130.0) (2026-05-01)


### Features

* expand agent policy dashboard editor ([#2269](https://github.com/HankHuang0516/EClaw/issues/2269)) ([36b006e](https://github.com/HankHuang0516/EClaw/commit/36b006e3362238949dc2b5ca1d67bda325eec81f))

# [1.1129.0](https://github.com/HankHuang0516/EClaw/compare/v1.1128.0...v1.1129.0) (2026-05-01)


### Features

* show channel status badges in chat ([#2268](https://github.com/HankHuang0516/EClaw/issues/2268)) ([dc3f415](https://github.com/HankHuang0516/EClaw/commit/dc3f41505097ccdf33c82f022f6d361a5318020f))

# [1.1128.0](https://github.com/HankHuang0516/EClaw/compare/v1.1127.3...v1.1128.0) (2026-05-01)


### Features

* add prompt policy orchestration ([0a1d2b7](https://github.com/HankHuang0516/EClaw/commit/0a1d2b7fc963e0b923df05a793e1e8995610b49e))

## [1.1127.3](https://github.com/HankHuang0516/EClaw/compare/v1.1127.2...v1.1127.3) (2026-05-01)


### Bug Fixes

* treat railway as production for persistence ([#2258](https://github.com/HankHuang0516/EClaw/issues/2258)) ([36afc2b](https://github.com/HankHuang0516/EClaw/commit/36afc2b405f39f284c2ef265a277fdbbf13ea908))

## [1.1127.2](https://github.com/HankHuang0516/EClaw/compare/v1.1127.1...v1.1127.2) (2026-05-01)


### Bug Fixes

* match help api category intents ([#2257](https://github.com/HankHuang0516/EClaw/issues/2257)) ([5ac2456](https://github.com/HankHuang0516/EClaw/commit/5ac2456c2a88da9b24cfbf366bc4e183bd8ece8d))

## [1.1127.1](https://github.com/HankHuang0516/EClaw/compare/v1.1127.0...v1.1127.1) (2026-05-01)


### Bug Fixes

* require postgres persistence in production ([ddee7fb](https://github.com/HankHuang0516/EClaw/commit/ddee7fb9e242e39e2ff222f224e2e128d2e3c250))

# [1.1127.0](https://github.com/HankHuang0516/EClaw/compare/v1.1126.1...v1.1127.0) (2026-04-30)


### Features

* **chip:** smart-chip 📌 cross-pane requote + 已引用 toast ([#2253](https://github.com/HankHuang0516/EClaw/issues/2253)) ([fa609ec](https://github.com/HankHuang0516/EClaw/commit/fa609ec761d40e1e3ad3622f3d57dc23fcba7867)), closes [#messageInput](https://github.com/HankHuang0516/EClaw/issues/messageInput)

## [1.1126.1](https://github.com/HankHuang0516/EClaw/compare/v1.1126.0...v1.1126.1) (2026-04-30)


### Bug Fixes

* **publisher:** Qiita locale defaults to ja (was zh-TW) ([#2252](https://github.com/HankHuang0516/EClaw/issues/2252)) ([be68754](https://github.com/HankHuang0516/EClaw/commit/be68754170c93fd27d6c5b54a1afce186ca1a061))

# [1.1126.0](https://github.com/HankHuang0516/EClaw/compare/v1.1125.0...v1.1126.0) (2026-04-30)


### Features

* **info:** SEO meta swap for vector-memory + 4 marketing hook panels ([#2250](https://github.com/HankHuang0516/EClaw/issues/2250)) ([727d054](https://github.com/HankHuang0516/EClaw/commit/727d05484724893e181c6177c6a5044e3af5781e)), closes [#2249](https://github.com/HankHuang0516/EClaw/issues/2249) [#1967](https://github.com/HankHuang0516/EClaw/issues/1967) [#2139](https://github.com/HankHuang0516/EClaw/issues/2139)

# [1.1125.0](https://github.com/HankHuang0516/EClaw/compare/v1.1124.0...v1.1125.0) (2026-04-30)


### Features

* **info:** add og:/twitter: meta + JSON-LD + per-panel SEO swap ([#2249](https://github.com/HankHuang0516/EClaw/issues/2249)) ([9994b90](https://github.com/HankHuang0516/EClaw/commit/9994b90de91afe31aefa633cc80f0bd892b08e48))

# [1.1124.0](https://github.com/HankHuang0516/EClaw/compare/v1.1123.0...v1.1124.0) (2026-04-30)


### Features

* **i18n:** add kanban search-scope keys for ja/ko/de ([#2248](https://github.com/HankHuang0516/EClaw/issues/2248)) ([2c9eca6](https://github.com/HankHuang0516/EClaw/commit/2c9eca6d3e8ba354f28c9ea8bb14b1e1e94923af))

# [1.1123.0](https://github.com/HankHuang0516/EClaw/compare/v1.1122.0...v1.1123.0) (2026-04-29)


### Features

* **kanban:** cron-spawn child inherits requires_screenshot_review + mom edit toggle ([#2245](https://github.com/HankHuang0516/EClaw/issues/2245)) ([ced2af7](https://github.com/HankHuang0516/EClaw/commit/ced2af7fc7a95bd405814fc791c91af12a6052cc))

# [1.1122.0](https://github.com/HankHuang0516/EClaw/compare/v1.1121.0...v1.1122.0) (2026-04-29)


### Features

* **mindmap:** Phase 4 read-side — honor chat_anchor_coord in /api/mission/mindmap ([#2244](https://github.com/HankHuang0516/EClaw/issues/2244)) ([05d7782](https://github.com/HankHuang0516/EClaw/commit/05d7782fe468089573206d9d99aa771a77a9c081))

# [1.1121.0](https://github.com/HankHuang0516/EClaw/compare/v1.1120.0...v1.1121.0) (2026-04-28)


### Features

* **telegram:** long-poll adapter PoC (card_406e612942ff062a06fc47be) ([#2238](https://github.com/HankHuang0516/EClaw/issues/2238)) ([f46f03a](https://github.com/HankHuang0516/EClaw/commit/f46f03acf94079b48a8807e77e057b24c0277e18))

# [1.1120.0](https://github.com/HankHuang0516/EClaw/compare/v1.1119.0...v1.1120.0) (2026-04-28)


### Features

* **mindmap:** Phase 4 write-side — capture chat_anchor_coord on card create ([#2237](https://github.com/HankHuang0516/EClaw/issues/2237)) ([2431b11](https://github.com/HankHuang0516/EClaw/commit/2431b11b23a7cf4ffb3d70d3a80f5006971be804))

# [1.1119.0](https://github.com/HankHuang0516/EClaw/compare/v1.1118.0...v1.1119.0) (2026-04-28)


### Features

* **kanban:** Phase 3 — chat-anchor validator on POST /card ([#2236](https://github.com/HankHuang0516/EClaw/issues/2236)) ([6f79510](https://github.com/HankHuang0516/EClaw/commit/6f79510069f1a45fd8e206465a687b43168fb0d7))

# [1.1118.0](https://github.com/HankHuang0516/EClaw/compare/v1.1117.2...v1.1118.0) (2026-04-28)


### Features

* **kanban:** chat-anchor picker UI (chat-anchor P2) ([#2235](https://github.com/HankHuang0516/EClaw/issues/2235)) ([d9ccca0](https://github.com/HankHuang0516/EClaw/commit/d9ccca0e64493650a10ec10bcb35a2524885f8ef)), closes [#2228](https://github.com/HankHuang0516/EClaw/issues/2228) [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#5](https://github.com/HankHuang0516/EClaw/issues/5)

## [1.1117.2](https://github.com/HankHuang0516/EClaw/compare/v1.1117.1...v1.1117.2) (2026-04-28)


### Bug Fixes

* **i18n:** EN labels for cron-notify keys leaked CJK 母卡 ([#2234](https://github.com/HankHuang0516/EClaw/issues/2234)) ([ea1e2d8](https://github.com/HankHuang0516/EClaw/commit/ea1e2d8f387ecfebb72237734d05512c763d634b)), closes [#2232](https://github.com/HankHuang0516/EClaw/issues/2232)

## [1.1117.1](https://github.com/HankHuang0516/EClaw/compare/v1.1117.0...v1.1117.1) (2026-04-28)


### Bug Fixes

* **settings:** focus mode hides logout/delete-account block ([#2233](https://github.com/HankHuang0516/EClaw/issues/2233)) ([351c003](https://github.com/HankHuang0516/EClaw/commit/351c003023a532aaa6e288da2738db025c9106fc))

# [1.1117.0](https://github.com/HankHuang0516/EClaw/compare/v1.1116.1...v1.1117.0) (2026-04-28)


### Features

* **kanban-nudge:** split 內容督促 vs 排程觸發 + per-entity throttle ([#2232](https://github.com/HankHuang0516/EClaw/issues/2232)) ([8354c92](https://github.com/HankHuang0516/EClaw/commit/8354c92999aa4efec99d5608c13dcc78e80dd493)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)

## [1.1116.1](https://github.com/HankHuang0516/EClaw/compare/v1.1116.0...v1.1116.1) (2026-04-28)


### Bug Fixes

* **kanban:** screenshot lightbox supports wheel/dblclick/drag/pinch zoom ([#2230](https://github.com/HankHuang0516/EClaw/issues/2230)) ([3c56e60](https://github.com/HankHuang0516/EClaw/commit/3c56e6087bde1a31e40736cc80e4b3eed70438a1))

# [1.1116.0](https://github.com/HankHuang0516/EClaw/compare/v1.1115.0...v1.1116.0) (2026-04-28)


### Features

* **settings:** deep-link section filter for APP entry buttons ([#2229](https://github.com/HankHuang0516/EClaw/issues/2229)) ([d0bc4a6](https://github.com/HankHuang0516/EClaw/commit/d0bc4a61f42920a0c8472e3838a8a95e2be5a148)), closes [#channelApiCard](https://github.com/HankHuang0516/EClaw/issues/channelApiCard) [#kanban-nudge-card](https://github.com/HankHuang0516/EClaw/issues/kanban-nudge-card)

# [1.1115.0](https://github.com/HankHuang0516/EClaw/compare/v1.1114.4...v1.1115.0) (2026-04-28)


### Features

* **kanban:** chat-anchor schema — pin originating chat msg + mind-map coord (#chat-anchor-P1) ([#2228](https://github.com/HankHuang0516/EClaw/issues/2228)) ([eed5f44](https://github.com/HankHuang0516/EClaw/commit/eed5f44eef3ad2e8b2510a37272dac5967cde1e0)), closes [#chat-anchor-P1](https://github.com/HankHuang0516/EClaw/issues/chat-anchor-P1)

## [1.1114.4](https://github.com/HankHuang0516/EClaw/compare/v1.1114.3...v1.1114.4) (2026-04-28)


### Bug Fixes

* **portal:** delete mindmap.html standalone, port view-mode=full to mission embed ([#2226](https://github.com/HankHuang0516/EClaw/issues/2226)) ([147edb2](https://github.com/HankHuang0516/EClaw/commit/147edb2744dcb66652e1a07a8b0e3fbd3853a3ba)), closes [#2222](https://github.com/HankHuang0516/EClaw/issues/2222)
* **kanban:** L2/L3 escalation also notifies assigned_bots, not just notifyEntityId ([#2227](https://github.com/HankHuang0516/EClaw/issues/2227)) ([b4fcd5b](https://github.com/HankHuang0516/EClaw/commit/b4fcd5bc7e35d0cf621099eab8df8a75a045fa9a))

## [1.1114.3](https://github.com/HankHuang0516/EClaw/compare/v1.1114.2...v1.1114.3) (2026-04-28)


### Bug Fixes

* **kanban:** i18n cards default requires_screenshot_review=false ([#2224](https://github.com/HankHuang0516/EClaw/issues/2224)) ([368bc16](https://github.com/HankHuang0516/EClaw/commit/368bc166ff1743ee16c31dc0aa3f9bb6c26736b7))

## [1.1114.2](https://github.com/HankHuang0516/EClaw/compare/v1.1114.1...v1.1114.2) (2026-04-28)


### Bug Fixes

* **mindmap:** add fullscreen button to mission.html embed ([#2225](https://github.com/HankHuang0516/EClaw/issues/2225)) ([5351632](https://github.com/HankHuang0516/EClaw/commit/53516325f6850098e3142d5ac31d4006b9cc8b99)), closes [2222/#2223](https://github.com/HankHuang0516/EClaw/issues/2223)

## [1.1114.1](https://github.com/HankHuang0516/EClaw/compare/v1.1114.0...v1.1114.1) (2026-04-28)


### Bug Fixes

* **mindmap:** hide top nav when ?view-mode=full ([#2223](https://github.com/HankHuang0516/EClaw/issues/2223)) ([d7eef15](https://github.com/HankHuang0516/EClaw/commit/d7eef15a55b3b3d025c1fbbf99ab7b7a3eb706f7)), closes [#navContainer](https://github.com/HankHuang0516/EClaw/issues/navContainer)

# [1.1114.0](https://github.com/HankHuang0516/EClaw/compare/v1.1113.1...v1.1114.0) (2026-04-28)


### Features

* **mindmap:** add fullscreen toggle + ?view-mode=full URL flag ([#2222](https://github.com/HankHuang0516/EClaw/issues/2222)) ([fecc57a](https://github.com/HankHuang0516/EClaw/commit/fecc57aec84828df95bbe800cac64043d65c4555))

## [1.1113.1](https://github.com/HankHuang0516/EClaw/compare/v1.1113.0...v1.1113.1) (2026-04-28)


### Bug Fixes

* **invite:** preserve ?redeem= across signup/login flow ([#2221](https://github.com/HankHuang0516/EClaw/issues/2221)) ([c676bf9](https://github.com/HankHuang0516/EClaw/commit/c676bf941712316456711bdbb46b59e3b001e456))

# [1.1113.0](https://github.com/HankHuang0516/EClaw/compare/v1.1112.1...v1.1113.0) (2026-04-28)


### Features

* **seo:** community.html og:locale + 13 og:locale:alternate ([#2220](https://github.com/HankHuang0516/EClaw/issues/2220)) ([b140b37](https://github.com/HankHuang0516/EClaw/commit/b140b371a1471113bbc81d09dc981e7a8f1e0e89)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2)

## [1.1112.1](https://github.com/HankHuang0516/EClaw/compare/v1.1112.0...v1.1112.1) (2026-04-28)


### Bug Fixes

* **test:** chat-his-link-render expected locale count 15 → 14 ([#2219](https://github.com/HankHuang0516/EClaw/issues/2219)) ([b9ed8a7](https://github.com/HankHuang0516/EClaw/commit/b9ed8a7452546cda825abb984b8b82d7686f42e6))

# [1.1112.0](https://github.com/HankHuang0516/EClaw/compare/v1.1111.1...v1.1112.0) (2026-04-28)


### Features

* **landing:** add Browse Bots CTA → /portal/community.html (13 locales) ([#2218](https://github.com/HankHuang0516/EClaw/issues/2218)) ([fa8a925](https://github.com/HankHuang0516/EClaw/commit/fa8a9252e72ebe0c313b12ccb580441d4d13063b))

## [1.1111.1](https://github.com/HankHuang0516/EClaw/compare/v1.1111.0...v1.1111.1) (2026-04-28)


### Bug Fixes

* **hermes:** exclude pre-H1.2 ghost entities from severe trigger (Phase H1.5 hotfix) ([#2217](https://github.com/HankHuang0516/EClaw/issues/2217)) ([a0fcc90](https://github.com/HankHuang0516/EClaw/commit/a0fcc9067c362184281a3cae731f5eed378a6d00))

# [1.1111.0](https://github.com/HankHuang0516/EClaw/compare/v1.1110.0...v1.1111.0) (2026-04-28)


### Features

* **hermes:** /api/health 503 → Railway auto-restart on severe stuck (Phase H1.5) ([#2216](https://github.com/HankHuang0516/EClaw/issues/2216)) ([022c8a0](https://github.com/HankHuang0516/EClaw/commit/022c8a01819fe3bc3d30c474786cc0c36586c8a7))

# [1.1110.0](https://github.com/HankHuang0516/EClaw/compare/v1.1109.2...v1.1110.0) (2026-04-28)


### Features

* **hermes:** delivery-stuck heartbeat detection (Phase H1.2) ([#2215](https://github.com/HankHuang0516/EClaw/issues/2215)) ([6ee0a92](https://github.com/HankHuang0516/EClaw/commit/6ee0a92ffaf76fdcea5fededf1f97731d93ff17a))

## [1.1109.2](https://github.com/HankHuang0516/EClaw/compare/v1.1109.1...v1.1109.2) (2026-04-28)


### Bug Fixes

* **hermes:** route all 5 push sites through enqueueMessage + boot-time clamp (Phase H1.1b) ([#2214](https://github.com/HankHuang0516/EClaw/issues/2214)) ([13807d1](https://github.com/HankHuang0516/EClaw/commit/13807d1b3b4cd3a9a33eca8dec2aae58fbb75bb2))

## [1.1109.1](https://github.com/HankHuang0516/EClaw/compare/v1.1109.0...v1.1109.1) (2026-04-28)


### Bug Fixes

* **hermes:** cap per-entity messageQueue at 200 + DLQ buffer (Phase H1.1) ([#2213](https://github.com/HankHuang0516/EClaw/issues/2213)) ([8c8a765](https://github.com/HankHuang0516/EClaw/commit/8c8a76513a4c9754ef8607241d431a23c1cf3101))

# [1.1109.0](https://github.com/HankHuang0516/EClaw/compare/v1.1108.0...v1.1109.0) (2026-04-28)


### Features

* **mindmap:** finer wheel-zoom step + decoupled trackpad pinch ([#2212](https://github.com/HankHuang0516/EClaw/issues/2212)) ([6402305](https://github.com/HankHuang0516/EClaw/commit/6402305926bfb6380d0e5bd768be27f187bd38da))

# [1.1108.0](https://github.com/HankHuang0516/EClaw/compare/v1.1107.10...v1.1108.0) (2026-04-28)


### Features

* **kanban:** expand search to comments/subcards + archived detail ([#2211](https://github.com/HankHuang0516/EClaw/issues/2211)) ([8a93e4b](https://github.com/HankHuang0516/EClaw/commit/8a93e4b2881b3aa9e2fc283dea52d43370b24a89))

## [1.1107.10](https://github.com/HankHuang0516/EClaw/compare/v1.1107.9...v1.1107.10) (2026-04-28)


### Bug Fixes

* **kanban-i18n:** add 'blocked' statusLabel to 12 remaining locales (#card_45b3b009) ([#2208](https://github.com/HankHuang0516/EClaw/issues/2208)) ([c0bdf0e](https://github.com/HankHuang0516/EClaw/commit/c0bdf0e3f8c2136aa0124ce66b96320a17ebde31)), closes [#card_45b3b009](https://github.com/HankHuang0516/EClaw/issues/card_45b3b009) [#2204](https://github.com/HankHuang0516/EClaw/issues/2204) [#5](https://github.com/HankHuang0516/EClaw/issues/5)

## [1.1107.9](https://github.com/HankHuang0516/EClaw/compare/v1.1107.8...v1.1107.9) (2026-04-28)


### Bug Fixes

* **kanban-i18n:** add 'blocked' status label to EN + zh-TW (P1.3 baseline) ([#2204](https://github.com/HankHuang0516/EClaw/issues/2204)) ([93e877e](https://github.com/HankHuang0516/EClaw/commit/93e877ef7f36883629b9beb1024b40dc2090767a)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)

## [1.1107.8](https://github.com/HankHuang0516/EClaw/compare/v1.1107.7...v1.1107.8) (2026-04-28)


### Bug Fixes

* **kanban:** nudge config now sources from kanban-status.js SoT (P1.2) ([#2203](https://github.com/HankHuang0516/EClaw/issues/2203)) ([2076b08](https://github.com/HankHuang0516/EClaw/commit/2076b08dba56abc491521f8ae00d4c63e0558024))

## [1.1107.7](https://github.com/HankHuang0516/EClaw/compare/v1.1107.6...v1.1107.7) (2026-04-28)


### Bug Fixes

* **kanban:** unify status enum via shared/kanban-status.js (P1.1) ([#2202](https://github.com/HankHuang0516/EClaw/issues/2202)) ([0960377](https://github.com/HankHuang0516/EClaw/commit/096037763de1a1f33ac16c3691cdac79ced6932f))

## [1.1107.6](https://github.com/HankHuang0516/EClaw/compare/v1.1107.5...v1.1107.6) (2026-04-28)


### Bug Fixes

* **card-holder:** remove dup Email field + i18n shared editor labels (#card_deeb022e) ([#2200](https://github.com/HankHuang0516/EClaw/issues/2200)) ([e885bce](https://github.com/HankHuang0516/EClaw/commit/e885bce1da3698836c39709644bb15c86d9261f1)), closes [#card_deeb022e](https://github.com/HankHuang0516/EClaw/issues/card_deeb022e) [#edit-email](https://github.com/HankHuang0516/EClaw/issues/edit-email)

## [1.1107.5](https://github.com/HankHuang0516/EClaw/compare/v1.1107.4...v1.1107.5) (2026-04-28)


### Bug Fixes

* **i18n:** delete dup keys across en/zh/ms/hi (#card_c65bdf59) ([#2199](https://github.com/HankHuang0516/EClaw/issues/2199)) ([295b614](https://github.com/HankHuang0516/EClaw/commit/295b614152552bf2e5322d59fd47b2209a3efdfc)), closes [#card_c65bdf59](https://github.com/HankHuang0516/EClaw/issues/card_c65bdf59)

## [1.1107.4](https://github.com/HankHuang0516/EClaw/compare/v1.1107.3...v1.1107.4) (2026-04-27)


### Bug Fixes

* **i18n:** make dup-key lint script string-aware + accept all locale headers (#card_b4e0ac79) ([#2198](https://github.com/HankHuang0516/EClaw/issues/2198)) ([3288547](https://github.com/HankHuang0516/EClaw/commit/32885471b0f2f6bd72ce375d3571709ab8323330)), closes [#card_b4e0ac79](https://github.com/HankHuang0516/EClaw/issues/card_b4e0ac79) [#2195](https://github.com/HankHuang0516/EClaw/issues/2195)

## [1.1107.3](https://github.com/HankHuang0516/EClaw/compare/v1.1107.2...v1.1107.3) (2026-04-27)


### Bug Fixes

* scheduled_messages schema migration, skill-doc XSS, protobufjs critical vuln ([#2196](https://github.com/HankHuang0516/EClaw/issues/2196)) ([f9fea15](https://github.com/HankHuang0516/EClaw/commit/f9fea1577e322cc5cb4f13f91bec0749f956f2ed)), closes [#2131](https://github.com/HankHuang0516/EClaw/issues/2131)

## [1.1107.2](https://github.com/HankHuang0516/EClaw/compare/v1.1107.1...v1.1107.2) (2026-04-27)


### Bug Fixes

* **mindmap:** wrap toolbar on narrow viewports so status stays visible ([#2194](https://github.com/HankHuang0516/EClaw/issues/2194)) ([577ccbc](https://github.com/HankHuang0516/EClaw/commit/577ccbcc00bb5a7de7df9f43db0b0b7906e0f17a)), closes [#mmStatus](https://github.com/HankHuang0516/EClaw/issues/mmStatus)

## [1.1107.1](https://github.com/HankHuang0516/EClaw/compare/v1.1107.0...v1.1107.1) (2026-04-27)


### Bug Fixes

* **mindmap:** recover from stale rootNodeId 404 instead of dead-end ([#2193](https://github.com/HankHuang0516/EClaw/issues/2193)) ([711d74a](https://github.com/HankHuang0516/EClaw/commit/711d74a32c2e580ff64f877eb603ad560bee095d)), closes [#2192](https://github.com/HankHuang0516/EClaw/issues/2192)

# [1.1107.0](https://github.com/HankHuang0516/EClaw/compare/v1.1106.0...v1.1107.0) (2026-04-27)


### Features

* **settings:** add Mind Map entry under Services (v1.0.1 release prep) ([#2192](https://github.com/HankHuang0516/EClaw/issues/2192)) ([b89cf0f](https://github.com/HankHuang0516/EClaw/commit/b89cf0f855c6c041940e3c0e45d3cf9e2262ec7d))

# [1.1106.0](https://github.com/HankHuang0516/EClaw/compare/v1.1105.1...v1.1106.0) (2026-04-27)


### Features

* **hermes-plugins:** hermes-trace JSONL diagnostic plugin ([#2180](https://github.com/HankHuang0516/EClaw/issues/2180)) ([f6c701d](https://github.com/HankHuang0516/EClaw/commit/f6c701d3b856ea374415a330314f7ffa216a8a6d))

## [1.1105.1](https://github.com/HankHuang0516/EClaw/compare/v1.1105.0...v1.1105.1) (2026-04-27)


### Reverts

* Revert "feat(ios): add Mind Map entry in Settings → Services ([#2178](https://github.com/HankHuang0516/EClaw/issues/2178))" ([#2179](https://github.com/HankHuang0516/EClaw/issues/2179)) ([97924cf](https://github.com/HankHuang0516/EClaw/commit/97924cf3063757dbdd783329e0783e4b73c86d9c))

# [1.1105.0](https://github.com/HankHuang0516/EClaw/compare/v1.1104.3...v1.1105.0) (2026-04-27)


### Features

* **ios:** add Mind Map entry in Settings → Services ([#2178](https://github.com/HankHuang0516/EClaw/issues/2178)) ([7baa2bb](https://github.com/HankHuang0516/EClaw/commit/7baa2bbc3a7231aec629931e1da5fe26fcb1ee61))

## [1.1104.3](https://github.com/HankHuang0516/EClaw/compare/v1.1104.2...v1.1104.3) (2026-04-27)


### Bug Fixes

* **ui:** remove "15 msg/day" copy after limit removal (PR [#2176](https://github.com/HankHuang0516/EClaw/issues/2176) follow-up) ([#2177](https://github.com/HankHuang0516/EClaw/issues/2177)) ([399e20f](https://github.com/HankHuang0516/EClaw/commit/399e20f6dc0d1e98080c08e26ce5d9d72f43da8d)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)

## [1.1104.2](https://github.com/HankHuang0516/EClaw/compare/v1.1104.1...v1.1104.2) (2026-04-27)


### Bug Fixes

* **usage:** remove daily message limit (15 + invite bonus) ([#2176](https://github.com/HankHuang0516/EClaw/issues/2176)) ([d550c96](https://github.com/HankHuang0516/EClaw/commit/d550c9651b209cbae19efb774c1be4af1e12452e))

## [1.1104.1](https://github.com/HankHuang0516/EClaw/compare/v1.1104.0...v1.1104.1) (2026-04-26)


### Bug Fixes

* **chat:** clear stale chat_draft when mindmap cite prefills input ([#2174](https://github.com/HankHuang0516/EClaw/issues/2174)) ([1144575](https://github.com/HankHuang0516/EClaw/commit/11445757210691e3483e5a9f502f91e35c32bdc9))

# [1.1104.0](https://github.com/HankHuang0516/EClaw/compare/v1.1103.3...v1.1104.0) (2026-04-26)


### Features

* **mindmap:** automation subsystem + dual-axis edges + unified cite ([#2173](https://github.com/HankHuang0516/EClaw/issues/2173)) ([f01c10c](https://github.com/HankHuang0516/EClaw/commit/f01c10cbffd11009687aa73bf24a4c3e455e154d))

## [1.1103.3](https://github.com/HankHuang0516/EClaw/compare/v1.1103.2...v1.1103.3) (2026-04-26)


### Bug Fixes

* **mission-mindmap:** citable card_<hex> + sidebar zoom ([#2171](https://github.com/HankHuang0516/EClaw/issues/2171)) ([684e88b](https://github.com/HankHuang0516/EClaw/commit/684e88b7b99e7611dd89e264ed5a0a7a7a2d9a4e))

## [1.1103.2](https://github.com/HankHuang0516/EClaw/compare/v1.1103.1...v1.1103.2) (2026-04-26)


### Bug Fixes

* **api-auth:** /api/entities + /api/status accept botSecret+entityId ([#2156](https://github.com/HankHuang0516/EClaw/issues/2156)) ([cca0858](https://github.com/HankHuang0516/EClaw/commit/cca085836de9320b080505afca1ce63d9b8fce04))

## [1.1103.1](https://github.com/HankHuang0516/EClaw/compare/v1.1103.0...v1.1103.1) (2026-04-26)


### Bug Fixes

* **mindmap:** chain subsystem zoom phases so out→pan→in actually plays ([#2155](https://github.com/HankHuang0516/EClaw/issues/2155)) ([9656b4b](https://github.com/HankHuang0516/EClaw/commit/9656b4bb1c447dcb6184500e0fe091d2a7d68040))

# [1.1103.0](https://github.com/HankHuang0516/EClaw/compare/v1.1102.0...v1.1103.0) (2026-04-26)


### Features

* **publisher:** vault-first WeChat creds (multi-tenant 9/10) ([#2152](https://github.com/HankHuang0516/EClaw/issues/2152)) ([b8f11a9](https://github.com/HankHuang0516/EClaw/commit/b8f11a9c316dfff20584980b964ce829e86bf712))

# [1.1102.0](https://github.com/HankHuang0516/EClaw/compare/v1.1101.0...v1.1102.0) (2026-04-26)


### Features

* **publisher:** vault-first Blogger creds (multi-tenant 8/10) ([#2151](https://github.com/HankHuang0516/EClaw/issues/2151)) ([e7a432a](https://github.com/HankHuang0516/EClaw/commit/e7a432acc7aa8fe0d7e4866066bede006414eeb7))

# [1.1101.0](https://github.com/HankHuang0516/EClaw/compare/v1.1100.0...v1.1101.0) (2026-04-26)


### Features

* **publisher:** Tumblr vault-first multi-tenant ([#7](https://github.com/HankHuang0516/EClaw/issues/7)/10) ([#2150](https://github.com/HankHuang0516/EClaw/issues/2150)) ([9ed972d](https://github.com/HankHuang0516/EClaw/commit/9ed972d4e4a9a54a3f71260cb41d316d2aa00601))

# [1.1100.0](https://github.com/HankHuang0516/EClaw/compare/v1.1099.0...v1.1100.0) (2026-04-26)


### Features

* **publisher:** Reddit vault-first multi-tenant support ([#2149](https://github.com/HankHuang0516/EClaw/issues/2149)) ([e03709d](https://github.com/HankHuang0516/EClaw/commit/e03709da809429649f47846ae47991633ff039c5))

# [1.1099.0](https://github.com/HankHuang0516/EClaw/compare/v1.1098.0...v1.1099.0) (2026-04-26)


### Features

* **publisher:** LinkedIn vault-first multi-tenant support ([#2148](https://github.com/HankHuang0516/EClaw/issues/2148)) ([d20f9e2](https://github.com/HankHuang0516/EClaw/commit/d20f9e2019bd15fdabbe2fb12623bc0197a70721))

# [1.1098.0](https://github.com/HankHuang0516/EClaw/compare/v1.1097.0...v1.1098.0) (2026-04-26)


### Features

* **publisher:** Qiita vault-first multi-tenant (4/10 platforms) ([#2147](https://github.com/HankHuang0516/EClaw/issues/2147)) ([7bc9816](https://github.com/HankHuang0516/EClaw/commit/7bc9816bfd956f74bde0b6901ab988c44cf3d8db)), closes [#2146](https://github.com/HankHuang0516/EClaw/issues/2146)

# [1.1097.0](https://github.com/HankHuang0516/EClaw/compare/v1.1096.0...v1.1097.0) (2026-04-26)


### Features

* **publisher:** DEV.to vault-first multi-tenant (3/10 platforms) ([#2146](https://github.com/HankHuang0516/EClaw/issues/2146)) ([51c4c8f](https://github.com/HankHuang0516/EClaw/commit/51c4c8f4c468201d2bdefd273b3338791cb8e03d))

# [1.1096.0](https://github.com/HankHuang0516/EClaw/compare/v1.1095.0...v1.1096.0) (2026-04-26)


### Features

* **publisher:** Hashnode vault-first multi-tenant (2/10 platforms) ([#2145](https://github.com/HankHuang0516/EClaw/issues/2145)) ([aa6f7d2](https://github.com/HankHuang0516/EClaw/commit/aa6f7d2c9c3d94caa909a7a66ad229465711421d))

# [1.1095.0](https://github.com/HankHuang0516/EClaw/compare/v1.1094.1...v1.1095.0) (2026-04-26)


### Features

* **info:** publisher multi-tenant status panel + key roadmap ([#2144](https://github.com/HankHuang0516/EClaw/issues/2144)) ([ea9a257](https://github.com/HankHuang0516/EClaw/commit/ea9a2572d04a78e73cec57dfb4a825d0052f7de7))

## [1.1094.1](https://github.com/HankHuang0516/EClaw/compare/v1.1094.0...v1.1094.1) (2026-04-26)


### Bug Fixes

* **mindmap:** re-render Subsystems popover on every open ([#2143](https://github.com/HankHuang0516/EClaw/issues/2143)) ([ef0da2c](https://github.com/HankHuang0516/EClaw/commit/ef0da2cae4d9a7d64126d25eb689097808869e86))

# [1.1094.0](https://github.com/HankHuang0516/EClaw/compare/v1.1093.2...v1.1094.0) (2026-04-26)


### Features

* **mindmap:** subsystems toolbar dropdown + cytoscape pan/zoom animation ([#2142](https://github.com/HankHuang0516/EClaw/issues/2142)) ([f93d72b](https://github.com/HankHuang0516/EClaw/commit/f93d72b37ecea1d13f7640546ea4171d38a886b4))

## [1.1093.2](https://github.com/HankHuang0516/EClaw/compare/v1.1093.1...v1.1093.2) (2026-04-26)


### Bug Fixes

* **mindmap:** wire mindmap node citation chip into chat ([#2140](https://github.com/HankHuang0516/EClaw/issues/2140)) ([1968d50](https://github.com/HankHuang0516/EClaw/commit/1968d50e48cf66ea6f36b5522a39dcbc567f58d4))

## [1.1093.1](https://github.com/HankHuang0516/EClaw/compare/v1.1093.0...v1.1093.1) (2026-04-26)


### Bug Fixes

* **info-page:** correct vector-memory cross-bot scope + embedding key prerequisite ([#2139](https://github.com/HankHuang0516/EClaw/issues/2139)) ([59bfba3](https://github.com/HankHuang0516/EClaw/commit/59bfba319feb39be7e75db33799114d488b07335))

# [1.1093.0](https://github.com/HankHuang0516/EClaw/compare/v1.1092.1...v1.1093.0) (2026-04-25)


### Features

* **kanban:** add entity_id funnel filter with permalink ([#2134](https://github.com/HankHuang0516/EClaw/issues/2134)) ([f1b3f6e](https://github.com/HankHuang0516/EClaw/commit/f1b3f6e44a15878d1f2a218a0905be7430339c03)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5)

## [1.1092.1](https://github.com/HankHuang0516/EClaw/compare/v1.1092.0...v1.1092.1) (2026-04-25)


### Bug Fixes

* **compact:** wrap scheduled_messages migration in SAVEPOINT + update CLAUDE.md ([#2132](https://github.com/HankHuang0516/EClaw/issues/2132)) ([5379414](https://github.com/HankHuang0516/EClaw/commit/53794147be70a5065656d3a1e5717d4d7cac02ab))

# [1.1092.0](https://github.com/HankHuang0516/EClaw/compare/v1.1091.0...v1.1092.0) (2026-04-25)


### Features

* **rental:** add 我的上架 tab for listing pause/delist outside agent card ([#2129](https://github.com/HankHuang0516/EClaw/issues/2129)) ([20d961b](https://github.com/HankHuang0516/EClaw/commit/20d961b782153c9ebef3b347ecefd07e24c9c004))

# [1.1091.0](https://github.com/HankHuang0516/EClaw/compare/v1.1090.0...v1.1091.0) (2026-04-25)


### Features

* **mindmap:** phase 4 — anchor notes to kanban cards / chat messages ([#2128](https://github.com/HankHuang0516/EClaw/issues/2128)) ([bffc3de](https://github.com/HankHuang0516/EClaw/commit/bffc3de2609ce923e8b223e3bf0e46083063b300))

# [1.1090.0](https://github.com/HankHuang0516/EClaw/compare/v1.1089.0...v1.1090.0) (2026-04-25)


### Features

* **mindmap:** live kanban data feed for portal mind-map (PR-C) ([#2126](https://github.com/HankHuang0516/EClaw/issues/2126)) ([47eb4e8](https://github.com/HankHuang0516/EClaw/commit/47eb4e83b22bec553dd7c9d5491d998a0296e628))

# [1.1089.0](https://github.com/HankHuang0516/EClaw/compare/v1.1088.0...v1.1089.0) (2026-04-25)


### Features

* **mindmap:** chip popover + 📌 pin tray + mobile portrait fix ([#2124](https://github.com/HankHuang0516/EClaw/issues/2124)) ([01423a8](https://github.com/HankHuang0516/EClaw/commit/01423a8c85eb39eebcf32623cb25139024c9e49e))

# [1.1088.0](https://github.com/HankHuang0516/EClaw/compare/v1.1087.1...v1.1088.0) (2026-04-25)


### Features

* **rental:** P0 Phase 4 — terminate active contracts on entity rebind ([#2118](https://github.com/HankHuang0516/EClaw/issues/2118)) ([e83167d](https://github.com/HankHuang0516/EClaw/commit/e83167d66b9d4b2ab1f343a08f5ed31aff3fedac))

## [1.1087.1](https://github.com/HankHuang0516/EClaw/compare/v1.1087.0...v1.1087.1) (2026-04-25)


### Bug Fixes

* **i18n:** unblock all portal pages — escape inner quotes + add 30 missing roadmap keys ([#2116](https://github.com/HankHuang0516/EClaw/issues/2116)) ([f988139](https://github.com/HankHuang0516/EClaw/commit/f9881399e89ece205e7096f622b90d397486b2d0))

# [1.1087.0](https://github.com/HankHuang0516/EClaw/compare/v1.1086.2...v1.1087.0) (2026-04-25)


### Features

* **mindmap:** add v3 search bar + 新節點 button + .mm-sep dividers ([#2112](https://github.com/HankHuang0516/EClaw/issues/2112)) ([bf3e2be](https://github.com/HankHuang0516/EClaw/commit/bf3e2be97a14b4db296a450d943b002ede4fc65c))

## [1.1086.2](https://github.com/HankHuang0516/EClaw/compare/v1.1086.1...v1.1086.2) (2026-04-25)


### Bug Fixes

* **arena:** form_fill country select defaults to expected value ([#2111](https://github.com/HankHuang0516/EClaw/issues/2111)) ([3d1ade5](https://github.com/HankHuang0516/EClaw/commit/3d1ade5e3fd310980e4dc6508748c78f5f779a8d))

## [1.1086.1](https://github.com/HankHuang0516/EClaw/compare/v1.1086.0...v1.1086.1) (2026-04-25)


### Bug Fixes

* **arena:** add drag_drop / navigation / distraction visual pages (PR2) ([#2110](https://github.com/HankHuang0516/EClaw/issues/2110)) ([f614e25](https://github.com/HankHuang0516/EClaw/commit/f614e251ba116f941acbe235a9bf34ad606f085f))

# [1.1086.0](https://github.com/HankHuang0516/EClaw/compare/v1.1085.1...v1.1086.0) (2026-04-25)


### Features

* **mindmap:** align PR-B implementation with v3 dense mockup spec ([#2109](https://github.com/HankHuang0516/EClaw/issues/2109)) ([a016930](https://github.com/HankHuang0516/EClaw/commit/a01693048528181cd074e6a7f48df6447b670efa))

## [1.1085.1](https://github.com/HankHuang0516/EClaw/compare/v1.1085.0...v1.1085.1) (2026-04-25)


### Bug Fixes

* **arena:** add /arena/:sessionToken visual test page (PR1) ([#2108](https://github.com/HankHuang0516/EClaw/issues/2108)) ([3f1478f](https://github.com/HankHuang0516/EClaw/commit/3f1478f733e323cd8d0d2dff84959690ca6aa584))

# [1.1085.0](https://github.com/HankHuang0516/EClaw/compare/v1.1084.1...v1.1085.0) (2026-04-25)


### Features

* [@mention](https://github.com/mention) helper auto-resolves entityId on the sender side (card_1e59f703) ([#2104](https://github.com/HankHuang0516/EClaw/issues/2104)) ([accbc57](https://github.com/HankHuang0516/EClaw/commit/accbc57be939426441a51d7721186cffaeab0ee2))

## [1.1084.1](https://github.com/HankHuang0516/EClaw/compare/v1.1084.0...v1.1084.1) (2026-04-25)


### Bug Fixes

* **kanban:** notes tab reads camelCase to match API response ([#2097](https://github.com/HankHuang0516/EClaw/issues/2097)) ([96c0d06](https://github.com/HankHuang0516/EClaw/commit/96c0d06a2d9ef8550c00b0c5efe6ac7585eec19d))

# [1.1084.0](https://github.com/HankHuang0516/EClaw/compare/v1.1083.0...v1.1084.0) (2026-04-25)


### Features

* **mission:** mind-map card on mission.html (PR-A static mockup) ([#2096](https://github.com/HankHuang0516/EClaw/issues/2096)) ([d001420](https://github.com/HankHuang0516/EClaw/commit/d0014205cbdaabb7f0103df181a77cd628f0c6d3))

# [1.1083.0](https://github.com/HankHuang0516/EClaw/compare/v1.1082.2...v1.1083.0) (2026-04-25)


### Features

* **community:** add hero CTA "Create your own Bot" linking to register tab ([#2091](https://github.com/HankHuang0516/EClaw/issues/2091)) ([70bff12](https://github.com/HankHuang0516/EClaw/commit/70bff12941b54fa8f8513a22a495ba6b274c0d2b))

## [1.1082.2](https://github.com/HankHuang0516/EClaw/compare/v1.1082.1...v1.1082.2) (2026-04-25)


### Bug Fixes

* **kanban:** bump R2 signed URL TTL from 10min to 3 days ([#2090](https://github.com/HankHuang0516/EClaw/issues/2090)) ([84217a8](https://github.com/HankHuang0516/EClaw/commit/84217a8659a7c54408d162f4b11b29083c9b3ef8))

## [1.1082.1](https://github.com/HankHuang0516/EClaw/compare/v1.1082.0...v1.1082.1) (2026-04-25)


### Bug Fixes

* **chip:** show 📌 requote button on chip popover error + entity modal ([#2089](https://github.com/HankHuang0516/EClaw/issues/2089)) ([99702d0](https://github.com/HankHuang0516/EClaw/commit/99702d07a7773b3ee796176b1643d79b512bbc1e)), closes [#entityPreviewModal](https://github.com/HankHuang0516/EClaw/issues/entityPreviewModal)

# [1.1082.0](https://github.com/HankHuang0516/EClaw/compare/v1.1081.4...v1.1082.0) (2026-04-25)


### Features

* **kanban:** chip deep-link anchor — auto-open modal + flash comment ([#2087](https://github.com/HankHuang0516/EClaw/issues/2087)) ([b1f0f2b](https://github.com/HankHuang0516/EClaw/commit/b1f0f2b266f17afc488c0ca8df004af34016873d))

## [1.1081.4](https://github.com/HankHuang0516/EClaw/compare/v1.1081.3...v1.1081.4) (2026-04-25)


### Bug Fixes

* **i18n:** close hi-locale block properly; reclaim 557 orphan keys ([#2086](https://github.com/HankHuang0516/EClaw/issues/2086)) ([6be453e](https://github.com/HankHuang0516/EClaw/commit/6be453e162783fe45e8e51ac1c3d061d069f51ed))

## [1.1081.3](https://github.com/HankHuang0516/EClaw/compare/v1.1081.2...v1.1081.3) (2026-04-25)


### Bug Fixes

* **chat:** schedule-popup contrast — replace undefined --accent var ([#2085](https://github.com/HankHuang0516/EClaw/issues/2085)) ([f90061e](https://github.com/HankHuang0516/EClaw/commit/f90061e29f0701dae5369a27e8398d113179257a)), closes [#6C63FF](https://github.com/HankHuang0516/EClaw/issues/6C63FF)

## [1.1081.2](https://github.com/HankHuang0516/EClaw/compare/v1.1081.1...v1.1081.2) (2026-04-25)


### Bug Fixes

* **schedule-popup:** edit form opens on legacy ids; styled confirm shows i18n labels ([#2084](https://github.com/HankHuang0516/EClaw/issues/2084)) ([7b4d90e](https://github.com/HankHuang0516/EClaw/commit/7b4d90ec2a7c17cf9deb1d8922b51a23b65137bd)), closes [#2082](https://github.com/HankHuang0516/EClaw/issues/2082)

## [1.1081.1](https://github.com/HankHuang0516/EClaw/compare/v1.1081.0...v1.1081.1) (2026-04-24)


### Bug Fixes

* **scheduled-messages:** hotfix prod schema migration for legacy tables ([#2083](https://github.com/HankHuang0516/EClaw/issues/2083)) ([2c81a2b](https://github.com/HankHuang0516/EClaw/commit/2c81a2bbecba86ae595f7f2645b918a8d31cf505)), closes [#2067](https://github.com/HankHuang0516/EClaw/issues/2067) [#2082](https://github.com/HankHuang0516/EClaw/issues/2082)

# [1.1081.0](https://github.com/HankHuang0516/EClaw/compare/v1.1080.0...v1.1081.0) (2026-04-24)


### Features

* **chat:** Phase 2 schedule-popup UI — long-press send → schedule modal ([#2082](https://github.com/HankHuang0516/EClaw/issues/2082)) ([35a40da](https://github.com/HankHuang0516/EClaw/commit/35a40daf1857142cbe70ee04562e22d649d91d76)), closes [#2067](https://github.com/HankHuang0516/EClaw/issues/2067)

# [1.1080.0](https://github.com/HankHuang0516/EClaw/compare/v1.1079.0...v1.1080.0) (2026-04-24)


### Features

* **chip:** Smart Chip C — nested popover stack with cycle/depth guards ([#2080](https://github.com/HankHuang0516/EClaw/issues/2080)) ([6f6dd0f](https://github.com/HankHuang0516/EClaw/commit/6f6dd0fdf61cd80985508ba6f5929e5df3ee575b))

# [1.1079.0](https://github.com/HankHuang0516/EClaw/compare/v1.1078.0...v1.1079.0) (2026-04-24)


### Features

* **chip:** Smart Chip B — reference-preview popover with card support + requote ([#2079](https://github.com/HankHuang0516/EClaw/issues/2079)) ([e692fa0](https://github.com/HankHuang0516/EClaw/commit/e692fa05b955cc49aba68dd8075077abc89cca04))

# [1.1078.0](https://github.com/HankHuang0516/EClaw/compare/v1.1077.3...v1.1078.0) (2026-04-24)


### Features

* **files:** long-press multi-select + batch attach to chat ([#2078](https://github.com/HankHuang0516/EClaw/issues/2078)) ([a901fb4](https://github.com/HankHuang0516/EClaw/commit/a901fb40fb2da3143441ff1a11fe845f7784bc3c))

## [1.1077.3](https://github.com/HankHuang0516/EClaw/compare/v1.1077.2...v1.1077.3) (2026-04-24)


### Bug Fixes

* **chat:** move R2 attachments to structured metadata, keep signed URL out of message.text ([#2077](https://github.com/HankHuang0516/EClaw/issues/2077)) ([c0e4e55](https://github.com/HankHuang0516/EClaw/commit/c0e4e5507bd23157843386dda9c45ab7b18a768b)), closes [#2059](https://github.com/HankHuang0516/EClaw/issues/2059)

## [1.1077.2](https://github.com/HankHuang0516/EClaw/compare/v1.1077.1...v1.1077.2) (2026-04-24)


### Bug Fixes

* **security+i18n:** session audit — DOMPurify for share-chat, i18n orphan fix, sourceTag compliance ([#2073](https://github.com/HankHuang0516/EClaw/issues/2073)) ([c22cc2c](https://github.com/HankHuang0516/EClaw/commit/c22cc2c3349180eeeb475065a0739910f901daf1))

## [1.1077.1](https://github.com/HankHuang0516/EClaw/compare/v1.1077.0...v1.1077.1) (2026-04-24)


### Bug Fixes

* **ui:** define .btn-ghost so kanban header icons stop rendering as white-on-white ([#2072](https://github.com/HankHuang0516/EClaw/issues/2072)) ([7bfdc6c](https://github.com/HankHuang0516/EClaw/commit/7bfdc6c72f2c28887ccd1bbe7812b18b267cebf6))

# [1.1077.0](https://github.com/HankHuang0516/EClaw/compare/v1.1076.0...v1.1077.0) (2026-04-24)


### Features

* **smart-chip:** backend expansion of card_/review_/src:// refs ([#2071](https://github.com/HankHuang0516/EClaw/issues/2071)) ([f09f3b5](https://github.com/HankHuang0516/EClaw/commit/f09f3b5625cbbaa69e8349654e4f54140d687a39))

# [1.1076.0](https://github.com/HankHuang0516/EClaw/compare/v1.1075.1...v1.1076.0) (2026-04-24)


### Features

* **autolink-chip:** render review_ + src:// references as 引用晶片 ([#2070](https://github.com/HankHuang0516/EClaw/issues/2070)) ([e93602b](https://github.com/HankHuang0516/EClaw/commit/e93602b8f61c1a4e91240c5aac3113215bdccfd3)), closes [#anchor](https://github.com/HankHuang0516/EClaw/issues/anchor)

## [1.1075.1](https://github.com/HankHuang0516/EClaw/compare/v1.1075.0...v1.1075.1) (2026-04-24)


### Bug Fixes

* **kanban:** cap long card description height in detail modal ([#2069](https://github.com/HankHuang0516/EClaw/issues/2069)) ([c04dbaf](https://github.com/HankHuang0516/EClaw/commit/c04dbaf7bcddb66d5517dadbb3a0b2bec6502e5e))

# [1.1075.0](https://github.com/HankHuang0516/EClaw/compare/v1.1074.0...v1.1075.0) (2026-04-24)


### Features

* **ui:** unify 📌 quote icon across chat bubbles + kanban card comments ([#2068](https://github.com/HankHuang0516/EClaw/issues/2068)) ([49bf888](https://github.com/HankHuang0516/EClaw/commit/49bf8888283ca5cb9007d28f1ac99acd8134318e))

# [1.1074.0](https://github.com/HankHuang0516/EClaw/compare/v1.1073.1...v1.1074.0) (2026-04-24)


### Features

* **scheduled-messages:** Phase 1 backend — schema + 4 CRUD + poller ([#2067](https://github.com/HankHuang0516/EClaw/issues/2067)) ([144b281](https://github.com/HankHuang0516/EClaw/commit/144b2817da2a98c12bfdb2d68da6896ea6074efd))

## [1.1073.1](https://github.com/HankHuang0516/EClaw/compare/v1.1073.0...v1.1073.1) (2026-04-24)


### Bug Fixes

* **auth:** WebView device-mismatch guard for stale session cookies ([#2065](https://github.com/HankHuang0516/EClaw/issues/2065)) ([40f1b51](https://github.com/HankHuang0516/EClaw/commit/40f1b5126c2fe54253a4d969c7d0fa1661d18f68))

# [1.1073.0](https://github.com/HankHuang0516/EClaw/compare/v1.1072.1...v1.1073.0) (2026-04-24)


### Bug Fixes

* **ios:** hide portal chrome + match deep-purple bg in WebView ([#1770](https://github.com/HankHuang0516/EClaw/issues/1770)) ([#2062](https://github.com/HankHuang0516/EClaw/issues/2062)) ([12f539d](https://github.com/HankHuang0516/EClaw/commit/12f539d20450911aceb260af94955462647da24d)), closes [#0D0D1A](https://github.com/HankHuang0516/EClaw/issues/0D0D1A)
* **ios:** icon-only bottom nav so CJK labels stop squeezing ([#1769](https://github.com/HankHuang0516/EClaw/issues/1769)) ([#2060](https://github.com/HankHuang0516/EClaw/issues/2060)) ([e1116fc](https://github.com/HankHuang0516/EClaw/commit/e1116fc09c4513ae4659b1971370f14818e668f2))
* **kanban:** regen R2 signed URL on every card-file read ([#2064](https://github.com/HankHuang0516/EClaw/issues/2064)) ([e43bce9](https://github.com/HankHuang0516/EClaw/commit/e43bce9953cbb2a935e3023eb59fd6a0ea31685b))
* **ios:** swallow uncaught JS errors in production, not dev ([#1766](https://github.com/HankHuang0516/EClaw/issues/1766)) ([#2058](https://github.com/HankHuang0516/EClaw/issues/2058)) ([b13fd33](https://github.com/HankHuang0516/EClaw/commit/b13fd33dcbf5c95b3b783bc51e4394d92bd5014f))


### Features

* **settings:** add Switch Device UI for multi-account device-row migration ([#2061](https://github.com/HankHuang0516/EClaw/issues/2061)) ([a1a9583](https://github.com/HankHuang0516/EClaw/commit/a1a95838bdbfe24be425c3ea4351bdeaacc69aac)), closes [#1773](https://github.com/HankHuang0516/EClaw/issues/1773)
* **transform:** support multipart/form-data for single-request file delivery ([#2057](https://github.com/HankHuang0516/EClaw/issues/2057)) ([1fb2c20](https://github.com/HankHuang0516/EClaw/commit/1fb2c209e6eb644273a4c01b5c004b8f01477a2c)), closes [#1781](https://github.com/HankHuang0516/EClaw/issues/1781)

## [1.1072.1](https://github.com/HankHuang0516/EClaw/compare/v1.1072.0...v1.1072.1) (2026-04-24)


### Bug Fixes

* **chat:** strip raw R2 presigned URLs from message text + shorten TTL ([#2059](https://github.com/HankHuang0516/EClaw/issues/2059)) ([b8920a7](https://github.com/HankHuang0516/EClaw/commit/b8920a7b3ca978d01597dd49ed8ddadb3beb3fc7)), closes [#2045](https://github.com/HankHuang0516/EClaw/issues/2045) [#2045](https://github.com/HankHuang0516/EClaw/issues/2045)

# [1.1072.0](https://github.com/HankHuang0516/EClaw/compare/v1.1071.6...v1.1072.0) (2026-04-24)


### Bug Fixes

* **security:** gate admin localhost bypass on non-production ([#2024](https://github.com/HankHuang0516/EClaw/issues/2024)) ([#2053](https://github.com/HankHuang0516/EClaw/issues/2053)) ([f219cb0](https://github.com/HankHuang0516/EClaw/commit/f219cb06e6e9e5eab8afdab7356290b578e86ed4))
* **ios:** move hardcoded ✓ prefix from code into i18n values ([#1779](https://github.com/HankHuang0516/EClaw/issues/1779)) ([#2050](https://github.com/HankHuang0516/EClaw/issues/2050)) ([67900e0](https://github.com/HankHuang0516/EClaw/commit/67900e0bffaea4c6233fac093c0446ca7aa4656d))
* **security:** read gateway/setup creds from env, never inline ([#2022](https://github.com/HankHuang0516/EClaw/issues/2022)) ([#2054](https://github.com/HankHuang0516/EClaw/issues/2054)) ([701c607](https://github.com/HankHuang0516/EClaw/commit/701c60775969c3f7de65d77fcb60258189b28ac3))


### Features

* **security:** global rate limiting on /api/* ([#1948](https://github.com/HankHuang0516/EClaw/issues/1948)) ([#2055](https://github.com/HankHuang0516/EClaw/issues/2055)) ([1c996ec](https://github.com/HankHuang0516/EClaw/commit/1c996ec7bf1863113b65e588834c08f06ae45d5d))

## [1.1071.6](https://github.com/HankHuang0516/EClaw/compare/v1.1071.5...v1.1071.6) (2026-04-24)


### Bug Fixes

* **portal:** keep sub-tabs visible in split-view embed mode ([#2052](https://github.com/HankHuang0516/EClaw/issues/2052)) ([b643a1b](https://github.com/HankHuang0516/EClaw/commit/b643a1bbbb60d1331fd1c3c1d5644c859802c909))

## [1.1071.5](https://github.com/HankHuang0516/EClaw/compare/v1.1071.4...v1.1071.5) (2026-04-24)


### Bug Fixes

* **rental:** gate pricing + publish on interview_passed=TRUE ([#2049](https://github.com/HankHuang0516/EClaw/issues/2049)) ([8d93f17](https://github.com/HankHuang0516/EClaw/commit/8d93f175c10bd7f5615d2316126c711cc9d14584))

## [1.1071.4](https://github.com/HankHuang0516/EClaw/compare/v1.1071.3...v1.1071.4) (2026-04-24)


### Reverts

* Revert "feat(mission): embed Mind Map card as first item in 心智 tab ([#2040](https://github.com/HankHuang0516/EClaw/issues/2040))" ([#2048](https://github.com/HankHuang0516/EClaw/issues/2048)) ([f87b06a](https://github.com/HankHuang0516/EClaw/commit/f87b06a8bed23aa5ea3b99fb7bedc6c021f8b462))

## [1.1071.3](https://github.com/HankHuang0516/EClaw/compare/v1.1071.2...v1.1071.3) (2026-04-24)


### Bug Fixes

* **env-vars:** hydrate localStorage from server on page load ([#2047](https://github.com/HankHuang0516/EClaw/issues/2047)) ([c3e01c0](https://github.com/HankHuang0516/EClaw/commit/c3e01c028d7ff74076d4bb8696cbf1f6f2f3c4f1))

## [1.1071.2](https://github.com/HankHuang0516/EClaw/compare/v1.1071.1...v1.1071.2) (2026-04-24)


### Bug Fixes

* **kanban:** autoReviewOnTransform honors requires_screenshot_review ([#2046](https://github.com/HankHuang0516/EClaw/issues/2046)) ([51fb5d0](https://github.com/HankHuang0516/EClaw/commit/51fb5d055157193211030e92e30f9a310cea6b75))

## [1.1071.1](https://github.com/HankHuang0516/EClaw/compare/v1.1071.0...v1.1071.1) (2026-04-24)


### Bug Fixes

* **chat:** hide raw R2 URL from file message UI ([#2045](https://github.com/HankHuang0516/EClaw/issues/2045)) ([5bf6e78](https://github.com/HankHuang0516/EClaw/commit/5bf6e78709729e662bde472d22e0d0cdec4bee78))

# [1.1071.0](https://github.com/HankHuang0516/EClaw/compare/v1.1070.3...v1.1071.0) (2026-04-24)


### Features

* **kanban:** screenshot-review gate + 截圖審查 tab on cards + chip ([#2044](https://github.com/HankHuang0516/EClaw/issues/2044)) ([d63debb](https://github.com/HankHuang0516/EClaw/commit/d63debb8a300b2a701b6bcf4d3d4fc45df54a202))

## [1.1070.3](https://github.com/HankHuang0516/EClaw/compare/v1.1070.2...v1.1070.3) (2026-04-24)


### Bug Fixes

* **telemetry:** forward opts to wrapped apiCall (was silently dropping skip401Redirect) ([#2043](https://github.com/HankHuang0516/EClaw/issues/2043)) ([4c7e7ca](https://github.com/HankHuang0516/EClaw/commit/4c7e7ca2c4b88f23e5fef41f092fbc283c49b355)), closes [#2041](https://github.com/HankHuang0516/EClaw/issues/2041) [#2042](https://github.com/HankHuang0516/EClaw/issues/2042)

## [1.1070.2](https://github.com/HankHuang0516/EClaw/compare/v1.1070.1...v1.1070.2) (2026-04-24)


### Bug Fixes

* **socket:** /api/notifications/count shouldn't bounce to index on 401 ([#2042](https://github.com/HankHuang0516/EClaw/issues/2042)) ([49c870a](https://github.com/HankHuang0516/EClaw/commit/49c870a63e34cb0ff2b25c2b311461a096560c7d)), closes [#2041](https://github.com/HankHuang0516/EClaw/issues/2041)

## [1.1070.1](https://github.com/HankHuang0516/EClaw/compare/v1.1070.0...v1.1070.1) (2026-04-24)


### Bug Fixes

* **nav:** wallet/balance 401 should not redirect to login ([#2041](https://github.com/HankHuang0516/EClaw/issues/2041)) ([bf486fa](https://github.com/HankHuang0516/EClaw/commit/bf486fa28b502b24b0c8ee5026e1e8d5a4551d13)), closes [#2036](https://github.com/HankHuang0516/EClaw/issues/2036)

# [1.1070.0](https://github.com/HankHuang0516/EClaw/compare/v1.1069.0...v1.1070.0) (2026-04-24)


### Features

* **mission:** embed Mind Map card as first item in 心智 tab ([#2040](https://github.com/HankHuang0516/EClaw/issues/2040)) ([481bd8c](https://github.com/HankHuang0516/EClaw/commit/481bd8caf0a15fc1c34ea6aca76834ea445f8933)), closes [#2036](https://github.com/HankHuang0516/EClaw/issues/2036)

# [1.1069.0](https://github.com/HankHuang0516/EClaw/compare/v1.1068.1...v1.1069.0) (2026-04-24)


### Features

* **invite:** Option B — per-code-once, many codes per device ([#2039](https://github.com/HankHuang0516/EClaw/issues/2039)) ([d1ce8fc](https://github.com/HankHuang0516/EClaw/commit/d1ce8fc6c4ad513914f137b9169d600ec81de448))

## [1.1068.1](https://github.com/HankHuang0516/EClaw/compare/v1.1068.0...v1.1068.1) (2026-04-24)


### Bug Fixes

* **invite:** per-code funnel table headers use tt() instead of data-i18n ([#2038](https://github.com/HankHuang0516/EClaw/issues/2038)) ([ab5d707](https://github.com/HankHuang0516/EClaw/commit/ab5d707060f26adcc1d5db5210c0832a160c02cb))

# [1.1068.0](https://github.com/HankHuang0516/EClaw/compare/v1.1067.0...v1.1068.0) (2026-04-24)


### Features

* **invite:** per-code click funnel dashboard (card_8a0be5df777ea57296148d43) ([#2037](https://github.com/HankHuang0516/EClaw/issues/2037)) ([df805be](https://github.com/HankHuang0516/EClaw/commit/df805be1825852c5204288f5d962318467ffa0dc))

# [1.1067.0](https://github.com/HankHuang0516/EClaw/compare/v1.1066.0...v1.1067.0) (2026-04-24)


### Features

* **settings:** collapsible Kanban Nudge section, default collapsed ([#2035](https://github.com/HankHuang0516/EClaw/issues/2035)) ([a9cf5b0](https://github.com/HankHuang0516/EClaw/commit/a9cf5b054a1afd0eb19c88c3569f2d8acbc18df4))

# [1.1066.0](https://github.com/HankHuang0516/EClaw/compare/v1.1065.0...v1.1066.0) (2026-04-24)


### Features

* **security:** add POST /api/device/rotate-secret + Settings UI ([#2034](https://github.com/HankHuang0516/EClaw/issues/2034)) ([1502a17](https://github.com/HankHuang0516/EClaw/commit/1502a17e04595d9ee1cbf42e0f7c045b594323e9))

# [1.1065.0](https://github.com/HankHuang0516/EClaw/compare/v1.1064.1...v1.1065.0) (2026-04-24)


### Features

* **admin:** add GET /api/admin/invite/clicks — funnel step-1 visibility ([#2033](https://github.com/HankHuang0516/EClaw/issues/2033)) ([c994f20](https://github.com/HankHuang0516/EClaw/commit/c994f2017cfaabb82d20e3c883f9df7b44dde112)), closes [#2032](https://github.com/HankHuang0516/EClaw/issues/2032) [#2031](https://github.com/HankHuang0516/EClaw/issues/2031)

## [1.1064.1](https://github.com/HankHuang0516/EClaw/compare/v1.1064.0...v1.1064.1) (2026-04-24)


### Bug Fixes

* **invite:** add /invite/:code route + click telemetry — shared URLs were 404ing ([#2032](https://github.com/HankHuang0516/EClaw/issues/2032)) ([f53a093](https://github.com/HankHuang0516/EClaw/commit/f53a093aad18c7df3634ba1b88313022ea2c41d7))

# [1.1064.0](https://github.com/HankHuang0516/EClaw/compare/v1.1063.10...v1.1064.0) (2026-04-24)


### Features

* **community:** add /api/community/stats + /list endpoints ([#2031](https://github.com/HankHuang0516/EClaw/issues/2031)) ([4ba09f9](https://github.com/HankHuang0516/EClaw/commit/4ba09f941f21555bd2c5faffbe58f51645dbe80c))

## [1.1063.10](https://github.com/HankHuang0516/EClaw/compare/v1.1063.9...v1.1063.10) (2026-04-24)


### Bug Fixes

* **growth:** honor date=YYYY-MM-DD param in /api/growth/daily ([#2030](https://github.com/HankHuang0516/EClaw/issues/2030)) ([845954d](https://github.com/HankHuang0516/EClaw/commit/845954dd68922fbd454e34344f9f9fa75a3c53ab))

## [1.1063.9](https://github.com/HankHuang0516/EClaw/compare/v1.1063.8...v1.1063.9) (2026-04-24)


### Bug Fixes

* **device-vars:** prevent empty-merge wipe (Android WebView incident) ([#2029](https://github.com/HankHuang0516/EClaw/issues/2029)) ([dcb9d22](https://github.com/HankHuang0516/EClaw/commit/dcb9d220877ba36b700fb4e9ba01e858003bda11)), closes [#25](https://github.com/HankHuang0516/EClaw/issues/25)

## [1.1063.8](https://github.com/HankHuang0516/EClaw/compare/v1.1063.7...v1.1063.8) (2026-04-24)


### Bug Fixes

* **i18n:** add kanban_nudge_settings_title to EN/zh-TW + remove ar duplicate ([#2028](https://github.com/HankHuang0516/EClaw/issues/2028)) ([160a0d3](https://github.com/HankHuang0516/EClaw/commit/160a0d3049fd11e3458a531e63d595f4f6697c03))
* **security:** XSS escape error messages + fix org-chart forward grouping exclusion ([#2027](https://github.com/HankHuang0516/EClaw/issues/2027)) ([dffd21e](https://github.com/HankHuang0516/EClaw/commit/dffd21eef051917ff6d1cbdce179506f35d8c227))

## [1.1063.7](https://github.com/HankHuang0516/EClaw/compare/v1.1063.6...v1.1063.7) (2026-04-24)


### Bug Fixes

* **i18n:** add kanban_nudge translations to 11 locales + zh-CN analytics keys ([#2014](https://github.com/HankHuang0516/EClaw/issues/2014), [#1955](https://github.com/HankHuang0516/EClaw/issues/1955)) ([#2025](https://github.com/HankHuang0516/EClaw/issues/2025)) ([2f943f3](https://github.com/HankHuang0516/EClaw/commit/2f943f3b47412a13391f5f968211ca56336b0283))

## [1.1063.6](https://github.com/HankHuang0516/EClaw/compare/v1.1063.5...v1.1063.6) (2026-04-24)


### Bug Fixes

* **chat:** normalize integrity checker to avoid link-render false positives ([#2021](https://github.com/HankHuang0516/EClaw/issues/2021)) ([f13c0d0](https://github.com/HankHuang0516/EClaw/commit/f13c0d066d3eb5baac59373838413e3b7b2a4a44))

## [1.1063.5](https://github.com/HankHuang0516/EClaw/compare/v1.1063.4...v1.1063.5) (2026-04-24)


### Bug Fixes

* **chat:** bust browser cache for note-link-render.js fix ([#2020](https://github.com/HankHuang0516/EClaw/issues/2020)) ([e56048d](https://github.com/HankHuang0516/EClaw/commit/e56048d8e9bfd723ae3e086fdf949c224a5984ce)), closes [#2019](https://github.com/HankHuang0516/EClaw/issues/2019)

## [1.1063.4](https://github.com/HankHuang0516/EClaw/compare/v1.1063.3...v1.1063.4) (2026-04-24)


### Bug Fixes

* **portal:** schedule-enable silent-fail + note-chip ellipsis miss + 📌 undefined ([#2019](https://github.com/HankHuang0516/EClaw/issues/2019)) ([0e95a36](https://github.com/HankHuang0516/EClaw/commit/0e95a36c9b1c799624eb10a0520350249874a834))

## [1.1063.3](https://github.com/HankHuang0516/EClaw/compare/v1.1063.2...v1.1063.3) (2026-04-24)


### Bug Fixes

* **portal/chat:** cloud-library filename invisible on mobile ([#2018](https://github.com/HankHuang0516/EClaw/issues/2018)) ([bc9eb8a](https://github.com/HankHuang0516/EClaw/commit/bc9eb8a86bad3a42759aebad81de5ef47fe91cd2))

## [1.1063.2](https://github.com/HankHuang0516/EClaw/compare/v1.1063.1...v1.1063.2) (2026-04-24)


### Bug Fixes

* **kanban:** mobile toolbar overflow + invisible history drawer in dark mode ([#2017](https://github.com/HankHuang0516/EClaw/issues/2017)) ([5bef6ff](https://github.com/HankHuang0516/EClaw/commit/5bef6ffd4376c4703038ae4c6594373905829e15)), closes [#kbHistoryOverlay](https://github.com/HankHuang0516/EClaw/issues/kbHistoryOverlay)

## [1.1063.1](https://github.com/HankHuang0516/EClaw/compare/v1.1063.0...v1.1063.1) (2026-04-23)


### Bug Fixes

* **i18n:** add kanban_nudge_settings_title to 11 Android locales ([#2016](https://github.com/HankHuang0516/EClaw/issues/2016)) ([7b47934](https://github.com/HankHuang0516/EClaw/commit/7b479348278ec46c0f9c20ac9bc24749f51ba3db))

# [1.1063.0](https://github.com/HankHuang0516/EClaw/compare/v1.1062.0...v1.1063.0) (2026-04-23)


### Features

* **app:** sync Kanban Nudge settings to Android + iOS apps ([#2015](https://github.com/HankHuang0516/EClaw/issues/2015)) ([e5fbe75](https://github.com/HankHuang0516/EClaw/commit/e5fbe756b9dbcf54fbb391934bd3cb254e36d5ea)), closes [#kanban-nudge-card](https://github.com/HankHuang0516/EClaw/issues/kanban-nudge-card)

# [1.1062.0](https://github.com/HankHuang0516/EClaw/compare/v1.1061.5...v1.1062.0) (2026-04-23)


### Features

* **kanban-nudge:** per-device settings — batch size / priority mode / status filter / interval ([#2013](https://github.com/HankHuang0516/EClaw/issues/2013)) ([22a0259](https://github.com/HankHuang0516/EClaw/commit/22a02596a8545d2ae792184f1c3af2cc5eacc4ed))

## [1.1061.5](https://github.com/HankHuang0516/EClaw/compare/v1.1061.4...v1.1061.5) (2026-04-23)


### Bug Fixes

* **cloud drive:** 3 UX enhancements — mojibake, click-to-preview, pill-attachment ([#2012](https://github.com/HankHuang0516/EClaw/issues/2012)) ([c2295f2](https://github.com/HankHuang0516/EClaw/commit/c2295f253bc03822784d7306448294025110148c)), closes [hi#bit](https://github.com/hi/issues/bit)

## [1.1061.4](https://github.com/HankHuang0516/EClaw/compare/v1.1061.3...v1.1061.4) (2026-04-23)


### Bug Fixes

* **chat/r2:** label cloud drive dates (上傳/到期) — unlabeled 到期 misread as upload date ([#2010](https://github.com/HankHuang0516/EClaw/issues/2010)) ([bdbd681](https://github.com/HankHuang0516/EClaw/commit/bdbd681e38950c4a15b879f103ff6216e3280f0f))

## [1.1061.3](https://github.com/HankHuang0516/EClaw/compare/v1.1061.2...v1.1061.3) (2026-04-23)


### Bug Fixes

* **arena:** surface model in report + unblock chip clicks behind name modal ([#2009](https://github.com/HankHuang0516/EClaw/issues/2009)) ([200efdc](https://github.com/HankHuang0516/EClaw/commit/200efdc6c41b02cc166c080da8f7866562add24e))

## [1.1061.2](https://github.com/HankHuang0516/EClaw/compare/v1.1061.1...v1.1061.2) (2026-04-23)


### Bug Fixes

* **arena:** harden navigation + coding + exam clock scoring against self-report exploits ([#2007](https://github.com/HankHuang0516/EClaw/issues/2007)) ([a90fc7f](https://github.com/HankHuang0516/EClaw/commit/a90fc7fed504d15144b7a728a7ae23c1e480571b))
* **arena:** poll-fallback bootstraps exam timer when WS timer_started is missed ([#2008](https://github.com/HankHuang0516/EClaw/issues/2008)) ([f6357ff](https://github.com/HankHuang0516/EClaw/commit/f6357ffdde72ec83c3eb2f37b3511d6f4b07496b))

## [1.1061.1](https://github.com/HankHuang0516/EClaw/compare/v1.1061.0...v1.1061.1) (2026-04-23)


### Bug Fixes

* **chat-save:** await all saveChatMessage bot-reply calls ([#2006](https://github.com/HankHuang0516/EClaw/issues/2006)) ([bfc9da7](https://github.com/HankHuang0516/EClaw/commit/bfc9da7a651f09b5546cb85d320aebeefad86e72)), closes [#1988](https://github.com/HankHuang0516/EClaw/issues/1988)

# [1.1061.0](https://github.com/HankHuang0516/EClaw/compare/v1.1060.2...v1.1061.0) (2026-04-23)


### Features

* **chat:** remove generic File upload; keep Photo/Video + Cloud Drive ([#2005](https://github.com/HankHuang0516/EClaw/issues/2005)) ([9fe4934](https://github.com/HankHuang0516/EClaw/commit/9fe4934f88969dcb650b886412ab70f3fe23ec0a))

## [1.1060.2](https://github.com/HankHuang0516/EClaw/compare/v1.1060.1...v1.1060.2) (2026-04-23)


### Bug Fixes

* **i18n:** translate dialog_add_friend_message in Indonesian ([#1999](https://github.com/HankHuang0516/EClaw/issues/1999)) ([0072062](https://github.com/HankHuang0516/EClaw/commit/0072062cd35094e7bcbe965b513e32309d75e4a7)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

## [1.1060.1](https://github.com/HankHuang0516/EClaw/compare/v1.1060.0...v1.1060.1) (2026-04-23)


### Bug Fixes

* **i18n:** fix category_add prefix and translate dialog_add_friend_message in zh-rCN ([#2004](https://github.com/HankHuang0516/EClaw/issues/2004)) ([f16f9e2](https://github.com/HankHuang0516/EClaw/commit/f16f9e20a4d39e4f53b74c068f084d1470a9904f)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** translate dialog_add_friend_message in Japanese ([#2000](https://github.com/HankHuang0516/EClaw/issues/2000)) ([fedec3d](https://github.com/HankHuang0516/EClaw/commit/fedec3dc1d194f7ec5e1a8f831fc30c4d71a2fb0)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** translate dialog_add_friend_message in Korean ([#2001](https://github.com/HankHuang0516/EClaw/issues/2001)) ([4ef18b2](https://github.com/HankHuang0516/EClaw/commit/4ef18b2c50c197a719b82d5e7be1f51dd1f1ee73)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** translate dialog_add_friend_message in Thai ([#2002](https://github.com/HankHuang0516/EClaw/issues/2002)) ([ea2167e](https://github.com/HankHuang0516/EClaw/commit/ea2167e8bc8f563e341134cd55b0e687b4cca823)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** translate dialog_add_friend_message in Vietnamese ([#2003](https://github.com/HankHuang0516/EClaw/issues/2003)) ([ab8a67c](https://github.com/HankHuang0516/EClaw/commit/ab8a67c9a2e5a111e539382c8422c8cc5bb7e0d8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.1060.0](https://github.com/HankHuang0516/EClaw/compare/v1.1059.0...v1.1060.0) (2026-04-23)


### Features

* **kanban:** sort by updated, funnel filter, history panel, 7d retention ([#1998](https://github.com/HankHuang0516/EClaw/issues/1998)) ([430b02a](https://github.com/HankHuang0516/EClaw/commit/430b02a49a564fb1830db0068f4593094c6e9c46))

# [1.1059.0](https://github.com/HankHuang0516/EClaw/compare/v1.1058.2...v1.1059.0) (2026-04-23)


### Features

* **device-vars:** audit trail + code-review checklist ([#1997](https://github.com/HankHuang0516/EClaw/issues/1997)) ([a20f88b](https://github.com/HankHuang0516/EClaw/commit/a20f88b2cc207bbaa5dc1adb9af57ddbc6c534ed)), closes [#1995](https://github.com/HankHuang0516/EClaw/issues/1995) [#1996](https://github.com/HankHuang0516/EClaw/issues/1996)

## [1.1058.2](https://github.com/HankHuang0516/EClaw/compare/v1.1058.1...v1.1058.2) (2026-04-23)


### Bug Fixes

* **device-vars:** guard DELETE /api/device-vars with explicit confirm ([#1996](https://github.com/HankHuang0516/EClaw/issues/1996)) ([7338948](https://github.com/HankHuang0516/EClaw/commit/73389483e94e675ecfc8fa661cc32e1d920322a3)), closes [#1995](https://github.com/HankHuang0516/EClaw/issues/1995)

## [1.1058.1](https://github.com/HankHuang0516/EClaw/compare/v1.1058.0...v1.1058.1) (2026-04-23)


### Bug Fixes

* **device-vars:** refuse legacy empty-wipe on non-empty vault ([#1995](https://github.com/HankHuang0516/EClaw/issues/1995)) ([64e15b9](https://github.com/HankHuang0516/EClaw/commit/64e15b98ba04135a5efa5cccaa47150425f04c7b))

# [1.1058.0](https://github.com/HankHuang0516/EClaw/compare/v1.1057.0...v1.1058.0) (2026-04-23)


### Features

* **seo:** SSR per-bot OG meta + JSON-LD on /c/:publicCode ([#1994](https://github.com/HankHuang0516/EClaw/issues/1994)) ([e99af14](https://github.com/HankHuang0516/EClaw/commit/e99af144a72a84dcf91e56d920348638cf0d5062)), closes [#1993](https://github.com/HankHuang0516/EClaw/issues/1993) [#1993](https://github.com/HankHuang0516/EClaw/issues/1993)

# [1.1057.0](https://github.com/HankHuang0516/EClaw/compare/v1.1056.0...v1.1057.0) (2026-04-23)


### Features

* **wallpaper:** smart layout for N entities (non-overlap >4) ([#1992](https://github.com/HankHuang0516/EClaw/issues/1992)) ([49686d8](https://github.com/HankHuang0516/EClaw/commit/49686d8c829daaadcd2219601891e1c4c077e59e))

# [1.1056.0](https://github.com/HankHuang0516/EClaw/compare/v1.1055.3...v1.1056.0) (2026-04-23)


### Features

* **entities:** surface bindingType + channelProvider so bots can route ([#1991](https://github.com/HankHuang0516/EClaw/issues/1991)) ([7b50481](https://github.com/HankHuang0516/EClaw/commit/7b50481532021e509c0e81dde1a34d1c37089c2b))

## [1.1055.3](https://github.com/HankHuang0516/EClaw/compare/v1.1055.2...v1.1055.3) (2026-04-23)


### Bug Fixes

* **chat-history:** broadcast recipients beyond first can see their messages ([#1989](https://github.com/HankHuang0516/EClaw/issues/1989)) ([477d8e2](https://github.com/HankHuang0516/EClaw/commit/477d8e27fa9ddb49683b089d19e883e32a22c7b9))

## [1.1055.2](https://github.com/HankHuang0516/EClaw/compare/v1.1055.1...v1.1055.2) (2026-04-23)


### Bug Fixes

* **chat-save:** observability hardening for lost messages ([#1988](https://github.com/HankHuang0516/EClaw/issues/1988)) ([e42dd22](https://github.com/HankHuang0516/EClaw/commit/e42dd22b61a26b0468f0ae090082c6ff89cbbeaf))

## [1.1055.1](https://github.com/HankHuang0516/EClaw/compare/v1.1055.0...v1.1055.1) (2026-04-22)


### Bug Fixes

* **tests:** add deviceSecret to integration tests hitting /api/entities and /api/status ([#1985](https://github.com/HankHuang0516/EClaw/issues/1985)) ([a2577f8](https://github.com/HankHuang0516/EClaw/commit/a2577f8101fec62041055d38ae82b8ba11202635))

# [1.1055.0](https://github.com/HankHuang0516/EClaw/compare/v1.1054.1...v1.1055.0) (2026-04-22)


### Features

* **mindmap:** Route A mirror — auto-pair notes with mindmap leaves ([#1984](https://github.com/HankHuang0516/EClaw/issues/1984)) ([6d0afb5](https://github.com/HankHuang0516/EClaw/commit/6d0afb5d389917401aead3bf2706826434a94e07))

## [1.1054.1](https://github.com/HankHuang0516/EClaw/compare/v1.1054.0...v1.1054.1) (2026-04-22)


### Bug Fixes

* **transform,channel:** save sender copy when all delivery targets fail ([#1983](https://github.com/HankHuang0516/EClaw/issues/1983)) ([9b81614](https://github.com/HankHuang0516/EClaw/commit/9b8161445f3d7384f5fe3106557e030481bd34bb))

# [1.1054.0](https://github.com/HankHuang0516/EClaw/compare/v1.1053.2...v1.1054.0) (2026-04-22)


### Features

* **portal:** add Hermes Channel plugin guide to info.html ([#1982](https://github.com/HankHuang0516/EClaw/issues/1982)) ([403b995](https://github.com/HankHuang0516/EClaw/commit/403b995106ab655155724677bb4673f2faa10df1))

## [1.1053.2](https://github.com/HankHuang0516/EClaw/compare/v1.1053.1...v1.1053.2) (2026-04-22)


### Bug Fixes

* **his-link:** handle UUID message ids, not numeric SERIAL ([#1981](https://github.com/HankHuang0516/EClaw/issues/1981)) ([1ea54f9](https://github.com/HankHuang0516/EClaw/commit/1ea54f948b0d22dfe4f5139382a9b554ba9341ae))

## [1.1053.1](https://github.com/HankHuang0516/EClaw/compare/v1.1053.0...v1.1053.1) (2026-04-22)


### Bug Fixes

* **chat:** quote-reply auto-injects his_<id> into outgoing prefix ([#1980](https://github.com/HankHuang0516/EClaw/issues/1980)) ([22bfb77](https://github.com/HankHuang0516/EClaw/commit/22bfb7774abfa4440b06618b0647ed6a3a51b237))

# [1.1053.0](https://github.com/HankHuang0516/EClaw/compare/v1.1052.0...v1.1053.0) (2026-04-22)


### Features

* **a2a-skill:** teach bots the his_<id> token for historical refs ([#1979](https://github.com/HankHuang0516/EClaw/issues/1979)) ([fa616b2](https://github.com/HankHuang0516/EClaw/commit/fa616b26693916db0c873001a209d783d8a51f27))

# [1.1052.0](https://github.com/HankHuang0516/EClaw/compare/v1.1051.1...v1.1052.0) (2026-04-22)


### Features

* **chat:** parse his_<id> tokens into clickable history chips ([#1978](https://github.com/HankHuang0516/EClaw/issues/1978)) ([560560d](https://github.com/HankHuang0516/EClaw/commit/560560dade11ccc1e4285ab8d62c4f6330408a1d))

## [1.1051.1](https://github.com/HankHuang0516/EClaw/compare/v1.1051.0...v1.1051.1) (2026-04-22)


### Reverts

* **chat:** remove long-press popup + find-related UI + focus mode ([#1977](https://github.com/HankHuang0516/EClaw/issues/1977)) ([7bdf819](https://github.com/HankHuang0516/EClaw/commit/7bdf819d7db07bd11a1587bc6680cec1768dff17)), closes [#1975](https://github.com/HankHuang0516/EClaw/issues/1975)

# [1.1051.0](https://github.com/HankHuang0516/EClaw/compare/v1.1050.1...v1.1051.0) (2026-04-22)


### Features

* **chat:** long-press focus mode for free text selection on bubble ([#1975](https://github.com/HankHuang0516/EClaw/issues/1975)) ([6b7477f](https://github.com/HankHuang0516/EClaw/commit/6b7477fe6fe0be4b5cc9bda1e5a8ef0549b2ff23))

## [1.1050.1](https://github.com/HankHuang0516/EClaw/compare/v1.1050.0...v1.1050.1) (2026-04-22)


### Bug Fixes

* **mindmap:** rate-limit /traverse + clamp node titles in prompt ([#1974](https://github.com/HankHuang0516/EClaw/issues/1974)) ([dca1026](https://github.com/HankHuang0516/EClaw/commit/dca10269d4f67336d88304d170c7a0bb14a8c5dd)), closes [#1969](https://github.com/HankHuang0516/EClaw/issues/1969)

# [1.1050.0](https://github.com/HankHuang0516/EClaw/compare/v1.1049.3...v1.1050.0) (2026-04-22)


### Features

* **viral:** wire CTA + pageview beacons on share-chat Proxy Window ([#1973](https://github.com/HankHuang0516/EClaw/issues/1973)) ([04d8230](https://github.com/HankHuang0516/EClaw/commit/04d82309948977ff7cc794a1f97f449519a3acb1))

## [1.1049.3](https://github.com/HankHuang0516/EClaw/compare/v1.1049.2...v1.1049.3) (2026-04-22)


### Bug Fixes

* **i18n:** splice analytics_* keys into correct locale blocks for 7 langs ([#1972](https://github.com/HankHuang0516/EClaw/issues/1972)) ([3ccfa4a](https://github.com/HankHuang0516/EClaw/commit/3ccfa4ae97c8a777a60cbead439791ac9a7b7f6f)), closes [#1956-1962](https://github.com/HankHuang0516/EClaw/issues/1956-1962)

## [1.1049.2](https://github.com/HankHuang0516/EClaw/compare/v1.1049.1...v1.1049.2) (2026-04-22)


### Bug Fixes

* **portal:** rename HankHuang0516/realbot → EClaw + dash-tab a11y ([#1971](https://github.com/HankHuang0516/EClaw/issues/1971)) ([584cc66](https://github.com/HankHuang0516/EClaw/commit/584cc66144df9d6c4df8dee45ea068000439be61))

## [1.1049.1](https://github.com/HankHuang0516/EClaw/compare/v1.1049.0...v1.1049.1) (2026-04-22)


### Bug Fixes

* **portal:** prevent api.js 401 redirect from racing auth.js fallbacks ([#1970](https://github.com/HankHuang0516/EClaw/issues/1970)) ([85aac75](https://github.com/HankHuang0516/EClaw/commit/85aac752a6b05b820da3618494da18b2cc094fe6))

# [1.1049.0](https://github.com/HankHuang0516/EClaw/compare/v1.1048.1...v1.1049.0) (2026-04-22)


### Features

* **mindmap:** AI traverse endpoint (Phase 4) over BFS subgraph ([#1969](https://github.com/HankHuang0516/EClaw/issues/1969)) ([42f9a04](https://github.com/HankHuang0516/EClaw/commit/42f9a0449af4606b04dc0c6b34f86a55f531b090)), closes [#19](https://github.com/HankHuang0516/EClaw/issues/19)

## [1.1048.1](https://github.com/HankHuang0516/EClaw/compare/v1.1048.0...v1.1048.1) (2026-04-21)


### Bug Fixes

* **audit:** harden silent try/catch schema-drift bombs ([#1968](https://github.com/HankHuang0516/EClaw/issues/1968)) ([a84c042](https://github.com/HankHuang0516/EClaw/commit/a84c0426d6395041aafec98539f9ad2bd49f3f47))

# [1.1048.0](https://github.com/HankHuang0516/EClaw/compare/v1.1047.1...v1.1048.0) (2026-04-21)


### Features

* **info:** archive vector-memory feature into /info guide ([#1967](https://github.com/HankHuang0516/EClaw/issues/1967)) ([b06ff8b](https://github.com/HankHuang0516/EClaw/commit/b06ff8b6b0573e0677d431bf0736fb12c4e49776)), closes [#17](https://github.com/HankHuang0516/EClaw/issues/17) [#19](https://github.com/HankHuang0516/EClaw/issues/19)

## [1.1047.1](https://github.com/HankHuang0516/EClaw/compare/v1.1047.0...v1.1047.1) (2026-04-21)


### Bug Fixes

* **i18n-check:** catch orphan keys at outer TRANSLATIONS scope ([#1965](https://github.com/HankHuang0516/EClaw/issues/1965)) ([4521441](https://github.com/HankHuang0516/EClaw/commit/452144142f5ebc1f78b2c7e59af5d298cfd30773)), closes [1960/#1962](https://github.com/HankHuang0516/EClaw/issues/1962)

# [1.1047.0](https://github.com/HankHuang0516/EClaw/compare/v1.1046.1...v1.1047.0) (2026-04-21)


### Features

* **mindmap:** Phase 3 — zoom-tier rendering + focus-mode fog ([#1961](https://github.com/HankHuang0516/EClaw/issues/1961)) ([d039b5d](https://github.com/HankHuang0516/EClaw/commit/d039b5dd6f2c8cf1ad2ac926798ee5405f2255cf))

## [1.1046.1](https://github.com/HankHuang0516/EClaw/compare/v1.1046.0...v1.1046.1) (2026-04-21)


### Bug Fixes

* **chat:** vector-neighbor lookup 404s on every click when pgvector is unavailable ([#1950](https://github.com/HankHuang0516/EClaw/issues/1950)) ([5e73414](https://github.com/HankHuang0516/EClaw/commit/5e7341417d991f65e479f51771f0e17fb25cc362))

# [1.1046.0](https://github.com/HankHuang0516/EClaw/compare/v1.1045.0...v1.1046.0) (2026-04-21)


### Features

* **marketing:** vector-memory hero image v1 (1200×630 OG) ([#1947](https://github.com/HankHuang0516/EClaw/issues/1947)) ([a63693a](https://github.com/HankHuang0516/EClaw/commit/a63693a9035486355c094926b1be5ce60e1fb29f)), closes [#17](https://github.com/HankHuang0516/EClaw/issues/17) [#17](https://github.com/HankHuang0516/EClaw/issues/17)

# [1.1045.0](https://github.com/HankHuang0516/EClaw/compare/v1.1044.0...v1.1045.0) (2026-04-21)


### Features

* **mindmap:** phase 2 — Cytoscape portal UI with mini-map ([#1946](https://github.com/HankHuang0516/EClaw/issues/1946)) ([fbe7493](https://github.com/HankHuang0516/EClaw/commit/fbe7493f793a509c834059a5b4ea349acbdf83a6))

# [1.1044.0](https://github.com/HankHuang0516/EClaw/compare/v1.1043.0...v1.1044.0) (2026-04-21)


### Features

* **mindmap:** phase 1 — schema + CRUD API for multi-layer thinking graph ([#1945](https://github.com/HankHuang0516/EClaw/issues/1945)) ([3ccdac9](https://github.com/HankHuang0516/EClaw/commit/3ccdac992b42b96f0f91849e6502295b9f90a6b7)), closes [#19](https://github.com/HankHuang0516/EClaw/issues/19)

# [1.1043.0](https://github.com/HankHuang0516/EClaw/compare/v1.1042.0...v1.1043.0) (2026-04-21)


### Features

* **analytics:** portal /analytics.html admin view for site pageviews ([#1944](https://github.com/HankHuang0516/EClaw/issues/1944)) ([95dc8d0](https://github.com/HankHuang0516/EClaw/commit/95dc8d0c783076aa3ce5d10369ffa471d9084899)), closes [21/#22](https://github.com/HankHuang0516/EClaw/issues/22)

# [1.1042.0](https://github.com/HankHuang0516/EClaw/compare/v1.1041.0...v1.1042.0) (2026-04-21)


### Features

* **analytics:** GET /api/analytics/site-pageviews aggregation endpoint ([#1943](https://github.com/HankHuang0516/EClaw/issues/1943)) ([515c517](https://github.com/HankHuang0516/EClaw/commit/515c517cf9e0c5c5e4c6e8377f7d713aabfa6cc0)), closes [#21](https://github.com/HankHuang0516/EClaw/issues/21) [#20](https://github.com/HankHuang0516/EClaw/issues/20) [#1942](https://github.com/HankHuang0516/EClaw/issues/1942) [#22](https://github.com/HankHuang0516/EClaw/issues/22)

# [1.1041.0](https://github.com/HankHuang0516/EClaw/compare/v1.1040.0...v1.1041.0) (2026-04-21)


### Features

* **analytics:** site_page_views table + pageview middleware ([#1942](https://github.com/HankHuang0516/EClaw/issues/1942)) ([c0675a7](https://github.com/HankHuang0516/EClaw/commit/c0675a7b28137b203598f75aa961a188bf4992df)), closes [#21](https://github.com/HankHuang0516/EClaw/issues/21) [#22](https://github.com/HankHuang0516/EClaw/issues/22)

# [1.1040.0](https://github.com/HankHuang0516/EClaw/compare/v1.1039.0...v1.1040.0) (2026-04-21)


### Features

* **chat:** right-click + long-press context menu for reply/find-related ([#1941](https://github.com/HankHuang0516/EClaw/issues/1941)) ([1ae9e79](https://github.com/HankHuang0516/EClaw/commit/1ae9e79417c048d1d8c832ca8f0c9520884a23c6))

# [1.1039.0](https://github.com/HankHuang0516/EClaw/compare/v1.1038.0...v1.1039.0) (2026-04-21)


### Features

* **chat:** related-neighbors panel on message bubbles ([#1933](https://github.com/HankHuang0516/EClaw/issues/1933)) ([bff515f](https://github.com/HankHuang0516/EClaw/commit/bff515fafb1a487c76260acaf6357cf419bc8642)), closes [#1926](https://github.com/HankHuang0516/EClaw/issues/1926)

# [1.1038.0](https://github.com/HankHuang0516/EClaw/compare/v1.1037.1...v1.1038.0) (2026-04-21)


### Features

* **chat:** /api/chat/message/:id/related — nearest-neighbor lookup anchored on a message ([#1926](https://github.com/HankHuang0516/EClaw/issues/1926)) ([4a6eadb](https://github.com/HankHuang0516/EClaw/commit/4a6eadb311933167e7f6ac341848430b1dd09c5b)), closes [#1918](https://github.com/HankHuang0516/EClaw/issues/1918)
* **kanban:** sort dropdown on portal board ([#1924](https://github.com/HankHuang0516/EClaw/issues/1924)) ([1068e4b](https://github.com/HankHuang0516/EClaw/commit/1068e4b03df7f224b4fb3e9b2e20cbdaac4e2424))

## [1.1037.1](https://github.com/HankHuang0516/EClaw/compare/v1.1037.0...v1.1037.1) (2026-04-20)


### Bug Fixes

* **chat:** reply quote + photo attachment conflict ([#1921](https://github.com/HankHuang0516/EClaw/issues/1921)) ([5d91b84](https://github.com/HankHuang0516/EClaw/commit/5d91b84a6e69d462458ce048d44b9c4e5318aef7))

# [1.1037.0](https://github.com/HankHuang0516/EClaw/compare/v1.1036.1...v1.1037.0) (2026-04-20)


### Features

* Publisher X BYO credentials (multi-tenant Phase 1) ([#1920](https://github.com/HankHuang0516/EClaw/issues/1920)) ([8822608](https://github.com/HankHuang0516/EClaw/commit/882260833462e47b6b3e5241783ba004594d98df))

## [1.1036.1](https://github.com/HankHuang0516/EClaw/compare/v1.1036.0...v1.1036.1) (2026-04-20)


### Bug Fixes

* **chat:** strip ↩ quote prefix to prevent nested reply quotes ([#1919](https://github.com/HankHuang0516/EClaw/issues/1919)) ([b858988](https://github.com/HankHuang0516/EClaw/commit/b85898804c7892518b3c269d07f24915d718c8c6))

# [1.1036.0](https://github.com/HankHuang0516/EClaw/compare/v1.1035.0...v1.1036.0) (2026-04-20)


### Features

* **chat:** semantic vector search via pgvector + OpenAI embeddings ([#1918](https://github.com/HankHuang0516/EClaw/issues/1918)) ([0e922b2](https://github.com/HankHuang0516/EClaw/commit/0e922b2551b0c0d67188a7290fdc9604a15932ab))

# [1.1035.0](https://github.com/HankHuang0516/EClaw/compare/v1.1034.0...v1.1035.0) (2026-04-20)


### Features

* **onboarding:** Scope 0 wizard router — intent-based 3-question flow ([#1917](https://github.com/HankHuang0516/EClaw/issues/1917)) ([3f7214d](https://github.com/HankHuang0516/EClaw/commit/3f7214d7084a96684d902c8c6a85048213dd4409)), closes [track2#rental](https://github.com/track2/issues/rental) [track3#channelApiCard](https://github.com/track3/issues/channelApiCard)

# [1.1034.0](https://github.com/HankHuang0516/EClaw/compare/v1.1033.0...v1.1034.0) (2026-04-20)


### Features

* **onboarding:** Track 4 product tour — Claude channel binding ([#1916](https://github.com/HankHuang0516/EClaw/issues/1916)) ([347ecbe](https://github.com/HankHuang0516/EClaw/commit/347ecbefdf1f55e2aee7a5451eae3d4bd0391f10))

# [1.1033.0](https://github.com/HankHuang0516/EClaw/compare/v1.1032.0...v1.1033.0) (2026-04-20)


### Features

* **onboarding:** Track 6 product tour — Agent evaluation system (5-step) ([#1915](https://github.com/HankHuang0516/EClaw/issues/1915)) ([6b2d388](https://github.com/HankHuang0516/EClaw/commit/6b2d388b4dda5058d6741799f5ee035ad155ad20))

# [1.1032.0](https://github.com/HankHuang0516/EClaw/compare/v1.1031.0...v1.1032.0) (2026-04-20)


### Features

* **onboarding:** Track 3 product tour — OpenClaw channel binding ([#1914](https://github.com/HankHuang0516/EClaw/issues/1914)) ([8c42483](https://github.com/HankHuang0516/EClaw/commit/8c424830eb28da468463f26d02a5dff6e69ed082))

# [1.1031.0](https://github.com/HankHuang0516/EClaw/compare/v1.1030.0...v1.1031.0) (2026-04-20)


### Features

* **onboarding:** Track 2 product tour — paid e-coin bot rental ([#1913](https://github.com/HankHuang0516/EClaw/issues/1913)) ([7802f09](https://github.com/HankHuang0516/EClaw/commit/7802f09b998f5d1b75ea3521bc08a9f92c506ba4)), closes [#1912](https://github.com/HankHuang0516/EClaw/issues/1912)

# [1.1030.0](https://github.com/HankHuang0516/EClaw/compare/v1.1029.0...v1.1030.0) (2026-04-20)


### Features

* **onboarding:** Track 5 Hermes channel — Coming Soon placeholder ([#1912](https://github.com/HankHuang0516/EClaw/issues/1912)) ([28a9ab8](https://github.com/HankHuang0516/EClaw/commit/28a9ab89649e299365bcf9f933b973963c91ebf1))

# [1.1029.0](https://github.com/HankHuang0516/EClaw/compare/v1.1028.0...v1.1029.0) (2026-04-20)


### Features

* **onboarding:** Track 1 product tour — free/official bot rental ([#1911](https://github.com/HankHuang0516/EClaw/issues/1911)) ([68bb175](https://github.com/HankHuang0516/EClaw/commit/68bb175bf7ade619adeef8c4b9f1f5bf84b37a16)), closes [settings.html#channelApiCard](https://github.com/settings.html/issues/channelApiCard)

# [1.1028.0](https://github.com/HankHuang0516/EClaw/compare/v1.1027.0...v1.1028.0) (2026-04-20)


### Features

* **prompt:** expose /api/chat/history in [AVAILABLE TOOLS] channel prompt ([#1910](https://github.com/HankHuang0516/EClaw/issues/1910)) ([73a44fd](https://github.com/HankHuang0516/EClaw/commit/73a44fd482b3f9e0563201ffb67d25ca6652da3d))

# [1.1027.0](https://github.com/HankHuang0516/EClaw/compare/v1.1026.2...v1.1027.0) (2026-04-20)


### Features

* **onboarding:** Scope 0 wizard skeleton + i18n + dismiss flag ([#1909](https://github.com/HankHuang0516/EClaw/issues/1909)) ([16e497c](https://github.com/HankHuang0516/EClaw/commit/16e497c5735b1742a3b1cf3a96f444e845bde60f))

## [1.1026.2](https://github.com/HankHuang0516/EClaw/compare/v1.1026.1...v1.1026.2) (2026-04-20)


### Bug Fixes

* **billing:** retry stuck INAPP top-up purchases on app startup ([#1908](https://github.com/HankHuang0516/EClaw/issues/1908)) ([cc4e9f4](https://github.com/HankHuang0516/EClaw/commit/cc4e9f45bf6d7ae8471c539e2c48c7111cf7e42b)), closes [#1905](https://github.com/HankHuang0516/EClaw/issues/1905)

## [1.1026.1](https://github.com/HankHuang0516/EClaw/compare/v1.1026.0...v1.1026.1) (2026-04-20)


### Bug Fixes

* **topup:** wire up WebView JS bridge + wallet tier click handler ([#1905](https://github.com/HankHuang0516/EClaw/issues/1905)) ([858bef7](https://github.com/HankHuang0516/EClaw/commit/858bef742bad86b4ea19430853dfd593a1d0a525))

# [1.1026.0](https://github.com/HankHuang0516/EClaw/compare/v1.1025.0...v1.1026.0) (2026-04-20)


### Features

* **portal:** rename Mission Control sub-tab to Mind (心智) ([#1904](https://github.com/HankHuang0516/EClaw/issues/1904)) ([862d1e0](https://github.com/HankHuang0516/EClaw/commit/862d1e0286649c25c3b1b62b3716979e8c460e1f))

# [1.1025.0](https://github.com/HankHuang0516/EClaw/compare/v1.1024.1...v1.1025.0) (2026-04-20)


### Features

* **publisher:** retire wordpress from public surface ([#1903](https://github.com/HankHuang0516/EClaw/issues/1903)) ([1f94b9e](https://github.com/HankHuang0516/EClaw/commit/1f94b9e041d086f6bb7709852ad3cef95dbdf375))

## [1.1024.1](https://github.com/HankHuang0516/EClaw/compare/v1.1024.0...v1.1024.1) (2026-04-20)


### Bug Fixes

* **publisher:** allow browser navigation on OAuth start/callback routes ([#1902](https://github.com/HankHuang0516/EClaw/issues/1902)) ([7c2c971](https://github.com/HankHuang0516/EClaw/commit/7c2c9716c6a6b65e551a08486c7307e5160a8a75))
* **wallet:** mark zombie topup_orders 'failed' on first ack_sweep encounter ([#1901](https://github.com/HankHuang0516/EClaw/issues/1901)) ([3156af6](https://github.com/HankHuang0516/EClaw/commit/3156af6dc3f5fb6b99476b0f40e2325c918bcbdf))

# [1.1024.0](https://github.com/HankHuang0516/EClaw/compare/v1.1023.0...v1.1024.0) (2026-04-20)


### Features

* **invite:** ship promo-3 referral tier/milestone system ([#1900](https://github.com/HankHuang0516/EClaw/issues/1900)) ([e97968e](https://github.com/HankHuang0516/EClaw/commit/e97968e69e3ee770c0109f18d70fd93a0ee90021))

# [1.1023.0](https://github.com/HankHuang0516/EClaw/compare/v1.1022.0...v1.1023.0) (2026-04-20)


### Features

* **wallet:** Top-up IAP startup diag + /topup/diag endpoint ([#1899](https://github.com/HankHuang0516/EClaw/issues/1899)) ([2d07807](https://github.com/HankHuang0516/EClaw/commit/2d078070683a59e37e4e96ec30f580e2be032ba8))

# [1.1022.0](https://github.com/HankHuang0516/EClaw/compare/v1.1021.0...v1.1022.0) (2026-04-20)


### Features

* **portal:** add invite onboarding toast + persistent dashboard banner ([#1898](https://github.com/HankHuang0516/EClaw/issues/1898)) ([ddddff0](https://github.com/HankHuang0516/EClaw/commit/ddddff00488728f766f19c35edd1252966ff7a56))

# [1.1021.0](https://github.com/HankHuang0516/EClaw/compare/v1.1020.3...v1.1021.0) (2026-04-20)


### Features

* **portal:** add invite CTA to main nav ([#1897](https://github.com/HankHuang0516/EClaw/issues/1897)) ([142c2c7](https://github.com/HankHuang0516/EClaw/commit/142c2c7f56956bc41b4edaf59a90d4f2c237aa70))

## [1.1020.3](https://github.com/HankHuang0516/EClaw/compare/v1.1020.2...v1.1020.3) (2026-04-20)


### Bug Fixes

* single source of truth for invite_codes schema ([#1896](https://github.com/HankHuang0516/EClaw/issues/1896)) ([3f6e5fd](https://github.com/HankHuang0516/EClaw/commit/3f6e5fdc9d1cfac057e9a5d9a798d36070a7a179))

## [1.1020.2](https://github.com/HankHuang0516/EClaw/compare/v1.1020.1...v1.1020.2) (2026-04-20)


### Bug Fixes

* /api/mission/notes + /rules read from mission_dashboard ([#1894](https://github.com/HankHuang0516/EClaw/issues/1894)) ([f1c5d34](https://github.com/HankHuang0516/EClaw/commit/f1c5d34356cd52f8318798ec4d9a38724ae657ea)), closes [#1892](https://github.com/HankHuang0516/EClaw/issues/1892)

## [1.1020.1](https://github.com/HankHuang0516/EClaw/compare/v1.1020.0...v1.1020.1) (2026-04-20)


### Bug Fixes

* arena admin auth reads device.deviceSecret + timing-safe compare ([#1893](https://github.com/HankHuang0516/EClaw/issues/1893)) ([15ab121](https://github.com/HankHuang0516/EClaw/commit/15ab121583d9b6a407fcf06d17dd109477915b72)), closes [#1892](https://github.com/HankHuang0516/EClaw/issues/1892)

# [1.1020.0](https://github.com/HankHuang0516/EClaw/compare/v1.1019.0...v1.1020.0) (2026-04-20)


### Features

* **publisher+arena:** retire mastodon; device-owner admin auth ([#1892](https://github.com/HankHuang0516/EClaw/issues/1892)) ([77a197e](https://github.com/HankHuang0516/EClaw/commit/77a197e2f058afeb47713db8349198936719749a))

# [1.1019.0](https://github.com/HankHuang0516/EClaw/compare/v1.1018.2...v1.1019.0) (2026-04-20)


### Features

* **arena:** admin endpoint to reset public leaderboard ([#1891](https://github.com/HankHuang0516/EClaw/issues/1891)) ([1b14296](https://github.com/HankHuang0516/EClaw/commit/1b142960c68fc62626a2b9f1ff8ccd9bd6535dab))

## [1.1018.2](https://github.com/HankHuang0516/EClaw/compare/v1.1018.1...v1.1018.2) (2026-04-20)


### Bug Fixes

* **mission:** harden update handlers + mirror aliases across rule/skill/soul ([#1889](https://github.com/HankHuang0516/EClaw/issues/1889)) ([8bdbff6](https://github.com/HankHuang0516/EClaw/commit/8bdbff69a51f8e69e326c0a1b2e0402e27c09a2f)), closes [#1888](https://github.com/HankHuang0516/EClaw/issues/1888)

## [1.1018.1](https://github.com/HankHuang0516/EClaw/compare/v1.1018.0...v1.1018.1) (2026-04-20)


### Bug Fixes

* **mission:** accept content/category aliases on /note/update + fix /api/help ([#1888](https://github.com/HankHuang0516/EClaw/issues/1888)) ([e5c7140](https://github.com/HankHuang0516/EClaw/commit/e5c7140ebb77ea8fb9e36e95304b7c6e05b374ec))

# [1.1018.0](https://github.com/HankHuang0516/EClaw/compare/v1.1017.0...v1.1018.0) (2026-04-20)


### Features

* **chat:** show comments in 查看卡片 modal ([#1887](https://github.com/HankHuang0516/EClaw/issues/1887)) ([2e893b8](https://github.com/HankHuang0516/EClaw/commit/2e893b812b3392f510713d4d691ff28d90b38449))

# [1.1017.0](https://github.com/HankHuang0516/EClaw/compare/v1.1016.1...v1.1017.0) (2026-04-20)


### Features

* **growth:** add invite_conversion aggregate to /daily ([#1886](https://github.com/HankHuang0516/EClaw/issues/1886)) ([3843a5d](https://github.com/HankHuang0516/EClaw/commit/3843a5dd3a1789629842ed71d4453b8c07d0dc85))

## [1.1016.1](https://github.com/HankHuang0516/EClaw/compare/v1.1016.0...v1.1016.1) (2026-04-20)


### Bug Fixes

* **db:** retry DB init + startup gate to prevent entity wipe on deploy ([#1885](https://github.com/HankHuang0516/EClaw/issues/1885)) ([6064b34](https://github.com/HankHuang0516/EClaw/commit/6064b344a27b67aca3e901a7b636532a2a116977))

# [1.1016.0](https://github.com/HankHuang0516/EClaw/compare/v1.1015.2...v1.1016.0) (2026-04-20)


### Features

* **chat:** clickable view-card button on kanban notifications ([#1884](https://github.com/HankHuang0516/EClaw/issues/1884)) ([a7bf256](https://github.com/HankHuang0516/EClaw/commit/a7bf25619f46f54d7b654793d12ad02e61c2e0ed)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2)

## [1.1015.2](https://github.com/HankHuang0516/EClaw/compare/v1.1015.1...v1.1015.2) (2026-04-19)


### Bug Fixes

* **chat+docs:** spec-compliant rendering for kanban_notify/form_submission + CLAUDE.md refresh ([#1883](https://github.com/HankHuang0516/EClaw/issues/1883)) ([c2a538f](https://github.com/HankHuang0516/EClaw/commit/c2a538f9f3c334f4d2940561ba399cc200b661c9))

## [1.1015.1](https://github.com/HankHuang0516/EClaw/compare/v1.1015.0...v1.1015.1) (2026-04-19)


### Bug Fixes

* **wallet:** ack sweep skips terminal failed rows ([#1882](https://github.com/HankHuang0516/EClaw/issues/1882)) ([5ffa970](https://github.com/HankHuang0516/EClaw/commit/5ffa970b514fa04d6b042e5ebac3f2a2c04e338c)), closes [#1881](https://github.com/HankHuang0516/EClaw/issues/1881)

# [1.1015.0](https://github.com/HankHuang0516/EClaw/compare/v1.1014.1...v1.1015.0) (2026-04-19)


### Features

* **wallet:** P2 Google Play ack-retry sweep (revenue-leak backstop) ([#1881](https://github.com/HankHuang0516/EClaw/issues/1881)) ([d185902](https://github.com/HankHuang0516/EClaw/commit/d1859028635dfdefc23676d89dd22771e8396ebb))

## [1.1014.1](https://github.com/HankHuang0516/EClaw/compare/v1.1014.0...v1.1014.1) (2026-04-19)


### Bug Fixes

* **wallet:** env-drive Google Play package name (default com.hank.clawlive) ([#1880](https://github.com/HankHuang0516/EClaw/issues/1880)) ([e593cd1](https://github.com/HankHuang0516/EClaw/commit/e593cd104f48ea8af8c4d40105d0e7ebbd79eadf)), closes [#1879](https://github.com/HankHuang0516/EClaw/issues/1879)

# [1.1014.0](https://github.com/HankHuang0516/EClaw/compare/v1.1013.0...v1.1014.0) (2026-04-19)


### Features

* **wallet:** verify Google Play purchases via androidpublisher v3 ([#1879](https://github.com/HankHuang0516/EClaw/issues/1879)) ([262c354](https://github.com/HankHuang0516/EClaw/commit/262c35487461bc6e6ae007ececb524d72e34a6b4))

# [1.1013.0](https://github.com/HankHuang0516/EClaw/compare/v1.1012.0...v1.1013.0) (2026-04-19)


### Features

* **info-hub:** add 3 marketing hooks + 11-subsystem value-prop ([#1878](https://github.com/HankHuang0516/EClaw/issues/1878)) ([88ffaa0](https://github.com/HankHuang0516/EClaw/commit/88ffaa0cf3fa67647f5b3950b9f585c493e84248))

# [1.1012.0](https://github.com/HankHuang0516/EClaw/compare/v1.1011.0...v1.1012.0) (2026-04-19)


### Features

* **admin:** gate rental monitor + retune publisher thresholds ([#1877](https://github.com/HankHuang0516/EClaw/issues/1877)) ([85997d5](https://github.com/HankHuang0516/EClaw/commit/85997d58e9dfa0cb0ae16a268e2c381d54f47ebd))

# [1.1011.0](https://github.com/HankHuang0516/EClaw/compare/v1.1010.0...v1.1011.0) (2026-04-19)


### Features

* **monitoring:** accept botSecret for rental-health endpoint ([#1876](https://github.com/HankHuang0516/EClaw/issues/1876)) ([6ac2d23](https://github.com/HankHuang0516/EClaw/commit/6ac2d23dd1c90540ff603d3069316a6ebd92a1fa)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2)

# [1.1010.0](https://github.com/HankHuang0516/EClaw/compare/v1.1009.0...v1.1010.0) (2026-04-19)


### Features

* **monitoring:** rental fleet health endpoint + dashboard ([#1875](https://github.com/HankHuang0516/EClaw/issues/1875)) ([def90f1](https://github.com/HankHuang0516/EClaw/commit/def90f134adc7faa35ac489dd18b97c8ea8c0aa6))

# [1.1009.0](https://github.com/HankHuang0516/EClaw/compare/v1.1008.0...v1.1009.0) (2026-04-19)


### Features

* **editor:** online text editor for chat attachments via Monaco ([#1874](https://github.com/HankHuang0516/EClaw/issues/1874)) ([c0c4e30](https://github.com/HankHuang0516/EClaw/commit/c0c4e30db828fbc08578fec53634a5761a581285))

# [1.1008.0](https://github.com/HankHuang0516/EClaw/compare/v1.1007.0...v1.1008.0) (2026-04-19)


### Features

* **editor:** opt-in Monaco for note page HTML editor (?editor=monaco) ([#1873](https://github.com/HankHuang0516/EClaw/issues/1873)) ([984dc7d](https://github.com/HankHuang0516/EClaw/commit/984dc7da2737129bb127aa4c7ff195a18a6633ec))

# [1.1007.0](https://github.com/HankHuang0516/EClaw/compare/v1.1006.0...v1.1007.0) (2026-04-19)


### Features

* **publisher:** append referral CTA footer to long-form publishes ([#1872](https://github.com/HankHuang0516/EClaw/issues/1872)) ([e0a5776](https://github.com/HankHuang0516/EClaw/commit/e0a577697595861586b3a99a2a4efbfc76053114))

# [1.1006.0](https://github.com/HankHuang0516/EClaw/compare/v1.1005.0...v1.1006.0) (2026-04-19)


### Features

* **invite:** referral stats dashboard on invite.html ([#1871](https://github.com/HankHuang0516/EClaw/issues/1871)) ([4ff753b](https://github.com/HankHuang0516/EClaw/commit/4ff753b5554dd4cfe31b684ffe603ae16abc16aa))

# [1.1005.0](https://github.com/HankHuang0516/EClaw/compare/v1.1004.0...v1.1005.0) (2026-04-19)


### Features

* **invite:** QR-code share image generator ([#1870](https://github.com/HankHuang0516/EClaw/issues/1870)) ([e020f42](https://github.com/HankHuang0516/EClaw/commit/e020f427042b243d468e194fed60cf1e555663f0))

# [1.1004.0](https://github.com/HankHuang0516/EClaw/compare/v1.1003.10...v1.1004.0) (2026-04-19)


### Features

* **dashboard:** add invite friends CTA banner ([#1869](https://github.com/HankHuang0516/EClaw/issues/1869)) ([cdd4f26](https://github.com/HankHuang0516/EClaw/commit/cdd4f2606832415204e9fd7a33d3df7654a7d3d0))

## [1.1003.10](https://github.com/HankHuang0516/EClaw/compare/v1.1003.9...v1.1003.10) (2026-04-19)


### Bug Fixes

* **allocator:** tombstone freed publicCodes — prevent stale-QR re-routing ([#1868](https://github.com/HankHuang0516/EClaw/issues/1868)) ([dd1b6b9](https://github.com/HankHuang0516/EClaw/commit/dd1b6b9c2f5168e03b524426480a9bc7bcb672d7)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)

## [1.1003.9](https://github.com/HankHuang0516/EClaw/compare/v1.1003.8...v1.1003.9) (2026-04-19)


### Bug Fixes

* **orgchart:** confirm peer reparents, persist default snapshot, auto-fit overflow ([#1867](https://github.com/HankHuang0516/EClaw/issues/1867)) ([87061f3](https://github.com/HankHuang0516/EClaw/commit/87061f3db398a8a1565763daea2ff5301dfcf0ee))

## [1.1003.8](https://github.com/HankHuang0516/EClaw/compare/v1.1003.7...v1.1003.8) (2026-04-19)


### Bug Fixes

* **entity:** preserve never-reuse invariant — remove auto-compact on delete ([#1862](https://github.com/HankHuang0516/EClaw/issues/1862)) ([5a153ed](https://github.com/HankHuang0516/EClaw/commit/5a153edacf5d0968ac0922488bb388c0b592f05a))

## [1.1003.7](https://github.com/HankHuang0516/EClaw/compare/v1.1003.6...v1.1003.7) (2026-04-19)


### Bug Fixes

* **android:** force orgchart bottom sheet to 90% height ([#1854](https://github.com/HankHuang0516/EClaw/issues/1854)) ([ea12d15](https://github.com/HankHuang0516/EClaw/commit/ea12d1594b33d494fd07474bc110b7dcef83de73))
* **orgchart:** guard same-parent drops + confirm reset ([#1855](https://github.com/HankHuang0516/EClaw/issues/1855)) ([ce770e5](https://github.com/HankHuang0516/EClaw/commit/ce770e5c60af4be34078897bba8ff2c438153ec4))

## [1.1003.6](https://github.com/HankHuang0516/EClaw/compare/v1.1003.5...v1.1003.6) (2026-04-18)


### Bug Fixes

* **security:** remove allowVulnerableTags XSS risk in note page sanitizer ([#1840](https://github.com/HankHuang0516/EClaw/issues/1840)) ([#1859](https://github.com/HankHuang0516/EClaw/issues/1859)) ([438df13](https://github.com/HankHuang0516/EClaw/commit/438df136daff154aeb48f514af997687c12f9f05))

## [1.1003.5](https://github.com/HankHuang0516/EClaw/compare/v1.1003.4...v1.1003.5) (2026-04-18)


### Bug Fixes

* **portal:** lazy-render mermaid only when sub-panel is visible ([#1853](https://github.com/HankHuang0516/EClaw/issues/1853)) ([b6f0fc0](https://github.com/HankHuang0516/EClaw/commit/b6f0fc0b8cfe90552e6c883eaa8fa5b1eeec5d12))

## [1.1003.4](https://github.com/HankHuang0516/EClaw/compare/v1.1003.3...v1.1003.4) (2026-04-18)


### Bug Fixes

* **ios:** declare newArchEnabled for NitroModules autolink ([#1852](https://github.com/HankHuang0516/EClaw/issues/1852)) ([9f90a3e](https://github.com/HankHuang0516/EClaw/commit/9f90a3ee5b86543ff1255d122a548d87380e6d31))

## [1.1003.3](https://github.com/HankHuang0516/EClaw/compare/v1.1003.2...v1.1003.3) (2026-04-18)


### Bug Fixes

* **i18n:** add cardholder_tab_bot_plaza to 9 missing locales ([#1851](https://github.com/HankHuang0516/EClaw/issues/1851)) ([fd08600](https://github.com/HankHuang0516/EClaw/commit/fd086003469f0f36445cf56ad0d2b02332f495fb)), closes [#1850](https://github.com/HankHuang0516/EClaw/issues/1850)

## [1.1003.2](https://github.com/HankHuang0516/EClaw/compare/v1.1003.1...v1.1003.2) (2026-04-18)


### Bug Fixes

* **card-holder:** null-guard navEmail in embed + empty-state CTA + URL-dup ([#1850](https://github.com/HankHuang0516/EClaw/issues/1850)) ([1be0680](https://github.com/HankHuang0516/EClaw/commit/1be0680dc2fb2e7af09b227634a94ba26b35464b))

## [1.1003.1](https://github.com/HankHuang0516/EClaw/compare/v1.1003.0...v1.1003.1) (2026-04-18)


### Bug Fixes

* **arena:** total-time stuck on --:-- when exam finishes fast ([#1849](https://github.com/HankHuang0516/EClaw/issues/1849)) ([a9875d4](https://github.com/HankHuang0516/EClaw/commit/a9875d482b43256c5f59dab4c3abf7932e0d95b4))

# [1.1003.0](https://github.com/HankHuang0516/EClaw/compare/v1.1002.7...v1.1003.0) (2026-04-18)


### Features

* **ios:** align App Store icon with Android launcher (brand parity) ([#1848](https://github.com/HankHuang0516/EClaw/issues/1848)) ([dfb49c2](https://github.com/HankHuang0516/EClaw/commit/dfb49c2f174521f8d66222726dbc5c7249858e21))

## [1.1002.7](https://github.com/HankHuang0516/EClaw/compare/v1.1002.6...v1.1002.7) (2026-04-18)


### Bug Fixes

* **arena:** timer doesn't start until page refresh after bot pickup ([#1847](https://github.com/HankHuang0516/EClaw/issues/1847)) ([8736c86](https://github.com/HankHuang0516/EClaw/commit/8736c86867a585f808a4775248166ce9d9c40381))

## [1.1002.6](https://github.com/HankHuang0516/EClaw/compare/v1.1002.5...v1.1002.6) (2026-04-18)


### Bug Fixes

* **arena:** timer + auto-finalize + elapsed-time leaderboard fixes ([#1844](https://github.com/HankHuang0516/EClaw/issues/1844)) ([dc6f3d3](https://github.com/HankHuang0516/EClaw/commit/dc6f3d3c66d9a95ce905b5dfad6e617bf723ddf6))

## [1.1002.5](https://github.com/HankHuang0516/EClaw/compare/v1.1002.4...v1.1002.5) (2026-04-18)


### Bug Fixes

* **arena:** remove duplicate examId declaration causing CI ESLint failure ([#1843](https://github.com/HankHuang0516/EClaw/issues/1843)) ([dd4ff17](https://github.com/HankHuang0516/EClaw/commit/dd4ff1762ef6fbbfcd11697ded5db7e5494c2afc))

## [1.1002.4](https://github.com/HankHuang0516/EClaw/compare/v1.1002.3...v1.1002.4) (2026-04-18)


### Bug Fixes

* **arena:** GET /arena/test accepts prefixed exam ids ([#1842](https://github.com/HankHuang0516/EClaw/issues/1842)) ([b9d095b](https://github.com/HankHuang0516/EClaw/commit/b9d095bd0c966516d8cb9256012692e87dac3365))

## [1.1002.3](https://github.com/HankHuang0516/EClaw/compare/v1.1002.2...v1.1002.3) (2026-04-18)


### Bug Fixes

* **security+seo:** BOLA ownership checks, OAuth collision, Arena null ID, SQL param, SEO, chat spec ([#1839](https://github.com/HankHuang0516/EClaw/issues/1839)) ([a4044e6](https://github.com/HankHuang0516/EClaw/commit/a4044e6e2a60125665e14c9b21850fc1d118b9d9)), closes [#1790](https://github.com/HankHuang0516/EClaw/issues/1790)

## [1.1002.2](https://github.com/HankHuang0516/EClaw/compare/v1.1002.1...v1.1002.2) (2026-04-18)


### Bug Fixes

* **arena:** generate exam id in code — prod DB DEFAULT is missing ([#1838](https://github.com/HankHuang0516/EClaw/issues/1838)) ([721ebe4](https://github.com/HankHuang0516/EClaw/commit/721ebe4749e171d3bfcacac2a7197416ad3da380))

## [1.1002.1](https://github.com/HankHuang0516/EClaw/compare/v1.1002.0...v1.1002.1) (2026-04-18)


### Bug Fixes

* **arena:** repair GET /arena/test 500 + routine self-test for pool refresh ([#1836](https://github.com/HankHuang0516/EClaw/issues/1836)) ([04d07a2](https://github.com/HankHuang0516/EClaw/commit/04d07a2a1d0e4dea6bd2a708fdd45a51b889aa8a))

# [1.1002.0](https://github.com/HankHuang0516/EClaw/compare/v1.1001.0...v1.1002.0) (2026-04-18)


### Features

* **android:** rip out CardHolderActivity → portal/card-holder.html?embed=1 ([#1834](https://github.com/HankHuang0516/EClaw/issues/1834)) ([1bd4b72](https://github.com/HankHuang0516/EClaw/commit/1bd4b729b718a78804f3a8ab6b362ddf94f11ed1))

# [1.1001.0](https://github.com/HankHuang0516/EClaw/compare/v1.1000.0...v1.1001.0) (2026-04-17)


### Features

* **card-holder:** Run Interview entry on MyCard detail ([#1830](https://github.com/HankHuang0516/EClaw/issues/1830)) ([19628a3](https://github.com/HankHuang0516/EClaw/commit/19628a3600a7bb9bc39f00f809dcc732356dbfee))

# [1.1000.0](https://github.com/HankHuang0516/EClaw/compare/v1.999.0...v1.1000.0) (2026-04-17)


### Features

* **chat:** clickable card_<shortId> references in chat ([#1829](https://github.com/HankHuang0516/EClaw/issues/1829)) ([14ab004](https://github.com/HankHuang0516/EClaw/commit/14ab004780c3c03ebc8f73f03ce4f090e0b605ec))

# [1.999.0](https://github.com/HankHuang0516/EClaw/compare/v1.998.0...v1.999.0) (2026-04-17)


### Features

* **chat:** quote-reply reachable on mobile WebView ([#1828](https://github.com/HankHuang0516/EClaw/issues/1828)) ([367c76e](https://github.com/HankHuang0516/EClaw/commit/367c76e49b9b0a439cfb32a7fb02331502bf053e))

# [1.998.0](https://github.com/HankHuang0516/EClaw/compare/v1.997.0...v1.998.0) (2026-04-17)


### Features

* **card-holder:** add Bot Plaza publish toggle on MyCard (Android + iOS) ([#1827](https://github.com/HankHuang0516/EClaw/issues/1827)) ([0d6b50b](https://github.com/HankHuang0516/EClaw/commit/0d6b50bb1bc61b1ee33dd2436abe3c55e3d218b1))

# [1.997.0](https://github.com/HankHuang0516/EClaw/compare/v1.996.0...v1.997.0) (2026-04-17)


### Features

* **card-holder:** add 開始對話 + 分享 actions on MyCard (Android + iOS) ([#1826](https://github.com/HankHuang0516/EClaw/issues/1826)) ([964a626](https://github.com/HankHuang0516/EClaw/commit/964a6266c7b725a1879af33deb268faf25de80fa))

# [1.996.0](https://github.com/HankHuang0516/EClaw/compare/v1.995.0...v1.996.0) (2026-04-17)


### Features

* **card-holder:** add Edit action in card detail dialog ([#1824](https://github.com/HankHuang0516/EClaw/issues/1824)) ([0bd25de](https://github.com/HankHuang0516/EClaw/commit/0bd25def8164d2a586a1cabe1e50199b92a63935))
* **ios/cards:** add Edit button + AgentCardDialog in My Cards ([#1825](https://github.com/HankHuang0516/EClaw/issues/1825)) ([aeda986](https://github.com/HankHuang0516/EClaw/commit/aeda986e31b885363d6a8c4543d23f89e18d109c))

# [1.995.0](https://github.com/HankHuang0516/EClaw/compare/v1.994.5...v1.995.0) (2026-04-17)


### Features

* **ios:** align home page with Android MainActivity ([#1823](https://github.com/HankHuang0516/EClaw/issues/1823)) ([5fec987](https://github.com/HankHuang0516/EClaw/commit/5fec987c196a3bb12e2f5f76a1b197db0fb13a4d))

## [1.994.5](https://github.com/HankHuang0516/EClaw/compare/v1.994.4...v1.994.5) (2026-04-17)


### Bug Fixes

* **dashboard:** harden orgchart embed lock (DOM remove + UA + guard) ([#1822](https://github.com/HankHuang0516/EClaw/issues/1822)) ([e30ecf0](https://github.com/HankHuang0516/EClaw/commit/e30ecf09afcccd8becdca3741f0ccfa96505bd07)), closes [#1819](https://github.com/HankHuang0516/EClaw/issues/1819) [#dashTabs](https://github.com/HankHuang0516/EClaw/issues/dashTabs)
* **ui:** replace dashboard grid icon with org-chart tree icon ([#1821](https://github.com/HankHuang0516/EClaw/issues/1821)) ([e19c5af](https://github.com/HankHuang0516/EClaw/commit/e19c5af0b5ab473251b1bdc3c2b4bf0de3160cc9))

## [1.994.4](https://github.com/HankHuang0516/EClaw/compare/v1.994.3...v1.994.4) (2026-04-17)


### Bug Fixes

* **dashboard:** lock to orgchart when navigated from community.html ([#1819](https://github.com/HankHuang0516/EClaw/issues/1819)) ([a28b0eb](https://github.com/HankHuang0516/EClaw/commit/a28b0eb4d33429e78213e3d45bfe839c5d5d6a77)), closes [#1815](https://github.com/HankHuang0516/EClaw/issues/1815)

## [1.994.3](https://github.com/HankHuang0516/EClaw/compare/v1.994.2...v1.994.3) (2026-04-17)


### Bug Fixes

* **android:** force view=orgchart when CardHolder nav → dashboard.html ([#1815](https://github.com/HankHuang0516/EClaw/issues/1815)) ([ddf5e58](https://github.com/HankHuang0516/EClaw/commit/ddf5e586a7fa24ae0a3c5aaecab70f48c0fd305b))

## [1.994.2](https://github.com/HankHuang0516/EClaw/compare/v1.994.1...v1.994.2) (2026-04-17)


### Bug Fixes

* **kanban:** generate card id app-side (unblock prod) ([#1814](https://github.com/HankHuang0516/EClaw/issues/1814)) ([245bb75](https://github.com/HankHuang0516/EClaw/commit/245bb752175550580964d38b82db24f8322d3119)), closes [1812/#1813](https://github.com/HankHuang0516/EClaw/issues/1813)

## [1.994.1](https://github.com/HankHuang0516/EClaw/compare/v1.994.0...v1.994.1) (2026-04-17)


### Bug Fixes

* **schema:** add USING ::text to UUID→VARCHAR(48) migration ([#1813](https://github.com/HankHuang0516/EClaw/issues/1813)) ([788b88d](https://github.com/HankHuang0516/EClaw/commit/788b88d08b63f09ed83c8aee397008edf71e78c7)), closes [#1812](https://github.com/HankHuang0516/EClaw/issues/1812)

# [1.994.0](https://github.com/HankHuang0516/EClaw/compare/v1.993.0...v1.994.0) (2026-04-17)


### Features

* Stripe-style prefixed entity IDs (card_xxx / note_xxx / ...) ([#1812](https://github.com/HankHuang0516/EClaw/issues/1812)) ([78d3b62](https://github.com/HankHuang0516/EClaw/commit/78d3b62c00b772781b90f434c22297ff074ec461))

# [1.993.0](https://github.com/HankHuang0516/EClaw/compare/v1.992.4...v1.993.0) (2026-04-17)


### Features

* **linkify:** recognize CJK keywords for entity/note chips ([#1811](https://github.com/HankHuang0516/EClaw/issues/1811)) ([88c7a71](https://github.com/HankHuang0516/EClaw/commit/88c7a714669158756bf97e518ccde26abc584081))

## [1.992.4](https://github.com/HankHuang0516/EClaw/compare/v1.992.3...v1.992.4) (2026-04-17)


### Bug Fixes

* **dashboard:** show org chart inline instead of routing to full dashboard ([f9497a0](https://github.com/HankHuang0516/EClaw/commit/f9497a07cef15e3e1e71f8d5aa6836d9f838799f))

## [1.992.3](https://github.com/HankHuang0516/EClaw/compare/v1.992.2...v1.992.3) (2026-04-17)


### Bug Fixes

* **db:** hydrate fcm_token / apns_token from PG on boot ([b1ab3b4](https://github.com/HankHuang0516/EClaw/commit/b1ab3b454a938b43808e91eb2b54cbefd8fa214e)), closes [#1808](https://github.com/HankHuang0516/EClaw/issues/1808)

## [1.992.2](https://github.com/HankHuang0516/EClaw/compare/v1.992.1...v1.992.2) (2026-04-17)


### Bug Fixes

* **fcm:** include title/body in android.notification so killed-app display isn't blank ([07466d7](https://github.com/HankHuang0516/EClaw/commit/07466d71fd8357a192496714165487763e8fb180))

## [1.992.1](https://github.com/HankHuang0516/EClaw/compare/v1.992.0...v1.992.1) (2026-04-17)


### Bug Fixes

* **fcm:** self-heal token registration at every app launch ([743f605](https://github.com/HankHuang0516/EClaw/commit/743f605dbb8c523924a5f5dc44bf731f5d8dbb9d))

# [1.992.0](https://github.com/HankHuang0516/EClaw/compare/v1.991.2...v1.992.0) (2026-04-17)


### Features

* **chat:** group consecutive photos into a single grid bubble (LINE/WhatsApp style) ([#1804](https://github.com/HankHuang0516/EClaw/issues/1804)) ([fd4a26b](https://github.com/HankHuang0516/EClaw/commit/fd4a26b901becd54e492b12f8f9621a46461a879))

## [1.991.2](https://github.com/HankHuang0516/EClaw/compare/v1.991.1...v1.991.2) (2026-04-17)


### Bug Fixes

* **chat:** render Card/Skill/Rule/Listing/Exam/Contract chips when ID is wrapped in backticks ([#1803](https://github.com/HankHuang0516/EClaw/issues/1803)) ([df9c1fd](https://github.com/HankHuang0516/EClaw/commit/df9c1fd2e8fbdcfdebd59dbda24be8f1f606d4a1)), closes [#1799](https://github.com/HankHuang0516/EClaw/issues/1799)

## [1.991.1](https://github.com/HankHuang0516/EClaw/compare/v1.991.0...v1.991.1) (2026-04-17)


### Bug Fixes

* **dashboard:** add touch-action:none to org chart nodes for mobile drag ([#1802](https://github.com/HankHuang0516/EClaw/issues/1802)) ([4378767](https://github.com/HankHuang0516/EClaw/commit/43787674d0eac086a95f135bf9099592afb61b48))

# [1.991.0](https://github.com/HankHuang0516/EClaw/compare/v1.990.3...v1.991.0) (2026-04-17)


### Features

* **chat:** user-adjustable chat density (compact / normal / comfortable) ([#1801](https://github.com/HankHuang0516/EClaw/issues/1801)) ([cf6d374](https://github.com/HankHuang0516/EClaw/commit/cf6d374790b9858e15a9efaf1bcbf2273d5272a6))

## [1.990.3](https://github.com/HankHuang0516/EClaw/compare/v1.990.2...v1.990.3) (2026-04-17)


### Bug Fixes

* **chat:** render note modal content as Markdown when html_content has no tags ([#1800](https://github.com/HankHuang0516/EClaw/issues/1800)) ([b3196b6](https://github.com/HankHuang0516/EClaw/commit/b3196b6fa7214e7a97881bbbb71534ee7690c14c))

## [1.990.2](https://github.com/HankHuang0516/EClaw/compare/v1.990.1...v1.990.2) (2026-04-17)


### Bug Fixes

* **chat:** render Note chip when ID is wrapped in backticks ([#1799](https://github.com/HankHuang0516/EClaw/issues/1799)) ([c7a2348](https://github.com/HankHuang0516/EClaw/commit/c7a2348652715de99d19f1b413aadf6b60afc735))

## [1.990.1](https://github.com/HankHuang0516/EClaw/compare/v1.990.0...v1.990.1) (2026-04-17)


### Bug Fixes

* **chat:** Enter on mobile inserts newline, not send ([#1798](https://github.com/HankHuang0516/EClaw/issues/1798)) ([29a4de6](https://github.com/HankHuang0516/EClaw/commit/29a4de68583e1fcb56fa6b03545255bf252e39ef))

# [1.990.0](https://github.com/HankHuang0516/EClaw/compare/v1.989.0...v1.990.0) (2026-04-17)


### Features

* **ios:** align Home, Cards, Settings with Android — v1.2.0 ([ef4c6f8](https://github.com/HankHuang0516/EClaw/commit/ef4c6f8973c515e6ff00bef85f9ddfb50c187ab1)), closes [#1795](https://github.com/HankHuang0516/EClaw/issues/1795)

# [1.989.0](https://github.com/HankHuang0516/EClaw/compare/v1.988.7...v1.989.0) (2026-04-16)


### Bug Fixes

* detect EClawIOS user agent for AI chat widget blocking ([aa87c2f](https://github.com/HankHuang0516/EClaw/commit/aa87c2f188ed63e1df8f29da343625c77e66fa5e))


### Features

* add collapsible Developer section in Settings ([1d4a507](https://github.com/HankHuang0516/EClaw/commit/1d4a507a2d0ebc1ad78072acd57816537086d41a))

## [1.988.7](https://github.com/HankHuang0516/EClaw/compare/v1.988.6...v1.988.7) (2026-04-16)


### Bug Fixes

* **android:** WebViewActivity missing from AndroidManifest — crash fix ([606b04c](https://github.com/HankHuang0516/EClaw/commit/606b04cadaca3e80ab765a83a06e1023c4b8c7c3))

## [1.988.6](https://github.com/HankHuang0516/EClaw/compare/v1.988.5...v1.988.6) (2026-04-16)


### Bug Fixes

* topup BottomSheet UI + speakTo echo prevention ([682d539](https://github.com/HankHuang0516/EClaw/commit/682d53945b3ee8eb79c7ef709fff997933f18554))

## [1.988.5](https://github.com/HankHuang0516/EClaw/compare/v1.988.4...v1.988.5) (2026-04-16)


### Bug Fixes

* org chart forwarding is now silent — no duplicate chat bubbles ([84b1040](https://github.com/HankHuang0516/EClaw/commit/84b1040bfe970efe91861676b39176b715d38780))

## [1.988.4](https://github.com/HankHuang0516/EClaw/compare/v1.988.3...v1.988.4) (2026-04-16)


### Bug Fixes

* **android:** topup dialog i18n + activity leak from simplify review ([39d9107](https://github.com/HankHuang0516/EClaw/commit/39d9107f74b6f777ae563487a5d9f10439c9b1a0))

## [1.988.3](https://github.com/HankHuang0516/EClaw/compare/v1.988.2...v1.988.3) (2026-04-16)


### Bug Fixes

* **test:** mention-ux-static accepts let pushText (was const) ([68b9379](https://github.com/HankHuang0516/EClaw/commit/68b93791488a0d30078f4463c44e92d2ec8975b0))

## [1.988.2](https://github.com/HankHuang0516/EClaw/compare/v1.988.1...v1.988.2) (2026-04-16)


### Bug Fixes

* **i18n:** fill fr/de/th/vi/id/ar/zh translation gaps — 74 keys ([21ba8c5](https://github.com/HankHuang0516/EClaw/commit/21ba8c5ed6b685e654bc8deb6b333178c1f19c75)), closes [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#6](https://github.com/HankHuang0516/EClaw/issues/6)

## [1.988.1](https://github.com/HankHuang0516/EClaw/compare/v1.988.0...v1.988.1) (2026-04-16)


### Bug Fixes

* e-coin topup payment not crediting — auth mismatch + consume order ([4c4c44a](https://github.com/HankHuang0516/EClaw/commit/4c4c44a53240b9e0d571c7ec32931d3eaacd229d))

# [1.988.0](https://github.com/HankHuang0516/EClaw/compare/v1.987.3...v1.988.0) (2026-04-16)


### Features

* **ios:** integrate react-native-iap v15 + nitro-modules for Apple IAP ([5f48f35](https://github.com/HankHuang0516/EClaw/commit/5f48f35c432655cb62e8bf3a09c9c797c4fe5b14))

## [1.987.3](https://github.com/HankHuang0516/EClaw/compare/v1.987.2...v1.987.3) (2026-04-16)


### Bug Fixes

* **android:** Settings URLs use in-app WebView + Channel API manage button ([ddadca9](https://github.com/HankHuang0516/EClaw/commit/ddadca9eebf823c78ce9662ed5a07ed2b112d319))

## [1.987.2](https://github.com/HankHuang0516/EClaw/compare/v1.987.1...v1.987.2) (2026-04-16)


### Bug Fixes

* **i18n:** fill hi (Hindi) translation gaps - 112 keys ([31e0905](https://github.com/HankHuang0516/EClaw/commit/31e09058d318d5b8f4619a56d5e96f177ede326f))
* **i18n:** fill ms (Malay) translation gaps - 114 keys ([a9776fc](https://github.com/HankHuang0516/EClaw/commit/a9776fc8fca10d184f73b72308205d4514e6634a))

## [1.987.1](https://github.com/HankHuang0516/EClaw/compare/v1.987.0...v1.987.1) (2026-04-16)


### Bug Fixes

* **android:** show topup tier selection instead of subscription on E-coin recharge ([15d6f1c](https://github.com/HankHuang0516/EClaw/commit/15d6f1c8bee07fa07b26b647a8945237c4083275))

# [1.987.0](https://github.com/HankHuang0516/EClaw/compare/v1.986.0...v1.987.0) (2026-04-16)


### Features

* add {{KEY_NAME}} vault interpolation in chat + rename My Files to Cloud Drive ([308b30d](https://github.com/HankHuang0516/EClaw/commit/308b30dd50e71e29b4b9b5eafa9fa81f82017320))

# [1.986.0](https://github.com/HankHuang0516/EClaw/compare/v1.985.0...v1.986.0) (2026-04-16)


### Features

* show assigned kanban tasks in [@mention](https://github.com/mention) entity profile ([f1022e4](https://github.com/HankHuang0516/EClaw/commit/f1022e499a13fd035eb50f8aebb79deb2fe80ce9))

# [1.985.0](https://github.com/HankHuang0516/EClaw/compare/v1.984.0...v1.985.0) (2026-04-16)


### Features

* add clickable [@mention](https://github.com/mention) profiles and entity preview modal ([10b2521](https://github.com/HankHuang0516/EClaw/commit/10b25219701e2edb27fe8c011f26e96cf7d0a2b8))

# [1.984.0](https://github.com/HankHuang0516/EClaw/compare/v1.983.2...v1.984.0) (2026-04-16)


### Features

* add unified entity link chips for Card, Skill, Rule, Listing, Exam, Contract ([5f56059](https://github.com/HankHuang0516/EClaw/commit/5f5605901bd24c606eaa3e561c0b3258c35356d7))

## [1.983.2](https://github.com/HankHuang0516/EClaw/compare/v1.983.1...v1.983.2) (2026-04-16)


### Bug Fixes

* require "Note" prefix for all note-link chip matching ([64adb02](https://github.com/HankHuang0516/EClaw/commit/64adb022da9dc6822b14e6db406f2903bacef8ab))

## [1.983.1](https://github.com/HankHuang0516/EClaw/compare/v1.983.0...v1.983.1) (2026-04-16)


### Bug Fixes

* prevent double-nesting in note-link chip rendering ([2a36dd8](https://github.com/HankHuang0516/EClaw/commit/2a36dd8e0128bb9ac6dd7ad23a4da44ae53228f6))

# [1.983.0](https://github.com/HankHuang0516/EClaw/compare/v1.982.4...v1.983.0) (2026-04-16)


### Features

* add Note ID auto-detection in Chat UI ([653d4b9](https://github.com/HankHuang0516/EClaw/commit/653d4b94cdf9f8540b129ae16878e31f8c69719a))

## [1.982.4](https://github.com/HankHuang0516/EClaw/compare/v1.982.3...v1.982.4) (2026-04-15)


### Bug Fixes

* **security:** replace Math.random() with crypto.randomBytes() in secret generation ([#1789](https://github.com/HankHuang0516/EClaw/issues/1789)) ([483f945](https://github.com/HankHuang0516/EClaw/commit/483f9453e6169a704ca295d70d06bd60930dc28d))

## [1.982.3](https://github.com/HankHuang0516/EClaw/compare/v1.982.2...v1.982.3) (2026-04-15)


### Bug Fixes

* **tests:** register test-org-chart.js in integration test runner ([#1788](https://github.com/HankHuang0516/EClaw/issues/1788)) ([bb2c2a9](https://github.com/HankHuang0516/EClaw/commit/bb2c2a9e69ead87da0447861c797975a8e4fe373))

## [1.982.2](https://github.com/HankHuang0516/EClaw/compare/v1.982.1...v1.982.2) (2026-04-15)


### Bug Fixes

* guard undefined .substring() in pushToBot + rental interviewDeps race + chat a11y ([#1785](https://github.com/HankHuang0516/EClaw/issues/1785)) ([04a8bdd](https://github.com/HankHuang0516/EClaw/commit/04a8bdd9559d2673a34f56555e493f5c32798e68))

## [1.982.1](https://github.com/HankHuang0516/EClaw/compare/v1.982.0...v1.982.1) (2026-04-15)


### Bug Fixes

* **ios:** pin bottom tab bar height so tabs are tappable ([fe03255](https://github.com/HankHuang0516/EClaw/commit/fe03255d3dee1f50c0c93ad6b985b7f734efa6dc))

# [1.982.0](https://github.com/HankHuang0516/EClaw/compare/v1.981.14...v1.982.0) (2026-04-15)


### Features

* **portal-seo:** add OG/JSON-LD metadata for SEO discoverability ([#1782](https://github.com/HankHuang0516/EClaw/issues/1782)) ([7eaa130](https://github.com/HankHuang0516/EClaw/commit/7eaa1300f110d835d3de0a9914b29888fa4aeddc))

## [1.981.14](https://github.com/HankHuang0516/EClaw/compare/v1.981.13...v1.981.14) (2026-04-15)


### Bug Fixes

* **ios:** move Home FAB above tab bar so Cards+Settings tabs are tappable ([7e90a84](https://github.com/HankHuang0516/EClaw/commit/7e90a8498a8923a928b7b9d1f4ffd54118dee583))

## [1.981.13](https://github.com/HankHuang0516/EClaw/compare/v1.981.12...v1.981.13) (2026-04-15)


### Bug Fixes

* **ios:** apply entity name fallback across all remaining screens ([e05a160](https://github.com/HankHuang0516/EClaw/commit/e05a16027452daa10afe0ce8b56f4a2abf54e476)), closes [#0](https://github.com/HankHuang0516/EClaw/issues/0)

## [1.981.12](https://github.com/HankHuang0516/EClaw/compare/v1.981.11...v1.981.12) (2026-04-15)


### Bug Fixes

* **ios:** empty state CTA + pulse animation + hide broadcast FAB ([#1768](https://github.com/HankHuang0516/EClaw/issues/1768)) ([8c31b74](https://github.com/HankHuang0516/EClaw/commit/8c31b74e730fec25a3dc1af7c5458cdbec734312))
* **ios+portal:** forward authToken to WebView and accept via URL ([da4708a](https://github.com/HankHuang0516/EClaw/commit/da4708acf79cb6a48f0c276e5c893b42bc21ef66)), closes [#1765](https://github.com/HankHuang0516/EClaw/issues/1765)

## [1.981.11](https://github.com/HankHuang0516/EClaw/compare/v1.981.10...v1.981.11) (2026-04-15)


### Bug Fixes

* **portal:** read deviceId/deviceSecret from URL query before localStorage ([0365c2a](https://github.com/HankHuang0516/EClaw/commit/0365c2aa117e001bd2d6d334279376dc0fa23352)), closes [#1765](https://github.com/HankHuang0516/EClaw/issues/1765)
* **ios:** replace 🦞 emoji logo with actual app icon image ([#1767](https://github.com/HankHuang0516/EClaw/issues/1767)) ([39b562e](https://github.com/HankHuang0516/EClaw/commit/39b562e2436a63c73d38b82ef64a8842c458e75d))

## [1.981.10](https://github.com/HankHuang0516/EClaw/compare/v1.981.9...v1.981.10) (2026-04-15)


### Bug Fixes

* **ios/feedback:** use dedicated type_label key for feedback type heading ([a88a05a](https://github.com/HankHuang0516/EClaw/commit/a88a05af7934f582c11ec09815b97e56d0fcbd8f)), closes [#1777](https://github.com/HankHuang0516/EClaw/issues/1777)
* **ios/entity-manager:** wrap hardcoded English strings with i18n ([b07a6bd](https://github.com/HankHuang0516/EClaw/commit/b07a6bdd0ba268a1c88a0517f3709e1113919d90)), closes [#1776](https://github.com/HankHuang0516/EClaw/issues/1776)

## [1.981.9](https://github.com/HankHuang0516/EClaw/compare/v1.981.8...v1.981.9) (2026-04-15)


### Bug Fixes

* **ios/card-holder:** check response.data.success before mutating local state ([b4b31b1](https://github.com/HankHuang0516/EClaw/commit/b4b31b122295d76bcdbf31126b7ea0dcfe476f7d)), closes [#1778](https://github.com/HankHuang0516/EClaw/issues/1778)
* **ios/bind-email:** use router.dismiss() with safe fallback after bind ([8b584b8](https://github.com/HankHuang0516/EClaw/commit/8b584b8d6bd8ac0d70a827b612160c2cebad2d9a)), closes [#1780](https://github.com/HankHuang0516/EClaw/issues/1780)

## [1.981.8](https://github.com/HankHuang0516/EClaw/compare/v1.981.7...v1.981.8) (2026-04-15)


### Bug Fixes

* **portal:** add iOS WebView device-login fallback in checkAuth ([ad7000c](https://github.com/HankHuang0516/EClaw/commit/ad7000ca473308004a3e5067ab556c237d725757)), closes [#1765](https://github.com/HankHuang0516/EClaw/issues/1765)

## [1.981.7](https://github.com/HankHuang0516/EClaw/compare/v1.981.6...v1.981.7) (2026-04-15)


### Bug Fixes

* **ios:** fallback entity display name when backend returns null ([977408a](https://github.com/HankHuang0516/EClaw/commit/977408ab953864d57dfc3ada1f95086c6a4cc287)), closes [#0](https://github.com/HankHuang0516/EClaw/issues/0)
* **i18n:** index.html input placeholders use data-i18n-placeholder ([#1763](https://github.com/HankHuang0516/EClaw/issues/1763)) ([ebb5e3a](https://github.com/HankHuang0516/EClaw/commit/ebb5e3ac349c6d22725873fa161e2b27914c1476))

## [1.981.6](https://github.com/HankHuang0516/EClaw/compare/v1.981.5...v1.981.6) (2026-04-15)


### Bug Fixes

* **i18n:** add 537 missing Arabic (ar) keys — 0 missing now ([#1759](https://github.com/HankHuang0516/EClaw/issues/1759)) ([f9d9448](https://github.com/HankHuang0516/EClaw/commit/f9d94481677034e24fd5d58680cff3669b319372))

## [1.981.5](https://github.com/HankHuang0516/EClaw/compare/v1.981.4...v1.981.5) (2026-04-15)


### Bug Fixes

* **ios:** stop leaking deviceSecret into AI chat message body ([1c1a7fb](https://github.com/HankHuang0516/EClaw/commit/1c1a7fb5fb3e722dd6e30c62d9ec4bd42b4ca360)), closes [#1774](https://github.com/HankHuang0516/EClaw/issues/1774)

## [1.981.4](https://github.com/HankHuang0516/EClaw/compare/v1.981.3...v1.981.4) (2026-04-15)


### Bug Fixes

* **ios:** correct Settings routing for Files and Privacy Policy ([4d83542](https://github.com/HankHuang0516/EClaw/commit/4d83542b06fea90e205277b22dddb0df382b32db)), closes [#1771](https://github.com/HankHuang0516/EClaw/issues/1771)

## [1.981.3](https://github.com/HankHuang0516/EClaw/compare/v1.981.2...v1.981.3) (2026-04-15)


### Bug Fixes

* **auth:** accept Authorization: Bearer header in cookie-based middleware ([462d134](https://github.com/HankHuang0516/EClaw/commit/462d1343fd1630fae01666616b56f80cbcd53771))

## [1.981.2](https://github.com/HankHuang0516/EClaw/compare/v1.981.1...v1.981.2) (2026-04-15)


### Bug Fixes

* **i18n:** add 367 missing keys to ja/ko/th/vi/id — 0 missing now ([#1762](https://github.com/HankHuang0516/EClaw/issues/1762)) ([2ec6997](https://github.com/HankHuang0516/EClaw/commit/2ec69979c43a488a194208b4e47aad96dd044cdf))
* **auth+ios:** return deviceSecret on login + harden WebView URL guard ([0816189](https://github.com/HankHuang0516/EClaw/commit/081618922197e550da585afef44da1ffc47b40af)), closes [#490](https://github.com/HankHuang0516/EClaw/issues/490)
* **i18n:** wallet.html + my-rentals.html hardcoded strings + iOS wallet/auth ([#1757](https://github.com/HankHuang0516/EClaw/issues/1757) [#1760](https://github.com/HankHuang0516/EClaw/issues/1760)) ([b120f1e](https://github.com/HankHuang0516/EClaw/commit/b120f1e132a39cc31295dccc33a25fdb1f605f2b))

## [1.981.1](https://github.com/HankHuang0516/EClaw/compare/v1.981.0...v1.981.1) (2026-04-15)


### Bug Fixes

* **i18n:** clean 5.98MB → 3.88MB — remove 45K orphan + 427 leaked keys ([#1758](https://github.com/HankHuang0516/EClaw/issues/1758)) ([1fb619c](https://github.com/HankHuang0516/EClaw/commit/1fb619c9aa338fbcba5a86b300e73d1ebcaf6448))
* **auth:** return authToken in response body for mobile clients ([06488ee](https://github.com/HankHuang0516/EClaw/commit/06488ee55f1c9bc81621a395219034fa388a6877))

# [1.981.0](https://github.com/HankHuang0516/EClaw/compare/v1.980.4...v1.981.0) (2026-04-15)


### Features

* **arena:** self-updating question pool + answer leakage fix + decoy strategy ([#1764](https://github.com/HankHuang0516/EClaw/issues/1764)) ([068fc5c](https://github.com/HankHuang0516/EClaw/commit/068fc5cd612de10cb508d65b8626bf9f92a974a5))

## [1.980.4](https://github.com/HankHuang0516/EClaw/compare/v1.980.3...v1.980.4) (2026-04-15)


### Bug Fixes

* **eslint:** 0 errors 0 warnings — CI should now pass ([870aee3](https://github.com/HankHuang0516/EClaw/commit/870aee30e52c8395666df8c953f2e257dce08d23))

## [1.980.3](https://github.com/HankHuang0516/EClaw/compare/v1.980.2...v1.980.3) (2026-04-15)


### Bug Fixes

* **ios:** remove deprecated expo-av (SDK 55 incompatible) ([0ea3e45](https://github.com/HankHuang0516/EClaw/commit/0ea3e45cd95532a557e5ca2c2754a03fba85fb42))

## [1.980.2](https://github.com/HankHuang0516/EClaw/compare/v1.980.1...v1.980.2) (2026-04-15)


### Bug Fixes

* **ios:** defer IAP integration to next build — restore wallet WebView ([78d02eb](https://github.com/HankHuang0516/EClaw/commit/78d02eb34d9231bdf2a0f45d3fbc5a034de3b32f))

## [1.980.1](https://github.com/HankHuang0516/EClaw/compare/v1.980.0...v1.980.1) (2026-04-15)


### Bug Fixes

* inject intent API hints for channel-bound bots in client/speak ([0637608](https://github.com/HankHuang0516/EClaw/commit/0637608d090da3c65fe56a80e0647830871ba60b)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2)

# [1.980.0](https://github.com/HankHuang0516/EClaw/compare/v1.979.0...v1.980.0) (2026-04-15)


### Features

* /portal/publisher.html cross-platform publisher UI ([#1756](https://github.com/HankHuang0516/EClaw/issues/1756)) ([2d7ce2b](https://github.com/HankHuang0516/EClaw/commit/2d7ce2b1be4c5da8a06f00cae2883ad83665f800)), closes [#3](https://github.com/HankHuang0516/EClaw/issues/3)

# [1.979.0](https://github.com/HankHuang0516/EClaw/compare/v1.978.3...v1.979.0) (2026-04-15)


### Features

* GET /api/growth/daily aggregate metrics endpoint ([e747afe](https://github.com/HankHuang0516/EClaw/commit/e747afe583e32cfbd0884d0dd379c934b23b45a5))

## [1.978.3](https://github.com/HankHuang0516/EClaw/compare/v1.978.2...v1.978.3) (2026-04-14)


### Bug Fixes

* enforce X 280 weighted-length on /x/tweet ([87884b1](https://github.com/HankHuang0516/EClaw/commit/87884b1de9d2d8dc52360928bb3e831fbc451960))

## [1.978.2](https://github.com/HankHuang0516/EClaw/compare/v1.978.1...v1.978.2) (2026-04-14)


### Bug Fixes

* **i18n:** remove zh-rCN string overrides of Facebook/Google credentials ([a683284](https://github.com/HankHuang0516/EClaw/commit/a683284e4a0e10f1ef0e65e0dc763c7b70f69467))

## [1.978.1](https://github.com/HankHuang0516/EClaw/compare/v1.978.0...v1.978.1) (2026-04-14)


### Bug Fixes

* **portal:** card-holder chat history field name mismatch ([0b700fd](https://github.com/HankHuang0516/EClaw/commit/0b700fd8921001ba59917af1c84ea983b95d3876))

# [1.978.0](https://github.com/HankHuang0516/EClaw/compare/v1.977.2...v1.978.0) (2026-04-14)


### Features

* **publisher:** add media upload for X + Mastodon; update Arena OG meta ([4898c76](https://github.com/HankHuang0516/EClaw/commit/4898c7679a03a22bac2c4b56410f90ac81dc2570))

## [1.977.2](https://github.com/HankHuang0516/EClaw/compare/v1.977.1...v1.977.2) (2026-04-14)


### Bug Fixes

* **android:** restore i18n keys lost in commit 1fd413c8 merge resolution ([798e306](https://github.com/HankHuang0516/EClaw/commit/798e306ca46174b5069fcb350732507aeed6d13f))

## [1.977.1](https://github.com/HankHuang0516/EClaw/compare/v1.977.0...v1.977.1) (2026-04-14)


### Bug Fixes

* **ios:** add .npmrc with legacy-peer-deps to unblock EAS build ([b52a971](https://github.com/HankHuang0516/EClaw/commit/b52a97153ee224bf48938bec38520b204492969e))

# [1.977.0](https://github.com/HankHuang0516/EClaw/compare/v1.976.1...v1.977.0) (2026-04-14)


### Features

* **iap:** Apple In-App Purchase end-to-end (backend + iOS) ([e3b5222](https://github.com/HankHuang0516/EClaw/commit/e3b5222514a27e833c3253b35808bf6af9143037))

## [1.976.1](https://github.com/HankHuang0516/EClaw/compare/v1.976.0...v1.976.1) (2026-04-14)


### Bug Fixes

* **android:** remaining hardcoded English strings in Card Holder + Feedback ([c433543](https://github.com/HankHuang0516/EClaw/commit/c433543f022340fc2dbc90430b3d77da606443bb))

# [1.976.0](https://github.com/HankHuang0516/EClaw/compare/v1.975.4...v1.976.0) (2026-04-14)


### Features

* add files intent API hint with attachments guidance ([a6c5e76](https://github.com/HankHuang0516/EClaw/commit/a6c5e76dcb83572d5e39a8acfc1dee8b446219d0))

## [1.975.4](https://github.com/HankHuang0516/EClaw/compare/v1.975.3...v1.975.4) (2026-04-14)


### Bug Fixes

* URI-encode R2 metadata originalName for non-ASCII filenames ([444e460](https://github.com/HankHuang0516/EClaw/commit/444e460b2b987b5ddedf65e165701492867af9ce))

## [1.975.3](https://github.com/HankHuang0516/EClaw/compare/v1.975.2...v1.975.3) (2026-04-14)


### Bug Fixes

* **android:** entity slot chip showed full Flickr URL instead of emoji ([486dca0](https://github.com/HankHuang0516/EClaw/commit/486dca0668654146468c0d4bb990194f35241cba))
* orgChartForward only on bot response, not user message ([65752f3](https://github.com/HankHuang0516/EClaw/commit/65752f380ad4b3989a0526dddcba2b8b6f2df73c))

## [1.975.2](https://github.com/HankHuang0516/EClaw/compare/v1.975.1...v1.975.2) (2026-04-14)


### Bug Fixes

* **e2e-iter3:** wire dead Settings buttons + Card Holder i18n ([#1750](https://github.com/HankHuang0516/EClaw/issues/1750)) ([ce5d591](https://github.com/HankHuang0516/EClaw/commit/ce5d59193545c664199543638bc5d53617c9e795)), closes [#1691](https://github.com/HankHuang0516/EClaw/issues/1691)

## [1.975.1](https://github.com/HankHuang0516/EClaw/compare/v1.975.0...v1.975.1) (2026-04-14)


### Bug Fixes

* **android+web:** E2E iteration 1 bug fixes ([#1749](https://github.com/HankHuang0516/EClaw/issues/1749)) ([d05b86b](https://github.com/HankHuang0516/EClaw/commit/d05b86b1937c10fc488b3f8e1f07f89fd25ebdac))

# [1.975.0](https://github.com/HankHuang0516/EClaw/compare/v1.974.2...v1.975.0) (2026-04-14)


### Features

* **ios:** full account system — Apple + Email + Device auth (Phase 2-6) ([71e8858](https://github.com/HankHuang0516/EClaw/commit/71e88580f0290f80041815972dfa1cfaa8abeda8))

## [1.974.2](https://github.com/HankHuang0516/EClaw/compare/v1.974.1...v1.974.2) (2026-04-14)


### Bug Fixes

* **android:** My Cards empty due to Gson capabilities deserialize mismatch ([744f475](https://github.com/HankHuang0516/EClaw/commit/744f475421f357bdd137b8213a79d290a5ab5c21))

## [1.974.1](https://github.com/HankHuang0516/EClaw/compare/v1.974.0...v1.974.1) (2026-04-14)


### Bug Fixes

* v1.0.64 build — missing R import and string resources ([a893676](https://github.com/HankHuang0516/EClaw/commit/a893676ad8af4ec51488acf07b65ea0b925af585))

# [1.974.0](https://github.com/HankHuang0516/EClaw/compare/v1.973.1...v1.974.0) (2026-04-14)


### Features

* **auth:** add POST /api/auth/oauth/apple for Sign in with Apple ([ae96876](https://github.com/HankHuang0516/EClaw/commit/ae96876f334040cade357118f318c700558f330b))

## [1.973.1](https://github.com/HankHuang0516/EClaw/compare/v1.973.0...v1.973.1) (2026-04-14)


### Bug Fixes

* release v1.0.64 build blockers ([c6bd12f](https://github.com/HankHuang0516/EClaw/commit/c6bd12f570c64d282e70bfc4afc29da200f1f21c)), closes [#24380240784](https://github.com/HankHuang0516/EClaw/issues/24380240784)

# [1.973.0](https://github.com/HankHuang0516/EClaw/compare/v1.972.0...v1.973.0) (2026-04-14)


### Features

* **seo:** Add OG meta tags to community.html and invite.html ([4aae226](https://github.com/HankHuang0516/EClaw/commit/4aae22668c3bdc87a09a0bd6e5d9257a3d31617c))

# [1.972.0](https://github.com/HankHuang0516/EClaw/compare/v1.971.4...v1.972.0) (2026-04-14)


### Features

* **viral:** Add 'Create your own Bot' CTA to Proxy Window ([5cb9803](https://github.com/HankHuang0516/EClaw/commit/5cb98036814520330ef8fdd7b09f69db15aacc81))
* **android:** refactor 12 hardcoded layout strings to @string/ resources ([d3052bd](https://github.com/HankHuang0516/EClaw/commit/d3052bd481551a7575c7581e7e45c45877fd62d7))

## [1.971.4](https://github.com/HankHuang0516/EClaw/compare/v1.971.3...v1.971.4) (2026-04-14)


### Bug Fixes

* **android:** remove platform config keys from all locale files ([d98098e](https://github.com/HankHuang0516/EClaw/commit/d98098e62a9fa884fd230ff8690f3db34e4037c2))

## [1.971.3](https://github.com/HankHuang0516/EClaw/compare/v1.971.2...v1.971.3) (2026-04-14)


### Bug Fixes

* **android:** add missing translations for 4 locales ([5c1fe79](https://github.com/HankHuang0516/EClaw/commit/5c1fe795cdef0a2533f52a61188ae53be12ccd39))
* **android:** externalize hardcoded Save/Cancel/Delete strings in MainActivity ([e518345](https://github.com/HankHuang0516/EClaw/commit/e51834581000a838b7f91ec90ef08d3f51a435b6))
* **android:** replace 4 remaining hardcoded dialog button strings ([bd7e143](https://github.com/HankHuang0516/EClaw/commit/bd7e1439a4db067370573e22f9eeeb731729504f))

## [1.971.2](https://github.com/HankHuang0516/EClaw/compare/v1.971.1...v1.971.2) (2026-04-14)


### Bug Fixes

* 5 edge case code issues (V5/V3/V6/C5/W4) ([00038f7](https://github.com/HankHuang0516/EClaw/commit/00038f78367f4e8db6cd903076580621db7a9b84))

## [1.971.1](https://github.com/HankHuang0516/EClaw/compare/v1.971.0...v1.971.1) (2026-04-14)


### Bug Fixes

* move restore-entity-public-code out of /api/debug (blocked in prod) ([9401b3a](https://github.com/HankHuang0516/EClaw/commit/9401b3a92621f2d8221cf42c8a7760a8c146ac4d))

# [1.971.0](https://github.com/HankHuang0516/EClaw/compare/v1.970.4...v1.971.0) (2026-04-14)


### Features

* add debug endpoint to restore lost publicCode ([d02fc98](https://github.com/HankHuang0516/EClaw/commit/d02fc98261c3d85cae007f83182b829253cc24ba)), closes [#1748](https://github.com/HankHuang0516/EClaw/issues/1748)

## [1.970.4](https://github.com/HankHuang0516/EClaw/compare/v1.970.3...v1.970.4) (2026-04-14)


### Bug Fixes

* **rental:** prefix deposit disposition copy with 押金/Deposit keyword ([6683563](https://github.com/HankHuang0516/EClaw/commit/6683563288f51849149cd5110edeadd00536242e))

## [1.970.3](https://github.com/HankHuang0516/EClaw/compare/v1.970.2...v1.970.3) (2026-04-14)


### Bug Fixes

* **rental:** clarify deposit disposition copy per perspective ([9618477](https://github.com/HankHuang0516/EClaw/commit/961847721144f0ebed0789cb75255db8e29d5815))

## [1.970.2](https://github.com/HankHuang0516/EClaw/compare/v1.970.1...v1.970.2) (2026-04-14)


### Bug Fixes

* prevent owner entity deletion on cron-expired rentals ([#1748](https://github.com/HankHuang0516/EClaw/issues/1748)) ([4ce14be](https://github.com/HankHuang0516/EClaw/commit/4ce14bea2a7a4c17b38b29365f09fc8f1879cde7)), closes [#1741](https://github.com/HankHuang0516/EClaw/issues/1741)

## [1.970.1](https://github.com/HankHuang0516/EClaw/compare/v1.970.0...v1.970.1) (2026-04-13)


### Bug Fixes

* **i18n:** restore TRANSLATIONS declaration and fix 130 truncated strings ([945ed2e](https://github.com/HankHuang0516/EClaw/commit/945ed2ea41f236a696cae83878ef542279ba9318))

# [1.970.0](https://github.com/HankHuang0516/EClaw/compare/v1.969.2...v1.970.0) (2026-04-13)


### Features

* **arena:** add radar chart, social sharing, agent cards, SEO for public launch ([4b32fa8](https://github.com/HankHuang0516/EClaw/commit/4b32fa8bb9efbd049ad91f78e85f14fd85ccb425))

## [1.969.2](https://github.com/HankHuang0516/EClaw/compare/v1.969.1...v1.969.2) (2026-04-13)


### Bug Fixes

* **android:** add locale translations for 17 new strings ([7317cd8](https://github.com/HankHuang0516/EClaw/commit/7317cd84578099dd568bbf2c29e90cc9ab61af4a))
* **i18n:** deduplicate translation keys across all languages ([168ca8d](https://github.com/HankHuang0516/EClaw/commit/168ca8d6ff08ea6236187628a0e4e431b5abcf13))
* **android:** externalize hardcoded Toast and dialog strings ([9e4b92c](https://github.com/HankHuang0516/EClaw/commit/9e4b92c05f9fb44279af5e76e100d589bfa7b7bd))
* **i18n:** fill missing translation keys with EN fallback ([5b03b68](https://github.com/HankHuang0516/EClaw/commit/5b03b685bde8c3eb7f7735a61f7681789534192e))
* move 2 hardcoded strings to strings.xml + i18n ([408e667](https://github.com/HankHuang0516/EClaw/commit/408e66743a4a6ee8014532cb5307935843e7aeb4))
* **i18n:** remove 11 TODO markers from org chart translations ([ce57289](https://github.com/HankHuang0516/EClaw/commit/ce572899832b60d93c52f680ec7d7a5cc71f8a86))

## [1.969.1](https://github.com/HankHuang0516/EClaw/compare/v1.969.0...v1.969.1) (2026-04-13)


### Bug Fixes

* skip owner org-chart/kanban for leased_out + chat_date_yesterday i18n ([#1745](https://github.com/HankHuang0516/EClaw/issues/1745)) ([1522151](https://github.com/HankHuang0516/EClaw/commit/152215109a2e54af772fa81482fedc9217ed4610))

# [1.969.0](https://github.com/HankHuang0516/EClaw/compare/v1.968.12...v1.969.0) (2026-04-13)


### Bug Fixes

* merge duplicate reconcileRentalEntities + fix test mocks ([9aada10](https://github.com/HankHuang0516/EClaw/commit/9aada105ab32642776fed0692f9bd3bd66cc035c))


### Features

* add /auto_approve slash command to chat autocomplete ([462f86e](https://github.com/HankHuang0516/EClaw/commit/462f86ee6944e2b0e4d68d1cb17de7cab8f5f049))

## [1.968.12](https://github.com/HankHuang0516/EClaw/compare/v1.968.11...v1.968.12) (2026-04-13)


### Bug Fixes

* use devices param instead of _interviewDeps in insertRentalEntity ([#1744](https://github.com/HankHuang0516/EClaw/issues/1744)) ([0820d46](https://github.com/HankHuang0516/EClaw/commit/0820d46abdf2049968737f0258d3779f3edf0924))

## [1.968.11](https://github.com/HankHuang0516/EClaw/compare/v1.968.10...v1.968.11) (2026-04-13)


### Bug Fixes

* auto-fill rental entity avatar from owner entity ([#1743](https://github.com/HankHuang0516/EClaw/issues/1743)) ([333acb6](https://github.com/HankHuang0516/EClaw/commit/333acb69d555f0c53112194de3db225e11a689a4))

## [1.968.10](https://github.com/HankHuang0516/EClaw/compare/v1.968.9...v1.968.10) (2026-04-13)


### Bug Fixes

* save orgChartForward message to chat history for b2b rendering ([b55b609](https://github.com/HankHuang0516/EClaw/commit/b55b609bcab9eda0c27d687bcd4476c1ce4588cc))

## [1.968.9](https://github.com/HankHuang0516/EClaw/compare/v1.968.8...v1.968.9) (2026-04-13)


### Bug Fixes

* add orgChartForward to channel-api /message handler ([ca62fbb](https://github.com/HankHuang0516/EClaw/commit/ca62fbb130525ca06221333793931394c964fb23))

## [1.968.8](https://github.com/HankHuang0516/EClaw/compare/v1.968.7...v1.968.8) (2026-04-13)


### Bug Fixes

* deduplicate orgChartForward in broadcast path ([44968c8](https://github.com/HankHuang0516/EClaw/commit/44968c89d939a0af2af080e22b18c9d343eb798b))

## [1.968.7](https://github.com/HankHuang0516/EClaw/compare/v1.968.6...v1.968.7) (2026-04-13)


### Bug Fixes

* clear stale leased_out on reconcile + strip message from owner socket emit ([#1742](https://github.com/HankHuang0516/EClaw/issues/1742)) ([94b05f9](https://github.com/HankHuang0516/EClaw/commit/94b05f97414e656ac6fba6e075fa0c7f8e5e26e5))

## [1.968.6](https://github.com/HankHuang0516/EClaw/compare/v1.968.5...v1.968.6) (2026-04-13)


### Bug Fixes

* persist rental_status/rental_contract_id to DB and reconcile on restart ([#1741](https://github.com/HankHuang0516/EClaw/issues/1741)) ([c87e03b](https://github.com/HankHuang0516/EClaw/commit/c87e03b235e7723776c40e773b457eb7c79252bb))

## [1.968.5](https://github.com/HankHuang0516/EClaw/compare/v1.968.4...v1.968.5) (2026-04-13)


### Bug Fixes

* isolate rental bot responses from owner's chat page ([#1740](https://github.com/HankHuang0516/EClaw/issues/1740)) ([cbeb667](https://github.com/HankHuang0516/EClaw/commit/cbeb6673ba580940d8c26078701cdd81debce2af))

## [1.968.4](https://github.com/HankHuang0516/EClaw/compare/v1.968.3...v1.968.4) (2026-04-13)


### Bug Fixes

* **BUG-R1:** rental proxy supports channel-bound owner entities ([f9e957d](https://github.com/HankHuang0516/EClaw/commit/f9e957da974d792aabd7eeb09a92cf9da6b043b6))

## [1.968.3](https://github.com/HankHuang0516/EClaw/compare/v1.968.2...v1.968.3) (2026-04-13)


### Bug Fixes

* use db._getPool() instead of db.pool in rental proxy queries ([6b57b78](https://github.com/HankHuang0516/EClaw/commit/6b57b788575fc8c0ebc66df8548e7c5fd3fa55df))

## [1.968.2](https://github.com/HankHuang0516/EClaw/compare/v1.968.1...v1.968.2) (2026-04-13)


### Bug Fixes

* **i18n:** add chat_date_today + chat_empty_hint to all 14 languages ([19ffd05](https://github.com/HankHuang0516/EClaw/commit/19ffd0568080adafce05bbe48d44dfc9af49afdf))
* **BUG-R1:** implement rental proxy webhook message forwarding ([39ad6de](https://github.com/HankHuang0516/EClaw/commit/39ad6de452bdf2137fae8ae5f613a1165cb6413e))

## [1.968.1](https://github.com/HankHuang0516/EClaw/compare/v1.968.0...v1.968.1) (2026-04-13)


### Bug Fixes

* orgChartForward now supports channel-bound entities ([558dd94](https://github.com/HankHuang0516/EClaw/commit/558dd94fd01c517b2c1b686631a4d48649f46765))

# [1.968.0](https://github.com/HankHuang0516/EClaw/compare/v1.967.2...v1.968.0) (2026-04-13)


### Features

* add debug/clear-cooldown endpoint for E2E testing ([cb91814](https://github.com/HankHuang0516/EClaw/commit/cb91814eb100516667ec6fc77903f47a29d836f4))

## [1.967.2](https://github.com/HankHuang0516/EClaw/compare/v1.967.1...v1.967.2) (2026-04-13)


### Bug Fixes

* add orgChartForward to client/speak and speakTo paths ([c2b1e0e](https://github.com/HankHuang0516/EClaw/commit/c2b1e0e492df7538e6c9842ae145ef4fa4d64cbf))

## [1.967.1](https://github.com/HankHuang0516/EClaw/compare/v1.967.0...v1.967.1) (2026-04-13)


### Bug Fixes

* admin reset-password also verifies email ([ec3a94d](https://github.com/HankHuang0516/EClaw/commit/ec3a94d97f01a6165332bc25c224b1988f295d23))

# [1.967.0](https://github.com/HankHuang0516/EClaw/compare/v1.966.2...v1.967.0) (2026-04-13)


### Features

* add admin/reset-password endpoint for E2E testing ([8cdbd38](https://github.com/HankHuang0516/EClaw/commit/8cdbd388eb3a4b556f1dbf8afb9c48e7619510ce))

## [1.966.2](https://github.com/HankHuang0516/EClaw/compare/v1.966.1...v1.966.2) (2026-04-13)


### Bug Fixes

* **BUG-M8:** self-rental detection for Device-login users ([9e97415](https://github.com/HankHuang0516/EClaw/commit/9e974158c0ba20c32c3b50049f5ced03a0cd132f))

## [1.966.1](https://github.com/HankHuang0516/EClaw/compare/v1.966.0...v1.966.1) (2026-04-13)


### Bug Fixes

* cleanup-ghosts endpoint uses JWT auth instead of deviceSecret ([ecac8b7](https://github.com/HankHuang0516/EClaw/commit/ecac8b7b7580d760b35a8958f3823f278ade09ff))

# [1.966.0](https://github.com/HankHuang0516/EClaw/compare/v1.965.11...v1.966.0) (2026-04-13)


### Features

* add debug/cleanup-ghosts endpoint for BUG-D3 ([4466c7d](https://github.com/HankHuang0516/EClaw/commit/4466c7d10576e05beea4188a823aa551a4b28154))

## [1.965.11](https://github.com/HankHuang0516/EClaw/compare/v1.965.10...v1.965.11) (2026-04-13)


### Bug Fixes

* wait for persistence before rental reconciliation ([066ca57](https://github.com/HankHuang0516/EClaw/commit/066ca57656ef0011c4458db88b35e9ab095ec29a))

## [1.965.10](https://github.com/HankHuang0516/EClaw/compare/v1.965.9...v1.965.10) (2026-04-13)


### Bug Fixes

* phase 2 reconciliation — match by listing title set, not device ID ([570d4c2](https://github.com/HankHuang0516/EClaw/commit/570d4c267320f275abcb3e323b5e9acbccdaefe5))

## [1.965.9](https://github.com/HankHuang0516/EClaw/compare/v1.965.8...v1.965.9) (2026-04-13)


### Bug Fixes

* phase 2 ghost entity reconciliation — match by contract + name ([d535e4a](https://github.com/HankHuang0516/EClaw/commit/d535e4aba2c6ff9cfe10ee8a6687b262603f9578))

## [1.965.8](https://github.com/HankHuang0516/EClaw/compare/v1.965.7...v1.965.8) (2026-04-13)


### Bug Fixes

* move rental reconciliation to run after persistence is ready (BUG-D3) ([3d23a55](https://github.com/HankHuang0516/EClaw/commit/3d23a5580759eb451f3731b27246ec14489ccec3))

## [1.965.7](https://github.com/HankHuang0516/EClaw/compare/v1.965.6...v1.965.7) (2026-04-13)


### Bug Fixes

* improve rental entity reconciliation to catch legacy ghost entities ([d3b79da](https://github.com/HankHuang0516/EClaw/commit/d3b79da16a34564ed7fc942ad1a0de0dddfb4176))

## [1.965.6](https://github.com/HankHuang0516/EClaw/compare/v1.965.5...v1.965.6) (2026-04-13)


### Bug Fixes

* resolve 7 rental UIUX bugs (M1/M3/M8/D1/D2/D3/D4) ([#1739](https://github.com/HankHuang0516/EClaw/issues/1739)) ([a339afe](https://github.com/HankHuang0516/EClaw/commit/a339afed907edcf97bf5ed2a676a797975b4e38f))

## [1.965.5](https://github.com/HankHuang0516/EClaw/compare/v1.965.4...v1.965.5) (2026-04-13)


### Bug Fixes

* **rental:** dedup listings, fix contract status, clean up ended entities ([#1738](https://github.com/HankHuang0516/EClaw/issues/1738)) ([a0068a2](https://github.com/HankHuang0516/EClaw/commit/a0068a266c2914baff604b5a242ab18c27ea797c)), closes [#1736](https://github.com/HankHuang0516/EClaw/issues/1736)

## [1.965.4](https://github.com/HankHuang0516/EClaw/compare/v1.965.3...v1.965.4) (2026-04-13)


### Bug Fixes

* **portal:** rental modal shows 0 balance for authenticated owner ([#1737](https://github.com/HankHuang0516/EClaw/issues/1737)) ([f5adb95](https://github.com/HankHuang0516/EClaw/commit/f5adb9595000ca8bb54f3fe9cf39348c0a922f87)), closes [#1736](https://github.com/HankHuang0516/EClaw/issues/1736)

## [1.965.3](https://github.com/HankHuang0516/EClaw/compare/v1.965.2...v1.965.3) (2026-04-13)


### Bug Fixes

* **arena:** add debug logs + fix countdown timer using actual expiresAt ([5efdf58](https://github.com/HankHuang0516/EClaw/commit/5efdf58460fa16074668166f177a10f4fe0ca166))

## [1.965.2](https://github.com/HankHuang0516/EClaw/compare/v1.965.1...v1.965.2) (2026-04-13)


### Bug Fixes

* **org-chart:** redraw connectors after FLIP animation + animate all lines ([c2d8bcf](https://github.com/HankHuang0516/EClaw/commit/c2d8bcfc5877595bbf12eeda0410696f60dab69e))

## [1.965.1](https://github.com/HankHuang0516/EClaw/compare/v1.965.0...v1.965.1) (2026-04-12)


### Bug Fixes

* add rental_status and rental_contract_id to /api/entities and /api/status responses ([#1735](https://github.com/HankHuang0516/EClaw/issues/1735)) ([0ec04f0](https://github.com/HankHuang0516/EClaw/commit/0ec04f011c44031ff18e593c4265a37059763eb3))

# [1.965.0](https://github.com/HankHuang0516/EClaw/compare/v1.964.1...v1.965.0) (2026-04-12)


### Features

* **marketplace:** add capability filter chips and rate range slider ([#1734](https://github.com/HankHuang0516/EClaw/issues/1734)) ([bdff34c](https://github.com/HankHuang0516/EClaw/commit/bdff34c5a77c797a129631df11478f66d6838688))

## [1.964.1](https://github.com/HankHuang0516/EClaw/compare/v1.964.0...v1.964.1) (2026-04-12)


### Bug Fixes

* **i18n:** add missing mp_ marketplace translations for zh/ja/ko/fr/es/de ([#1733](https://github.com/HankHuang0516/EClaw/issues/1733)) ([cda54a6](https://github.com/HankHuang0516/EClaw/commit/cda54a69600b76ccb5711f2b92a9e4a2bfbda60c))

# [1.964.0](https://github.com/HankHuang0516/EClaw/compare/v1.963.0...v1.964.0) (2026-04-12)


### Features

* **rental-modal:** UIUX spec compliance for marketplace cards and rental detail modal ([#1732](https://github.com/HankHuang0516/EClaw/issues/1732)) ([a27a9d3](https://github.com/HankHuang0516/EClaw/commit/a27a9d382df43c64e5bf83848b4958ce73a042e8))

# [1.963.0](https://github.com/HankHuang0516/EClaw/compare/v1.962.5...v1.963.0) (2026-04-12)


### Features

* **my-rentals:** UIUX spec compliance for contract cards, status badges, modals ([#1731](https://github.com/HankHuang0516/EClaw/issues/1731)) ([7bbfb16](https://github.com/HankHuang0516/EClaw/commit/7bbfb167d0246ecf96edba3f1459ffcf29a4e5ae))

## [1.962.5](https://github.com/HankHuang0516/EClaw/compare/v1.962.4...v1.962.5) (2026-04-12)


### Bug Fixes

* chat.html single-page layout + remove vault whitelist entirely ([cde56ab](https://github.com/HankHuang0516/EClaw/commit/cde56ab456abbfdca33bd300764f170524282ce0))

## [1.962.4](https://github.com/HankHuang0516/EClaw/compare/v1.962.3...v1.962.4) (2026-04-12)


### Bug Fixes

* chat.html shared entity filtering + env-vars vault whitelist correction ([89af49f](https://github.com/HankHuang0516/EClaw/commit/89af49f0bd387b190556ad101c2a2e10d7aa62ba)), closes [DD#15](https://github.com/DD/issues/15)

## [1.962.3](https://github.com/HankHuang0516/EClaw/compare/v1.962.2...v1.962.3) (2026-04-12)


### Bug Fixes

* move 2 hardcoded strings to strings.xml + i18n ([#1730](https://github.com/HankHuang0516/EClaw/issues/1730)) ([529b694](https://github.com/HankHuang0516/EClaw/commit/529b694e940b80d876a6562fb7284c162f8f8a1f)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

## [1.962.2](https://github.com/HankHuang0516/EClaw/compare/v1.962.1...v1.962.2) (2026-04-12)


### Bug Fixes

* **MainActivity:** move 9 hardcoded Toast strings to strings.xml + i18n ([#1727](https://github.com/HankHuang0516/EClaw/issues/1727)) ([f12b17b](https://github.com/HankHuang0516/EClaw/commit/f12b17bc03c1176a2857a58939cf29c975353676)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

## [1.962.1](https://github.com/HankHuang0516/EClaw/compare/v1.962.0...v1.962.1) (2026-04-12)


### Bug Fixes

* **AiChat:** move 5 hardcoded strings to strings.xml + i18n ([#1725](https://github.com/HankHuang0516/EClaw/issues/1725)) ([980711e](https://github.com/HankHuang0516/EClaw/commit/980711ec8e7de063042fa2d31fe21ea91483c26a)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.962.0](https://github.com/HankHuang0516/EClaw/compare/v1.961.11...v1.962.0) (2026-04-12)


### Features

* **dashboard:** add organization hierarchy chart for agent collaboration ([#1723](https://github.com/HankHuang0516/EClaw/issues/1723)) ([5259b50](https://github.com/HankHuang0516/EClaw/commit/5259b50744ebceb19a408ba967dcb0451279660a))

## [1.961.11](https://github.com/HankHuang0516/EClaw/compare/v1.961.10...v1.961.11) (2026-04-12)


### Bug Fixes

* **rental-ui:** use correct deviceId field from /api/auth/me response ([#1719](https://github.com/HankHuang0516/EClaw/issues/1719)) ([5e74efd](https://github.com/HankHuang0516/EClaw/commit/5e74efdb26c2069fac5fe2fe843a9740d94ac065)), closes [#1713](https://github.com/HankHuang0516/EClaw/issues/1713)

## [1.961.10](https://github.com/HankHuang0516/EClaw/compare/v1.961.9...v1.961.10) (2026-04-12)


### Bug Fixes

* **rental:** persist rental entity to DB after in-memory insert ([#1718](https://github.com/HankHuang0516/EClaw/issues/1718)) ([53ceb96](https://github.com/HankHuang0516/EClaw/commit/53ceb96f63e245766462c5c32751e55158732d2b)), closes [#1713](https://github.com/HankHuang0516/EClaw/issues/1713)

## [1.961.9](https://github.com/HankHuang0516/EClaw/compare/v1.961.8...v1.961.9) (2026-04-12)


### Bug Fixes

* rental entity visibility — ensure device exists before handover ([#1713](https://github.com/HankHuang0516/EClaw/issues/1713)) ([#1717](https://github.com/HankHuang0516/EClaw/issues/1717)) ([180b328](https://github.com/HankHuang0516/EClaw/commit/180b328946741d6be1b86b8d38cc4011d2f990f6))

## [1.961.8](https://github.com/HankHuang0516/EClaw/compare/v1.961.7...v1.961.8) (2026-04-12)


### Bug Fixes

* **rental-ui:** translate rental error codes with proper i18n.t fallback ([#1716](https://github.com/HankHuang0516/EClaw/issues/1716)) ([e08503f](https://github.com/HankHuang0516/EClaw/commit/e08503f53bc134aa52c842c50465d3f1aec6afc4)), closes [#1712](https://github.com/HankHuang0516/EClaw/issues/1712)

## [1.961.7](https://github.com/HankHuang0516/EClaw/compare/v1.961.6...v1.961.7) (2026-04-12)


### Bug Fixes

* translate rental error codes to user-friendly i18n messages ([#1709](https://github.com/HankHuang0516/EClaw/issues/1709)) ([#1715](https://github.com/HankHuang0516/EClaw/issues/1715)) ([363a3d6](https://github.com/HankHuang0516/EClaw/commit/363a3d6b4bf1c84bead3eab2ea0951c5d3468986))

## [1.961.6](https://github.com/HankHuang0516/EClaw/compare/v1.961.5...v1.961.6) (2026-04-12)


### Bug Fixes

* set entityId, botSecret, publicCode on rental entities for dashboard visibility ([#1714](https://github.com/HankHuang0516/EClaw/issues/1714)) ([5715285](https://github.com/HankHuang0516/EClaw/commit/5715285e3b1dc9d90f58d4ec370c5f087d5ffcef)), closes [#1712](https://github.com/HankHuang0516/EClaw/issues/1712)

## [1.961.5](https://github.com/HankHuang0516/EClaw/compare/v1.961.4...v1.961.5) (2026-04-12)


### Bug Fixes

* enforce 24h rental cooldown after contract ends ([#1707](https://github.com/HankHuang0516/EClaw/issues/1707)) ([#1710](https://github.com/HankHuang0516/EClaw/issues/1710)) ([d4d7057](https://github.com/HankHuang0516/EClaw/commit/d4d7057840c9088919597fae03db9bc3dd8863fb))
* wire rental entity handover into contract handlers ([#1708](https://github.com/HankHuang0516/EClaw/issues/1708)) ([307c851](https://github.com/HankHuang0516/EClaw/commit/307c85117538b71712e0c0c1c676beb7d9ead3fb)), closes [#1707](https://github.com/HankHuang0516/EClaw/issues/1707) [#1707](https://github.com/HankHuang0516/EClaw/issues/1707)

## [1.961.4](https://github.com/HankHuang0516/EClaw/compare/v1.961.3...v1.961.4) (2026-04-12)


### Bug Fixes

* seed virtual system users for platform/insurance wallets ([#1706](https://github.com/HankHuang0516/EClaw/issues/1706)) ([#1709](https://github.com/HankHuang0516/EClaw/issues/1709)) ([7a7fe8e](https://github.com/HankHuang0516/EClaw/commit/7a7fe8ec182b6a1ea719ebe94613398c2eea06b0))

## [1.961.3](https://github.com/HankHuang0516/EClaw/compare/v1.961.2...v1.961.3) (2026-04-12)


### Bug Fixes

* **rental:** use make_interval for contract ends_at calculation ([#1705](https://github.com/HankHuang0516/EClaw/issues/1705)) ([7615480](https://github.com/HankHuang0516/EClaw/commit/761548063f5c387651c8640f839deb45216a0bca))

## [1.961.2](https://github.com/HankHuang0516/EClaw/compare/v1.961.1...v1.961.2) (2026-04-12)


### Bug Fixes

* **interview:** move arena setAutoPushDeps after channelModule init to fix TDZ ([a266d77](https://github.com/HankHuang0516/EClaw/commit/a266d77935081e871ab76faccfceb14aff128600))

## [1.961.1](https://github.com/HankHuang0516/EClaw/compare/v1.961.0...v1.961.1) (2026-04-12)


### Bug Fixes

* **interview:** add diagnostic logging for arena auto-push + fix false positive log ([9f6dfe7](https://github.com/HankHuang0516/EClaw/commit/9f6dfe793e454141eabe50b60095cd332c1ce6bc))

# [1.961.0](https://github.com/HankHuang0516/EClaw/compare/v1.960.0...v1.961.0) (2026-04-12)


### Features

* **interview:** auto-push exam instructions to bot + hide copy UI in interview mode ([e3e3795](https://github.com/HankHuang0516/EClaw/commit/e3e3795327dbe3990686acb8634789fb6b116e16))
* **kanban:** entity bind validation, stale escalation, automation separation, entity status API ([#1700](https://github.com/HankHuang0516/EClaw/issues/1700) [#1701](https://github.com/HankHuang0516/EClaw/issues/1701) [#1702](https://github.com/HankHuang0516/EClaw/issues/1702) [#1703](https://github.com/HankHuang0516/EClaw/issues/1703)) ([#1704](https://github.com/HankHuang0516/EClaw/issues/1704)) ([72562ed](https://github.com/HankHuang0516/EClaw/commit/72562eda067a863dacd2bc7afce12668cfeae589)), closes [#15](https://github.com/HankHuang0516/EClaw/issues/15)

# [1.960.0](https://github.com/HankHuang0516/EClaw/compare/v1.959.5...v1.960.0) (2026-04-12)


### Features

* **interview:** unify interview UX with Arena 12-challenge system ([9a99e27](https://github.com/HankHuang0516/EClaw/commit/9a99e277c3eb3555ef269765a79dfe868839cd02))

## [1.959.5](https://github.com/HankHuang0516/EClaw/compare/v1.959.4...v1.959.5) (2026-04-12)


### Bug Fixes

* **rental:** add owner_device_id/owner_entity_id to getListing + listMyListings queries ([afd431f](https://github.com/HankHuang0516/EClaw/commit/afd431f02c9923ff2e982ae03a70b781796e17c2))

## [1.959.4](https://github.com/HankHuang0516/EClaw/compare/v1.959.3...v1.959.4) (2026-04-12)


### Bug Fixes

* **interview:** support channel-bound bots in interview system ([d97d292](https://github.com/HankHuang0516/EClaw/commit/d97d292a887b41012d9f7f79e4a0f7bb1d58885a))

## [1.959.3](https://github.com/HankHuang0516/EClaw/compare/v1.959.2...v1.959.3) (2026-04-12)


### Bug Fixes

* **rental:** correct column name virtual_device_id → device_id in debug endpoint ([e85ffa0](https://github.com/HankHuang0516/EClaw/commit/e85ffa05431f02b9952523632b87cbbe95bc9263))

## [1.959.2](https://github.com/HankHuang0516/EClaw/compare/v1.959.1...v1.959.2) (2026-04-12)


### Bug Fixes

* **rental:** debug endpoint bypass JWT auth, use deviceId/deviceSecret query params ([32e46b4](https://github.com/HankHuang0516/EClaw/commit/32e46b4f04514c9808f55a8d23b408030d5b9ae6))

## [1.959.1](https://github.com/HankHuang0516/EClaw/compare/v1.959.0...v1.959.1) (2026-04-12)


### Bug Fixes

* **rental:** add debug API for interview-start-fail diagnosis ([#1695](https://github.com/HankHuang0516/EClaw/issues/1695)) ([29c5527](https://github.com/HankHuang0516/EClaw/commit/29c55276ae54f6c17aaf2003e58bcf6f82fd7120))

# [1.959.0](https://github.com/HankHuang0516/EClaw/compare/v1.958.0...v1.959.0) (2026-04-12)


### Features

* **cross-platform:** iOS WebView parity + Android Wallet/Rentals/Invite pages ([#1693](https://github.com/HankHuang0516/EClaw/issues/1693)) ([2dc3469](https://github.com/HankHuang0516/EClaw/commit/2dc34694fa9b3673f729480e16b18caab627dc58))

# [1.958.0](https://github.com/HankHuang0516/EClaw/compare/v1.957.2...v1.958.0) (2026-04-12)


### Features

* **billing:** add e-coin top-up consumables + subscription plan tiers ([#1692](https://github.com/HankHuang0516/EClaw/issues/1692)) ([1fbbf2d](https://github.com/HankHuang0516/EClaw/commit/1fbbf2d467d1640d18fbf29778aef693e670d4e7))

## [1.957.2](https://github.com/HankHuang0516/EClaw/compare/v1.957.1...v1.957.2) (2026-04-12)


### Bug Fixes

* **android:** add remaining missing default string resources ([77cf4df](https://github.com/HankHuang0516/EClaw/commit/77cf4dfed63b0cd48971d6a25308fa9dcd7b755d))

## [1.957.1](https://github.com/HankHuang0516/EClaw/compare/v1.957.0...v1.957.1) (2026-04-12)


### Bug Fixes

* **android:** add missing default string resources for locale keys ([48a6a38](https://github.com/HankHuang0516/EClaw/commit/48a6a387197ff27d9455846dfc837b8bbf8b90cc))

# [1.957.0](https://github.com/HankHuang0516/EClaw/compare/v1.956.0...v1.957.0) (2026-04-12)


### Features

* **wallet:** admin e-coin display + 1M seed grant + subscription plans ([#1691](https://github.com/HankHuang0516/EClaw/issues/1691)) ([f9832d3](https://github.com/HankHuang0516/EClaw/commit/f9832d30d109a624adfe2dcca45b0259e1cbb9df))

# [1.956.0](https://github.com/HankHuang0516/EClaw/compare/v1.955.6...v1.956.0) (2026-04-12)


### Bug Fixes

* **i18n:** correct 16 format string mismatches in zh-CN ([6bb2af3](https://github.com/HankHuang0516/EClaw/commit/6bb2af3d0a7ab2381216663f7624f8cffb7cd10c))
* **i18n:** correct 16 format string mismatches in zh-TW ([cbc7138](https://github.com/HankHuang0516/EClaw/commit/cbc71382d4978fbb25dd0ec72d5a3f6d76e975d5))
* **i18n:** deduplicate zh-CN strings.xml and remove invalid keys ([8559afc](https://github.com/HankHuang0516/EClaw/commit/8559afc8a19cc64d21e81de312bab8399a6c6661))
* **i18n:** deduplicate zh-TW strings.xml and remove invalid keys ([1dfa224](https://github.com/HankHuang0516/EClaw/commit/1dfa224187870380240a4f661c3839e063965001))


### Features

* **i18n:** add zh-CN translation 165 keys ([f2a16e3](https://github.com/HankHuang0516/EClaw/commit/f2a16e337d8b6611e297172710a4e8aaf3a54996))
* **i18n:** add zh-TW translation 128 keys ([033f007](https://github.com/HankHuang0516/EClaw/commit/033f00795a3f518430238b3aabaa299d964be2d0))

## [1.955.6](https://github.com/HankHuang0516/EClaw/compare/v1.955.5...v1.955.6) (2026-04-12)


### Bug Fixes

* **i18n:** escape apostrophes and fix format strings in base strings.xml ([aa71994](https://github.com/HankHuang0516/EClaw/commit/aa7199405e4c407cac85635c83c9b93135ae409a))

## [1.955.5](https://github.com/HankHuang0516/EClaw/compare/v1.955.4...v1.955.5) (2026-04-12)


### Bug Fixes

* **i18n:** repair broken XML in ja/vi/th/ko/in strings.xml ([4d1bc15](https://github.com/HankHuang0516/EClaw/commit/4d1bc15d9e46a6ed2681335dfdb5f9a5bc5097a9))

## [1.955.4](https://github.com/HankHuang0516/EClaw/compare/v1.955.3...v1.955.4) (2026-04-11)


### Bug Fixes

* **portal:** dashboard SyntaxError + CSP whitelist for TapPay/Cloudflare ([#1690](https://github.com/HankHuang0516/EClaw/issues/1690)) ([b6f82db](https://github.com/HankHuang0516/EClaw/commit/b6f82db10314f6b9a128c9d0aa05a1bc948e7cb4))

## [1.955.3](https://github.com/HankHuang0516/EClaw/compare/v1.955.2...v1.955.3) (2026-04-11)


### Bug Fixes

* **rental:** rename owner_device_offline → owner_device_not_found ([1d0a217](https://github.com/HankHuang0516/EClaw/commit/1d0a21753ed669ba7f458bcc6c5f7b5d825aee3d))

## [1.955.2](https://github.com/HankHuang0516/EClaw/compare/v1.955.1...v1.955.2) (2026-04-11)


### Bug Fixes

* **i18n:** add missing commas in Spanish and Arabic sections causing CI parse failure ([#1689](https://github.com/HankHuang0516/EClaw/issues/1689)) ([4ccb2d2](https://github.com/HankHuang0516/EClaw/commit/4ccb2d29d233be6ac52312e641dcda86c3f78757))

## [1.955.1](https://github.com/HankHuang0516/EClaw/compare/v1.955.0...v1.955.1) (2026-04-11)


### Bug Fixes

* **agent-card:** remove dead inline code + add static audit test ([2196131](https://github.com/HankHuang0516/EClaw/commit/219613176235a5f85a68b4273c5bb0d5ad53fe34))

# [1.955.0](https://github.com/HankHuang0516/EClaw/compare/v1.954.4...v1.955.0) (2026-04-11)


### Features

* **android:** refactor 12 hardcoded layout strings to @string/ resources ([#1682](https://github.com/HankHuang0516/EClaw/issues/1682)) ([e755cbe](https://github.com/HankHuang0516/EClaw/commit/e755cbea48856442c08a820a0638426bdbf66dc2))

## [1.954.4](https://github.com/HankHuang0516/EClaw/compare/v1.954.3...v1.954.4) (2026-04-11)


### Bug Fixes

* **invite:** resolve route conflict causing 500 on /api/invite/my-code ([#1676](https://github.com/HankHuang0516/EClaw/issues/1676)) ([#1683](https://github.com/HankHuang0516/EClaw/issues/1683)) ([814ff25](https://github.com/HankHuang0516/EClaw/commit/814ff255945a46d4606fc68c68cdb9cda52f997d))

## [1.954.3](https://github.com/HankHuang0516/EClaw/compare/v1.954.2...v1.954.3) (2026-04-11)


### Bug Fixes

* **card-holder:** use currentUser.deviceId instead of undefined currentDeviceId ([22c82de](https://github.com/HankHuang0516/EClaw/commit/22c82de4619d601e24f18188eb2a6ebd1e02817c))

## [1.954.2](https://github.com/HankHuang0516/EClaw/compare/v1.954.1...v1.954.2) (2026-04-10)


### Bug Fixes

* **arena:** use i18n keys for test names and html lang attribute ([#1670](https://github.com/HankHuang0516/EClaw/issues/1670)) ([de8e394](https://github.com/HankHuang0516/EClaw/commit/de8e3949f834792b2c163c76fb5f8ca0b3a29858))

## [1.954.1](https://github.com/HankHuang0516/EClaw/compare/v1.954.0...v1.954.1) (2026-04-10)


### Bug Fixes

* **i18n:** fix SyntaxError in i18n.js causing all portal pages to crash ([#1667](https://github.com/HankHuang0516/EClaw/issues/1667)) ([60a816f](https://github.com/HankHuang0516/EClaw/commit/60a816fada9fcc7f2736506e8ec7665ce26fbd85))

# [1.954.0](https://github.com/HankHuang0516/EClaw/compare/v1.953.0...v1.954.0) (2026-04-10)


### Features

* **i18n:** add Korean translations for arena pages ([#1664](https://github.com/HankHuang0516/EClaw/issues/1664)) ([a4b98ab](https://github.com/HankHuang0516/EClaw/commit/a4b98ab7a803d03864c891588d36646738c54164))

# [1.953.0](https://github.com/HankHuang0516/EClaw/compare/v1.952.2...v1.953.0) (2026-04-10)


### Features

* **i18n:** add ja translations for arena/index.html and arena/exam.html keys ([#1662](https://github.com/HankHuang0516/EClaw/issues/1662)) ([b6b4fba](https://github.com/HankHuang0516/EClaw/commit/b6b4fba2cb7e27356dd4e0bd70b7bf7b3e8f2991))

## [1.952.2](https://github.com/HankHuang0516/EClaw/compare/v1.952.1...v1.952.2) (2026-04-10)


### Bug Fixes

* **chat:** native audio recording fallback for Android WebView NotReadableError ([7e10e66](https://github.com/HankHuang0516/EClaw/commit/7e10e6645e3fa6d171b50597c2e000c82241d10f))

## [1.952.1](https://github.com/HankHuang0516/EClaw/compare/v1.952.0...v1.952.1) (2026-04-10)


### Bug Fixes

* **arena:** add spacing to info.html benchmark docs + evaluation link at top ([cff17e8](https://github.com/HankHuang0516/EClaw/commit/cff17e8b9ee6c345dc5bf2e43fa18af06ca528a9))

# [1.952.0](https://github.com/HankHuang0516/EClaw/compare/v1.951.2...v1.952.0) (2026-04-10)


### Features

* **interview:** webhook-based interview with Arena results page + shared editor ([882a17a](https://github.com/HankHuang0516/EClaw/commit/882a17aca0c7c7e617b76cca7525141c3f258e57))

## [1.951.2](https://github.com/HankHuang0516/EClaw/compare/v1.951.1...v1.951.2) (2026-04-10)


### Bug Fixes

* **dashboard:** improve entity card layout consistency in WebView ([eeb2766](https://github.com/HankHuang0516/EClaw/commit/eeb2766564bfb5551c3b3e609c699d7b77cb94cc))

## [1.951.1](https://github.com/HankHuang0516/EClaw/compare/v1.951.0...v1.951.1) (2026-04-10)


### Bug Fixes

* **chat:** add debug logging for mic NotReadableError + chat message loading + getUserMedia retry ([bb0f373](https://github.com/HankHuang0516/EClaw/commit/bb0f373d4a520c375fed50dc6177cfd3a1a49723))

# [1.951.0](https://github.com/HankHuang0516/EClaw/compare/v1.950.1...v1.951.0) (2026-04-10)


### Features

* **arena:** comprehensive technical documentation in info.html ([9eb9de3](https://github.com/HankHuang0516/EClaw/commit/9eb9de35bd84790066ae1797dce156ce7b5dd4ae))

## [1.950.1](https://github.com/HankHuang0516/EClaw/compare/v1.950.0...v1.950.1) (2026-04-10)


### Bug Fixes

* **arena:** add no-cache headers for arena HTML pages ([7aa5551](https://github.com/HankHuang0516/EClaw/commit/7aa55515c2737d9c3502d517ce7a726117c47670))

# [1.950.0](https://github.com/HankHuang0516/EClaw/compare/v1.949.0...v1.950.0) (2026-04-10)


### Features

* **dashboard:** lock Agent Card capabilities to Arena results + add rental listing buttons ([2a78769](https://github.com/HankHuang0516/EClaw/commit/2a78769c45e20c6795d5dfd049bacc583ca02235))

# [1.949.0](https://github.com/HankHuang0516/EClaw/compare/v1.948.2...v1.949.0) (2026-04-10)


### Features

* **arena:** adaptive question selection — harder questions appear more ([e7bc469](https://github.com/HankHuang0516/EClaw/commit/e7bc469f4b689f3a55ef525df50c42d4b48d7008))

## [1.948.2](https://github.com/HankHuang0516/EClaw/compare/v1.948.1...v1.948.2) (2026-04-10)


### Bug Fixes

* **arena:** action type alias matching in scoring + commentary ([a086287](https://github.com/HankHuang0516/EClaw/commit/a086287d28f2bb779eab2a36d1032b15805677bb))

## [1.948.1](https://github.com/HankHuang0516/EClaw/compare/v1.948.0...v1.948.1) (2026-04-10)


### Bug Fixes

* **arena:** auto-scroll to leaderboard after name submission ([1321371](https://github.com/HankHuang0516/EClaw/commit/1321371454e2f55dcf41927f0f8242fb700fa921))

# [1.948.0](https://github.com/HankHuang0516/EClaw/compare/v1.947.0...v1.948.0) (2026-04-10)


### Features

* **arena:** professor-grade evaluation commentary per test ([e3877c3](https://github.com/HankHuang0516/EClaw/commit/e3877c38a68408e445fe4c1f72b1d38b3bd5c7ea))

# [1.947.0](https://github.com/HankHuang0516/EClaw/compare/v1.946.0...v1.947.0) (2026-04-10)


### Features

* **arena:** precise per-test commentary based on actual bot actions ([eb30b63](https://github.com/HankHuang0516/EClaw/commit/eb30b63ed06fcb63bc3a67a89b1f82694f8c4933))

# [1.946.0](https://github.com/HankHuang0516/EClaw/compare/v1.945.0...v1.946.0) (2026-04-10)


### Features

* **arena:** per-test score commentary in exam report ([b1f09e8](https://github.com/HankHuang0516/EClaw/commit/b1f09e8c4bb1763a9e1021174e96b9a64ff26157))

# [1.945.0](https://github.com/HankHuang0516/EClaw/compare/v1.944.3...v1.945.0) (2026-04-10)


### Features

* **arena:** detailed exam report with expandable per-test breakdown ([e5ad539](https://github.com/HankHuang0516/EClaw/commit/e5ad539331935ad6bda8efedbefb9d1b9bb8685e))

## [1.944.3](https://github.com/HankHuang0516/EClaw/compare/v1.944.2...v1.944.3) (2026-04-10)


### Bug Fixes

* **arena:** fix passed/failed count showing 0/12 on Socket.IO completion ([7f2e78d](https://github.com/HankHuang0516/EClaw/commit/7f2e78dd14a2f7a2914f6a57d90c1f306e1e82c3))
* **arena:** leaderboard time column + fix double modal/confetti ([67ae74b](https://github.com/HankHuang0516/EClaw/commit/67ae74bc92fcacb455a25b8188362eb7e860ca5c))

## [1.944.2](https://github.com/HankHuang0516/EClaw/compare/v1.944.1...v1.944.2) (2026-04-10)


### Bug Fixes

* **arena:** copy button feedback — green flash + border glow on success ([900ba50](https://github.com/HankHuang0516/EClaw/commit/900ba5012fd05d035ff82b15524f78fd31c45564))
* **arena:** move status text below copy instructions, above score bar ([916c658](https://github.com/HankHuang0516/EClaw/commit/916c658123cc8e4c52cd8112b09968bf0cd9a306))

## [1.944.1](https://github.com/HankHuang0516/EClaw/compare/v1.944.0...v1.944.1) (2026-04-10)


### Bug Fixes

* **arena:** professional subtitle wording ([89311bb](https://github.com/HankHuang0516/EClaw/commit/89311bbaf1b39f001c1a3644afdeba0b5897d43a))

# [1.944.0](https://github.com/HankHuang0516/EClaw/compare/v1.943.0...v1.944.0) (2026-04-10)


### Features

* **arena:** expanded question pools + 5min cooldown + UI polish ([471d2f1](https://github.com/HankHuang0516/EClaw/commit/471d2f1a5d569960ba1cd8cc2eaf889d2a17fb67))

# [1.943.0](https://github.com/HankHuang0516/EClaw/compare/v1.942.0...v1.943.0) (2026-04-10)


### Features

* **arena:** speed bonus scoring + collapsible copy instructions ([33d37d1](https://github.com/HankHuang0516/EClaw/commit/33d37d1a3c2cf44240c4f45bb8ca9e8073ac3b8c))

# [1.942.0](https://github.com/HankHuang0516/EClaw/compare/v1.941.5...v1.942.0) (2026-04-10)


### Features

* **arena:** confetti for top 10 + floating leaderboard prompt ([d4ba078](https://github.com/HankHuang0516/EClaw/commit/d4ba078dee5899cc52ad99af3576ec1f825e58ad))

## [1.941.5](https://github.com/HankHuang0516/EClaw/compare/v1.941.4...v1.941.5) (2026-04-10)


### Bug Fixes

* **arena:** show model name as separate badge below title ([8370ff4](https://github.com/HankHuang0516/EClaw/commit/8370ff4ee61a01f6e2bdd193f9d36a7ad1acf58b))

## [1.941.4](https://github.com/HankHuang0516/EClaw/compare/v1.941.3...v1.941.4) (2026-04-10)


### Bug Fixes

* **arena:** increase spacing between exam page sections ([87e797c](https://github.com/HankHuang0516/EClaw/commit/87e797c2c792895b99702a79b027c3263d7a50d9))

## [1.941.3](https://github.com/HankHuang0516/EClaw/compare/v1.941.2...v1.941.3) (2026-04-10)


### Bug Fixes

* **arena:** add 5s polling fallback for exam status sync ([e78357e](https://github.com/HankHuang0516/EClaw/commit/e78357e75e759df39e91f2721f052196a0d8cb20))

## [1.941.2](https://github.com/HankHuang0516/EClaw/compare/v1.941.1...v1.941.2) (2026-04-10)


### Bug Fixes

* **arena:** switch from waiting to active on first action received ([0344a51](https://github.com/HankHuang0516/EClaw/commit/0344a51859c7bcbf9f1398bd842b9599cda7a5eb))

## [1.941.1](https://github.com/HankHuang0516/EClaw/compare/v1.941.0...v1.941.1) (2026-04-10)


### Bug Fixes

* **arena:** include complete API usage instructions in copy text ([eba530d](https://github.com/HankHuang0516/EClaw/commit/eba530d0e56c5fef344d39c01f1e9fff8ed5d56d))

# [1.941.0](https://github.com/HankHuang0516/EClaw/compare/v1.940.3...v1.941.0) (2026-04-10)


### Features

* **arena:** bridge Arena results to rental interview + Agent Card capabilities ([bbe6d30](https://github.com/HankHuang0516/EClaw/commit/bbe6d3056fa98e04349f0664c4ef2a6d19832116))

## [1.940.3](https://github.com/HankHuang0516/EClaw/compare/v1.940.2...v1.940.3) (2026-04-10)


### Bug Fixes

* **arena:** add back link to benchmark home on exam page ([45f3ca5](https://github.com/HankHuang0516/EClaw/commit/45f3ca581a57542a2daf3802046081244940cd6e))

## [1.940.2](https://github.com/HankHuang0516/EClaw/compare/v1.940.1...v1.940.2) (2026-04-10)


### Bug Fixes

* **arena:** fix /arena/test/:id UUID type mismatch + reuse module pool ([4f4b300](https://github.com/HankHuang0516/EClaw/commit/4f4b300c55aa7606537ec9c6e7b295c3a5bc3a83))

## [1.940.1](https://github.com/HankHuang0516/EClaw/compare/v1.940.0...v1.940.1) (2026-04-10)


### Bug Fixes

* **arena:** /arena/test/:id returns session tokens + challenge configs ([d3f5079](https://github.com/HankHuang0516/EClaw/commit/d3f50793ba8f91af6a27cf1eb25ed642d5133f30))

# [1.940.0](https://github.com/HankHuang0516/EClaw/compare/v1.939.7...v1.940.0) (2026-04-10)


### Features

* **chat:** add /model slash command for Claude Code model switching ([8ed1e20](https://github.com/HankHuang0516/EClaw/commit/8ed1e20fa09d3edf419ad2408e22ff2401b550c3))

## [1.939.7](https://github.com/HankHuang0516/EClaw/compare/v1.939.6...v1.939.7) (2026-04-10)


### Bug Fixes

* **arena:** include session_token in exam results API response ([15a36eb](https://github.com/HankHuang0516/EClaw/commit/15a36ebd0b933d617a55d15bcac98adc34ac2080))

## [1.939.6](https://github.com/HankHuang0516/EClaw/compare/v1.939.5...v1.939.6) (2026-04-10)


### Bug Fixes

* **arena:** add /arena/test/:token route for bot entry point ([0d89d9b](https://github.com/HankHuang0516/EClaw/commit/0d89d9b6edebe9f6d5baf9170cb754b071ab26e5))

## [1.939.5](https://github.com/HankHuang0516/EClaw/compare/v1.939.4...v1.939.5) (2026-04-10)


### Bug Fixes

* **arena:** remove stadium emoji from all arena references ([da8b77f](https://github.com/HankHuang0516/EClaw/commit/da8b77fb154a94dd515edb422c40db2b9f6a334f))

## [1.939.4](https://github.com/HankHuang0516/EClaw/compare/v1.939.3...v1.939.4) (2026-04-10)


### Bug Fixes

* **arena:** center copy button in exam page ([1715e0a](https://github.com/HankHuang0516/EClaw/commit/1715e0a009694b9de740cf5c663da31956a4ad7f))

## [1.939.3](https://github.com/HankHuang0516/EClaw/compare/v1.939.2...v1.939.3) (2026-04-10)


### Bug Fixes

* **arena:** redesign UI with portal design system + rename to Agent Benchmark ([e1e68a3](https://github.com/HankHuang0516/EClaw/commit/e1e68a33d026225e3f2762bff18d12d46764da70))

## [1.939.2](https://github.com/HankHuang0516/EClaw/compare/v1.939.1...v1.939.2) (2026-04-10)


### Bug Fixes

* **arena:** simplify review — schema parser, batch inserts, constants, dead code ([e2f9ed8](https://github.com/HankHuang0516/EClaw/commit/e2f9ed85c42ab8e9918e1400d967d9cb63c98905))

## [1.939.1](https://github.com/HankHuang0516/EClaw/compare/v1.939.0...v1.939.1) (2026-04-10)


### Bug Fixes

* **arena:** fix SQL schema parsing that skipped CREATE TABLE statements ([bef384e](https://github.com/HankHuang0516/EClaw/commit/bef384e57998b535fbf0c4afddf29314d4cfba2b))

# [1.939.0](https://github.com/HankHuang0516/EClaw/compare/v1.938.1...v1.939.0) (2026-04-10)


### Features

* **arena:** Interview Arena — public bot capability testing platform ([31a6fab](https://github.com/HankHuang0516/EClaw/commit/31a6fab672dd5e9f12dcb6fd6d8a3742e300d4e8))

## [1.938.1](https://github.com/HankHuang0516/EClaw/compare/v1.938.0...v1.938.1) (2026-04-10)


### Bug Fixes

* **community:** merge rental listings into default grid view ([b98d37b](https://github.com/HankHuang0516/EClaw/commit/b98d37b97350609d614b1851d6871c4ec518fbaf))

# [1.938.0](https://github.com/HankHuang0516/EClaw/compare/v1.937.0...v1.938.0) (2026-04-10)


### Features

* **community:** integrate rental marketplace into Bot Plaza as filter tab ([3f729e7](https://github.com/HankHuang0516/EClaw/commit/3f729e771fda87525ccee22fc0c9b41960a72ec0)), closes [#rental](https://github.com/HankHuang0516/EClaw/issues/rental) [community.html#rental](https://github.com/community.html/issues/rental)

# [1.937.0](https://github.com/HankHuang0516/EClaw/compare/v1.936.0...v1.937.0) (2026-04-10)


### Features

* **i18n:** add marketplace + my-rentals + invite keys (en + zh-TW) ([eee996b](https://github.com/HankHuang0516/EClaw/commit/eee996b465e3b1f3f26fb253200021e57227d9c6))

# [1.936.0](https://github.com/HankHuang0516/EClaw/compare/v1.935.0...v1.936.0) (2026-04-10)


### Features

* **rental:** interview probe dispatch + stuck-listing cleanup ([ba8cd31](https://github.com/HankHuang0516/EClaw/commit/ba8cd31e6a8d3978dc850f09b20e031955c235a0))

# [1.935.0](https://github.com/HankHuang0516/EClaw/compare/v1.934.0...v1.935.0) (2026-04-10)


### Features

* **refresh:** add channel bot restart via bridge /restart endpoint ([443a21d](https://github.com/HankHuang0516/EClaw/commit/443a21dd8240f3871a4021891622e62f4e88d878))

# [1.934.0](https://github.com/HankHuang0516/EClaw/compare/v1.933.2...v1.934.0) (2026-04-10)


### Features

* **portal:** add marketplace, my-rentals, and invite pages + navigation ([d992c7c](https://github.com/HankHuang0516/EClaw/commit/d992c7c97c2e5a45e06f75083a60da92429680e1))

## [1.933.2](https://github.com/HankHuang0516/EClaw/compare/v1.933.1...v1.933.2) (2026-04-10)


### Bug Fixes

* **roadmap:** update P3-P5 status from Planned to Complete ([ca52800](https://github.com/HankHuang0516/EClaw/commit/ca528006a364e4c2acd09915dfe574281667d0fe))

## [1.933.1](https://github.com/HankHuang0516/EClaw/compare/v1.933.0...v1.933.1) (2026-04-10)


### Bug Fixes

* **trust:** remove invalid eslint-disable comment that broke CI ([082beed](https://github.com/HankHuang0516/EClaw/commit/082beedb0d01d38da44ac7ff3be7f76bc2c0ffc5))

# [1.933.0](https://github.com/HankHuang0516/EClaw/compare/v1.932.2...v1.933.0) (2026-04-10)


### Features

* **rental:** P3 trust layer + P4 risk management + P5 referral system ([c8592b6](https://github.com/HankHuang0516/EClaw/commit/c8592b6197a27c603851d7d118283952ff0b9d05)), closes [#27](https://github.com/HankHuang0516/EClaw/issues/27)

## [1.932.2](https://github.com/HankHuang0516/EClaw/compare/v1.932.1...v1.932.2) (2026-04-10)


### Bug Fixes

* **test:** add friend-system db mocks to cross-speak-channel test ([#1660](https://github.com/HankHuang0516/EClaw/issues/1660)) ([f18d12c](https://github.com/HankHuang0516/EClaw/commit/f18d12c11b14283772828f1d77edb8a979b1e54d))

## [1.932.1](https://github.com/HankHuang0516/EClaw/compare/v1.932.0...v1.932.1) (2026-04-10)


### Bug Fixes

* **security:** disable debug endpoints in prod, verify-email POST migration, fix CI leak ([#1659](https://github.com/HankHuang0516/EClaw/issues/1659)) ([7b48a52](https://github.com/HankHuang0516/EClaw/commit/7b48a5235dd208d6368ad3d134a3c3e53849456c)), closes [#1594](https://github.com/HankHuang0516/EClaw/issues/1594) [#1595](https://github.com/HankHuang0516/EClaw/issues/1595)

# [1.932.0](https://github.com/HankHuang0516/EClaw/compare/v1.931.1...v1.932.0) (2026-04-10)


### Features

* **friends:** integrate friend system into card holder with messaging enforcement ([#1658](https://github.com/HankHuang0516/EClaw/issues/1658)) ([bab0bef](https://github.com/HankHuang0516/EClaw/commit/bab0bef69a2e6ae6a132d93be36b8db0847df6da))

## [1.931.1](https://github.com/HankHuang0516/EClaw/compare/v1.931.0...v1.931.1) (2026-04-10)


### Bug Fixes

* **rental:** ended_zero_balance refunds remaining deposit instead of full forfeit ([47caa85](https://github.com/HankHuang0516/EClaw/commit/47caa85e92f08803cc80f84f84b45b8b2e536c17))

# [1.931.0](https://github.com/HankHuang0516/EClaw/compare/v1.930.0...v1.931.0) (2026-04-10)


### Features

* **rental:** switch to USD, forfeit→owner split, nav e-coin badge, wallet entry in settings ([329d97b](https://github.com/HankHuang0516/EClaw/commit/329d97b2361dfff238546141b29159bbefa76afd))

# [1.930.0](https://github.com/HankHuang0516/EClaw/compare/v1.929.4...v1.930.0) (2026-04-10)


### Features

* **portal:** add BRM product roadmap page with EN/ZH toggle ([3e3c3fb](https://github.com/HankHuang0516/EClaw/commit/3e3c3fb2be31ec18b0f1690203807a39075b12b1))
* **rental:** contract state machine with atomic cross-module transactions (P2-A/B) ([267c09d](https://github.com/HankHuang0516/EClaw/commit/267c09d7286bab4e133c7749ba4db2ed11d118cf))
* **rental:** gatekeeper extension + entity guardrails + handover (P2-D/E/F) ([5a0e31a](https://github.com/HankHuang0516/EClaw/commit/5a0e31a28885f85fa24ae7a0ed746fa713aa652a)), closes [#19](https://github.com/HankHuang0516/EClaw/issues/19)
* **rental:** reconcile cron (P0 wrap) + listing/interview/pricing foundation (P1) ([073a125](https://github.com/HankHuang0516/EClaw/commit/073a125b218135c6033fe4ff7510fc3ccd0c2e4b)), closes [#14](https://github.com/HankHuang0516/EClaw/issues/14) [hi#confidence](https://github.com/hi/issues/confidence)
* **rental:** token metering proxy + crons + cross-reference annotations (P2-C) ([508e1ac](https://github.com/HankHuang0516/EClaw/commit/508e1ace8d54cd2ac373d6f074f252b2b11e0d1a)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)
* **rental:** wallet module foundation (P0 of bot rental marketplace) ([a5dd33e](https://github.com/HankHuang0516/EClaw/commit/a5dd33ea7838d8e769bc038c4d0728b0d7273800))
* **rental:** wire wallet routes, top-up flow, and portal page (P0 cont.) ([6938c92](https://github.com/HankHuang0516/EClaw/commit/6938c92d5f824f7dbc8bf89cf7a0418bed3a2e3c))

## [1.929.4](https://github.com/HankHuang0516/EClaw/compare/v1.929.3...v1.929.4) (2026-04-10)


### Bug Fixes

* **mission:** remove duplicate decryptVarsLocal declaration ([392ecd5](https://github.com/HankHuang0516/EClaw/commit/392ecd54c74aa4b003c577ac50673a431d766276))

## [1.929.3](https://github.com/HankHuang0516/EClaw/compare/v1.929.2...v1.929.3) (2026-04-10)


### Bug Fixes

* **workspace:** prevent AI chat widget duplication in split-view panes ([#1657](https://github.com/HankHuang0516/EClaw/issues/1657)) ([e586e32](https://github.com/HankHuang0516/EClaw/commit/e586e32887bf7fa7ff8d513ff5472996c308e029))

## [1.929.2](https://github.com/HankHuang0516/EClaw/compare/v1.929.1...v1.929.2) (2026-04-09)


### Bug Fixes

* sync env vars from server on chat init so Key Reference shows in WebView ([0020b32](https://github.com/HankHuang0516/EClaw/commit/0020b32c694f70b426ce8ec3f8831c41e22352bf))

## [1.929.1](https://github.com/HankHuang0516/EClaw/compare/v1.929.0...v1.929.1) (2026-04-09)


### Bug Fixes

* **chat:** remove duplicate const isAndroidWebView — SyntaxError stuck loading spinner ([e019984](https://github.com/HankHuang0516/EClaw/commit/e0199842123212722452ff9a8d184d44c4eacdc4)), closes [#chatLoading](https://github.com/HankHuang0516/EClaw/issues/chatLoading)

# [1.929.0](https://github.com/HankHuang0516/EClaw/compare/v1.928.6...v1.929.0) (2026-04-09)


### Features

* collapse input bar icons into + menu; fix overlay centering ([45750fe](https://github.com/HankHuang0516/EClaw/commit/45750feaac2ff23d1442ac3f9c4f95755c06ed72))

## [1.928.6](https://github.com/HankHuang0516/EClaw/compare/v1.928.5...v1.928.6) (2026-04-09)


### Bug Fixes

* file preview/download blank page in Android WebView ([1c9afe3](https://github.com/HankHuang0516/EClaw/commit/1c9afe39dffa3d82cecafd2f940e9619025b8943))

## [1.928.5](https://github.com/HankHuang0516/EClaw/compare/v1.928.4...v1.928.5) (2026-04-09)


### Bug Fixes

* acquire AudioFocus before WebView mic grant to prevent NotReadableError ([19599ce](https://github.com/HankHuang0516/EClaw/commit/19599cefc4a45c45262a2a45f225df10dd82c0fe))

## [1.928.4](https://github.com/HankHuang0516/EClaw/compare/v1.928.3...v1.928.4) (2026-04-09)


### Bug Fixes

* voice messages routing to [#0](https://github.com/HankHuang0516/EClaw/issues/0) regardless of selected targets ([9185383](https://github.com/HankHuang0516/EClaw/commit/9185383e0f7f0ee3afc06bdb238aa4a697093246))

## [1.928.3](https://github.com/HankHuang0516/EClaw/compare/v1.928.2...v1.928.3) (2026-04-09)


### Bug Fixes

* resolve Android WebView microphone permission denied error ([cf544aa](https://github.com/HankHuang0516/EClaw/commit/cf544aa9523a5f9127012df193f8196d043c6e8b))

## [1.928.2](https://github.com/HankHuang0516/EClaw/compare/v1.928.1...v1.928.2) (2026-04-09)


### Bug Fixes

* **test:** use built-in FormData (Node 18+) instead of form-data package ([b05b555](https://github.com/HankHuang0516/EClaw/commit/b05b555f072986e42b7302860e45793628058a05))

## [1.928.1](https://github.com/HankHuang0516/EClaw/compare/v1.928.0...v1.928.1) (2026-04-09)


### Bug Fixes

* **chat:** remove noopener from window.open blank — Chrome returns null with noopener causing about:blank tab ([8f47331](https://github.com/HankHuang0516/EClaw/commit/8f4733111b794f7b1f78d8a63b949344be576dd9))

# [1.928.0](https://github.com/HankHuang0516/EClaw/compare/v1.927.3...v1.928.0) (2026-04-09)


### Features

* **files:** split preview vs force-download for attachment cards ([fc919f5](https://github.com/HankHuang0516/EClaw/commit/fc919f501be3e1e104655f26b42efac6af19bc05))

## [1.927.3](https://github.com/HankHuang0516/EClaw/compare/v1.927.2...v1.927.3) (2026-04-09)


### Bug Fixes

* **chat:** fix downloadAttachment popup blocker on desktop web ([770d45f](https://github.com/HankHuang0516/EClaw/commit/770d45f5614d181aaf2442f8fe67efd2338cf51f))

## [1.927.2](https://github.com/HankHuang0516/EClaw/compare/v1.927.1...v1.927.2) (2026-04-09)


### Bug Fixes

* **chat:** fix file link click (window.open), async-resolve filename from Content-Disposition ([3653848](https://github.com/HankHuang0516/EClaw/commit/365384830bd8497abae7c6c0f15e8d9863bebf20))

## [1.927.1](https://github.com/HankHuang0516/EClaw/compare/v1.927.0...v1.927.1) (2026-04-09)


### Bug Fixes

* **chat:** fix syntax error in R2 file manager onclick — escape single quotes via &#x27; ([e6dcc76](https://github.com/HankHuang0516/EClaw/commit/e6dcc76c51591f6bcccabbe64de7c65de3bcd357)), closes [#x27](https://github.com/HankHuang0516/EClaw/issues/x27)

# [1.927.0](https://github.com/HankHuang0516/EClaw/compare/v1.926.6...v1.927.0) (2026-04-09)


### Features

* **chat:** add R2 file manager panel to + attach menu (list/upload/insert/delete) ([f5ad741](https://github.com/HankHuang0516/EClaw/commit/f5ad741dcf57512756fa79a2a4166c2826a66a67))

## [1.926.6](https://github.com/HankHuang0516/EClaw/compare/v1.926.5...v1.926.6) (2026-04-09)


### Bug Fixes

* **files:** rename table to r2_files to avoid schema conflict with index.js bot_files ([0199c79](https://github.com/HankHuang0516/EClaw/commit/0199c79a283abe4c2566dd98622a6e93067816ce))

## [1.926.5](https://github.com/HankHuang0516/EClaw/compare/v1.926.4...v1.926.5) (2026-04-09)


### Bug Fixes

* **files:** wrap all route handlers in try/catch to prevent unhandledRejection crash ([a998cc6](https://github.com/HankHuang0516/EClaw/commit/a998cc6c0b8e13dd0382db1ba3a8a6bbb1da99fb))

## [1.926.4](https://github.com/HankHuang0516/EClaw/compare/v1.926.3...v1.926.4) (2026-04-09)


### Bug Fixes

* **files:** wrap auth in try/catch, use parallel DB queries for restart fallback ([59443e0](https://github.com/HankHuang0516/EClaw/commit/59443e00768d44a6121facf8b3aec73e94f39438))

## [1.926.3](https://github.com/HankHuang0516/EClaw/compare/v1.926.2...v1.926.3) (2026-04-09)


### Bug Fixes

* **files:** fall through to DB auth when device not in memory (post-restart) ([1a62c94](https://github.com/HankHuang0516/EClaw/commit/1a62c94f28deae9b227cac25cecc061afec47827))

## [1.926.2](https://github.com/HankHuang0516/EClaw/compare/v1.926.1...v1.926.2) (2026-04-09)


### Bug Fixes

* **files:** entities is a plain object not array — use entities[id] not .find() ([ccf9f67](https://github.com/HankHuang0516/EClaw/commit/ccf9f6750ef86b56b03293f74f7ae6ab5bbebb3d))

## [1.926.1](https://github.com/HankHuang0516/EClaw/compare/v1.926.0...v1.926.1) (2026-04-09)


### Bug Fixes

* **files:** use devices[id] instead of devices.get(id) — plain object not Map ([f5b5234](https://github.com/HankHuang0516/EClaw/commit/f5b52341b00d170b3fce561a431a9a5f0dce663c))

# [1.926.0](https://github.com/HankHuang0516/EClaw/compare/v1.925.0...v1.926.0) (2026-04-09)


### Features

* **chat:** add env var smart reference icon to chat input ([cc3c7aa](https://github.com/HankHuang0516/EClaw/commit/cc3c7aab60ed80972bd65f0757f3802874c00527))

# [1.925.0](https://github.com/HankHuang0516/EClaw/compare/v1.924.0...v1.925.0) (2026-04-09)


### Features

* **env-vars:** smart {{KEY}} reference syntax in skills/souls/rules ([205062a](https://github.com/HankHuang0516/EClaw/commit/205062a00cdbf711b94e751c69e477adb8ec5cf6))

# [1.924.0](https://github.com/HankHuang0516/EClaw/compare/v1.923.0...v1.924.0) (2026-04-09)


### Features

* **settings:** add invite code UI — display code, copy button, redeem form, bonus stats ([813b1f9](https://github.com/HankHuang0516/EClaw/commit/813b1f94b958f589a58c815cc35d324683d7f49c))

# [1.923.0](https://github.com/HankHuang0516/EClaw/compare/v1.922.7...v1.923.0) (2026-04-09)


### Features

* **invite:** invite code system — DB schema, quota integration, and API routes ([758dd20](https://github.com/HankHuang0516/EClaw/commit/758dd20b4cdca574d4f6df615e254d58095f2358))

## [1.922.7](https://github.com/HankHuang0516/EClaw/compare/v1.922.6...v1.922.7) (2026-04-09)


### Bug Fixes

* **info:** defer Mermaid render to tab activation — avoids translate(NaN) when panel is hidden at load ([25d902b](https://github.com/HankHuang0516/EClaw/commit/25d902bd43b4ac63f30b300f4a7b65197a842f73))

## [1.922.6](https://github.com/HankHuang0516/EClaw/compare/v1.922.5...v1.922.6) (2026-04-09)


### Bug Fixes

* **screen-control:** add missing renderNav() call — top nav bar was not rendering ([8900f96](https://github.com/HankHuang0516/EClaw/commit/8900f9697e15556a40d16d12eadb58c73621675a))

## [1.922.5](https://github.com/HankHuang0516/EClaw/compare/v1.922.4...v1.922.5) (2026-04-09)


### Bug Fixes

* **i18n:** resolve merge conflict — fix unescaped quotes in id guide_bp CTA keys ([8eebdff](https://github.com/HankHuang0516/EClaw/commit/8eebdff5c992e3048bc37908324d8cc1aad8ed3c))

## [1.922.4](https://github.com/HankHuang0516/EClaw/compare/v1.922.3...v1.922.4) (2026-04-09)


### Bug Fixes

* preserve ?embed=1 on sub-tab links in env-vars and screen-control ([ce6a429](https://github.com/HankHuang0516/EClaw/commit/ce6a42993781e0439be8671f6b3980355ffa21f5))

## [1.922.3](https://github.com/HankHuang0516/EClaw/compare/v1.922.2...v1.922.3) (2026-04-09)


### Bug Fixes

* restore Mission Control tab on env-vars and screen-control pages ([259a7cc](https://github.com/HankHuang0516/EClaw/commit/259a7cc02595a5443bcbae2dba67c2c0e0187e56))

## [1.922.2](https://github.com/HankHuang0516/EClaw/compare/v1.922.1...v1.922.2) (2026-04-09)


### Bug Fixes

* **files:** resolveDevice falls back to req.query when body lacks deviceId ([1a5417e](https://github.com/HankHuang0516/EClaw/commit/1a5417e419f2ac2914e1f566de40417c173f8853))

## [1.922.1](https://github.com/HankHuang0516/EClaw/compare/v1.922.0...v1.922.1) (2026-04-09)


### Bug Fixes

* **files:** add try-catch to upload handler, fix /list route order ([48c9961](https://github.com/HankHuang0516/EClaw/commit/48c996106575fd5ac47c9d9c57a5e42531c9c83d))

# [1.922.0](https://github.com/HankHuang0516/EClaw/compare/v1.921.1...v1.922.0) (2026-04-08)


### Features

* add attachments[] support to chat messages (P1) ([c92050e](https://github.com/HankHuang0516/EClaw/commit/c92050e5da95a301431165307d8976fd3d2ab1d6))

## [1.921.1](https://github.com/HankHuang0516/EClaw/compare/v1.921.0...v1.921.1) (2026-04-08)


### Bug Fixes

* raise JSON body limit for mission dashboard to fix 413 save failure ([307a5be](https://github.com/HankHuang0516/EClaw/commit/307a5be2c618d57a8ba3c169460299a2a14ee199))

# [1.921.0](https://github.com/HankHuang0516/EClaw/compare/v1.920.1...v1.921.0) (2026-04-08)


### Features

* **files:** add R2 file upload system — POST/GET/DELETE /api/files ([5b580fc](https://github.com/HankHuang0516/EClaw/commit/5b580fc8df7f04c5c44ff37afa2aef44f3a249b2))

## [1.920.1](https://github.com/HankHuang0516/EClaw/compare/v1.920.0...v1.920.1) (2026-04-08)


### Bug Fixes

* **i18n:** add missing comma after toast_upload_failed in zh locale ([92d1acf](https://github.com/HankHuang0516/EClaw/commit/92d1acfffa848bbd2d4ef6da4ef72fbb63467eb4))

# [1.920.0](https://github.com/HankHuang0516/EClaw/compare/v1.919.0...v1.920.0) (2026-04-08)


### Features

* **i18n:** add guide translations for Asian languages (ja/ko/th/vi/id) ([2d5391d](https://github.com/HankHuang0516/EClaw/commit/2d5391d2f7611a2a59573c7fdf7eeaf050e40982))

# [1.919.0](https://github.com/HankHuang0516/EClaw/compare/v1.918.0...v1.919.0) (2026-04-08)


### Features

* **i18n:** add Malay, Hindi, Arabic guide_intent and guide_mention translations ([7009d09](https://github.com/HankHuang0516/EClaw/commit/7009d09ee69723b35eb659115c1340d7f1e986b8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.918.0](https://github.com/HankHuang0516/EClaw/compare/v1.917.1...v1.918.0) (2026-04-08)


### Features

* **i18n:** add French and Spanish guide translations ([f0500c7](https://github.com/HankHuang0516/EClaw/commit/f0500c7971894f639adbc32b01681ce38528b782)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

## [1.917.1](https://github.com/HankHuang0516/EClaw/compare/v1.917.0...v1.917.1) (2026-04-08)


### Bug Fixes

* **i18n:** escape inner quotes in Indonesian guide HTML strings ([#1652](https://github.com/HankHuang0516/EClaw/issues/1652)) ([ca6490c](https://github.com/HankHuang0516/EClaw/commit/ca6490c58365791c36e46fb0de51df0c602784f1))

# [1.917.0](https://github.com/HankHuang0516/EClaw/compare/v1.916.0...v1.917.0) (2026-04-08)


### Features

* **i18n:** add Indonesian guide translations (ec, kb, kanban, gk, mp, wp, gps, bp, plaza, lw) ([ab3b71b](https://github.com/HankHuang0516/EClaw/commit/ab3b71bc28c963f62ae5f622164e33fa6e9494c3)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.916.0](https://github.com/HankHuang0516/EClaw/compare/v1.915.0...v1.916.0) (2026-04-08)


### Features

* kanban card edit UI — reviewer/assign for all cards + mission tab ([8a8b458](https://github.com/HankHuang0516/EClaw/commit/8a8b458283798ec951c1b0f12e3ba91c998b17c9))

# [1.915.0](https://github.com/HankHuang0516/EClaw/compare/v1.914.1...v1.915.0) (2026-04-08)


### Features

* **i18n:** add guide_mention + guide_intent for th/vi/id [squash] ([2b90937](https://github.com/HankHuang0516/EClaw/commit/2b909370984b310e6614964d5e2437445f931a83))

## [1.914.1](https://github.com/HankHuang0516/EClaw/compare/v1.914.0...v1.914.1) (2026-04-08)


### Bug Fixes

* unify quote button icon to 📌 and harden postMessage origins ([4b3a14d](https://github.com/HankHuang0516/EClaw/commit/4b3a14d4000b2b8da1995ffe51281f5a6da5128f))

# [1.914.0](https://github.com/HankHuang0516/EClaw/compare/v1.913.0...v1.914.0) (2026-04-08)


### Features

* **i18n:** add guide_wp translations for ja/ko/th/vi/id [squash] ([80213a5](https://github.com/HankHuang0516/EClaw/commit/80213a5cf7ed0f2b516a6a54e8e654cecff97417))

# [1.913.0](https://github.com/HankHuang0516/EClaw/compare/v1.912.1...v1.913.0) (2026-04-08)


### Features

* **files:** add smart quote-to-chat on all file cards and preview ([311d3ac](https://github.com/HankHuang0516/EClaw/commit/311d3acc33350e562db62275424b40a8a17becfd))

## [1.912.1](https://github.com/HankHuang0516/EClaw/compare/v1.912.0...v1.912.1) (2026-04-08)


### Bug Fixes

* **portal:** simplify review — origin validation + chat-pane cache ([f0a698a](https://github.com/HankHuang0516/EClaw/commit/f0a698abc67993f8ce94e114ee6b7ccb89fd4223))

# [1.912.0](https://github.com/HankHuang0516/EClaw/compare/v1.911.0...v1.912.0) (2026-04-08)


### Features

* smart quote cross-iframe routing for workspace split-view ([0e937ed](https://github.com/HankHuang0516/EClaw/commit/0e937ed094ef2f08cf715783b2239254544f0367))

# [1.911.0](https://github.com/HankHuang0516/EClaw/compare/v1.910.0...v1.911.0) (2026-04-08)


### Features

* **portal:** smart quote-to-chat — reuse reply bar, no full-content paste ([aeab157](https://github.com/HankHuang0516/EClaw/commit/aeab1570c2916b480768076dfd9705d964d6ee6e))

# [1.910.0](https://github.com/HankHuang0516/EClaw/compare/v1.909.1...v1.910.0) (2026-04-08)


### Features

* **portal:** add 'quote to chat' button to all modals and cards ([0459b07](https://github.com/HankHuang0516/EClaw/commit/0459b077cd20870478324d8cd033736d785afc56)), closes [#messageInput](https://github.com/HankHuang0516/EClaw/issues/messageInput) [#messageInput](https://github.com/HankHuang0516/EClaw/issues/messageInput)

## [1.909.1](https://github.com/HankHuang0516/EClaw/compare/v1.909.0...v1.909.1) (2026-04-08)


### Bug Fixes

* **info:** correct panel IDs for Bot Plaza and Live Wallpaper ([#1644](https://github.com/HankHuang0516/EClaw/issues/1644)) ([92d9fe5](https://github.com/HankHuang0516/EClaw/commit/92d9fe54d17834d79672172d081c56ae078b9ff0)), closes [#N](https://github.com/HankHuang0516/EClaw/issues/N) [#1](https://github.com/HankHuang0516/EClaw/issues/1)

# [1.909.0](https://github.com/HankHuang0516/EClaw/compare/v1.908.0...v1.909.0) (2026-04-08)


### Features

* **channel:** rich card support for /api/channel/message ([#1643](https://github.com/HankHuang0516/EClaw/issues/1643)) ([36339ea](https://github.com/HankHuang0516/EClaw/commit/36339ea48d2c113ebb4d30e0b06fd974cc1f90e4)), closes [#1641](https://github.com/HankHuang0516/EClaw/issues/1641) [#1641](https://github.com/HankHuang0516/EClaw/issues/1641)

# [1.908.0](https://github.com/HankHuang0516/EClaw/compare/v1.907.0...v1.908.0) (2026-04-08)


### Features

* **kanban:** add Schedule tab to card detail modal ([#1642](https://github.com/HankHuang0516/EClaw/issues/1642)) ([d658457](https://github.com/HankHuang0516/EClaw/commit/d65845762d08c525f75856c53a41fb6e40a7b20b)), closes [#N](https://github.com/HankHuang0516/EClaw/issues/N) [#1](https://github.com/HankHuang0516/EClaw/issues/1)

# [1.907.0](https://github.com/HankHuang0516/EClaw/compare/v1.906.0...v1.907.0) (2026-04-08)


### Features

* rich card (interactive button) support ([#1641](https://github.com/HankHuang0516/EClaw/issues/1641)) ([a019987](https://github.com/HankHuang0516/EClaw/commit/a0199878fb79f42f9f3b82633417175026fc9c55))

# [1.906.0](https://github.com/HankHuang0516/EClaw/compare/v1.905.1...v1.906.0) (2026-04-07)


### Features

* **mention:** support entityId tokens (<@N>, @#N, @N) alongside publicCode ([#1640](https://github.com/HankHuang0516/EClaw/issues/1640)) ([c8404fd](https://github.com/HankHuang0516/EClaw/commit/c8404fdcca7db8a16a7c0009607200d7274f2bea)), closes [#N](https://github.com/HankHuang0516/EClaw/issues/N) [#1](https://github.com/HankHuang0516/EClaw/issues/1)

## [1.905.1](https://github.com/HankHuang0516/EClaw/compare/v1.905.0...v1.905.1) (2026-04-07)


### Bug Fixes

* **kanban:** drop duplicate Kanban Board hints in notifyEntities ([#1639](https://github.com/HankHuang0516/EClaw/issues/1639)) ([9afa9c9](https://github.com/HankHuang0516/EClaw/commit/9afa9c98660fbfb4b8e0e0638ccd4a543b83685d))

# [1.905.0](https://github.com/HankHuang0516/EClaw/compare/v1.904.2...v1.905.0) (2026-04-07)


### Features

* **i18n:** localize kanban bot push notifications by device owner language ([#1638](https://github.com/HankHuang0516/EClaw/issues/1638)) ([180354a](https://github.com/HankHuang0516/EClaw/commit/180354a4cd00c76604bc00d1b062b6ede0c81567))

## [1.904.2](https://github.com/HankHuang0516/EClaw/compare/v1.904.1...v1.904.2) (2026-04-07)


### Bug Fixes

* **transform:** preserve chat save when speakTo targets self ([#1637](https://github.com/HankHuang0516/EClaw/issues/1637)) ([7692e38](https://github.com/HankHuang0516/EClaw/commit/7692e385cd3d3f992daf8bee7a87a090b7661a3d))

## [1.904.1](https://github.com/HankHuang0516/EClaw/compare/v1.904.0...v1.904.1) (2026-04-07)


### Bug Fixes

* **i18n:** repair syntax errors blocking all portal pages ([#1636](https://github.com/HankHuang0516/EClaw/issues/1636)) ([b5da5bf](https://github.com/HankHuang0516/EClaw/commit/b5da5bf8c221fa94f63684b2e0fb8af0c306956b))

# [1.904.0](https://github.com/HankHuang0516/EClaw/compare/v1.903.0...v1.904.0) (2026-04-07)


### Features

* **i18n:** add MiniGame schedule SOP translations (ja, ko, fr, es, th, vi, id, ms, hi, ar) ([b8f1496](https://github.com/HankHuang0516/EClaw/commit/b8f1496b4e116c19c64e0cdb3082408d22e0f060))

# [1.903.0](https://github.com/HankHuang0516/EClaw/compare/v1.902.1...v1.903.0) (2026-04-07)


### Features

* **i18n:** add MiniGame schedule SOP translations for 10 languages (squashed) ([998293d](https://github.com/HankHuang0516/EClaw/commit/998293d10d21dbf0613567c4fd8cb4a545a8c065)), closes [#1](https://github.com/HankHuang0516/EClaw/issues/1)

## [1.902.1](https://github.com/HankHuang0516/EClaw/compare/v1.902.0...v1.902.1) (2026-04-07)


### Bug Fixes

* **chat:** kanban_notify bubbles from different entities no longer grouped ([#1633](https://github.com/HankHuang0516/EClaw/issues/1633)) ([da5027f](https://github.com/HankHuang0516/EClaw/commit/da5027f4d6bcf608c06697e6c3ddb5c09534d532))

# [1.902.0](https://github.com/HankHuang0516/EClaw/compare/v1.901.0...v1.902.0) (2026-04-07)


### Features

* **info:** add MiniGame automation schedule SOP section ([#1632](https://github.com/HankHuang0516/EClaw/issues/1632)) ([2a04035](https://github.com/HankHuang0516/EClaw/commit/2a040350f204c4687142e5ba0dff25c46c933a11))

# [1.901.0](https://github.com/HankHuang0516/EClaw/compare/v1.900.0...v1.901.0) (2026-04-07)


### Features

* **info:** MiniGame Game Factory showcase panel ([#1631](https://github.com/HankHuang0516/EClaw/issues/1631)) ([b9e15c2](https://github.com/HankHuang0516/EClaw/commit/b9e15c25c42d799dbfee970e948fe3cbf79b3161))

# [1.900.0](https://github.com/HankHuang0516/EClaw/compare/v1.899.2...v1.900.0) (2026-04-07)


### Features

* intent-based dynamic API hint injection ([#1629](https://github.com/HankHuang0516/EClaw/issues/1629)) ([9037d26](https://github.com/HankHuang0516/EClaw/commit/9037d26a16b50480d156d945038bc202dcbea97e))

## [1.899.2](https://github.com/HankHuang0516/EClaw/compare/v1.899.1...v1.899.2) (2026-04-07)


### Bug Fixes

* **form-submit:** handle sendBeacon text/plain + debug logging ([#1628](https://github.com/HankHuang0516/EClaw/issues/1628)) ([9a41b29](https://github.com/HankHuang0516/EClaw/commit/9a41b29012df63e34ee7583f605e283df162d756))

## [1.899.1](https://github.com/HankHuang0516/EClaw/compare/v1.899.0...v1.899.1) (2026-04-07)


### Bug Fixes

* **cors:** allow minigame.eclawbot.com origin for cross-origin requests ([a65474e](https://github.com/HankHuang0516/EClaw/commit/a65474eb4d4f27f8871de79b95bb032bd375b70a))

# [1.899.0](https://github.com/HankHuang0516/EClaw/compare/v1.898.0...v1.899.0) (2026-04-07)


### Features

* **chat:** add quote-reply icon to chat bubbles ([0bcb4d0](https://github.com/HankHuang0516/EClaw/commit/0bcb4d06c9fcde30ee3ff589100a77c1909fb523))

# [1.898.0](https://github.com/HankHuang0516/EClaw/compare/v1.897.1...v1.898.0) (2026-04-07)


### Features

* **api:** add /api/help intent-based API discovery + extend getMissionApiHints with kanban/schedule hints ([4586b37](https://github.com/HankHuang0516/EClaw/commit/4586b37bf058e35869b8cda0f850dd660b33bcd4))

## [1.897.1](https://github.com/HankHuang0516/EClaw/compare/v1.897.0...v1.897.1) (2026-04-06)


### Bug Fixes

* **mention:** push displayText to bots + imperative [MENTIONS] hint ([#1624](https://github.com/HankHuang0516/EClaw/issues/1624)) ([f22e30a](https://github.com/HankHuang0516/EClaw/commit/f22e30a1dd6f71a1ecf19a4493051c77108bfa56)), closes [#0](https://github.com/HankHuang0516/EClaw/issues/0) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#2](https://github.com/HankHuang0516/EClaw/issues/2)

# [1.897.0](https://github.com/HankHuang0516/EClaw/compare/v1.896.0...v1.897.0) (2026-04-06)


### Features

* **channel:** centralise context inlining in backend ([#1622](https://github.com/HankHuang0516/EClaw/issues/1622)) ([4af761f](https://github.com/HankHuang0516/EClaw/commit/4af761fa9107363d38a6cba6bfa5119edb357e65))

# [1.896.0](https://github.com/HankHuang0516/EClaw/compare/v1.895.0...v1.896.0) (2026-04-06)


### Features

* **chat:** add [@mention](https://github.com/mention) autocomplete and smart routing ([#1619](https://github.com/HankHuang0516/EClaw/issues/1619)) ([18f5ac0](https://github.com/HankHuang0516/EClaw/commit/18f5ac0b5d2a52a69c1c6f15da0d3b28b435edbd)), closes [#14](https://github.com/HankHuang0516/EClaw/issues/14)

# [1.895.0](https://github.com/HankHuang0516/EClaw/compare/v1.894.2...v1.895.0) (2026-04-05)


### Features

* **portal:** add experimental warning to Claude Code Channel guide ([#1618](https://github.com/HankHuang0516/EClaw/issues/1618)) ([c99cc74](https://github.com/HankHuang0516/EClaw/commit/c99cc744b73099f72d2a52623bc06fd49f1a5068))

## [1.894.2](https://github.com/HankHuang0516/EClaw/compare/v1.894.1...v1.894.2) (2026-04-05)


### Bug Fixes

* **backend:** resolve ESLint no-undef errors in index.js ([#1617](https://github.com/HankHuang0516/EClaw/issues/1617)) ([965c679](https://github.com/HankHuang0516/EClaw/commit/965c679a69de77c7eeb4c99616209b5fe1dfa71d))

## [1.894.1](https://github.com/HankHuang0516/EClaw/compare/v1.894.0...v1.894.1) (2026-04-05)


### Bug Fixes

* **portal:** remove duplicate let declaration in community.html ([#1616](https://github.com/HankHuang0516/EClaw/issues/1616)) ([ac458d5](https://github.com/HankHuang0516/EClaw/commit/ac458d5afd1ccfa97a46bcc11ffeaa752f20ec08))

# [1.894.0](https://github.com/HankHuang0516/EClaw/compare/v1.893.0...v1.894.0) (2026-04-05)


### Features

* **portal:** add Bot Plaza toggle to Card Holder agent card editor ([#1615](https://github.com/HankHuang0516/EClaw/issues/1615)) ([2995dd5](https://github.com/HankHuang0516/EClaw/commit/2995dd57db54a78bb5da1308a42e02200d345471))

# [1.893.0](https://github.com/HankHuang0516/EClaw/compare/v1.892.0...v1.893.0) (2026-04-05)


### Features

* **portal:** add Bot Plaza publish toggle to Agent Card editor ([#1614](https://github.com/HankHuang0516/EClaw/issues/1614)) ([006995a](https://github.com/HankHuang0516/EClaw/commit/006995ae35472ffc88971626971e2ea392782553))

# [1.892.0](https://github.com/HankHuang0516/EClaw/compare/v1.891.0...v1.892.0) (2026-04-05)


### Features

* **chat:** allow bot to query chat history with botSecret ([96d0e0d](https://github.com/HankHuang0516/EClaw/commit/96d0e0dbfc0d8d36ba00b8d3b6408f30d981994f))

# [1.891.0](https://github.com/HankHuang0516/EClaw/compare/v1.890.1...v1.891.0) (2026-04-05)


### Features

* **chat:** allow bot to query chat history with botSecret ([5e5fd72](https://github.com/HankHuang0516/EClaw/commit/5e5fd72051311f7dda64d8e1a3f062fb22c4c794))

## [1.890.1](https://github.com/HankHuang0516/EClaw/compare/v1.890.0...v1.890.1) (2026-04-05)


### Bug Fixes

* **portal:** add missing favicon to skill-doc page ([88f0ca5](https://github.com/HankHuang0516/EClaw/commit/88f0ca55dfaa8cd2f768bcca9e80188736246e65))

# [1.890.0](https://github.com/HankHuang0516/EClaw/compare/v1.889.1...v1.890.0) (2026-04-05)


### Features

* unified speakTo/broadcast across transform + channel/message + plugin ([9b1ba47](https://github.com/HankHuang0516/EClaw/commit/9b1ba47a98b0d6a727acd6673a5ced3e06e85143))

## [1.889.1](https://github.com/HankHuang0516/EClaw/compare/v1.889.0...v1.889.1) (2026-04-05)


### Bug Fixes

* **portal:** add missing favicon to workspace split-view page ([13247a1](https://github.com/HankHuang0516/EClaw/commit/13247a117869c5870b0ae45d877789fe5333f6ab))

# [1.889.0](https://github.com/HankHuang0516/EClaw/compare/v1.888.2...v1.889.0) (2026-04-05)


### Features

* **transform:** entityId optional — auto-detect from botSecret ([5b56043](https://github.com/HankHuang0516/EClaw/commit/5b560436152b9a48b4bb896b6da99bd6ecf11ced))

## [1.888.2](https://github.com/HankHuang0516/EClaw/compare/v1.888.1...v1.888.2) (2026-04-05)


### Bug Fixes

* **transform:** add speakTo/broadcast to debug logs + fix const redeclaration ([0d70426](https://github.com/HankHuang0516/EClaw/commit/0d70426fb74c205a4b9e7e41e5f9e2e524564569))

## [1.888.1](https://github.com/HankHuang0516/EClaw/compare/v1.888.0...v1.888.1) (2026-04-05)


### Performance Improvements

* **kanban:** remove verbose GET console.log on read-only routes ([ad15b57](https://github.com/HankHuang0516/EClaw/commit/ad15b57bb546a2d393815d15c21fb1986052c4a2))

# [1.888.0](https://github.com/HankHuang0516/EClaw/compare/v1.887.4...v1.888.0) (2026-04-05)


### Features

* **transform:** merge speak-to/broadcast into transform API ([c48cd57](https://github.com/HankHuang0516/EClaw/commit/c48cd573d6b31c561982432860dab235a4d40660))

## [1.887.4](https://github.com/HankHuang0516/EClaw/compare/v1.887.3...v1.887.4) (2026-04-05)


### Bug Fixes

* **chat:** dedup includes source + transform uses A2A routing source ([fbeaa06](https://github.com/HankHuang0516/EClaw/commit/fbeaa06cd60f0ed450be0bca679c0ee5d3401085))

## [1.887.3](https://github.com/HankHuang0516/EClaw/compare/v1.887.2...v1.887.3) (2026-04-05)


### Bug Fixes

* **kanban:** sync assigned_bots when entity IDs change ([7112718](https://github.com/HankHuang0516/EClaw/commit/71127188476d5f22970c5e01c1cdebeddf50bd19))

## [1.887.2](https://github.com/HankHuang0516/EClaw/compare/v1.887.1...v1.887.2) (2026-04-05)


### Bug Fixes

* **kanban:** simplify review — UX feedback, dedup, i18n, efficiency ([e2b921b](https://github.com/HankHuang0516/EClaw/commit/e2b921bbaa9b0b10c60bedb6f8f6dc72c0e9e24b))

## [1.887.1](https://github.com/HankHuang0516/EClaw/compare/v1.887.0...v1.887.1) (2026-04-05)


### Bug Fixes

* **entity:** use saveDeviceData instead of saveData for auto-create after last delete ([bd64f04](https://github.com/HankHuang0516/EClaw/commit/bd64f0444137deeb0c109187d8e9d2d0875d81ec))

# [1.887.0](https://github.com/HankHuang0516/EClaw/compare/v1.886.0...v1.887.0) (2026-04-05)


### Features

* **info:** add Channel Plugin recommendation box to Claude OpenClaw guide ([#1613](https://github.com/HankHuang0516/EClaw/issues/1613)) ([59c2096](https://github.com/HankHuang0516/EClaw/commit/59c209649e4b3b1941497ebbb9d5c4c06d678a85))

# [1.886.0](https://github.com/HankHuang0516/EClaw/compare/v1.885.1...v1.886.0) (2026-04-05)


### Features

* **kanban:** assigned bots selector on automation parent cards ([2ec9a0a](https://github.com/HankHuang0516/EClaw/commit/2ec9a0a9e0b2f412d5237470c1598208d1b5c468))

## [1.885.1](https://github.com/HankHuang0516/EClaw/compare/v1.885.0...v1.885.1) (2026-04-05)


### Bug Fixes

* **dashboard:** optimistic delete UX and allow deleting last entity ([c990442](https://github.com/HankHuang0516/EClaw/commit/c990442e318ad23c1942ba201c5a835bae349e16))

# [1.885.0](https://github.com/HankHuang0516/EClaw/compare/v1.884.0...v1.885.0) (2026-04-04)


### Features

* **portal:** add Channel Plugins category with Claude Code Channel guide ([#1612](https://github.com/HankHuang0516/EClaw/issues/1612)) ([608a9ed](https://github.com/HankHuang0516/EClaw/commit/608a9ed2b8a0facf70ffec40bb2a52537d350306))

# [1.884.0](https://github.com/HankHuang0516/EClaw/compare/v1.883.0...v1.884.0) (2026-04-04)


### Features

* **kanban:** add title/description to automation edit modal ([#1611](https://github.com/HankHuang0516/EClaw/issues/1611)) ([b31de98](https://github.com/HankHuang0516/EClaw/commit/b31de9895435d4740c713c46fb2c966d1dcf29a6))

# [1.883.0](https://github.com/HankHuang0516/EClaw/compare/v1.882.2...v1.883.0) (2026-04-04)


### Features

* **kanban:** add automation schedule editing UI ([#1610](https://github.com/HankHuang0516/EClaw/issues/1610)) ([a1570ee](https://github.com/HankHuang0516/EClaw/commit/a1570ee3ac8b930fec06f8ffa089079fb5799371))

## [1.882.2](https://github.com/HankHuang0516/EClaw/compare/v1.882.1...v1.882.2) (2026-04-04)


### Bug Fixes

* re-enable notes/souls/skills/rules add buttons on mission page ([0d935ed](https://github.com/HankHuang0516/EClaw/commit/0d935ed8776ccc419933e696795486405fc27e7c))

## [1.882.1](https://github.com/HankHuang0516/EClaw/compare/v1.882.0...v1.882.1) (2026-04-04)


### Bug Fixes

* **kanban:** show automation section in Android WebView ([c5ec18d](https://github.com/HankHuang0516/EClaw/commit/c5ec18dd113066ac4b8b85e6fdecdb9302bf6d3b))

# [1.882.0](https://github.com/HankHuang0516/EClaw/compare/v1.881.2...v1.882.0) (2026-04-04)


### Features

* **kanban:** reviewer selector on automation parent cards ([adc0537](https://github.com/HankHuang0516/EClaw/commit/adc0537c89428f962a62eb8176dcb731eb947908))

## [1.881.2](https://github.com/HankHuang0516/EClaw/compare/v1.881.1...v1.881.2) (2026-04-03)


### Bug Fixes

* **chat:** use full recipient set in senderKey to prevent wrong visual grouping ([f0142a1](https://github.com/HankHuang0516/EClaw/commit/f0142a1828425e8baad9a15561f12050d3aa5f2a))

## [1.881.1](https://github.com/HankHuang0516/EClaw/compare/v1.881.0...v1.881.1) (2026-04-03)


### Bug Fixes

* **kanban:** channel bot replies now trigger auto-done on child cards ([18a096d](https://github.com/HankHuang0516/EClaw/commit/18a096db24eeb6a54738ddeab16f211fd03f35d7))

# [1.881.0](https://github.com/HankHuang0516/EClaw/compare/v1.880.0...v1.881.0) (2026-04-03)


### Features

* **kanban:** automation pause/resume/delete UIUX + i18n ([#1605](https://github.com/HankHuang0516/EClaw/issues/1605)) ([cbcd0e1](https://github.com/HankHuang0516/EClaw/commit/cbcd0e15d63820aeeb6bc884c22b883a936da30e))
* **kanban:** require assigned entity, slower card animation, mission embed ([#1604](https://github.com/HankHuang0516/EClaw/issues/1604)) ([31f7119](https://github.com/HankHuang0516/EClaw/commit/31f7119fad634740c48a79d771cf3792d31e24f1))

# [1.880.0](https://github.com/HankHuang0516/EClaw/compare/v1.879.0...v1.880.0) (2026-04-03)


### Features

* **kanban:** timeline projections, workload indicators & mission embed mode ([#1603](https://github.com/HankHuang0516/EClaw/issues/1603)) ([b8faf35](https://github.com/HankHuang0516/EClaw/commit/b8faf35e16c042cced4408c44381afe02c7abcd0))

# [1.879.0](https://github.com/HankHuang0516/EClaw/compare/v1.878.6...v1.879.0) (2026-04-03)


### Features

* **kanban:** timeline projected executions + entity workload indicators ([#1602](https://github.com/HankHuang0516/EClaw/issues/1602)) ([966dc67](https://github.com/HankHuang0516/EClaw/commit/966dc67751c8ed651ec46a8da05f7d4fd6de66d9))

## [1.878.6](https://github.com/HankHuang0516/EClaw/compare/v1.878.5...v1.878.6) (2026-04-03)


### Bug Fixes

* **chat:** prevent speak-to messages from being visually grouped with plain replies ([0712e20](https://github.com/HankHuang0516/EClaw/commit/0712e20096ded3e0aa1dc8000e9326b02b296cfc))

## [1.878.5](https://github.com/HankHuang0516/EClaw/compare/v1.878.4...v1.878.5) (2026-04-02)


### Bug Fixes

* **kanban:** include card description and missionHints in push notifications ([#1601](https://github.com/HankHuang0516/EClaw/issues/1601)) ([065ebb6](https://github.com/HankHuang0516/EClaw/commit/065ebb6019e53adc93ad547549281c0b21e2ec00)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2)

## [1.878.4](https://github.com/HankHuang0516/EClaw/compare/v1.878.3...v1.878.4) (2026-04-02)


### Bug Fixes

* **kanban:** auto-promote recurring schedule cards to automation + inline creation ([#1600](https://github.com/HankHuang0516/EClaw/issues/1600)) ([b23f8fd](https://github.com/HankHuang0516/EClaw/commit/b23f8fd0610b802a4cb7cb5d4df9f3cc5070ff0e))

## [1.878.3](https://github.com/HankHuang0516/EClaw/compare/v1.878.2...v1.878.3) (2026-04-02)


### Bug Fixes

* autoReview supports manual cards with reviewerEntityId ([#1599](https://github.com/HankHuang0516/EClaw/issues/1599)) ([0d55355](https://github.com/HankHuang0516/EClaw/commit/0d55355a39ca66c785626c7694fb1be62ae5582b))

## [1.878.2](https://github.com/HankHuang0516/EClaw/compare/v1.878.1...v1.878.2) (2026-04-02)


### Bug Fixes

* autoReview marks card as done instead of review ([#1598](https://github.com/HankHuang0516/EClaw/issues/1598)) ([14bdb00](https://github.com/HankHuang0516/EClaw/commit/14bdb00a967d586cdb10f3dee2caac86dc4cf303))

## [1.878.1](https://github.com/HankHuang0516/EClaw/compare/v1.878.0...v1.878.1) (2026-04-02)


### Bug Fixes

* auto-review trigger on any non-BUSY transform with message ([#1597](https://github.com/HankHuang0516/EClaw/issues/1597)) ([f6d30e9](https://github.com/HankHuang0516/EClaw/commit/f6d30e90e7d3de06ea5c08c5c16f029bdbe17bf0))

# [1.878.0](https://github.com/HankHuang0516/EClaw/compare/v1.877.0...v1.878.0) (2026-04-01)


### Bug Fixes

* **chat:** correct broadcast grouping — merge same-text cross-entity, show per-entity labels for different messages ([280e82f](https://github.com/HankHuang0516/EClaw/commit/280e82f8b361a023e34a77aa8f16b002928151d7))
* **security:** SSRF protection on channel callback, broadcast NaN fix, kanban validation ([#1596](https://github.com/HankHuang0516/EClaw/issues/1596)) ([b85d186](https://github.com/HankHuang0516/EClaw/commit/b85d186a6af6bcb46d92da1eba0f0e4724e4c5a8))
* synthetic DOMContentLoaded trigger in activateBlockedScripts ([20dd9f1](https://github.com/HankHuang0516/EClaw/commit/20dd9f1c6be03352e40f7b440deda190644349f5))
* synthetic DOMContentLoaded trigger in activateBlockedScripts ([#1553](https://github.com/HankHuang0516/EClaw/issues/1553)) ([7a9ced3](https://github.com/HankHuang0516/EClaw/commit/7a9ced35819673144d22b530166974cf1767d788))
* UTF-8-safe base64 decoding for blocked scripts + WebView encoding hardening ([#1551](https://github.com/HankHuang0516/EClaw/issues/1551)) ([9ee3ce0](https://github.com/HankHuang0516/EClaw/commit/9ee3ce049815b0e7a3a8d224b09a86b72026bb23))


### Features

* **mission:** add DELETE /note/:id endpoint ([7890a1f](https://github.com/HankHuang0516/EClaw/commit/7890a1fa2077ffcaa2096c16baef19aa85838c8f))
* **i18n:** add French translations for borrow and settings sections ([#1507](https://github.com/HankHuang0516/EClaw/issues/1507)) ([3222f66](https://github.com/HankHuang0516/EClaw/commit/3222f66532704718a56a802509b37ea0226a91c7)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for cardholder and contacts sections ([#1513](https://github.com/HankHuang0516/EClaw/issues/1513)) ([fd03424](https://github.com/HankHuang0516/EClaw/commit/fd034248404e3f7be0c2bb98859571e105bc7bc8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for chat and schedule sections ([#1510](https://github.com/HankHuang0516/EClaw/issues/1510)) ([777be93](https://github.com/HankHuang0516/EClaw/commit/777be93e9605cbbc3388c6d62d6f4b2f6043cabf)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for common, error, settings sections - batch 376 ([#1519](https://github.com/HankHuang0516/EClaw/issues/1519)) ([fa53650](https://github.com/HankHuang0516/EClaw/commit/fa536500ee04a343ad2961f839ceaf1c6481a75a)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for feedback and chat sections ([#1509](https://github.com/HankHuang0516/EClaw/issues/1509)) ([9860e93](https://github.com/HankHuang0516/EClaw/commit/9860e93221aa6ce5b8efbcd810b0635bba047bb2)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for files, guide, kanban sections ([#1515](https://github.com/HankHuang0516/EClaw/issues/1515)) ([72d1207](https://github.com/HankHuang0516/EClaw/commit/72d120753c051fae1b8133d413fc9624a3c31172)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for identity and avatar sections ([5bc7f07](https://github.com/HankHuang0516/EClaw/commit/5bc7f072ce8af1c2f66d57fb40557ddbdfcfeb64))
* **i18n:** add French translations for kanban, mission sections ([#1516](https://github.com/HankHuang0516/EClaw/issues/1516)) ([5295d61](https://github.com/HankHuang0516/EClaw/commit/5295d611308ac959832086460c1a0f1f0fc8dca6)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for mission, notification sections ([#1517](https://github.com/HankHuang0516/EClaw/issues/1517)) ([d3fa174](https://github.com/HankHuang0516/EClaw/commit/d3fa17408339ec0c7afefe2819e5ec1304431dc9)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for sc, files sections ([#1514](https://github.com/HankHuang0516/EClaw/issues/1514)) ([dbe17d0](https://github.com/HankHuang0516/EClaw/commit/dbe17d0d11e25be5419ce04cf51cb3c5817891bf)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for schedule sections ([#1511](https://github.com/HankHuang0516/EClaw/issues/1511)) ([cc7cc44](https://github.com/HankHuang0516/EClaw/commit/cc7cc44bd2bd30e04633e8dab8cc90c21f80ac31)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for settings and notifications ([#1508](https://github.com/HankHuang0516/EClaw/issues/1508)) ([d28d201](https://github.com/HankHuang0516/EClaw/commit/d28d20198d83f109677a91d857f54ac7dd9f5277)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for settings sections ([#1518](https://github.com/HankHuang0516/EClaw/issues/1518)) ([c4bbbdc](https://github.com/HankHuang0516/EClaw/commit/c4bbbdc1d3098fe8c3e72c2d4b2ce5e4ce7506a9)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for slots, webhook, borrow sections ([#1506](https://github.com/HankHuang0516/EClaw/issues/1506)) ([9920a2b](https://github.com/HankHuang0516/EClaw/commit/9920a2b85ab19be1d8f27df738080ef9f837fd63))
* **i18n:** add German translations - batch 1 (portal, nav, landing, ent) ([#1520](https://github.com/HankHuang0516/EClaw/issues/1520)) ([527e2ce](https://github.com/HankHuang0516/EClaw/commit/527e2ce50f97339d6b4072a5e227ab622d467959))
* **i18n:** add German translations - batch 10 (remaining notif, broadcast, settings keys) ([#1529](https://github.com/HankHuang0516/EClaw/issues/1529)) ([8e8b721](https://github.com/HankHuang0516/EClaw/commit/8e8b72138b98c276056a4e568c3d93a89edf54b8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 11 (chat_ keys) ([#1530](https://github.com/HankHuang0516/EClaw/issues/1530)) ([6451d98](https://github.com/HankHuang0516/EClaw/commit/6451d98fd879c98ccb12f9222d5fbe88162ba0e4)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 12 (feedback_ keys) ([#1531](https://github.com/HankHuang0516/EClaw/issues/1531)) ([f473f49](https://github.com/HankHuang0516/EClaw/commit/f473f496251fa6ba8776350d259dcdb08ad31343)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 13 (remaining feedback_ keys) ([#1532](https://github.com/HankHuang0516/EClaw/issues/1532)) ([5d313d9](https://github.com/HankHuang0516/EClaw/commit/5d313d956d33dd816b38bf7fac087782c0f0f0c5)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 14 (slash_ keys) ([#1533](https://github.com/HankHuang0516/EClaw/issues/1533)) ([3c0abc5](https://github.com/HankHuang0516/EClaw/commit/3c0abc54fb1e2c983ad644203a59b1838c757d72)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 15 (message_, webhook_, maintenance_ keys) ([c39a667](https://github.com/HankHuang0516/EClaw/commit/c39a667999b2b98a8b6d4cde539d34e235ca3ba4))
* **i18n:** add German translations - batch 16 (nav_, channel_, dashboard_ keys) ([#1535](https://github.com/HankHuang0516/EClaw/issues/1535)) ([ae7da25](https://github.com/HankHuang0516/EClaw/commit/ae7da25372dd9d210aa70770eec8973977496f2c)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 17 (sched_ keys) ([#1536](https://github.com/HankHuang0516/EClaw/issues/1536)) ([063bf50](https://github.com/HankHuang0516/EClaw/commit/063bf502cb12a67e9a09fdfc8b4e18424d3b6e76)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 18 (remaining sched_, common_ keys) ([#1537](https://github.com/HankHuang0516/EClaw/issues/1537)) ([56c669b](https://github.com/HankHuang0516/EClaw/commit/56c669be444d472d845132bc9827cda7232a9024)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 19 (files_, ai_ keys) ([#1538](https://github.com/HankHuang0516/EClaw/issues/1538)) ([e7a7006](https://github.com/HankHuang0516/EClaw/commit/e7a70060ac3bdfd8f11df9650be9bcb334c32d8f)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 2 (ent_ec, info, qs sections) ([#1521](https://github.com/HankHuang0516/EClaw/issues/1521)) ([b3b2631](https://github.com/HankHuang0516/EClaw/commit/b3b26312d6748b6ea242d88e4bdc26162a2cba2c)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 20 (delete_, screen_ keys) ([#1539](https://github.com/HankHuang0516/EClaw/issues/1539)) ([6d61be0](https://github.com/HankHuang0516/EClaw/commit/6d61be0954b294c07db26ce74ed84bfc6fea68bd)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 21 (toast_ keys) ([#1540](https://github.com/HankHuang0516/EClaw/issues/1540)) ([d1f0056](https://github.com/HankHuang0516/EClaw/commit/d1f005684e9b55a33f940c37daacbf682660720d)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 22 (skill_, soul_, rule_, env_, kanban_, rn_ keys) ([#1541](https://github.com/HankHuang0516/EClaw/issues/1541)) ([023f865](https://github.com/HankHuang0516/EClaw/commit/023f865cfb912b42915e44684b42b9c13eef026e)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 23 (kb_col_ keys) ([#1542](https://github.com/HankHuang0516/EClaw/issues/1542)) ([905ee78](https://github.com/HankHuang0516/EClaw/commit/905ee78c3afc345a8987de9700e28cd066f439c4)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 24 (env_, contrib_, community_ keys) ([d8c29ce](https://github.com/HankHuang0516/EClaw/commit/d8c29ce7655fb768da701635eee55824f5439046))
* **i18n:** add German translations - batch 27 (guide_channel_ keys) ([#1544](https://github.com/HankHuang0516/EClaw/issues/1544)) ([3bf46b1](https://github.com/HankHuang0516/EClaw/commit/3bf46b1969e441d2f38c5adc5c7304b3f5786bee)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 28 (guide_agentcard_ keys, 51 keys) ([#1545](https://github.com/HankHuang0516/EClaw/issues/1545)) ([db52003](https://github.com/HankHuang0516/EClaw/commit/db52003a4766a18241903e0dd253113df6265ac6)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 29 (guide_bp_ Bot Plaza keys, 42 keys) ([#1546](https://github.com/HankHuang0516/EClaw/issues/1546)) ([cafb4c8](https://github.com/HankHuang0516/EClaw/commit/cafb4c88952aa0b937441902d77ce4c602b58af5)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 3 (guide, demo, faq sections) ([#1522](https://github.com/HankHuang0516/EClaw/issues/1522)) ([e912fba](https://github.com/HankHuang0516/EClaw/commit/e912fbab6399d100765d2013b2214345a31e273d)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 30 (guide_crossdevice_ + guide_channel_warning_1, 68 keys) ([#1547](https://github.com/HankHuang0516/EClaw/issues/1547)) ([e0ea9be](https://github.com/HankHuang0516/EClaw/commit/e0ea9beef1702671483c0ce91798e379d08fe904)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 31 (guide_ec_ E-Commerce keys, 85 keys) ([#1548](https://github.com/HankHuang0516/EClaw/issues/1548)) ([6fa35d0](https://github.com/HankHuang0516/EClaw/commit/6fa35d00ef581f92f4c049b17ad1267b6ebaea75)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 32 (guide_features_ + guide_envvars_, 95 keys) ([#1549](https://github.com/HankHuang0516/EClaw/issues/1549)) ([aab6c00](https://github.com/HankHuang0516/EClaw/commit/aab6c00d71d7113da8cf72114bce83fea8060454)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 4 (more guide sections) ([#1523](https://github.com/HankHuang0516/EClaw/issues/1523)) ([c55b3a8](https://github.com/HankHuang0516/EClaw/commit/c55b3a88a9db5ce807e5b3e8461b81efcd624337)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 5 (login, settings, terms sections) ([#1524](https://github.com/HankHuang0516/EClaw/issues/1524)) ([38167d1](https://github.com/HankHuang0516/EClaw/commit/38167d1cb7875d5f1a5ba2376c9bde3c57e09abf)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 6 (footer, faq, rn sections) ([#1525](https://github.com/HankHuang0516/EClaw/issues/1525)) ([d968a6f](https://github.com/HankHuang0516/EClaw/commit/d968a6fbc0e659d526ee5ce0a546fd097311ac55)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 7 (dash_xd, dash_id sections) ([#1526](https://github.com/HankHuang0516/EClaw/issues/1526)) ([ded1e29](https://github.com/HankHuang0516/EClaw/commit/ded1e290bca3301467f95725087175d35f4b2b0c)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 8 (remaining dash_ keys) ([#1527](https://github.com/HankHuang0516/EClaw/issues/1527)) ([ce971c2](https://github.com/HankHuang0516/EClaw/commit/ce971c2d95f8baae497fac28bf5dc3990262b5dc)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 9 (borrow, notif sections) ([#1528](https://github.com/HankHuang0516/EClaw/issues/1528)) ([81913a3](https://github.com/HankHuang0516/EClaw/commit/81913a3cd92e86eb44f4268e9fe29ce7fc54a49a)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **kanban:** add reviewerEntityId + auto-notify reviewer on transform ([#1592](https://github.com/HankHuang0516/EClaw/issues/1592)) ([088791f](https://github.com/HankHuang0516/EClaw/commit/088791f90c1c803466b00b165d9705775cb533be)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2)
* **channel:** include mediaUrl in channel push text field ([#1591](https://github.com/HankHuang0516/EClaw/issues/1591)) ([8e9b233](https://github.com/HankHuang0516/EClaw/commit/8e9b23362452a7c8d53514767f8b946cf76638c8))
* strict broadcast grouping by entity_id ([82e8456](https://github.com/HankHuang0516/EClaw/commit/82e8456bf01cb68002afd1bc2f2f2e22944d84fb))
* strict broadcast grouping by entity_id ([#1582](https://github.com/HankHuang0516/EClaw/issues/1582)) ([dd6c37e](https://github.com/HankHuang0516/EClaw/commit/dd6c37e54c4bdf8265df633dedefb27f0c9ab851))

# [1.878.0](https://github.com/HankHuang0516/EClaw/compare/v1.877.0...v1.878.0) (2026-04-01)


### Bug Fixes

* **chat:** correct broadcast grouping — merge same-text cross-entity, show per-entity labels for different messages ([280e82f](https://github.com/HankHuang0516/EClaw/commit/280e82f8b361a023e34a77aa8f16b002928151d7))
* synthetic DOMContentLoaded trigger in activateBlockedScripts ([20dd9f1](https://github.com/HankHuang0516/EClaw/commit/20dd9f1c6be03352e40f7b440deda190644349f5))
* synthetic DOMContentLoaded trigger in activateBlockedScripts ([#1553](https://github.com/HankHuang0516/EClaw/issues/1553)) ([7a9ced3](https://github.com/HankHuang0516/EClaw/commit/7a9ced35819673144d22b530166974cf1767d788))
* UTF-8-safe base64 decoding for blocked scripts + WebView encoding hardening ([#1551](https://github.com/HankHuang0516/EClaw/issues/1551)) ([9ee3ce0](https://github.com/HankHuang0516/EClaw/commit/9ee3ce049815b0e7a3a8d224b09a86b72026bb23))


### Features

* **mission:** add DELETE /note/:id endpoint ([7890a1f](https://github.com/HankHuang0516/EClaw/commit/7890a1fa2077ffcaa2096c16baef19aa85838c8f))
* **i18n:** add French translations for borrow and settings sections ([#1507](https://github.com/HankHuang0516/EClaw/issues/1507)) ([3222f66](https://github.com/HankHuang0516/EClaw/commit/3222f66532704718a56a802509b37ea0226a91c7)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for cardholder and contacts sections ([#1513](https://github.com/HankHuang0516/EClaw/issues/1513)) ([fd03424](https://github.com/HankHuang0516/EClaw/commit/fd034248404e3f7be0c2bb98859571e105bc7bc8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for chat and schedule sections ([#1510](https://github.com/HankHuang0516/EClaw/issues/1510)) ([777be93](https://github.com/HankHuang0516/EClaw/commit/777be93e9605cbbc3388c6d62d6f4b2f6043cabf)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for common, error, settings sections - batch 376 ([#1519](https://github.com/HankHuang0516/EClaw/issues/1519)) ([fa53650](https://github.com/HankHuang0516/EClaw/commit/fa536500ee04a343ad2961f839ceaf1c6481a75a)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for feedback and chat sections ([#1509](https://github.com/HankHuang0516/EClaw/issues/1509)) ([9860e93](https://github.com/HankHuang0516/EClaw/commit/9860e93221aa6ce5b8efbcd810b0635bba047bb2)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for files, guide, kanban sections ([#1515](https://github.com/HankHuang0516/EClaw/issues/1515)) ([72d1207](https://github.com/HankHuang0516/EClaw/commit/72d120753c051fae1b8133d413fc9624a3c31172)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for identity and avatar sections ([5bc7f07](https://github.com/HankHuang0516/EClaw/commit/5bc7f072ce8af1c2f66d57fb40557ddbdfcfeb64))
* **i18n:** add French translations for kanban, mission sections ([#1516](https://github.com/HankHuang0516/EClaw/issues/1516)) ([5295d61](https://github.com/HankHuang0516/EClaw/commit/5295d611308ac959832086460c1a0f1f0fc8dca6)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for mission, notification sections ([#1517](https://github.com/HankHuang0516/EClaw/issues/1517)) ([d3fa174](https://github.com/HankHuang0516/EClaw/commit/d3fa17408339ec0c7afefe2819e5ec1304431dc9)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for sc, files sections ([#1514](https://github.com/HankHuang0516/EClaw/issues/1514)) ([dbe17d0](https://github.com/HankHuang0516/EClaw/commit/dbe17d0d11e25be5419ce04cf51cb3c5817891bf)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for schedule sections ([#1511](https://github.com/HankHuang0516/EClaw/issues/1511)) ([cc7cc44](https://github.com/HankHuang0516/EClaw/commit/cc7cc44bd2bd30e04633e8dab8cc90c21f80ac31)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for settings and notifications ([#1508](https://github.com/HankHuang0516/EClaw/issues/1508)) ([d28d201](https://github.com/HankHuang0516/EClaw/commit/d28d20198d83f109677a91d857f54ac7dd9f5277)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for settings sections ([#1518](https://github.com/HankHuang0516/EClaw/issues/1518)) ([c4bbbdc](https://github.com/HankHuang0516/EClaw/commit/c4bbbdc1d3098fe8c3e72c2d4b2ce5e4ce7506a9)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for slots, webhook, borrow sections ([#1506](https://github.com/HankHuang0516/EClaw/issues/1506)) ([9920a2b](https://github.com/HankHuang0516/EClaw/commit/9920a2b85ab19be1d8f27df738080ef9f837fd63))
* **i18n:** add German translations - batch 1 (portal, nav, landing, ent) ([#1520](https://github.com/HankHuang0516/EClaw/issues/1520)) ([527e2ce](https://github.com/HankHuang0516/EClaw/commit/527e2ce50f97339d6b4072a5e227ab622d467959))
* **i18n:** add German translations - batch 10 (remaining notif, broadcast, settings keys) ([#1529](https://github.com/HankHuang0516/EClaw/issues/1529)) ([8e8b721](https://github.com/HankHuang0516/EClaw/commit/8e8b72138b98c276056a4e568c3d93a89edf54b8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 11 (chat_ keys) ([#1530](https://github.com/HankHuang0516/EClaw/issues/1530)) ([6451d98](https://github.com/HankHuang0516/EClaw/commit/6451d98fd879c98ccb12f9222d5fbe88162ba0e4)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 12 (feedback_ keys) ([#1531](https://github.com/HankHuang0516/EClaw/issues/1531)) ([f473f49](https://github.com/HankHuang0516/EClaw/commit/f473f496251fa6ba8776350d259dcdb08ad31343)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 13 (remaining feedback_ keys) ([#1532](https://github.com/HankHuang0516/EClaw/issues/1532)) ([5d313d9](https://github.com/HankHuang0516/EClaw/commit/5d313d956d33dd816b38bf7fac087782c0f0f0c5)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 14 (slash_ keys) ([#1533](https://github.com/HankHuang0516/EClaw/issues/1533)) ([3c0abc5](https://github.com/HankHuang0516/EClaw/commit/3c0abc54fb1e2c983ad644203a59b1838c757d72)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 15 (message_, webhook_, maintenance_ keys) ([c39a667](https://github.com/HankHuang0516/EClaw/commit/c39a667999b2b98a8b6d4cde539d34e235ca3ba4))
* **i18n:** add German translations - batch 16 (nav_, channel_, dashboard_ keys) ([#1535](https://github.com/HankHuang0516/EClaw/issues/1535)) ([ae7da25](https://github.com/HankHuang0516/EClaw/commit/ae7da25372dd9d210aa70770eec8973977496f2c)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 17 (sched_ keys) ([#1536](https://github.com/HankHuang0516/EClaw/issues/1536)) ([063bf50](https://github.com/HankHuang0516/EClaw/commit/063bf502cb12a67e9a09fdfc8b4e18424d3b6e76)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 18 (remaining sched_, common_ keys) ([#1537](https://github.com/HankHuang0516/EClaw/issues/1537)) ([56c669b](https://github.com/HankHuang0516/EClaw/commit/56c669be444d472d845132bc9827cda7232a9024)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 19 (files_, ai_ keys) ([#1538](https://github.com/HankHuang0516/EClaw/issues/1538)) ([e7a7006](https://github.com/HankHuang0516/EClaw/commit/e7a70060ac3bdfd8f11df9650be9bcb334c32d8f)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 2 (ent_ec, info, qs sections) ([#1521](https://github.com/HankHuang0516/EClaw/issues/1521)) ([b3b2631](https://github.com/HankHuang0516/EClaw/commit/b3b26312d6748b6ea242d88e4bdc26162a2cba2c)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 20 (delete_, screen_ keys) ([#1539](https://github.com/HankHuang0516/EClaw/issues/1539)) ([6d61be0](https://github.com/HankHuang0516/EClaw/commit/6d61be0954b294c07db26ce74ed84bfc6fea68bd)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 21 (toast_ keys) ([#1540](https://github.com/HankHuang0516/EClaw/issues/1540)) ([d1f0056](https://github.com/HankHuang0516/EClaw/commit/d1f005684e9b55a33f940c37daacbf682660720d)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 22 (skill_, soul_, rule_, env_, kanban_, rn_ keys) ([#1541](https://github.com/HankHuang0516/EClaw/issues/1541)) ([023f865](https://github.com/HankHuang0516/EClaw/commit/023f865cfb912b42915e44684b42b9c13eef026e)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 23 (kb_col_ keys) ([#1542](https://github.com/HankHuang0516/EClaw/issues/1542)) ([905ee78](https://github.com/HankHuang0516/EClaw/commit/905ee78c3afc345a8987de9700e28cd066f439c4)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 24 (env_, contrib_, community_ keys) ([d8c29ce](https://github.com/HankHuang0516/EClaw/commit/d8c29ce7655fb768da701635eee55824f5439046))
* **i18n:** add German translations - batch 27 (guide_channel_ keys) ([#1544](https://github.com/HankHuang0516/EClaw/issues/1544)) ([3bf46b1](https://github.com/HankHuang0516/EClaw/commit/3bf46b1969e441d2f38c5adc5c7304b3f5786bee)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 28 (guide_agentcard_ keys, 51 keys) ([#1545](https://github.com/HankHuang0516/EClaw/issues/1545)) ([db52003](https://github.com/HankHuang0516/EClaw/commit/db52003a4766a18241903e0dd253113df6265ac6)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 29 (guide_bp_ Bot Plaza keys, 42 keys) ([#1546](https://github.com/HankHuang0516/EClaw/issues/1546)) ([cafb4c8](https://github.com/HankHuang0516/EClaw/commit/cafb4c88952aa0b937441902d77ce4c602b58af5)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 3 (guide, demo, faq sections) ([#1522](https://github.com/HankHuang0516/EClaw/issues/1522)) ([e912fba](https://github.com/HankHuang0516/EClaw/commit/e912fbab6399d100765d2013b2214345a31e273d)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 30 (guide_crossdevice_ + guide_channel_warning_1, 68 keys) ([#1547](https://github.com/HankHuang0516/EClaw/issues/1547)) ([e0ea9be](https://github.com/HankHuang0516/EClaw/commit/e0ea9beef1702671483c0ce91798e379d08fe904)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 31 (guide_ec_ E-Commerce keys, 85 keys) ([#1548](https://github.com/HankHuang0516/EClaw/issues/1548)) ([6fa35d0](https://github.com/HankHuang0516/EClaw/commit/6fa35d00ef581f92f4c049b17ad1267b6ebaea75)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 32 (guide_features_ + guide_envvars_, 95 keys) ([#1549](https://github.com/HankHuang0516/EClaw/issues/1549)) ([aab6c00](https://github.com/HankHuang0516/EClaw/commit/aab6c00d71d7113da8cf72114bce83fea8060454)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 4 (more guide sections) ([#1523](https://github.com/HankHuang0516/EClaw/issues/1523)) ([c55b3a8](https://github.com/HankHuang0516/EClaw/commit/c55b3a88a9db5ce807e5b3e8461b81efcd624337)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 5 (login, settings, terms sections) ([#1524](https://github.com/HankHuang0516/EClaw/issues/1524)) ([38167d1](https://github.com/HankHuang0516/EClaw/commit/38167d1cb7875d5f1a5ba2376c9bde3c57e09abf)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 6 (footer, faq, rn sections) ([#1525](https://github.com/HankHuang0516/EClaw/issues/1525)) ([d968a6f](https://github.com/HankHuang0516/EClaw/commit/d968a6fbc0e659d526ee5ce0a546fd097311ac55)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 7 (dash_xd, dash_id sections) ([#1526](https://github.com/HankHuang0516/EClaw/issues/1526)) ([ded1e29](https://github.com/HankHuang0516/EClaw/commit/ded1e290bca3301467f95725087175d35f4b2b0c)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 8 (remaining dash_ keys) ([#1527](https://github.com/HankHuang0516/EClaw/issues/1527)) ([ce971c2](https://github.com/HankHuang0516/EClaw/commit/ce971c2d95f8baae497fac28bf5dc3990262b5dc)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 9 (borrow, notif sections) ([#1528](https://github.com/HankHuang0516/EClaw/issues/1528)) ([81913a3](https://github.com/HankHuang0516/EClaw/commit/81913a3cd92e86eb44f4268e9fe29ce7fc54a49a)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **kanban:** add reviewerEntityId + auto-notify reviewer on transform ([#1592](https://github.com/HankHuang0516/EClaw/issues/1592)) ([088791f](https://github.com/HankHuang0516/EClaw/commit/088791f90c1c803466b00b165d9705775cb533be)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2)
* **channel:** include mediaUrl in channel push text field ([#1591](https://github.com/HankHuang0516/EClaw/issues/1591)) ([8e9b233](https://github.com/HankHuang0516/EClaw/commit/8e9b23362452a7c8d53514767f8b946cf76638c8))
* strict broadcast grouping by entity_id ([82e8456](https://github.com/HankHuang0516/EClaw/commit/82e8456bf01cb68002afd1bc2f2f2e22944d84fb))
* strict broadcast grouping by entity_id ([#1582](https://github.com/HankHuang0516/EClaw/issues/1582)) ([dd6c37e](https://github.com/HankHuang0516/EClaw/commit/dd6c37e54c4bdf8265df633dedefb27f0c9ab851))

# [1.878.0](https://github.com/HankHuang0516/EClaw/compare/v1.877.0...v1.878.0) (2026-04-01)


### Bug Fixes

* **chat:** correct broadcast grouping — merge same-text cross-entity, show per-entity labels for different messages ([280e82f](https://github.com/HankHuang0516/EClaw/commit/280e82f8b361a023e34a77aa8f16b002928151d7))
* synthetic DOMContentLoaded trigger in activateBlockedScripts ([20dd9f1](https://github.com/HankHuang0516/EClaw/commit/20dd9f1c6be03352e40f7b440deda190644349f5))
* synthetic DOMContentLoaded trigger in activateBlockedScripts ([#1553](https://github.com/HankHuang0516/EClaw/issues/1553)) ([7a9ced3](https://github.com/HankHuang0516/EClaw/commit/7a9ced35819673144d22b530166974cf1767d788))
* UTF-8-safe base64 decoding for blocked scripts + WebView encoding hardening ([#1551](https://github.com/HankHuang0516/EClaw/issues/1551)) ([9ee3ce0](https://github.com/HankHuang0516/EClaw/commit/9ee3ce049815b0e7a3a8d224b09a86b72026bb23))


### Features

* **mission:** add DELETE /note/:id endpoint ([7890a1f](https://github.com/HankHuang0516/EClaw/commit/7890a1fa2077ffcaa2096c16baef19aa85838c8f))
* **i18n:** add French translations for borrow and settings sections ([#1507](https://github.com/HankHuang0516/EClaw/issues/1507)) ([3222f66](https://github.com/HankHuang0516/EClaw/commit/3222f66532704718a56a802509b37ea0226a91c7)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for cardholder and contacts sections ([#1513](https://github.com/HankHuang0516/EClaw/issues/1513)) ([fd03424](https://github.com/HankHuang0516/EClaw/commit/fd034248404e3f7be0c2bb98859571e105bc7bc8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for chat and schedule sections ([#1510](https://github.com/HankHuang0516/EClaw/issues/1510)) ([777be93](https://github.com/HankHuang0516/EClaw/commit/777be93e9605cbbc3388c6d62d6f4b2f6043cabf)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for common, error, settings sections - batch 376 ([#1519](https://github.com/HankHuang0516/EClaw/issues/1519)) ([fa53650](https://github.com/HankHuang0516/EClaw/commit/fa536500ee04a343ad2961f839ceaf1c6481a75a)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for feedback and chat sections ([#1509](https://github.com/HankHuang0516/EClaw/issues/1509)) ([9860e93](https://github.com/HankHuang0516/EClaw/commit/9860e93221aa6ce5b8efbcd810b0635bba047bb2)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for files, guide, kanban sections ([#1515](https://github.com/HankHuang0516/EClaw/issues/1515)) ([72d1207](https://github.com/HankHuang0516/EClaw/commit/72d120753c051fae1b8133d413fc9624a3c31172)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for identity and avatar sections ([5bc7f07](https://github.com/HankHuang0516/EClaw/commit/5bc7f072ce8af1c2f66d57fb40557ddbdfcfeb64))
* **i18n:** add French translations for kanban, mission sections ([#1516](https://github.com/HankHuang0516/EClaw/issues/1516)) ([5295d61](https://github.com/HankHuang0516/EClaw/commit/5295d611308ac959832086460c1a0f1f0fc8dca6)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for mission, notification sections ([#1517](https://github.com/HankHuang0516/EClaw/issues/1517)) ([d3fa174](https://github.com/HankHuang0516/EClaw/commit/d3fa17408339ec0c7afefe2819e5ec1304431dc9)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for sc, files sections ([#1514](https://github.com/HankHuang0516/EClaw/issues/1514)) ([dbe17d0](https://github.com/HankHuang0516/EClaw/commit/dbe17d0d11e25be5419ce04cf51cb3c5817891bf)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for schedule sections ([#1511](https://github.com/HankHuang0516/EClaw/issues/1511)) ([cc7cc44](https://github.com/HankHuang0516/EClaw/commit/cc7cc44bd2bd30e04633e8dab8cc90c21f80ac31)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for settings and notifications ([#1508](https://github.com/HankHuang0516/EClaw/issues/1508)) ([d28d201](https://github.com/HankHuang0516/EClaw/commit/d28d20198d83f109677a91d857f54ac7dd9f5277)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for settings sections ([#1518](https://github.com/HankHuang0516/EClaw/issues/1518)) ([c4bbbdc](https://github.com/HankHuang0516/EClaw/commit/c4bbbdc1d3098fe8c3e72c2d4b2ce5e4ce7506a9)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for slots, webhook, borrow sections ([#1506](https://github.com/HankHuang0516/EClaw/issues/1506)) ([9920a2b](https://github.com/HankHuang0516/EClaw/commit/9920a2b85ab19be1d8f27df738080ef9f837fd63))
* **i18n:** add German translations - batch 1 (portal, nav, landing, ent) ([#1520](https://github.com/HankHuang0516/EClaw/issues/1520)) ([527e2ce](https://github.com/HankHuang0516/EClaw/commit/527e2ce50f97339d6b4072a5e227ab622d467959))
* **i18n:** add German translations - batch 10 (remaining notif, broadcast, settings keys) ([#1529](https://github.com/HankHuang0516/EClaw/issues/1529)) ([8e8b721](https://github.com/HankHuang0516/EClaw/commit/8e8b72138b98c276056a4e568c3d93a89edf54b8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 11 (chat_ keys) ([#1530](https://github.com/HankHuang0516/EClaw/issues/1530)) ([6451d98](https://github.com/HankHuang0516/EClaw/commit/6451d98fd879c98ccb12f9222d5fbe88162ba0e4)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 12 (feedback_ keys) ([#1531](https://github.com/HankHuang0516/EClaw/issues/1531)) ([f473f49](https://github.com/HankHuang0516/EClaw/commit/f473f496251fa6ba8776350d259dcdb08ad31343)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 13 (remaining feedback_ keys) ([#1532](https://github.com/HankHuang0516/EClaw/issues/1532)) ([5d313d9](https://github.com/HankHuang0516/EClaw/commit/5d313d956d33dd816b38bf7fac087782c0f0f0c5)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 14 (slash_ keys) ([#1533](https://github.com/HankHuang0516/EClaw/issues/1533)) ([3c0abc5](https://github.com/HankHuang0516/EClaw/commit/3c0abc54fb1e2c983ad644203a59b1838c757d72)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 15 (message_, webhook_, maintenance_ keys) ([c39a667](https://github.com/HankHuang0516/EClaw/commit/c39a667999b2b98a8b6d4cde539d34e235ca3ba4))
* **i18n:** add German translations - batch 16 (nav_, channel_, dashboard_ keys) ([#1535](https://github.com/HankHuang0516/EClaw/issues/1535)) ([ae7da25](https://github.com/HankHuang0516/EClaw/commit/ae7da25372dd9d210aa70770eec8973977496f2c)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 17 (sched_ keys) ([#1536](https://github.com/HankHuang0516/EClaw/issues/1536)) ([063bf50](https://github.com/HankHuang0516/EClaw/commit/063bf502cb12a67e9a09fdfc8b4e18424d3b6e76)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 18 (remaining sched_, common_ keys) ([#1537](https://github.com/HankHuang0516/EClaw/issues/1537)) ([56c669b](https://github.com/HankHuang0516/EClaw/commit/56c669be444d472d845132bc9827cda7232a9024)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 19 (files_, ai_ keys) ([#1538](https://github.com/HankHuang0516/EClaw/issues/1538)) ([e7a7006](https://github.com/HankHuang0516/EClaw/commit/e7a70060ac3bdfd8f11df9650be9bcb334c32d8f)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 2 (ent_ec, info, qs sections) ([#1521](https://github.com/HankHuang0516/EClaw/issues/1521)) ([b3b2631](https://github.com/HankHuang0516/EClaw/commit/b3b26312d6748b6ea242d88e4bdc26162a2cba2c)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 20 (delete_, screen_ keys) ([#1539](https://github.com/HankHuang0516/EClaw/issues/1539)) ([6d61be0](https://github.com/HankHuang0516/EClaw/commit/6d61be0954b294c07db26ce74ed84bfc6fea68bd)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 21 (toast_ keys) ([#1540](https://github.com/HankHuang0516/EClaw/issues/1540)) ([d1f0056](https://github.com/HankHuang0516/EClaw/commit/d1f005684e9b55a33f940c37daacbf682660720d)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 22 (skill_, soul_, rule_, env_, kanban_, rn_ keys) ([#1541](https://github.com/HankHuang0516/EClaw/issues/1541)) ([023f865](https://github.com/HankHuang0516/EClaw/commit/023f865cfb912b42915e44684b42b9c13eef026e)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 23 (kb_col_ keys) ([#1542](https://github.com/HankHuang0516/EClaw/issues/1542)) ([905ee78](https://github.com/HankHuang0516/EClaw/commit/905ee78c3afc345a8987de9700e28cd066f439c4)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 24 (env_, contrib_, community_ keys) ([d8c29ce](https://github.com/HankHuang0516/EClaw/commit/d8c29ce7655fb768da701635eee55824f5439046))
* **i18n:** add German translations - batch 27 (guide_channel_ keys) ([#1544](https://github.com/HankHuang0516/EClaw/issues/1544)) ([3bf46b1](https://github.com/HankHuang0516/EClaw/commit/3bf46b1969e441d2f38c5adc5c7304b3f5786bee)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 28 (guide_agentcard_ keys, 51 keys) ([#1545](https://github.com/HankHuang0516/EClaw/issues/1545)) ([db52003](https://github.com/HankHuang0516/EClaw/commit/db52003a4766a18241903e0dd253113df6265ac6)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 29 (guide_bp_ Bot Plaza keys, 42 keys) ([#1546](https://github.com/HankHuang0516/EClaw/issues/1546)) ([cafb4c8](https://github.com/HankHuang0516/EClaw/commit/cafb4c88952aa0b937441902d77ce4c602b58af5)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 3 (guide, demo, faq sections) ([#1522](https://github.com/HankHuang0516/EClaw/issues/1522)) ([e912fba](https://github.com/HankHuang0516/EClaw/commit/e912fbab6399d100765d2013b2214345a31e273d)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 30 (guide_crossdevice_ + guide_channel_warning_1, 68 keys) ([#1547](https://github.com/HankHuang0516/EClaw/issues/1547)) ([e0ea9be](https://github.com/HankHuang0516/EClaw/commit/e0ea9beef1702671483c0ce91798e379d08fe904)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 31 (guide_ec_ E-Commerce keys, 85 keys) ([#1548](https://github.com/HankHuang0516/EClaw/issues/1548)) ([6fa35d0](https://github.com/HankHuang0516/EClaw/commit/6fa35d00ef581f92f4c049b17ad1267b6ebaea75)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 32 (guide_features_ + guide_envvars_, 95 keys) ([#1549](https://github.com/HankHuang0516/EClaw/issues/1549)) ([aab6c00](https://github.com/HankHuang0516/EClaw/commit/aab6c00d71d7113da8cf72114bce83fea8060454)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 4 (more guide sections) ([#1523](https://github.com/HankHuang0516/EClaw/issues/1523)) ([c55b3a8](https://github.com/HankHuang0516/EClaw/commit/c55b3a88a9db5ce807e5b3e8461b81efcd624337)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 5 (login, settings, terms sections) ([#1524](https://github.com/HankHuang0516/EClaw/issues/1524)) ([38167d1](https://github.com/HankHuang0516/EClaw/commit/38167d1cb7875d5f1a5ba2376c9bde3c57e09abf)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 6 (footer, faq, rn sections) ([#1525](https://github.com/HankHuang0516/EClaw/issues/1525)) ([d968a6f](https://github.com/HankHuang0516/EClaw/commit/d968a6fbc0e659d526ee5ce0a546fd097311ac55)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 7 (dash_xd, dash_id sections) ([#1526](https://github.com/HankHuang0516/EClaw/issues/1526)) ([ded1e29](https://github.com/HankHuang0516/EClaw/commit/ded1e290bca3301467f95725087175d35f4b2b0c)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 8 (remaining dash_ keys) ([#1527](https://github.com/HankHuang0516/EClaw/issues/1527)) ([ce971c2](https://github.com/HankHuang0516/EClaw/commit/ce971c2d95f8baae497fac28bf5dc3990262b5dc)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 9 (borrow, notif sections) ([#1528](https://github.com/HankHuang0516/EClaw/issues/1528)) ([81913a3](https://github.com/HankHuang0516/EClaw/commit/81913a3cd92e86eb44f4268e9fe29ce7fc54a49a)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **channel:** include mediaUrl in channel push text field ([#1591](https://github.com/HankHuang0516/EClaw/issues/1591)) ([8e9b233](https://github.com/HankHuang0516/EClaw/commit/8e9b23362452a7c8d53514767f8b946cf76638c8))
* strict broadcast grouping by entity_id ([82e8456](https://github.com/HankHuang0516/EClaw/commit/82e8456bf01cb68002afd1bc2f2f2e22944d84fb))
* strict broadcast grouping by entity_id ([#1582](https://github.com/HankHuang0516/EClaw/issues/1582)) ([dd6c37e](https://github.com/HankHuang0516/EClaw/commit/dd6c37e54c4bdf8265df633dedefb27f0c9ab851))

# [1.878.0](https://github.com/HankHuang0516/EClaw/compare/v1.877.0...v1.878.0) (2026-04-01)


### Bug Fixes

* synthetic DOMContentLoaded trigger in activateBlockedScripts ([20dd9f1](https://github.com/HankHuang0516/EClaw/commit/20dd9f1c6be03352e40f7b440deda190644349f5))
* synthetic DOMContentLoaded trigger in activateBlockedScripts ([#1553](https://github.com/HankHuang0516/EClaw/issues/1553)) ([7a9ced3](https://github.com/HankHuang0516/EClaw/commit/7a9ced35819673144d22b530166974cf1767d788))
* UTF-8-safe base64 decoding for blocked scripts + WebView encoding hardening ([#1551](https://github.com/HankHuang0516/EClaw/issues/1551)) ([9ee3ce0](https://github.com/HankHuang0516/EClaw/commit/9ee3ce049815b0e7a3a8d224b09a86b72026bb23))


### Features

* **mission:** add DELETE /note/:id endpoint ([7890a1f](https://github.com/HankHuang0516/EClaw/commit/7890a1fa2077ffcaa2096c16baef19aa85838c8f))
* **i18n:** add French translations for borrow and settings sections ([#1507](https://github.com/HankHuang0516/EClaw/issues/1507)) ([3222f66](https://github.com/HankHuang0516/EClaw/commit/3222f66532704718a56a802509b37ea0226a91c7)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for cardholder and contacts sections ([#1513](https://github.com/HankHuang0516/EClaw/issues/1513)) ([fd03424](https://github.com/HankHuang0516/EClaw/commit/fd034248404e3f7be0c2bb98859571e105bc7bc8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for chat and schedule sections ([#1510](https://github.com/HankHuang0516/EClaw/issues/1510)) ([777be93](https://github.com/HankHuang0516/EClaw/commit/777be93e9605cbbc3388c6d62d6f4b2f6043cabf)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for common, error, settings sections - batch 376 ([#1519](https://github.com/HankHuang0516/EClaw/issues/1519)) ([fa53650](https://github.com/HankHuang0516/EClaw/commit/fa536500ee04a343ad2961f839ceaf1c6481a75a)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for feedback and chat sections ([#1509](https://github.com/HankHuang0516/EClaw/issues/1509)) ([9860e93](https://github.com/HankHuang0516/EClaw/commit/9860e93221aa6ce5b8efbcd810b0635bba047bb2)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for files, guide, kanban sections ([#1515](https://github.com/HankHuang0516/EClaw/issues/1515)) ([72d1207](https://github.com/HankHuang0516/EClaw/commit/72d120753c051fae1b8133d413fc9624a3c31172)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for identity and avatar sections ([5bc7f07](https://github.com/HankHuang0516/EClaw/commit/5bc7f072ce8af1c2f66d57fb40557ddbdfcfeb64))
* **i18n:** add French translations for kanban, mission sections ([#1516](https://github.com/HankHuang0516/EClaw/issues/1516)) ([5295d61](https://github.com/HankHuang0516/EClaw/commit/5295d611308ac959832086460c1a0f1f0fc8dca6)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for mission, notification sections ([#1517](https://github.com/HankHuang0516/EClaw/issues/1517)) ([d3fa174](https://github.com/HankHuang0516/EClaw/commit/d3fa17408339ec0c7afefe2819e5ec1304431dc9)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for sc, files sections ([#1514](https://github.com/HankHuang0516/EClaw/issues/1514)) ([dbe17d0](https://github.com/HankHuang0516/EClaw/commit/dbe17d0d11e25be5419ce04cf51cb3c5817891bf)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for schedule sections ([#1511](https://github.com/HankHuang0516/EClaw/issues/1511)) ([cc7cc44](https://github.com/HankHuang0516/EClaw/commit/cc7cc44bd2bd30e04633e8dab8cc90c21f80ac31)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for settings and notifications ([#1508](https://github.com/HankHuang0516/EClaw/issues/1508)) ([d28d201](https://github.com/HankHuang0516/EClaw/commit/d28d20198d83f109677a91d857f54ac7dd9f5277)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for settings sections ([#1518](https://github.com/HankHuang0516/EClaw/issues/1518)) ([c4bbbdc](https://github.com/HankHuang0516/EClaw/commit/c4bbbdc1d3098fe8c3e72c2d4b2ce5e4ce7506a9)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for slots, webhook, borrow sections ([#1506](https://github.com/HankHuang0516/EClaw/issues/1506)) ([9920a2b](https://github.com/HankHuang0516/EClaw/commit/9920a2b85ab19be1d8f27df738080ef9f837fd63))
* **i18n:** add German translations - batch 1 (portal, nav, landing, ent) ([#1520](https://github.com/HankHuang0516/EClaw/issues/1520)) ([527e2ce](https://github.com/HankHuang0516/EClaw/commit/527e2ce50f97339d6b4072a5e227ab622d467959))
* **i18n:** add German translations - batch 10 (remaining notif, broadcast, settings keys) ([#1529](https://github.com/HankHuang0516/EClaw/issues/1529)) ([8e8b721](https://github.com/HankHuang0516/EClaw/commit/8e8b72138b98c276056a4e568c3d93a89edf54b8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 11 (chat_ keys) ([#1530](https://github.com/HankHuang0516/EClaw/issues/1530)) ([6451d98](https://github.com/HankHuang0516/EClaw/commit/6451d98fd879c98ccb12f9222d5fbe88162ba0e4)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 12 (feedback_ keys) ([#1531](https://github.com/HankHuang0516/EClaw/issues/1531)) ([f473f49](https://github.com/HankHuang0516/EClaw/commit/f473f496251fa6ba8776350d259dcdb08ad31343)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 13 (remaining feedback_ keys) ([#1532](https://github.com/HankHuang0516/EClaw/issues/1532)) ([5d313d9](https://github.com/HankHuang0516/EClaw/commit/5d313d956d33dd816b38bf7fac087782c0f0f0c5)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 14 (slash_ keys) ([#1533](https://github.com/HankHuang0516/EClaw/issues/1533)) ([3c0abc5](https://github.com/HankHuang0516/EClaw/commit/3c0abc54fb1e2c983ad644203a59b1838c757d72)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 15 (message_, webhook_, maintenance_ keys) ([c39a667](https://github.com/HankHuang0516/EClaw/commit/c39a667999b2b98a8b6d4cde539d34e235ca3ba4))
* **i18n:** add German translations - batch 16 (nav_, channel_, dashboard_ keys) ([#1535](https://github.com/HankHuang0516/EClaw/issues/1535)) ([ae7da25](https://github.com/HankHuang0516/EClaw/commit/ae7da25372dd9d210aa70770eec8973977496f2c)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 17 (sched_ keys) ([#1536](https://github.com/HankHuang0516/EClaw/issues/1536)) ([063bf50](https://github.com/HankHuang0516/EClaw/commit/063bf502cb12a67e9a09fdfc8b4e18424d3b6e76)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 18 (remaining sched_, common_ keys) ([#1537](https://github.com/HankHuang0516/EClaw/issues/1537)) ([56c669b](https://github.com/HankHuang0516/EClaw/commit/56c669be444d472d845132bc9827cda7232a9024)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 19 (files_, ai_ keys) ([#1538](https://github.com/HankHuang0516/EClaw/issues/1538)) ([e7a7006](https://github.com/HankHuang0516/EClaw/commit/e7a70060ac3bdfd8f11df9650be9bcb334c32d8f)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 2 (ent_ec, info, qs sections) ([#1521](https://github.com/HankHuang0516/EClaw/issues/1521)) ([b3b2631](https://github.com/HankHuang0516/EClaw/commit/b3b26312d6748b6ea242d88e4bdc26162a2cba2c)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 20 (delete_, screen_ keys) ([#1539](https://github.com/HankHuang0516/EClaw/issues/1539)) ([6d61be0](https://github.com/HankHuang0516/EClaw/commit/6d61be0954b294c07db26ce74ed84bfc6fea68bd)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 21 (toast_ keys) ([#1540](https://github.com/HankHuang0516/EClaw/issues/1540)) ([d1f0056](https://github.com/HankHuang0516/EClaw/commit/d1f005684e9b55a33f940c37daacbf682660720d)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 22 (skill_, soul_, rule_, env_, kanban_, rn_ keys) ([#1541](https://github.com/HankHuang0516/EClaw/issues/1541)) ([023f865](https://github.com/HankHuang0516/EClaw/commit/023f865cfb912b42915e44684b42b9c13eef026e)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 23 (kb_col_ keys) ([#1542](https://github.com/HankHuang0516/EClaw/issues/1542)) ([905ee78](https://github.com/HankHuang0516/EClaw/commit/905ee78c3afc345a8987de9700e28cd066f439c4)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 24 (env_, contrib_, community_ keys) ([d8c29ce](https://github.com/HankHuang0516/EClaw/commit/d8c29ce7655fb768da701635eee55824f5439046))
* **i18n:** add German translations - batch 27 (guide_channel_ keys) ([#1544](https://github.com/HankHuang0516/EClaw/issues/1544)) ([3bf46b1](https://github.com/HankHuang0516/EClaw/commit/3bf46b1969e441d2f38c5adc5c7304b3f5786bee)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 28 (guide_agentcard_ keys, 51 keys) ([#1545](https://github.com/HankHuang0516/EClaw/issues/1545)) ([db52003](https://github.com/HankHuang0516/EClaw/commit/db52003a4766a18241903e0dd253113df6265ac6)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 29 (guide_bp_ Bot Plaza keys, 42 keys) ([#1546](https://github.com/HankHuang0516/EClaw/issues/1546)) ([cafb4c8](https://github.com/HankHuang0516/EClaw/commit/cafb4c88952aa0b937441902d77ce4c602b58af5)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 3 (guide, demo, faq sections) ([#1522](https://github.com/HankHuang0516/EClaw/issues/1522)) ([e912fba](https://github.com/HankHuang0516/EClaw/commit/e912fbab6399d100765d2013b2214345a31e273d)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 30 (guide_crossdevice_ + guide_channel_warning_1, 68 keys) ([#1547](https://github.com/HankHuang0516/EClaw/issues/1547)) ([e0ea9be](https://github.com/HankHuang0516/EClaw/commit/e0ea9beef1702671483c0ce91798e379d08fe904)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 31 (guide_ec_ E-Commerce keys, 85 keys) ([#1548](https://github.com/HankHuang0516/EClaw/issues/1548)) ([6fa35d0](https://github.com/HankHuang0516/EClaw/commit/6fa35d00ef581f92f4c049b17ad1267b6ebaea75)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 32 (guide_features_ + guide_envvars_, 95 keys) ([#1549](https://github.com/HankHuang0516/EClaw/issues/1549)) ([aab6c00](https://github.com/HankHuang0516/EClaw/commit/aab6c00d71d7113da8cf72114bce83fea8060454)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 4 (more guide sections) ([#1523](https://github.com/HankHuang0516/EClaw/issues/1523)) ([c55b3a8](https://github.com/HankHuang0516/EClaw/commit/c55b3a88a9db5ce807e5b3e8461b81efcd624337)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 5 (login, settings, terms sections) ([#1524](https://github.com/HankHuang0516/EClaw/issues/1524)) ([38167d1](https://github.com/HankHuang0516/EClaw/commit/38167d1cb7875d5f1a5ba2376c9bde3c57e09abf)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 6 (footer, faq, rn sections) ([#1525](https://github.com/HankHuang0516/EClaw/issues/1525)) ([d968a6f](https://github.com/HankHuang0516/EClaw/commit/d968a6fbc0e659d526ee5ce0a546fd097311ac55)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 7 (dash_xd, dash_id sections) ([#1526](https://github.com/HankHuang0516/EClaw/issues/1526)) ([ded1e29](https://github.com/HankHuang0516/EClaw/commit/ded1e290bca3301467f95725087175d35f4b2b0c)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 8 (remaining dash_ keys) ([#1527](https://github.com/HankHuang0516/EClaw/issues/1527)) ([ce971c2](https://github.com/HankHuang0516/EClaw/commit/ce971c2d95f8baae497fac28bf5dc3990262b5dc)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 9 (borrow, notif sections) ([#1528](https://github.com/HankHuang0516/EClaw/issues/1528)) ([81913a3](https://github.com/HankHuang0516/EClaw/commit/81913a3cd92e86eb44f4268e9fe29ce7fc54a49a)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **channel:** include mediaUrl in channel push text field ([#1591](https://github.com/HankHuang0516/EClaw/issues/1591)) ([8e9b233](https://github.com/HankHuang0516/EClaw/commit/8e9b23362452a7c8d53514767f8b946cf76638c8))
* strict broadcast grouping by entity_id ([82e8456](https://github.com/HankHuang0516/EClaw/commit/82e8456bf01cb68002afd1bc2f2f2e22944d84fb))
* strict broadcast grouping by entity_id ([#1582](https://github.com/HankHuang0516/EClaw/issues/1582)) ([dd6c37e](https://github.com/HankHuang0516/EClaw/commit/dd6c37e54c4bdf8265df633dedefb27f0c9ab851))

# [1.878.0](https://github.com/HankHuang0516/EClaw/compare/v1.877.0...v1.878.0) (2026-04-01)


### Bug Fixes

* synthetic DOMContentLoaded trigger in activateBlockedScripts ([20dd9f1](https://github.com/HankHuang0516/EClaw/commit/20dd9f1c6be03352e40f7b440deda190644349f5))
* synthetic DOMContentLoaded trigger in activateBlockedScripts ([#1553](https://github.com/HankHuang0516/EClaw/issues/1553)) ([7a9ced3](https://github.com/HankHuang0516/EClaw/commit/7a9ced35819673144d22b530166974cf1767d788))
* UTF-8-safe base64 decoding for blocked scripts + WebView encoding hardening ([#1551](https://github.com/HankHuang0516/EClaw/issues/1551)) ([9ee3ce0](https://github.com/HankHuang0516/EClaw/commit/9ee3ce049815b0e7a3a8d224b09a86b72026bb23))


### Features

* **mission:** add DELETE /note/:id endpoint ([7890a1f](https://github.com/HankHuang0516/EClaw/commit/7890a1fa2077ffcaa2096c16baef19aa85838c8f))
* **i18n:** add French translations for borrow and settings sections ([#1507](https://github.com/HankHuang0516/EClaw/issues/1507)) ([3222f66](https://github.com/HankHuang0516/EClaw/commit/3222f66532704718a56a802509b37ea0226a91c7)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for cardholder and contacts sections ([#1513](https://github.com/HankHuang0516/EClaw/issues/1513)) ([fd03424](https://github.com/HankHuang0516/EClaw/commit/fd034248404e3f7be0c2bb98859571e105bc7bc8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for chat and schedule sections ([#1510](https://github.com/HankHuang0516/EClaw/issues/1510)) ([777be93](https://github.com/HankHuang0516/EClaw/commit/777be93e9605cbbc3388c6d62d6f4b2f6043cabf)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for common, error, settings sections - batch 376 ([#1519](https://github.com/HankHuang0516/EClaw/issues/1519)) ([fa53650](https://github.com/HankHuang0516/EClaw/commit/fa536500ee04a343ad2961f839ceaf1c6481a75a)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for feedback and chat sections ([#1509](https://github.com/HankHuang0516/EClaw/issues/1509)) ([9860e93](https://github.com/HankHuang0516/EClaw/commit/9860e93221aa6ce5b8efbcd810b0635bba047bb2)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for files, guide, kanban sections ([#1515](https://github.com/HankHuang0516/EClaw/issues/1515)) ([72d1207](https://github.com/HankHuang0516/EClaw/commit/72d120753c051fae1b8133d413fc9624a3c31172)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for identity and avatar sections ([5bc7f07](https://github.com/HankHuang0516/EClaw/commit/5bc7f072ce8af1c2f66d57fb40557ddbdfcfeb64))
* **i18n:** add French translations for kanban, mission sections ([#1516](https://github.com/HankHuang0516/EClaw/issues/1516)) ([5295d61](https://github.com/HankHuang0516/EClaw/commit/5295d611308ac959832086460c1a0f1f0fc8dca6)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for mission, notification sections ([#1517](https://github.com/HankHuang0516/EClaw/issues/1517)) ([d3fa174](https://github.com/HankHuang0516/EClaw/commit/d3fa17408339ec0c7afefe2819e5ec1304431dc9)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for sc, files sections ([#1514](https://github.com/HankHuang0516/EClaw/issues/1514)) ([dbe17d0](https://github.com/HankHuang0516/EClaw/commit/dbe17d0d11e25be5419ce04cf51cb3c5817891bf)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for schedule sections ([#1511](https://github.com/HankHuang0516/EClaw/issues/1511)) ([cc7cc44](https://github.com/HankHuang0516/EClaw/commit/cc7cc44bd2bd30e04633e8dab8cc90c21f80ac31)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for settings and notifications ([#1508](https://github.com/HankHuang0516/EClaw/issues/1508)) ([d28d201](https://github.com/HankHuang0516/EClaw/commit/d28d20198d83f109677a91d857f54ac7dd9f5277)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for settings sections ([#1518](https://github.com/HankHuang0516/EClaw/issues/1518)) ([c4bbbdc](https://github.com/HankHuang0516/EClaw/commit/c4bbbdc1d3098fe8c3e72c2d4b2ce5e4ce7506a9)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for slots, webhook, borrow sections ([#1506](https://github.com/HankHuang0516/EClaw/issues/1506)) ([9920a2b](https://github.com/HankHuang0516/EClaw/commit/9920a2b85ab19be1d8f27df738080ef9f837fd63))
* **i18n:** add German translations - batch 1 (portal, nav, landing, ent) ([#1520](https://github.com/HankHuang0516/EClaw/issues/1520)) ([527e2ce](https://github.com/HankHuang0516/EClaw/commit/527e2ce50f97339d6b4072a5e227ab622d467959))
* **i18n:** add German translations - batch 10 (remaining notif, broadcast, settings keys) ([#1529](https://github.com/HankHuang0516/EClaw/issues/1529)) ([8e8b721](https://github.com/HankHuang0516/EClaw/commit/8e8b72138b98c276056a4e568c3d93a89edf54b8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 11 (chat_ keys) ([#1530](https://github.com/HankHuang0516/EClaw/issues/1530)) ([6451d98](https://github.com/HankHuang0516/EClaw/commit/6451d98fd879c98ccb12f9222d5fbe88162ba0e4)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 12 (feedback_ keys) ([#1531](https://github.com/HankHuang0516/EClaw/issues/1531)) ([f473f49](https://github.com/HankHuang0516/EClaw/commit/f473f496251fa6ba8776350d259dcdb08ad31343)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 13 (remaining feedback_ keys) ([#1532](https://github.com/HankHuang0516/EClaw/issues/1532)) ([5d313d9](https://github.com/HankHuang0516/EClaw/commit/5d313d956d33dd816b38bf7fac087782c0f0f0c5)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 14 (slash_ keys) ([#1533](https://github.com/HankHuang0516/EClaw/issues/1533)) ([3c0abc5](https://github.com/HankHuang0516/EClaw/commit/3c0abc54fb1e2c983ad644203a59b1838c757d72)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 15 (message_, webhook_, maintenance_ keys) ([c39a667](https://github.com/HankHuang0516/EClaw/commit/c39a667999b2b98a8b6d4cde539d34e235ca3ba4))
* **i18n:** add German translations - batch 16 (nav_, channel_, dashboard_ keys) ([#1535](https://github.com/HankHuang0516/EClaw/issues/1535)) ([ae7da25](https://github.com/HankHuang0516/EClaw/commit/ae7da25372dd9d210aa70770eec8973977496f2c)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 17 (sched_ keys) ([#1536](https://github.com/HankHuang0516/EClaw/issues/1536)) ([063bf50](https://github.com/HankHuang0516/EClaw/commit/063bf502cb12a67e9a09fdfc8b4e18424d3b6e76)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 18 (remaining sched_, common_ keys) ([#1537](https://github.com/HankHuang0516/EClaw/issues/1537)) ([56c669b](https://github.com/HankHuang0516/EClaw/commit/56c669be444d472d845132bc9827cda7232a9024)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 19 (files_, ai_ keys) ([#1538](https://github.com/HankHuang0516/EClaw/issues/1538)) ([e7a7006](https://github.com/HankHuang0516/EClaw/commit/e7a70060ac3bdfd8f11df9650be9bcb334c32d8f)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 2 (ent_ec, info, qs sections) ([#1521](https://github.com/HankHuang0516/EClaw/issues/1521)) ([b3b2631](https://github.com/HankHuang0516/EClaw/commit/b3b26312d6748b6ea242d88e4bdc26162a2cba2c)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 20 (delete_, screen_ keys) ([#1539](https://github.com/HankHuang0516/EClaw/issues/1539)) ([6d61be0](https://github.com/HankHuang0516/EClaw/commit/6d61be0954b294c07db26ce74ed84bfc6fea68bd)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 21 (toast_ keys) ([#1540](https://github.com/HankHuang0516/EClaw/issues/1540)) ([d1f0056](https://github.com/HankHuang0516/EClaw/commit/d1f005684e9b55a33f940c37daacbf682660720d)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 22 (skill_, soul_, rule_, env_, kanban_, rn_ keys) ([#1541](https://github.com/HankHuang0516/EClaw/issues/1541)) ([023f865](https://github.com/HankHuang0516/EClaw/commit/023f865cfb912b42915e44684b42b9c13eef026e)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 23 (kb_col_ keys) ([#1542](https://github.com/HankHuang0516/EClaw/issues/1542)) ([905ee78](https://github.com/HankHuang0516/EClaw/commit/905ee78c3afc345a8987de9700e28cd066f439c4)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 24 (env_, contrib_, community_ keys) ([d8c29ce](https://github.com/HankHuang0516/EClaw/commit/d8c29ce7655fb768da701635eee55824f5439046))
* **i18n:** add German translations - batch 27 (guide_channel_ keys) ([#1544](https://github.com/HankHuang0516/EClaw/issues/1544)) ([3bf46b1](https://github.com/HankHuang0516/EClaw/commit/3bf46b1969e441d2f38c5adc5c7304b3f5786bee)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 28 (guide_agentcard_ keys, 51 keys) ([#1545](https://github.com/HankHuang0516/EClaw/issues/1545)) ([db52003](https://github.com/HankHuang0516/EClaw/commit/db52003a4766a18241903e0dd253113df6265ac6)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 29 (guide_bp_ Bot Plaza keys, 42 keys) ([#1546](https://github.com/HankHuang0516/EClaw/issues/1546)) ([cafb4c8](https://github.com/HankHuang0516/EClaw/commit/cafb4c88952aa0b937441902d77ce4c602b58af5)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 3 (guide, demo, faq sections) ([#1522](https://github.com/HankHuang0516/EClaw/issues/1522)) ([e912fba](https://github.com/HankHuang0516/EClaw/commit/e912fbab6399d100765d2013b2214345a31e273d)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 30 (guide_crossdevice_ + guide_channel_warning_1, 68 keys) ([#1547](https://github.com/HankHuang0516/EClaw/issues/1547)) ([e0ea9be](https://github.com/HankHuang0516/EClaw/commit/e0ea9beef1702671483c0ce91798e379d08fe904)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 31 (guide_ec_ E-Commerce keys, 85 keys) ([#1548](https://github.com/HankHuang0516/EClaw/issues/1548)) ([6fa35d0](https://github.com/HankHuang0516/EClaw/commit/6fa35d00ef581f92f4c049b17ad1267b6ebaea75)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 32 (guide_features_ + guide_envvars_, 95 keys) ([#1549](https://github.com/HankHuang0516/EClaw/issues/1549)) ([aab6c00](https://github.com/HankHuang0516/EClaw/commit/aab6c00d71d7113da8cf72114bce83fea8060454)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 4 (more guide sections) ([#1523](https://github.com/HankHuang0516/EClaw/issues/1523)) ([c55b3a8](https://github.com/HankHuang0516/EClaw/commit/c55b3a88a9db5ce807e5b3e8461b81efcd624337)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 5 (login, settings, terms sections) ([#1524](https://github.com/HankHuang0516/EClaw/issues/1524)) ([38167d1](https://github.com/HankHuang0516/EClaw/commit/38167d1cb7875d5f1a5ba2376c9bde3c57e09abf)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 6 (footer, faq, rn sections) ([#1525](https://github.com/HankHuang0516/EClaw/issues/1525)) ([d968a6f](https://github.com/HankHuang0516/EClaw/commit/d968a6fbc0e659d526ee5ce0a546fd097311ac55)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 7 (dash_xd, dash_id sections) ([#1526](https://github.com/HankHuang0516/EClaw/issues/1526)) ([ded1e29](https://github.com/HankHuang0516/EClaw/commit/ded1e290bca3301467f95725087175d35f4b2b0c)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 8 (remaining dash_ keys) ([#1527](https://github.com/HankHuang0516/EClaw/issues/1527)) ([ce971c2](https://github.com/HankHuang0516/EClaw/commit/ce971c2d95f8baae497fac28bf5dc3990262b5dc)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 9 (borrow, notif sections) ([#1528](https://github.com/HankHuang0516/EClaw/issues/1528)) ([81913a3](https://github.com/HankHuang0516/EClaw/commit/81913a3cd92e86eb44f4268e9fe29ce7fc54a49a)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* strict broadcast grouping by entity_id ([82e8456](https://github.com/HankHuang0516/EClaw/commit/82e8456bf01cb68002afd1bc2f2f2e22944d84fb))
* strict broadcast grouping by entity_id ([#1582](https://github.com/HankHuang0516/EClaw/issues/1582)) ([dd6c37e](https://github.com/HankHuang0516/EClaw/commit/dd6c37e54c4bdf8265df633dedefb27f0c9ab851))

# [1.878.0](https://github.com/HankHuang0516/EClaw/compare/v1.877.0...v1.878.0) (2026-04-01)


### Bug Fixes

* synthetic DOMContentLoaded trigger in activateBlockedScripts ([#1553](https://github.com/HankHuang0516/EClaw/issues/1553)) ([7a9ced3](https://github.com/HankHuang0516/EClaw/commit/7a9ced35819673144d22b530166974cf1767d788))
* UTF-8-safe base64 decoding for blocked scripts + WebView encoding hardening ([#1551](https://github.com/HankHuang0516/EClaw/issues/1551)) ([9ee3ce0](https://github.com/HankHuang0516/EClaw/commit/9ee3ce049815b0e7a3a8d224b09a86b72026bb23))


### Features

* **i18n:** add French translations for borrow and settings sections ([#1507](https://github.com/HankHuang0516/EClaw/issues/1507)) ([3222f66](https://github.com/HankHuang0516/EClaw/commit/3222f66532704718a56a802509b37ea0226a91c7)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for cardholder and contacts sections ([#1513](https://github.com/HankHuang0516/EClaw/issues/1513)) ([fd03424](https://github.com/HankHuang0516/EClaw/commit/fd034248404e3f7be0c2bb98859571e105bc7bc8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for chat and schedule sections ([#1510](https://github.com/HankHuang0516/EClaw/issues/1510)) ([777be93](https://github.com/HankHuang0516/EClaw/commit/777be93e9605cbbc3388c6d62d6f4b2f6043cabf)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for common, error, settings sections - batch 376 ([#1519](https://github.com/HankHuang0516/EClaw/issues/1519)) ([fa53650](https://github.com/HankHuang0516/EClaw/commit/fa536500ee04a343ad2961f839ceaf1c6481a75a)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for feedback and chat sections ([#1509](https://github.com/HankHuang0516/EClaw/issues/1509)) ([9860e93](https://github.com/HankHuang0516/EClaw/commit/9860e93221aa6ce5b8efbcd810b0635bba047bb2)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for files, guide, kanban sections ([#1515](https://github.com/HankHuang0516/EClaw/issues/1515)) ([72d1207](https://github.com/HankHuang0516/EClaw/commit/72d120753c051fae1b8133d413fc9624a3c31172)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for identity and avatar sections ([5bc7f07](https://github.com/HankHuang0516/EClaw/commit/5bc7f072ce8af1c2f66d57fb40557ddbdfcfeb64))
* **i18n:** add French translations for kanban, mission sections ([#1516](https://github.com/HankHuang0516/EClaw/issues/1516)) ([5295d61](https://github.com/HankHuang0516/EClaw/commit/5295d611308ac959832086460c1a0f1f0fc8dca6)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for mission, notification sections ([#1517](https://github.com/HankHuang0516/EClaw/issues/1517)) ([d3fa174](https://github.com/HankHuang0516/EClaw/commit/d3fa17408339ec0c7afefe2819e5ec1304431dc9)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for sc, files sections ([#1514](https://github.com/HankHuang0516/EClaw/issues/1514)) ([dbe17d0](https://github.com/HankHuang0516/EClaw/commit/dbe17d0d11e25be5419ce04cf51cb3c5817891bf)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for schedule sections ([#1511](https://github.com/HankHuang0516/EClaw/issues/1511)) ([cc7cc44](https://github.com/HankHuang0516/EClaw/commit/cc7cc44bd2bd30e04633e8dab8cc90c21f80ac31)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for settings and notifications ([#1508](https://github.com/HankHuang0516/EClaw/issues/1508)) ([d28d201](https://github.com/HankHuang0516/EClaw/commit/d28d20198d83f109677a91d857f54ac7dd9f5277)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for settings sections ([#1518](https://github.com/HankHuang0516/EClaw/issues/1518)) ([c4bbbdc](https://github.com/HankHuang0516/EClaw/commit/c4bbbdc1d3098fe8c3e72c2d4b2ce5e4ce7506a9)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for slots, webhook, borrow sections ([#1506](https://github.com/HankHuang0516/EClaw/issues/1506)) ([9920a2b](https://github.com/HankHuang0516/EClaw/commit/9920a2b85ab19be1d8f27df738080ef9f837fd63))
* **i18n:** add German translations - batch 1 (portal, nav, landing, ent) ([#1520](https://github.com/HankHuang0516/EClaw/issues/1520)) ([527e2ce](https://github.com/HankHuang0516/EClaw/commit/527e2ce50f97339d6b4072a5e227ab622d467959))
* **i18n:** add German translations - batch 10 (remaining notif, broadcast, settings keys) ([#1529](https://github.com/HankHuang0516/EClaw/issues/1529)) ([8e8b721](https://github.com/HankHuang0516/EClaw/commit/8e8b72138b98c276056a4e568c3d93a89edf54b8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 11 (chat_ keys) ([#1530](https://github.com/HankHuang0516/EClaw/issues/1530)) ([6451d98](https://github.com/HankHuang0516/EClaw/commit/6451d98fd879c98ccb12f9222d5fbe88162ba0e4)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 12 (feedback_ keys) ([#1531](https://github.com/HankHuang0516/EClaw/issues/1531)) ([f473f49](https://github.com/HankHuang0516/EClaw/commit/f473f496251fa6ba8776350d259dcdb08ad31343)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 13 (remaining feedback_ keys) ([#1532](https://github.com/HankHuang0516/EClaw/issues/1532)) ([5d313d9](https://github.com/HankHuang0516/EClaw/commit/5d313d956d33dd816b38bf7fac087782c0f0f0c5)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 14 (slash_ keys) ([#1533](https://github.com/HankHuang0516/EClaw/issues/1533)) ([3c0abc5](https://github.com/HankHuang0516/EClaw/commit/3c0abc54fb1e2c983ad644203a59b1838c757d72)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 15 (message_, webhook_, maintenance_ keys) ([c39a667](https://github.com/HankHuang0516/EClaw/commit/c39a667999b2b98a8b6d4cde539d34e235ca3ba4))
* **i18n:** add German translations - batch 16 (nav_, channel_, dashboard_ keys) ([#1535](https://github.com/HankHuang0516/EClaw/issues/1535)) ([ae7da25](https://github.com/HankHuang0516/EClaw/commit/ae7da25372dd9d210aa70770eec8973977496f2c)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 17 (sched_ keys) ([#1536](https://github.com/HankHuang0516/EClaw/issues/1536)) ([063bf50](https://github.com/HankHuang0516/EClaw/commit/063bf502cb12a67e9a09fdfc8b4e18424d3b6e76)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 18 (remaining sched_, common_ keys) ([#1537](https://github.com/HankHuang0516/EClaw/issues/1537)) ([56c669b](https://github.com/HankHuang0516/EClaw/commit/56c669be444d472d845132bc9827cda7232a9024)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 19 (files_, ai_ keys) ([#1538](https://github.com/HankHuang0516/EClaw/issues/1538)) ([e7a7006](https://github.com/HankHuang0516/EClaw/commit/e7a70060ac3bdfd8f11df9650be9bcb334c32d8f)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 2 (ent_ec, info, qs sections) ([#1521](https://github.com/HankHuang0516/EClaw/issues/1521)) ([b3b2631](https://github.com/HankHuang0516/EClaw/commit/b3b26312d6748b6ea242d88e4bdc26162a2cba2c)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 20 (delete_, screen_ keys) ([#1539](https://github.com/HankHuang0516/EClaw/issues/1539)) ([6d61be0](https://github.com/HankHuang0516/EClaw/commit/6d61be0954b294c07db26ce74ed84bfc6fea68bd)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 21 (toast_ keys) ([#1540](https://github.com/HankHuang0516/EClaw/issues/1540)) ([d1f0056](https://github.com/HankHuang0516/EClaw/commit/d1f005684e9b55a33f940c37daacbf682660720d)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 22 (skill_, soul_, rule_, env_, kanban_, rn_ keys) ([#1541](https://github.com/HankHuang0516/EClaw/issues/1541)) ([023f865](https://github.com/HankHuang0516/EClaw/commit/023f865cfb912b42915e44684b42b9c13eef026e)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 23 (kb_col_ keys) ([#1542](https://github.com/HankHuang0516/EClaw/issues/1542)) ([905ee78](https://github.com/HankHuang0516/EClaw/commit/905ee78c3afc345a8987de9700e28cd066f439c4)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 24 (env_, contrib_, community_ keys) ([d8c29ce](https://github.com/HankHuang0516/EClaw/commit/d8c29ce7655fb768da701635eee55824f5439046))
* **i18n:** add German translations - batch 27 (guide_channel_ keys) ([#1544](https://github.com/HankHuang0516/EClaw/issues/1544)) ([3bf46b1](https://github.com/HankHuang0516/EClaw/commit/3bf46b1969e441d2f38c5adc5c7304b3f5786bee)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 28 (guide_agentcard_ keys, 51 keys) ([#1545](https://github.com/HankHuang0516/EClaw/issues/1545)) ([db52003](https://github.com/HankHuang0516/EClaw/commit/db52003a4766a18241903e0dd253113df6265ac6)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 29 (guide_bp_ Bot Plaza keys, 42 keys) ([#1546](https://github.com/HankHuang0516/EClaw/issues/1546)) ([cafb4c8](https://github.com/HankHuang0516/EClaw/commit/cafb4c88952aa0b937441902d77ce4c602b58af5)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 3 (guide, demo, faq sections) ([#1522](https://github.com/HankHuang0516/EClaw/issues/1522)) ([e912fba](https://github.com/HankHuang0516/EClaw/commit/e912fbab6399d100765d2013b2214345a31e273d)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 30 (guide_crossdevice_ + guide_channel_warning_1, 68 keys) ([#1547](https://github.com/HankHuang0516/EClaw/issues/1547)) ([e0ea9be](https://github.com/HankHuang0516/EClaw/commit/e0ea9beef1702671483c0ce91798e379d08fe904)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 31 (guide_ec_ E-Commerce keys, 85 keys) ([#1548](https://github.com/HankHuang0516/EClaw/issues/1548)) ([6fa35d0](https://github.com/HankHuang0516/EClaw/commit/6fa35d00ef581f92f4c049b17ad1267b6ebaea75)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 32 (guide_features_ + guide_envvars_, 95 keys) ([#1549](https://github.com/HankHuang0516/EClaw/issues/1549)) ([aab6c00](https://github.com/HankHuang0516/EClaw/commit/aab6c00d71d7113da8cf72114bce83fea8060454)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 4 (more guide sections) ([#1523](https://github.com/HankHuang0516/EClaw/issues/1523)) ([c55b3a8](https://github.com/HankHuang0516/EClaw/commit/c55b3a88a9db5ce807e5b3e8461b81efcd624337)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 5 (login, settings, terms sections) ([#1524](https://github.com/HankHuang0516/EClaw/issues/1524)) ([38167d1](https://github.com/HankHuang0516/EClaw/commit/38167d1cb7875d5f1a5ba2376c9bde3c57e09abf)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 6 (footer, faq, rn sections) ([#1525](https://github.com/HankHuang0516/EClaw/issues/1525)) ([d968a6f](https://github.com/HankHuang0516/EClaw/commit/d968a6fbc0e659d526ee5ce0a546fd097311ac55)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 7 (dash_xd, dash_id sections) ([#1526](https://github.com/HankHuang0516/EClaw/issues/1526)) ([ded1e29](https://github.com/HankHuang0516/EClaw/commit/ded1e290bca3301467f95725087175d35f4b2b0c)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 8 (remaining dash_ keys) ([#1527](https://github.com/HankHuang0516/EClaw/issues/1527)) ([ce971c2](https://github.com/HankHuang0516/EClaw/commit/ce971c2d95f8baae497fac28bf5dc3990262b5dc)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 9 (borrow, notif sections) ([#1528](https://github.com/HankHuang0516/EClaw/issues/1528)) ([81913a3](https://github.com/HankHuang0516/EClaw/commit/81913a3cd92e86eb44f4268e9fe29ce7fc54a49a)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* strict broadcast grouping by entity_id ([#1582](https://github.com/HankHuang0516/EClaw/issues/1582)) ([dd6c37e](https://github.com/HankHuang0516/EClaw/commit/dd6c37e54c4bdf8265df633dedefb27f0c9ab851))

# [1.878.0](https://github.com/HankHuang0516/EClaw/compare/v1.877.0...v1.878.0) (2026-04-01)


### Bug Fixes

* synthetic DOMContentLoaded trigger in activateBlockedScripts ([#1553](https://github.com/HankHuang0516/EClaw/issues/1553)) ([7a9ced3](https://github.com/HankHuang0516/EClaw/commit/7a9ced35819673144d22b530166974cf1767d788))
* UTF-8-safe base64 decoding for blocked scripts + WebView encoding hardening ([#1551](https://github.com/HankHuang0516/EClaw/issues/1551)) ([9ee3ce0](https://github.com/HankHuang0516/EClaw/commit/9ee3ce049815b0e7a3a8d224b09a86b72026bb23))


### Features

* **i18n:** add French translations for borrow and settings sections ([#1507](https://github.com/HankHuang0516/EClaw/issues/1507)) ([3222f66](https://github.com/HankHuang0516/EClaw/commit/3222f66532704718a56a802509b37ea0226a91c7)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for cardholder and contacts sections ([#1513](https://github.com/HankHuang0516/EClaw/issues/1513)) ([fd03424](https://github.com/HankHuang0516/EClaw/commit/fd034248404e3f7be0c2bb98859571e105bc7bc8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for chat and schedule sections ([#1510](https://github.com/HankHuang0516/EClaw/issues/1510)) ([777be93](https://github.com/HankHuang0516/EClaw/commit/777be93e9605cbbc3388c6d62d6f4b2f6043cabf)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for common, error, settings sections - batch 376 ([#1519](https://github.com/HankHuang0516/EClaw/issues/1519)) ([fa53650](https://github.com/HankHuang0516/EClaw/commit/fa536500ee04a343ad2961f839ceaf1c6481a75a)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for feedback and chat sections ([#1509](https://github.com/HankHuang0516/EClaw/issues/1509)) ([9860e93](https://github.com/HankHuang0516/EClaw/commit/9860e93221aa6ce5b8efbcd810b0635bba047bb2)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for files, guide, kanban sections ([#1515](https://github.com/HankHuang0516/EClaw/issues/1515)) ([72d1207](https://github.com/HankHuang0516/EClaw/commit/72d120753c051fae1b8133d413fc9624a3c31172)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for identity and avatar sections ([5bc7f07](https://github.com/HankHuang0516/EClaw/commit/5bc7f072ce8af1c2f66d57fb40557ddbdfcfeb64))
* **i18n:** add French translations for kanban, mission sections ([#1516](https://github.com/HankHuang0516/EClaw/issues/1516)) ([5295d61](https://github.com/HankHuang0516/EClaw/commit/5295d611308ac959832086460c1a0f1f0fc8dca6)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for mission, notification sections ([#1517](https://github.com/HankHuang0516/EClaw/issues/1517)) ([d3fa174](https://github.com/HankHuang0516/EClaw/commit/d3fa17408339ec0c7afefe2819e5ec1304431dc9)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for sc, files sections ([#1514](https://github.com/HankHuang0516/EClaw/issues/1514)) ([dbe17d0](https://github.com/HankHuang0516/EClaw/commit/dbe17d0d11e25be5419ce04cf51cb3c5817891bf)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for schedule sections ([#1511](https://github.com/HankHuang0516/EClaw/issues/1511)) ([cc7cc44](https://github.com/HankHuang0516/EClaw/commit/cc7cc44bd2bd30e04633e8dab8cc90c21f80ac31)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for settings and notifications ([#1508](https://github.com/HankHuang0516/EClaw/issues/1508)) ([d28d201](https://github.com/HankHuang0516/EClaw/commit/d28d20198d83f109677a91d857f54ac7dd9f5277)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for settings sections ([#1518](https://github.com/HankHuang0516/EClaw/issues/1518)) ([c4bbbdc](https://github.com/HankHuang0516/EClaw/commit/c4bbbdc1d3098fe8c3e72c2d4b2ce5e4ce7506a9)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for slots, webhook, borrow sections ([#1506](https://github.com/HankHuang0516/EClaw/issues/1506)) ([9920a2b](https://github.com/HankHuang0516/EClaw/commit/9920a2b85ab19be1d8f27df738080ef9f837fd63))
* **i18n:** add German translations - batch 1 (portal, nav, landing, ent) ([#1520](https://github.com/HankHuang0516/EClaw/issues/1520)) ([527e2ce](https://github.com/HankHuang0516/EClaw/commit/527e2ce50f97339d6b4072a5e227ab622d467959))
* **i18n:** add German translations - batch 10 (remaining notif, broadcast, settings keys) ([#1529](https://github.com/HankHuang0516/EClaw/issues/1529)) ([8e8b721](https://github.com/HankHuang0516/EClaw/commit/8e8b72138b98c276056a4e568c3d93a89edf54b8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 11 (chat_ keys) ([#1530](https://github.com/HankHuang0516/EClaw/issues/1530)) ([6451d98](https://github.com/HankHuang0516/EClaw/commit/6451d98fd879c98ccb12f9222d5fbe88162ba0e4)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 12 (feedback_ keys) ([#1531](https://github.com/HankHuang0516/EClaw/issues/1531)) ([f473f49](https://github.com/HankHuang0516/EClaw/commit/f473f496251fa6ba8776350d259dcdb08ad31343)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 13 (remaining feedback_ keys) ([#1532](https://github.com/HankHuang0516/EClaw/issues/1532)) ([5d313d9](https://github.com/HankHuang0516/EClaw/commit/5d313d956d33dd816b38bf7fac087782c0f0f0c5)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 14 (slash_ keys) ([#1533](https://github.com/HankHuang0516/EClaw/issues/1533)) ([3c0abc5](https://github.com/HankHuang0516/EClaw/commit/3c0abc54fb1e2c983ad644203a59b1838c757d72)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 15 (message_, webhook_, maintenance_ keys) ([c39a667](https://github.com/HankHuang0516/EClaw/commit/c39a667999b2b98a8b6d4cde539d34e235ca3ba4))
* **i18n:** add German translations - batch 16 (nav_, channel_, dashboard_ keys) ([#1535](https://github.com/HankHuang0516/EClaw/issues/1535)) ([ae7da25](https://github.com/HankHuang0516/EClaw/commit/ae7da25372dd9d210aa70770eec8973977496f2c)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 17 (sched_ keys) ([#1536](https://github.com/HankHuang0516/EClaw/issues/1536)) ([063bf50](https://github.com/HankHuang0516/EClaw/commit/063bf502cb12a67e9a09fdfc8b4e18424d3b6e76)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 18 (remaining sched_, common_ keys) ([#1537](https://github.com/HankHuang0516/EClaw/issues/1537)) ([56c669b](https://github.com/HankHuang0516/EClaw/commit/56c669be444d472d845132bc9827cda7232a9024)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 19 (files_, ai_ keys) ([#1538](https://github.com/HankHuang0516/EClaw/issues/1538)) ([e7a7006](https://github.com/HankHuang0516/EClaw/commit/e7a70060ac3bdfd8f11df9650be9bcb334c32d8f)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 2 (ent_ec, info, qs sections) ([#1521](https://github.com/HankHuang0516/EClaw/issues/1521)) ([b3b2631](https://github.com/HankHuang0516/EClaw/commit/b3b26312d6748b6ea242d88e4bdc26162a2cba2c)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 20 (delete_, screen_ keys) ([#1539](https://github.com/HankHuang0516/EClaw/issues/1539)) ([6d61be0](https://github.com/HankHuang0516/EClaw/commit/6d61be0954b294c07db26ce74ed84bfc6fea68bd)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 21 (toast_ keys) ([#1540](https://github.com/HankHuang0516/EClaw/issues/1540)) ([d1f0056](https://github.com/HankHuang0516/EClaw/commit/d1f005684e9b55a33f940c37daacbf682660720d)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 22 (skill_, soul_, rule_, env_, kanban_, rn_ keys) ([#1541](https://github.com/HankHuang0516/EClaw/issues/1541)) ([023f865](https://github.com/HankHuang0516/EClaw/commit/023f865cfb912b42915e44684b42b9c13eef026e)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 23 (kb_col_ keys) ([#1542](https://github.com/HankHuang0516/EClaw/issues/1542)) ([905ee78](https://github.com/HankHuang0516/EClaw/commit/905ee78c3afc345a8987de9700e28cd066f439c4)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 24 (env_, contrib_, community_ keys) ([d8c29ce](https://github.com/HankHuang0516/EClaw/commit/d8c29ce7655fb768da701635eee55824f5439046))
* **i18n:** add German translations - batch 27 (guide_channel_ keys) ([#1544](https://github.com/HankHuang0516/EClaw/issues/1544)) ([3bf46b1](https://github.com/HankHuang0516/EClaw/commit/3bf46b1969e441d2f38c5adc5c7304b3f5786bee)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 28 (guide_agentcard_ keys, 51 keys) ([#1545](https://github.com/HankHuang0516/EClaw/issues/1545)) ([db52003](https://github.com/HankHuang0516/EClaw/commit/db52003a4766a18241903e0dd253113df6265ac6)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 29 (guide_bp_ Bot Plaza keys, 42 keys) ([#1546](https://github.com/HankHuang0516/EClaw/issues/1546)) ([cafb4c8](https://github.com/HankHuang0516/EClaw/commit/cafb4c88952aa0b937441902d77ce4c602b58af5)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 3 (guide, demo, faq sections) ([#1522](https://github.com/HankHuang0516/EClaw/issues/1522)) ([e912fba](https://github.com/HankHuang0516/EClaw/commit/e912fbab6399d100765d2013b2214345a31e273d)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 30 (guide_crossdevice_ + guide_channel_warning_1, 68 keys) ([#1547](https://github.com/HankHuang0516/EClaw/issues/1547)) ([e0ea9be](https://github.com/HankHuang0516/EClaw/commit/e0ea9beef1702671483c0ce91798e379d08fe904)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 31 (guide_ec_ E-Commerce keys, 85 keys) ([#1548](https://github.com/HankHuang0516/EClaw/issues/1548)) ([6fa35d0](https://github.com/HankHuang0516/EClaw/commit/6fa35d00ef581f92f4c049b17ad1267b6ebaea75)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 32 (guide_features_ + guide_envvars_, 95 keys) ([#1549](https://github.com/HankHuang0516/EClaw/issues/1549)) ([aab6c00](https://github.com/HankHuang0516/EClaw/commit/aab6c00d71d7113da8cf72114bce83fea8060454)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 4 (more guide sections) ([#1523](https://github.com/HankHuang0516/EClaw/issues/1523)) ([c55b3a8](https://github.com/HankHuang0516/EClaw/commit/c55b3a88a9db5ce807e5b3e8461b81efcd624337)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 5 (login, settings, terms sections) ([#1524](https://github.com/HankHuang0516/EClaw/issues/1524)) ([38167d1](https://github.com/HankHuang0516/EClaw/commit/38167d1cb7875d5f1a5ba2376c9bde3c57e09abf)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 6 (footer, faq, rn sections) ([#1525](https://github.com/HankHuang0516/EClaw/issues/1525)) ([d968a6f](https://github.com/HankHuang0516/EClaw/commit/d968a6fbc0e659d526ee5ce0a546fd097311ac55)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 7 (dash_xd, dash_id sections) ([#1526](https://github.com/HankHuang0516/EClaw/issues/1526)) ([ded1e29](https://github.com/HankHuang0516/EClaw/commit/ded1e290bca3301467f95725087175d35f4b2b0c)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 8 (remaining dash_ keys) ([#1527](https://github.com/HankHuang0516/EClaw/issues/1527)) ([ce971c2](https://github.com/HankHuang0516/EClaw/commit/ce971c2d95f8baae497fac28bf5dc3990262b5dc)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 9 (borrow, notif sections) ([#1528](https://github.com/HankHuang0516/EClaw/issues/1528)) ([81913a3](https://github.com/HankHuang0516/EClaw/commit/81913a3cd92e86eb44f4268e9fe29ce7fc54a49a)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.878.0](https://github.com/HankHuang0516/EClaw/compare/v1.877.0...v1.878.0) (2026-04-01)


### Bug Fixes

* UTF-8-safe base64 decoding for blocked scripts + WebView encoding hardening ([#1551](https://github.com/HankHuang0516/EClaw/issues/1551)) ([9ee3ce0](https://github.com/HankHuang0516/EClaw/commit/9ee3ce049815b0e7a3a8d224b09a86b72026bb23))


### Features

* **i18n:** add French translations for borrow and settings sections ([#1507](https://github.com/HankHuang0516/EClaw/issues/1507)) ([3222f66](https://github.com/HankHuang0516/EClaw/commit/3222f66532704718a56a802509b37ea0226a91c7)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for cardholder and contacts sections ([#1513](https://github.com/HankHuang0516/EClaw/issues/1513)) ([fd03424](https://github.com/HankHuang0516/EClaw/commit/fd034248404e3f7be0c2bb98859571e105bc7bc8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for chat and schedule sections ([#1510](https://github.com/HankHuang0516/EClaw/issues/1510)) ([777be93](https://github.com/HankHuang0516/EClaw/commit/777be93e9605cbbc3388c6d62d6f4b2f6043cabf)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for common, error, settings sections - batch 376 ([#1519](https://github.com/HankHuang0516/EClaw/issues/1519)) ([fa53650](https://github.com/HankHuang0516/EClaw/commit/fa536500ee04a343ad2961f839ceaf1c6481a75a)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for feedback and chat sections ([#1509](https://github.com/HankHuang0516/EClaw/issues/1509)) ([9860e93](https://github.com/HankHuang0516/EClaw/commit/9860e93221aa6ce5b8efbcd810b0635bba047bb2)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for files, guide, kanban sections ([#1515](https://github.com/HankHuang0516/EClaw/issues/1515)) ([72d1207](https://github.com/HankHuang0516/EClaw/commit/72d120753c051fae1b8133d413fc9624a3c31172)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for identity and avatar sections ([5bc7f07](https://github.com/HankHuang0516/EClaw/commit/5bc7f072ce8af1c2f66d57fb40557ddbdfcfeb64))
* **i18n:** add French translations for kanban, mission sections ([#1516](https://github.com/HankHuang0516/EClaw/issues/1516)) ([5295d61](https://github.com/HankHuang0516/EClaw/commit/5295d611308ac959832086460c1a0f1f0fc8dca6)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for mission, notification sections ([#1517](https://github.com/HankHuang0516/EClaw/issues/1517)) ([d3fa174](https://github.com/HankHuang0516/EClaw/commit/d3fa17408339ec0c7afefe2819e5ec1304431dc9)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for sc, files sections ([#1514](https://github.com/HankHuang0516/EClaw/issues/1514)) ([dbe17d0](https://github.com/HankHuang0516/EClaw/commit/dbe17d0d11e25be5419ce04cf51cb3c5817891bf)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for schedule sections ([#1511](https://github.com/HankHuang0516/EClaw/issues/1511)) ([cc7cc44](https://github.com/HankHuang0516/EClaw/commit/cc7cc44bd2bd30e04633e8dab8cc90c21f80ac31)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for settings and notifications ([#1508](https://github.com/HankHuang0516/EClaw/issues/1508)) ([d28d201](https://github.com/HankHuang0516/EClaw/commit/d28d20198d83f109677a91d857f54ac7dd9f5277)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for settings sections ([#1518](https://github.com/HankHuang0516/EClaw/issues/1518)) ([c4bbbdc](https://github.com/HankHuang0516/EClaw/commit/c4bbbdc1d3098fe8c3e72c2d4b2ce5e4ce7506a9)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for slots, webhook, borrow sections ([#1506](https://github.com/HankHuang0516/EClaw/issues/1506)) ([9920a2b](https://github.com/HankHuang0516/EClaw/commit/9920a2b85ab19be1d8f27df738080ef9f837fd63))
* **i18n:** add German translations - batch 1 (portal, nav, landing, ent) ([#1520](https://github.com/HankHuang0516/EClaw/issues/1520)) ([527e2ce](https://github.com/HankHuang0516/EClaw/commit/527e2ce50f97339d6b4072a5e227ab622d467959))
* **i18n:** add German translations - batch 10 (remaining notif, broadcast, settings keys) ([#1529](https://github.com/HankHuang0516/EClaw/issues/1529)) ([8e8b721](https://github.com/HankHuang0516/EClaw/commit/8e8b72138b98c276056a4e568c3d93a89edf54b8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 11 (chat_ keys) ([#1530](https://github.com/HankHuang0516/EClaw/issues/1530)) ([6451d98](https://github.com/HankHuang0516/EClaw/commit/6451d98fd879c98ccb12f9222d5fbe88162ba0e4)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 12 (feedback_ keys) ([#1531](https://github.com/HankHuang0516/EClaw/issues/1531)) ([f473f49](https://github.com/HankHuang0516/EClaw/commit/f473f496251fa6ba8776350d259dcdb08ad31343)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 13 (remaining feedback_ keys) ([#1532](https://github.com/HankHuang0516/EClaw/issues/1532)) ([5d313d9](https://github.com/HankHuang0516/EClaw/commit/5d313d956d33dd816b38bf7fac087782c0f0f0c5)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 14 (slash_ keys) ([#1533](https://github.com/HankHuang0516/EClaw/issues/1533)) ([3c0abc5](https://github.com/HankHuang0516/EClaw/commit/3c0abc54fb1e2c983ad644203a59b1838c757d72)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 15 (message_, webhook_, maintenance_ keys) ([c39a667](https://github.com/HankHuang0516/EClaw/commit/c39a667999b2b98a8b6d4cde539d34e235ca3ba4))
* **i18n:** add German translations - batch 16 (nav_, channel_, dashboard_ keys) ([#1535](https://github.com/HankHuang0516/EClaw/issues/1535)) ([ae7da25](https://github.com/HankHuang0516/EClaw/commit/ae7da25372dd9d210aa70770eec8973977496f2c)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 17 (sched_ keys) ([#1536](https://github.com/HankHuang0516/EClaw/issues/1536)) ([063bf50](https://github.com/HankHuang0516/EClaw/commit/063bf502cb12a67e9a09fdfc8b4e18424d3b6e76)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 18 (remaining sched_, common_ keys) ([#1537](https://github.com/HankHuang0516/EClaw/issues/1537)) ([56c669b](https://github.com/HankHuang0516/EClaw/commit/56c669be444d472d845132bc9827cda7232a9024)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 19 (files_, ai_ keys) ([#1538](https://github.com/HankHuang0516/EClaw/issues/1538)) ([e7a7006](https://github.com/HankHuang0516/EClaw/commit/e7a70060ac3bdfd8f11df9650be9bcb334c32d8f)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 2 (ent_ec, info, qs sections) ([#1521](https://github.com/HankHuang0516/EClaw/issues/1521)) ([b3b2631](https://github.com/HankHuang0516/EClaw/commit/b3b26312d6748b6ea242d88e4bdc26162a2cba2c)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 20 (delete_, screen_ keys) ([#1539](https://github.com/HankHuang0516/EClaw/issues/1539)) ([6d61be0](https://github.com/HankHuang0516/EClaw/commit/6d61be0954b294c07db26ce74ed84bfc6fea68bd)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 21 (toast_ keys) ([#1540](https://github.com/HankHuang0516/EClaw/issues/1540)) ([d1f0056](https://github.com/HankHuang0516/EClaw/commit/d1f005684e9b55a33f940c37daacbf682660720d)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 22 (skill_, soul_, rule_, env_, kanban_, rn_ keys) ([#1541](https://github.com/HankHuang0516/EClaw/issues/1541)) ([023f865](https://github.com/HankHuang0516/EClaw/commit/023f865cfb912b42915e44684b42b9c13eef026e)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 23 (kb_col_ keys) ([#1542](https://github.com/HankHuang0516/EClaw/issues/1542)) ([905ee78](https://github.com/HankHuang0516/EClaw/commit/905ee78c3afc345a8987de9700e28cd066f439c4)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 24 (env_, contrib_, community_ keys) ([d8c29ce](https://github.com/HankHuang0516/EClaw/commit/d8c29ce7655fb768da701635eee55824f5439046))
* **i18n:** add German translations - batch 27 (guide_channel_ keys) ([#1544](https://github.com/HankHuang0516/EClaw/issues/1544)) ([3bf46b1](https://github.com/HankHuang0516/EClaw/commit/3bf46b1969e441d2f38c5adc5c7304b3f5786bee)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 28 (guide_agentcard_ keys, 51 keys) ([#1545](https://github.com/HankHuang0516/EClaw/issues/1545)) ([db52003](https://github.com/HankHuang0516/EClaw/commit/db52003a4766a18241903e0dd253113df6265ac6)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 29 (guide_bp_ Bot Plaza keys, 42 keys) ([#1546](https://github.com/HankHuang0516/EClaw/issues/1546)) ([cafb4c8](https://github.com/HankHuang0516/EClaw/commit/cafb4c88952aa0b937441902d77ce4c602b58af5)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 3 (guide, demo, faq sections) ([#1522](https://github.com/HankHuang0516/EClaw/issues/1522)) ([e912fba](https://github.com/HankHuang0516/EClaw/commit/e912fbab6399d100765d2013b2214345a31e273d)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 30 (guide_crossdevice_ + guide_channel_warning_1, 68 keys) ([#1547](https://github.com/HankHuang0516/EClaw/issues/1547)) ([e0ea9be](https://github.com/HankHuang0516/EClaw/commit/e0ea9beef1702671483c0ce91798e379d08fe904)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 31 (guide_ec_ E-Commerce keys, 85 keys) ([#1548](https://github.com/HankHuang0516/EClaw/issues/1548)) ([6fa35d0](https://github.com/HankHuang0516/EClaw/commit/6fa35d00ef581f92f4c049b17ad1267b6ebaea75)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 32 (guide_features_ + guide_envvars_, 95 keys) ([#1549](https://github.com/HankHuang0516/EClaw/issues/1549)) ([aab6c00](https://github.com/HankHuang0516/EClaw/commit/aab6c00d71d7113da8cf72114bce83fea8060454)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 4 (more guide sections) ([#1523](https://github.com/HankHuang0516/EClaw/issues/1523)) ([c55b3a8](https://github.com/HankHuang0516/EClaw/commit/c55b3a88a9db5ce807e5b3e8461b81efcd624337)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 5 (login, settings, terms sections) ([#1524](https://github.com/HankHuang0516/EClaw/issues/1524)) ([38167d1](https://github.com/HankHuang0516/EClaw/commit/38167d1cb7875d5f1a5ba2376c9bde3c57e09abf)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 6 (footer, faq, rn sections) ([#1525](https://github.com/HankHuang0516/EClaw/issues/1525)) ([d968a6f](https://github.com/HankHuang0516/EClaw/commit/d968a6fbc0e659d526ee5ce0a546fd097311ac55)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 7 (dash_xd, dash_id sections) ([#1526](https://github.com/HankHuang0516/EClaw/issues/1526)) ([ded1e29](https://github.com/HankHuang0516/EClaw/commit/ded1e290bca3301467f95725087175d35f4b2b0c)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 8 (remaining dash_ keys) ([#1527](https://github.com/HankHuang0516/EClaw/issues/1527)) ([ce971c2](https://github.com/HankHuang0516/EClaw/commit/ce971c2d95f8baae497fac28bf5dc3990262b5dc)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 9 (borrow, notif sections) ([#1528](https://github.com/HankHuang0516/EClaw/issues/1528)) ([81913a3](https://github.com/HankHuang0516/EClaw/commit/81913a3cd92e86eb44f4268e9fe29ce7fc54a49a)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.878.0](https://github.com/HankHuang0516/EClaw/compare/v1.877.0...v1.878.0) (2026-04-01)


### Features

* **i18n:** add French translations for borrow and settings sections ([#1507](https://github.com/HankHuang0516/EClaw/issues/1507)) ([3222f66](https://github.com/HankHuang0516/EClaw/commit/3222f66532704718a56a802509b37ea0226a91c7)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for cardholder and contacts sections ([#1513](https://github.com/HankHuang0516/EClaw/issues/1513)) ([fd03424](https://github.com/HankHuang0516/EClaw/commit/fd034248404e3f7be0c2bb98859571e105bc7bc8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for chat and schedule sections ([#1510](https://github.com/HankHuang0516/EClaw/issues/1510)) ([777be93](https://github.com/HankHuang0516/EClaw/commit/777be93e9605cbbc3388c6d62d6f4b2f6043cabf)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for common, error, settings sections - batch 376 ([#1519](https://github.com/HankHuang0516/EClaw/issues/1519)) ([fa53650](https://github.com/HankHuang0516/EClaw/commit/fa536500ee04a343ad2961f839ceaf1c6481a75a)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for feedback and chat sections ([#1509](https://github.com/HankHuang0516/EClaw/issues/1509)) ([9860e93](https://github.com/HankHuang0516/EClaw/commit/9860e93221aa6ce5b8efbcd810b0635bba047bb2)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for files, guide, kanban sections ([#1515](https://github.com/HankHuang0516/EClaw/issues/1515)) ([72d1207](https://github.com/HankHuang0516/EClaw/commit/72d120753c051fae1b8133d413fc9624a3c31172)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for identity and avatar sections ([5bc7f07](https://github.com/HankHuang0516/EClaw/commit/5bc7f072ce8af1c2f66d57fb40557ddbdfcfeb64))
* **i18n:** add French translations for kanban, mission sections ([#1516](https://github.com/HankHuang0516/EClaw/issues/1516)) ([5295d61](https://github.com/HankHuang0516/EClaw/commit/5295d611308ac959832086460c1a0f1f0fc8dca6)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for mission, notification sections ([#1517](https://github.com/HankHuang0516/EClaw/issues/1517)) ([d3fa174](https://github.com/HankHuang0516/EClaw/commit/d3fa17408339ec0c7afefe2819e5ec1304431dc9)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for sc, files sections ([#1514](https://github.com/HankHuang0516/EClaw/issues/1514)) ([dbe17d0](https://github.com/HankHuang0516/EClaw/commit/dbe17d0d11e25be5419ce04cf51cb3c5817891bf)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for schedule sections ([#1511](https://github.com/HankHuang0516/EClaw/issues/1511)) ([cc7cc44](https://github.com/HankHuang0516/EClaw/commit/cc7cc44bd2bd30e04633e8dab8cc90c21f80ac31)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for settings and notifications ([#1508](https://github.com/HankHuang0516/EClaw/issues/1508)) ([d28d201](https://github.com/HankHuang0516/EClaw/commit/d28d20198d83f109677a91d857f54ac7dd9f5277)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for settings sections ([#1518](https://github.com/HankHuang0516/EClaw/issues/1518)) ([c4bbbdc](https://github.com/HankHuang0516/EClaw/commit/c4bbbdc1d3098fe8c3e72c2d4b2ce5e4ce7506a9)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for slots, webhook, borrow sections ([#1506](https://github.com/HankHuang0516/EClaw/issues/1506)) ([9920a2b](https://github.com/HankHuang0516/EClaw/commit/9920a2b85ab19be1d8f27df738080ef9f837fd63))
* **i18n:** add German translations - batch 1 (portal, nav, landing, ent) ([#1520](https://github.com/HankHuang0516/EClaw/issues/1520)) ([527e2ce](https://github.com/HankHuang0516/EClaw/commit/527e2ce50f97339d6b4072a5e227ab622d467959))
* **i18n:** add German translations - batch 10 (remaining notif, broadcast, settings keys) ([#1529](https://github.com/HankHuang0516/EClaw/issues/1529)) ([8e8b721](https://github.com/HankHuang0516/EClaw/commit/8e8b72138b98c276056a4e568c3d93a89edf54b8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 11 (chat_ keys) ([#1530](https://github.com/HankHuang0516/EClaw/issues/1530)) ([6451d98](https://github.com/HankHuang0516/EClaw/commit/6451d98fd879c98ccb12f9222d5fbe88162ba0e4)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 12 (feedback_ keys) ([#1531](https://github.com/HankHuang0516/EClaw/issues/1531)) ([f473f49](https://github.com/HankHuang0516/EClaw/commit/f473f496251fa6ba8776350d259dcdb08ad31343)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 13 (remaining feedback_ keys) ([#1532](https://github.com/HankHuang0516/EClaw/issues/1532)) ([5d313d9](https://github.com/HankHuang0516/EClaw/commit/5d313d956d33dd816b38bf7fac087782c0f0f0c5)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 14 (slash_ keys) ([#1533](https://github.com/HankHuang0516/EClaw/issues/1533)) ([3c0abc5](https://github.com/HankHuang0516/EClaw/commit/3c0abc54fb1e2c983ad644203a59b1838c757d72)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 15 (message_, webhook_, maintenance_ keys) ([c39a667](https://github.com/HankHuang0516/EClaw/commit/c39a667999b2b98a8b6d4cde539d34e235ca3ba4))
* **i18n:** add German translations - batch 16 (nav_, channel_, dashboard_ keys) ([#1535](https://github.com/HankHuang0516/EClaw/issues/1535)) ([ae7da25](https://github.com/HankHuang0516/EClaw/commit/ae7da25372dd9d210aa70770eec8973977496f2c)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 17 (sched_ keys) ([#1536](https://github.com/HankHuang0516/EClaw/issues/1536)) ([063bf50](https://github.com/HankHuang0516/EClaw/commit/063bf502cb12a67e9a09fdfc8b4e18424d3b6e76)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 18 (remaining sched_, common_ keys) ([#1537](https://github.com/HankHuang0516/EClaw/issues/1537)) ([56c669b](https://github.com/HankHuang0516/EClaw/commit/56c669be444d472d845132bc9827cda7232a9024)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 19 (files_, ai_ keys) ([#1538](https://github.com/HankHuang0516/EClaw/issues/1538)) ([e7a7006](https://github.com/HankHuang0516/EClaw/commit/e7a70060ac3bdfd8f11df9650be9bcb334c32d8f)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 2 (ent_ec, info, qs sections) ([#1521](https://github.com/HankHuang0516/EClaw/issues/1521)) ([b3b2631](https://github.com/HankHuang0516/EClaw/commit/b3b26312d6748b6ea242d88e4bdc26162a2cba2c)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 20 (delete_, screen_ keys) ([#1539](https://github.com/HankHuang0516/EClaw/issues/1539)) ([6d61be0](https://github.com/HankHuang0516/EClaw/commit/6d61be0954b294c07db26ce74ed84bfc6fea68bd)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 21 (toast_ keys) ([#1540](https://github.com/HankHuang0516/EClaw/issues/1540)) ([d1f0056](https://github.com/HankHuang0516/EClaw/commit/d1f005684e9b55a33f940c37daacbf682660720d)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 22 (skill_, soul_, rule_, env_, kanban_, rn_ keys) ([#1541](https://github.com/HankHuang0516/EClaw/issues/1541)) ([023f865](https://github.com/HankHuang0516/EClaw/commit/023f865cfb912b42915e44684b42b9c13eef026e)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 23 (kb_col_ keys) ([#1542](https://github.com/HankHuang0516/EClaw/issues/1542)) ([905ee78](https://github.com/HankHuang0516/EClaw/commit/905ee78c3afc345a8987de9700e28cd066f439c4)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 24 (env_, contrib_, community_ keys) ([d8c29ce](https://github.com/HankHuang0516/EClaw/commit/d8c29ce7655fb768da701635eee55824f5439046))
* **i18n:** add German translations - batch 27 (guide_channel_ keys) ([#1544](https://github.com/HankHuang0516/EClaw/issues/1544)) ([3bf46b1](https://github.com/HankHuang0516/EClaw/commit/3bf46b1969e441d2f38c5adc5c7304b3f5786bee)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 28 (guide_agentcard_ keys, 51 keys) ([#1545](https://github.com/HankHuang0516/EClaw/issues/1545)) ([db52003](https://github.com/HankHuang0516/EClaw/commit/db52003a4766a18241903e0dd253113df6265ac6)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 29 (guide_bp_ Bot Plaza keys, 42 keys) ([#1546](https://github.com/HankHuang0516/EClaw/issues/1546)) ([cafb4c8](https://github.com/HankHuang0516/EClaw/commit/cafb4c88952aa0b937441902d77ce4c602b58af5)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 3 (guide, demo, faq sections) ([#1522](https://github.com/HankHuang0516/EClaw/issues/1522)) ([e912fba](https://github.com/HankHuang0516/EClaw/commit/e912fbab6399d100765d2013b2214345a31e273d)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 30 (guide_crossdevice_ + guide_channel_warning_1, 68 keys) ([#1547](https://github.com/HankHuang0516/EClaw/issues/1547)) ([e0ea9be](https://github.com/HankHuang0516/EClaw/commit/e0ea9beef1702671483c0ce91798e379d08fe904)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 31 (guide_ec_ E-Commerce keys, 85 keys) ([#1548](https://github.com/HankHuang0516/EClaw/issues/1548)) ([6fa35d0](https://github.com/HankHuang0516/EClaw/commit/6fa35d00ef581f92f4c049b17ad1267b6ebaea75)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 32 (guide_features_ + guide_envvars_, 95 keys) ([#1549](https://github.com/HankHuang0516/EClaw/issues/1549)) ([aab6c00](https://github.com/HankHuang0516/EClaw/commit/aab6c00d71d7113da8cf72114bce83fea8060454)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 4 (more guide sections) ([#1523](https://github.com/HankHuang0516/EClaw/issues/1523)) ([c55b3a8](https://github.com/HankHuang0516/EClaw/commit/c55b3a88a9db5ce807e5b3e8461b81efcd624337)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 5 (login, settings, terms sections) ([#1524](https://github.com/HankHuang0516/EClaw/issues/1524)) ([38167d1](https://github.com/HankHuang0516/EClaw/commit/38167d1cb7875d5f1a5ba2376c9bde3c57e09abf)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 6 (footer, faq, rn sections) ([#1525](https://github.com/HankHuang0516/EClaw/issues/1525)) ([d968a6f](https://github.com/HankHuang0516/EClaw/commit/d968a6fbc0e659d526ee5ce0a546fd097311ac55)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 7 (dash_xd, dash_id sections) ([#1526](https://github.com/HankHuang0516/EClaw/issues/1526)) ([ded1e29](https://github.com/HankHuang0516/EClaw/commit/ded1e290bca3301467f95725087175d35f4b2b0c)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 8 (remaining dash_ keys) ([#1527](https://github.com/HankHuang0516/EClaw/issues/1527)) ([ce971c2](https://github.com/HankHuang0516/EClaw/commit/ce971c2d95f8baae497fac28bf5dc3990262b5dc)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 9 (borrow, notif sections) ([#1528](https://github.com/HankHuang0516/EClaw/issues/1528)) ([81913a3](https://github.com/HankHuang0516/EClaw/commit/81913a3cd92e86eb44f4268e9fe29ce7fc54a49a)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.878.0](https://github.com/HankHuang0516/EClaw/compare/v1.877.0...v1.878.0) (2026-04-01)


### Features

* **i18n:** add French translations for borrow and settings sections ([#1507](https://github.com/HankHuang0516/EClaw/issues/1507)) ([3222f66](https://github.com/HankHuang0516/EClaw/commit/3222f66532704718a56a802509b37ea0226a91c7)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for cardholder and contacts sections ([#1513](https://github.com/HankHuang0516/EClaw/issues/1513)) ([fd03424](https://github.com/HankHuang0516/EClaw/commit/fd034248404e3f7be0c2bb98859571e105bc7bc8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for chat and schedule sections ([#1510](https://github.com/HankHuang0516/EClaw/issues/1510)) ([777be93](https://github.com/HankHuang0516/EClaw/commit/777be93e9605cbbc3388c6d62d6f4b2f6043cabf)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for common, error, settings sections - batch 376 ([#1519](https://github.com/HankHuang0516/EClaw/issues/1519)) ([fa53650](https://github.com/HankHuang0516/EClaw/commit/fa536500ee04a343ad2961f839ceaf1c6481a75a)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for feedback and chat sections ([#1509](https://github.com/HankHuang0516/EClaw/issues/1509)) ([9860e93](https://github.com/HankHuang0516/EClaw/commit/9860e93221aa6ce5b8efbcd810b0635bba047bb2)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for files, guide, kanban sections ([#1515](https://github.com/HankHuang0516/EClaw/issues/1515)) ([72d1207](https://github.com/HankHuang0516/EClaw/commit/72d120753c051fae1b8133d413fc9624a3c31172)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for identity and avatar sections ([5bc7f07](https://github.com/HankHuang0516/EClaw/commit/5bc7f072ce8af1c2f66d57fb40557ddbdfcfeb64))
* **i18n:** add French translations for kanban, mission sections ([#1516](https://github.com/HankHuang0516/EClaw/issues/1516)) ([5295d61](https://github.com/HankHuang0516/EClaw/commit/5295d611308ac959832086460c1a0f1f0fc8dca6)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for mission, notification sections ([#1517](https://github.com/HankHuang0516/EClaw/issues/1517)) ([d3fa174](https://github.com/HankHuang0516/EClaw/commit/d3fa17408339ec0c7afefe2819e5ec1304431dc9)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for sc, files sections ([#1514](https://github.com/HankHuang0516/EClaw/issues/1514)) ([dbe17d0](https://github.com/HankHuang0516/EClaw/commit/dbe17d0d11e25be5419ce04cf51cb3c5817891bf)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for schedule sections ([#1511](https://github.com/HankHuang0516/EClaw/issues/1511)) ([cc7cc44](https://github.com/HankHuang0516/EClaw/commit/cc7cc44bd2bd30e04633e8dab8cc90c21f80ac31)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for settings and notifications ([#1508](https://github.com/HankHuang0516/EClaw/issues/1508)) ([d28d201](https://github.com/HankHuang0516/EClaw/commit/d28d20198d83f109677a91d857f54ac7dd9f5277)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for settings sections ([#1518](https://github.com/HankHuang0516/EClaw/issues/1518)) ([c4bbbdc](https://github.com/HankHuang0516/EClaw/commit/c4bbbdc1d3098fe8c3e72c2d4b2ce5e4ce7506a9)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for slots, webhook, borrow sections ([#1506](https://github.com/HankHuang0516/EClaw/issues/1506)) ([9920a2b](https://github.com/HankHuang0516/EClaw/commit/9920a2b85ab19be1d8f27df738080ef9f837fd63))
* **i18n:** add German translations - batch 1 (portal, nav, landing, ent) ([#1520](https://github.com/HankHuang0516/EClaw/issues/1520)) ([527e2ce](https://github.com/HankHuang0516/EClaw/commit/527e2ce50f97339d6b4072a5e227ab622d467959))
* **i18n:** add German translations - batch 10 (remaining notif, broadcast, settings keys) ([#1529](https://github.com/HankHuang0516/EClaw/issues/1529)) ([8e8b721](https://github.com/HankHuang0516/EClaw/commit/8e8b72138b98c276056a4e568c3d93a89edf54b8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 11 (chat_ keys) ([#1530](https://github.com/HankHuang0516/EClaw/issues/1530)) ([6451d98](https://github.com/HankHuang0516/EClaw/commit/6451d98fd879c98ccb12f9222d5fbe88162ba0e4)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 12 (feedback_ keys) ([#1531](https://github.com/HankHuang0516/EClaw/issues/1531)) ([f473f49](https://github.com/HankHuang0516/EClaw/commit/f473f496251fa6ba8776350d259dcdb08ad31343)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 13 (remaining feedback_ keys) ([#1532](https://github.com/HankHuang0516/EClaw/issues/1532)) ([5d313d9](https://github.com/HankHuang0516/EClaw/commit/5d313d956d33dd816b38bf7fac087782c0f0f0c5)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 14 (slash_ keys) ([#1533](https://github.com/HankHuang0516/EClaw/issues/1533)) ([3c0abc5](https://github.com/HankHuang0516/EClaw/commit/3c0abc54fb1e2c983ad644203a59b1838c757d72)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 15 (message_, webhook_, maintenance_ keys) ([c39a667](https://github.com/HankHuang0516/EClaw/commit/c39a667999b2b98a8b6d4cde539d34e235ca3ba4))
* **i18n:** add German translations - batch 16 (nav_, channel_, dashboard_ keys) ([#1535](https://github.com/HankHuang0516/EClaw/issues/1535)) ([ae7da25](https://github.com/HankHuang0516/EClaw/commit/ae7da25372dd9d210aa70770eec8973977496f2c)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 17 (sched_ keys) ([#1536](https://github.com/HankHuang0516/EClaw/issues/1536)) ([063bf50](https://github.com/HankHuang0516/EClaw/commit/063bf502cb12a67e9a09fdfc8b4e18424d3b6e76)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 18 (remaining sched_, common_ keys) ([#1537](https://github.com/HankHuang0516/EClaw/issues/1537)) ([56c669b](https://github.com/HankHuang0516/EClaw/commit/56c669be444d472d845132bc9827cda7232a9024)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 19 (files_, ai_ keys) ([#1538](https://github.com/HankHuang0516/EClaw/issues/1538)) ([e7a7006](https://github.com/HankHuang0516/EClaw/commit/e7a70060ac3bdfd8f11df9650be9bcb334c32d8f)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 2 (ent_ec, info, qs sections) ([#1521](https://github.com/HankHuang0516/EClaw/issues/1521)) ([b3b2631](https://github.com/HankHuang0516/EClaw/commit/b3b26312d6748b6ea242d88e4bdc26162a2cba2c)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 20 (delete_, screen_ keys) ([#1539](https://github.com/HankHuang0516/EClaw/issues/1539)) ([6d61be0](https://github.com/HankHuang0516/EClaw/commit/6d61be0954b294c07db26ce74ed84bfc6fea68bd)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 21 (toast_ keys) ([#1540](https://github.com/HankHuang0516/EClaw/issues/1540)) ([d1f0056](https://github.com/HankHuang0516/EClaw/commit/d1f005684e9b55a33f940c37daacbf682660720d)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 22 (skill_, soul_, rule_, env_, kanban_, rn_ keys) ([#1541](https://github.com/HankHuang0516/EClaw/issues/1541)) ([023f865](https://github.com/HankHuang0516/EClaw/commit/023f865cfb912b42915e44684b42b9c13eef026e)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 23 (kb_col_ keys) ([#1542](https://github.com/HankHuang0516/EClaw/issues/1542)) ([905ee78](https://github.com/HankHuang0516/EClaw/commit/905ee78c3afc345a8987de9700e28cd066f439c4)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 24 (env_, contrib_, community_ keys) ([d8c29ce](https://github.com/HankHuang0516/EClaw/commit/d8c29ce7655fb768da701635eee55824f5439046))
* **i18n:** add German translations - batch 27 (guide_channel_ keys) ([#1544](https://github.com/HankHuang0516/EClaw/issues/1544)) ([3bf46b1](https://github.com/HankHuang0516/EClaw/commit/3bf46b1969e441d2f38c5adc5c7304b3f5786bee)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 28 (guide_agentcard_ keys, 51 keys) ([#1545](https://github.com/HankHuang0516/EClaw/issues/1545)) ([db52003](https://github.com/HankHuang0516/EClaw/commit/db52003a4766a18241903e0dd253113df6265ac6)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 29 (guide_bp_ Bot Plaza keys, 42 keys) ([#1546](https://github.com/HankHuang0516/EClaw/issues/1546)) ([cafb4c8](https://github.com/HankHuang0516/EClaw/commit/cafb4c88952aa0b937441902d77ce4c602b58af5)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 3 (guide, demo, faq sections) ([#1522](https://github.com/HankHuang0516/EClaw/issues/1522)) ([e912fba](https://github.com/HankHuang0516/EClaw/commit/e912fbab6399d100765d2013b2214345a31e273d)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 30 (guide_crossdevice_ + guide_channel_warning_1, 68 keys) ([#1547](https://github.com/HankHuang0516/EClaw/issues/1547)) ([e0ea9be](https://github.com/HankHuang0516/EClaw/commit/e0ea9beef1702671483c0ce91798e379d08fe904)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 31 (guide_ec_ E-Commerce keys, 85 keys) ([#1548](https://github.com/HankHuang0516/EClaw/issues/1548)) ([6fa35d0](https://github.com/HankHuang0516/EClaw/commit/6fa35d00ef581f92f4c049b17ad1267b6ebaea75)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 4 (more guide sections) ([#1523](https://github.com/HankHuang0516/EClaw/issues/1523)) ([c55b3a8](https://github.com/HankHuang0516/EClaw/commit/c55b3a88a9db5ce807e5b3e8461b81efcd624337)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 5 (login, settings, terms sections) ([#1524](https://github.com/HankHuang0516/EClaw/issues/1524)) ([38167d1](https://github.com/HankHuang0516/EClaw/commit/38167d1cb7875d5f1a5ba2376c9bde3c57e09abf)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 6 (footer, faq, rn sections) ([#1525](https://github.com/HankHuang0516/EClaw/issues/1525)) ([d968a6f](https://github.com/HankHuang0516/EClaw/commit/d968a6fbc0e659d526ee5ce0a546fd097311ac55)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 7 (dash_xd, dash_id sections) ([#1526](https://github.com/HankHuang0516/EClaw/issues/1526)) ([ded1e29](https://github.com/HankHuang0516/EClaw/commit/ded1e290bca3301467f95725087175d35f4b2b0c)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 8 (remaining dash_ keys) ([#1527](https://github.com/HankHuang0516/EClaw/issues/1527)) ([ce971c2](https://github.com/HankHuang0516/EClaw/commit/ce971c2d95f8baae497fac28bf5dc3990262b5dc)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 9 (borrow, notif sections) ([#1528](https://github.com/HankHuang0516/EClaw/issues/1528)) ([81913a3](https://github.com/HankHuang0516/EClaw/commit/81913a3cd92e86eb44f4268e9fe29ce7fc54a49a)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.878.0](https://github.com/HankHuang0516/EClaw/compare/v1.877.0...v1.878.0) (2026-03-31)


### Features

* **i18n:** add French translations for borrow and settings sections ([#1507](https://github.com/HankHuang0516/EClaw/issues/1507)) ([3222f66](https://github.com/HankHuang0516/EClaw/commit/3222f66532704718a56a802509b37ea0226a91c7)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for cardholder and contacts sections ([#1513](https://github.com/HankHuang0516/EClaw/issues/1513)) ([fd03424](https://github.com/HankHuang0516/EClaw/commit/fd034248404e3f7be0c2bb98859571e105bc7bc8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for chat and schedule sections ([#1510](https://github.com/HankHuang0516/EClaw/issues/1510)) ([777be93](https://github.com/HankHuang0516/EClaw/commit/777be93e9605cbbc3388c6d62d6f4b2f6043cabf)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for common, error, settings sections - batch 376 ([#1519](https://github.com/HankHuang0516/EClaw/issues/1519)) ([fa53650](https://github.com/HankHuang0516/EClaw/commit/fa536500ee04a343ad2961f839ceaf1c6481a75a)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for feedback and chat sections ([#1509](https://github.com/HankHuang0516/EClaw/issues/1509)) ([9860e93](https://github.com/HankHuang0516/EClaw/commit/9860e93221aa6ce5b8efbcd810b0635bba047bb2)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for files, guide, kanban sections ([#1515](https://github.com/HankHuang0516/EClaw/issues/1515)) ([72d1207](https://github.com/HankHuang0516/EClaw/commit/72d120753c051fae1b8133d413fc9624a3c31172)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for identity and avatar sections ([5bc7f07](https://github.com/HankHuang0516/EClaw/commit/5bc7f072ce8af1c2f66d57fb40557ddbdfcfeb64))
* **i18n:** add French translations for kanban, mission sections ([#1516](https://github.com/HankHuang0516/EClaw/issues/1516)) ([5295d61](https://github.com/HankHuang0516/EClaw/commit/5295d611308ac959832086460c1a0f1f0fc8dca6)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for mission, notification sections ([#1517](https://github.com/HankHuang0516/EClaw/issues/1517)) ([d3fa174](https://github.com/HankHuang0516/EClaw/commit/d3fa17408339ec0c7afefe2819e5ec1304431dc9)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for sc, files sections ([#1514](https://github.com/HankHuang0516/EClaw/issues/1514)) ([dbe17d0](https://github.com/HankHuang0516/EClaw/commit/dbe17d0d11e25be5419ce04cf51cb3c5817891bf)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for schedule sections ([#1511](https://github.com/HankHuang0516/EClaw/issues/1511)) ([cc7cc44](https://github.com/HankHuang0516/EClaw/commit/cc7cc44bd2bd30e04633e8dab8cc90c21f80ac31)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for settings and notifications ([#1508](https://github.com/HankHuang0516/EClaw/issues/1508)) ([d28d201](https://github.com/HankHuang0516/EClaw/commit/d28d20198d83f109677a91d857f54ac7dd9f5277)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for settings sections ([#1518](https://github.com/HankHuang0516/EClaw/issues/1518)) ([c4bbbdc](https://github.com/HankHuang0516/EClaw/commit/c4bbbdc1d3098fe8c3e72c2d4b2ce5e4ce7506a9)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for slots, webhook, borrow sections ([#1506](https://github.com/HankHuang0516/EClaw/issues/1506)) ([9920a2b](https://github.com/HankHuang0516/EClaw/commit/9920a2b85ab19be1d8f27df738080ef9f837fd63))
* **i18n:** add German translations - batch 1 (portal, nav, landing, ent) ([#1520](https://github.com/HankHuang0516/EClaw/issues/1520)) ([527e2ce](https://github.com/HankHuang0516/EClaw/commit/527e2ce50f97339d6b4072a5e227ab622d467959))
* **i18n:** add German translations - batch 10 (remaining notif, broadcast, settings keys) ([#1529](https://github.com/HankHuang0516/EClaw/issues/1529)) ([8e8b721](https://github.com/HankHuang0516/EClaw/commit/8e8b72138b98c276056a4e568c3d93a89edf54b8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 11 (chat_ keys) ([#1530](https://github.com/HankHuang0516/EClaw/issues/1530)) ([6451d98](https://github.com/HankHuang0516/EClaw/commit/6451d98fd879c98ccb12f9222d5fbe88162ba0e4)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 12 (feedback_ keys) ([#1531](https://github.com/HankHuang0516/EClaw/issues/1531)) ([f473f49](https://github.com/HankHuang0516/EClaw/commit/f473f496251fa6ba8776350d259dcdb08ad31343)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 13 (remaining feedback_ keys) ([#1532](https://github.com/HankHuang0516/EClaw/issues/1532)) ([5d313d9](https://github.com/HankHuang0516/EClaw/commit/5d313d956d33dd816b38bf7fac087782c0f0f0c5)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 14 (slash_ keys) ([#1533](https://github.com/HankHuang0516/EClaw/issues/1533)) ([3c0abc5](https://github.com/HankHuang0516/EClaw/commit/3c0abc54fb1e2c983ad644203a59b1838c757d72)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 15 (message_, webhook_, maintenance_ keys) ([c39a667](https://github.com/HankHuang0516/EClaw/commit/c39a667999b2b98a8b6d4cde539d34e235ca3ba4))
* **i18n:** add German translations - batch 16 (nav_, channel_, dashboard_ keys) ([#1535](https://github.com/HankHuang0516/EClaw/issues/1535)) ([ae7da25](https://github.com/HankHuang0516/EClaw/commit/ae7da25372dd9d210aa70770eec8973977496f2c)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 17 (sched_ keys) ([#1536](https://github.com/HankHuang0516/EClaw/issues/1536)) ([063bf50](https://github.com/HankHuang0516/EClaw/commit/063bf502cb12a67e9a09fdfc8b4e18424d3b6e76)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 18 (remaining sched_, common_ keys) ([#1537](https://github.com/HankHuang0516/EClaw/issues/1537)) ([56c669b](https://github.com/HankHuang0516/EClaw/commit/56c669be444d472d845132bc9827cda7232a9024)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 19 (files_, ai_ keys) ([#1538](https://github.com/HankHuang0516/EClaw/issues/1538)) ([e7a7006](https://github.com/HankHuang0516/EClaw/commit/e7a70060ac3bdfd8f11df9650be9bcb334c32d8f)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 2 (ent_ec, info, qs sections) ([#1521](https://github.com/HankHuang0516/EClaw/issues/1521)) ([b3b2631](https://github.com/HankHuang0516/EClaw/commit/b3b26312d6748b6ea242d88e4bdc26162a2cba2c)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 20 (delete_, screen_ keys) ([#1539](https://github.com/HankHuang0516/EClaw/issues/1539)) ([6d61be0](https://github.com/HankHuang0516/EClaw/commit/6d61be0954b294c07db26ce74ed84bfc6fea68bd)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 21 (toast_ keys) ([#1540](https://github.com/HankHuang0516/EClaw/issues/1540)) ([d1f0056](https://github.com/HankHuang0516/EClaw/commit/d1f005684e9b55a33f940c37daacbf682660720d)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 22 (skill_, soul_, rule_, env_, kanban_, rn_ keys) ([#1541](https://github.com/HankHuang0516/EClaw/issues/1541)) ([023f865](https://github.com/HankHuang0516/EClaw/commit/023f865cfb912b42915e44684b42b9c13eef026e)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 23 (kb_col_ keys) ([#1542](https://github.com/HankHuang0516/EClaw/issues/1542)) ([905ee78](https://github.com/HankHuang0516/EClaw/commit/905ee78c3afc345a8987de9700e28cd066f439c4)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 24 (env_, contrib_, community_ keys) ([d8c29ce](https://github.com/HankHuang0516/EClaw/commit/d8c29ce7655fb768da701635eee55824f5439046))
* **i18n:** add German translations - batch 27 (guide_channel_ keys) ([#1544](https://github.com/HankHuang0516/EClaw/issues/1544)) ([3bf46b1](https://github.com/HankHuang0516/EClaw/commit/3bf46b1969e441d2f38c5adc5c7304b3f5786bee)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 28 (guide_agentcard_ keys, 51 keys) ([#1545](https://github.com/HankHuang0516/EClaw/issues/1545)) ([db52003](https://github.com/HankHuang0516/EClaw/commit/db52003a4766a18241903e0dd253113df6265ac6)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 29 (guide_bp_ Bot Plaza keys, 42 keys) ([#1546](https://github.com/HankHuang0516/EClaw/issues/1546)) ([cafb4c8](https://github.com/HankHuang0516/EClaw/commit/cafb4c88952aa0b937441902d77ce4c602b58af5)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 3 (guide, demo, faq sections) ([#1522](https://github.com/HankHuang0516/EClaw/issues/1522)) ([e912fba](https://github.com/HankHuang0516/EClaw/commit/e912fbab6399d100765d2013b2214345a31e273d)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 30 (guide_crossdevice_ + guide_channel_warning_1, 68 keys) ([#1547](https://github.com/HankHuang0516/EClaw/issues/1547)) ([e0ea9be](https://github.com/HankHuang0516/EClaw/commit/e0ea9beef1702671483c0ce91798e379d08fe904)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 4 (more guide sections) ([#1523](https://github.com/HankHuang0516/EClaw/issues/1523)) ([c55b3a8](https://github.com/HankHuang0516/EClaw/commit/c55b3a88a9db5ce807e5b3e8461b81efcd624337)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 5 (login, settings, terms sections) ([#1524](https://github.com/HankHuang0516/EClaw/issues/1524)) ([38167d1](https://github.com/HankHuang0516/EClaw/commit/38167d1cb7875d5f1a5ba2376c9bde3c57e09abf)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 6 (footer, faq, rn sections) ([#1525](https://github.com/HankHuang0516/EClaw/issues/1525)) ([d968a6f](https://github.com/HankHuang0516/EClaw/commit/d968a6fbc0e659d526ee5ce0a546fd097311ac55)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 7 (dash_xd, dash_id sections) ([#1526](https://github.com/HankHuang0516/EClaw/issues/1526)) ([ded1e29](https://github.com/HankHuang0516/EClaw/commit/ded1e290bca3301467f95725087175d35f4b2b0c)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 8 (remaining dash_ keys) ([#1527](https://github.com/HankHuang0516/EClaw/issues/1527)) ([ce971c2](https://github.com/HankHuang0516/EClaw/commit/ce971c2d95f8baae497fac28bf5dc3990262b5dc)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 9 (borrow, notif sections) ([#1528](https://github.com/HankHuang0516/EClaw/issues/1528)) ([81913a3](https://github.com/HankHuang0516/EClaw/commit/81913a3cd92e86eb44f4268e9fe29ce7fc54a49a)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.878.0](https://github.com/HankHuang0516/EClaw/compare/v1.877.0...v1.878.0) (2026-03-31)


### Features

* **i18n:** add French translations for borrow and settings sections ([#1507](https://github.com/HankHuang0516/EClaw/issues/1507)) ([3222f66](https://github.com/HankHuang0516/EClaw/commit/3222f66532704718a56a802509b37ea0226a91c7)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for cardholder and contacts sections ([#1513](https://github.com/HankHuang0516/EClaw/issues/1513)) ([fd03424](https://github.com/HankHuang0516/EClaw/commit/fd034248404e3f7be0c2bb98859571e105bc7bc8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for chat and schedule sections ([#1510](https://github.com/HankHuang0516/EClaw/issues/1510)) ([777be93](https://github.com/HankHuang0516/EClaw/commit/777be93e9605cbbc3388c6d62d6f4b2f6043cabf)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for common, error, settings sections - batch 376 ([#1519](https://github.com/HankHuang0516/EClaw/issues/1519)) ([fa53650](https://github.com/HankHuang0516/EClaw/commit/fa536500ee04a343ad2961f839ceaf1c6481a75a)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for feedback and chat sections ([#1509](https://github.com/HankHuang0516/EClaw/issues/1509)) ([9860e93](https://github.com/HankHuang0516/EClaw/commit/9860e93221aa6ce5b8efbcd810b0635bba047bb2)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for files, guide, kanban sections ([#1515](https://github.com/HankHuang0516/EClaw/issues/1515)) ([72d1207](https://github.com/HankHuang0516/EClaw/commit/72d120753c051fae1b8133d413fc9624a3c31172)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for identity and avatar sections ([5bc7f07](https://github.com/HankHuang0516/EClaw/commit/5bc7f072ce8af1c2f66d57fb40557ddbdfcfeb64))
* **i18n:** add French translations for kanban, mission sections ([#1516](https://github.com/HankHuang0516/EClaw/issues/1516)) ([5295d61](https://github.com/HankHuang0516/EClaw/commit/5295d611308ac959832086460c1a0f1f0fc8dca6)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for mission, notification sections ([#1517](https://github.com/HankHuang0516/EClaw/issues/1517)) ([d3fa174](https://github.com/HankHuang0516/EClaw/commit/d3fa17408339ec0c7afefe2819e5ec1304431dc9)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for sc, files sections ([#1514](https://github.com/HankHuang0516/EClaw/issues/1514)) ([dbe17d0](https://github.com/HankHuang0516/EClaw/commit/dbe17d0d11e25be5419ce04cf51cb3c5817891bf)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for schedule sections ([#1511](https://github.com/HankHuang0516/EClaw/issues/1511)) ([cc7cc44](https://github.com/HankHuang0516/EClaw/commit/cc7cc44bd2bd30e04633e8dab8cc90c21f80ac31)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for settings and notifications ([#1508](https://github.com/HankHuang0516/EClaw/issues/1508)) ([d28d201](https://github.com/HankHuang0516/EClaw/commit/d28d20198d83f109677a91d857f54ac7dd9f5277)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for settings sections ([#1518](https://github.com/HankHuang0516/EClaw/issues/1518)) ([c4bbbdc](https://github.com/HankHuang0516/EClaw/commit/c4bbbdc1d3098fe8c3e72c2d4b2ce5e4ce7506a9)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for slots, webhook, borrow sections ([#1506](https://github.com/HankHuang0516/EClaw/issues/1506)) ([9920a2b](https://github.com/HankHuang0516/EClaw/commit/9920a2b85ab19be1d8f27df738080ef9f837fd63))
* **i18n:** add German translations - batch 1 (portal, nav, landing, ent) ([#1520](https://github.com/HankHuang0516/EClaw/issues/1520)) ([527e2ce](https://github.com/HankHuang0516/EClaw/commit/527e2ce50f97339d6b4072a5e227ab622d467959))
* **i18n:** add German translations - batch 10 (remaining notif, broadcast, settings keys) ([#1529](https://github.com/HankHuang0516/EClaw/issues/1529)) ([8e8b721](https://github.com/HankHuang0516/EClaw/commit/8e8b72138b98c276056a4e568c3d93a89edf54b8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 11 (chat_ keys) ([#1530](https://github.com/HankHuang0516/EClaw/issues/1530)) ([6451d98](https://github.com/HankHuang0516/EClaw/commit/6451d98fd879c98ccb12f9222d5fbe88162ba0e4)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 12 (feedback_ keys) ([#1531](https://github.com/HankHuang0516/EClaw/issues/1531)) ([f473f49](https://github.com/HankHuang0516/EClaw/commit/f473f496251fa6ba8776350d259dcdb08ad31343)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 13 (remaining feedback_ keys) ([#1532](https://github.com/HankHuang0516/EClaw/issues/1532)) ([5d313d9](https://github.com/HankHuang0516/EClaw/commit/5d313d956d33dd816b38bf7fac087782c0f0f0c5)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 14 (slash_ keys) ([#1533](https://github.com/HankHuang0516/EClaw/issues/1533)) ([3c0abc5](https://github.com/HankHuang0516/EClaw/commit/3c0abc54fb1e2c983ad644203a59b1838c757d72)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 15 (message_, webhook_, maintenance_ keys) ([c39a667](https://github.com/HankHuang0516/EClaw/commit/c39a667999b2b98a8b6d4cde539d34e235ca3ba4))
* **i18n:** add German translations - batch 16 (nav_, channel_, dashboard_ keys) ([#1535](https://github.com/HankHuang0516/EClaw/issues/1535)) ([ae7da25](https://github.com/HankHuang0516/EClaw/commit/ae7da25372dd9d210aa70770eec8973977496f2c)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 17 (sched_ keys) ([#1536](https://github.com/HankHuang0516/EClaw/issues/1536)) ([063bf50](https://github.com/HankHuang0516/EClaw/commit/063bf502cb12a67e9a09fdfc8b4e18424d3b6e76)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 18 (remaining sched_, common_ keys) ([#1537](https://github.com/HankHuang0516/EClaw/issues/1537)) ([56c669b](https://github.com/HankHuang0516/EClaw/commit/56c669be444d472d845132bc9827cda7232a9024)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 19 (files_, ai_ keys) ([#1538](https://github.com/HankHuang0516/EClaw/issues/1538)) ([e7a7006](https://github.com/HankHuang0516/EClaw/commit/e7a70060ac3bdfd8f11df9650be9bcb334c32d8f)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 2 (ent_ec, info, qs sections) ([#1521](https://github.com/HankHuang0516/EClaw/issues/1521)) ([b3b2631](https://github.com/HankHuang0516/EClaw/commit/b3b26312d6748b6ea242d88e4bdc26162a2cba2c)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 20 (delete_, screen_ keys) ([#1539](https://github.com/HankHuang0516/EClaw/issues/1539)) ([6d61be0](https://github.com/HankHuang0516/EClaw/commit/6d61be0954b294c07db26ce74ed84bfc6fea68bd)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 21 (toast_ keys) ([#1540](https://github.com/HankHuang0516/EClaw/issues/1540)) ([d1f0056](https://github.com/HankHuang0516/EClaw/commit/d1f005684e9b55a33f940c37daacbf682660720d)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 22 (skill_, soul_, rule_, env_, kanban_, rn_ keys) ([#1541](https://github.com/HankHuang0516/EClaw/issues/1541)) ([023f865](https://github.com/HankHuang0516/EClaw/commit/023f865cfb912b42915e44684b42b9c13eef026e)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 23 (kb_col_ keys) ([#1542](https://github.com/HankHuang0516/EClaw/issues/1542)) ([905ee78](https://github.com/HankHuang0516/EClaw/commit/905ee78c3afc345a8987de9700e28cd066f439c4)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 24 (env_, contrib_, community_ keys) ([d8c29ce](https://github.com/HankHuang0516/EClaw/commit/d8c29ce7655fb768da701635eee55824f5439046))
* **i18n:** add German translations - batch 27 (guide_channel_ keys) ([#1544](https://github.com/HankHuang0516/EClaw/issues/1544)) ([3bf46b1](https://github.com/HankHuang0516/EClaw/commit/3bf46b1969e441d2f38c5adc5c7304b3f5786bee)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 28 (guide_agentcard_ keys, 51 keys) ([#1545](https://github.com/HankHuang0516/EClaw/issues/1545)) ([db52003](https://github.com/HankHuang0516/EClaw/commit/db52003a4766a18241903e0dd253113df6265ac6)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 29 (guide_bp_ Bot Plaza keys, 42 keys) ([#1546](https://github.com/HankHuang0516/EClaw/issues/1546)) ([cafb4c8](https://github.com/HankHuang0516/EClaw/commit/cafb4c88952aa0b937441902d77ce4c602b58af5)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 3 (guide, demo, faq sections) ([#1522](https://github.com/HankHuang0516/EClaw/issues/1522)) ([e912fba](https://github.com/HankHuang0516/EClaw/commit/e912fbab6399d100765d2013b2214345a31e273d)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 4 (more guide sections) ([#1523](https://github.com/HankHuang0516/EClaw/issues/1523)) ([c55b3a8](https://github.com/HankHuang0516/EClaw/commit/c55b3a88a9db5ce807e5b3e8461b81efcd624337)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 5 (login, settings, terms sections) ([#1524](https://github.com/HankHuang0516/EClaw/issues/1524)) ([38167d1](https://github.com/HankHuang0516/EClaw/commit/38167d1cb7875d5f1a5ba2376c9bde3c57e09abf)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 6 (footer, faq, rn sections) ([#1525](https://github.com/HankHuang0516/EClaw/issues/1525)) ([d968a6f](https://github.com/HankHuang0516/EClaw/commit/d968a6fbc0e659d526ee5ce0a546fd097311ac55)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 7 (dash_xd, dash_id sections) ([#1526](https://github.com/HankHuang0516/EClaw/issues/1526)) ([ded1e29](https://github.com/HankHuang0516/EClaw/commit/ded1e290bca3301467f95725087175d35f4b2b0c)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 8 (remaining dash_ keys) ([#1527](https://github.com/HankHuang0516/EClaw/issues/1527)) ([ce971c2](https://github.com/HankHuang0516/EClaw/commit/ce971c2d95f8baae497fac28bf5dc3990262b5dc)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 9 (borrow, notif sections) ([#1528](https://github.com/HankHuang0516/EClaw/issues/1528)) ([81913a3](https://github.com/HankHuang0516/EClaw/commit/81913a3cd92e86eb44f4268e9fe29ce7fc54a49a)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.878.0](https://github.com/HankHuang0516/EClaw/compare/v1.877.0...v1.878.0) (2026-03-31)


### Features

* **i18n:** add French translations for borrow and settings sections ([#1507](https://github.com/HankHuang0516/EClaw/issues/1507)) ([3222f66](https://github.com/HankHuang0516/EClaw/commit/3222f66532704718a56a802509b37ea0226a91c7)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for cardholder and contacts sections ([#1513](https://github.com/HankHuang0516/EClaw/issues/1513)) ([fd03424](https://github.com/HankHuang0516/EClaw/commit/fd034248404e3f7be0c2bb98859571e105bc7bc8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for chat and schedule sections ([#1510](https://github.com/HankHuang0516/EClaw/issues/1510)) ([777be93](https://github.com/HankHuang0516/EClaw/commit/777be93e9605cbbc3388c6d62d6f4b2f6043cabf)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for common, error, settings sections - batch 376 ([#1519](https://github.com/HankHuang0516/EClaw/issues/1519)) ([fa53650](https://github.com/HankHuang0516/EClaw/commit/fa536500ee04a343ad2961f839ceaf1c6481a75a)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for feedback and chat sections ([#1509](https://github.com/HankHuang0516/EClaw/issues/1509)) ([9860e93](https://github.com/HankHuang0516/EClaw/commit/9860e93221aa6ce5b8efbcd810b0635bba047bb2)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for files, guide, kanban sections ([#1515](https://github.com/HankHuang0516/EClaw/issues/1515)) ([72d1207](https://github.com/HankHuang0516/EClaw/commit/72d120753c051fae1b8133d413fc9624a3c31172)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for identity and avatar sections ([5bc7f07](https://github.com/HankHuang0516/EClaw/commit/5bc7f072ce8af1c2f66d57fb40557ddbdfcfeb64))
* **i18n:** add French translations for kanban, mission sections ([#1516](https://github.com/HankHuang0516/EClaw/issues/1516)) ([5295d61](https://github.com/HankHuang0516/EClaw/commit/5295d611308ac959832086460c1a0f1f0fc8dca6)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for mission, notification sections ([#1517](https://github.com/HankHuang0516/EClaw/issues/1517)) ([d3fa174](https://github.com/HankHuang0516/EClaw/commit/d3fa17408339ec0c7afefe2819e5ec1304431dc9)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for sc, files sections ([#1514](https://github.com/HankHuang0516/EClaw/issues/1514)) ([dbe17d0](https://github.com/HankHuang0516/EClaw/commit/dbe17d0d11e25be5419ce04cf51cb3c5817891bf)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for schedule sections ([#1511](https://github.com/HankHuang0516/EClaw/issues/1511)) ([cc7cc44](https://github.com/HankHuang0516/EClaw/commit/cc7cc44bd2bd30e04633e8dab8cc90c21f80ac31)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for settings and notifications ([#1508](https://github.com/HankHuang0516/EClaw/issues/1508)) ([d28d201](https://github.com/HankHuang0516/EClaw/commit/d28d20198d83f109677a91d857f54ac7dd9f5277)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for settings sections ([#1518](https://github.com/HankHuang0516/EClaw/issues/1518)) ([c4bbbdc](https://github.com/HankHuang0516/EClaw/commit/c4bbbdc1d3098fe8c3e72c2d4b2ce5e4ce7506a9)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for slots, webhook, borrow sections ([#1506](https://github.com/HankHuang0516/EClaw/issues/1506)) ([9920a2b](https://github.com/HankHuang0516/EClaw/commit/9920a2b85ab19be1d8f27df738080ef9f837fd63))
* **i18n:** add German translations - batch 1 (portal, nav, landing, ent) ([#1520](https://github.com/HankHuang0516/EClaw/issues/1520)) ([527e2ce](https://github.com/HankHuang0516/EClaw/commit/527e2ce50f97339d6b4072a5e227ab622d467959))
* **i18n:** add German translations - batch 10 (remaining notif, broadcast, settings keys) ([#1529](https://github.com/HankHuang0516/EClaw/issues/1529)) ([8e8b721](https://github.com/HankHuang0516/EClaw/commit/8e8b72138b98c276056a4e568c3d93a89edf54b8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 11 (chat_ keys) ([#1530](https://github.com/HankHuang0516/EClaw/issues/1530)) ([6451d98](https://github.com/HankHuang0516/EClaw/commit/6451d98fd879c98ccb12f9222d5fbe88162ba0e4)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 12 (feedback_ keys) ([#1531](https://github.com/HankHuang0516/EClaw/issues/1531)) ([f473f49](https://github.com/HankHuang0516/EClaw/commit/f473f496251fa6ba8776350d259dcdb08ad31343)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 13 (remaining feedback_ keys) ([#1532](https://github.com/HankHuang0516/EClaw/issues/1532)) ([5d313d9](https://github.com/HankHuang0516/EClaw/commit/5d313d956d33dd816b38bf7fac087782c0f0f0c5)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 14 (slash_ keys) ([#1533](https://github.com/HankHuang0516/EClaw/issues/1533)) ([3c0abc5](https://github.com/HankHuang0516/EClaw/commit/3c0abc54fb1e2c983ad644203a59b1838c757d72)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 15 (message_, webhook_, maintenance_ keys) ([c39a667](https://github.com/HankHuang0516/EClaw/commit/c39a667999b2b98a8b6d4cde539d34e235ca3ba4))
* **i18n:** add German translations - batch 16 (nav_, channel_, dashboard_ keys) ([#1535](https://github.com/HankHuang0516/EClaw/issues/1535)) ([ae7da25](https://github.com/HankHuang0516/EClaw/commit/ae7da25372dd9d210aa70770eec8973977496f2c)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 17 (sched_ keys) ([#1536](https://github.com/HankHuang0516/EClaw/issues/1536)) ([063bf50](https://github.com/HankHuang0516/EClaw/commit/063bf502cb12a67e9a09fdfc8b4e18424d3b6e76)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 18 (remaining sched_, common_ keys) ([#1537](https://github.com/HankHuang0516/EClaw/issues/1537)) ([56c669b](https://github.com/HankHuang0516/EClaw/commit/56c669be444d472d845132bc9827cda7232a9024)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 19 (files_, ai_ keys) ([#1538](https://github.com/HankHuang0516/EClaw/issues/1538)) ([e7a7006](https://github.com/HankHuang0516/EClaw/commit/e7a70060ac3bdfd8f11df9650be9bcb334c32d8f)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 2 (ent_ec, info, qs sections) ([#1521](https://github.com/HankHuang0516/EClaw/issues/1521)) ([b3b2631](https://github.com/HankHuang0516/EClaw/commit/b3b26312d6748b6ea242d88e4bdc26162a2cba2c)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 20 (delete_, screen_ keys) ([#1539](https://github.com/HankHuang0516/EClaw/issues/1539)) ([6d61be0](https://github.com/HankHuang0516/EClaw/commit/6d61be0954b294c07db26ce74ed84bfc6fea68bd)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 21 (toast_ keys) ([#1540](https://github.com/HankHuang0516/EClaw/issues/1540)) ([d1f0056](https://github.com/HankHuang0516/EClaw/commit/d1f005684e9b55a33f940c37daacbf682660720d)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 22 (skill_, soul_, rule_, env_, kanban_, rn_ keys) ([#1541](https://github.com/HankHuang0516/EClaw/issues/1541)) ([023f865](https://github.com/HankHuang0516/EClaw/commit/023f865cfb912b42915e44684b42b9c13eef026e)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 23 (kb_col_ keys) ([#1542](https://github.com/HankHuang0516/EClaw/issues/1542)) ([905ee78](https://github.com/HankHuang0516/EClaw/commit/905ee78c3afc345a8987de9700e28cd066f439c4)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 24 (env_, contrib_, community_ keys) ([d8c29ce](https://github.com/HankHuang0516/EClaw/commit/d8c29ce7655fb768da701635eee55824f5439046))
* **i18n:** add German translations - batch 27 (guide_channel_ keys) ([#1544](https://github.com/HankHuang0516/EClaw/issues/1544)) ([3bf46b1](https://github.com/HankHuang0516/EClaw/commit/3bf46b1969e441d2f38c5adc5c7304b3f5786bee)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 3 (guide, demo, faq sections) ([#1522](https://github.com/HankHuang0516/EClaw/issues/1522)) ([e912fba](https://github.com/HankHuang0516/EClaw/commit/e912fbab6399d100765d2013b2214345a31e273d)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 4 (more guide sections) ([#1523](https://github.com/HankHuang0516/EClaw/issues/1523)) ([c55b3a8](https://github.com/HankHuang0516/EClaw/commit/c55b3a88a9db5ce807e5b3e8461b81efcd624337)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 5 (login, settings, terms sections) ([#1524](https://github.com/HankHuang0516/EClaw/issues/1524)) ([38167d1](https://github.com/HankHuang0516/EClaw/commit/38167d1cb7875d5f1a5ba2376c9bde3c57e09abf)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 6 (footer, faq, rn sections) ([#1525](https://github.com/HankHuang0516/EClaw/issues/1525)) ([d968a6f](https://github.com/HankHuang0516/EClaw/commit/d968a6fbc0e659d526ee5ce0a546fd097311ac55)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 7 (dash_xd, dash_id sections) ([#1526](https://github.com/HankHuang0516/EClaw/issues/1526)) ([ded1e29](https://github.com/HankHuang0516/EClaw/commit/ded1e290bca3301467f95725087175d35f4b2b0c)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 8 (remaining dash_ keys) ([#1527](https://github.com/HankHuang0516/EClaw/issues/1527)) ([ce971c2](https://github.com/HankHuang0516/EClaw/commit/ce971c2d95f8baae497fac28bf5dc3990262b5dc)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 9 (borrow, notif sections) ([#1528](https://github.com/HankHuang0516/EClaw/issues/1528)) ([81913a3](https://github.com/HankHuang0516/EClaw/commit/81913a3cd92e86eb44f4268e9fe29ce7fc54a49a)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.878.0](https://github.com/HankHuang0516/EClaw/compare/v1.877.0...v1.878.0) (2026-03-31)


### Features

* **i18n:** add French translations for borrow and settings sections ([#1507](https://github.com/HankHuang0516/EClaw/issues/1507)) ([3222f66](https://github.com/HankHuang0516/EClaw/commit/3222f66532704718a56a802509b37ea0226a91c7)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for cardholder and contacts sections ([#1513](https://github.com/HankHuang0516/EClaw/issues/1513)) ([fd03424](https://github.com/HankHuang0516/EClaw/commit/fd034248404e3f7be0c2bb98859571e105bc7bc8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for chat and schedule sections ([#1510](https://github.com/HankHuang0516/EClaw/issues/1510)) ([777be93](https://github.com/HankHuang0516/EClaw/commit/777be93e9605cbbc3388c6d62d6f4b2f6043cabf)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for common, error, settings sections - batch 376 ([#1519](https://github.com/HankHuang0516/EClaw/issues/1519)) ([fa53650](https://github.com/HankHuang0516/EClaw/commit/fa536500ee04a343ad2961f839ceaf1c6481a75a)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for feedback and chat sections ([#1509](https://github.com/HankHuang0516/EClaw/issues/1509)) ([9860e93](https://github.com/HankHuang0516/EClaw/commit/9860e93221aa6ce5b8efbcd810b0635bba047bb2)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for files, guide, kanban sections ([#1515](https://github.com/HankHuang0516/EClaw/issues/1515)) ([72d1207](https://github.com/HankHuang0516/EClaw/commit/72d120753c051fae1b8133d413fc9624a3c31172)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for identity and avatar sections ([5bc7f07](https://github.com/HankHuang0516/EClaw/commit/5bc7f072ce8af1c2f66d57fb40557ddbdfcfeb64))
* **i18n:** add French translations for kanban, mission sections ([#1516](https://github.com/HankHuang0516/EClaw/issues/1516)) ([5295d61](https://github.com/HankHuang0516/EClaw/commit/5295d611308ac959832086460c1a0f1f0fc8dca6)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for mission, notification sections ([#1517](https://github.com/HankHuang0516/EClaw/issues/1517)) ([d3fa174](https://github.com/HankHuang0516/EClaw/commit/d3fa17408339ec0c7afefe2819e5ec1304431dc9)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for sc, files sections ([#1514](https://github.com/HankHuang0516/EClaw/issues/1514)) ([dbe17d0](https://github.com/HankHuang0516/EClaw/commit/dbe17d0d11e25be5419ce04cf51cb3c5817891bf)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for schedule sections ([#1511](https://github.com/HankHuang0516/EClaw/issues/1511)) ([cc7cc44](https://github.com/HankHuang0516/EClaw/commit/cc7cc44bd2bd30e04633e8dab8cc90c21f80ac31)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for settings and notifications ([#1508](https://github.com/HankHuang0516/EClaw/issues/1508)) ([d28d201](https://github.com/HankHuang0516/EClaw/commit/d28d20198d83f109677a91d857f54ac7dd9f5277)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for settings sections ([#1518](https://github.com/HankHuang0516/EClaw/issues/1518)) ([c4bbbdc](https://github.com/HankHuang0516/EClaw/commit/c4bbbdc1d3098fe8c3e72c2d4b2ce5e4ce7506a9)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for slots, webhook, borrow sections ([#1506](https://github.com/HankHuang0516/EClaw/issues/1506)) ([9920a2b](https://github.com/HankHuang0516/EClaw/commit/9920a2b85ab19be1d8f27df738080ef9f837fd63))
* **i18n:** add German translations - batch 1 (portal, nav, landing, ent) ([#1520](https://github.com/HankHuang0516/EClaw/issues/1520)) ([527e2ce](https://github.com/HankHuang0516/EClaw/commit/527e2ce50f97339d6b4072a5e227ab622d467959))
* **i18n:** add German translations - batch 10 (remaining notif, broadcast, settings keys) ([#1529](https://github.com/HankHuang0516/EClaw/issues/1529)) ([8e8b721](https://github.com/HankHuang0516/EClaw/commit/8e8b72138b98c276056a4e568c3d93a89edf54b8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 11 (chat_ keys) ([#1530](https://github.com/HankHuang0516/EClaw/issues/1530)) ([6451d98](https://github.com/HankHuang0516/EClaw/commit/6451d98fd879c98ccb12f9222d5fbe88162ba0e4)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 12 (feedback_ keys) ([#1531](https://github.com/HankHuang0516/EClaw/issues/1531)) ([f473f49](https://github.com/HankHuang0516/EClaw/commit/f473f496251fa6ba8776350d259dcdb08ad31343)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 13 (remaining feedback_ keys) ([#1532](https://github.com/HankHuang0516/EClaw/issues/1532)) ([5d313d9](https://github.com/HankHuang0516/EClaw/commit/5d313d956d33dd816b38bf7fac087782c0f0f0c5)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 14 (slash_ keys) ([#1533](https://github.com/HankHuang0516/EClaw/issues/1533)) ([3c0abc5](https://github.com/HankHuang0516/EClaw/commit/3c0abc54fb1e2c983ad644203a59b1838c757d72)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 15 (message_, webhook_, maintenance_ keys) ([c39a667](https://github.com/HankHuang0516/EClaw/commit/c39a667999b2b98a8b6d4cde539d34e235ca3ba4))
* **i18n:** add German translations - batch 16 (nav_, channel_, dashboard_ keys) ([#1535](https://github.com/HankHuang0516/EClaw/issues/1535)) ([ae7da25](https://github.com/HankHuang0516/EClaw/commit/ae7da25372dd9d210aa70770eec8973977496f2c)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 17 (sched_ keys) ([#1536](https://github.com/HankHuang0516/EClaw/issues/1536)) ([063bf50](https://github.com/HankHuang0516/EClaw/commit/063bf502cb12a67e9a09fdfc8b4e18424d3b6e76)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 18 (remaining sched_, common_ keys) ([#1537](https://github.com/HankHuang0516/EClaw/issues/1537)) ([56c669b](https://github.com/HankHuang0516/EClaw/commit/56c669be444d472d845132bc9827cda7232a9024)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 19 (files_, ai_ keys) ([#1538](https://github.com/HankHuang0516/EClaw/issues/1538)) ([e7a7006](https://github.com/HankHuang0516/EClaw/commit/e7a70060ac3bdfd8f11df9650be9bcb334c32d8f)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 2 (ent_ec, info, qs sections) ([#1521](https://github.com/HankHuang0516/EClaw/issues/1521)) ([b3b2631](https://github.com/HankHuang0516/EClaw/commit/b3b26312d6748b6ea242d88e4bdc26162a2cba2c)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 20 (delete_, screen_ keys) ([#1539](https://github.com/HankHuang0516/EClaw/issues/1539)) ([6d61be0](https://github.com/HankHuang0516/EClaw/commit/6d61be0954b294c07db26ce74ed84bfc6fea68bd)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 21 (toast_ keys) ([#1540](https://github.com/HankHuang0516/EClaw/issues/1540)) ([d1f0056](https://github.com/HankHuang0516/EClaw/commit/d1f005684e9b55a33f940c37daacbf682660720d)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 22 (skill_, soul_, rule_, env_, kanban_, rn_ keys) ([#1541](https://github.com/HankHuang0516/EClaw/issues/1541)) ([023f865](https://github.com/HankHuang0516/EClaw/commit/023f865cfb912b42915e44684b42b9c13eef026e)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 23 (kb_col_ keys) ([#1542](https://github.com/HankHuang0516/EClaw/issues/1542)) ([905ee78](https://github.com/HankHuang0516/EClaw/commit/905ee78c3afc345a8987de9700e28cd066f439c4)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 24 (env_, contrib_, community_ keys) ([d8c29ce](https://github.com/HankHuang0516/EClaw/commit/d8c29ce7655fb768da701635eee55824f5439046))
* **i18n:** add German translations - batch 3 (guide, demo, faq sections) ([#1522](https://github.com/HankHuang0516/EClaw/issues/1522)) ([e912fba](https://github.com/HankHuang0516/EClaw/commit/e912fbab6399d100765d2013b2214345a31e273d)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 4 (more guide sections) ([#1523](https://github.com/HankHuang0516/EClaw/issues/1523)) ([c55b3a8](https://github.com/HankHuang0516/EClaw/commit/c55b3a88a9db5ce807e5b3e8461b81efcd624337)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 5 (login, settings, terms sections) ([#1524](https://github.com/HankHuang0516/EClaw/issues/1524)) ([38167d1](https://github.com/HankHuang0516/EClaw/commit/38167d1cb7875d5f1a5ba2376c9bde3c57e09abf)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 6 (footer, faq, rn sections) ([#1525](https://github.com/HankHuang0516/EClaw/issues/1525)) ([d968a6f](https://github.com/HankHuang0516/EClaw/commit/d968a6fbc0e659d526ee5ce0a546fd097311ac55)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 7 (dash_xd, dash_id sections) ([#1526](https://github.com/HankHuang0516/EClaw/issues/1526)) ([ded1e29](https://github.com/HankHuang0516/EClaw/commit/ded1e290bca3301467f95725087175d35f4b2b0c)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 8 (remaining dash_ keys) ([#1527](https://github.com/HankHuang0516/EClaw/issues/1527)) ([ce971c2](https://github.com/HankHuang0516/EClaw/commit/ce971c2d95f8baae497fac28bf5dc3990262b5dc)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 9 (borrow, notif sections) ([#1528](https://github.com/HankHuang0516/EClaw/issues/1528)) ([81913a3](https://github.com/HankHuang0516/EClaw/commit/81913a3cd92e86eb44f4268e9fe29ce7fc54a49a)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.878.0](https://github.com/HankHuang0516/EClaw/compare/v1.877.0...v1.878.0) (2026-03-31)


### Features

* **i18n:** add French translations for borrow and settings sections ([#1507](https://github.com/HankHuang0516/EClaw/issues/1507)) ([3222f66](https://github.com/HankHuang0516/EClaw/commit/3222f66532704718a56a802509b37ea0226a91c7)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for cardholder and contacts sections ([#1513](https://github.com/HankHuang0516/EClaw/issues/1513)) ([fd03424](https://github.com/HankHuang0516/EClaw/commit/fd034248404e3f7be0c2bb98859571e105bc7bc8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for chat and schedule sections ([#1510](https://github.com/HankHuang0516/EClaw/issues/1510)) ([777be93](https://github.com/HankHuang0516/EClaw/commit/777be93e9605cbbc3388c6d62d6f4b2f6043cabf)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for common, error, settings sections - batch 376 ([#1519](https://github.com/HankHuang0516/EClaw/issues/1519)) ([fa53650](https://github.com/HankHuang0516/EClaw/commit/fa536500ee04a343ad2961f839ceaf1c6481a75a)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for feedback and chat sections ([#1509](https://github.com/HankHuang0516/EClaw/issues/1509)) ([9860e93](https://github.com/HankHuang0516/EClaw/commit/9860e93221aa6ce5b8efbcd810b0635bba047bb2)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for files, guide, kanban sections ([#1515](https://github.com/HankHuang0516/EClaw/issues/1515)) ([72d1207](https://github.com/HankHuang0516/EClaw/commit/72d120753c051fae1b8133d413fc9624a3c31172)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for identity and avatar sections ([5bc7f07](https://github.com/HankHuang0516/EClaw/commit/5bc7f072ce8af1c2f66d57fb40557ddbdfcfeb64))
* **i18n:** add French translations for kanban, mission sections ([#1516](https://github.com/HankHuang0516/EClaw/issues/1516)) ([5295d61](https://github.com/HankHuang0516/EClaw/commit/5295d611308ac959832086460c1a0f1f0fc8dca6)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for mission, notification sections ([#1517](https://github.com/HankHuang0516/EClaw/issues/1517)) ([d3fa174](https://github.com/HankHuang0516/EClaw/commit/d3fa17408339ec0c7afefe2819e5ec1304431dc9)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for sc, files sections ([#1514](https://github.com/HankHuang0516/EClaw/issues/1514)) ([dbe17d0](https://github.com/HankHuang0516/EClaw/commit/dbe17d0d11e25be5419ce04cf51cb3c5817891bf)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for schedule sections ([#1511](https://github.com/HankHuang0516/EClaw/issues/1511)) ([cc7cc44](https://github.com/HankHuang0516/EClaw/commit/cc7cc44bd2bd30e04633e8dab8cc90c21f80ac31)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for settings and notifications ([#1508](https://github.com/HankHuang0516/EClaw/issues/1508)) ([d28d201](https://github.com/HankHuang0516/EClaw/commit/d28d20198d83f109677a91d857f54ac7dd9f5277)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for settings sections ([#1518](https://github.com/HankHuang0516/EClaw/issues/1518)) ([c4bbbdc](https://github.com/HankHuang0516/EClaw/commit/c4bbbdc1d3098fe8c3e72c2d4b2ce5e4ce7506a9)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for slots, webhook, borrow sections ([#1506](https://github.com/HankHuang0516/EClaw/issues/1506)) ([9920a2b](https://github.com/HankHuang0516/EClaw/commit/9920a2b85ab19be1d8f27df738080ef9f837fd63))
* **i18n:** add German translations - batch 1 (portal, nav, landing, ent) ([#1520](https://github.com/HankHuang0516/EClaw/issues/1520)) ([527e2ce](https://github.com/HankHuang0516/EClaw/commit/527e2ce50f97339d6b4072a5e227ab622d467959))
* **i18n:** add German translations - batch 10 (remaining notif, broadcast, settings keys) ([#1529](https://github.com/HankHuang0516/EClaw/issues/1529)) ([8e8b721](https://github.com/HankHuang0516/EClaw/commit/8e8b72138b98c276056a4e568c3d93a89edf54b8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 11 (chat_ keys) ([#1530](https://github.com/HankHuang0516/EClaw/issues/1530)) ([6451d98](https://github.com/HankHuang0516/EClaw/commit/6451d98fd879c98ccb12f9222d5fbe88162ba0e4)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 12 (feedback_ keys) ([#1531](https://github.com/HankHuang0516/EClaw/issues/1531)) ([f473f49](https://github.com/HankHuang0516/EClaw/commit/f473f496251fa6ba8776350d259dcdb08ad31343)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 13 (remaining feedback_ keys) ([#1532](https://github.com/HankHuang0516/EClaw/issues/1532)) ([5d313d9](https://github.com/HankHuang0516/EClaw/commit/5d313d956d33dd816b38bf7fac087782c0f0f0c5)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 14 (slash_ keys) ([#1533](https://github.com/HankHuang0516/EClaw/issues/1533)) ([3c0abc5](https://github.com/HankHuang0516/EClaw/commit/3c0abc54fb1e2c983ad644203a59b1838c757d72)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 15 (message_, webhook_, maintenance_ keys) ([c39a667](https://github.com/HankHuang0516/EClaw/commit/c39a667999b2b98a8b6d4cde539d34e235ca3ba4))
* **i18n:** add German translations - batch 16 (nav_, channel_, dashboard_ keys) ([#1535](https://github.com/HankHuang0516/EClaw/issues/1535)) ([ae7da25](https://github.com/HankHuang0516/EClaw/commit/ae7da25372dd9d210aa70770eec8973977496f2c)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 17 (sched_ keys) ([#1536](https://github.com/HankHuang0516/EClaw/issues/1536)) ([063bf50](https://github.com/HankHuang0516/EClaw/commit/063bf502cb12a67e9a09fdfc8b4e18424d3b6e76)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 18 (remaining sched_, common_ keys) ([#1537](https://github.com/HankHuang0516/EClaw/issues/1537)) ([56c669b](https://github.com/HankHuang0516/EClaw/commit/56c669be444d472d845132bc9827cda7232a9024)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 19 (files_, ai_ keys) ([#1538](https://github.com/HankHuang0516/EClaw/issues/1538)) ([e7a7006](https://github.com/HankHuang0516/EClaw/commit/e7a70060ac3bdfd8f11df9650be9bcb334c32d8f)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 2 (ent_ec, info, qs sections) ([#1521](https://github.com/HankHuang0516/EClaw/issues/1521)) ([b3b2631](https://github.com/HankHuang0516/EClaw/commit/b3b26312d6748b6ea242d88e4bdc26162a2cba2c)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 20 (delete_, screen_ keys) ([#1539](https://github.com/HankHuang0516/EClaw/issues/1539)) ([6d61be0](https://github.com/HankHuang0516/EClaw/commit/6d61be0954b294c07db26ce74ed84bfc6fea68bd)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 21 (toast_ keys) ([#1540](https://github.com/HankHuang0516/EClaw/issues/1540)) ([d1f0056](https://github.com/HankHuang0516/EClaw/commit/d1f005684e9b55a33f940c37daacbf682660720d)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 22 (skill_, soul_, rule_, env_, kanban_, rn_ keys) ([#1541](https://github.com/HankHuang0516/EClaw/issues/1541)) ([023f865](https://github.com/HankHuang0516/EClaw/commit/023f865cfb912b42915e44684b42b9c13eef026e)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 23 (kb_col_ keys) ([#1542](https://github.com/HankHuang0516/EClaw/issues/1542)) ([905ee78](https://github.com/HankHuang0516/EClaw/commit/905ee78c3afc345a8987de9700e28cd066f439c4)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 3 (guide, demo, faq sections) ([#1522](https://github.com/HankHuang0516/EClaw/issues/1522)) ([e912fba](https://github.com/HankHuang0516/EClaw/commit/e912fbab6399d100765d2013b2214345a31e273d)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 4 (more guide sections) ([#1523](https://github.com/HankHuang0516/EClaw/issues/1523)) ([c55b3a8](https://github.com/HankHuang0516/EClaw/commit/c55b3a88a9db5ce807e5b3e8461b81efcd624337)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 5 (login, settings, terms sections) ([#1524](https://github.com/HankHuang0516/EClaw/issues/1524)) ([38167d1](https://github.com/HankHuang0516/EClaw/commit/38167d1cb7875d5f1a5ba2376c9bde3c57e09abf)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 6 (footer, faq, rn sections) ([#1525](https://github.com/HankHuang0516/EClaw/issues/1525)) ([d968a6f](https://github.com/HankHuang0516/EClaw/commit/d968a6fbc0e659d526ee5ce0a546fd097311ac55)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 7 (dash_xd, dash_id sections) ([#1526](https://github.com/HankHuang0516/EClaw/issues/1526)) ([ded1e29](https://github.com/HankHuang0516/EClaw/commit/ded1e290bca3301467f95725087175d35f4b2b0c)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 8 (remaining dash_ keys) ([#1527](https://github.com/HankHuang0516/EClaw/issues/1527)) ([ce971c2](https://github.com/HankHuang0516/EClaw/commit/ce971c2d95f8baae497fac28bf5dc3990262b5dc)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 9 (borrow, notif sections) ([#1528](https://github.com/HankHuang0516/EClaw/issues/1528)) ([81913a3](https://github.com/HankHuang0516/EClaw/commit/81913a3cd92e86eb44f4268e9fe29ce7fc54a49a)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.878.0](https://github.com/HankHuang0516/EClaw/compare/v1.877.0...v1.878.0) (2026-03-31)


### Features

* **i18n:** add French translations for borrow and settings sections ([#1507](https://github.com/HankHuang0516/EClaw/issues/1507)) ([3222f66](https://github.com/HankHuang0516/EClaw/commit/3222f66532704718a56a802509b37ea0226a91c7)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for cardholder and contacts sections ([#1513](https://github.com/HankHuang0516/EClaw/issues/1513)) ([fd03424](https://github.com/HankHuang0516/EClaw/commit/fd034248404e3f7be0c2bb98859571e105bc7bc8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for chat and schedule sections ([#1510](https://github.com/HankHuang0516/EClaw/issues/1510)) ([777be93](https://github.com/HankHuang0516/EClaw/commit/777be93e9605cbbc3388c6d62d6f4b2f6043cabf)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for common, error, settings sections - batch 376 ([#1519](https://github.com/HankHuang0516/EClaw/issues/1519)) ([fa53650](https://github.com/HankHuang0516/EClaw/commit/fa536500ee04a343ad2961f839ceaf1c6481a75a)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for feedback and chat sections ([#1509](https://github.com/HankHuang0516/EClaw/issues/1509)) ([9860e93](https://github.com/HankHuang0516/EClaw/commit/9860e93221aa6ce5b8efbcd810b0635bba047bb2)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for files, guide, kanban sections ([#1515](https://github.com/HankHuang0516/EClaw/issues/1515)) ([72d1207](https://github.com/HankHuang0516/EClaw/commit/72d120753c051fae1b8133d413fc9624a3c31172)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for identity and avatar sections ([5bc7f07](https://github.com/HankHuang0516/EClaw/commit/5bc7f072ce8af1c2f66d57fb40557ddbdfcfeb64))
* **i18n:** add French translations for kanban, mission sections ([#1516](https://github.com/HankHuang0516/EClaw/issues/1516)) ([5295d61](https://github.com/HankHuang0516/EClaw/commit/5295d611308ac959832086460c1a0f1f0fc8dca6)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for mission, notification sections ([#1517](https://github.com/HankHuang0516/EClaw/issues/1517)) ([d3fa174](https://github.com/HankHuang0516/EClaw/commit/d3fa17408339ec0c7afefe2819e5ec1304431dc9)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for sc, files sections ([#1514](https://github.com/HankHuang0516/EClaw/issues/1514)) ([dbe17d0](https://github.com/HankHuang0516/EClaw/commit/dbe17d0d11e25be5419ce04cf51cb3c5817891bf)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for schedule sections ([#1511](https://github.com/HankHuang0516/EClaw/issues/1511)) ([cc7cc44](https://github.com/HankHuang0516/EClaw/commit/cc7cc44bd2bd30e04633e8dab8cc90c21f80ac31)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for settings and notifications ([#1508](https://github.com/HankHuang0516/EClaw/issues/1508)) ([d28d201](https://github.com/HankHuang0516/EClaw/commit/d28d20198d83f109677a91d857f54ac7dd9f5277)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for settings sections ([#1518](https://github.com/HankHuang0516/EClaw/issues/1518)) ([c4bbbdc](https://github.com/HankHuang0516/EClaw/commit/c4bbbdc1d3098fe8c3e72c2d4b2ce5e4ce7506a9)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for slots, webhook, borrow sections ([#1506](https://github.com/HankHuang0516/EClaw/issues/1506)) ([9920a2b](https://github.com/HankHuang0516/EClaw/commit/9920a2b85ab19be1d8f27df738080ef9f837fd63))
* **i18n:** add German translations - batch 1 (portal, nav, landing, ent) ([#1520](https://github.com/HankHuang0516/EClaw/issues/1520)) ([527e2ce](https://github.com/HankHuang0516/EClaw/commit/527e2ce50f97339d6b4072a5e227ab622d467959))
* **i18n:** add German translations - batch 10 (remaining notif, broadcast, settings keys) ([#1529](https://github.com/HankHuang0516/EClaw/issues/1529)) ([8e8b721](https://github.com/HankHuang0516/EClaw/commit/8e8b72138b98c276056a4e568c3d93a89edf54b8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 11 (chat_ keys) ([#1530](https://github.com/HankHuang0516/EClaw/issues/1530)) ([6451d98](https://github.com/HankHuang0516/EClaw/commit/6451d98fd879c98ccb12f9222d5fbe88162ba0e4)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 12 (feedback_ keys) ([#1531](https://github.com/HankHuang0516/EClaw/issues/1531)) ([f473f49](https://github.com/HankHuang0516/EClaw/commit/f473f496251fa6ba8776350d259dcdb08ad31343)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 13 (remaining feedback_ keys) ([#1532](https://github.com/HankHuang0516/EClaw/issues/1532)) ([5d313d9](https://github.com/HankHuang0516/EClaw/commit/5d313d956d33dd816b38bf7fac087782c0f0f0c5)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 14 (slash_ keys) ([#1533](https://github.com/HankHuang0516/EClaw/issues/1533)) ([3c0abc5](https://github.com/HankHuang0516/EClaw/commit/3c0abc54fb1e2c983ad644203a59b1838c757d72)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 15 (message_, webhook_, maintenance_ keys) ([c39a667](https://github.com/HankHuang0516/EClaw/commit/c39a667999b2b98a8b6d4cde539d34e235ca3ba4))
* **i18n:** add German translations - batch 16 (nav_, channel_, dashboard_ keys) ([#1535](https://github.com/HankHuang0516/EClaw/issues/1535)) ([ae7da25](https://github.com/HankHuang0516/EClaw/commit/ae7da25372dd9d210aa70770eec8973977496f2c)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 17 (sched_ keys) ([#1536](https://github.com/HankHuang0516/EClaw/issues/1536)) ([063bf50](https://github.com/HankHuang0516/EClaw/commit/063bf502cb12a67e9a09fdfc8b4e18424d3b6e76)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 18 (remaining sched_, common_ keys) ([#1537](https://github.com/HankHuang0516/EClaw/issues/1537)) ([56c669b](https://github.com/HankHuang0516/EClaw/commit/56c669be444d472d845132bc9827cda7232a9024)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 19 (files_, ai_ keys) ([#1538](https://github.com/HankHuang0516/EClaw/issues/1538)) ([e7a7006](https://github.com/HankHuang0516/EClaw/commit/e7a70060ac3bdfd8f11df9650be9bcb334c32d8f)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 2 (ent_ec, info, qs sections) ([#1521](https://github.com/HankHuang0516/EClaw/issues/1521)) ([b3b2631](https://github.com/HankHuang0516/EClaw/commit/b3b26312d6748b6ea242d88e4bdc26162a2cba2c)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 20 (delete_, screen_ keys) ([#1539](https://github.com/HankHuang0516/EClaw/issues/1539)) ([6d61be0](https://github.com/HankHuang0516/EClaw/commit/6d61be0954b294c07db26ce74ed84bfc6fea68bd)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 21 (toast_ keys) ([#1540](https://github.com/HankHuang0516/EClaw/issues/1540)) ([d1f0056](https://github.com/HankHuang0516/EClaw/commit/d1f005684e9b55a33f940c37daacbf682660720d)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 22 (skill_, soul_, rule_, env_, kanban_, rn_ keys) ([#1541](https://github.com/HankHuang0516/EClaw/issues/1541)) ([023f865](https://github.com/HankHuang0516/EClaw/commit/023f865cfb912b42915e44684b42b9c13eef026e)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 3 (guide, demo, faq sections) ([#1522](https://github.com/HankHuang0516/EClaw/issues/1522)) ([e912fba](https://github.com/HankHuang0516/EClaw/commit/e912fbab6399d100765d2013b2214345a31e273d)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 4 (more guide sections) ([#1523](https://github.com/HankHuang0516/EClaw/issues/1523)) ([c55b3a8](https://github.com/HankHuang0516/EClaw/commit/c55b3a88a9db5ce807e5b3e8461b81efcd624337)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 5 (login, settings, terms sections) ([#1524](https://github.com/HankHuang0516/EClaw/issues/1524)) ([38167d1](https://github.com/HankHuang0516/EClaw/commit/38167d1cb7875d5f1a5ba2376c9bde3c57e09abf)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 6 (footer, faq, rn sections) ([#1525](https://github.com/HankHuang0516/EClaw/issues/1525)) ([d968a6f](https://github.com/HankHuang0516/EClaw/commit/d968a6fbc0e659d526ee5ce0a546fd097311ac55)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 7 (dash_xd, dash_id sections) ([#1526](https://github.com/HankHuang0516/EClaw/issues/1526)) ([ded1e29](https://github.com/HankHuang0516/EClaw/commit/ded1e290bca3301467f95725087175d35f4b2b0c)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 8 (remaining dash_ keys) ([#1527](https://github.com/HankHuang0516/EClaw/issues/1527)) ([ce971c2](https://github.com/HankHuang0516/EClaw/commit/ce971c2d95f8baae497fac28bf5dc3990262b5dc)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 9 (borrow, notif sections) ([#1528](https://github.com/HankHuang0516/EClaw/issues/1528)) ([81913a3](https://github.com/HankHuang0516/EClaw/commit/81913a3cd92e86eb44f4268e9fe29ce7fc54a49a)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.878.0](https://github.com/HankHuang0516/EClaw/compare/v1.877.0...v1.878.0) (2026-03-31)


### Features

* **i18n:** add French translations for borrow and settings sections ([#1507](https://github.com/HankHuang0516/EClaw/issues/1507)) ([3222f66](https://github.com/HankHuang0516/EClaw/commit/3222f66532704718a56a802509b37ea0226a91c7)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for cardholder and contacts sections ([#1513](https://github.com/HankHuang0516/EClaw/issues/1513)) ([fd03424](https://github.com/HankHuang0516/EClaw/commit/fd034248404e3f7be0c2bb98859571e105bc7bc8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for chat and schedule sections ([#1510](https://github.com/HankHuang0516/EClaw/issues/1510)) ([777be93](https://github.com/HankHuang0516/EClaw/commit/777be93e9605cbbc3388c6d62d6f4b2f6043cabf)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for common, error, settings sections - batch 376 ([#1519](https://github.com/HankHuang0516/EClaw/issues/1519)) ([fa53650](https://github.com/HankHuang0516/EClaw/commit/fa536500ee04a343ad2961f839ceaf1c6481a75a)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for feedback and chat sections ([#1509](https://github.com/HankHuang0516/EClaw/issues/1509)) ([9860e93](https://github.com/HankHuang0516/EClaw/commit/9860e93221aa6ce5b8efbcd810b0635bba047bb2)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for files, guide, kanban sections ([#1515](https://github.com/HankHuang0516/EClaw/issues/1515)) ([72d1207](https://github.com/HankHuang0516/EClaw/commit/72d120753c051fae1b8133d413fc9624a3c31172)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for identity and avatar sections ([5bc7f07](https://github.com/HankHuang0516/EClaw/commit/5bc7f072ce8af1c2f66d57fb40557ddbdfcfeb64))
* **i18n:** add French translations for kanban, mission sections ([#1516](https://github.com/HankHuang0516/EClaw/issues/1516)) ([5295d61](https://github.com/HankHuang0516/EClaw/commit/5295d611308ac959832086460c1a0f1f0fc8dca6)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for mission, notification sections ([#1517](https://github.com/HankHuang0516/EClaw/issues/1517)) ([d3fa174](https://github.com/HankHuang0516/EClaw/commit/d3fa17408339ec0c7afefe2819e5ec1304431dc9)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for sc, files sections ([#1514](https://github.com/HankHuang0516/EClaw/issues/1514)) ([dbe17d0](https://github.com/HankHuang0516/EClaw/commit/dbe17d0d11e25be5419ce04cf51cb3c5817891bf)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for schedule sections ([#1511](https://github.com/HankHuang0516/EClaw/issues/1511)) ([cc7cc44](https://github.com/HankHuang0516/EClaw/commit/cc7cc44bd2bd30e04633e8dab8cc90c21f80ac31)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for settings and notifications ([#1508](https://github.com/HankHuang0516/EClaw/issues/1508)) ([d28d201](https://github.com/HankHuang0516/EClaw/commit/d28d20198d83f109677a91d857f54ac7dd9f5277)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for settings sections ([#1518](https://github.com/HankHuang0516/EClaw/issues/1518)) ([c4bbbdc](https://github.com/HankHuang0516/EClaw/commit/c4bbbdc1d3098fe8c3e72c2d4b2ce5e4ce7506a9)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for slots, webhook, borrow sections ([#1506](https://github.com/HankHuang0516/EClaw/issues/1506)) ([9920a2b](https://github.com/HankHuang0516/EClaw/commit/9920a2b85ab19be1d8f27df738080ef9f837fd63))
* **i18n:** add German translations - batch 1 (portal, nav, landing, ent) ([#1520](https://github.com/HankHuang0516/EClaw/issues/1520)) ([527e2ce](https://github.com/HankHuang0516/EClaw/commit/527e2ce50f97339d6b4072a5e227ab622d467959))
* **i18n:** add German translations - batch 10 (remaining notif, broadcast, settings keys) ([#1529](https://github.com/HankHuang0516/EClaw/issues/1529)) ([8e8b721](https://github.com/HankHuang0516/EClaw/commit/8e8b72138b98c276056a4e568c3d93a89edf54b8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 11 (chat_ keys) ([#1530](https://github.com/HankHuang0516/EClaw/issues/1530)) ([6451d98](https://github.com/HankHuang0516/EClaw/commit/6451d98fd879c98ccb12f9222d5fbe88162ba0e4)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 12 (feedback_ keys) ([#1531](https://github.com/HankHuang0516/EClaw/issues/1531)) ([f473f49](https://github.com/HankHuang0516/EClaw/commit/f473f496251fa6ba8776350d259dcdb08ad31343)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 13 (remaining feedback_ keys) ([#1532](https://github.com/HankHuang0516/EClaw/issues/1532)) ([5d313d9](https://github.com/HankHuang0516/EClaw/commit/5d313d956d33dd816b38bf7fac087782c0f0f0c5)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 14 (slash_ keys) ([#1533](https://github.com/HankHuang0516/EClaw/issues/1533)) ([3c0abc5](https://github.com/HankHuang0516/EClaw/commit/3c0abc54fb1e2c983ad644203a59b1838c757d72)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 15 (message_, webhook_, maintenance_ keys) ([c39a667](https://github.com/HankHuang0516/EClaw/commit/c39a667999b2b98a8b6d4cde539d34e235ca3ba4))
* **i18n:** add German translations - batch 16 (nav_, channel_, dashboard_ keys) ([#1535](https://github.com/HankHuang0516/EClaw/issues/1535)) ([ae7da25](https://github.com/HankHuang0516/EClaw/commit/ae7da25372dd9d210aa70770eec8973977496f2c)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 17 (sched_ keys) ([#1536](https://github.com/HankHuang0516/EClaw/issues/1536)) ([063bf50](https://github.com/HankHuang0516/EClaw/commit/063bf502cb12a67e9a09fdfc8b4e18424d3b6e76)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 18 (remaining sched_, common_ keys) ([#1537](https://github.com/HankHuang0516/EClaw/issues/1537)) ([56c669b](https://github.com/HankHuang0516/EClaw/commit/56c669be444d472d845132bc9827cda7232a9024)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 19 (files_, ai_ keys) ([#1538](https://github.com/HankHuang0516/EClaw/issues/1538)) ([e7a7006](https://github.com/HankHuang0516/EClaw/commit/e7a70060ac3bdfd8f11df9650be9bcb334c32d8f)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 2 (ent_ec, info, qs sections) ([#1521](https://github.com/HankHuang0516/EClaw/issues/1521)) ([b3b2631](https://github.com/HankHuang0516/EClaw/commit/b3b26312d6748b6ea242d88e4bdc26162a2cba2c)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 20 (delete_, screen_ keys) ([#1539](https://github.com/HankHuang0516/EClaw/issues/1539)) ([6d61be0](https://github.com/HankHuang0516/EClaw/commit/6d61be0954b294c07db26ce74ed84bfc6fea68bd)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 21 (toast_ keys) ([#1540](https://github.com/HankHuang0516/EClaw/issues/1540)) ([d1f0056](https://github.com/HankHuang0516/EClaw/commit/d1f005684e9b55a33f940c37daacbf682660720d)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 3 (guide, demo, faq sections) ([#1522](https://github.com/HankHuang0516/EClaw/issues/1522)) ([e912fba](https://github.com/HankHuang0516/EClaw/commit/e912fbab6399d100765d2013b2214345a31e273d)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 4 (more guide sections) ([#1523](https://github.com/HankHuang0516/EClaw/issues/1523)) ([c55b3a8](https://github.com/HankHuang0516/EClaw/commit/c55b3a88a9db5ce807e5b3e8461b81efcd624337)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 5 (login, settings, terms sections) ([#1524](https://github.com/HankHuang0516/EClaw/issues/1524)) ([38167d1](https://github.com/HankHuang0516/EClaw/commit/38167d1cb7875d5f1a5ba2376c9bde3c57e09abf)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 6 (footer, faq, rn sections) ([#1525](https://github.com/HankHuang0516/EClaw/issues/1525)) ([d968a6f](https://github.com/HankHuang0516/EClaw/commit/d968a6fbc0e659d526ee5ce0a546fd097311ac55)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 7 (dash_xd, dash_id sections) ([#1526](https://github.com/HankHuang0516/EClaw/issues/1526)) ([ded1e29](https://github.com/HankHuang0516/EClaw/commit/ded1e290bca3301467f95725087175d35f4b2b0c)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 8 (remaining dash_ keys) ([#1527](https://github.com/HankHuang0516/EClaw/issues/1527)) ([ce971c2](https://github.com/HankHuang0516/EClaw/commit/ce971c2d95f8baae497fac28bf5dc3990262b5dc)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 9 (borrow, notif sections) ([#1528](https://github.com/HankHuang0516/EClaw/issues/1528)) ([81913a3](https://github.com/HankHuang0516/EClaw/commit/81913a3cd92e86eb44f4268e9fe29ce7fc54a49a)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.878.0](https://github.com/HankHuang0516/EClaw/compare/v1.877.0...v1.878.0) (2026-03-31)


### Features

* **i18n:** add French translations for borrow and settings sections ([#1507](https://github.com/HankHuang0516/EClaw/issues/1507)) ([3222f66](https://github.com/HankHuang0516/EClaw/commit/3222f66532704718a56a802509b37ea0226a91c7)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for cardholder and contacts sections ([#1513](https://github.com/HankHuang0516/EClaw/issues/1513)) ([fd03424](https://github.com/HankHuang0516/EClaw/commit/fd034248404e3f7be0c2bb98859571e105bc7bc8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for chat and schedule sections ([#1510](https://github.com/HankHuang0516/EClaw/issues/1510)) ([777be93](https://github.com/HankHuang0516/EClaw/commit/777be93e9605cbbc3388c6d62d6f4b2f6043cabf)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for common, error, settings sections - batch 376 ([#1519](https://github.com/HankHuang0516/EClaw/issues/1519)) ([fa53650](https://github.com/HankHuang0516/EClaw/commit/fa536500ee04a343ad2961f839ceaf1c6481a75a)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for feedback and chat sections ([#1509](https://github.com/HankHuang0516/EClaw/issues/1509)) ([9860e93](https://github.com/HankHuang0516/EClaw/commit/9860e93221aa6ce5b8efbcd810b0635bba047bb2)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for files, guide, kanban sections ([#1515](https://github.com/HankHuang0516/EClaw/issues/1515)) ([72d1207](https://github.com/HankHuang0516/EClaw/commit/72d120753c051fae1b8133d413fc9624a3c31172)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for identity and avatar sections ([5bc7f07](https://github.com/HankHuang0516/EClaw/commit/5bc7f072ce8af1c2f66d57fb40557ddbdfcfeb64))
* **i18n:** add French translations for kanban, mission sections ([#1516](https://github.com/HankHuang0516/EClaw/issues/1516)) ([5295d61](https://github.com/HankHuang0516/EClaw/commit/5295d611308ac959832086460c1a0f1f0fc8dca6)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for mission, notification sections ([#1517](https://github.com/HankHuang0516/EClaw/issues/1517)) ([d3fa174](https://github.com/HankHuang0516/EClaw/commit/d3fa17408339ec0c7afefe2819e5ec1304431dc9)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for sc, files sections ([#1514](https://github.com/HankHuang0516/EClaw/issues/1514)) ([dbe17d0](https://github.com/HankHuang0516/EClaw/commit/dbe17d0d11e25be5419ce04cf51cb3c5817891bf)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for schedule sections ([#1511](https://github.com/HankHuang0516/EClaw/issues/1511)) ([cc7cc44](https://github.com/HankHuang0516/EClaw/commit/cc7cc44bd2bd30e04633e8dab8cc90c21f80ac31)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for settings and notifications ([#1508](https://github.com/HankHuang0516/EClaw/issues/1508)) ([d28d201](https://github.com/HankHuang0516/EClaw/commit/d28d20198d83f109677a91d857f54ac7dd9f5277)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for settings sections ([#1518](https://github.com/HankHuang0516/EClaw/issues/1518)) ([c4bbbdc](https://github.com/HankHuang0516/EClaw/commit/c4bbbdc1d3098fe8c3e72c2d4b2ce5e4ce7506a9)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for slots, webhook, borrow sections ([#1506](https://github.com/HankHuang0516/EClaw/issues/1506)) ([9920a2b](https://github.com/HankHuang0516/EClaw/commit/9920a2b85ab19be1d8f27df738080ef9f837fd63))
* **i18n:** add German translations - batch 1 (portal, nav, landing, ent) ([#1520](https://github.com/HankHuang0516/EClaw/issues/1520)) ([527e2ce](https://github.com/HankHuang0516/EClaw/commit/527e2ce50f97339d6b4072a5e227ab622d467959))
* **i18n:** add German translations - batch 10 (remaining notif, broadcast, settings keys) ([#1529](https://github.com/HankHuang0516/EClaw/issues/1529)) ([8e8b721](https://github.com/HankHuang0516/EClaw/commit/8e8b72138b98c276056a4e568c3d93a89edf54b8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 11 (chat_ keys) ([#1530](https://github.com/HankHuang0516/EClaw/issues/1530)) ([6451d98](https://github.com/HankHuang0516/EClaw/commit/6451d98fd879c98ccb12f9222d5fbe88162ba0e4)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 12 (feedback_ keys) ([#1531](https://github.com/HankHuang0516/EClaw/issues/1531)) ([f473f49](https://github.com/HankHuang0516/EClaw/commit/f473f496251fa6ba8776350d259dcdb08ad31343)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 13 (remaining feedback_ keys) ([#1532](https://github.com/HankHuang0516/EClaw/issues/1532)) ([5d313d9](https://github.com/HankHuang0516/EClaw/commit/5d313d956d33dd816b38bf7fac087782c0f0f0c5)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 14 (slash_ keys) ([#1533](https://github.com/HankHuang0516/EClaw/issues/1533)) ([3c0abc5](https://github.com/HankHuang0516/EClaw/commit/3c0abc54fb1e2c983ad644203a59b1838c757d72)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 15 (message_, webhook_, maintenance_ keys) ([c39a667](https://github.com/HankHuang0516/EClaw/commit/c39a667999b2b98a8b6d4cde539d34e235ca3ba4))
* **i18n:** add German translations - batch 16 (nav_, channel_, dashboard_ keys) ([#1535](https://github.com/HankHuang0516/EClaw/issues/1535)) ([ae7da25](https://github.com/HankHuang0516/EClaw/commit/ae7da25372dd9d210aa70770eec8973977496f2c)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 17 (sched_ keys) ([#1536](https://github.com/HankHuang0516/EClaw/issues/1536)) ([063bf50](https://github.com/HankHuang0516/EClaw/commit/063bf502cb12a67e9a09fdfc8b4e18424d3b6e76)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 18 (remaining sched_, common_ keys) ([#1537](https://github.com/HankHuang0516/EClaw/issues/1537)) ([56c669b](https://github.com/HankHuang0516/EClaw/commit/56c669be444d472d845132bc9827cda7232a9024)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 19 (files_, ai_ keys) ([#1538](https://github.com/HankHuang0516/EClaw/issues/1538)) ([e7a7006](https://github.com/HankHuang0516/EClaw/commit/e7a70060ac3bdfd8f11df9650be9bcb334c32d8f)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 2 (ent_ec, info, qs sections) ([#1521](https://github.com/HankHuang0516/EClaw/issues/1521)) ([b3b2631](https://github.com/HankHuang0516/EClaw/commit/b3b26312d6748b6ea242d88e4bdc26162a2cba2c)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 20 (delete_, screen_ keys) ([#1539](https://github.com/HankHuang0516/EClaw/issues/1539)) ([6d61be0](https://github.com/HankHuang0516/EClaw/commit/6d61be0954b294c07db26ce74ed84bfc6fea68bd)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 3 (guide, demo, faq sections) ([#1522](https://github.com/HankHuang0516/EClaw/issues/1522)) ([e912fba](https://github.com/HankHuang0516/EClaw/commit/e912fbab6399d100765d2013b2214345a31e273d)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 4 (more guide sections) ([#1523](https://github.com/HankHuang0516/EClaw/issues/1523)) ([c55b3a8](https://github.com/HankHuang0516/EClaw/commit/c55b3a88a9db5ce807e5b3e8461b81efcd624337)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 5 (login, settings, terms sections) ([#1524](https://github.com/HankHuang0516/EClaw/issues/1524)) ([38167d1](https://github.com/HankHuang0516/EClaw/commit/38167d1cb7875d5f1a5ba2376c9bde3c57e09abf)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 6 (footer, faq, rn sections) ([#1525](https://github.com/HankHuang0516/EClaw/issues/1525)) ([d968a6f](https://github.com/HankHuang0516/EClaw/commit/d968a6fbc0e659d526ee5ce0a546fd097311ac55)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 7 (dash_xd, dash_id sections) ([#1526](https://github.com/HankHuang0516/EClaw/issues/1526)) ([ded1e29](https://github.com/HankHuang0516/EClaw/commit/ded1e290bca3301467f95725087175d35f4b2b0c)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 8 (remaining dash_ keys) ([#1527](https://github.com/HankHuang0516/EClaw/issues/1527)) ([ce971c2](https://github.com/HankHuang0516/EClaw/commit/ce971c2d95f8baae497fac28bf5dc3990262b5dc)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 9 (borrow, notif sections) ([#1528](https://github.com/HankHuang0516/EClaw/issues/1528)) ([81913a3](https://github.com/HankHuang0516/EClaw/commit/81913a3cd92e86eb44f4268e9fe29ce7fc54a49a)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.878.0](https://github.com/HankHuang0516/EClaw/compare/v1.877.0...v1.878.0) (2026-03-31)


### Features

* **i18n:** add French translations for borrow and settings sections ([#1507](https://github.com/HankHuang0516/EClaw/issues/1507)) ([3222f66](https://github.com/HankHuang0516/EClaw/commit/3222f66532704718a56a802509b37ea0226a91c7)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for cardholder and contacts sections ([#1513](https://github.com/HankHuang0516/EClaw/issues/1513)) ([fd03424](https://github.com/HankHuang0516/EClaw/commit/fd034248404e3f7be0c2bb98859571e105bc7bc8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for chat and schedule sections ([#1510](https://github.com/HankHuang0516/EClaw/issues/1510)) ([777be93](https://github.com/HankHuang0516/EClaw/commit/777be93e9605cbbc3388c6d62d6f4b2f6043cabf)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for common, error, settings sections - batch 376 ([#1519](https://github.com/HankHuang0516/EClaw/issues/1519)) ([fa53650](https://github.com/HankHuang0516/EClaw/commit/fa536500ee04a343ad2961f839ceaf1c6481a75a)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for feedback and chat sections ([#1509](https://github.com/HankHuang0516/EClaw/issues/1509)) ([9860e93](https://github.com/HankHuang0516/EClaw/commit/9860e93221aa6ce5b8efbcd810b0635bba047bb2)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for files, guide, kanban sections ([#1515](https://github.com/HankHuang0516/EClaw/issues/1515)) ([72d1207](https://github.com/HankHuang0516/EClaw/commit/72d120753c051fae1b8133d413fc9624a3c31172)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for identity and avatar sections ([5bc7f07](https://github.com/HankHuang0516/EClaw/commit/5bc7f072ce8af1c2f66d57fb40557ddbdfcfeb64))
* **i18n:** add French translations for kanban, mission sections ([#1516](https://github.com/HankHuang0516/EClaw/issues/1516)) ([5295d61](https://github.com/HankHuang0516/EClaw/commit/5295d611308ac959832086460c1a0f1f0fc8dca6)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for mission, notification sections ([#1517](https://github.com/HankHuang0516/EClaw/issues/1517)) ([d3fa174](https://github.com/HankHuang0516/EClaw/commit/d3fa17408339ec0c7afefe2819e5ec1304431dc9)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for sc, files sections ([#1514](https://github.com/HankHuang0516/EClaw/issues/1514)) ([dbe17d0](https://github.com/HankHuang0516/EClaw/commit/dbe17d0d11e25be5419ce04cf51cb3c5817891bf)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for schedule sections ([#1511](https://github.com/HankHuang0516/EClaw/issues/1511)) ([cc7cc44](https://github.com/HankHuang0516/EClaw/commit/cc7cc44bd2bd30e04633e8dab8cc90c21f80ac31)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for settings and notifications ([#1508](https://github.com/HankHuang0516/EClaw/issues/1508)) ([d28d201](https://github.com/HankHuang0516/EClaw/commit/d28d20198d83f109677a91d857f54ac7dd9f5277)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for settings sections ([#1518](https://github.com/HankHuang0516/EClaw/issues/1518)) ([c4bbbdc](https://github.com/HankHuang0516/EClaw/commit/c4bbbdc1d3098fe8c3e72c2d4b2ce5e4ce7506a9)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for slots, webhook, borrow sections ([#1506](https://github.com/HankHuang0516/EClaw/issues/1506)) ([9920a2b](https://github.com/HankHuang0516/EClaw/commit/9920a2b85ab19be1d8f27df738080ef9f837fd63))
* **i18n:** add German translations - batch 1 (portal, nav, landing, ent) ([#1520](https://github.com/HankHuang0516/EClaw/issues/1520)) ([527e2ce](https://github.com/HankHuang0516/EClaw/commit/527e2ce50f97339d6b4072a5e227ab622d467959))
* **i18n:** add German translations - batch 10 (remaining notif, broadcast, settings keys) ([#1529](https://github.com/HankHuang0516/EClaw/issues/1529)) ([8e8b721](https://github.com/HankHuang0516/EClaw/commit/8e8b72138b98c276056a4e568c3d93a89edf54b8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 11 (chat_ keys) ([#1530](https://github.com/HankHuang0516/EClaw/issues/1530)) ([6451d98](https://github.com/HankHuang0516/EClaw/commit/6451d98fd879c98ccb12f9222d5fbe88162ba0e4)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 12 (feedback_ keys) ([#1531](https://github.com/HankHuang0516/EClaw/issues/1531)) ([f473f49](https://github.com/HankHuang0516/EClaw/commit/f473f496251fa6ba8776350d259dcdb08ad31343)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 13 (remaining feedback_ keys) ([#1532](https://github.com/HankHuang0516/EClaw/issues/1532)) ([5d313d9](https://github.com/HankHuang0516/EClaw/commit/5d313d956d33dd816b38bf7fac087782c0f0f0c5)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 14 (slash_ keys) ([#1533](https://github.com/HankHuang0516/EClaw/issues/1533)) ([3c0abc5](https://github.com/HankHuang0516/EClaw/commit/3c0abc54fb1e2c983ad644203a59b1838c757d72)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 15 (message_, webhook_, maintenance_ keys) ([c39a667](https://github.com/HankHuang0516/EClaw/commit/c39a667999b2b98a8b6d4cde539d34e235ca3ba4))
* **i18n:** add German translations - batch 16 (nav_, channel_, dashboard_ keys) ([#1535](https://github.com/HankHuang0516/EClaw/issues/1535)) ([ae7da25](https://github.com/HankHuang0516/EClaw/commit/ae7da25372dd9d210aa70770eec8973977496f2c)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 17 (sched_ keys) ([#1536](https://github.com/HankHuang0516/EClaw/issues/1536)) ([063bf50](https://github.com/HankHuang0516/EClaw/commit/063bf502cb12a67e9a09fdfc8b4e18424d3b6e76)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 18 (remaining sched_, common_ keys) ([#1537](https://github.com/HankHuang0516/EClaw/issues/1537)) ([56c669b](https://github.com/HankHuang0516/EClaw/commit/56c669be444d472d845132bc9827cda7232a9024)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 19 (files_, ai_ keys) ([#1538](https://github.com/HankHuang0516/EClaw/issues/1538)) ([e7a7006](https://github.com/HankHuang0516/EClaw/commit/e7a70060ac3bdfd8f11df9650be9bcb334c32d8f)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 2 (ent_ec, info, qs sections) ([#1521](https://github.com/HankHuang0516/EClaw/issues/1521)) ([b3b2631](https://github.com/HankHuang0516/EClaw/commit/b3b26312d6748b6ea242d88e4bdc26162a2cba2c)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 3 (guide, demo, faq sections) ([#1522](https://github.com/HankHuang0516/EClaw/issues/1522)) ([e912fba](https://github.com/HankHuang0516/EClaw/commit/e912fbab6399d100765d2013b2214345a31e273d)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 4 (more guide sections) ([#1523](https://github.com/HankHuang0516/EClaw/issues/1523)) ([c55b3a8](https://github.com/HankHuang0516/EClaw/commit/c55b3a88a9db5ce807e5b3e8461b81efcd624337)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 5 (login, settings, terms sections) ([#1524](https://github.com/HankHuang0516/EClaw/issues/1524)) ([38167d1](https://github.com/HankHuang0516/EClaw/commit/38167d1cb7875d5f1a5ba2376c9bde3c57e09abf)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 6 (footer, faq, rn sections) ([#1525](https://github.com/HankHuang0516/EClaw/issues/1525)) ([d968a6f](https://github.com/HankHuang0516/EClaw/commit/d968a6fbc0e659d526ee5ce0a546fd097311ac55)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 7 (dash_xd, dash_id sections) ([#1526](https://github.com/HankHuang0516/EClaw/issues/1526)) ([ded1e29](https://github.com/HankHuang0516/EClaw/commit/ded1e290bca3301467f95725087175d35f4b2b0c)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 8 (remaining dash_ keys) ([#1527](https://github.com/HankHuang0516/EClaw/issues/1527)) ([ce971c2](https://github.com/HankHuang0516/EClaw/commit/ce971c2d95f8baae497fac28bf5dc3990262b5dc)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 9 (borrow, notif sections) ([#1528](https://github.com/HankHuang0516/EClaw/issues/1528)) ([81913a3](https://github.com/HankHuang0516/EClaw/commit/81913a3cd92e86eb44f4268e9fe29ce7fc54a49a)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.878.0](https://github.com/HankHuang0516/EClaw/compare/v1.877.0...v1.878.0) (2026-03-31)


### Features

* **i18n:** add French translations for borrow and settings sections ([#1507](https://github.com/HankHuang0516/EClaw/issues/1507)) ([3222f66](https://github.com/HankHuang0516/EClaw/commit/3222f66532704718a56a802509b37ea0226a91c7)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for cardholder and contacts sections ([#1513](https://github.com/HankHuang0516/EClaw/issues/1513)) ([fd03424](https://github.com/HankHuang0516/EClaw/commit/fd034248404e3f7be0c2bb98859571e105bc7bc8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for chat and schedule sections ([#1510](https://github.com/HankHuang0516/EClaw/issues/1510)) ([777be93](https://github.com/HankHuang0516/EClaw/commit/777be93e9605cbbc3388c6d62d6f4b2f6043cabf)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for common, error, settings sections - batch 376 ([#1519](https://github.com/HankHuang0516/EClaw/issues/1519)) ([fa53650](https://github.com/HankHuang0516/EClaw/commit/fa536500ee04a343ad2961f839ceaf1c6481a75a)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for feedback and chat sections ([#1509](https://github.com/HankHuang0516/EClaw/issues/1509)) ([9860e93](https://github.com/HankHuang0516/EClaw/commit/9860e93221aa6ce5b8efbcd810b0635bba047bb2)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for files, guide, kanban sections ([#1515](https://github.com/HankHuang0516/EClaw/issues/1515)) ([72d1207](https://github.com/HankHuang0516/EClaw/commit/72d120753c051fae1b8133d413fc9624a3c31172)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for identity and avatar sections ([5bc7f07](https://github.com/HankHuang0516/EClaw/commit/5bc7f072ce8af1c2f66d57fb40557ddbdfcfeb64))
* **i18n:** add French translations for kanban, mission sections ([#1516](https://github.com/HankHuang0516/EClaw/issues/1516)) ([5295d61](https://github.com/HankHuang0516/EClaw/commit/5295d611308ac959832086460c1a0f1f0fc8dca6)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for mission, notification sections ([#1517](https://github.com/HankHuang0516/EClaw/issues/1517)) ([d3fa174](https://github.com/HankHuang0516/EClaw/commit/d3fa17408339ec0c7afefe2819e5ec1304431dc9)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for sc, files sections ([#1514](https://github.com/HankHuang0516/EClaw/issues/1514)) ([dbe17d0](https://github.com/HankHuang0516/EClaw/commit/dbe17d0d11e25be5419ce04cf51cb3c5817891bf)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for schedule sections ([#1511](https://github.com/HankHuang0516/EClaw/issues/1511)) ([cc7cc44](https://github.com/HankHuang0516/EClaw/commit/cc7cc44bd2bd30e04633e8dab8cc90c21f80ac31)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for settings and notifications ([#1508](https://github.com/HankHuang0516/EClaw/issues/1508)) ([d28d201](https://github.com/HankHuang0516/EClaw/commit/d28d20198d83f109677a91d857f54ac7dd9f5277)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for settings sections ([#1518](https://github.com/HankHuang0516/EClaw/issues/1518)) ([c4bbbdc](https://github.com/HankHuang0516/EClaw/commit/c4bbbdc1d3098fe8c3e72c2d4b2ce5e4ce7506a9)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for slots, webhook, borrow sections ([#1506](https://github.com/HankHuang0516/EClaw/issues/1506)) ([9920a2b](https://github.com/HankHuang0516/EClaw/commit/9920a2b85ab19be1d8f27df738080ef9f837fd63))
* **i18n:** add German translations - batch 1 (portal, nav, landing, ent) ([#1520](https://github.com/HankHuang0516/EClaw/issues/1520)) ([527e2ce](https://github.com/HankHuang0516/EClaw/commit/527e2ce50f97339d6b4072a5e227ab622d467959))
* **i18n:** add German translations - batch 10 (remaining notif, broadcast, settings keys) ([#1529](https://github.com/HankHuang0516/EClaw/issues/1529)) ([8e8b721](https://github.com/HankHuang0516/EClaw/commit/8e8b72138b98c276056a4e568c3d93a89edf54b8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 11 (chat_ keys) ([#1530](https://github.com/HankHuang0516/EClaw/issues/1530)) ([6451d98](https://github.com/HankHuang0516/EClaw/commit/6451d98fd879c98ccb12f9222d5fbe88162ba0e4)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 12 (feedback_ keys) ([#1531](https://github.com/HankHuang0516/EClaw/issues/1531)) ([f473f49](https://github.com/HankHuang0516/EClaw/commit/f473f496251fa6ba8776350d259dcdb08ad31343)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 13 (remaining feedback_ keys) ([#1532](https://github.com/HankHuang0516/EClaw/issues/1532)) ([5d313d9](https://github.com/HankHuang0516/EClaw/commit/5d313d956d33dd816b38bf7fac087782c0f0f0c5)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 14 (slash_ keys) ([#1533](https://github.com/HankHuang0516/EClaw/issues/1533)) ([3c0abc5](https://github.com/HankHuang0516/EClaw/commit/3c0abc54fb1e2c983ad644203a59b1838c757d72)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 15 (message_, webhook_, maintenance_ keys) ([c39a667](https://github.com/HankHuang0516/EClaw/commit/c39a667999b2b98a8b6d4cde539d34e235ca3ba4))
* **i18n:** add German translations - batch 16 (nav_, channel_, dashboard_ keys) ([#1535](https://github.com/HankHuang0516/EClaw/issues/1535)) ([ae7da25](https://github.com/HankHuang0516/EClaw/commit/ae7da25372dd9d210aa70770eec8973977496f2c)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 17 (sched_ keys) ([#1536](https://github.com/HankHuang0516/EClaw/issues/1536)) ([063bf50](https://github.com/HankHuang0516/EClaw/commit/063bf502cb12a67e9a09fdfc8b4e18424d3b6e76)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 18 (remaining sched_, common_ keys) ([#1537](https://github.com/HankHuang0516/EClaw/issues/1537)) ([56c669b](https://github.com/HankHuang0516/EClaw/commit/56c669be444d472d845132bc9827cda7232a9024)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 2 (ent_ec, info, qs sections) ([#1521](https://github.com/HankHuang0516/EClaw/issues/1521)) ([b3b2631](https://github.com/HankHuang0516/EClaw/commit/b3b26312d6748b6ea242d88e4bdc26162a2cba2c)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 3 (guide, demo, faq sections) ([#1522](https://github.com/HankHuang0516/EClaw/issues/1522)) ([e912fba](https://github.com/HankHuang0516/EClaw/commit/e912fbab6399d100765d2013b2214345a31e273d)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 4 (more guide sections) ([#1523](https://github.com/HankHuang0516/EClaw/issues/1523)) ([c55b3a8](https://github.com/HankHuang0516/EClaw/commit/c55b3a88a9db5ce807e5b3e8461b81efcd624337)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 5 (login, settings, terms sections) ([#1524](https://github.com/HankHuang0516/EClaw/issues/1524)) ([38167d1](https://github.com/HankHuang0516/EClaw/commit/38167d1cb7875d5f1a5ba2376c9bde3c57e09abf)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 6 (footer, faq, rn sections) ([#1525](https://github.com/HankHuang0516/EClaw/issues/1525)) ([d968a6f](https://github.com/HankHuang0516/EClaw/commit/d968a6fbc0e659d526ee5ce0a546fd097311ac55)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 7 (dash_xd, dash_id sections) ([#1526](https://github.com/HankHuang0516/EClaw/issues/1526)) ([ded1e29](https://github.com/HankHuang0516/EClaw/commit/ded1e290bca3301467f95725087175d35f4b2b0c)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 8 (remaining dash_ keys) ([#1527](https://github.com/HankHuang0516/EClaw/issues/1527)) ([ce971c2](https://github.com/HankHuang0516/EClaw/commit/ce971c2d95f8baae497fac28bf5dc3990262b5dc)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 9 (borrow, notif sections) ([#1528](https://github.com/HankHuang0516/EClaw/issues/1528)) ([81913a3](https://github.com/HankHuang0516/EClaw/commit/81913a3cd92e86eb44f4268e9fe29ce7fc54a49a)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.878.0](https://github.com/HankHuang0516/EClaw/compare/v1.877.0...v1.878.0) (2026-03-31)


### Features

* **i18n:** add French translations for borrow and settings sections ([#1507](https://github.com/HankHuang0516/EClaw/issues/1507)) ([3222f66](https://github.com/HankHuang0516/EClaw/commit/3222f66532704718a56a802509b37ea0226a91c7)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for cardholder and contacts sections ([#1513](https://github.com/HankHuang0516/EClaw/issues/1513)) ([fd03424](https://github.com/HankHuang0516/EClaw/commit/fd034248404e3f7be0c2bb98859571e105bc7bc8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for chat and schedule sections ([#1510](https://github.com/HankHuang0516/EClaw/issues/1510)) ([777be93](https://github.com/HankHuang0516/EClaw/commit/777be93e9605cbbc3388c6d62d6f4b2f6043cabf)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for common, error, settings sections - batch 376 ([#1519](https://github.com/HankHuang0516/EClaw/issues/1519)) ([fa53650](https://github.com/HankHuang0516/EClaw/commit/fa536500ee04a343ad2961f839ceaf1c6481a75a)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for feedback and chat sections ([#1509](https://github.com/HankHuang0516/EClaw/issues/1509)) ([9860e93](https://github.com/HankHuang0516/EClaw/commit/9860e93221aa6ce5b8efbcd810b0635bba047bb2)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for files, guide, kanban sections ([#1515](https://github.com/HankHuang0516/EClaw/issues/1515)) ([72d1207](https://github.com/HankHuang0516/EClaw/commit/72d120753c051fae1b8133d413fc9624a3c31172)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for identity and avatar sections ([5bc7f07](https://github.com/HankHuang0516/EClaw/commit/5bc7f072ce8af1c2f66d57fb40557ddbdfcfeb64))
* **i18n:** add French translations for kanban, mission sections ([#1516](https://github.com/HankHuang0516/EClaw/issues/1516)) ([5295d61](https://github.com/HankHuang0516/EClaw/commit/5295d611308ac959832086460c1a0f1f0fc8dca6)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for mission, notification sections ([#1517](https://github.com/HankHuang0516/EClaw/issues/1517)) ([d3fa174](https://github.com/HankHuang0516/EClaw/commit/d3fa17408339ec0c7afefe2819e5ec1304431dc9)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for sc, files sections ([#1514](https://github.com/HankHuang0516/EClaw/issues/1514)) ([dbe17d0](https://github.com/HankHuang0516/EClaw/commit/dbe17d0d11e25be5419ce04cf51cb3c5817891bf)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for schedule sections ([#1511](https://github.com/HankHuang0516/EClaw/issues/1511)) ([cc7cc44](https://github.com/HankHuang0516/EClaw/commit/cc7cc44bd2bd30e04633e8dab8cc90c21f80ac31)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for settings and notifications ([#1508](https://github.com/HankHuang0516/EClaw/issues/1508)) ([d28d201](https://github.com/HankHuang0516/EClaw/commit/d28d20198d83f109677a91d857f54ac7dd9f5277)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for settings sections ([#1518](https://github.com/HankHuang0516/EClaw/issues/1518)) ([c4bbbdc](https://github.com/HankHuang0516/EClaw/commit/c4bbbdc1d3098fe8c3e72c2d4b2ce5e4ce7506a9)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for slots, webhook, borrow sections ([#1506](https://github.com/HankHuang0516/EClaw/issues/1506)) ([9920a2b](https://github.com/HankHuang0516/EClaw/commit/9920a2b85ab19be1d8f27df738080ef9f837fd63))
* **i18n:** add German translations - batch 1 (portal, nav, landing, ent) ([#1520](https://github.com/HankHuang0516/EClaw/issues/1520)) ([527e2ce](https://github.com/HankHuang0516/EClaw/commit/527e2ce50f97339d6b4072a5e227ab622d467959))
* **i18n:** add German translations - batch 10 (remaining notif, broadcast, settings keys) ([#1529](https://github.com/HankHuang0516/EClaw/issues/1529)) ([8e8b721](https://github.com/HankHuang0516/EClaw/commit/8e8b72138b98c276056a4e568c3d93a89edf54b8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 11 (chat_ keys) ([#1530](https://github.com/HankHuang0516/EClaw/issues/1530)) ([6451d98](https://github.com/HankHuang0516/EClaw/commit/6451d98fd879c98ccb12f9222d5fbe88162ba0e4)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 12 (feedback_ keys) ([#1531](https://github.com/HankHuang0516/EClaw/issues/1531)) ([f473f49](https://github.com/HankHuang0516/EClaw/commit/f473f496251fa6ba8776350d259dcdb08ad31343)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 13 (remaining feedback_ keys) ([#1532](https://github.com/HankHuang0516/EClaw/issues/1532)) ([5d313d9](https://github.com/HankHuang0516/EClaw/commit/5d313d956d33dd816b38bf7fac087782c0f0f0c5)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 14 (slash_ keys) ([#1533](https://github.com/HankHuang0516/EClaw/issues/1533)) ([3c0abc5](https://github.com/HankHuang0516/EClaw/commit/3c0abc54fb1e2c983ad644203a59b1838c757d72)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 15 (message_, webhook_, maintenance_ keys) ([c39a667](https://github.com/HankHuang0516/EClaw/commit/c39a667999b2b98a8b6d4cde539d34e235ca3ba4))
* **i18n:** add German translations - batch 16 (nav_, channel_, dashboard_ keys) ([#1535](https://github.com/HankHuang0516/EClaw/issues/1535)) ([ae7da25](https://github.com/HankHuang0516/EClaw/commit/ae7da25372dd9d210aa70770eec8973977496f2c)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 17 (sched_ keys) ([#1536](https://github.com/HankHuang0516/EClaw/issues/1536)) ([063bf50](https://github.com/HankHuang0516/EClaw/commit/063bf502cb12a67e9a09fdfc8b4e18424d3b6e76)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 2 (ent_ec, info, qs sections) ([#1521](https://github.com/HankHuang0516/EClaw/issues/1521)) ([b3b2631](https://github.com/HankHuang0516/EClaw/commit/b3b26312d6748b6ea242d88e4bdc26162a2cba2c)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 3 (guide, demo, faq sections) ([#1522](https://github.com/HankHuang0516/EClaw/issues/1522)) ([e912fba](https://github.com/HankHuang0516/EClaw/commit/e912fbab6399d100765d2013b2214345a31e273d)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 4 (more guide sections) ([#1523](https://github.com/HankHuang0516/EClaw/issues/1523)) ([c55b3a8](https://github.com/HankHuang0516/EClaw/commit/c55b3a88a9db5ce807e5b3e8461b81efcd624337)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 5 (login, settings, terms sections) ([#1524](https://github.com/HankHuang0516/EClaw/issues/1524)) ([38167d1](https://github.com/HankHuang0516/EClaw/commit/38167d1cb7875d5f1a5ba2376c9bde3c57e09abf)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 6 (footer, faq, rn sections) ([#1525](https://github.com/HankHuang0516/EClaw/issues/1525)) ([d968a6f](https://github.com/HankHuang0516/EClaw/commit/d968a6fbc0e659d526ee5ce0a546fd097311ac55)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 7 (dash_xd, dash_id sections) ([#1526](https://github.com/HankHuang0516/EClaw/issues/1526)) ([ded1e29](https://github.com/HankHuang0516/EClaw/commit/ded1e290bca3301467f95725087175d35f4b2b0c)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 8 (remaining dash_ keys) ([#1527](https://github.com/HankHuang0516/EClaw/issues/1527)) ([ce971c2](https://github.com/HankHuang0516/EClaw/commit/ce971c2d95f8baae497fac28bf5dc3990262b5dc)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 9 (borrow, notif sections) ([#1528](https://github.com/HankHuang0516/EClaw/issues/1528)) ([81913a3](https://github.com/HankHuang0516/EClaw/commit/81913a3cd92e86eb44f4268e9fe29ce7fc54a49a)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.878.0](https://github.com/HankHuang0516/EClaw/compare/v1.877.0...v1.878.0) (2026-03-31)


### Features

* **i18n:** add French translations for borrow and settings sections ([#1507](https://github.com/HankHuang0516/EClaw/issues/1507)) ([3222f66](https://github.com/HankHuang0516/EClaw/commit/3222f66532704718a56a802509b37ea0226a91c7)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for cardholder and contacts sections ([#1513](https://github.com/HankHuang0516/EClaw/issues/1513)) ([fd03424](https://github.com/HankHuang0516/EClaw/commit/fd034248404e3f7be0c2bb98859571e105bc7bc8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for chat and schedule sections ([#1510](https://github.com/HankHuang0516/EClaw/issues/1510)) ([777be93](https://github.com/HankHuang0516/EClaw/commit/777be93e9605cbbc3388c6d62d6f4b2f6043cabf)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for common, error, settings sections - batch 376 ([#1519](https://github.com/HankHuang0516/EClaw/issues/1519)) ([fa53650](https://github.com/HankHuang0516/EClaw/commit/fa536500ee04a343ad2961f839ceaf1c6481a75a)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for feedback and chat sections ([#1509](https://github.com/HankHuang0516/EClaw/issues/1509)) ([9860e93](https://github.com/HankHuang0516/EClaw/commit/9860e93221aa6ce5b8efbcd810b0635bba047bb2)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for files, guide, kanban sections ([#1515](https://github.com/HankHuang0516/EClaw/issues/1515)) ([72d1207](https://github.com/HankHuang0516/EClaw/commit/72d120753c051fae1b8133d413fc9624a3c31172)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for identity and avatar sections ([5bc7f07](https://github.com/HankHuang0516/EClaw/commit/5bc7f072ce8af1c2f66d57fb40557ddbdfcfeb64))
* **i18n:** add French translations for kanban, mission sections ([#1516](https://github.com/HankHuang0516/EClaw/issues/1516)) ([5295d61](https://github.com/HankHuang0516/EClaw/commit/5295d611308ac959832086460c1a0f1f0fc8dca6)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for mission, notification sections ([#1517](https://github.com/HankHuang0516/EClaw/issues/1517)) ([d3fa174](https://github.com/HankHuang0516/EClaw/commit/d3fa17408339ec0c7afefe2819e5ec1304431dc9)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for sc, files sections ([#1514](https://github.com/HankHuang0516/EClaw/issues/1514)) ([dbe17d0](https://github.com/HankHuang0516/EClaw/commit/dbe17d0d11e25be5419ce04cf51cb3c5817891bf)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for schedule sections ([#1511](https://github.com/HankHuang0516/EClaw/issues/1511)) ([cc7cc44](https://github.com/HankHuang0516/EClaw/commit/cc7cc44bd2bd30e04633e8dab8cc90c21f80ac31)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for settings and notifications ([#1508](https://github.com/HankHuang0516/EClaw/issues/1508)) ([d28d201](https://github.com/HankHuang0516/EClaw/commit/d28d20198d83f109677a91d857f54ac7dd9f5277)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for settings sections ([#1518](https://github.com/HankHuang0516/EClaw/issues/1518)) ([c4bbbdc](https://github.com/HankHuang0516/EClaw/commit/c4bbbdc1d3098fe8c3e72c2d4b2ce5e4ce7506a9)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for slots, webhook, borrow sections ([#1506](https://github.com/HankHuang0516/EClaw/issues/1506)) ([9920a2b](https://github.com/HankHuang0516/EClaw/commit/9920a2b85ab19be1d8f27df738080ef9f837fd63))
* **i18n:** add German translations - batch 1 (portal, nav, landing, ent) ([#1520](https://github.com/HankHuang0516/EClaw/issues/1520)) ([527e2ce](https://github.com/HankHuang0516/EClaw/commit/527e2ce50f97339d6b4072a5e227ab622d467959))
* **i18n:** add German translations - batch 10 (remaining notif, broadcast, settings keys) ([#1529](https://github.com/HankHuang0516/EClaw/issues/1529)) ([8e8b721](https://github.com/HankHuang0516/EClaw/commit/8e8b72138b98c276056a4e568c3d93a89edf54b8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 12 (feedback_ keys) ([#1531](https://github.com/HankHuang0516/EClaw/issues/1531)) ([f473f49](https://github.com/HankHuang0516/EClaw/commit/f473f496251fa6ba8776350d259dcdb08ad31343)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 13 (remaining feedback_ keys) ([#1532](https://github.com/HankHuang0516/EClaw/issues/1532)) ([5d313d9](https://github.com/HankHuang0516/EClaw/commit/5d313d956d33dd816b38bf7fac087782c0f0f0c5)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 14 (slash_ keys) ([#1533](https://github.com/HankHuang0516/EClaw/issues/1533)) ([3c0abc5](https://github.com/HankHuang0516/EClaw/commit/3c0abc54fb1e2c983ad644203a59b1838c757d72)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 15 (message_, webhook_, maintenance_ keys) ([c39a667](https://github.com/HankHuang0516/EClaw/commit/c39a667999b2b98a8b6d4cde539d34e235ca3ba4))
* **i18n:** add German translations - batch 16 (nav_, channel_, dashboard_ keys) ([#1535](https://github.com/HankHuang0516/EClaw/issues/1535)) ([ae7da25](https://github.com/HankHuang0516/EClaw/commit/ae7da25372dd9d210aa70770eec8973977496f2c)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 2 (ent_ec, info, qs sections) ([#1521](https://github.com/HankHuang0516/EClaw/issues/1521)) ([b3b2631](https://github.com/HankHuang0516/EClaw/commit/b3b26312d6748b6ea242d88e4bdc26162a2cba2c)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 3 (guide, demo, faq sections) ([#1522](https://github.com/HankHuang0516/EClaw/issues/1522)) ([e912fba](https://github.com/HankHuang0516/EClaw/commit/e912fbab6399d100765d2013b2214345a31e273d)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 4 (more guide sections) ([#1523](https://github.com/HankHuang0516/EClaw/issues/1523)) ([c55b3a8](https://github.com/HankHuang0516/EClaw/commit/c55b3a88a9db5ce807e5b3e8461b81efcd624337)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 5 (login, settings, terms sections) ([#1524](https://github.com/HankHuang0516/EClaw/issues/1524)) ([38167d1](https://github.com/HankHuang0516/EClaw/commit/38167d1cb7875d5f1a5ba2376c9bde3c57e09abf)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 6 (footer, faq, rn sections) ([#1525](https://github.com/HankHuang0516/EClaw/issues/1525)) ([d968a6f](https://github.com/HankHuang0516/EClaw/commit/d968a6fbc0e659d526ee5ce0a546fd097311ac55)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 7 (dash_xd, dash_id sections) ([#1526](https://github.com/HankHuang0516/EClaw/issues/1526)) ([ded1e29](https://github.com/HankHuang0516/EClaw/commit/ded1e290bca3301467f95725087175d35f4b2b0c)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 8 (remaining dash_ keys) ([#1527](https://github.com/HankHuang0516/EClaw/issues/1527)) ([ce971c2](https://github.com/HankHuang0516/EClaw/commit/ce971c2d95f8baae497fac28bf5dc3990262b5dc)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 9 (borrow, notif sections) ([#1528](https://github.com/HankHuang0516/EClaw/issues/1528)) ([81913a3](https://github.com/HankHuang0516/EClaw/commit/81913a3cd92e86eb44f4268e9fe29ce7fc54a49a)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.878.0](https://github.com/HankHuang0516/EClaw/compare/v1.877.0...v1.878.0) (2026-03-31)


### Features

* **i18n:** add French translations for borrow and settings sections ([#1507](https://github.com/HankHuang0516/EClaw/issues/1507)) ([3222f66](https://github.com/HankHuang0516/EClaw/commit/3222f66532704718a56a802509b37ea0226a91c7)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for cardholder and contacts sections ([#1513](https://github.com/HankHuang0516/EClaw/issues/1513)) ([fd03424](https://github.com/HankHuang0516/EClaw/commit/fd034248404e3f7be0c2bb98859571e105bc7bc8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for chat and schedule sections ([#1510](https://github.com/HankHuang0516/EClaw/issues/1510)) ([777be93](https://github.com/HankHuang0516/EClaw/commit/777be93e9605cbbc3388c6d62d6f4b2f6043cabf)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for common, error, settings sections - batch 376 ([#1519](https://github.com/HankHuang0516/EClaw/issues/1519)) ([fa53650](https://github.com/HankHuang0516/EClaw/commit/fa536500ee04a343ad2961f839ceaf1c6481a75a)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for feedback and chat sections ([#1509](https://github.com/HankHuang0516/EClaw/issues/1509)) ([9860e93](https://github.com/HankHuang0516/EClaw/commit/9860e93221aa6ce5b8efbcd810b0635bba047bb2)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for files, guide, kanban sections ([#1515](https://github.com/HankHuang0516/EClaw/issues/1515)) ([72d1207](https://github.com/HankHuang0516/EClaw/commit/72d120753c051fae1b8133d413fc9624a3c31172)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for identity and avatar sections ([5bc7f07](https://github.com/HankHuang0516/EClaw/commit/5bc7f072ce8af1c2f66d57fb40557ddbdfcfeb64))
* **i18n:** add French translations for kanban, mission sections ([#1516](https://github.com/HankHuang0516/EClaw/issues/1516)) ([5295d61](https://github.com/HankHuang0516/EClaw/commit/5295d611308ac959832086460c1a0f1f0fc8dca6)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for mission, notification sections ([#1517](https://github.com/HankHuang0516/EClaw/issues/1517)) ([d3fa174](https://github.com/HankHuang0516/EClaw/commit/d3fa17408339ec0c7afefe2819e5ec1304431dc9)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for sc, files sections ([#1514](https://github.com/HankHuang0516/EClaw/issues/1514)) ([dbe17d0](https://github.com/HankHuang0516/EClaw/commit/dbe17d0d11e25be5419ce04cf51cb3c5817891bf)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for schedule sections ([#1511](https://github.com/HankHuang0516/EClaw/issues/1511)) ([cc7cc44](https://github.com/HankHuang0516/EClaw/commit/cc7cc44bd2bd30e04633e8dab8cc90c21f80ac31)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for settings and notifications ([#1508](https://github.com/HankHuang0516/EClaw/issues/1508)) ([d28d201](https://github.com/HankHuang0516/EClaw/commit/d28d20198d83f109677a91d857f54ac7dd9f5277)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for settings sections ([#1518](https://github.com/HankHuang0516/EClaw/issues/1518)) ([c4bbbdc](https://github.com/HankHuang0516/EClaw/commit/c4bbbdc1d3098fe8c3e72c2d4b2ce5e4ce7506a9)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for slots, webhook, borrow sections ([#1506](https://github.com/HankHuang0516/EClaw/issues/1506)) ([9920a2b](https://github.com/HankHuang0516/EClaw/commit/9920a2b85ab19be1d8f27df738080ef9f837fd63))
* **i18n:** add German translations - batch 1 (portal, nav, landing, ent) ([#1520](https://github.com/HankHuang0516/EClaw/issues/1520)) ([527e2ce](https://github.com/HankHuang0516/EClaw/commit/527e2ce50f97339d6b4072a5e227ab622d467959))
* **i18n:** add German translations - batch 10 (remaining notif, broadcast, settings keys) ([#1529](https://github.com/HankHuang0516/EClaw/issues/1529)) ([8e8b721](https://github.com/HankHuang0516/EClaw/commit/8e8b72138b98c276056a4e568c3d93a89edf54b8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 12 (feedback_ keys) ([#1531](https://github.com/HankHuang0516/EClaw/issues/1531)) ([f473f49](https://github.com/HankHuang0516/EClaw/commit/f473f496251fa6ba8776350d259dcdb08ad31343)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 13 (remaining feedback_ keys) ([#1532](https://github.com/HankHuang0516/EClaw/issues/1532)) ([5d313d9](https://github.com/HankHuang0516/EClaw/commit/5d313d956d33dd816b38bf7fac087782c0f0f0c5)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 14 (slash_ keys) ([#1533](https://github.com/HankHuang0516/EClaw/issues/1533)) ([3c0abc5](https://github.com/HankHuang0516/EClaw/commit/3c0abc54fb1e2c983ad644203a59b1838c757d72)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 15 (message_, webhook_, maintenance_ keys) ([c39a667](https://github.com/HankHuang0516/EClaw/commit/c39a667999b2b98a8b6d4cde539d34e235ca3ba4))
* **i18n:** add German translations - batch 2 (ent_ec, info, qs sections) ([#1521](https://github.com/HankHuang0516/EClaw/issues/1521)) ([b3b2631](https://github.com/HankHuang0516/EClaw/commit/b3b26312d6748b6ea242d88e4bdc26162a2cba2c)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 3 (guide, demo, faq sections) ([#1522](https://github.com/HankHuang0516/EClaw/issues/1522)) ([e912fba](https://github.com/HankHuang0516/EClaw/commit/e912fbab6399d100765d2013b2214345a31e273d)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 4 (more guide sections) ([#1523](https://github.com/HankHuang0516/EClaw/issues/1523)) ([c55b3a8](https://github.com/HankHuang0516/EClaw/commit/c55b3a88a9db5ce807e5b3e8461b81efcd624337)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 5 (login, settings, terms sections) ([#1524](https://github.com/HankHuang0516/EClaw/issues/1524)) ([38167d1](https://github.com/HankHuang0516/EClaw/commit/38167d1cb7875d5f1a5ba2376c9bde3c57e09abf)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 6 (footer, faq, rn sections) ([#1525](https://github.com/HankHuang0516/EClaw/issues/1525)) ([d968a6f](https://github.com/HankHuang0516/EClaw/commit/d968a6fbc0e659d526ee5ce0a546fd097311ac55)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 7 (dash_xd, dash_id sections) ([#1526](https://github.com/HankHuang0516/EClaw/issues/1526)) ([ded1e29](https://github.com/HankHuang0516/EClaw/commit/ded1e290bca3301467f95725087175d35f4b2b0c)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 8 (remaining dash_ keys) ([#1527](https://github.com/HankHuang0516/EClaw/issues/1527)) ([ce971c2](https://github.com/HankHuang0516/EClaw/commit/ce971c2d95f8baae497fac28bf5dc3990262b5dc)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 9 (borrow, notif sections) ([#1528](https://github.com/HankHuang0516/EClaw/issues/1528)) ([81913a3](https://github.com/HankHuang0516/EClaw/commit/81913a3cd92e86eb44f4268e9fe29ce7fc54a49a)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.878.0](https://github.com/HankHuang0516/EClaw/compare/v1.877.0...v1.878.0) (2026-03-31)


### Features

* **i18n:** add French translations for borrow and settings sections ([#1507](https://github.com/HankHuang0516/EClaw/issues/1507)) ([3222f66](https://github.com/HankHuang0516/EClaw/commit/3222f66532704718a56a802509b37ea0226a91c7)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for cardholder and contacts sections ([#1513](https://github.com/HankHuang0516/EClaw/issues/1513)) ([fd03424](https://github.com/HankHuang0516/EClaw/commit/fd034248404e3f7be0c2bb98859571e105bc7bc8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for chat and schedule sections ([#1510](https://github.com/HankHuang0516/EClaw/issues/1510)) ([777be93](https://github.com/HankHuang0516/EClaw/commit/777be93e9605cbbc3388c6d62d6f4b2f6043cabf)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for common, error, settings sections - batch 376 ([#1519](https://github.com/HankHuang0516/EClaw/issues/1519)) ([fa53650](https://github.com/HankHuang0516/EClaw/commit/fa536500ee04a343ad2961f839ceaf1c6481a75a)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for feedback and chat sections ([#1509](https://github.com/HankHuang0516/EClaw/issues/1509)) ([9860e93](https://github.com/HankHuang0516/EClaw/commit/9860e93221aa6ce5b8efbcd810b0635bba047bb2)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for files, guide, kanban sections ([#1515](https://github.com/HankHuang0516/EClaw/issues/1515)) ([72d1207](https://github.com/HankHuang0516/EClaw/commit/72d120753c051fae1b8133d413fc9624a3c31172)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for identity and avatar sections ([5bc7f07](https://github.com/HankHuang0516/EClaw/commit/5bc7f072ce8af1c2f66d57fb40557ddbdfcfeb64))
* **i18n:** add French translations for kanban, mission sections ([#1516](https://github.com/HankHuang0516/EClaw/issues/1516)) ([5295d61](https://github.com/HankHuang0516/EClaw/commit/5295d611308ac959832086460c1a0f1f0fc8dca6)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for mission, notification sections ([#1517](https://github.com/HankHuang0516/EClaw/issues/1517)) ([d3fa174](https://github.com/HankHuang0516/EClaw/commit/d3fa17408339ec0c7afefe2819e5ec1304431dc9)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for sc, files sections ([#1514](https://github.com/HankHuang0516/EClaw/issues/1514)) ([dbe17d0](https://github.com/HankHuang0516/EClaw/commit/dbe17d0d11e25be5419ce04cf51cb3c5817891bf)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for schedule sections ([#1511](https://github.com/HankHuang0516/EClaw/issues/1511)) ([cc7cc44](https://github.com/HankHuang0516/EClaw/commit/cc7cc44bd2bd30e04633e8dab8cc90c21f80ac31)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for settings and notifications ([#1508](https://github.com/HankHuang0516/EClaw/issues/1508)) ([d28d201](https://github.com/HankHuang0516/EClaw/commit/d28d20198d83f109677a91d857f54ac7dd9f5277)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for settings sections ([#1518](https://github.com/HankHuang0516/EClaw/issues/1518)) ([c4bbbdc](https://github.com/HankHuang0516/EClaw/commit/c4bbbdc1d3098fe8c3e72c2d4b2ce5e4ce7506a9)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for slots, webhook, borrow sections ([#1506](https://github.com/HankHuang0516/EClaw/issues/1506)) ([9920a2b](https://github.com/HankHuang0516/EClaw/commit/9920a2b85ab19be1d8f27df738080ef9f837fd63))
* **i18n:** add German translations - batch 1 (portal, nav, landing, ent) ([#1520](https://github.com/HankHuang0516/EClaw/issues/1520)) ([527e2ce](https://github.com/HankHuang0516/EClaw/commit/527e2ce50f97339d6b4072a5e227ab622d467959))
* **i18n:** add German translations - batch 10 (remaining notif, broadcast, settings keys) ([#1529](https://github.com/HankHuang0516/EClaw/issues/1529)) ([8e8b721](https://github.com/HankHuang0516/EClaw/commit/8e8b72138b98c276056a4e568c3d93a89edf54b8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 11 (chat_ keys) ([#1530](https://github.com/HankHuang0516/EClaw/issues/1530)) ([6451d98](https://github.com/HankHuang0516/EClaw/commit/6451d98fd879c98ccb12f9222d5fbe88162ba0e4)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 12 (feedback_ keys) ([#1531](https://github.com/HankHuang0516/EClaw/issues/1531)) ([f473f49](https://github.com/HankHuang0516/EClaw/commit/f473f496251fa6ba8776350d259dcdb08ad31343)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 13 (remaining feedback_ keys) ([#1532](https://github.com/HankHuang0516/EClaw/issues/1532)) ([5d313d9](https://github.com/HankHuang0516/EClaw/commit/5d313d956d33dd816b38bf7fac087782c0f0f0c5)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 14 (slash_ keys) ([#1533](https://github.com/HankHuang0516/EClaw/issues/1533)) ([3c0abc5](https://github.com/HankHuang0516/EClaw/commit/3c0abc54fb1e2c983ad644203a59b1838c757d72)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 2 (ent_ec, info, qs sections) ([#1521](https://github.com/HankHuang0516/EClaw/issues/1521)) ([b3b2631](https://github.com/HankHuang0516/EClaw/commit/b3b26312d6748b6ea242d88e4bdc26162a2cba2c)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 3 (guide, demo, faq sections) ([#1522](https://github.com/HankHuang0516/EClaw/issues/1522)) ([e912fba](https://github.com/HankHuang0516/EClaw/commit/e912fbab6399d100765d2013b2214345a31e273d)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 4 (more guide sections) ([#1523](https://github.com/HankHuang0516/EClaw/issues/1523)) ([c55b3a8](https://github.com/HankHuang0516/EClaw/commit/c55b3a88a9db5ce807e5b3e8461b81efcd624337)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 5 (login, settings, terms sections) ([#1524](https://github.com/HankHuang0516/EClaw/issues/1524)) ([38167d1](https://github.com/HankHuang0516/EClaw/commit/38167d1cb7875d5f1a5ba2376c9bde3c57e09abf)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 6 (footer, faq, rn sections) ([#1525](https://github.com/HankHuang0516/EClaw/issues/1525)) ([d968a6f](https://github.com/HankHuang0516/EClaw/commit/d968a6fbc0e659d526ee5ce0a546fd097311ac55)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 7 (dash_xd, dash_id sections) ([#1526](https://github.com/HankHuang0516/EClaw/issues/1526)) ([ded1e29](https://github.com/HankHuang0516/EClaw/commit/ded1e290bca3301467f95725087175d35f4b2b0c)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 8 (remaining dash_ keys) ([#1527](https://github.com/HankHuang0516/EClaw/issues/1527)) ([ce971c2](https://github.com/HankHuang0516/EClaw/commit/ce971c2d95f8baae497fac28bf5dc3990262b5dc)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 9 (borrow, notif sections) ([#1528](https://github.com/HankHuang0516/EClaw/issues/1528)) ([81913a3](https://github.com/HankHuang0516/EClaw/commit/81913a3cd92e86eb44f4268e9fe29ce7fc54a49a)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.878.0](https://github.com/HankHuang0516/EClaw/compare/v1.877.0...v1.878.0) (2026-03-31)


### Features

* **i18n:** add French translations for borrow and settings sections ([#1507](https://github.com/HankHuang0516/EClaw/issues/1507)) ([3222f66](https://github.com/HankHuang0516/EClaw/commit/3222f66532704718a56a802509b37ea0226a91c7)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for cardholder and contacts sections ([#1513](https://github.com/HankHuang0516/EClaw/issues/1513)) ([fd03424](https://github.com/HankHuang0516/EClaw/commit/fd034248404e3f7be0c2bb98859571e105bc7bc8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for chat and schedule sections ([#1510](https://github.com/HankHuang0516/EClaw/issues/1510)) ([777be93](https://github.com/HankHuang0516/EClaw/commit/777be93e9605cbbc3388c6d62d6f4b2f6043cabf)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for common, error, settings sections - batch 376 ([#1519](https://github.com/HankHuang0516/EClaw/issues/1519)) ([fa53650](https://github.com/HankHuang0516/EClaw/commit/fa536500ee04a343ad2961f839ceaf1c6481a75a)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for feedback and chat sections ([#1509](https://github.com/HankHuang0516/EClaw/issues/1509)) ([9860e93](https://github.com/HankHuang0516/EClaw/commit/9860e93221aa6ce5b8efbcd810b0635bba047bb2)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for files, guide, kanban sections ([#1515](https://github.com/HankHuang0516/EClaw/issues/1515)) ([72d1207](https://github.com/HankHuang0516/EClaw/commit/72d120753c051fae1b8133d413fc9624a3c31172)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for identity and avatar sections ([5bc7f07](https://github.com/HankHuang0516/EClaw/commit/5bc7f072ce8af1c2f66d57fb40557ddbdfcfeb64))
* **i18n:** add French translations for kanban, mission sections ([#1516](https://github.com/HankHuang0516/EClaw/issues/1516)) ([5295d61](https://github.com/HankHuang0516/EClaw/commit/5295d611308ac959832086460c1a0f1f0fc8dca6)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for mission, notification sections ([#1517](https://github.com/HankHuang0516/EClaw/issues/1517)) ([d3fa174](https://github.com/HankHuang0516/EClaw/commit/d3fa17408339ec0c7afefe2819e5ec1304431dc9)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for sc, files sections ([#1514](https://github.com/HankHuang0516/EClaw/issues/1514)) ([dbe17d0](https://github.com/HankHuang0516/EClaw/commit/dbe17d0d11e25be5419ce04cf51cb3c5817891bf)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for schedule sections ([#1511](https://github.com/HankHuang0516/EClaw/issues/1511)) ([cc7cc44](https://github.com/HankHuang0516/EClaw/commit/cc7cc44bd2bd30e04633e8dab8cc90c21f80ac31)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for settings and notifications ([#1508](https://github.com/HankHuang0516/EClaw/issues/1508)) ([d28d201](https://github.com/HankHuang0516/EClaw/commit/d28d20198d83f109677a91d857f54ac7dd9f5277)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for settings sections ([#1518](https://github.com/HankHuang0516/EClaw/issues/1518)) ([c4bbbdc](https://github.com/HankHuang0516/EClaw/commit/c4bbbdc1d3098fe8c3e72c2d4b2ce5e4ce7506a9)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for slots, webhook, borrow sections ([#1506](https://github.com/HankHuang0516/EClaw/issues/1506)) ([9920a2b](https://github.com/HankHuang0516/EClaw/commit/9920a2b85ab19be1d8f27df738080ef9f837fd63))
* **i18n:** add German translations - batch 1 (portal, nav, landing, ent) ([#1520](https://github.com/HankHuang0516/EClaw/issues/1520)) ([527e2ce](https://github.com/HankHuang0516/EClaw/commit/527e2ce50f97339d6b4072a5e227ab622d467959))
* **i18n:** add German translations - batch 10 (remaining notif, broadcast, settings keys) ([#1529](https://github.com/HankHuang0516/EClaw/issues/1529)) ([8e8b721](https://github.com/HankHuang0516/EClaw/commit/8e8b72138b98c276056a4e568c3d93a89edf54b8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 11 (chat_ keys) ([#1530](https://github.com/HankHuang0516/EClaw/issues/1530)) ([6451d98](https://github.com/HankHuang0516/EClaw/commit/6451d98fd879c98ccb12f9222d5fbe88162ba0e4)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 12 (feedback_ keys) ([#1531](https://github.com/HankHuang0516/EClaw/issues/1531)) ([f473f49](https://github.com/HankHuang0516/EClaw/commit/f473f496251fa6ba8776350d259dcdb08ad31343)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 13 (remaining feedback_ keys) ([#1532](https://github.com/HankHuang0516/EClaw/issues/1532)) ([5d313d9](https://github.com/HankHuang0516/EClaw/commit/5d313d956d33dd816b38bf7fac087782c0f0f0c5)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 2 (ent_ec, info, qs sections) ([#1521](https://github.com/HankHuang0516/EClaw/issues/1521)) ([b3b2631](https://github.com/HankHuang0516/EClaw/commit/b3b26312d6748b6ea242d88e4bdc26162a2cba2c)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 3 (guide, demo, faq sections) ([#1522](https://github.com/HankHuang0516/EClaw/issues/1522)) ([e912fba](https://github.com/HankHuang0516/EClaw/commit/e912fbab6399d100765d2013b2214345a31e273d)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 4 (more guide sections) ([#1523](https://github.com/HankHuang0516/EClaw/issues/1523)) ([c55b3a8](https://github.com/HankHuang0516/EClaw/commit/c55b3a88a9db5ce807e5b3e8461b81efcd624337)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 5 (login, settings, terms sections) ([#1524](https://github.com/HankHuang0516/EClaw/issues/1524)) ([38167d1](https://github.com/HankHuang0516/EClaw/commit/38167d1cb7875d5f1a5ba2376c9bde3c57e09abf)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 6 (footer, faq, rn sections) ([#1525](https://github.com/HankHuang0516/EClaw/issues/1525)) ([d968a6f](https://github.com/HankHuang0516/EClaw/commit/d968a6fbc0e659d526ee5ce0a546fd097311ac55)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 7 (dash_xd, dash_id sections) ([#1526](https://github.com/HankHuang0516/EClaw/issues/1526)) ([ded1e29](https://github.com/HankHuang0516/EClaw/commit/ded1e290bca3301467f95725087175d35f4b2b0c)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 8 (remaining dash_ keys) ([#1527](https://github.com/HankHuang0516/EClaw/issues/1527)) ([ce971c2](https://github.com/HankHuang0516/EClaw/commit/ce971c2d95f8baae497fac28bf5dc3990262b5dc)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 9 (borrow, notif sections) ([#1528](https://github.com/HankHuang0516/EClaw/issues/1528)) ([81913a3](https://github.com/HankHuang0516/EClaw/commit/81913a3cd92e86eb44f4268e9fe29ce7fc54a49a)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.878.0](https://github.com/HankHuang0516/EClaw/compare/v1.877.0...v1.878.0) (2026-03-31)


### Features

* **i18n:** add French translations for borrow and settings sections ([#1507](https://github.com/HankHuang0516/EClaw/issues/1507)) ([3222f66](https://github.com/HankHuang0516/EClaw/commit/3222f66532704718a56a802509b37ea0226a91c7)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for cardholder and contacts sections ([#1513](https://github.com/HankHuang0516/EClaw/issues/1513)) ([fd03424](https://github.com/HankHuang0516/EClaw/commit/fd034248404e3f7be0c2bb98859571e105bc7bc8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for chat and schedule sections ([#1510](https://github.com/HankHuang0516/EClaw/issues/1510)) ([777be93](https://github.com/HankHuang0516/EClaw/commit/777be93e9605cbbc3388c6d62d6f4b2f6043cabf)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for common, error, settings sections - batch 376 ([#1519](https://github.com/HankHuang0516/EClaw/issues/1519)) ([fa53650](https://github.com/HankHuang0516/EClaw/commit/fa536500ee04a343ad2961f839ceaf1c6481a75a)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for feedback and chat sections ([#1509](https://github.com/HankHuang0516/EClaw/issues/1509)) ([9860e93](https://github.com/HankHuang0516/EClaw/commit/9860e93221aa6ce5b8efbcd810b0635bba047bb2)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for files, guide, kanban sections ([#1515](https://github.com/HankHuang0516/EClaw/issues/1515)) ([72d1207](https://github.com/HankHuang0516/EClaw/commit/72d120753c051fae1b8133d413fc9624a3c31172)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for identity and avatar sections ([5bc7f07](https://github.com/HankHuang0516/EClaw/commit/5bc7f072ce8af1c2f66d57fb40557ddbdfcfeb64))
* **i18n:** add French translations for kanban, mission sections ([#1516](https://github.com/HankHuang0516/EClaw/issues/1516)) ([5295d61](https://github.com/HankHuang0516/EClaw/commit/5295d611308ac959832086460c1a0f1f0fc8dca6)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for mission, notification sections ([#1517](https://github.com/HankHuang0516/EClaw/issues/1517)) ([d3fa174](https://github.com/HankHuang0516/EClaw/commit/d3fa17408339ec0c7afefe2819e5ec1304431dc9)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for sc, files sections ([#1514](https://github.com/HankHuang0516/EClaw/issues/1514)) ([dbe17d0](https://github.com/HankHuang0516/EClaw/commit/dbe17d0d11e25be5419ce04cf51cb3c5817891bf)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for schedule sections ([#1511](https://github.com/HankHuang0516/EClaw/issues/1511)) ([cc7cc44](https://github.com/HankHuang0516/EClaw/commit/cc7cc44bd2bd30e04633e8dab8cc90c21f80ac31)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for settings and notifications ([#1508](https://github.com/HankHuang0516/EClaw/issues/1508)) ([d28d201](https://github.com/HankHuang0516/EClaw/commit/d28d20198d83f109677a91d857f54ac7dd9f5277)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for settings sections ([#1518](https://github.com/HankHuang0516/EClaw/issues/1518)) ([c4bbbdc](https://github.com/HankHuang0516/EClaw/commit/c4bbbdc1d3098fe8c3e72c2d4b2ce5e4ce7506a9)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for slots, webhook, borrow sections ([#1506](https://github.com/HankHuang0516/EClaw/issues/1506)) ([9920a2b](https://github.com/HankHuang0516/EClaw/commit/9920a2b85ab19be1d8f27df738080ef9f837fd63))
* **i18n:** add German translations - batch 1 (portal, nav, landing, ent) ([#1520](https://github.com/HankHuang0516/EClaw/issues/1520)) ([527e2ce](https://github.com/HankHuang0516/EClaw/commit/527e2ce50f97339d6b4072a5e227ab622d467959))
* **i18n:** add German translations - batch 10 (remaining notif, broadcast, settings keys) ([#1529](https://github.com/HankHuang0516/EClaw/issues/1529)) ([8e8b721](https://github.com/HankHuang0516/EClaw/commit/8e8b72138b98c276056a4e568c3d93a89edf54b8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 11 (chat_ keys) ([#1530](https://github.com/HankHuang0516/EClaw/issues/1530)) ([6451d98](https://github.com/HankHuang0516/EClaw/commit/6451d98fd879c98ccb12f9222d5fbe88162ba0e4)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 12 (feedback_ keys) ([#1531](https://github.com/HankHuang0516/EClaw/issues/1531)) ([f473f49](https://github.com/HankHuang0516/EClaw/commit/f473f496251fa6ba8776350d259dcdb08ad31343)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 2 (ent_ec, info, qs sections) ([#1521](https://github.com/HankHuang0516/EClaw/issues/1521)) ([b3b2631](https://github.com/HankHuang0516/EClaw/commit/b3b26312d6748b6ea242d88e4bdc26162a2cba2c)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 3 (guide, demo, faq sections) ([#1522](https://github.com/HankHuang0516/EClaw/issues/1522)) ([e912fba](https://github.com/HankHuang0516/EClaw/commit/e912fbab6399d100765d2013b2214345a31e273d)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 4 (more guide sections) ([#1523](https://github.com/HankHuang0516/EClaw/issues/1523)) ([c55b3a8](https://github.com/HankHuang0516/EClaw/commit/c55b3a88a9db5ce807e5b3e8461b81efcd624337)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 5 (login, settings, terms sections) ([#1524](https://github.com/HankHuang0516/EClaw/issues/1524)) ([38167d1](https://github.com/HankHuang0516/EClaw/commit/38167d1cb7875d5f1a5ba2376c9bde3c57e09abf)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 6 (footer, faq, rn sections) ([#1525](https://github.com/HankHuang0516/EClaw/issues/1525)) ([d968a6f](https://github.com/HankHuang0516/EClaw/commit/d968a6fbc0e659d526ee5ce0a546fd097311ac55)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 7 (dash_xd, dash_id sections) ([#1526](https://github.com/HankHuang0516/EClaw/issues/1526)) ([ded1e29](https://github.com/HankHuang0516/EClaw/commit/ded1e290bca3301467f95725087175d35f4b2b0c)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 8 (remaining dash_ keys) ([#1527](https://github.com/HankHuang0516/EClaw/issues/1527)) ([ce971c2](https://github.com/HankHuang0516/EClaw/commit/ce971c2d95f8baae497fac28bf5dc3990262b5dc)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 9 (borrow, notif sections) ([#1528](https://github.com/HankHuang0516/EClaw/issues/1528)) ([81913a3](https://github.com/HankHuang0516/EClaw/commit/81913a3cd92e86eb44f4268e9fe29ce7fc54a49a)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.878.0](https://github.com/HankHuang0516/EClaw/compare/v1.877.0...v1.878.0) (2026-03-31)


### Features

* **i18n:** add French translations for borrow and settings sections ([#1507](https://github.com/HankHuang0516/EClaw/issues/1507)) ([3222f66](https://github.com/HankHuang0516/EClaw/commit/3222f66532704718a56a802509b37ea0226a91c7)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for cardholder and contacts sections ([#1513](https://github.com/HankHuang0516/EClaw/issues/1513)) ([fd03424](https://github.com/HankHuang0516/EClaw/commit/fd034248404e3f7be0c2bb98859571e105bc7bc8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for chat and schedule sections ([#1510](https://github.com/HankHuang0516/EClaw/issues/1510)) ([777be93](https://github.com/HankHuang0516/EClaw/commit/777be93e9605cbbc3388c6d62d6f4b2f6043cabf)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for common, error, settings sections - batch 376 ([#1519](https://github.com/HankHuang0516/EClaw/issues/1519)) ([fa53650](https://github.com/HankHuang0516/EClaw/commit/fa536500ee04a343ad2961f839ceaf1c6481a75a)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for feedback and chat sections ([#1509](https://github.com/HankHuang0516/EClaw/issues/1509)) ([9860e93](https://github.com/HankHuang0516/EClaw/commit/9860e93221aa6ce5b8efbcd810b0635bba047bb2)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for files, guide, kanban sections ([#1515](https://github.com/HankHuang0516/EClaw/issues/1515)) ([72d1207](https://github.com/HankHuang0516/EClaw/commit/72d120753c051fae1b8133d413fc9624a3c31172)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for identity and avatar sections ([5bc7f07](https://github.com/HankHuang0516/EClaw/commit/5bc7f072ce8af1c2f66d57fb40557ddbdfcfeb64))
* **i18n:** add French translations for kanban, mission sections ([#1516](https://github.com/HankHuang0516/EClaw/issues/1516)) ([5295d61](https://github.com/HankHuang0516/EClaw/commit/5295d611308ac959832086460c1a0f1f0fc8dca6)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for mission, notification sections ([#1517](https://github.com/HankHuang0516/EClaw/issues/1517)) ([d3fa174](https://github.com/HankHuang0516/EClaw/commit/d3fa17408339ec0c7afefe2819e5ec1304431dc9)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for sc, files sections ([#1514](https://github.com/HankHuang0516/EClaw/issues/1514)) ([dbe17d0](https://github.com/HankHuang0516/EClaw/commit/dbe17d0d11e25be5419ce04cf51cb3c5817891bf)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for schedule sections ([#1511](https://github.com/HankHuang0516/EClaw/issues/1511)) ([cc7cc44](https://github.com/HankHuang0516/EClaw/commit/cc7cc44bd2bd30e04633e8dab8cc90c21f80ac31)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for settings and notifications ([#1508](https://github.com/HankHuang0516/EClaw/issues/1508)) ([d28d201](https://github.com/HankHuang0516/EClaw/commit/d28d20198d83f109677a91d857f54ac7dd9f5277)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for settings sections ([#1518](https://github.com/HankHuang0516/EClaw/issues/1518)) ([c4bbbdc](https://github.com/HankHuang0516/EClaw/commit/c4bbbdc1d3098fe8c3e72c2d4b2ce5e4ce7506a9)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for slots, webhook, borrow sections ([#1506](https://github.com/HankHuang0516/EClaw/issues/1506)) ([9920a2b](https://github.com/HankHuang0516/EClaw/commit/9920a2b85ab19be1d8f27df738080ef9f837fd63))
* **i18n:** add German translations - batch 1 (portal, nav, landing, ent) ([#1520](https://github.com/HankHuang0516/EClaw/issues/1520)) ([527e2ce](https://github.com/HankHuang0516/EClaw/commit/527e2ce50f97339d6b4072a5e227ab622d467959))
* **i18n:** add German translations - batch 10 (remaining notif, broadcast, settings keys) ([#1529](https://github.com/HankHuang0516/EClaw/issues/1529)) ([8e8b721](https://github.com/HankHuang0516/EClaw/commit/8e8b72138b98c276056a4e568c3d93a89edf54b8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 11 (chat_ keys) ([#1530](https://github.com/HankHuang0516/EClaw/issues/1530)) ([6451d98](https://github.com/HankHuang0516/EClaw/commit/6451d98fd879c98ccb12f9222d5fbe88162ba0e4)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 2 (ent_ec, info, qs sections) ([#1521](https://github.com/HankHuang0516/EClaw/issues/1521)) ([b3b2631](https://github.com/HankHuang0516/EClaw/commit/b3b26312d6748b6ea242d88e4bdc26162a2cba2c)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 3 (guide, demo, faq sections) ([#1522](https://github.com/HankHuang0516/EClaw/issues/1522)) ([e912fba](https://github.com/HankHuang0516/EClaw/commit/e912fbab6399d100765d2013b2214345a31e273d)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 4 (more guide sections) ([#1523](https://github.com/HankHuang0516/EClaw/issues/1523)) ([c55b3a8](https://github.com/HankHuang0516/EClaw/commit/c55b3a88a9db5ce807e5b3e8461b81efcd624337)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 5 (login, settings, terms sections) ([#1524](https://github.com/HankHuang0516/EClaw/issues/1524)) ([38167d1](https://github.com/HankHuang0516/EClaw/commit/38167d1cb7875d5f1a5ba2376c9bde3c57e09abf)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 6 (footer, faq, rn sections) ([#1525](https://github.com/HankHuang0516/EClaw/issues/1525)) ([d968a6f](https://github.com/HankHuang0516/EClaw/commit/d968a6fbc0e659d526ee5ce0a546fd097311ac55)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 7 (dash_xd, dash_id sections) ([#1526](https://github.com/HankHuang0516/EClaw/issues/1526)) ([ded1e29](https://github.com/HankHuang0516/EClaw/commit/ded1e290bca3301467f95725087175d35f4b2b0c)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 8 (remaining dash_ keys) ([#1527](https://github.com/HankHuang0516/EClaw/issues/1527)) ([ce971c2](https://github.com/HankHuang0516/EClaw/commit/ce971c2d95f8baae497fac28bf5dc3990262b5dc)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 9 (borrow, notif sections) ([#1528](https://github.com/HankHuang0516/EClaw/issues/1528)) ([81913a3](https://github.com/HankHuang0516/EClaw/commit/81913a3cd92e86eb44f4268e9fe29ce7fc54a49a)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.878.0](https://github.com/HankHuang0516/EClaw/compare/v1.877.0...v1.878.0) (2026-03-31)


### Features

* **i18n:** add French translations for borrow and settings sections ([#1507](https://github.com/HankHuang0516/EClaw/issues/1507)) ([3222f66](https://github.com/HankHuang0516/EClaw/commit/3222f66532704718a56a802509b37ea0226a91c7)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for cardholder and contacts sections ([#1513](https://github.com/HankHuang0516/EClaw/issues/1513)) ([fd03424](https://github.com/HankHuang0516/EClaw/commit/fd034248404e3f7be0c2bb98859571e105bc7bc8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for chat and schedule sections ([#1510](https://github.com/HankHuang0516/EClaw/issues/1510)) ([777be93](https://github.com/HankHuang0516/EClaw/commit/777be93e9605cbbc3388c6d62d6f4b2f6043cabf)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for common, error, settings sections - batch 376 ([#1519](https://github.com/HankHuang0516/EClaw/issues/1519)) ([fa53650](https://github.com/HankHuang0516/EClaw/commit/fa536500ee04a343ad2961f839ceaf1c6481a75a)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for feedback and chat sections ([#1509](https://github.com/HankHuang0516/EClaw/issues/1509)) ([9860e93](https://github.com/HankHuang0516/EClaw/commit/9860e93221aa6ce5b8efbcd810b0635bba047bb2)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for files, guide, kanban sections ([#1515](https://github.com/HankHuang0516/EClaw/issues/1515)) ([72d1207](https://github.com/HankHuang0516/EClaw/commit/72d120753c051fae1b8133d413fc9624a3c31172)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for identity and avatar sections ([5bc7f07](https://github.com/HankHuang0516/EClaw/commit/5bc7f072ce8af1c2f66d57fb40557ddbdfcfeb64))
* **i18n:** add French translations for kanban, mission sections ([#1516](https://github.com/HankHuang0516/EClaw/issues/1516)) ([5295d61](https://github.com/HankHuang0516/EClaw/commit/5295d611308ac959832086460c1a0f1f0fc8dca6)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for mission, notification sections ([#1517](https://github.com/HankHuang0516/EClaw/issues/1517)) ([d3fa174](https://github.com/HankHuang0516/EClaw/commit/d3fa17408339ec0c7afefe2819e5ec1304431dc9)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for sc, files sections ([#1514](https://github.com/HankHuang0516/EClaw/issues/1514)) ([dbe17d0](https://github.com/HankHuang0516/EClaw/commit/dbe17d0d11e25be5419ce04cf51cb3c5817891bf)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for schedule sections ([#1511](https://github.com/HankHuang0516/EClaw/issues/1511)) ([cc7cc44](https://github.com/HankHuang0516/EClaw/commit/cc7cc44bd2bd30e04633e8dab8cc90c21f80ac31)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for settings and notifications ([#1508](https://github.com/HankHuang0516/EClaw/issues/1508)) ([d28d201](https://github.com/HankHuang0516/EClaw/commit/d28d20198d83f109677a91d857f54ac7dd9f5277)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for settings sections ([#1518](https://github.com/HankHuang0516/EClaw/issues/1518)) ([c4bbbdc](https://github.com/HankHuang0516/EClaw/commit/c4bbbdc1d3098fe8c3e72c2d4b2ce5e4ce7506a9)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for slots, webhook, borrow sections ([#1506](https://github.com/HankHuang0516/EClaw/issues/1506)) ([9920a2b](https://github.com/HankHuang0516/EClaw/commit/9920a2b85ab19be1d8f27df738080ef9f837fd63))
* **i18n:** add German translations - batch 1 (portal, nav, landing, ent) ([#1520](https://github.com/HankHuang0516/EClaw/issues/1520)) ([527e2ce](https://github.com/HankHuang0516/EClaw/commit/527e2ce50f97339d6b4072a5e227ab622d467959))
* **i18n:** add German translations - batch 10 (remaining notif, broadcast, settings keys) ([#1529](https://github.com/HankHuang0516/EClaw/issues/1529)) ([8e8b721](https://github.com/HankHuang0516/EClaw/commit/8e8b72138b98c276056a4e568c3d93a89edf54b8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 2 (ent_ec, info, qs sections) ([#1521](https://github.com/HankHuang0516/EClaw/issues/1521)) ([b3b2631](https://github.com/HankHuang0516/EClaw/commit/b3b26312d6748b6ea242d88e4bdc26162a2cba2c)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 3 (guide, demo, faq sections) ([#1522](https://github.com/HankHuang0516/EClaw/issues/1522)) ([e912fba](https://github.com/HankHuang0516/EClaw/commit/e912fbab6399d100765d2013b2214345a31e273d)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 4 (more guide sections) ([#1523](https://github.com/HankHuang0516/EClaw/issues/1523)) ([c55b3a8](https://github.com/HankHuang0516/EClaw/commit/c55b3a88a9db5ce807e5b3e8461b81efcd624337)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 5 (login, settings, terms sections) ([#1524](https://github.com/HankHuang0516/EClaw/issues/1524)) ([38167d1](https://github.com/HankHuang0516/EClaw/commit/38167d1cb7875d5f1a5ba2376c9bde3c57e09abf)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 6 (footer, faq, rn sections) ([#1525](https://github.com/HankHuang0516/EClaw/issues/1525)) ([d968a6f](https://github.com/HankHuang0516/EClaw/commit/d968a6fbc0e659d526ee5ce0a546fd097311ac55)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 7 (dash_xd, dash_id sections) ([#1526](https://github.com/HankHuang0516/EClaw/issues/1526)) ([ded1e29](https://github.com/HankHuang0516/EClaw/commit/ded1e290bca3301467f95725087175d35f4b2b0c)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 8 (remaining dash_ keys) ([#1527](https://github.com/HankHuang0516/EClaw/issues/1527)) ([ce971c2](https://github.com/HankHuang0516/EClaw/commit/ce971c2d95f8baae497fac28bf5dc3990262b5dc)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 9 (borrow, notif sections) ([#1528](https://github.com/HankHuang0516/EClaw/issues/1528)) ([81913a3](https://github.com/HankHuang0516/EClaw/commit/81913a3cd92e86eb44f4268e9fe29ce7fc54a49a)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.878.0](https://github.com/HankHuang0516/EClaw/compare/v1.877.0...v1.878.0) (2026-03-31)


### Features

* **i18n:** add French translations for borrow and settings sections ([#1507](https://github.com/HankHuang0516/EClaw/issues/1507)) ([3222f66](https://github.com/HankHuang0516/EClaw/commit/3222f66532704718a56a802509b37ea0226a91c7)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for cardholder and contacts sections ([#1513](https://github.com/HankHuang0516/EClaw/issues/1513)) ([fd03424](https://github.com/HankHuang0516/EClaw/commit/fd034248404e3f7be0c2bb98859571e105bc7bc8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for chat and schedule sections ([#1510](https://github.com/HankHuang0516/EClaw/issues/1510)) ([777be93](https://github.com/HankHuang0516/EClaw/commit/777be93e9605cbbc3388c6d62d6f4b2f6043cabf)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for common, error, settings sections - batch 376 ([#1519](https://github.com/HankHuang0516/EClaw/issues/1519)) ([fa53650](https://github.com/HankHuang0516/EClaw/commit/fa536500ee04a343ad2961f839ceaf1c6481a75a)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for feedback and chat sections ([#1509](https://github.com/HankHuang0516/EClaw/issues/1509)) ([9860e93](https://github.com/HankHuang0516/EClaw/commit/9860e93221aa6ce5b8efbcd810b0635bba047bb2)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for files, guide, kanban sections ([#1515](https://github.com/HankHuang0516/EClaw/issues/1515)) ([72d1207](https://github.com/HankHuang0516/EClaw/commit/72d120753c051fae1b8133d413fc9624a3c31172)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for identity and avatar sections ([5bc7f07](https://github.com/HankHuang0516/EClaw/commit/5bc7f072ce8af1c2f66d57fb40557ddbdfcfeb64))
* **i18n:** add French translations for kanban, mission sections ([#1516](https://github.com/HankHuang0516/EClaw/issues/1516)) ([5295d61](https://github.com/HankHuang0516/EClaw/commit/5295d611308ac959832086460c1a0f1f0fc8dca6)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for mission, notification sections ([#1517](https://github.com/HankHuang0516/EClaw/issues/1517)) ([d3fa174](https://github.com/HankHuang0516/EClaw/commit/d3fa17408339ec0c7afefe2819e5ec1304431dc9)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for sc, files sections ([#1514](https://github.com/HankHuang0516/EClaw/issues/1514)) ([dbe17d0](https://github.com/HankHuang0516/EClaw/commit/dbe17d0d11e25be5419ce04cf51cb3c5817891bf)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for schedule sections ([#1511](https://github.com/HankHuang0516/EClaw/issues/1511)) ([cc7cc44](https://github.com/HankHuang0516/EClaw/commit/cc7cc44bd2bd30e04633e8dab8cc90c21f80ac31)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for settings and notifications ([#1508](https://github.com/HankHuang0516/EClaw/issues/1508)) ([d28d201](https://github.com/HankHuang0516/EClaw/commit/d28d20198d83f109677a91d857f54ac7dd9f5277)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for settings sections ([#1518](https://github.com/HankHuang0516/EClaw/issues/1518)) ([c4bbbdc](https://github.com/HankHuang0516/EClaw/commit/c4bbbdc1d3098fe8c3e72c2d4b2ce5e4ce7506a9)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for slots, webhook, borrow sections ([#1506](https://github.com/HankHuang0516/EClaw/issues/1506)) ([9920a2b](https://github.com/HankHuang0516/EClaw/commit/9920a2b85ab19be1d8f27df738080ef9f837fd63))
* **i18n:** add German translations - batch 1 (portal, nav, landing, ent) ([#1520](https://github.com/HankHuang0516/EClaw/issues/1520)) ([527e2ce](https://github.com/HankHuang0516/EClaw/commit/527e2ce50f97339d6b4072a5e227ab622d467959))
* **i18n:** add German translations - batch 2 (ent_ec, info, qs sections) ([#1521](https://github.com/HankHuang0516/EClaw/issues/1521)) ([b3b2631](https://github.com/HankHuang0516/EClaw/commit/b3b26312d6748b6ea242d88e4bdc26162a2cba2c)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 3 (guide, demo, faq sections) ([#1522](https://github.com/HankHuang0516/EClaw/issues/1522)) ([e912fba](https://github.com/HankHuang0516/EClaw/commit/e912fbab6399d100765d2013b2214345a31e273d)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 4 (more guide sections) ([#1523](https://github.com/HankHuang0516/EClaw/issues/1523)) ([c55b3a8](https://github.com/HankHuang0516/EClaw/commit/c55b3a88a9db5ce807e5b3e8461b81efcd624337)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 5 (login, settings, terms sections) ([#1524](https://github.com/HankHuang0516/EClaw/issues/1524)) ([38167d1](https://github.com/HankHuang0516/EClaw/commit/38167d1cb7875d5f1a5ba2376c9bde3c57e09abf)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 6 (footer, faq, rn sections) ([#1525](https://github.com/HankHuang0516/EClaw/issues/1525)) ([d968a6f](https://github.com/HankHuang0516/EClaw/commit/d968a6fbc0e659d526ee5ce0a546fd097311ac55)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 7 (dash_xd, dash_id sections) ([#1526](https://github.com/HankHuang0516/EClaw/issues/1526)) ([ded1e29](https://github.com/HankHuang0516/EClaw/commit/ded1e290bca3301467f95725087175d35f4b2b0c)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 8 (remaining dash_ keys) ([#1527](https://github.com/HankHuang0516/EClaw/issues/1527)) ([ce971c2](https://github.com/HankHuang0516/EClaw/commit/ce971c2d95f8baae497fac28bf5dc3990262b5dc)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 9 (borrow, notif sections) ([#1528](https://github.com/HankHuang0516/EClaw/issues/1528)) ([81913a3](https://github.com/HankHuang0516/EClaw/commit/81913a3cd92e86eb44f4268e9fe29ce7fc54a49a)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.878.0](https://github.com/HankHuang0516/EClaw/compare/v1.877.0...v1.878.0) (2026-03-31)


### Features

* **i18n:** add French translations for borrow and settings sections ([#1507](https://github.com/HankHuang0516/EClaw/issues/1507)) ([3222f66](https://github.com/HankHuang0516/EClaw/commit/3222f66532704718a56a802509b37ea0226a91c7)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for cardholder and contacts sections ([#1513](https://github.com/HankHuang0516/EClaw/issues/1513)) ([fd03424](https://github.com/HankHuang0516/EClaw/commit/fd034248404e3f7be0c2bb98859571e105bc7bc8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for chat and schedule sections ([#1510](https://github.com/HankHuang0516/EClaw/issues/1510)) ([777be93](https://github.com/HankHuang0516/EClaw/commit/777be93e9605cbbc3388c6d62d6f4b2f6043cabf)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for common, error, settings sections - batch 376 ([#1519](https://github.com/HankHuang0516/EClaw/issues/1519)) ([fa53650](https://github.com/HankHuang0516/EClaw/commit/fa536500ee04a343ad2961f839ceaf1c6481a75a)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for feedback and chat sections ([#1509](https://github.com/HankHuang0516/EClaw/issues/1509)) ([9860e93](https://github.com/HankHuang0516/EClaw/commit/9860e93221aa6ce5b8efbcd810b0635bba047bb2)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for files, guide, kanban sections ([#1515](https://github.com/HankHuang0516/EClaw/issues/1515)) ([72d1207](https://github.com/HankHuang0516/EClaw/commit/72d120753c051fae1b8133d413fc9624a3c31172)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for identity and avatar sections ([5bc7f07](https://github.com/HankHuang0516/EClaw/commit/5bc7f072ce8af1c2f66d57fb40557ddbdfcfeb64))
* **i18n:** add French translations for kanban, mission sections ([#1516](https://github.com/HankHuang0516/EClaw/issues/1516)) ([5295d61](https://github.com/HankHuang0516/EClaw/commit/5295d611308ac959832086460c1a0f1f0fc8dca6)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for mission, notification sections ([#1517](https://github.com/HankHuang0516/EClaw/issues/1517)) ([d3fa174](https://github.com/HankHuang0516/EClaw/commit/d3fa17408339ec0c7afefe2819e5ec1304431dc9)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for sc, files sections ([#1514](https://github.com/HankHuang0516/EClaw/issues/1514)) ([dbe17d0](https://github.com/HankHuang0516/EClaw/commit/dbe17d0d11e25be5419ce04cf51cb3c5817891bf)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for schedule sections ([#1511](https://github.com/HankHuang0516/EClaw/issues/1511)) ([cc7cc44](https://github.com/HankHuang0516/EClaw/commit/cc7cc44bd2bd30e04633e8dab8cc90c21f80ac31)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for settings and notifications ([#1508](https://github.com/HankHuang0516/EClaw/issues/1508)) ([d28d201](https://github.com/HankHuang0516/EClaw/commit/d28d20198d83f109677a91d857f54ac7dd9f5277)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for settings sections ([#1518](https://github.com/HankHuang0516/EClaw/issues/1518)) ([c4bbbdc](https://github.com/HankHuang0516/EClaw/commit/c4bbbdc1d3098fe8c3e72c2d4b2ce5e4ce7506a9)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for slots, webhook, borrow sections ([#1506](https://github.com/HankHuang0516/EClaw/issues/1506)) ([9920a2b](https://github.com/HankHuang0516/EClaw/commit/9920a2b85ab19be1d8f27df738080ef9f837fd63))
* **i18n:** add German translations - batch 1 (portal, nav, landing, ent) ([#1520](https://github.com/HankHuang0516/EClaw/issues/1520)) ([527e2ce](https://github.com/HankHuang0516/EClaw/commit/527e2ce50f97339d6b4072a5e227ab622d467959))
* **i18n:** add German translations - batch 2 (ent_ec, info, qs sections) ([#1521](https://github.com/HankHuang0516/EClaw/issues/1521)) ([b3b2631](https://github.com/HankHuang0516/EClaw/commit/b3b26312d6748b6ea242d88e4bdc26162a2cba2c)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 3 (guide, demo, faq sections) ([#1522](https://github.com/HankHuang0516/EClaw/issues/1522)) ([e912fba](https://github.com/HankHuang0516/EClaw/commit/e912fbab6399d100765d2013b2214345a31e273d)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 4 (more guide sections) ([#1523](https://github.com/HankHuang0516/EClaw/issues/1523)) ([c55b3a8](https://github.com/HankHuang0516/EClaw/commit/c55b3a88a9db5ce807e5b3e8461b81efcd624337)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 5 (login, settings, terms sections) ([#1524](https://github.com/HankHuang0516/EClaw/issues/1524)) ([38167d1](https://github.com/HankHuang0516/EClaw/commit/38167d1cb7875d5f1a5ba2376c9bde3c57e09abf)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 6 (footer, faq, rn sections) ([#1525](https://github.com/HankHuang0516/EClaw/issues/1525)) ([d968a6f](https://github.com/HankHuang0516/EClaw/commit/d968a6fbc0e659d526ee5ce0a546fd097311ac55)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 7 (dash_xd, dash_id sections) ([#1526](https://github.com/HankHuang0516/EClaw/issues/1526)) ([ded1e29](https://github.com/HankHuang0516/EClaw/commit/ded1e290bca3301467f95725087175d35f4b2b0c)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 8 (remaining dash_ keys) ([#1527](https://github.com/HankHuang0516/EClaw/issues/1527)) ([ce971c2](https://github.com/HankHuang0516/EClaw/commit/ce971c2d95f8baae497fac28bf5dc3990262b5dc)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.878.0](https://github.com/HankHuang0516/EClaw/compare/v1.877.0...v1.878.0) (2026-03-31)


### Features

* **i18n:** add French translations for borrow and settings sections ([#1507](https://github.com/HankHuang0516/EClaw/issues/1507)) ([3222f66](https://github.com/HankHuang0516/EClaw/commit/3222f66532704718a56a802509b37ea0226a91c7)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for cardholder and contacts sections ([#1513](https://github.com/HankHuang0516/EClaw/issues/1513)) ([fd03424](https://github.com/HankHuang0516/EClaw/commit/fd034248404e3f7be0c2bb98859571e105bc7bc8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for chat and schedule sections ([#1510](https://github.com/HankHuang0516/EClaw/issues/1510)) ([777be93](https://github.com/HankHuang0516/EClaw/commit/777be93e9605cbbc3388c6d62d6f4b2f6043cabf)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for common, error, settings sections - batch 376 ([#1519](https://github.com/HankHuang0516/EClaw/issues/1519)) ([fa53650](https://github.com/HankHuang0516/EClaw/commit/fa536500ee04a343ad2961f839ceaf1c6481a75a)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for feedback and chat sections ([#1509](https://github.com/HankHuang0516/EClaw/issues/1509)) ([9860e93](https://github.com/HankHuang0516/EClaw/commit/9860e93221aa6ce5b8efbcd810b0635bba047bb2)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for files, guide, kanban sections ([#1515](https://github.com/HankHuang0516/EClaw/issues/1515)) ([72d1207](https://github.com/HankHuang0516/EClaw/commit/72d120753c051fae1b8133d413fc9624a3c31172)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for identity and avatar sections ([5bc7f07](https://github.com/HankHuang0516/EClaw/commit/5bc7f072ce8af1c2f66d57fb40557ddbdfcfeb64))
* **i18n:** add French translations for kanban, mission sections ([#1516](https://github.com/HankHuang0516/EClaw/issues/1516)) ([5295d61](https://github.com/HankHuang0516/EClaw/commit/5295d611308ac959832086460c1a0f1f0fc8dca6)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for mission, notification sections ([#1517](https://github.com/HankHuang0516/EClaw/issues/1517)) ([d3fa174](https://github.com/HankHuang0516/EClaw/commit/d3fa17408339ec0c7afefe2819e5ec1304431dc9)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for sc, files sections ([#1514](https://github.com/HankHuang0516/EClaw/issues/1514)) ([dbe17d0](https://github.com/HankHuang0516/EClaw/commit/dbe17d0d11e25be5419ce04cf51cb3c5817891bf)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for schedule sections ([#1511](https://github.com/HankHuang0516/EClaw/issues/1511)) ([cc7cc44](https://github.com/HankHuang0516/EClaw/commit/cc7cc44bd2bd30e04633e8dab8cc90c21f80ac31)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for settings and notifications ([#1508](https://github.com/HankHuang0516/EClaw/issues/1508)) ([d28d201](https://github.com/HankHuang0516/EClaw/commit/d28d20198d83f109677a91d857f54ac7dd9f5277)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for settings sections ([#1518](https://github.com/HankHuang0516/EClaw/issues/1518)) ([c4bbbdc](https://github.com/HankHuang0516/EClaw/commit/c4bbbdc1d3098fe8c3e72c2d4b2ce5e4ce7506a9)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for slots, webhook, borrow sections ([#1506](https://github.com/HankHuang0516/EClaw/issues/1506)) ([9920a2b](https://github.com/HankHuang0516/EClaw/commit/9920a2b85ab19be1d8f27df738080ef9f837fd63))
* **i18n:** add German translations - batch 1 (portal, nav, landing, ent) ([#1520](https://github.com/HankHuang0516/EClaw/issues/1520)) ([527e2ce](https://github.com/HankHuang0516/EClaw/commit/527e2ce50f97339d6b4072a5e227ab622d467959))
* **i18n:** add German translations - batch 2 (ent_ec, info, qs sections) ([#1521](https://github.com/HankHuang0516/EClaw/issues/1521)) ([b3b2631](https://github.com/HankHuang0516/EClaw/commit/b3b26312d6748b6ea242d88e4bdc26162a2cba2c)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 3 (guide, demo, faq sections) ([#1522](https://github.com/HankHuang0516/EClaw/issues/1522)) ([e912fba](https://github.com/HankHuang0516/EClaw/commit/e912fbab6399d100765d2013b2214345a31e273d)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 4 (more guide sections) ([#1523](https://github.com/HankHuang0516/EClaw/issues/1523)) ([c55b3a8](https://github.com/HankHuang0516/EClaw/commit/c55b3a88a9db5ce807e5b3e8461b81efcd624337)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 5 (login, settings, terms sections) ([#1524](https://github.com/HankHuang0516/EClaw/issues/1524)) ([38167d1](https://github.com/HankHuang0516/EClaw/commit/38167d1cb7875d5f1a5ba2376c9bde3c57e09abf)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 6 (footer, faq, rn sections) ([#1525](https://github.com/HankHuang0516/EClaw/issues/1525)) ([d968a6f](https://github.com/HankHuang0516/EClaw/commit/d968a6fbc0e659d526ee5ce0a546fd097311ac55)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 7 (dash_xd, dash_id sections) ([#1526](https://github.com/HankHuang0516/EClaw/issues/1526)) ([ded1e29](https://github.com/HankHuang0516/EClaw/commit/ded1e290bca3301467f95725087175d35f4b2b0c)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.878.0](https://github.com/HankHuang0516/EClaw/compare/v1.877.0...v1.878.0) (2026-03-31)


### Features

* **i18n:** add French translations for borrow and settings sections ([#1507](https://github.com/HankHuang0516/EClaw/issues/1507)) ([3222f66](https://github.com/HankHuang0516/EClaw/commit/3222f66532704718a56a802509b37ea0226a91c7)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for cardholder and contacts sections ([#1513](https://github.com/HankHuang0516/EClaw/issues/1513)) ([fd03424](https://github.com/HankHuang0516/EClaw/commit/fd034248404e3f7be0c2bb98859571e105bc7bc8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for chat and schedule sections ([#1510](https://github.com/HankHuang0516/EClaw/issues/1510)) ([777be93](https://github.com/HankHuang0516/EClaw/commit/777be93e9605cbbc3388c6d62d6f4b2f6043cabf)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for common, error, settings sections - batch 376 ([#1519](https://github.com/HankHuang0516/EClaw/issues/1519)) ([fa53650](https://github.com/HankHuang0516/EClaw/commit/fa536500ee04a343ad2961f839ceaf1c6481a75a)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for feedback and chat sections ([#1509](https://github.com/HankHuang0516/EClaw/issues/1509)) ([9860e93](https://github.com/HankHuang0516/EClaw/commit/9860e93221aa6ce5b8efbcd810b0635bba047bb2)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for files, guide, kanban sections ([#1515](https://github.com/HankHuang0516/EClaw/issues/1515)) ([72d1207](https://github.com/HankHuang0516/EClaw/commit/72d120753c051fae1b8133d413fc9624a3c31172)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for identity and avatar sections ([5bc7f07](https://github.com/HankHuang0516/EClaw/commit/5bc7f072ce8af1c2f66d57fb40557ddbdfcfeb64))
* **i18n:** add French translations for kanban, mission sections ([#1516](https://github.com/HankHuang0516/EClaw/issues/1516)) ([5295d61](https://github.com/HankHuang0516/EClaw/commit/5295d611308ac959832086460c1a0f1f0fc8dca6)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for mission, notification sections ([#1517](https://github.com/HankHuang0516/EClaw/issues/1517)) ([d3fa174](https://github.com/HankHuang0516/EClaw/commit/d3fa17408339ec0c7afefe2819e5ec1304431dc9)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for sc, files sections ([#1514](https://github.com/HankHuang0516/EClaw/issues/1514)) ([dbe17d0](https://github.com/HankHuang0516/EClaw/commit/dbe17d0d11e25be5419ce04cf51cb3c5817891bf)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for schedule sections ([#1511](https://github.com/HankHuang0516/EClaw/issues/1511)) ([cc7cc44](https://github.com/HankHuang0516/EClaw/commit/cc7cc44bd2bd30e04633e8dab8cc90c21f80ac31)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for settings and notifications ([#1508](https://github.com/HankHuang0516/EClaw/issues/1508)) ([d28d201](https://github.com/HankHuang0516/EClaw/commit/d28d20198d83f109677a91d857f54ac7dd9f5277)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for settings sections ([#1518](https://github.com/HankHuang0516/EClaw/issues/1518)) ([c4bbbdc](https://github.com/HankHuang0516/EClaw/commit/c4bbbdc1d3098fe8c3e72c2d4b2ce5e4ce7506a9)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for slots, webhook, borrow sections ([#1506](https://github.com/HankHuang0516/EClaw/issues/1506)) ([9920a2b](https://github.com/HankHuang0516/EClaw/commit/9920a2b85ab19be1d8f27df738080ef9f837fd63))
* **i18n:** add German translations - batch 1 (portal, nav, landing, ent) ([#1520](https://github.com/HankHuang0516/EClaw/issues/1520)) ([527e2ce](https://github.com/HankHuang0516/EClaw/commit/527e2ce50f97339d6b4072a5e227ab622d467959))
* **i18n:** add German translations - batch 2 (ent_ec, info, qs sections) ([#1521](https://github.com/HankHuang0516/EClaw/issues/1521)) ([b3b2631](https://github.com/HankHuang0516/EClaw/commit/b3b26312d6748b6ea242d88e4bdc26162a2cba2c)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 3 (guide, demo, faq sections) ([#1522](https://github.com/HankHuang0516/EClaw/issues/1522)) ([e912fba](https://github.com/HankHuang0516/EClaw/commit/e912fbab6399d100765d2013b2214345a31e273d)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 4 (more guide sections) ([#1523](https://github.com/HankHuang0516/EClaw/issues/1523)) ([c55b3a8](https://github.com/HankHuang0516/EClaw/commit/c55b3a88a9db5ce807e5b3e8461b81efcd624337)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 5 (login, settings, terms sections) ([#1524](https://github.com/HankHuang0516/EClaw/issues/1524)) ([38167d1](https://github.com/HankHuang0516/EClaw/commit/38167d1cb7875d5f1a5ba2376c9bde3c57e09abf)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 6 (footer, faq, rn sections) ([#1525](https://github.com/HankHuang0516/EClaw/issues/1525)) ([d968a6f](https://github.com/HankHuang0516/EClaw/commit/d968a6fbc0e659d526ee5ce0a546fd097311ac55)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.878.0](https://github.com/HankHuang0516/EClaw/compare/v1.877.0...v1.878.0) (2026-03-31)


### Features

* **i18n:** add French translations for borrow and settings sections ([#1507](https://github.com/HankHuang0516/EClaw/issues/1507)) ([3222f66](https://github.com/HankHuang0516/EClaw/commit/3222f66532704718a56a802509b37ea0226a91c7)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for cardholder and contacts sections ([#1513](https://github.com/HankHuang0516/EClaw/issues/1513)) ([fd03424](https://github.com/HankHuang0516/EClaw/commit/fd034248404e3f7be0c2bb98859571e105bc7bc8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for chat and schedule sections ([#1510](https://github.com/HankHuang0516/EClaw/issues/1510)) ([777be93](https://github.com/HankHuang0516/EClaw/commit/777be93e9605cbbc3388c6d62d6f4b2f6043cabf)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for common, error, settings sections - batch 376 ([#1519](https://github.com/HankHuang0516/EClaw/issues/1519)) ([fa53650](https://github.com/HankHuang0516/EClaw/commit/fa536500ee04a343ad2961f839ceaf1c6481a75a)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for feedback and chat sections ([#1509](https://github.com/HankHuang0516/EClaw/issues/1509)) ([9860e93](https://github.com/HankHuang0516/EClaw/commit/9860e93221aa6ce5b8efbcd810b0635bba047bb2)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for files, guide, kanban sections ([#1515](https://github.com/HankHuang0516/EClaw/issues/1515)) ([72d1207](https://github.com/HankHuang0516/EClaw/commit/72d120753c051fae1b8133d413fc9624a3c31172)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for identity and avatar sections ([5bc7f07](https://github.com/HankHuang0516/EClaw/commit/5bc7f072ce8af1c2f66d57fb40557ddbdfcfeb64))
* **i18n:** add French translations for kanban, mission sections ([#1516](https://github.com/HankHuang0516/EClaw/issues/1516)) ([5295d61](https://github.com/HankHuang0516/EClaw/commit/5295d611308ac959832086460c1a0f1f0fc8dca6)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for mission, notification sections ([#1517](https://github.com/HankHuang0516/EClaw/issues/1517)) ([d3fa174](https://github.com/HankHuang0516/EClaw/commit/d3fa17408339ec0c7afefe2819e5ec1304431dc9)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for sc, files sections ([#1514](https://github.com/HankHuang0516/EClaw/issues/1514)) ([dbe17d0](https://github.com/HankHuang0516/EClaw/commit/dbe17d0d11e25be5419ce04cf51cb3c5817891bf)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for schedule sections ([#1511](https://github.com/HankHuang0516/EClaw/issues/1511)) ([cc7cc44](https://github.com/HankHuang0516/EClaw/commit/cc7cc44bd2bd30e04633e8dab8cc90c21f80ac31)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for settings and notifications ([#1508](https://github.com/HankHuang0516/EClaw/issues/1508)) ([d28d201](https://github.com/HankHuang0516/EClaw/commit/d28d20198d83f109677a91d857f54ac7dd9f5277)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for settings sections ([#1518](https://github.com/HankHuang0516/EClaw/issues/1518)) ([c4bbbdc](https://github.com/HankHuang0516/EClaw/commit/c4bbbdc1d3098fe8c3e72c2d4b2ce5e4ce7506a9)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for slots, webhook, borrow sections ([#1506](https://github.com/HankHuang0516/EClaw/issues/1506)) ([9920a2b](https://github.com/HankHuang0516/EClaw/commit/9920a2b85ab19be1d8f27df738080ef9f837fd63))
* **i18n:** add German translations - batch 1 (portal, nav, landing, ent) ([#1520](https://github.com/HankHuang0516/EClaw/issues/1520)) ([527e2ce](https://github.com/HankHuang0516/EClaw/commit/527e2ce50f97339d6b4072a5e227ab622d467959))
* **i18n:** add German translations - batch 2 (ent_ec, info, qs sections) ([#1521](https://github.com/HankHuang0516/EClaw/issues/1521)) ([b3b2631](https://github.com/HankHuang0516/EClaw/commit/b3b26312d6748b6ea242d88e4bdc26162a2cba2c)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 3 (guide, demo, faq sections) ([#1522](https://github.com/HankHuang0516/EClaw/issues/1522)) ([e912fba](https://github.com/HankHuang0516/EClaw/commit/e912fbab6399d100765d2013b2214345a31e273d)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 4 (more guide sections) ([#1523](https://github.com/HankHuang0516/EClaw/issues/1523)) ([c55b3a8](https://github.com/HankHuang0516/EClaw/commit/c55b3a88a9db5ce807e5b3e8461b81efcd624337)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 5 (login, settings, terms sections) ([#1524](https://github.com/HankHuang0516/EClaw/issues/1524)) ([38167d1](https://github.com/HankHuang0516/EClaw/commit/38167d1cb7875d5f1a5ba2376c9bde3c57e09abf)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.878.0](https://github.com/HankHuang0516/EClaw/compare/v1.877.0...v1.878.0) (2026-03-31)


### Features

* **i18n:** add French translations for borrow and settings sections ([#1507](https://github.com/HankHuang0516/EClaw/issues/1507)) ([3222f66](https://github.com/HankHuang0516/EClaw/commit/3222f66532704718a56a802509b37ea0226a91c7)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for cardholder and contacts sections ([#1513](https://github.com/HankHuang0516/EClaw/issues/1513)) ([fd03424](https://github.com/HankHuang0516/EClaw/commit/fd034248404e3f7be0c2bb98859571e105bc7bc8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for chat and schedule sections ([#1510](https://github.com/HankHuang0516/EClaw/issues/1510)) ([777be93](https://github.com/HankHuang0516/EClaw/commit/777be93e9605cbbc3388c6d62d6f4b2f6043cabf)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for common, error, settings sections - batch 376 ([#1519](https://github.com/HankHuang0516/EClaw/issues/1519)) ([fa53650](https://github.com/HankHuang0516/EClaw/commit/fa536500ee04a343ad2961f839ceaf1c6481a75a)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for feedback and chat sections ([#1509](https://github.com/HankHuang0516/EClaw/issues/1509)) ([9860e93](https://github.com/HankHuang0516/EClaw/commit/9860e93221aa6ce5b8efbcd810b0635bba047bb2)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for files, guide, kanban sections ([#1515](https://github.com/HankHuang0516/EClaw/issues/1515)) ([72d1207](https://github.com/HankHuang0516/EClaw/commit/72d120753c051fae1b8133d413fc9624a3c31172)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for identity and avatar sections ([5bc7f07](https://github.com/HankHuang0516/EClaw/commit/5bc7f072ce8af1c2f66d57fb40557ddbdfcfeb64))
* **i18n:** add French translations for kanban, mission sections ([#1516](https://github.com/HankHuang0516/EClaw/issues/1516)) ([5295d61](https://github.com/HankHuang0516/EClaw/commit/5295d611308ac959832086460c1a0f1f0fc8dca6)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for mission, notification sections ([#1517](https://github.com/HankHuang0516/EClaw/issues/1517)) ([d3fa174](https://github.com/HankHuang0516/EClaw/commit/d3fa17408339ec0c7afefe2819e5ec1304431dc9)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for sc, files sections ([#1514](https://github.com/HankHuang0516/EClaw/issues/1514)) ([dbe17d0](https://github.com/HankHuang0516/EClaw/commit/dbe17d0d11e25be5419ce04cf51cb3c5817891bf)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for schedule sections ([#1511](https://github.com/HankHuang0516/EClaw/issues/1511)) ([cc7cc44](https://github.com/HankHuang0516/EClaw/commit/cc7cc44bd2bd30e04633e8dab8cc90c21f80ac31)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for settings and notifications ([#1508](https://github.com/HankHuang0516/EClaw/issues/1508)) ([d28d201](https://github.com/HankHuang0516/EClaw/commit/d28d20198d83f109677a91d857f54ac7dd9f5277)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for settings sections ([#1518](https://github.com/HankHuang0516/EClaw/issues/1518)) ([c4bbbdc](https://github.com/HankHuang0516/EClaw/commit/c4bbbdc1d3098fe8c3e72c2d4b2ce5e4ce7506a9)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for slots, webhook, borrow sections ([#1506](https://github.com/HankHuang0516/EClaw/issues/1506)) ([9920a2b](https://github.com/HankHuang0516/EClaw/commit/9920a2b85ab19be1d8f27df738080ef9f837fd63))
* **i18n:** add German translations - batch 1 (portal, nav, landing, ent) ([#1520](https://github.com/HankHuang0516/EClaw/issues/1520)) ([527e2ce](https://github.com/HankHuang0516/EClaw/commit/527e2ce50f97339d6b4072a5e227ab622d467959))
* **i18n:** add German translations - batch 2 (ent_ec, info, qs sections) ([#1521](https://github.com/HankHuang0516/EClaw/issues/1521)) ([b3b2631](https://github.com/HankHuang0516/EClaw/commit/b3b26312d6748b6ea242d88e4bdc26162a2cba2c)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 3 (guide, demo, faq sections) ([#1522](https://github.com/HankHuang0516/EClaw/issues/1522)) ([e912fba](https://github.com/HankHuang0516/EClaw/commit/e912fbab6399d100765d2013b2214345a31e273d)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 4 (more guide sections) ([#1523](https://github.com/HankHuang0516/EClaw/issues/1523)) ([c55b3a8](https://github.com/HankHuang0516/EClaw/commit/c55b3a88a9db5ce807e5b3e8461b81efcd624337)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.878.0](https://github.com/HankHuang0516/EClaw/compare/v1.877.0...v1.878.0) (2026-03-31)


### Features

* **i18n:** add French translations for borrow and settings sections ([#1507](https://github.com/HankHuang0516/EClaw/issues/1507)) ([3222f66](https://github.com/HankHuang0516/EClaw/commit/3222f66532704718a56a802509b37ea0226a91c7)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for cardholder and contacts sections ([#1513](https://github.com/HankHuang0516/EClaw/issues/1513)) ([fd03424](https://github.com/HankHuang0516/EClaw/commit/fd034248404e3f7be0c2bb98859571e105bc7bc8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for chat and schedule sections ([#1510](https://github.com/HankHuang0516/EClaw/issues/1510)) ([777be93](https://github.com/HankHuang0516/EClaw/commit/777be93e9605cbbc3388c6d62d6f4b2f6043cabf)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for common, error, settings sections - batch 376 ([#1519](https://github.com/HankHuang0516/EClaw/issues/1519)) ([fa53650](https://github.com/HankHuang0516/EClaw/commit/fa536500ee04a343ad2961f839ceaf1c6481a75a)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for feedback and chat sections ([#1509](https://github.com/HankHuang0516/EClaw/issues/1509)) ([9860e93](https://github.com/HankHuang0516/EClaw/commit/9860e93221aa6ce5b8efbcd810b0635bba047bb2)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for files, guide, kanban sections ([#1515](https://github.com/HankHuang0516/EClaw/issues/1515)) ([72d1207](https://github.com/HankHuang0516/EClaw/commit/72d120753c051fae1b8133d413fc9624a3c31172)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for identity and avatar sections ([5bc7f07](https://github.com/HankHuang0516/EClaw/commit/5bc7f072ce8af1c2f66d57fb40557ddbdfcfeb64))
* **i18n:** add French translations for kanban, mission sections ([#1516](https://github.com/HankHuang0516/EClaw/issues/1516)) ([5295d61](https://github.com/HankHuang0516/EClaw/commit/5295d611308ac959832086460c1a0f1f0fc8dca6)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for mission, notification sections ([#1517](https://github.com/HankHuang0516/EClaw/issues/1517)) ([d3fa174](https://github.com/HankHuang0516/EClaw/commit/d3fa17408339ec0c7afefe2819e5ec1304431dc9)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for sc, files sections ([#1514](https://github.com/HankHuang0516/EClaw/issues/1514)) ([dbe17d0](https://github.com/HankHuang0516/EClaw/commit/dbe17d0d11e25be5419ce04cf51cb3c5817891bf)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for schedule sections ([#1511](https://github.com/HankHuang0516/EClaw/issues/1511)) ([cc7cc44](https://github.com/HankHuang0516/EClaw/commit/cc7cc44bd2bd30e04633e8dab8cc90c21f80ac31)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for settings and notifications ([#1508](https://github.com/HankHuang0516/EClaw/issues/1508)) ([d28d201](https://github.com/HankHuang0516/EClaw/commit/d28d20198d83f109677a91d857f54ac7dd9f5277)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for settings sections ([#1518](https://github.com/HankHuang0516/EClaw/issues/1518)) ([c4bbbdc](https://github.com/HankHuang0516/EClaw/commit/c4bbbdc1d3098fe8c3e72c2d4b2ce5e4ce7506a9)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for slots, webhook, borrow sections ([#1506](https://github.com/HankHuang0516/EClaw/issues/1506)) ([9920a2b](https://github.com/HankHuang0516/EClaw/commit/9920a2b85ab19be1d8f27df738080ef9f837fd63))
* **i18n:** add German translations - batch 1 (portal, nav, landing, ent) ([#1520](https://github.com/HankHuang0516/EClaw/issues/1520)) ([527e2ce](https://github.com/HankHuang0516/EClaw/commit/527e2ce50f97339d6b4072a5e227ab622d467959))
* **i18n:** add German translations - batch 2 (ent_ec, info, qs sections) ([#1521](https://github.com/HankHuang0516/EClaw/issues/1521)) ([b3b2631](https://github.com/HankHuang0516/EClaw/commit/b3b26312d6748b6ea242d88e4bdc26162a2cba2c)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add German translations - batch 3 (guide, demo, faq sections) ([#1522](https://github.com/HankHuang0516/EClaw/issues/1522)) ([e912fba](https://github.com/HankHuang0516/EClaw/commit/e912fbab6399d100765d2013b2214345a31e273d)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.878.0](https://github.com/HankHuang0516/EClaw/compare/v1.877.0...v1.878.0) (2026-03-31)


### Features

* **i18n:** add French translations for borrow and settings sections ([#1507](https://github.com/HankHuang0516/EClaw/issues/1507)) ([3222f66](https://github.com/HankHuang0516/EClaw/commit/3222f66532704718a56a802509b37ea0226a91c7)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for cardholder and contacts sections ([#1513](https://github.com/HankHuang0516/EClaw/issues/1513)) ([fd03424](https://github.com/HankHuang0516/EClaw/commit/fd034248404e3f7be0c2bb98859571e105bc7bc8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for chat and schedule sections ([#1510](https://github.com/HankHuang0516/EClaw/issues/1510)) ([777be93](https://github.com/HankHuang0516/EClaw/commit/777be93e9605cbbc3388c6d62d6f4b2f6043cabf)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for common, error, settings sections - batch 376 ([#1519](https://github.com/HankHuang0516/EClaw/issues/1519)) ([fa53650](https://github.com/HankHuang0516/EClaw/commit/fa536500ee04a343ad2961f839ceaf1c6481a75a)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for feedback and chat sections ([#1509](https://github.com/HankHuang0516/EClaw/issues/1509)) ([9860e93](https://github.com/HankHuang0516/EClaw/commit/9860e93221aa6ce5b8efbcd810b0635bba047bb2)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for files, guide, kanban sections ([#1515](https://github.com/HankHuang0516/EClaw/issues/1515)) ([72d1207](https://github.com/HankHuang0516/EClaw/commit/72d120753c051fae1b8133d413fc9624a3c31172)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for identity and avatar sections ([5bc7f07](https://github.com/HankHuang0516/EClaw/commit/5bc7f072ce8af1c2f66d57fb40557ddbdfcfeb64))
* **i18n:** add French translations for kanban, mission sections ([#1516](https://github.com/HankHuang0516/EClaw/issues/1516)) ([5295d61](https://github.com/HankHuang0516/EClaw/commit/5295d611308ac959832086460c1a0f1f0fc8dca6)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for mission, notification sections ([#1517](https://github.com/HankHuang0516/EClaw/issues/1517)) ([d3fa174](https://github.com/HankHuang0516/EClaw/commit/d3fa17408339ec0c7afefe2819e5ec1304431dc9)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for sc, files sections ([#1514](https://github.com/HankHuang0516/EClaw/issues/1514)) ([dbe17d0](https://github.com/HankHuang0516/EClaw/commit/dbe17d0d11e25be5419ce04cf51cb3c5817891bf)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for schedule sections ([#1511](https://github.com/HankHuang0516/EClaw/issues/1511)) ([cc7cc44](https://github.com/HankHuang0516/EClaw/commit/cc7cc44bd2bd30e04633e8dab8cc90c21f80ac31)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for settings and notifications ([#1508](https://github.com/HankHuang0516/EClaw/issues/1508)) ([d28d201](https://github.com/HankHuang0516/EClaw/commit/d28d20198d83f109677a91d857f54ac7dd9f5277)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for settings sections ([#1518](https://github.com/HankHuang0516/EClaw/issues/1518)) ([c4bbbdc](https://github.com/HankHuang0516/EClaw/commit/c4bbbdc1d3098fe8c3e72c2d4b2ce5e4ce7506a9)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for slots, webhook, borrow sections ([#1506](https://github.com/HankHuang0516/EClaw/issues/1506)) ([9920a2b](https://github.com/HankHuang0516/EClaw/commit/9920a2b85ab19be1d8f27df738080ef9f837fd63))
* **i18n:** add German translations - batch 1 (portal, nav, landing, ent) ([#1520](https://github.com/HankHuang0516/EClaw/issues/1520)) ([527e2ce](https://github.com/HankHuang0516/EClaw/commit/527e2ce50f97339d6b4072a5e227ab622d467959))
* **i18n:** add German translations - batch 2 (ent_ec, info, qs sections) ([#1521](https://github.com/HankHuang0516/EClaw/issues/1521)) ([b3b2631](https://github.com/HankHuang0516/EClaw/commit/b3b26312d6748b6ea242d88e4bdc26162a2cba2c)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.878.0](https://github.com/HankHuang0516/EClaw/compare/v1.877.0...v1.878.0) (2026-03-31)


### Features

* **i18n:** add French translations for borrow and settings sections ([#1507](https://github.com/HankHuang0516/EClaw/issues/1507)) ([3222f66](https://github.com/HankHuang0516/EClaw/commit/3222f66532704718a56a802509b37ea0226a91c7)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for cardholder and contacts sections ([#1513](https://github.com/HankHuang0516/EClaw/issues/1513)) ([fd03424](https://github.com/HankHuang0516/EClaw/commit/fd034248404e3f7be0c2bb98859571e105bc7bc8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for chat and schedule sections ([#1510](https://github.com/HankHuang0516/EClaw/issues/1510)) ([777be93](https://github.com/HankHuang0516/EClaw/commit/777be93e9605cbbc3388c6d62d6f4b2f6043cabf)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for common, error, settings sections - batch 376 ([#1519](https://github.com/HankHuang0516/EClaw/issues/1519)) ([fa53650](https://github.com/HankHuang0516/EClaw/commit/fa536500ee04a343ad2961f839ceaf1c6481a75a)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for feedback and chat sections ([#1509](https://github.com/HankHuang0516/EClaw/issues/1509)) ([9860e93](https://github.com/HankHuang0516/EClaw/commit/9860e93221aa6ce5b8efbcd810b0635bba047bb2)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for files, guide, kanban sections ([#1515](https://github.com/HankHuang0516/EClaw/issues/1515)) ([72d1207](https://github.com/HankHuang0516/EClaw/commit/72d120753c051fae1b8133d413fc9624a3c31172)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for identity and avatar sections ([5bc7f07](https://github.com/HankHuang0516/EClaw/commit/5bc7f072ce8af1c2f66d57fb40557ddbdfcfeb64))
* **i18n:** add French translations for kanban, mission sections ([#1516](https://github.com/HankHuang0516/EClaw/issues/1516)) ([5295d61](https://github.com/HankHuang0516/EClaw/commit/5295d611308ac959832086460c1a0f1f0fc8dca6)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for mission, notification sections ([#1517](https://github.com/HankHuang0516/EClaw/issues/1517)) ([d3fa174](https://github.com/HankHuang0516/EClaw/commit/d3fa17408339ec0c7afefe2819e5ec1304431dc9)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for sc, files sections ([#1514](https://github.com/HankHuang0516/EClaw/issues/1514)) ([dbe17d0](https://github.com/HankHuang0516/EClaw/commit/dbe17d0d11e25be5419ce04cf51cb3c5817891bf)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for schedule sections ([#1511](https://github.com/HankHuang0516/EClaw/issues/1511)) ([cc7cc44](https://github.com/HankHuang0516/EClaw/commit/cc7cc44bd2bd30e04633e8dab8cc90c21f80ac31)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for settings and notifications ([#1508](https://github.com/HankHuang0516/EClaw/issues/1508)) ([d28d201](https://github.com/HankHuang0516/EClaw/commit/d28d20198d83f109677a91d857f54ac7dd9f5277)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for settings sections ([#1518](https://github.com/HankHuang0516/EClaw/issues/1518)) ([c4bbbdc](https://github.com/HankHuang0516/EClaw/commit/c4bbbdc1d3098fe8c3e72c2d4b2ce5e4ce7506a9)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for slots, webhook, borrow sections ([#1506](https://github.com/HankHuang0516/EClaw/issues/1506)) ([9920a2b](https://github.com/HankHuang0516/EClaw/commit/9920a2b85ab19be1d8f27df738080ef9f837fd63))
* **i18n:** add German translations - batch 1 (portal, nav, landing, ent) ([#1520](https://github.com/HankHuang0516/EClaw/issues/1520)) ([527e2ce](https://github.com/HankHuang0516/EClaw/commit/527e2ce50f97339d6b4072a5e227ab622d467959))

# [1.878.0](https://github.com/HankHuang0516/EClaw/compare/v1.877.0...v1.878.0) (2026-03-31)


### Features

* **i18n:** add French translations for borrow and settings sections ([#1507](https://github.com/HankHuang0516/EClaw/issues/1507)) ([3222f66](https://github.com/HankHuang0516/EClaw/commit/3222f66532704718a56a802509b37ea0226a91c7)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for cardholder and contacts sections ([#1513](https://github.com/HankHuang0516/EClaw/issues/1513)) ([fd03424](https://github.com/HankHuang0516/EClaw/commit/fd034248404e3f7be0c2bb98859571e105bc7bc8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for chat and schedule sections ([#1510](https://github.com/HankHuang0516/EClaw/issues/1510)) ([777be93](https://github.com/HankHuang0516/EClaw/commit/777be93e9605cbbc3388c6d62d6f4b2f6043cabf)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for common, error, settings sections - batch 376 ([#1519](https://github.com/HankHuang0516/EClaw/issues/1519)) ([fa53650](https://github.com/HankHuang0516/EClaw/commit/fa536500ee04a343ad2961f839ceaf1c6481a75a)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for feedback and chat sections ([#1509](https://github.com/HankHuang0516/EClaw/issues/1509)) ([9860e93](https://github.com/HankHuang0516/EClaw/commit/9860e93221aa6ce5b8efbcd810b0635bba047bb2)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for files, guide, kanban sections ([#1515](https://github.com/HankHuang0516/EClaw/issues/1515)) ([72d1207](https://github.com/HankHuang0516/EClaw/commit/72d120753c051fae1b8133d413fc9624a3c31172)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for identity and avatar sections ([5bc7f07](https://github.com/HankHuang0516/EClaw/commit/5bc7f072ce8af1c2f66d57fb40557ddbdfcfeb64))
* **i18n:** add French translations for kanban, mission sections ([#1516](https://github.com/HankHuang0516/EClaw/issues/1516)) ([5295d61](https://github.com/HankHuang0516/EClaw/commit/5295d611308ac959832086460c1a0f1f0fc8dca6)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for mission, notification sections ([#1517](https://github.com/HankHuang0516/EClaw/issues/1517)) ([d3fa174](https://github.com/HankHuang0516/EClaw/commit/d3fa17408339ec0c7afefe2819e5ec1304431dc9)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for sc, files sections ([#1514](https://github.com/HankHuang0516/EClaw/issues/1514)) ([dbe17d0](https://github.com/HankHuang0516/EClaw/commit/dbe17d0d11e25be5419ce04cf51cb3c5817891bf)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for schedule sections ([#1511](https://github.com/HankHuang0516/EClaw/issues/1511)) ([cc7cc44](https://github.com/HankHuang0516/EClaw/commit/cc7cc44bd2bd30e04633e8dab8cc90c21f80ac31)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for settings and notifications ([#1508](https://github.com/HankHuang0516/EClaw/issues/1508)) ([d28d201](https://github.com/HankHuang0516/EClaw/commit/d28d20198d83f109677a91d857f54ac7dd9f5277)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for settings sections ([#1518](https://github.com/HankHuang0516/EClaw/issues/1518)) ([c4bbbdc](https://github.com/HankHuang0516/EClaw/commit/c4bbbdc1d3098fe8c3e72c2d4b2ce5e4ce7506a9)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for slots, webhook, borrow sections ([#1506](https://github.com/HankHuang0516/EClaw/issues/1506)) ([9920a2b](https://github.com/HankHuang0516/EClaw/commit/9920a2b85ab19be1d8f27df738080ef9f837fd63))

# [1.878.0](https://github.com/HankHuang0516/EClaw/compare/v1.877.0...v1.878.0) (2026-03-31)


### Features

* **i18n:** add French translations for borrow and settings sections ([#1507](https://github.com/HankHuang0516/EClaw/issues/1507)) ([3222f66](https://github.com/HankHuang0516/EClaw/commit/3222f66532704718a56a802509b37ea0226a91c7)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for cardholder and contacts sections ([#1513](https://github.com/HankHuang0516/EClaw/issues/1513)) ([fd03424](https://github.com/HankHuang0516/EClaw/commit/fd034248404e3f7be0c2bb98859571e105bc7bc8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for chat and schedule sections ([#1510](https://github.com/HankHuang0516/EClaw/issues/1510)) ([777be93](https://github.com/HankHuang0516/EClaw/commit/777be93e9605cbbc3388c6d62d6f4b2f6043cabf)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for feedback and chat sections ([#1509](https://github.com/HankHuang0516/EClaw/issues/1509)) ([9860e93](https://github.com/HankHuang0516/EClaw/commit/9860e93221aa6ce5b8efbcd810b0635bba047bb2)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for files, guide, kanban sections ([#1515](https://github.com/HankHuang0516/EClaw/issues/1515)) ([72d1207](https://github.com/HankHuang0516/EClaw/commit/72d120753c051fae1b8133d413fc9624a3c31172)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for identity and avatar sections ([5bc7f07](https://github.com/HankHuang0516/EClaw/commit/5bc7f072ce8af1c2f66d57fb40557ddbdfcfeb64))
* **i18n:** add French translations for kanban, mission sections ([#1516](https://github.com/HankHuang0516/EClaw/issues/1516)) ([5295d61](https://github.com/HankHuang0516/EClaw/commit/5295d611308ac959832086460c1a0f1f0fc8dca6)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for mission, notification sections ([#1517](https://github.com/HankHuang0516/EClaw/issues/1517)) ([d3fa174](https://github.com/HankHuang0516/EClaw/commit/d3fa17408339ec0c7afefe2819e5ec1304431dc9)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for sc, files sections ([#1514](https://github.com/HankHuang0516/EClaw/issues/1514)) ([dbe17d0](https://github.com/HankHuang0516/EClaw/commit/dbe17d0d11e25be5419ce04cf51cb3c5817891bf)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for schedule sections ([#1511](https://github.com/HankHuang0516/EClaw/issues/1511)) ([cc7cc44](https://github.com/HankHuang0516/EClaw/commit/cc7cc44bd2bd30e04633e8dab8cc90c21f80ac31)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for settings and notifications ([#1508](https://github.com/HankHuang0516/EClaw/issues/1508)) ([d28d201](https://github.com/HankHuang0516/EClaw/commit/d28d20198d83f109677a91d857f54ac7dd9f5277)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for settings sections ([#1518](https://github.com/HankHuang0516/EClaw/issues/1518)) ([c4bbbdc](https://github.com/HankHuang0516/EClaw/commit/c4bbbdc1d3098fe8c3e72c2d4b2ce5e4ce7506a9)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for slots, webhook, borrow sections ([#1506](https://github.com/HankHuang0516/EClaw/issues/1506)) ([9920a2b](https://github.com/HankHuang0516/EClaw/commit/9920a2b85ab19be1d8f27df738080ef9f837fd63))

# [1.878.0](https://github.com/HankHuang0516/EClaw/compare/v1.877.0...v1.878.0) (2026-03-31)


### Features

* **i18n:** add French translations for borrow and settings sections ([#1507](https://github.com/HankHuang0516/EClaw/issues/1507)) ([3222f66](https://github.com/HankHuang0516/EClaw/commit/3222f66532704718a56a802509b37ea0226a91c7)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for cardholder and contacts sections ([#1513](https://github.com/HankHuang0516/EClaw/issues/1513)) ([fd03424](https://github.com/HankHuang0516/EClaw/commit/fd034248404e3f7be0c2bb98859571e105bc7bc8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for chat and schedule sections ([#1510](https://github.com/HankHuang0516/EClaw/issues/1510)) ([777be93](https://github.com/HankHuang0516/EClaw/commit/777be93e9605cbbc3388c6d62d6f4b2f6043cabf)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for feedback and chat sections ([#1509](https://github.com/HankHuang0516/EClaw/issues/1509)) ([9860e93](https://github.com/HankHuang0516/EClaw/commit/9860e93221aa6ce5b8efbcd810b0635bba047bb2)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for files, guide, kanban sections ([#1515](https://github.com/HankHuang0516/EClaw/issues/1515)) ([72d1207](https://github.com/HankHuang0516/EClaw/commit/72d120753c051fae1b8133d413fc9624a3c31172)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for identity and avatar sections ([5bc7f07](https://github.com/HankHuang0516/EClaw/commit/5bc7f072ce8af1c2f66d57fb40557ddbdfcfeb64))
* **i18n:** add French translations for kanban, mission sections ([#1516](https://github.com/HankHuang0516/EClaw/issues/1516)) ([5295d61](https://github.com/HankHuang0516/EClaw/commit/5295d611308ac959832086460c1a0f1f0fc8dca6)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for mission, notification sections ([#1517](https://github.com/HankHuang0516/EClaw/issues/1517)) ([d3fa174](https://github.com/HankHuang0516/EClaw/commit/d3fa17408339ec0c7afefe2819e5ec1304431dc9)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for sc, files sections ([#1514](https://github.com/HankHuang0516/EClaw/issues/1514)) ([dbe17d0](https://github.com/HankHuang0516/EClaw/commit/dbe17d0d11e25be5419ce04cf51cb3c5817891bf)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for schedule sections ([#1511](https://github.com/HankHuang0516/EClaw/issues/1511)) ([cc7cc44](https://github.com/HankHuang0516/EClaw/commit/cc7cc44bd2bd30e04633e8dab8cc90c21f80ac31)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for settings and notifications ([#1508](https://github.com/HankHuang0516/EClaw/issues/1508)) ([d28d201](https://github.com/HankHuang0516/EClaw/commit/d28d20198d83f109677a91d857f54ac7dd9f5277)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for slots, webhook, borrow sections ([#1506](https://github.com/HankHuang0516/EClaw/issues/1506)) ([9920a2b](https://github.com/HankHuang0516/EClaw/commit/9920a2b85ab19be1d8f27df738080ef9f837fd63))

# [1.878.0](https://github.com/HankHuang0516/EClaw/compare/v1.877.0...v1.878.0) (2026-03-31)


### Features

* **i18n:** add French translations for borrow and settings sections ([#1507](https://github.com/HankHuang0516/EClaw/issues/1507)) ([3222f66](https://github.com/HankHuang0516/EClaw/commit/3222f66532704718a56a802509b37ea0226a91c7)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for cardholder and contacts sections ([#1513](https://github.com/HankHuang0516/EClaw/issues/1513)) ([fd03424](https://github.com/HankHuang0516/EClaw/commit/fd034248404e3f7be0c2bb98859571e105bc7bc8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for chat and schedule sections ([#1510](https://github.com/HankHuang0516/EClaw/issues/1510)) ([777be93](https://github.com/HankHuang0516/EClaw/commit/777be93e9605cbbc3388c6d62d6f4b2f6043cabf)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for feedback and chat sections ([#1509](https://github.com/HankHuang0516/EClaw/issues/1509)) ([9860e93](https://github.com/HankHuang0516/EClaw/commit/9860e93221aa6ce5b8efbcd810b0635bba047bb2)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for files, guide, kanban sections ([#1515](https://github.com/HankHuang0516/EClaw/issues/1515)) ([72d1207](https://github.com/HankHuang0516/EClaw/commit/72d120753c051fae1b8133d413fc9624a3c31172)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for identity and avatar sections ([5bc7f07](https://github.com/HankHuang0516/EClaw/commit/5bc7f072ce8af1c2f66d57fb40557ddbdfcfeb64))
* **i18n:** add French translations for kanban, mission sections ([#1516](https://github.com/HankHuang0516/EClaw/issues/1516)) ([5295d61](https://github.com/HankHuang0516/EClaw/commit/5295d611308ac959832086460c1a0f1f0fc8dca6)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for sc, files sections ([#1514](https://github.com/HankHuang0516/EClaw/issues/1514)) ([dbe17d0](https://github.com/HankHuang0516/EClaw/commit/dbe17d0d11e25be5419ce04cf51cb3c5817891bf)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for schedule sections ([#1511](https://github.com/HankHuang0516/EClaw/issues/1511)) ([cc7cc44](https://github.com/HankHuang0516/EClaw/commit/cc7cc44bd2bd30e04633e8dab8cc90c21f80ac31)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for settings and notifications ([#1508](https://github.com/HankHuang0516/EClaw/issues/1508)) ([d28d201](https://github.com/HankHuang0516/EClaw/commit/d28d20198d83f109677a91d857f54ac7dd9f5277)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for slots, webhook, borrow sections ([#1506](https://github.com/HankHuang0516/EClaw/issues/1506)) ([9920a2b](https://github.com/HankHuang0516/EClaw/commit/9920a2b85ab19be1d8f27df738080ef9f837fd63))

# [1.878.0](https://github.com/HankHuang0516/EClaw/compare/v1.877.0...v1.878.0) (2026-03-31)


### Features

* **i18n:** add French translations for borrow and settings sections ([#1507](https://github.com/HankHuang0516/EClaw/issues/1507)) ([3222f66](https://github.com/HankHuang0516/EClaw/commit/3222f66532704718a56a802509b37ea0226a91c7)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for cardholder and contacts sections ([#1513](https://github.com/HankHuang0516/EClaw/issues/1513)) ([fd03424](https://github.com/HankHuang0516/EClaw/commit/fd034248404e3f7be0c2bb98859571e105bc7bc8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for chat and schedule sections ([#1510](https://github.com/HankHuang0516/EClaw/issues/1510)) ([777be93](https://github.com/HankHuang0516/EClaw/commit/777be93e9605cbbc3388c6d62d6f4b2f6043cabf)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for feedback and chat sections ([#1509](https://github.com/HankHuang0516/EClaw/issues/1509)) ([9860e93](https://github.com/HankHuang0516/EClaw/commit/9860e93221aa6ce5b8efbcd810b0635bba047bb2)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for files, guide, kanban sections ([#1515](https://github.com/HankHuang0516/EClaw/issues/1515)) ([72d1207](https://github.com/HankHuang0516/EClaw/commit/72d120753c051fae1b8133d413fc9624a3c31172)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for identity and avatar sections ([5bc7f07](https://github.com/HankHuang0516/EClaw/commit/5bc7f072ce8af1c2f66d57fb40557ddbdfcfeb64))
* **i18n:** add French translations for sc, files sections ([#1514](https://github.com/HankHuang0516/EClaw/issues/1514)) ([dbe17d0](https://github.com/HankHuang0516/EClaw/commit/dbe17d0d11e25be5419ce04cf51cb3c5817891bf)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for schedule sections ([#1511](https://github.com/HankHuang0516/EClaw/issues/1511)) ([cc7cc44](https://github.com/HankHuang0516/EClaw/commit/cc7cc44bd2bd30e04633e8dab8cc90c21f80ac31)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for settings and notifications ([#1508](https://github.com/HankHuang0516/EClaw/issues/1508)) ([d28d201](https://github.com/HankHuang0516/EClaw/commit/d28d20198d83f109677a91d857f54ac7dd9f5277)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for slots, webhook, borrow sections ([#1506](https://github.com/HankHuang0516/EClaw/issues/1506)) ([9920a2b](https://github.com/HankHuang0516/EClaw/commit/9920a2b85ab19be1d8f27df738080ef9f837fd63))

# [1.878.0](https://github.com/HankHuang0516/EClaw/compare/v1.877.0...v1.878.0) (2026-03-31)


### Features

* **i18n:** add French translations for borrow and settings sections ([#1507](https://github.com/HankHuang0516/EClaw/issues/1507)) ([3222f66](https://github.com/HankHuang0516/EClaw/commit/3222f66532704718a56a802509b37ea0226a91c7)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for cardholder and contacts sections ([#1513](https://github.com/HankHuang0516/EClaw/issues/1513)) ([fd03424](https://github.com/HankHuang0516/EClaw/commit/fd034248404e3f7be0c2bb98859571e105bc7bc8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for chat and schedule sections ([#1510](https://github.com/HankHuang0516/EClaw/issues/1510)) ([777be93](https://github.com/HankHuang0516/EClaw/commit/777be93e9605cbbc3388c6d62d6f4b2f6043cabf)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for feedback and chat sections ([#1509](https://github.com/HankHuang0516/EClaw/issues/1509)) ([9860e93](https://github.com/HankHuang0516/EClaw/commit/9860e93221aa6ce5b8efbcd810b0635bba047bb2)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for identity and avatar sections ([5bc7f07](https://github.com/HankHuang0516/EClaw/commit/5bc7f072ce8af1c2f66d57fb40557ddbdfcfeb64))
* **i18n:** add French translations for sc, files sections ([#1514](https://github.com/HankHuang0516/EClaw/issues/1514)) ([dbe17d0](https://github.com/HankHuang0516/EClaw/commit/dbe17d0d11e25be5419ce04cf51cb3c5817891bf)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for schedule sections ([#1511](https://github.com/HankHuang0516/EClaw/issues/1511)) ([cc7cc44](https://github.com/HankHuang0516/EClaw/commit/cc7cc44bd2bd30e04633e8dab8cc90c21f80ac31)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for settings and notifications ([#1508](https://github.com/HankHuang0516/EClaw/issues/1508)) ([d28d201](https://github.com/HankHuang0516/EClaw/commit/d28d20198d83f109677a91d857f54ac7dd9f5277)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for slots, webhook, borrow sections ([#1506](https://github.com/HankHuang0516/EClaw/issues/1506)) ([9920a2b](https://github.com/HankHuang0516/EClaw/commit/9920a2b85ab19be1d8f27df738080ef9f837fd63))

# [1.878.0](https://github.com/HankHuang0516/EClaw/compare/v1.877.0...v1.878.0) (2026-03-31)


### Features

* **i18n:** add French translations for borrow and settings sections ([#1507](https://github.com/HankHuang0516/EClaw/issues/1507)) ([3222f66](https://github.com/HankHuang0516/EClaw/commit/3222f66532704718a56a802509b37ea0226a91c7)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for cardholder and contacts sections ([#1513](https://github.com/HankHuang0516/EClaw/issues/1513)) ([fd03424](https://github.com/HankHuang0516/EClaw/commit/fd034248404e3f7be0c2bb98859571e105bc7bc8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for chat and schedule sections ([#1510](https://github.com/HankHuang0516/EClaw/issues/1510)) ([777be93](https://github.com/HankHuang0516/EClaw/commit/777be93e9605cbbc3388c6d62d6f4b2f6043cabf)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for feedback and chat sections ([#1509](https://github.com/HankHuang0516/EClaw/issues/1509)) ([9860e93](https://github.com/HankHuang0516/EClaw/commit/9860e93221aa6ce5b8efbcd810b0635bba047bb2)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for identity and avatar sections ([5bc7f07](https://github.com/HankHuang0516/EClaw/commit/5bc7f072ce8af1c2f66d57fb40557ddbdfcfeb64))
* **i18n:** add French translations for schedule sections ([#1511](https://github.com/HankHuang0516/EClaw/issues/1511)) ([cc7cc44](https://github.com/HankHuang0516/EClaw/commit/cc7cc44bd2bd30e04633e8dab8cc90c21f80ac31)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for settings and notifications ([#1508](https://github.com/HankHuang0516/EClaw/issues/1508)) ([d28d201](https://github.com/HankHuang0516/EClaw/commit/d28d20198d83f109677a91d857f54ac7dd9f5277)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for slots, webhook, borrow sections ([#1506](https://github.com/HankHuang0516/EClaw/issues/1506)) ([9920a2b](https://github.com/HankHuang0516/EClaw/commit/9920a2b85ab19be1d8f27df738080ef9f837fd63))

# [1.878.0](https://github.com/HankHuang0516/EClaw/compare/v1.877.0...v1.878.0) (2026-03-31)


### Features

* **i18n:** add French translations for borrow and settings sections ([#1507](https://github.com/HankHuang0516/EClaw/issues/1507)) ([3222f66](https://github.com/HankHuang0516/EClaw/commit/3222f66532704718a56a802509b37ea0226a91c7)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for chat and schedule sections ([#1510](https://github.com/HankHuang0516/EClaw/issues/1510)) ([777be93](https://github.com/HankHuang0516/EClaw/commit/777be93e9605cbbc3388c6d62d6f4b2f6043cabf)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for feedback and chat sections ([#1509](https://github.com/HankHuang0516/EClaw/issues/1509)) ([9860e93](https://github.com/HankHuang0516/EClaw/commit/9860e93221aa6ce5b8efbcd810b0635bba047bb2)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for identity and avatar sections ([5bc7f07](https://github.com/HankHuang0516/EClaw/commit/5bc7f072ce8af1c2f66d57fb40557ddbdfcfeb64))
* **i18n:** add French translations for schedule sections ([#1511](https://github.com/HankHuang0516/EClaw/issues/1511)) ([cc7cc44](https://github.com/HankHuang0516/EClaw/commit/cc7cc44bd2bd30e04633e8dab8cc90c21f80ac31)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for settings and notifications ([#1508](https://github.com/HankHuang0516/EClaw/issues/1508)) ([d28d201](https://github.com/HankHuang0516/EClaw/commit/d28d20198d83f109677a91d857f54ac7dd9f5277)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for slots, webhook, borrow sections ([#1506](https://github.com/HankHuang0516/EClaw/issues/1506)) ([9920a2b](https://github.com/HankHuang0516/EClaw/commit/9920a2b85ab19be1d8f27df738080ef9f837fd63))

# [1.878.0](https://github.com/HankHuang0516/EClaw/compare/v1.877.0...v1.878.0) (2026-03-31)


### Features

* **i18n:** add French translations for borrow and settings sections ([#1507](https://github.com/HankHuang0516/EClaw/issues/1507)) ([3222f66](https://github.com/HankHuang0516/EClaw/commit/3222f66532704718a56a802509b37ea0226a91c7)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for chat and schedule sections ([#1510](https://github.com/HankHuang0516/EClaw/issues/1510)) ([777be93](https://github.com/HankHuang0516/EClaw/commit/777be93e9605cbbc3388c6d62d6f4b2f6043cabf)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for feedback and chat sections ([#1509](https://github.com/HankHuang0516/EClaw/issues/1509)) ([9860e93](https://github.com/HankHuang0516/EClaw/commit/9860e93221aa6ce5b8efbcd810b0635bba047bb2)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for identity and avatar sections ([5bc7f07](https://github.com/HankHuang0516/EClaw/commit/5bc7f072ce8af1c2f66d57fb40557ddbdfcfeb64))
* **i18n:** add French translations for settings and notifications ([#1508](https://github.com/HankHuang0516/EClaw/issues/1508)) ([d28d201](https://github.com/HankHuang0516/EClaw/commit/d28d20198d83f109677a91d857f54ac7dd9f5277)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for slots, webhook, borrow sections ([#1506](https://github.com/HankHuang0516/EClaw/issues/1506)) ([9920a2b](https://github.com/HankHuang0516/EClaw/commit/9920a2b85ab19be1d8f27df738080ef9f837fd63))

# [1.878.0](https://github.com/HankHuang0516/EClaw/compare/v1.877.0...v1.878.0) (2026-03-31)


### Features

* **i18n:** add French translations for borrow and settings sections ([#1507](https://github.com/HankHuang0516/EClaw/issues/1507)) ([3222f66](https://github.com/HankHuang0516/EClaw/commit/3222f66532704718a56a802509b37ea0226a91c7)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for feedback and chat sections ([#1509](https://github.com/HankHuang0516/EClaw/issues/1509)) ([9860e93](https://github.com/HankHuang0516/EClaw/commit/9860e93221aa6ce5b8efbcd810b0635bba047bb2)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for identity and avatar sections ([5bc7f07](https://github.com/HankHuang0516/EClaw/commit/5bc7f072ce8af1c2f66d57fb40557ddbdfcfeb64))
* **i18n:** add French translations for settings and notifications ([#1508](https://github.com/HankHuang0516/EClaw/issues/1508)) ([d28d201](https://github.com/HankHuang0516/EClaw/commit/d28d20198d83f109677a91d857f54ac7dd9f5277)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for slots, webhook, borrow sections ([#1506](https://github.com/HankHuang0516/EClaw/issues/1506)) ([9920a2b](https://github.com/HankHuang0516/EClaw/commit/9920a2b85ab19be1d8f27df738080ef9f837fd63))

# [1.878.0](https://github.com/HankHuang0516/EClaw/compare/v1.877.0...v1.878.0) (2026-03-31)


### Features

* **i18n:** add French translations for borrow and settings sections ([#1507](https://github.com/HankHuang0516/EClaw/issues/1507)) ([3222f66](https://github.com/HankHuang0516/EClaw/commit/3222f66532704718a56a802509b37ea0226a91c7)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for identity and avatar sections ([5bc7f07](https://github.com/HankHuang0516/EClaw/commit/5bc7f072ce8af1c2f66d57fb40557ddbdfcfeb64))
* **i18n:** add French translations for settings and notifications ([#1508](https://github.com/HankHuang0516/EClaw/issues/1508)) ([d28d201](https://github.com/HankHuang0516/EClaw/commit/d28d20198d83f109677a91d857f54ac7dd9f5277)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for slots, webhook, borrow sections ([#1506](https://github.com/HankHuang0516/EClaw/issues/1506)) ([9920a2b](https://github.com/HankHuang0516/EClaw/commit/9920a2b85ab19be1d8f27df738080ef9f837fd63))

# [1.878.0](https://github.com/HankHuang0516/EClaw/compare/v1.877.0...v1.878.0) (2026-03-31)


### Features

* **i18n:** add French translations for borrow and settings sections ([#1507](https://github.com/HankHuang0516/EClaw/issues/1507)) ([3222f66](https://github.com/HankHuang0516/EClaw/commit/3222f66532704718a56a802509b37ea0226a91c7)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations for identity and avatar sections ([5bc7f07](https://github.com/HankHuang0516/EClaw/commit/5bc7f072ce8af1c2f66d57fb40557ddbdfcfeb64))
* **i18n:** add French translations for slots, webhook, borrow sections ([#1506](https://github.com/HankHuang0516/EClaw/issues/1506)) ([9920a2b](https://github.com/HankHuang0516/EClaw/commit/9920a2b85ab19be1d8f27df738080ef9f837fd63))

# [1.878.0](https://github.com/HankHuang0516/EClaw/compare/v1.877.0...v1.878.0) (2026-03-31)


### Features

* **i18n:** add French translations for identity and avatar sections ([5bc7f07](https://github.com/HankHuang0516/EClaw/commit/5bc7f072ce8af1c2f66d57fb40557ddbdfcfeb64))

# [1.877.0](https://github.com/HankHuang0516/EClaw/compare/v1.876.0...v1.877.0) (2026-03-31)


### Features

* **i18n:** add French translations (batch 360) ([#1505](https://github.com/HankHuang0516/EClaw/issues/1505)) ([f09c9e9](https://github.com/HankHuang0516/EClaw/commit/f09c9e99b3cc0aaeae26001d34fb48a0a30612da)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.876.0](https://github.com/HankHuang0516/EClaw/compare/v1.875.0...v1.876.0) (2026-03-31)


### Features

* **i18n:** add French translations (batch 359) ([#1504](https://github.com/HankHuang0516/EClaw/issues/1504)) ([4ab9f75](https://github.com/HankHuang0516/EClaw/commit/4ab9f75e1aec563f94e5b02725a5e174521f893e)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.875.0](https://github.com/HankHuang0516/EClaw/compare/v1.874.0...v1.875.0) (2026-03-31)


### Features

* **i18n:** add French translations (batch 358) ([#1503](https://github.com/HankHuang0516/EClaw/issues/1503)) ([2f1ff81](https://github.com/HankHuang0516/EClaw/commit/2f1ff81c28f51e70b2ac57f85188753f18af6200)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.874.0](https://github.com/HankHuang0516/EClaw/compare/v1.873.0...v1.874.0) (2026-03-31)


### Features

* **i18n:** add French translations (batch 357) ([#1502](https://github.com/HankHuang0516/EClaw/issues/1502)) ([01fef21](https://github.com/HankHuang0516/EClaw/commit/01fef213edd370318a5edc019db77fcb8b288ab6)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.873.0](https://github.com/HankHuang0516/EClaw/compare/v1.872.0...v1.873.0) (2026-03-31)


### Features

* **i18n:** add French translations (batch 356) ([#1501](https://github.com/HankHuang0516/EClaw/issues/1501)) ([e8b4a81](https://github.com/HankHuang0516/EClaw/commit/e8b4a81ed9a3d5f04ce1682c47ae34ce101730e4)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.872.0](https://github.com/HankHuang0516/EClaw/compare/v1.871.0...v1.872.0) (2026-03-31)


### Features

* **i18n:** add French translations (batch 355) ([#1500](https://github.com/HankHuang0516/EClaw/issues/1500)) ([7a94dc7](https://github.com/HankHuang0516/EClaw/commit/7a94dc7d9dacec61a8cce2151fedd2358a872f15)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.871.0](https://github.com/HankHuang0516/EClaw/compare/v1.870.0...v1.871.0) (2026-03-31)


### Features

* **i18n:** add French translations (batch 354) ([#1499](https://github.com/HankHuang0516/EClaw/issues/1499)) ([217721a](https://github.com/HankHuang0516/EClaw/commit/217721a86611e96ce8fca8a518a724f69b7ddbe9)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.870.0](https://github.com/HankHuang0516/EClaw/compare/v1.869.0...v1.870.0) (2026-03-31)


### Features

* **i18n:** add French translations (batch 353) ([#1498](https://github.com/HankHuang0516/EClaw/issues/1498)) ([abde6ce](https://github.com/HankHuang0516/EClaw/commit/abde6cebc1b03f649c6064f856ffd0be3f28f1bf)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.869.0](https://github.com/HankHuang0516/EClaw/compare/v1.868.0...v1.869.0) (2026-03-31)


### Features

* **i18n:** add French translations (batch 352) ([#1497](https://github.com/HankHuang0516/EClaw/issues/1497)) ([3f48708](https://github.com/HankHuang0516/EClaw/commit/3f48708b18414d06ff6398eb43e4a57414d4d4ab)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.868.0](https://github.com/HankHuang0516/EClaw/compare/v1.867.0...v1.868.0) (2026-03-31)


### Features

* **i18n:** add French translations (batch 351) ([#1496](https://github.com/HankHuang0516/EClaw/issues/1496)) ([9cb2704](https://github.com/HankHuang0516/EClaw/commit/9cb2704f68ee4c86f89bf3f68e4fd11336543119)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.867.0](https://github.com/HankHuang0516/EClaw/compare/v1.866.0...v1.867.0) (2026-03-31)


### Features

* **i18n:** add French translations (batch 350) ([#1495](https://github.com/HankHuang0516/EClaw/issues/1495)) ([3cfd883](https://github.com/HankHuang0516/EClaw/commit/3cfd883e812bc114fcdb6a7eaeda57a2939368c0)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.866.0](https://github.com/HankHuang0516/EClaw/compare/v1.865.0...v1.866.0) (2026-03-31)


### Features

* **i18n:** add French translations (batch 349) ([#1494](https://github.com/HankHuang0516/EClaw/issues/1494)) ([c691880](https://github.com/HankHuang0516/EClaw/commit/c6918800c42bfe3f611ac7e775cbe6cb6f427794)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.865.0](https://github.com/HankHuang0516/EClaw/compare/v1.864.0...v1.865.0) (2026-03-31)


### Features

* **i18n:** add French translations (batch 348) ([#1493](https://github.com/HankHuang0516/EClaw/issues/1493)) ([ea3f91e](https://github.com/HankHuang0516/EClaw/commit/ea3f91ed82de860df17ff13f2f4096d0a06d7e62)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.864.0](https://github.com/HankHuang0516/EClaw/compare/v1.863.0...v1.864.0) (2026-03-31)


### Features

* **i18n:** add French translations (batch 347) ([#1492](https://github.com/HankHuang0516/EClaw/issues/1492)) ([05e9ce4](https://github.com/HankHuang0516/EClaw/commit/05e9ce42852660179a9c1a3b2854998e60071065)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.863.0](https://github.com/HankHuang0516/EClaw/compare/v1.862.0...v1.863.0) (2026-03-31)


### Features

* **i18n:** add French translations (batch 346) ([#1491](https://github.com/HankHuang0516/EClaw/issues/1491)) ([0f5a134](https://github.com/HankHuang0516/EClaw/commit/0f5a1344dfc5713c86ddb8c494e261f2094ba3cc)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.862.0](https://github.com/HankHuang0516/EClaw/compare/v1.861.0...v1.862.0) (2026-03-31)


### Features

* **i18n:** add French translations (batch 345) ([#1490](https://github.com/HankHuang0516/EClaw/issues/1490)) ([a206852](https://github.com/HankHuang0516/EClaw/commit/a206852b251af76ee0d56869bfb322e39edb6415)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.861.0](https://github.com/HankHuang0516/EClaw/compare/v1.860.0...v1.861.0) (2026-03-31)


### Features

* **i18n:** add French translations (batch 344) ([#1489](https://github.com/HankHuang0516/EClaw/issues/1489)) ([fb2fb99](https://github.com/HankHuang0516/EClaw/commit/fb2fb9941249ddeb03df5f6eeaa20d5bb533c1cb)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.860.0](https://github.com/HankHuang0516/EClaw/compare/v1.859.0...v1.860.0) (2026-03-31)


### Features

* **i18n:** add French translations (batch 343) ([#1488](https://github.com/HankHuang0516/EClaw/issues/1488)) ([96961dd](https://github.com/HankHuang0516/EClaw/commit/96961dd6d1d4fbfdbe6dd7426d74cf9b3c84da05)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.859.0](https://github.com/HankHuang0516/EClaw/compare/v1.858.0...v1.859.0) (2026-03-31)


### Features

* **i18n:** add French translations (batch 342) ([#1487](https://github.com/HankHuang0516/EClaw/issues/1487)) ([7b23881](https://github.com/HankHuang0516/EClaw/commit/7b23881dad142331757c0be9b767706a8c6b7436)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.858.0](https://github.com/HankHuang0516/EClaw/compare/v1.857.0...v1.858.0) (2026-03-31)


### Features

* **i18n:** add French translations (batch 341) ([#1486](https://github.com/HankHuang0516/EClaw/issues/1486)) ([ae87a1b](https://github.com/HankHuang0516/EClaw/commit/ae87a1b488f112dfa73055d078759fa53abf992a)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.857.0](https://github.com/HankHuang0516/EClaw/compare/v1.856.0...v1.857.0) (2026-03-31)


### Features

* **i18n:** add French translations (batch 340) ([#1485](https://github.com/HankHuang0516/EClaw/issues/1485)) ([fbf3efd](https://github.com/HankHuang0516/EClaw/commit/fbf3efd1c47d1097effa376ee6290fb954e412f8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.856.0](https://github.com/HankHuang0516/EClaw/compare/v1.855.0...v1.856.0) (2026-03-31)


### Features

* **i18n:** add French translations (batch 339) ([#1484](https://github.com/HankHuang0516/EClaw/issues/1484)) ([c498b05](https://github.com/HankHuang0516/EClaw/commit/c498b0537f6d20993e7826a0344630e6894a88c8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.855.0](https://github.com/HankHuang0516/EClaw/compare/v1.854.0...v1.855.0) (2026-03-31)


### Features

* **i18n:** add French translations (batch 338) ([#1483](https://github.com/HankHuang0516/EClaw/issues/1483)) ([921a437](https://github.com/HankHuang0516/EClaw/commit/921a4370cb61896ace713c18a8d517f957f677dd)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.854.0](https://github.com/HankHuang0516/EClaw/compare/v1.853.0...v1.854.0) (2026-03-31)


### Features

* **i18n:** add French translations (batch 337) ([#1482](https://github.com/HankHuang0516/EClaw/issues/1482)) ([613dfc8](https://github.com/HankHuang0516/EClaw/commit/613dfc8270f83b8f5007758f3cb1de9fed64f352)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.853.0](https://github.com/HankHuang0516/EClaw/compare/v1.852.0...v1.853.0) (2026-03-31)


### Features

* **i18n:** add French translations (batch 336) ([#1481](https://github.com/HankHuang0516/EClaw/issues/1481)) ([ad35cd2](https://github.com/HankHuang0516/EClaw/commit/ad35cd2bf10abd18f2cc25e0b55e261b5fd5ea1f)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.852.0](https://github.com/HankHuang0516/EClaw/compare/v1.851.0...v1.852.0) (2026-03-31)


### Features

* **i18n:** add French translations (batch 335) ([#1480](https://github.com/HankHuang0516/EClaw/issues/1480)) ([98a9a6c](https://github.com/HankHuang0516/EClaw/commit/98a9a6c60005b1be4e8fb46bc7005d0be3c2205c)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.851.0](https://github.com/HankHuang0516/EClaw/compare/v1.850.0...v1.851.0) (2026-03-31)


### Features

* **i18n:** add French translations (batch 334) ([#1479](https://github.com/HankHuang0516/EClaw/issues/1479)) ([9ba6e4a](https://github.com/HankHuang0516/EClaw/commit/9ba6e4a8a7593f6ac355aa3b07a9296be28ca08f)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.850.0](https://github.com/HankHuang0516/EClaw/compare/v1.849.0...v1.850.0) (2026-03-31)


### Features

* **i18n:** add French translations (batch 333) ([#1478](https://github.com/HankHuang0516/EClaw/issues/1478)) ([9d45c68](https://github.com/HankHuang0516/EClaw/commit/9d45c6831a85d993a8fbe2b851e8f7b2073aabe2)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.849.0](https://github.com/HankHuang0516/EClaw/compare/v1.848.0...v1.849.0) (2026-03-31)


### Features

* **i18n:** add French translations (batch 332) ([#1477](https://github.com/HankHuang0516/EClaw/issues/1477)) ([ecdc6b1](https://github.com/HankHuang0516/EClaw/commit/ecdc6b1823c361a40b822453d41c0021b2c32a78)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.848.0](https://github.com/HankHuang0516/EClaw/compare/v1.847.0...v1.848.0) (2026-03-31)


### Features

* **i18n:** add French translations (batch 331) ([#1476](https://github.com/HankHuang0516/EClaw/issues/1476)) ([dd789c6](https://github.com/HankHuang0516/EClaw/commit/dd789c662e58c99fbccbdbc3e5f943f9567429d2)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.847.0](https://github.com/HankHuang0516/EClaw/compare/v1.846.0...v1.847.0) (2026-03-31)


### Features

* **i18n:** add French translations (batch 330) ([#1475](https://github.com/HankHuang0516/EClaw/issues/1475)) ([10a8c64](https://github.com/HankHuang0516/EClaw/commit/10a8c64b2a34b5b617b6f0a7eeb8510dbb132e98)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.846.0](https://github.com/HankHuang0516/EClaw/compare/v1.845.0...v1.846.0) (2026-03-31)


### Features

* **i18n:** add French translations (batch 329) ([#1474](https://github.com/HankHuang0516/EClaw/issues/1474)) ([60ab7de](https://github.com/HankHuang0516/EClaw/commit/60ab7dec997088323ad3f170d292e2e3ef62e395)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.845.0](https://github.com/HankHuang0516/EClaw/compare/v1.844.0...v1.845.0) (2026-03-31)


### Features

* **i18n:** add French translations (batch 328) ([#1473](https://github.com/HankHuang0516/EClaw/issues/1473)) ([eb58683](https://github.com/HankHuang0516/EClaw/commit/eb586834d5ba81c0180674bf171b165f4fdfcb61)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.844.0](https://github.com/HankHuang0516/EClaw/compare/v1.843.0...v1.844.0) (2026-03-31)


### Features

* **i18n:** add French translations (batch 327) ([#1472](https://github.com/HankHuang0516/EClaw/issues/1472)) ([0111e4f](https://github.com/HankHuang0516/EClaw/commit/0111e4f7328984df9620b630d977fa8be9398e21)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.843.0](https://github.com/HankHuang0516/EClaw/compare/v1.842.0...v1.843.0) (2026-03-31)


### Features

* **i18n:** add French translations (batch 326) ([#1471](https://github.com/HankHuang0516/EClaw/issues/1471)) ([1105e47](https://github.com/HankHuang0516/EClaw/commit/1105e479a334d505e70e437a976208bfec6b7e69)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.842.0](https://github.com/HankHuang0516/EClaw/compare/v1.841.0...v1.842.0) (2026-03-31)


### Features

* **i18n:** add French translations (batch 325) ([#1470](https://github.com/HankHuang0516/EClaw/issues/1470)) ([314e3bd](https://github.com/HankHuang0516/EClaw/commit/314e3bd5a46cf79367f10732660056fb9be0732d)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.841.0](https://github.com/HankHuang0516/EClaw/compare/v1.840.0...v1.841.0) (2026-03-31)


### Features

* **i18n:** add French translations (batch 324) ([#1469](https://github.com/HankHuang0516/EClaw/issues/1469)) ([e7f5a8d](https://github.com/HankHuang0516/EClaw/commit/e7f5a8d799ef3e794816c53bd21f8e45ecaf2bd9)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.840.0](https://github.com/HankHuang0516/EClaw/compare/v1.839.0...v1.840.0) (2026-03-31)


### Features

* **i18n:** add French translations (batch 323) ([#1468](https://github.com/HankHuang0516/EClaw/issues/1468)) ([520eb3e](https://github.com/HankHuang0516/EClaw/commit/520eb3e5a95572d4c72f8ce8d9d70d70ad0e64d6)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.839.0](https://github.com/HankHuang0516/EClaw/compare/v1.838.0...v1.839.0) (2026-03-31)


### Features

* **i18n:** add French translations (batch 322) ([#1467](https://github.com/HankHuang0516/EClaw/issues/1467)) ([e7f532b](https://github.com/HankHuang0516/EClaw/commit/e7f532befbfd1d3f9d8a1188f8c27fc7d2d28388)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.838.0](https://github.com/HankHuang0516/EClaw/compare/v1.837.0...v1.838.0) (2026-03-31)


### Features

* **i18n:** add French translations (batch 321) ([#1466](https://github.com/HankHuang0516/EClaw/issues/1466)) ([cdaaeda](https://github.com/HankHuang0516/EClaw/commit/cdaaedafb7efc5e8660bd46f7f73645e55146480)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.837.0](https://github.com/HankHuang0516/EClaw/compare/v1.836.0...v1.837.0) (2026-03-31)


### Features

* **i18n:** add French translations (batch 320) ([#1465](https://github.com/HankHuang0516/EClaw/issues/1465)) ([b281c20](https://github.com/HankHuang0516/EClaw/commit/b281c20d992fe4c947644b4ad78f49a2c4b21855)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.836.0](https://github.com/HankHuang0516/EClaw/compare/v1.835.0...v1.836.0) (2026-03-31)


### Features

* **i18n:** add French translations (batch 319) ([#1464](https://github.com/HankHuang0516/EClaw/issues/1464)) ([9163021](https://github.com/HankHuang0516/EClaw/commit/9163021e9ed2436676db79c70b6d9efd25442a5f)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.835.0](https://github.com/HankHuang0516/EClaw/compare/v1.834.0...v1.835.0) (2026-03-31)


### Features

* **i18n:** add French translations (batch 318) ([#1463](https://github.com/HankHuang0516/EClaw/issues/1463)) ([38bc9c8](https://github.com/HankHuang0516/EClaw/commit/38bc9c821685a21ed2040e392d5d251e380bfb2e)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.834.0](https://github.com/HankHuang0516/EClaw/compare/v1.833.0...v1.834.0) (2026-03-31)


### Features

* **i18n:** add French translations (batch 317) ([#1462](https://github.com/HankHuang0516/EClaw/issues/1462)) ([830df93](https://github.com/HankHuang0516/EClaw/commit/830df93fe0d3dcabc825ed0e2c1c87480ad43afc)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.833.0](https://github.com/HankHuang0516/EClaw/compare/v1.832.0...v1.833.0) (2026-03-31)


### Features

* **i18n:** add French translations (batch 316) ([#1461](https://github.com/HankHuang0516/EClaw/issues/1461)) ([07c71f2](https://github.com/HankHuang0516/EClaw/commit/07c71f2fd73b04da5aa01c7beaaf7bfe0f8b9eb1)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.832.0](https://github.com/HankHuang0516/EClaw/compare/v1.831.0...v1.832.0) (2026-03-31)


### Features

* **i18n:** add French translations (batch 315) ([#1460](https://github.com/HankHuang0516/EClaw/issues/1460)) ([d684831](https://github.com/HankHuang0516/EClaw/commit/d684831cf91da5598113d8670889a8ce32f7b9c1)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.831.0](https://github.com/HankHuang0516/EClaw/compare/v1.830.0...v1.831.0) (2026-03-31)


### Features

* **i18n:** add French translations (batch 314) ([#1459](https://github.com/HankHuang0516/EClaw/issues/1459)) ([1681b7e](https://github.com/HankHuang0516/EClaw/commit/1681b7eabad4f51358520647fdaa0623d33524af)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.830.0](https://github.com/HankHuang0516/EClaw/compare/v1.829.0...v1.830.0) (2026-03-31)


### Features

* **i18n:** add French translations (batch 313) ([#1458](https://github.com/HankHuang0516/EClaw/issues/1458)) ([40b6ff1](https://github.com/HankHuang0516/EClaw/commit/40b6ff1f8d12396cb5b1b771c7f96492d802963b)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.829.0](https://github.com/HankHuang0516/EClaw/compare/v1.828.0...v1.829.0) (2026-03-31)


### Features

* **i18n:** add French translations (batch 312) ([#1457](https://github.com/HankHuang0516/EClaw/issues/1457)) ([4b00dd4](https://github.com/HankHuang0516/EClaw/commit/4b00dd453aeb6d7d3c17d1d296f95ba312af29c8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.828.0](https://github.com/HankHuang0516/EClaw/compare/v1.827.0...v1.828.0) (2026-03-31)


### Features

* **i18n:** add French translations (batch 311) ([#1456](https://github.com/HankHuang0516/EClaw/issues/1456)) ([30ba764](https://github.com/HankHuang0516/EClaw/commit/30ba764818d44b4250ad872dd35c0407bbea72d9)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.827.0](https://github.com/HankHuang0516/EClaw/compare/v1.826.0...v1.827.0) (2026-03-31)


### Features

* **i18n:** add French translations (batch 309) ([#1454](https://github.com/HankHuang0516/EClaw/issues/1454)) ([4ca55ce](https://github.com/HankHuang0516/EClaw/commit/4ca55cedfcc8063ddeb8b92e9c85531c573a9fe0)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations (batch 310) ([#1455](https://github.com/HankHuang0516/EClaw/issues/1455)) ([dc0ec29](https://github.com/HankHuang0516/EClaw/commit/dc0ec29122dac38912a8c6429e1b9d010dde4cfb)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.826.0](https://github.com/HankHuang0516/EClaw/compare/v1.825.0...v1.826.0) (2026-03-31)


### Features

* **i18n:** add French translations (batch 308) ([#1453](https://github.com/HankHuang0516/EClaw/issues/1453)) ([16480fe](https://github.com/HankHuang0516/EClaw/commit/16480fe9ac78cfad587aa142068ffb86ebfd9a3a)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.825.0](https://github.com/HankHuang0516/EClaw/compare/v1.824.0...v1.825.0) (2026-03-31)


### Features

* **i18n:** add French translations (batch 306) ([#1450](https://github.com/HankHuang0516/EClaw/issues/1450)) ([1efdb00](https://github.com/HankHuang0516/EClaw/commit/1efdb0054931207e3c7855723a5b51a8aebf4cc2)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations (batch 306) ([#1451](https://github.com/HankHuang0516/EClaw/issues/1451)) ([7d88b0d](https://github.com/HankHuang0516/EClaw/commit/7d88b0dcc21976b9fd2b93fe9fab6b488ec3b9d2)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations (batch 307) ([#1452](https://github.com/HankHuang0516/EClaw/issues/1452)) ([84ed1d7](https://github.com/HankHuang0516/EClaw/commit/84ed1d7d929ca4e0d59eefe1d53dfa08abc78f47)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.824.0](https://github.com/HankHuang0516/EClaw/compare/v1.823.0...v1.824.0) (2026-03-31)


### Features

* **i18n:** add French translations (batch 305) ([#1449](https://github.com/HankHuang0516/EClaw/issues/1449)) ([55ce18e](https://github.com/HankHuang0516/EClaw/commit/55ce18e3d78b7a5742de5e4aea43e421b2441ace)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.823.0](https://github.com/HankHuang0516/EClaw/compare/v1.822.0...v1.823.0) (2026-03-31)


### Features

* **i18n:** add French translations (batch 304) ([#1448](https://github.com/HankHuang0516/EClaw/issues/1448)) ([aa277af](https://github.com/HankHuang0516/EClaw/commit/aa277afe4f8960b34e1f2e189e4a85e1cfb25aa4)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.822.0](https://github.com/HankHuang0516/EClaw/compare/v1.821.0...v1.822.0) (2026-03-31)


### Features

* **i18n:** add French translations (batch 303) ([#1447](https://github.com/HankHuang0516/EClaw/issues/1447)) ([7ec601d](https://github.com/HankHuang0516/EClaw/commit/7ec601da74d86b2cbf0818a6207d969ee8750a01)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.821.0](https://github.com/HankHuang0516/EClaw/compare/v1.820.0...v1.821.0) (2026-03-31)


### Features

* **i18n:** add French translations (batch 302) ([#1446](https://github.com/HankHuang0516/EClaw/issues/1446)) ([32f73d6](https://github.com/HankHuang0516/EClaw/commit/32f73d650027f1fb2443cecf8eb36e37873b5254)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.820.0](https://github.com/HankHuang0516/EClaw/compare/v1.819.0...v1.820.0) (2026-03-31)


### Features

* **i18n:** add French translations (batch 301) ([#1445](https://github.com/HankHuang0516/EClaw/issues/1445)) ([797ed32](https://github.com/HankHuang0516/EClaw/commit/797ed328bb14d0cc66ff4e15b03d7116f2c69842)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.819.0](https://github.com/HankHuang0516/EClaw/compare/v1.818.0...v1.819.0) (2026-03-31)


### Features

* **i18n:** add French translations (batch 300) ([#1444](https://github.com/HankHuang0516/EClaw/issues/1444)) ([fb279f9](https://github.com/HankHuang0516/EClaw/commit/fb279f9ff9b6fb2de5e136ef6795a7e4143693df)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.818.0](https://github.com/HankHuang0516/EClaw/compare/v1.817.0...v1.818.0) (2026-03-31)


### Features

* **i18n:** add French translations (batch 299) ([#1443](https://github.com/HankHuang0516/EClaw/issues/1443)) ([9c79794](https://github.com/HankHuang0516/EClaw/commit/9c79794ddba850021eecd0ec138ec22b24a9ddc6)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.817.0](https://github.com/HankHuang0516/EClaw/compare/v1.816.0...v1.817.0) (2026-03-31)


### Features

* **i18n:** add French translations (batch 298) ([#1442](https://github.com/HankHuang0516/EClaw/issues/1442)) ([a87c3f3](https://github.com/HankHuang0516/EClaw/commit/a87c3f30c0c6b9281bd799d3784b483107733e3a)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.816.0](https://github.com/HankHuang0516/EClaw/compare/v1.815.0...v1.816.0) (2026-03-31)


### Features

* **i18n:** add French translations (batch 297) ([#1441](https://github.com/HankHuang0516/EClaw/issues/1441)) ([0ee1bb7](https://github.com/HankHuang0516/EClaw/commit/0ee1bb7593d5d402c54cb2ac9b4e1cd64e264ec6)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.815.0](https://github.com/HankHuang0516/EClaw/compare/v1.814.0...v1.815.0) (2026-03-31)


### Features

* **i18n:** add French translations (batch 296) ([#1440](https://github.com/HankHuang0516/EClaw/issues/1440)) ([a943077](https://github.com/HankHuang0516/EClaw/commit/a9430773abdf68ac465289c37a58154f3becc97c)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.814.0](https://github.com/HankHuang0516/EClaw/compare/v1.813.0...v1.814.0) (2026-03-31)


### Features

* **i18n:** add French translations (batch 295) ([#1439](https://github.com/HankHuang0516/EClaw/issues/1439)) ([78985ef](https://github.com/HankHuang0516/EClaw/commit/78985efba7d7ab275212dfbeb0f688ecb7d555ab)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.813.0](https://github.com/HankHuang0516/EClaw/compare/v1.812.0...v1.813.0) (2026-03-31)


### Features

* **i18n:** add French translations (batch 294) ([#1438](https://github.com/HankHuang0516/EClaw/issues/1438)) ([c694968](https://github.com/HankHuang0516/EClaw/commit/c694968b18c8eab7579c24f99837c1cd42e9d017)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.812.0](https://github.com/HankHuang0516/EClaw/compare/v1.811.0...v1.812.0) (2026-03-31)


### Features

* **i18n:** add French translations (batch 293) ([#1437](https://github.com/HankHuang0516/EClaw/issues/1437)) ([0549ace](https://github.com/HankHuang0516/EClaw/commit/0549aced00dd41a6c496cc529c4bf567601f996e)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.811.0](https://github.com/HankHuang0516/EClaw/compare/v1.810.0...v1.811.0) (2026-03-31)


### Features

* **i18n:** add French translations (batch 292) ([#1436](https://github.com/HankHuang0516/EClaw/issues/1436)) ([50f1708](https://github.com/HankHuang0516/EClaw/commit/50f17083a5f5a3c7526429efe4003d00775a0d5c)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.810.0](https://github.com/HankHuang0516/EClaw/compare/v1.809.0...v1.810.0) (2026-03-31)


### Features

* **i18n:** add French translations (batch 290) ([1e3c0ae](https://github.com/HankHuang0516/EClaw/commit/1e3c0ae036c7672a7e29ddcb8a43dc4996007949))
* **i18n:** add French translations (batch 291) ([#1435](https://github.com/HankHuang0516/EClaw/issues/1435)) ([984b1c7](https://github.com/HankHuang0516/EClaw/commit/984b1c7f9cc73efc9d268506b0a8bd408ad66356)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.809.0](https://github.com/HankHuang0516/EClaw/compare/v1.808.0...v1.809.0) (2026-03-31)


### Features

* **i18n:** add French translations (batch 290) ([#1434](https://github.com/HankHuang0516/EClaw/issues/1434)) ([00a1dae](https://github.com/HankHuang0516/EClaw/commit/00a1dae3a305625e3d4fb0e6666ed91fdacf1438)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.808.0](https://github.com/HankHuang0516/EClaw/compare/v1.807.0...v1.808.0) (2026-03-31)


### Features

* **i18n:** add French translations (batch 289) ([#1433](https://github.com/HankHuang0516/EClaw/issues/1433)) ([d658e71](https://github.com/HankHuang0516/EClaw/commit/d658e7130d633cff4590cfcbb1fca2c5e0d6fa85)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.807.0](https://github.com/HankHuang0516/EClaw/compare/v1.806.0...v1.807.0) (2026-03-31)


### Features

* **i18n:** add French translations (batch 288) ([#1432](https://github.com/HankHuang0516/EClaw/issues/1432)) ([d876a22](https://github.com/HankHuang0516/EClaw/commit/d876a225b890c95778e5fa007229898a0535a9c3)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.806.0](https://github.com/HankHuang0516/EClaw/compare/v1.805.0...v1.806.0) (2026-03-31)


### Features

* **i18n:** add French translations (batch 286) ([#1430](https://github.com/HankHuang0516/EClaw/issues/1430)) ([2db6db6](https://github.com/HankHuang0516/EClaw/commit/2db6db6c80b1320e6ad758b4e2ed9021d2149255)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations (batch 287) ([#1431](https://github.com/HankHuang0516/EClaw/issues/1431)) ([5205090](https://github.com/HankHuang0516/EClaw/commit/520509060b7097fb2b9c99aa7b83ef5aec36c08b)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.805.0](https://github.com/HankHuang0516/EClaw/compare/v1.804.0...v1.805.0) (2026-03-31)


### Features

* **i18n:** add French translations (batch 285) ([#1429](https://github.com/HankHuang0516/EClaw/issues/1429)) ([74addc4](https://github.com/HankHuang0516/EClaw/commit/74addc42d4b7512e106e8cda3c31e5922d9eecbb)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.804.0](https://github.com/HankHuang0516/EClaw/compare/v1.803.0...v1.804.0) (2026-03-31)


### Features

* **i18n:** add French translations (batch 281) ([#1425](https://github.com/HankHuang0516/EClaw/issues/1425)) ([1a07028](https://github.com/HankHuang0516/EClaw/commit/1a070287cd8d05790b684dd3334ec54ecb1a0607)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations (batch 282) ([#1426](https://github.com/HankHuang0516/EClaw/issues/1426)) ([b52c564](https://github.com/HankHuang0516/EClaw/commit/b52c564f2b5af686b6ca41e1a8f8e0f418e77f3c)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations (batch 283) ([#1427](https://github.com/HankHuang0516/EClaw/issues/1427)) ([2810582](https://github.com/HankHuang0516/EClaw/commit/281058245294e24aa51565576a48bf7be772d0bc)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations (batch 284) ([#1428](https://github.com/HankHuang0516/EClaw/issues/1428)) ([0c33462](https://github.com/HankHuang0516/EClaw/commit/0c33462d578b75be36b9c7a7986959d1ae79d3c5)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.803.0](https://github.com/HankHuang0516/EClaw/compare/v1.802.0...v1.803.0) (2026-03-31)


### Features

* **i18n:** add French translations (batch 280) ([#1424](https://github.com/HankHuang0516/EClaw/issues/1424)) ([aa77b1c](https://github.com/HankHuang0516/EClaw/commit/aa77b1ca8b4a32dfec06c7502996ae9a66012f98)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.802.0](https://github.com/HankHuang0516/EClaw/compare/v1.801.0...v1.802.0) (2026-03-31)


### Features

* **i18n:** add French translations (batch 278) ([#1422](https://github.com/HankHuang0516/EClaw/issues/1422)) ([e3f0af9](https://github.com/HankHuang0516/EClaw/commit/e3f0af96e8350509282386c939abd4ad823e6f7e)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations (batch 279) ([#1423](https://github.com/HankHuang0516/EClaw/issues/1423)) ([9e9dffa](https://github.com/HankHuang0516/EClaw/commit/9e9dffa086a6a3b3ccfbfedc5ed28c5c3aaf4589)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.801.0](https://github.com/HankHuang0516/EClaw/compare/v1.800.0...v1.801.0) (2026-03-31)


### Features

* **i18n:** add French translations (batch 277) ([#1421](https://github.com/HankHuang0516/EClaw/issues/1421)) ([d73253b](https://github.com/HankHuang0516/EClaw/commit/d73253b3f000f480aec4088162469d7ee1782655)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.800.0](https://github.com/HankHuang0516/EClaw/compare/v1.799.0...v1.800.0) (2026-03-31)


### Features

* **i18n:** add French translations (batch 275) ([#1419](https://github.com/HankHuang0516/EClaw/issues/1419)) ([b646f14](https://github.com/HankHuang0516/EClaw/commit/b646f14976d052ff73e7175a5fecc3fc4b43fbbb)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations (batch 276) ([#1420](https://github.com/HankHuang0516/EClaw/issues/1420)) ([4a40c7a](https://github.com/HankHuang0516/EClaw/commit/4a40c7a4ef0bde2c1514cf509b0d4045baca8c0e)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.799.0](https://github.com/HankHuang0516/EClaw/compare/v1.798.0...v1.799.0) (2026-03-31)


### Features

* **i18n:** add French translations (batch 273) ([#1417](https://github.com/HankHuang0516/EClaw/issues/1417)) ([4548c10](https://github.com/HankHuang0516/EClaw/commit/4548c10ce5840d01d43a0464b5fd36df691ec370)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations (batch 274) ([#1418](https://github.com/HankHuang0516/EClaw/issues/1418)) ([0e6189e](https://github.com/HankHuang0516/EClaw/commit/0e6189eddc6c693a7a1511b1ac8ad5236ff22964)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.798.0](https://github.com/HankHuang0516/EClaw/compare/v1.797.0...v1.798.0) (2026-03-31)


### Features

* **i18n:** add French translations (batch 272) ([#1416](https://github.com/HankHuang0516/EClaw/issues/1416)) ([1d16fc6](https://github.com/HankHuang0516/EClaw/commit/1d16fc6915885f42874342b1feb4e9e06c9be01b)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.797.0](https://github.com/HankHuang0516/EClaw/compare/v1.796.0...v1.797.0) (2026-03-31)


### Features

* **i18n:** add French translations (batch 271) ([#1415](https://github.com/HankHuang0516/EClaw/issues/1415)) ([fdf6fa0](https://github.com/HankHuang0516/EClaw/commit/fdf6fa097087e3dc81f949804e82607897dc4649)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.796.0](https://github.com/HankHuang0516/EClaw/compare/v1.795.0...v1.796.0) (2026-03-31)


### Features

* **i18n:** add final MS translation (1 key) - MS 100% COMPLETE! ([#1414](https://github.com/HankHuang0516/EClaw/issues/1414)) ([00721ed](https://github.com/HankHuang0516/EClaw/commit/00721edc62aa6125eae90927fde4fad1668a06f7))

# [1.795.0](https://github.com/HankHuang0516/EClaw/compare/v1.794.0...v1.795.0) (2026-03-31)


### Features

* **i18n:** add MS translations batch 13 (119 keys) - MS COMPLETE! ([#1413](https://github.com/HankHuang0516/EClaw/issues/1413)) ([1f7515c](https://github.com/HankHuang0516/EClaw/commit/1f7515ce942d1b2b8def375247850f2248b118d3))

# [1.794.0](https://github.com/HankHuang0516/EClaw/compare/v1.793.0...v1.794.0) (2026-03-31)


### Features

* **i18n:** MS translations final push ([#1412](https://github.com/HankHuang0516/EClaw/issues/1412)) ([774c34b](https://github.com/HankHuang0516/EClaw/commit/774c34bd8efbca0bd2d0f53bc3baa50e6dd9aeb3))

# [1.793.0](https://github.com/HankHuang0516/EClaw/compare/v1.792.0...v1.793.0) (2026-03-31)


### Features

* **i18n:** add French translations (batch 268) ([#1409](https://github.com/HankHuang0516/EClaw/issues/1409)) ([548a8bb](https://github.com/HankHuang0516/EClaw/commit/548a8bb3be721aef0a94642dec64899c04d78114)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations (batch 269) ([#1410](https://github.com/HankHuang0516/EClaw/issues/1410)) ([6b2b8a1](https://github.com/HankHuang0516/EClaw/commit/6b2b8a104e9efeac40faf6ce4625d7399baaa719)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations (batch 270) ([#1411](https://github.com/HankHuang0516/EClaw/issues/1411)) ([ed85549](https://github.com/HankHuang0516/EClaw/commit/ed8554903566b3c856734e6407cfcfd1e2d29a38)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.792.0](https://github.com/HankHuang0516/EClaw/compare/v1.791.0...v1.792.0) (2026-03-31)


### Features

* **i18n:** add French translations (batch 266) ([#1407](https://github.com/HankHuang0516/EClaw/issues/1407)) ([6feade6](https://github.com/HankHuang0516/EClaw/commit/6feade66db6335594d09ffb406ed743ac43dd4e7)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations (batch 267) ([#1408](https://github.com/HankHuang0516/EClaw/issues/1408)) ([6359f78](https://github.com/HankHuang0516/EClaw/commit/6359f78e505fc50754ac6606786c8d70c5e038e3)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.791.0](https://github.com/HankHuang0516/EClaw/compare/v1.790.0...v1.791.0) (2026-03-31)


### Features

* **i18n:** add French translations (batch 265) ([#1406](https://github.com/HankHuang0516/EClaw/issues/1406)) ([61cdda8](https://github.com/HankHuang0516/EClaw/commit/61cdda8cb2bc7a033236f8c665de507b6b87cb0b)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.790.0](https://github.com/HankHuang0516/EClaw/compare/v1.789.0...v1.790.0) (2026-03-31)


### Features

* **i18n:** add French translations (batch 261) ([#1402](https://github.com/HankHuang0516/EClaw/issues/1402)) ([c9c3b8b](https://github.com/HankHuang0516/EClaw/commit/c9c3b8b5243f24726172dd8b9bae015b85946166)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations (batch 262) ([#1403](https://github.com/HankHuang0516/EClaw/issues/1403)) ([91646b6](https://github.com/HankHuang0516/EClaw/commit/91646b6bf66a1d873f5d7edd2156f996506bf16b)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations (batch 263) ([#1404](https://github.com/HankHuang0516/EClaw/issues/1404)) ([8683554](https://github.com/HankHuang0516/EClaw/commit/8683554c0d2d88babdb31497156555fbd70fb272)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations (batch 264) ([#1405](https://github.com/HankHuang0516/EClaw/issues/1405)) ([8c9fe87](https://github.com/HankHuang0516/EClaw/commit/8c9fe872eb5f44ff4d5d51ba2c0eec97895c943f)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.789.0](https://github.com/HankHuang0516/EClaw/compare/v1.788.0...v1.789.0) (2026-03-31)


### Features

* **i18n:** add MS translations batch 11 via Google Translate (149 keys) ([#1401](https://github.com/HankHuang0516/EClaw/issues/1401)) ([a3886a0](https://github.com/HankHuang0516/EClaw/commit/a3886a0ea4df4d99ae9e7c3c7518fc367a672274))

# [1.788.0](https://github.com/HankHuang0516/EClaw/compare/v1.787.0...v1.788.0) (2026-03-31)


### Features

* **i18n:** add MS translations batch 10 via Google Translate (192 keys) ([#1400](https://github.com/HankHuang0516/EClaw/issues/1400)) ([39a88f6](https://github.com/HankHuang0516/EClaw/commit/39a88f6725a092809e4f876ed63699f346ca4197))

# [1.787.0](https://github.com/HankHuang0516/EClaw/compare/v1.786.0...v1.787.0) (2026-03-31)


### Features

* **i18n:** add MS translations batch 9 via Google Translate (146 keys) ([#1399](https://github.com/HankHuang0516/EClaw/issues/1399)) ([8d8e3e2](https://github.com/HankHuang0516/EClaw/commit/8d8e3e2b2e971dec925f135b1df44fa5e5d9bdc5))

# [1.786.0](https://github.com/HankHuang0516/EClaw/compare/v1.785.0...v1.786.0) (2026-03-31)


### Features

* **i18n:** add MS translations batch 8 via Google Translate (126 keys) ([#1398](https://github.com/HankHuang0516/EClaw/issues/1398)) ([79ad832](https://github.com/HankHuang0516/EClaw/commit/79ad8321cc561cf77405504b7f56f7ebfe1cf9ae))

# [1.785.0](https://github.com/HankHuang0516/EClaw/compare/v1.784.0...v1.785.0) (2026-03-31)


### Features

* **i18n:** add MS translations batch 7 via Google Translate (187 keys) ([#1397](https://github.com/HankHuang0516/EClaw/issues/1397)) ([9d7f17a](https://github.com/HankHuang0516/EClaw/commit/9d7f17a3d7cb97b8a7ed901c60311cea3694e079))

# [1.784.0](https://github.com/HankHuang0516/EClaw/compare/v1.783.0...v1.784.0) (2026-03-31)


### Features

* **i18n:** add MS translations batch 6 via Google Translate (188 keys) ([#1396](https://github.com/HankHuang0516/EClaw/issues/1396)) ([6c36e8c](https://github.com/HankHuang0516/EClaw/commit/6c36e8c3f4c05bbfc14c8565b84245e57071f2f4))

# [1.783.0](https://github.com/HankHuang0516/EClaw/compare/v1.782.0...v1.783.0) (2026-03-31)


### Features

* **i18n:** add French translations (batch 260) ([#1395](https://github.com/HankHuang0516/EClaw/issues/1395)) ([3e7dfdd](https://github.com/HankHuang0516/EClaw/commit/3e7dfdd74057bec4253dc07ac5e9985cf037704b)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.782.0](https://github.com/HankHuang0516/EClaw/compare/v1.781.0...v1.782.0) (2026-03-31)


### Features

* **i18n:** add French translations (batch 259) ([#1394](https://github.com/HankHuang0516/EClaw/issues/1394)) ([6bc7461](https://github.com/HankHuang0516/EClaw/commit/6bc74618b084fbe8b51c76ab494c77ca9ee4ecbc)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.781.0](https://github.com/HankHuang0516/EClaw/compare/v1.780.0...v1.781.0) (2026-03-31)


### Features

* **i18n:** add MS translations batch 5 via Google Translate (154 keys) ([#1393](https://github.com/HankHuang0516/EClaw/issues/1393)) ([4cbf4ff](https://github.com/HankHuang0516/EClaw/commit/4cbf4ff3032adfc9ca2020d5e50f4127b1d68d2c))

# [1.780.0](https://github.com/HankHuang0516/EClaw/compare/v1.779.0...v1.780.0) (2026-03-31)


### Features

* **i18n:** add French translations (batch 258) ([#1392](https://github.com/HankHuang0516/EClaw/issues/1392)) ([d71e531](https://github.com/HankHuang0516/EClaw/commit/d71e53132335fe2b2d53b0bf303607381d5da29b)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.779.0](https://github.com/HankHuang0516/EClaw/compare/v1.778.0...v1.779.0) (2026-03-31)


### Features

* **i18n:** add French translations (batch 257) ([#1391](https://github.com/HankHuang0516/EClaw/issues/1391)) ([54f46f4](https://github.com/HankHuang0516/EClaw/commit/54f46f4fa49667b8838ff7906813ee54d7a2bd69)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.778.0](https://github.com/HankHuang0516/EClaw/compare/v1.777.0...v1.778.0) (2026-03-31)


### Features

* **i18n:** add French translations (batch 256) ([#1390](https://github.com/HankHuang0516/EClaw/issues/1390)) ([cfdfa90](https://github.com/HankHuang0516/EClaw/commit/cfdfa90ec51a85eec73252fd204b9c95f5ac19e8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.777.0](https://github.com/HankHuang0516/EClaw/compare/v1.776.0...v1.777.0) (2026-03-31)


### Features

* **i18n:** add French translations (batch 255) ([#1389](https://github.com/HankHuang0516/EClaw/issues/1389)) ([83e5066](https://github.com/HankHuang0516/EClaw/commit/83e5066ac450e8a6c25fc3f8e260443cc43fcda3)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.776.0](https://github.com/HankHuang0516/EClaw/compare/v1.775.0...v1.776.0) (2026-03-31)


### Features

* **i18n:** add French translations (batch 254) ([#1388](https://github.com/HankHuang0516/EClaw/issues/1388)) ([5c44fd2](https://github.com/HankHuang0516/EClaw/commit/5c44fd24cba3c74a1e4ac0c40b35e70105dfbd56)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.775.0](https://github.com/HankHuang0516/EClaw/compare/v1.774.0...v1.775.0) (2026-03-31)


### Features

* **i18n:** add French translations (batch 253) ([#1387](https://github.com/HankHuang0516/EClaw/issues/1387)) ([ed83850](https://github.com/HankHuang0516/EClaw/commit/ed838507ce02b49a5bafe9f071c6af4106062e7a)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.774.0](https://github.com/HankHuang0516/EClaw/compare/v1.773.0...v1.774.0) (2026-03-31)


### Features

* **i18n:** add French translations (batch 252) ([#1386](https://github.com/HankHuang0516/EClaw/issues/1386)) ([84512bd](https://github.com/HankHuang0516/EClaw/commit/84512bda8b142d1e669ebe1ea4c887ec48418ffe)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.773.0](https://github.com/HankHuang0516/EClaw/compare/v1.772.0...v1.773.0) (2026-03-31)


### Features

* **i18n:** add French translations (batch 251) ([#1385](https://github.com/HankHuang0516/EClaw/issues/1385)) ([8462818](https://github.com/HankHuang0516/EClaw/commit/8462818c213c9c332ee9544ddfa59f09d61556c4)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.772.0](https://github.com/HankHuang0516/EClaw/compare/v1.771.0...v1.772.0) (2026-03-31)


### Features

* **i18n:** add MS translations batch 4 (196 keys) ([#1384](https://github.com/HankHuang0516/EClaw/issues/1384)) ([b44d4f0](https://github.com/HankHuang0516/EClaw/commit/b44d4f0126e88e930ee73910880a28cb5a6e6684))

# [1.771.0](https://github.com/HankHuang0516/EClaw/compare/v1.770.0...v1.771.0) (2026-03-31)


### Features

* **i18n:** add MS translations batch 3 (181 keys) ([#1383](https://github.com/HankHuang0516/EClaw/issues/1383)) ([2da8f91](https://github.com/HankHuang0516/EClaw/commit/2da8f91f65c096f95f349e340ec4a35346aae110))

# [1.770.0](https://github.com/HankHuang0516/EClaw/compare/v1.769.0...v1.770.0) (2026-03-31)


### Features

* **i18n:** add MS translations batch 2 (183 keys) ([#1382](https://github.com/HankHuang0516/EClaw/issues/1382)) ([36262a3](https://github.com/HankHuang0516/EClaw/commit/36262a34035f664ea01efaaf070c231742d18290))

# [1.769.0](https://github.com/HankHuang0516/EClaw/compare/v1.768.0...v1.769.0) (2026-03-30)


### Features

* **i18n:** add French translations (batch 250) ([#1381](https://github.com/HankHuang0516/EClaw/issues/1381)) ([d53bfbe](https://github.com/HankHuang0516/EClaw/commit/d53bfbe771f9e0bb047c9403e9f64ce53db000e2)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.768.0](https://github.com/HankHuang0516/EClaw/compare/v1.767.0...v1.768.0) (2026-03-30)


### Features

* **i18n:** add French translations (batch 249) ([#1380](https://github.com/HankHuang0516/EClaw/issues/1380)) ([9b74728](https://github.com/HankHuang0516/EClaw/commit/9b747283b05c5fc848d33699147541045ac5a65e)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.767.0](https://github.com/HankHuang0516/EClaw/compare/v1.766.0...v1.767.0) (2026-03-30)


### Features

* **i18n:** add French translations (batch 248) ([#1379](https://github.com/HankHuang0516/EClaw/issues/1379)) ([09fc19e](https://github.com/HankHuang0516/EClaw/commit/09fc19e77fad170033ddbcc9bfcb5293d6db046c)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.766.0](https://github.com/HankHuang0516/EClaw/compare/v1.765.0...v1.766.0) (2026-03-30)


### Features

* **i18n:** add French translations (batch 247) ([#1378](https://github.com/HankHuang0516/EClaw/issues/1378)) ([1a294bf](https://github.com/HankHuang0516/EClaw/commit/1a294bf24b99902727fa24b1fc42f45f3b1e71ce)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.765.0](https://github.com/HankHuang0516/EClaw/compare/v1.764.0...v1.765.0) (2026-03-30)


### Features

* **i18n:** add French translations (batch 246) ([#1377](https://github.com/HankHuang0516/EClaw/issues/1377)) ([237b88f](https://github.com/HankHuang0516/EClaw/commit/237b88fdacb60d795ed1175e792aa3407e8f24aa)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.764.0](https://github.com/HankHuang0516/EClaw/compare/v1.763.0...v1.764.0) (2026-03-30)


### Features

* **i18n:** add French translations (batch 245) ([#1376](https://github.com/HankHuang0516/EClaw/issues/1376)) ([a0116f8](https://github.com/HankHuang0516/EClaw/commit/a0116f84a3851f47b1531d84947811150b6a236a)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.763.0](https://github.com/HankHuang0516/EClaw/compare/v1.762.0...v1.763.0) (2026-03-30)


### Features

* **i18n:** add French translations (batch 244) ([#1375](https://github.com/HankHuang0516/EClaw/issues/1375)) ([583a2b2](https://github.com/HankHuang0516/EClaw/commit/583a2b26f4e90a7884ce7f879a527ba7b65b866c)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.762.0](https://github.com/HankHuang0516/EClaw/compare/v1.761.0...v1.762.0) (2026-03-30)


### Features

* **i18n:** add French translations (batch 243) ([#1374](https://github.com/HankHuang0516/EClaw/issues/1374)) ([60380b5](https://github.com/HankHuang0516/EClaw/commit/60380b5c9ec0859770dcc01a827b28e8bca401cf)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.761.0](https://github.com/HankHuang0516/EClaw/compare/v1.760.0...v1.761.0) (2026-03-30)


### Features

* **i18n:** add French translations (batch 242) ([#1373](https://github.com/HankHuang0516/EClaw/issues/1373)) ([10273e9](https://github.com/HankHuang0516/EClaw/commit/10273e9362791f86d5c0d9aa0bfe805cd4d08286)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.760.0](https://github.com/HankHuang0516/EClaw/compare/v1.759.0...v1.760.0) (2026-03-30)


### Features

* **i18n:** add French translations (batch 241) ([#1372](https://github.com/HankHuang0516/EClaw/issues/1372)) ([e0f48c8](https://github.com/HankHuang0516/EClaw/commit/e0f48c8da97ba5ff5d8691d5b3f78c9b9bbf49cc)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.759.0](https://github.com/HankHuang0516/EClaw/compare/v1.758.0...v1.759.0) (2026-03-30)


### Features

* **i18n:** add MS translations via MyMemory API (193 keys) ([#1371](https://github.com/HankHuang0516/EClaw/issues/1371)) ([1e17677](https://github.com/HankHuang0516/EClaw/commit/1e17677920eff40c069b661ee6dca64360a62136))

# [1.758.0](https://github.com/HankHuang0516/EClaw/compare/v1.757.0...v1.758.0) (2026-03-30)


### Features

* **i18n:** add French translations (batch 240) ([#1370](https://github.com/HankHuang0516/EClaw/issues/1370)) ([7de4ad4](https://github.com/HankHuang0516/EClaw/commit/7de4ad4a2c75387fa786952b3943b2596d7121da)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.757.0](https://github.com/HankHuang0516/EClaw/compare/v1.756.0...v1.757.0) (2026-03-30)


### Features

* **i18n:** add French translations (batch 239) ([#1369](https://github.com/HankHuang0516/EClaw/issues/1369)) ([87e9e85](https://github.com/HankHuang0516/EClaw/commit/87e9e85b35e0b337699d92e2b43643c4c6376b04)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.756.0](https://github.com/HankHuang0516/EClaw/compare/v1.755.0...v1.756.0) (2026-03-30)


### Features

* **i18n:** add French translations (batch 238) ([#1368](https://github.com/HankHuang0516/EClaw/issues/1368)) ([e931682](https://github.com/HankHuang0516/EClaw/commit/e931682091adc99a0c253d4a366dcfe1163db38b)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.755.0](https://github.com/HankHuang0516/EClaw/compare/v1.754.0...v1.755.0) (2026-03-30)


### Features

* **i18n:** add French translations (batch 237) ([#1367](https://github.com/HankHuang0516/EClaw/issues/1367)) ([af9ddeb](https://github.com/HankHuang0516/EClaw/commit/af9ddeb4b3aa7e9da7f4c5cf263c3e7ab4a8f117)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.754.0](https://github.com/HankHuang0516/EClaw/compare/v1.753.0...v1.754.0) (2026-03-30)


### Features

* **i18n:** add French translations (batch 236) ([#1366](https://github.com/HankHuang0516/EClaw/issues/1366)) ([65cb87a](https://github.com/HankHuang0516/EClaw/commit/65cb87a9531c501f4895a6218b92f3e088ff8fb0)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.753.0](https://github.com/HankHuang0516/EClaw/compare/v1.752.0...v1.753.0) (2026-03-30)


### Features

* **i18n:** add French translations (batch 235) ([#1365](https://github.com/HankHuang0516/EClaw/issues/1365)) ([4768397](https://github.com/HankHuang0516/EClaw/commit/47683975bd06ef1e0e6345014a15267b8994e87a)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.752.0](https://github.com/HankHuang0516/EClaw/compare/v1.751.0...v1.752.0) (2026-03-30)


### Features

* **i18n:** add French translations (batch 234) ([#1364](https://github.com/HankHuang0516/EClaw/issues/1364)) ([f04ef4d](https://github.com/HankHuang0516/EClaw/commit/f04ef4dc9ed8683ca14b8aeb7bd376192541db69)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.751.0](https://github.com/HankHuang0516/EClaw/compare/v1.750.0...v1.751.0) (2026-03-30)


### Features

* **i18n:** add French translations (batch 233) ([#1363](https://github.com/HankHuang0516/EClaw/issues/1363)) ([60ece28](https://github.com/HankHuang0516/EClaw/commit/60ece285def3e808fd9afb890117f8651bb1f555)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.750.0](https://github.com/HankHuang0516/EClaw/compare/v1.749.0...v1.750.0) (2026-03-30)


### Features

* **i18n:** add French translations (batch 232) ([#1362](https://github.com/HankHuang0516/EClaw/issues/1362)) ([0a5369a](https://github.com/HankHuang0516/EClaw/commit/0a5369a6fe066f80d91ea3bca9057e37edf915ba)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.749.0](https://github.com/HankHuang0516/EClaw/compare/v1.748.0...v1.749.0) (2026-03-30)


### Features

* **i18n:** add French translations (batch 231) ([#1361](https://github.com/HankHuang0516/EClaw/issues/1361)) ([9401192](https://github.com/HankHuang0516/EClaw/commit/940119230b4812eb97a96f64fb829779b6a24005)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.748.0](https://github.com/HankHuang0516/EClaw/compare/v1.747.0...v1.748.0) (2026-03-30)


### Features

* **i18n:** add French translations (batch 230) ([#1360](https://github.com/HankHuang0516/EClaw/issues/1360)) ([6eb38b5](https://github.com/HankHuang0516/EClaw/commit/6eb38b57ab67e39a3997e5af29bfd44587a6becd)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.747.0](https://github.com/HankHuang0516/EClaw/compare/v1.746.0...v1.747.0) (2026-03-30)


### Features

* **i18n:** add French translations (batch 229) ([#1359](https://github.com/HankHuang0516/EClaw/issues/1359)) ([f0b8e39](https://github.com/HankHuang0516/EClaw/commit/f0b8e39c7ce1ea58162d98f52c906e5d950114cd)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.746.0](https://github.com/HankHuang0516/EClaw/compare/v1.745.0...v1.746.0) (2026-03-30)


### Features

* **i18n:** add French translations (batch 228) ([#1358](https://github.com/HankHuang0516/EClaw/issues/1358)) ([0897d10](https://github.com/HankHuang0516/EClaw/commit/0897d10b4c9b4b61e453c64cfe5433f954c7d489)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.745.0](https://github.com/HankHuang0516/EClaw/compare/v1.744.0...v1.745.0) (2026-03-30)


### Features

* **i18n:** add French translations (batch 227) ([#1357](https://github.com/HankHuang0516/EClaw/issues/1357)) ([580cf9c](https://github.com/HankHuang0516/EClaw/commit/580cf9c6fe89040bfc9633dd1e1bded83eb4fddf)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.744.0](https://github.com/HankHuang0516/EClaw/compare/v1.743.0...v1.744.0) (2026-03-30)


### Features

* **i18n:** add French translations (batch 226) ([#1356](https://github.com/HankHuang0516/EClaw/issues/1356)) ([69c95d2](https://github.com/HankHuang0516/EClaw/commit/69c95d2b5c4b5b6ad01c41d43b48e3832676a7b4)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.743.0](https://github.com/HankHuang0516/EClaw/compare/v1.742.0...v1.743.0) (2026-03-30)


### Features

* **i18n:** add French translations (batch 224) ([#1354](https://github.com/HankHuang0516/EClaw/issues/1354)) ([ab548a5](https://github.com/HankHuang0516/EClaw/commit/ab548a5003cd37f163b3fff04bb4959891942645)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations (batch 225) ([#1355](https://github.com/HankHuang0516/EClaw/issues/1355)) ([fa2d97b](https://github.com/HankHuang0516/EClaw/commit/fa2d97ba616da1d637074e16ace42d55de16b1ac)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.742.0](https://github.com/HankHuang0516/EClaw/compare/v1.741.0...v1.742.0) (2026-03-30)


### Features

* **i18n:** add French translations (batch 223) ([#1353](https://github.com/HankHuang0516/EClaw/issues/1353)) ([bf5f3f7](https://github.com/HankHuang0516/EClaw/commit/bf5f3f7a72cd072d1b61805e16b3695cba646c67)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.741.0](https://github.com/HankHuang0516/EClaw/compare/v1.740.0...v1.741.0) (2026-03-30)


### Features

* **i18n:** add French translations (batch 221) ([#1351](https://github.com/HankHuang0516/EClaw/issues/1351)) ([46d10ed](https://github.com/HankHuang0516/EClaw/commit/46d10ed33a5c7517efa790a0961c83dbecef71fe)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations (batch 222) ([#1352](https://github.com/HankHuang0516/EClaw/issues/1352)) ([054a180](https://github.com/HankHuang0516/EClaw/commit/054a1807afcd50822d455fc00ea0b2c4957fa3ed)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.740.0](https://github.com/HankHuang0516/EClaw/compare/v1.739.0...v1.740.0) (2026-03-30)


### Features

* **i18n:** add French translations (batch 217) ([#1347](https://github.com/HankHuang0516/EClaw/issues/1347)) ([3682736](https://github.com/HankHuang0516/EClaw/commit/368273687418806cc9692f3d63b47c1889b83d5c)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations (batch 218) ([#1348](https://github.com/HankHuang0516/EClaw/issues/1348)) ([2116c2c](https://github.com/HankHuang0516/EClaw/commit/2116c2c4bddfec8921e86d5d75e29980e0a3ad06)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations (batch 219) ([#1349](https://github.com/HankHuang0516/EClaw/issues/1349)) ([1da31dc](https://github.com/HankHuang0516/EClaw/commit/1da31dc439b7ff189058e46f126a1f528a7a48e5)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations (batch 220) ([#1350](https://github.com/HankHuang0516/EClaw/issues/1350)) ([904bf5c](https://github.com/HankHuang0516/EClaw/commit/904bf5c19b796bd4f1489355b5ed6cf90fb39059)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.739.0](https://github.com/HankHuang0516/EClaw/compare/v1.738.0...v1.739.0) (2026-03-30)


### Features

* **i18n:** add French translations (batch 216) ([#1346](https://github.com/HankHuang0516/EClaw/issues/1346)) ([fdbe039](https://github.com/HankHuang0516/EClaw/commit/fdbe0395e5f07b4181426ea1f273ae1acc954f34)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.738.0](https://github.com/HankHuang0516/EClaw/compare/v1.737.0...v1.738.0) (2026-03-30)


### Features

* **i18n:** add French translations (batch 211) ([#1341](https://github.com/HankHuang0516/EClaw/issues/1341)) ([bc2749d](https://github.com/HankHuang0516/EClaw/commit/bc2749ddcce3e47f8715a17526677ef155c04f35)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations (batch 212) ([#1342](https://github.com/HankHuang0516/EClaw/issues/1342)) ([b22372a](https://github.com/HankHuang0516/EClaw/commit/b22372ad0b1aa484f1523018b1d83afe9f939272)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations (batch 213) ([#1343](https://github.com/HankHuang0516/EClaw/issues/1343)) ([b36d441](https://github.com/HankHuang0516/EClaw/commit/b36d44141c4c6410c8258ac8b63a1219d3f5f67d)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations (batch 214) ([#1344](https://github.com/HankHuang0516/EClaw/issues/1344)) ([86878d9](https://github.com/HankHuang0516/EClaw/commit/86878d990453970e7f1257d22e606c7a297180fe)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations (batch 215) ([#1345](https://github.com/HankHuang0516/EClaw/issues/1345)) ([7e31a06](https://github.com/HankHuang0516/EClaw/commit/7e31a0677a9bb66a3b958b232f44c7b4575c0438)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.737.0](https://github.com/HankHuang0516/EClaw/compare/v1.736.0...v1.737.0) (2026-03-30)


### Features

* **i18n:** add French translations (batch 205) ([#1335](https://github.com/HankHuang0516/EClaw/issues/1335)) ([12823c5](https://github.com/HankHuang0516/EClaw/commit/12823c56410f6bf38d2dcc7c999faa190c6f3c7a)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations (batch 206) ([#1336](https://github.com/HankHuang0516/EClaw/issues/1336)) ([896abb2](https://github.com/HankHuang0516/EClaw/commit/896abb24a7d8b5247f79980dcbe0c0df0ae1d8c9)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations (batch 207) ([#1337](https://github.com/HankHuang0516/EClaw/issues/1337)) ([06086aa](https://github.com/HankHuang0516/EClaw/commit/06086aa20f227e12a367c29e5379072bb9201bfc)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations (batch 208) ([#1338](https://github.com/HankHuang0516/EClaw/issues/1338)) ([59777b5](https://github.com/HankHuang0516/EClaw/commit/59777b59d32b168c3a5e4d9e397f216ea8f5d318)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations (batch 209) ([#1339](https://github.com/HankHuang0516/EClaw/issues/1339)) ([97319c1](https://github.com/HankHuang0516/EClaw/commit/97319c1afc429364ecf6c4ad28a625f53aaf8940)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations (batch 210) ([#1340](https://github.com/HankHuang0516/EClaw/issues/1340)) ([810bf9c](https://github.com/HankHuang0516/EClaw/commit/810bf9c723067c70ed427792ba35a0eead3a7d07)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.736.0](https://github.com/HankHuang0516/EClaw/compare/v1.735.0...v1.736.0) (2026-03-30)


### Features

* **i18n:** add French translations (batch 204) ([#1334](https://github.com/HankHuang0516/EClaw/issues/1334)) ([c3ba605](https://github.com/HankHuang0516/EClaw/commit/c3ba60597dcc0f192d92fc904d6b7898e27aba31)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.735.0](https://github.com/HankHuang0516/EClaw/compare/v1.734.0...v1.735.0) (2026-03-30)


### Features

* **i18n:** add French translations (batch 203) ([#1333](https://github.com/HankHuang0516/EClaw/issues/1333)) ([9579652](https://github.com/HankHuang0516/EClaw/commit/9579652d627697fd8c666d80b483631e6d2eca3d)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.734.0](https://github.com/HankHuang0516/EClaw/compare/v1.733.0...v1.734.0) (2026-03-30)


### Features

* **i18n:** add French translations (batch 202) ([#1332](https://github.com/HankHuang0516/EClaw/issues/1332)) ([b30bcb0](https://github.com/HankHuang0516/EClaw/commit/b30bcb071aae14c733db582af29a3f496990005a)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.733.0](https://github.com/HankHuang0516/EClaw/compare/v1.732.0...v1.733.0) (2026-03-30)


### Features

* **i18n:** add French translations (batch 201) ([#1331](https://github.com/HankHuang0516/EClaw/issues/1331)) ([51231cc](https://github.com/HankHuang0516/EClaw/commit/51231ccb9d438e67a24804acac795bd2a322df56)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.732.0](https://github.com/HankHuang0516/EClaw/compare/v1.731.0...v1.732.0) (2026-03-30)


### Features

* **i18n:** add French translations (batch 200) ([#1330](https://github.com/HankHuang0516/EClaw/issues/1330)) ([b13c5a1](https://github.com/HankHuang0516/EClaw/commit/b13c5a1d73dab50b0ba6dcee2300fadb86231b1f)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.731.0](https://github.com/HankHuang0516/EClaw/compare/v1.730.0...v1.731.0) (2026-03-30)


### Features

* **i18n:** add French translations (batch 199) ([#1329](https://github.com/HankHuang0516/EClaw/issues/1329)) ([23ba659](https://github.com/HankHuang0516/EClaw/commit/23ba659bb053e235f650f529287fce28a7a07cef)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.730.0](https://github.com/HankHuang0516/EClaw/compare/v1.729.0...v1.730.0) (2026-03-30)


### Features

* **i18n:** add French translations (batch 198) ([#1328](https://github.com/HankHuang0516/EClaw/issues/1328)) ([3a60d18](https://github.com/HankHuang0516/EClaw/commit/3a60d18f9bf97dc0e809c32543cca914d079b1b2)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.729.0](https://github.com/HankHuang0516/EClaw/compare/v1.728.0...v1.729.0) (2026-03-30)


### Features

* **i18n:** add French translations (batch 197) ([#1327](https://github.com/HankHuang0516/EClaw/issues/1327)) ([2b3e431](https://github.com/HankHuang0516/EClaw/commit/2b3e43175db6f1a21bd5e16cbe1c1015a5eb32bf)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.728.0](https://github.com/HankHuang0516/EClaw/compare/v1.727.0...v1.728.0) (2026-03-30)


### Features

* **i18n:** add French translations (batch 196) ([#1326](https://github.com/HankHuang0516/EClaw/issues/1326)) ([e1d584f](https://github.com/HankHuang0516/EClaw/commit/e1d584f0ece41136ce7ad91b9f6d4f8d5ad0ca19)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.727.0](https://github.com/HankHuang0516/EClaw/compare/v1.726.0...v1.727.0) (2026-03-30)


### Features

* **i18n:** add French translations (batch 195) ([#1325](https://github.com/HankHuang0516/EClaw/issues/1325)) ([91258ab](https://github.com/HankHuang0516/EClaw/commit/91258abdfd6c74f62f3c85d293e325b5057ac60e)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.726.0](https://github.com/HankHuang0516/EClaw/compare/v1.725.0...v1.726.0) (2026-03-30)


### Features

* **i18n:** add French translations (batch 194) ([#1324](https://github.com/HankHuang0516/EClaw/issues/1324)) ([17c8ca2](https://github.com/HankHuang0516/EClaw/commit/17c8ca217ad97cb62534f8325ec0ab223cde683e)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.725.0](https://github.com/HankHuang0516/EClaw/compare/v1.724.0...v1.725.0) (2026-03-30)


### Features

* **i18n:** add French translations (batch 193) ([#1323](https://github.com/HankHuang0516/EClaw/issues/1323)) ([cf1e053](https://github.com/HankHuang0516/EClaw/commit/cf1e05388ccdfcb5c043ddc4637b58b235f5802e)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.724.0](https://github.com/HankHuang0516/EClaw/compare/v1.723.0...v1.724.0) (2026-03-30)


### Features

* **i18n:** add French translations (batch 192) ([#1322](https://github.com/HankHuang0516/EClaw/issues/1322)) ([23e307c](https://github.com/HankHuang0516/EClaw/commit/23e307cce9d3dd7818467d84f78c406a65fb3e46)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.723.0](https://github.com/HankHuang0516/EClaw/compare/v1.722.0...v1.723.0) (2026-03-30)


### Features

* **i18n:** add French translations (batch 191) ([#1321](https://github.com/HankHuang0516/EClaw/issues/1321)) ([74902c0](https://github.com/HankHuang0516/EClaw/commit/74902c0495bf03edba0a32c0f92c9179787f18cf)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.722.0](https://github.com/HankHuang0516/EClaw/compare/v1.721.0...v1.722.0) (2026-03-30)


### Features

* **i18n:** add Hindi translations batch 102 ([#1305](https://github.com/HankHuang0516/EClaw/issues/1305)) ([8813ceb](https://github.com/HankHuang0516/EClaw/commit/8813ceba243ec29204974cd643d465b876654f15))
* **i18n:** add Hindi translations batch 103 ([#1306](https://github.com/HankHuang0516/EClaw/issues/1306)) ([d32f056](https://github.com/HankHuang0516/EClaw/commit/d32f056f9faa8b6a80a93957ef1f3266dfdcdfe0))
* **i18n:** add Hindi translations batch 104 ([#1307](https://github.com/HankHuang0516/EClaw/issues/1307)) ([d23d6ea](https://github.com/HankHuang0516/EClaw/commit/d23d6ea7f2ae66b64a8ee1f0a240e63cf068f16e))
* **i18n:** add Hindi translations batch 105 ([#1308](https://github.com/HankHuang0516/EClaw/issues/1308)) ([8de69af](https://github.com/HankHuang0516/EClaw/commit/8de69af8bd11887bff613226f812d8f84b5358fc))
* **i18n:** add Hindi translations batch 106 ([#1309](https://github.com/HankHuang0516/EClaw/issues/1309)) ([25d6454](https://github.com/HankHuang0516/EClaw/commit/25d64548b3d87c182904b77cd820ef0767b2ae3b))
* **i18n:** add Hindi translations batch 107 ([#1310](https://github.com/HankHuang0516/EClaw/issues/1310)) ([0f38322](https://github.com/HankHuang0516/EClaw/commit/0f38322d8859581a94eff20704277311aaea94d6))

# [1.721.0](https://github.com/HankHuang0516/EClaw/compare/v1.720.0...v1.721.0) (2026-03-30)


### Features

* **i18n:** add French translations (batch 190) ([#1320](https://github.com/HankHuang0516/EClaw/issues/1320)) ([9a68366](https://github.com/HankHuang0516/EClaw/commit/9a6836650b8492d4f26d1dddbcb4af209c619853)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.720.0](https://github.com/HankHuang0516/EClaw/compare/v1.719.0...v1.720.0) (2026-03-30)


### Features

* **i18n:** add French translations (batch 189) ([#1319](https://github.com/HankHuang0516/EClaw/issues/1319)) ([1dd0069](https://github.com/HankHuang0516/EClaw/commit/1dd00696e36c9ccaa695b3ea06e1ac6b1bed8ee9)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.719.0](https://github.com/HankHuang0516/EClaw/compare/v1.718.0...v1.719.0) (2026-03-30)


### Features

* **i18n:** add French translations (batch 185) ([#1315](https://github.com/HankHuang0516/EClaw/issues/1315)) ([7d014e7](https://github.com/HankHuang0516/EClaw/commit/7d014e7119e83bcfc8c604fdd93bd48b5e17969f)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations (batch 186) ([#1316](https://github.com/HankHuang0516/EClaw/issues/1316)) ([3623b1b](https://github.com/HankHuang0516/EClaw/commit/3623b1bc329ff539f870ee148d7e6fd33188691e)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations (batch 187) ([#1317](https://github.com/HankHuang0516/EClaw/issues/1317)) ([561a37f](https://github.com/HankHuang0516/EClaw/commit/561a37ffbf946aa1f0316d65ff18fa888b4cda27)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations (batch 188) ([#1318](https://github.com/HankHuang0516/EClaw/issues/1318)) ([a847fcd](https://github.com/HankHuang0516/EClaw/commit/a847fcd4a749968afdb9efaf9254b26a19ac4e56)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add Hindi translations batch 100 ([#1303](https://github.com/HankHuang0516/EClaw/issues/1303)) ([43362b1](https://github.com/HankHuang0516/EClaw/commit/43362b1ab450eb9e6418b6fb3338c00811637de5))
* **i18n:** add Hindi translations batch 101 ([#1304](https://github.com/HankHuang0516/EClaw/issues/1304)) ([32f08d1](https://github.com/HankHuang0516/EClaw/commit/32f08d1884cb93392c722ae2ef79594cd678201d))

# [1.718.0](https://github.com/HankHuang0516/EClaw/compare/v1.717.0...v1.718.0) (2026-03-30)


### Features

* **i18n:** add French translations (batch 184) ([#1314](https://github.com/HankHuang0516/EClaw/issues/1314)) ([e519fac](https://github.com/HankHuang0516/EClaw/commit/e519facb88ad54990528b2309b7e3e08c7943e7d)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.717.0](https://github.com/HankHuang0516/EClaw/compare/v1.716.0...v1.717.0) (2026-03-30)


### Features

* **i18n:** add French translations (batch 183) ([#1313](https://github.com/HankHuang0516/EClaw/issues/1313)) ([e1a2870](https://github.com/HankHuang0516/EClaw/commit/e1a287010181485f51d94e6cf72f37a47d63f6e1)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.716.0](https://github.com/HankHuang0516/EClaw/compare/v1.715.0...v1.716.0) (2026-03-30)


### Features

* **i18n:** add French translations (batch 182) ([#1312](https://github.com/HankHuang0516/EClaw/issues/1312)) ([c55dc56](https://github.com/HankHuang0516/EClaw/commit/c55dc56244b3abecdd058cb488ce43a98a538645)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.715.0](https://github.com/HankHuang0516/EClaw/compare/v1.714.0...v1.715.0) (2026-03-30)


### Features

* **i18n:** add French translations (batch 181) ([#1311](https://github.com/HankHuang0516/EClaw/issues/1311)) ([db1af77](https://github.com/HankHuang0516/EClaw/commit/db1af776fd0b45daa03174a26eb6eb3a2111c58c)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.714.0](https://github.com/HankHuang0516/EClaw/compare/v1.713.0...v1.714.0) (2026-03-30)


### Features

* **i18n:** add Arabic translations batch 99 ([#1293](https://github.com/HankHuang0516/EClaw/issues/1293)) ([ed13ffd](https://github.com/HankHuang0516/EClaw/commit/ed13ffdc8dda682b553cefb6950c72fe48003c12))

# [1.713.0](https://github.com/HankHuang0516/EClaw/compare/v1.712.0...v1.713.0) (2026-03-30)


### Features

* **i18n:** add Hindi translations batch 99 ([#1302](https://github.com/HankHuang0516/EClaw/issues/1302)) ([9c9bbc6](https://github.com/HankHuang0516/EClaw/commit/9c9bbc68df533d94c702f8d7837da94e4ac6258a))

# [1.712.0](https://github.com/HankHuang0516/EClaw/compare/v1.711.0...v1.712.0) (2026-03-30)


### Features

* **i18n:** add Arabic translations batch 107 ([#1301](https://github.com/HankHuang0516/EClaw/issues/1301)) ([f4e025a](https://github.com/HankHuang0516/EClaw/commit/f4e025aeef68a510e0786bfe813bd8b336fe9538))

# [1.711.0](https://github.com/HankHuang0516/EClaw/compare/v1.710.0...v1.711.0) (2026-03-30)


### Features

* **i18n:** add Arabic translations batch 97 ([#1281](https://github.com/HankHuang0516/EClaw/issues/1281)) ([3231fbb](https://github.com/HankHuang0516/EClaw/commit/3231fbbc51ea5a9d3010a94bd9d36223afdeebb0))
* **i18n:** add Arabic translations batch 97 ([#1289](https://github.com/HankHuang0516/EClaw/issues/1289)) ([4dae10e](https://github.com/HankHuang0516/EClaw/commit/4dae10eadc46997c67cbdb8006a772c7349886d7))
* **i18n:** add Arabic translations batch 97 ([#1290](https://github.com/HankHuang0516/EClaw/issues/1290)) ([db198ce](https://github.com/HankHuang0516/EClaw/commit/db198cec4de4b16fcbeda83b7249ab59facd845c))
* **i18n:** add Arabic translations batch 97 ([#1291](https://github.com/HankHuang0516/EClaw/issues/1291)) ([c672671](https://github.com/HankHuang0516/EClaw/commit/c672671903fd4db4ef8317631b142454b3707e45))
* **i18n:** add Arabic translations batch 98 ([#1292](https://github.com/HankHuang0516/EClaw/issues/1292)) ([a7589e0](https://github.com/HankHuang0516/EClaw/commit/a7589e046cc7acaebcaa0046d17992a558dd0233))

# [1.710.0](https://github.com/HankHuang0516/EClaw/compare/v1.709.0...v1.710.0) (2026-03-30)


### Features

* **i18n:** add Arabic translations batch 93 ([#1267](https://github.com/HankHuang0516/EClaw/issues/1267)) ([275ece8](https://github.com/HankHuang0516/EClaw/commit/275ece8f1a6b5c5fc303f689dfda9ba220eaf708))
* **i18n:** add Arabic translations batch 94 ([#1269](https://github.com/HankHuang0516/EClaw/issues/1269)) ([86d33de](https://github.com/HankHuang0516/EClaw/commit/86d33de7cb57e03a6fce20f2ab5fc2874052a42f))
* **i18n:** add Arabic translations batch 95 ([#1271](https://github.com/HankHuang0516/EClaw/issues/1271)) ([1c206e9](https://github.com/HankHuang0516/EClaw/commit/1c206e946c7ec241850813a963384fcf970a9c6b))
* **i18n:** add Arabic translations batch 96 ([#1273](https://github.com/HankHuang0516/EClaw/issues/1273)) ([e652352](https://github.com/HankHuang0516/EClaw/commit/e652352e5230cb3fe7354703ef20bf0ba368af37))
* **i18n:** add Arabic translations batch 97 ([#1275](https://github.com/HankHuang0516/EClaw/issues/1275)) ([45df0d5](https://github.com/HankHuang0516/EClaw/commit/45df0d5029df3a7a64247f0643d6d0ee5d116859))
* **i18n:** add Hindi translations batch 93 ([#1268](https://github.com/HankHuang0516/EClaw/issues/1268)) ([5a441c4](https://github.com/HankHuang0516/EClaw/commit/5a441c4191d7ca0bd094014fbade495369fb8924))
* **i18n:** add Hindi translations batch 94 ([#1270](https://github.com/HankHuang0516/EClaw/issues/1270)) ([2ab4e71](https://github.com/HankHuang0516/EClaw/commit/2ab4e712d9f2ac259261410f6c9d9cc8c67bb65d))
* **i18n:** add Hindi translations batch 95 ([#1272](https://github.com/HankHuang0516/EClaw/issues/1272)) ([ba707c6](https://github.com/HankHuang0516/EClaw/commit/ba707c678fbabe8224e8736803a2b86fd6b3c943))
* **i18n:** add Hindi translations batch 96 ([#1274](https://github.com/HankHuang0516/EClaw/issues/1274)) ([1dfd712](https://github.com/HankHuang0516/EClaw/commit/1dfd7121aecc048f26b393773de0578acbf875cc))
* **i18n:** add Hindi translations batch 97 ([#1276](https://github.com/HankHuang0516/EClaw/issues/1276)) ([bd0ced2](https://github.com/HankHuang0516/EClaw/commit/bd0ced21362d654ad3623c0acaf3baf58c04bd77))

# [1.709.0](https://github.com/HankHuang0516/EClaw/compare/v1.708.0...v1.709.0) (2026-03-30)


### Features

* **i18n:** add Arabic translations batch 88 ([#1257](https://github.com/HankHuang0516/EClaw/issues/1257)) ([6189645](https://github.com/HankHuang0516/EClaw/commit/61896457993fb657d05bf1121f502e7d691c4d89))
* **i18n:** add Arabic translations batch 89 ([#1259](https://github.com/HankHuang0516/EClaw/issues/1259)) ([1eeb3ce](https://github.com/HankHuang0516/EClaw/commit/1eeb3ce0e5b963f916d6956e67c1b4664b8c2182))
* **i18n:** add Arabic translations batch 90 ([#1261](https://github.com/HankHuang0516/EClaw/issues/1261)) ([1bfda1c](https://github.com/HankHuang0516/EClaw/commit/1bfda1ce470543c81fc3392f66ac899357c49fac))
* **i18n:** add Arabic translations batch 91 ([#1263](https://github.com/HankHuang0516/EClaw/issues/1263)) ([a4de2de](https://github.com/HankHuang0516/EClaw/commit/a4de2dec95a701d31df01e6a818a069cfa38379c))
* **i18n:** add Arabic translations batch 92 ([#1265](https://github.com/HankHuang0516/EClaw/issues/1265)) ([cebe861](https://github.com/HankHuang0516/EClaw/commit/cebe8618b8410fb01f8bea06759d651027875b58))
* **i18n:** add Hindi translations batch 88 ([#1258](https://github.com/HankHuang0516/EClaw/issues/1258)) ([c96f5bb](https://github.com/HankHuang0516/EClaw/commit/c96f5bbd18671236ff4ec82587f5e84b30719ea0))
* **i18n:** add Hindi translations batch 89 ([#1260](https://github.com/HankHuang0516/EClaw/issues/1260)) ([e827f0f](https://github.com/HankHuang0516/EClaw/commit/e827f0fa9d7835659138647d3b049eeeb2f4fc62))
* **i18n:** add Hindi translations batch 90 ([#1262](https://github.com/HankHuang0516/EClaw/issues/1262)) ([5f4dc8b](https://github.com/HankHuang0516/EClaw/commit/5f4dc8b8d7e7fcd85fba5cfcb6a849c7adcf1c9e))
* **i18n:** add Hindi translations batch 91 ([#1264](https://github.com/HankHuang0516/EClaw/issues/1264)) ([d30ae2f](https://github.com/HankHuang0516/EClaw/commit/d30ae2f0b366365bc5f827c87e5043d0907a6f3a))
* **i18n:** add Hindi translations batch 92 ([#1266](https://github.com/HankHuang0516/EClaw/issues/1266)) ([9794c8d](https://github.com/HankHuang0516/EClaw/commit/9794c8da350edcd29a09be1fc38106246a82707f))

# [1.708.0](https://github.com/HankHuang0516/EClaw/compare/v1.707.0...v1.708.0) (2026-03-30)


### Features

* **i18n:** add French translations (batch 180) ([#1256](https://github.com/HankHuang0516/EClaw/issues/1256)) ([0f79867](https://github.com/HankHuang0516/EClaw/commit/0f79867dcddfa71be255d69b058961dda74cc31d)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.707.0](https://github.com/HankHuang0516/EClaw/compare/v1.706.0...v1.707.0) (2026-03-30)


### Features

* **i18n:** add French translations (batch 179) ([#1255](https://github.com/HankHuang0516/EClaw/issues/1255)) ([380bf40](https://github.com/HankHuang0516/EClaw/commit/380bf40540543af4af8c032182ceb973e4e3a694)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.706.0](https://github.com/HankHuang0516/EClaw/compare/v1.705.0...v1.706.0) (2026-03-30)


### Features

* **i18n:** add French translations (batch 178) ([#1254](https://github.com/HankHuang0516/EClaw/issues/1254)) ([e831dd3](https://github.com/HankHuang0516/EClaw/commit/e831dd3372aa8e3b50c5da5d7d655f267b0680c7)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.705.0](https://github.com/HankHuang0516/EClaw/compare/v1.704.0...v1.705.0) (2026-03-30)


### Features

* **i18n:** add French translations (batch 177) ([#1253](https://github.com/HankHuang0516/EClaw/issues/1253)) ([c5ffce0](https://github.com/HankHuang0516/EClaw/commit/c5ffce0f721656d8d9e608a611d56f4e6ef67746)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.704.0](https://github.com/HankHuang0516/EClaw/compare/v1.703.0...v1.704.0) (2026-03-30)


### Features

* **i18n:** add French translations (batch 176) ([#1252](https://github.com/HankHuang0516/EClaw/issues/1252)) ([28de95a](https://github.com/HankHuang0516/EClaw/commit/28de95a68ecd2072654b7e12bdaf3aae99fc8542)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.703.0](https://github.com/HankHuang0516/EClaw/compare/v1.702.0...v1.703.0) (2026-03-30)


### Features

* **i18n:** add French translations (batch 175) ([#1251](https://github.com/HankHuang0516/EClaw/issues/1251)) ([f3154f0](https://github.com/HankHuang0516/EClaw/commit/f3154f02c834e3fe5657e067de907ffbdc4c8208)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.702.0](https://github.com/HankHuang0516/EClaw/compare/v1.701.0...v1.702.0) (2026-03-30)


### Features

* **i18n:** add Arabic translations batch 83 ([#1237](https://github.com/HankHuang0516/EClaw/issues/1237)) ([bd49e8c](https://github.com/HankHuang0516/EClaw/commit/bd49e8c632a9d2b00cb035390ef194ea6f987ea7))
* **i18n:** add Arabic translations batch 84 ([#1239](https://github.com/HankHuang0516/EClaw/issues/1239)) ([adea879](https://github.com/HankHuang0516/EClaw/commit/adea879da563e78c6491d2328ecb2fd392c2078c))
* **i18n:** add Arabic translations batch 85 ([#1241](https://github.com/HankHuang0516/EClaw/issues/1241)) ([a578be4](https://github.com/HankHuang0516/EClaw/commit/a578be4f10d8ac52e024bc355824541278b10d90))
* **i18n:** add Arabic translations batch 86 ([#1244](https://github.com/HankHuang0516/EClaw/issues/1244)) ([8cf8f36](https://github.com/HankHuang0516/EClaw/commit/8cf8f36d27bf1e0ead5bbcdf327b40a97d4214bf))
* **i18n:** add Arabic translations batch 87 ([#1246](https://github.com/HankHuang0516/EClaw/issues/1246)) ([24fda82](https://github.com/HankHuang0516/EClaw/commit/24fda8272171977d00d00f8fecad83a781cfd5c3))
* **i18n:** add French translations (batch 171) ([#1243](https://github.com/HankHuang0516/EClaw/issues/1243)) ([85ef4c3](https://github.com/HankHuang0516/EClaw/commit/85ef4c355990f6488a14c436710e22bd339f6422)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations (batch 172) ([#1248](https://github.com/HankHuang0516/EClaw/issues/1248)) ([b30c1ce](https://github.com/HankHuang0516/EClaw/commit/b30c1cea78e498e43294b1de9c9163ec92ce37dd)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations (batch 173) ([#1249](https://github.com/HankHuang0516/EClaw/issues/1249)) ([66cca6c](https://github.com/HankHuang0516/EClaw/commit/66cca6c7a2b6583e65c016e13ae314debb89bd72)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations (batch 174) ([#1250](https://github.com/HankHuang0516/EClaw/issues/1250)) ([9816dcb](https://github.com/HankHuang0516/EClaw/commit/9816dcb4b6da540c2b3ebc05466b7ad25b1dbdc5)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add Hindi translations batch 83 ([#1238](https://github.com/HankHuang0516/EClaw/issues/1238)) ([311ede3](https://github.com/HankHuang0516/EClaw/commit/311ede3652eeac8f5edf73dc4f244bd5c9f441ac))
* **i18n:** add Hindi translations batch 84 ([#1240](https://github.com/HankHuang0516/EClaw/issues/1240)) ([54446c1](https://github.com/HankHuang0516/EClaw/commit/54446c1740ef4d915629bed5a9b331aa8e689438))
* **i18n:** add Hindi translations batch 85 ([#1242](https://github.com/HankHuang0516/EClaw/issues/1242)) ([3a178ce](https://github.com/HankHuang0516/EClaw/commit/3a178ce84e59ee5b5badc164431b2d35ba8098d9))
* **i18n:** add Hindi translations batch 86 ([#1245](https://github.com/HankHuang0516/EClaw/issues/1245)) ([452e7b6](https://github.com/HankHuang0516/EClaw/commit/452e7b611a9ec883c1410bd8750f388137ed7896))
* **i18n:** add Hindi translations batch 87 ([#1247](https://github.com/HankHuang0516/EClaw/issues/1247)) ([0e1a31b](https://github.com/HankHuang0516/EClaw/commit/0e1a31b43b65f412f0ab8c944b404d5f4e882e49))

# [1.701.0](https://github.com/HankHuang0516/EClaw/compare/v1.700.0...v1.701.0) (2026-03-30)


### Features

* **i18n:** add Arabic translations batch 78 ([#1227](https://github.com/HankHuang0516/EClaw/issues/1227)) ([1cea3b2](https://github.com/HankHuang0516/EClaw/commit/1cea3b2530d3e43101744c85afed055770172300))
* **i18n:** add Arabic translations batch 79 ([#1229](https://github.com/HankHuang0516/EClaw/issues/1229)) ([92c64aa](https://github.com/HankHuang0516/EClaw/commit/92c64aa0e685e7391f68134c6dc708eaf98fca5a))
* **i18n:** add Arabic translations batch 80 ([#1231](https://github.com/HankHuang0516/EClaw/issues/1231)) ([7819d62](https://github.com/HankHuang0516/EClaw/commit/7819d623a577c968e24d7d25559a6f44fa9357d7))
* **i18n:** add Arabic translations batch 81 ([#1233](https://github.com/HankHuang0516/EClaw/issues/1233)) ([d13252a](https://github.com/HankHuang0516/EClaw/commit/d13252a1f11152f6f3cddb62dd8349ed3a232adc))
* **i18n:** add Arabic translations batch 82 ([#1235](https://github.com/HankHuang0516/EClaw/issues/1235)) ([6f140df](https://github.com/HankHuang0516/EClaw/commit/6f140dff0648058934ae43eb7275339f87422f1a))
* **i18n:** add Hindi translations batch 78 ([#1228](https://github.com/HankHuang0516/EClaw/issues/1228)) ([2276c85](https://github.com/HankHuang0516/EClaw/commit/2276c85cd5d7336689dde4c7bc540f8eb56e89a5))
* **i18n:** add Hindi translations batch 79 ([#1230](https://github.com/HankHuang0516/EClaw/issues/1230)) ([2aa99cd](https://github.com/HankHuang0516/EClaw/commit/2aa99cdd4a81851ccdd53880db38f5df4588577c))
* **i18n:** add Hindi translations batch 80 ([#1232](https://github.com/HankHuang0516/EClaw/issues/1232)) ([4de65c3](https://github.com/HankHuang0516/EClaw/commit/4de65c308b57fc04814ab5e24eb7ec91cc5e413a))
* **i18n:** add Hindi translations batch 81 ([#1234](https://github.com/HankHuang0516/EClaw/issues/1234)) ([a7e4c64](https://github.com/HankHuang0516/EClaw/commit/a7e4c646e786376a589fab73dc0a91751ed59c68))
* **i18n:** add Hindi translations batch 82 ([#1236](https://github.com/HankHuang0516/EClaw/issues/1236)) ([9131210](https://github.com/HankHuang0516/EClaw/commit/9131210d62b94f4271adecd6b54473985c394a5a))

# [1.700.0](https://github.com/HankHuang0516/EClaw/compare/v1.699.0...v1.700.0) (2026-03-30)


### Features

* **i18n:** add Arabic translations batch 73 ([#1217](https://github.com/HankHuang0516/EClaw/issues/1217)) ([77a16d3](https://github.com/HankHuang0516/EClaw/commit/77a16d3af04251e6952968f287edc117dbb8fd9e))
* **i18n:** add Arabic translations batch 74 ([#1219](https://github.com/HankHuang0516/EClaw/issues/1219)) ([67e3f81](https://github.com/HankHuang0516/EClaw/commit/67e3f81feb004044131e1ecdd89a01a2c4ae8f22))
* **i18n:** add Arabic translations batch 75 ([#1221](https://github.com/HankHuang0516/EClaw/issues/1221)) ([da1d4ec](https://github.com/HankHuang0516/EClaw/commit/da1d4ec9b73c0b096a3aae6d180b6a17e4fe7034))
* **i18n:** add Arabic translations batch 76 ([#1223](https://github.com/HankHuang0516/EClaw/issues/1223)) ([0df69a4](https://github.com/HankHuang0516/EClaw/commit/0df69a42ed23f3d0c9ed0d89edada1aa746429b6))
* **i18n:** add Arabic translations batch 77 ([#1225](https://github.com/HankHuang0516/EClaw/issues/1225)) ([33e3716](https://github.com/HankHuang0516/EClaw/commit/33e3716f49ce95b129ad5c868a98a197308af3b6))
* **i18n:** add Hindi translations batch 73 ([#1218](https://github.com/HankHuang0516/EClaw/issues/1218)) ([9b4d621](https://github.com/HankHuang0516/EClaw/commit/9b4d621ef0cd3308ca5d8aed786c828f407f5108))
* **i18n:** add Hindi translations batch 74 ([#1220](https://github.com/HankHuang0516/EClaw/issues/1220)) ([cc8ab28](https://github.com/HankHuang0516/EClaw/commit/cc8ab28b64de0e433554d93dfb792a05b7cd26d8))
* **i18n:** add Hindi translations batch 75 ([#1222](https://github.com/HankHuang0516/EClaw/issues/1222)) ([fbe640f](https://github.com/HankHuang0516/EClaw/commit/fbe640f0b7b4fc2c5436f1ebcb4bd9425b2cdddc))
* **i18n:** add Hindi translations batch 76 ([#1224](https://github.com/HankHuang0516/EClaw/issues/1224)) ([1376cf8](https://github.com/HankHuang0516/EClaw/commit/1376cf84279de2a9d46ffee2b4f971b474437f37))
* **i18n:** add Hindi translations batch 77 ([#1226](https://github.com/HankHuang0516/EClaw/issues/1226)) ([1a05b0d](https://github.com/HankHuang0516/EClaw/commit/1a05b0d4ca4e61f47bb596829439215a3748b86a))

# [1.699.0](https://github.com/HankHuang0516/EClaw/compare/v1.698.0...v1.699.0) (2026-03-30)


### Features

* **i18n:** add Hindi translations batch 70 ([#1212](https://github.com/HankHuang0516/EClaw/issues/1212)) ([8370dab](https://github.com/HankHuang0516/EClaw/commit/8370dabfc4e3629ec75c63819f8dcd8a1ade7f07))

# [1.698.0](https://github.com/HankHuang0516/EClaw/compare/v1.697.0...v1.698.0) (2026-03-30)


### Features

* **i18n:** add Hindi translations batch 68 (25 keys) ([#1208](https://github.com/HankHuang0516/EClaw/issues/1208)) ([5ce2206](https://github.com/HankHuang0516/EClaw/commit/5ce2206d482991c36f3b3c971fc8b5579558574c))

# [1.697.0](https://github.com/HankHuang0516/EClaw/compare/v1.696.0...v1.697.0) (2026-03-30)


### Features

* **i18n:** add Arabic translations batch 68 (25 keys) ([#1207](https://github.com/HankHuang0516/EClaw/issues/1207)) ([bc98f74](https://github.com/HankHuang0516/EClaw/commit/bc98f74612904000955f22c46ab57fc3a7fb8315))

# [1.696.0](https://github.com/HankHuang0516/EClaw/compare/v1.695.0...v1.696.0) (2026-03-30)


### Features

* **i18n:** add French translations (batch 170) ([#1206](https://github.com/HankHuang0516/EClaw/issues/1206)) ([6b69047](https://github.com/HankHuang0516/EClaw/commit/6b6904789b0dce0e93d597ecda16b2fb9a7fae4d)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.695.0](https://github.com/HankHuang0516/EClaw/compare/v1.694.0...v1.695.0) (2026-03-30)


### Features

* **i18n:** add French translations (batch 169) ([#1205](https://github.com/HankHuang0516/EClaw/issues/1205)) ([1c20ace](https://github.com/HankHuang0516/EClaw/commit/1c20ace0429b8085f120e8271d37533271d14b1d)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.694.0](https://github.com/HankHuang0516/EClaw/compare/v1.693.0...v1.694.0) (2026-03-30)


### Features

* **i18n:** add French translations (batch 168) ([#1204](https://github.com/HankHuang0516/EClaw/issues/1204)) ([5a55917](https://github.com/HankHuang0516/EClaw/commit/5a55917acc1b7661e7724039622c2aa05a3d2111)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.693.0](https://github.com/HankHuang0516/EClaw/compare/v1.692.0...v1.693.0) (2026-03-30)


### Features

* **i18n:** add French translations (batch 167) ([#1203](https://github.com/HankHuang0516/EClaw/issues/1203)) ([3773242](https://github.com/HankHuang0516/EClaw/commit/3773242d5d7dae3d76de07c6bd3522417e507818)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.692.0](https://github.com/HankHuang0516/EClaw/compare/v1.691.0...v1.692.0) (2026-03-30)


### Features

* **i18n:** add French translations (batch 166) ([#1202](https://github.com/HankHuang0516/EClaw/issues/1202)) ([3f174dd](https://github.com/HankHuang0516/EClaw/commit/3f174dd8953623d3738689193c002979ee37cd6c)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.691.0](https://github.com/HankHuang0516/EClaw/compare/v1.690.0...v1.691.0) (2026-03-30)


### Features

* **i18n:** add French translations (batch 165) ([#1201](https://github.com/HankHuang0516/EClaw/issues/1201)) ([8167c38](https://github.com/HankHuang0516/EClaw/commit/8167c387ef848ff2ac42434d2fef8680eca5f28d)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.690.0](https://github.com/HankHuang0516/EClaw/compare/v1.689.0...v1.690.0) (2026-03-30)


### Features

* **i18n:** add French translations (batch 164) ([#1200](https://github.com/HankHuang0516/EClaw/issues/1200)) ([1ac7e9d](https://github.com/HankHuang0516/EClaw/commit/1ac7e9d901d6dd908866fd52895ef77432f1d1e2)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.689.0](https://github.com/HankHuang0516/EClaw/compare/v1.688.0...v1.689.0) (2026-03-30)


### Features

* **i18n:** add French translations (batch 163) ([#1199](https://github.com/HankHuang0516/EClaw/issues/1199)) ([a215c67](https://github.com/HankHuang0516/EClaw/commit/a215c67b04baa203c5b0146b57c45cad4907d6ce)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.688.0](https://github.com/HankHuang0516/EClaw/compare/v1.687.0...v1.688.0) (2026-03-30)


### Features

* **i18n:** add French translations (batch 162) ([#1198](https://github.com/HankHuang0516/EClaw/issues/1198)) ([1a8a01f](https://github.com/HankHuang0516/EClaw/commit/1a8a01f123b11976a627756ccde8396779e067cf)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.687.0](https://github.com/HankHuang0516/EClaw/compare/v1.686.0...v1.687.0) (2026-03-30)


### Features

* **i18n:** add French translations (batch 161) ([#1197](https://github.com/HankHuang0516/EClaw/issues/1197)) ([e0a0b17](https://github.com/HankHuang0516/EClaw/commit/e0a0b17a10804ce27301dbb2dedd056585d053e0)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.686.0](https://github.com/HankHuang0516/EClaw/compare/v1.685.0...v1.686.0) (2026-03-30)


### Features

* **i18n:** add hi translations batch 63 ([#1196](https://github.com/HankHuang0516/EClaw/issues/1196)) ([63c38b4](https://github.com/HankHuang0516/EClaw/commit/63c38b42ddddeae0b37ff5b1b27a7b6dedde3a92))

# [1.685.0](https://github.com/HankHuang0516/EClaw/compare/v1.684.0...v1.685.0) (2026-03-30)


### Features

* **i18n:** add ar translations batch 63 ([8df91e3](https://github.com/HankHuang0516/EClaw/commit/8df91e33ec2424607ecc01ef58a5a9ae22ec88b2))
* **i18n:** add hi translations batch 63 ([45e74ea](https://github.com/HankHuang0516/EClaw/commit/45e74eaa539143baa4acb8d20064c8a00b828a9a))

# [1.684.0](https://github.com/HankHuang0516/EClaw/compare/v1.683.0...v1.684.0) (2026-03-30)


### Features

* **i18n:** add French translations (batch 160) ([#1194](https://github.com/HankHuang0516/EClaw/issues/1194)) ([11f7bcd](https://github.com/HankHuang0516/EClaw/commit/11f7bcdb0efedb49e8255b21c2c26909dd5d9b85)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.683.0](https://github.com/HankHuang0516/EClaw/compare/v1.682.0...v1.683.0) (2026-03-30)


### Features

* **i18n:** add French translations (batch 159) ([#1193](https://github.com/HankHuang0516/EClaw/issues/1193)) ([3b41ea2](https://github.com/HankHuang0516/EClaw/commit/3b41ea2d0fa3cc35dc856b56c0929177637180c0)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.682.0](https://github.com/HankHuang0516/EClaw/compare/v1.681.0...v1.682.0) (2026-03-30)


### Features

* **i18n:** add French translations (batch 158) ([#1192](https://github.com/HankHuang0516/EClaw/issues/1192)) ([7919875](https://github.com/HankHuang0516/EClaw/commit/7919875b84593cda4e1a8eab57c32783bb6310d2)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.681.0](https://github.com/HankHuang0516/EClaw/compare/v1.680.0...v1.681.0) (2026-03-30)


### Features

* **i18n:** add French translations (batch 156) ([#1190](https://github.com/HankHuang0516/EClaw/issues/1190)) ([2b2cf68](https://github.com/HankHuang0516/EClaw/commit/2b2cf6839c4bea859f6be7c07e5a2d4b7e221c96)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations (batch 157) ([#1191](https://github.com/HankHuang0516/EClaw/issues/1191)) ([9b16749](https://github.com/HankHuang0516/EClaw/commit/9b167490963807ebf99acade95d5ddaff815c38a)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.680.0](https://github.com/HankHuang0516/EClaw/compare/v1.679.0...v1.680.0) (2026-03-30)


### Features

* **i18n:** add French translations (batch 152) ([#1186](https://github.com/HankHuang0516/EClaw/issues/1186)) ([322cc8e](https://github.com/HankHuang0516/EClaw/commit/322cc8ecf4b003d6f018a45b41aad2ac5281009c)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations (batch 153) ([#1187](https://github.com/HankHuang0516/EClaw/issues/1187)) ([51f3d16](https://github.com/HankHuang0516/EClaw/commit/51f3d163a1ab03cc658a64a5ebe7b1bd0db604cd)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations (batch 154) ([#1188](https://github.com/HankHuang0516/EClaw/issues/1188)) ([870672f](https://github.com/HankHuang0516/EClaw/commit/870672f72d3a88e262d77b49284383dfd469a11b)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations (batch 155) ([#1189](https://github.com/HankHuang0516/EClaw/issues/1189)) ([d6a2209](https://github.com/HankHuang0516/EClaw/commit/d6a22093b0ba3a356b192a9a0320e67f67b0bb68)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.679.0](https://github.com/HankHuang0516/EClaw/compare/v1.678.0...v1.679.0) (2026-03-30)


### Features

* **i18n:** add French translations (batch 151) ([#1185](https://github.com/HankHuang0516/EClaw/issues/1185)) ([b1a74f3](https://github.com/HankHuang0516/EClaw/commit/b1a74f38a375a0fc85f6215ec8808b5c8b0810ed)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.678.0](https://github.com/HankHuang0516/EClaw/compare/v1.677.0...v1.678.0) (2026-03-30)


### Features

* **i18n:** add Arabic (ar) translations batch 62 (25 keys) ([#1183](https://github.com/HankHuang0516/EClaw/issues/1183)) ([a749027](https://github.com/HankHuang0516/EClaw/commit/a7490276881bdb035920209332057b74bbb804c2))
* **i18n:** add Hindi (hi) translations batch 62 (25 keys) ([#1184](https://github.com/HankHuang0516/EClaw/issues/1184)) ([a1ff85f](https://github.com/HankHuang0516/EClaw/commit/a1ff85f6e3726b33a147cabaa420793ea4abf8ae))

# [1.677.0](https://github.com/HankHuang0516/EClaw/compare/v1.676.0...v1.677.0) (2026-03-30)


### Features

* **i18n:** add Hindi (hi) translations batch 61 (25 keys) ([#1182](https://github.com/HankHuang0516/EClaw/issues/1182)) ([0721c91](https://github.com/HankHuang0516/EClaw/commit/0721c91012e8b7f7835a56ac6831ddf4478118e5))

# [1.676.0](https://github.com/HankHuang0516/EClaw/compare/v1.675.0...v1.676.0) (2026-03-30)


### Features

* **i18n:** add Arabic (ar) translations batch 61 (25 keys) ([#1181](https://github.com/HankHuang0516/EClaw/issues/1181)) ([34b7d3f](https://github.com/HankHuang0516/EClaw/commit/34b7d3f9f90fb7f91224d39aaf82175194a4e2ce))

# [1.675.0](https://github.com/HankHuang0516/EClaw/compare/v1.674.0...v1.675.0) (2026-03-30)


### Features

* **i18n:** add Hindi (hi) translations batch 60 (25 keys) (squashed) ([9021547](https://github.com/HankHuang0516/EClaw/commit/9021547332229ee23064e9f95afe4f22e7f022ce))

# [1.674.0](https://github.com/HankHuang0516/EClaw/compare/v1.673.0...v1.674.0) (2026-03-30)


### Features

* **i18n:** add Arabic (ar) translations batch 60 (25 keys) (squashed) ([cb2a973](https://github.com/HankHuang0516/EClaw/commit/cb2a97338513b8e9a2d657d4f1a4190e06d9fed4))

# [1.673.0](https://github.com/HankHuang0516/EClaw/compare/v1.672.0...v1.673.0) (2026-03-30)


### Features

* **i18n:** add French translations (batch 150) ([#1178](https://github.com/HankHuang0516/EClaw/issues/1178)) ([2cf6e09](https://github.com/HankHuang0516/EClaw/commit/2cf6e09ef2d6d581aa4b8659df3e81e02457c0c5)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.672.0](https://github.com/HankHuang0516/EClaw/compare/v1.671.0...v1.672.0) (2026-03-30)


### Features

* **i18n:** add French translations (batch 149) ([#1177](https://github.com/HankHuang0516/EClaw/issues/1177)) ([0126079](https://github.com/HankHuang0516/EClaw/commit/0126079675ca2acae26171907398a2d804867555)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.671.0](https://github.com/HankHuang0516/EClaw/compare/v1.670.0...v1.671.0) (2026-03-30)


### Features

* **i18n:** add French translations (batch 148) ([#1176](https://github.com/HankHuang0516/EClaw/issues/1176)) ([323cde9](https://github.com/HankHuang0516/EClaw/commit/323cde9ff0ee62bdbe3ecfd13327369b5577937a)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.670.0](https://github.com/HankHuang0516/EClaw/compare/v1.669.0...v1.670.0) (2026-03-30)


### Features

* **i18n:** add French translations (batch 147) ([#1175](https://github.com/HankHuang0516/EClaw/issues/1175)) ([d3102ea](https://github.com/HankHuang0516/EClaw/commit/d3102eabd2abbcba3aea2e6c4e057f6b18c77268)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.669.0](https://github.com/HankHuang0516/EClaw/compare/v1.668.0...v1.669.0) (2026-03-30)


### Features

* **i18n:** add French translations (batch 146) ([#1174](https://github.com/HankHuang0516/EClaw/issues/1174)) ([319d294](https://github.com/HankHuang0516/EClaw/commit/319d294fdcedf88f53f87b220b7156a9153e09a5)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.668.0](https://github.com/HankHuang0516/EClaw/compare/v1.667.0...v1.668.0) (2026-03-30)


### Features

* **i18n:** add French translations (batch 145) ([#1173](https://github.com/HankHuang0516/EClaw/issues/1173)) ([67810b3](https://github.com/HankHuang0516/EClaw/commit/67810b36298ac4f2cd7100662e717e0e99c73faf)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.667.0](https://github.com/HankHuang0516/EClaw/compare/v1.666.0...v1.667.0) (2026-03-30)


### Features

* **i18n:** add French translations (batch 144) ([#1172](https://github.com/HankHuang0516/EClaw/issues/1172)) ([1481e45](https://github.com/HankHuang0516/EClaw/commit/1481e454340211de89b0de70bd5b3ecb7d364ed2)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.666.0](https://github.com/HankHuang0516/EClaw/compare/v1.665.0...v1.666.0) (2026-03-30)


### Features

* **i18n:** add French translations (batch 143) ([#1171](https://github.com/HankHuang0516/EClaw/issues/1171)) ([7ca577e](https://github.com/HankHuang0516/EClaw/commit/7ca577e90aca4336678196b1ffcc9f67c32a17ee)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.665.0](https://github.com/HankHuang0516/EClaw/compare/v1.664.0...v1.665.0) (2026-03-30)


### Features

* **i18n:** add French translations (batch 141) ([#1169](https://github.com/HankHuang0516/EClaw/issues/1169)) ([d34bfef](https://github.com/HankHuang0516/EClaw/commit/d34bfefb89a2a242b815b79aa676a0ae49ab355c)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations (batch 142) ([#1170](https://github.com/HankHuang0516/EClaw/issues/1170)) ([38e554c](https://github.com/HankHuang0516/EClaw/commit/38e554c1e221cdb09eaa016d24b0dff51ed650f7)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.664.0](https://github.com/HankHuang0516/EClaw/compare/v1.663.0...v1.664.0) (2026-03-30)


### Features

* **i18n:** add French translations (batch 140) ([#1168](https://github.com/HankHuang0516/EClaw/issues/1168)) ([0092b3e](https://github.com/HankHuang0516/EClaw/commit/0092b3e57268ed1b53860e2215e02faaecae8b04)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.663.0](https://github.com/HankHuang0516/EClaw/compare/v1.662.0...v1.663.0) (2026-03-30)


### Features

* **i18n:** add French translations (batch 136) ([#1164](https://github.com/HankHuang0516/EClaw/issues/1164)) ([da9d3ca](https://github.com/HankHuang0516/EClaw/commit/da9d3ca8569320f9ce80c41534c7288be7fb68ee)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations (batch 137) ([#1165](https://github.com/HankHuang0516/EClaw/issues/1165)) ([138234c](https://github.com/HankHuang0516/EClaw/commit/138234cdee28391876b662d74c6d6717f022166d)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations (batch 138) ([#1166](https://github.com/HankHuang0516/EClaw/issues/1166)) ([03a3aef](https://github.com/HankHuang0516/EClaw/commit/03a3aef5de3a7c57ba1d209a096195220c32b6eb)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations (batch 139) ([#1167](https://github.com/HankHuang0516/EClaw/issues/1167)) ([1d36c23](https://github.com/HankHuang0516/EClaw/commit/1d36c23cd1c607a4099aacdeec7f193d19a93d7b)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.662.0](https://github.com/HankHuang0516/EClaw/compare/v1.661.0...v1.662.0) (2026-03-30)


### Features

* **i18n:** add French translations (batch 134) ([#1162](https://github.com/HankHuang0516/EClaw/issues/1162)) ([801826b](https://github.com/HankHuang0516/EClaw/commit/801826b20402cf387cb4900f9fbad21c9ec9aec0)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations (batch 135) ([#1163](https://github.com/HankHuang0516/EClaw/issues/1163)) ([937d937](https://github.com/HankHuang0516/EClaw/commit/937d937573b9b8449fab37e4ffe1c94d3908dac6)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.661.0](https://github.com/HankHuang0516/EClaw/compare/v1.660.0...v1.661.0) (2026-03-30)


### Features

* **i18n:** add French translations (batch 133) ([#1161](https://github.com/HankHuang0516/EClaw/issues/1161)) ([9137ce9](https://github.com/HankHuang0516/EClaw/commit/9137ce94cdf1c13b701b371fe1eec20c5065376a)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.660.0](https://github.com/HankHuang0516/EClaw/compare/v1.659.0...v1.660.0) (2026-03-30)


### Features

* **i18n:** add French translations (batch 132) ([#1160](https://github.com/HankHuang0516/EClaw/issues/1160)) ([5a0ecd5](https://github.com/HankHuang0516/EClaw/commit/5a0ecd5cba2d496136ed86fee213be9c14b02072)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.659.0](https://github.com/HankHuang0516/EClaw/compare/v1.658.0...v1.659.0) (2026-03-30)


### Features

* **i18n:** add French translations (batch 131) ([#1159](https://github.com/HankHuang0516/EClaw/issues/1159)) ([674f7b8](https://github.com/HankHuang0516/EClaw/commit/674f7b87f88dc58b986e33c3f082afbac77f33bf)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.658.0](https://github.com/HankHuang0516/EClaw/compare/v1.657.0...v1.658.0) (2026-03-30)


### Features

* **i18n:** add Hindi (hi) translations batch 59 (1408 keys) (squashed) ([062ff3a](https://github.com/HankHuang0516/EClaw/commit/062ff3aa7760bdfdccdd57e5055f15652fb3fdd3))

# [1.657.0](https://github.com/HankHuang0516/EClaw/compare/v1.656.0...v1.657.0) (2026-03-30)


### Features

* **i18n:** add Arabic (ar) translations batch 59 (1599 keys) (squashed) ([4174cc1](https://github.com/HankHuang0516/EClaw/commit/4174cc152f82e9a289bf3d079aa050536c5566fa))

# [1.656.0](https://github.com/HankHuang0516/EClaw/compare/v1.655.0...v1.656.0) (2026-03-30)


### Features

* **i18n:** add French translations (batch 130) ([#1156](https://github.com/HankHuang0516/EClaw/issues/1156)) ([e6d6d98](https://github.com/HankHuang0516/EClaw/commit/e6d6d98898da2b47fdc7346e38e4e37f1d876eb6)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.655.0](https://github.com/HankHuang0516/EClaw/compare/v1.654.0...v1.655.0) (2026-03-30)


### Features

* **i18n:** add French translations (batch 129) ([#1155](https://github.com/HankHuang0516/EClaw/issues/1155)) ([3051222](https://github.com/HankHuang0516/EClaw/commit/3051222beaf48d0d297a49917ea2b8f88b25c5eb)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.654.0](https://github.com/HankHuang0516/EClaw/compare/v1.653.0...v1.654.0) (2026-03-30)


### Features

* **i18n:** add French translations (batch 128) ([#1154](https://github.com/HankHuang0516/EClaw/issues/1154)) ([dcc05db](https://github.com/HankHuang0516/EClaw/commit/dcc05db78758a4eb9bf957a24bd28b592757d75f)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.653.0](https://github.com/HankHuang0516/EClaw/compare/v1.652.0...v1.653.0) (2026-03-30)


### Features

* **i18n:** add French translations (batch 127) ([#1153](https://github.com/HankHuang0516/EClaw/issues/1153)) ([854a4ec](https://github.com/HankHuang0516/EClaw/commit/854a4ec1583a06de3d70e5ead14f54d18ba5d190)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.652.0](https://github.com/HankHuang0516/EClaw/compare/v1.651.0...v1.652.0) (2026-03-30)


### Features

* **i18n:** add French translations (batch 126) ([#1152](https://github.com/HankHuang0516/EClaw/issues/1152)) ([f8cbbdd](https://github.com/HankHuang0516/EClaw/commit/f8cbbddd4c1b77044a85a9d46a7c604042efeb5f)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.651.0](https://github.com/HankHuang0516/EClaw/compare/v1.650.0...v1.651.0) (2026-03-30)


### Features

* **i18n:** add French translations (batch 125) ([#1150](https://github.com/HankHuang0516/EClaw/issues/1150)) ([4f90916](https://github.com/HankHuang0516/EClaw/commit/4f90916c3ab293470e479f29b561955fb31b23c6)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.650.0](https://github.com/HankHuang0516/EClaw/compare/v1.649.0...v1.650.0) (2026-03-30)


### Features

* **i18n:** add French translations (batch 124) ([#1149](https://github.com/HankHuang0516/EClaw/issues/1149)) ([248f253](https://github.com/HankHuang0516/EClaw/commit/248f2538a0eeea1591a957aa00906b18e196d317)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.649.0](https://github.com/HankHuang0516/EClaw/compare/v1.648.0...v1.649.0) (2026-03-30)


### Features

* **i18n:** add French translations (batch 123) ([#1148](https://github.com/HankHuang0516/EClaw/issues/1148)) ([bccb27f](https://github.com/HankHuang0516/EClaw/commit/bccb27f52ff23e3b789ab4995c23267a209567ec)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.648.0](https://github.com/HankHuang0516/EClaw/compare/v1.647.0...v1.648.0) (2026-03-30)


### Features

* **i18n:** add French translations (batch 122) ([#1147](https://github.com/HankHuang0516/EClaw/issues/1147)) ([0d95a54](https://github.com/HankHuang0516/EClaw/commit/0d95a54f1095b0e1922b2ba7dacef43c5d04d0f4)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.647.0](https://github.com/HankHuang0516/EClaw/compare/v1.646.0...v1.647.0) (2026-03-30)


### Features

* **i18n:** add French translations (batch 121) ([#1146](https://github.com/HankHuang0516/EClaw/issues/1146)) ([1eee120](https://github.com/HankHuang0516/EClaw/commit/1eee12068e7c775373ee4d7cec9bf22911ae210b)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.646.0](https://github.com/HankHuang0516/EClaw/compare/v1.645.0...v1.646.0) (2026-03-30)


### Features

* **i18n:** add French translations (batch 120) ([#1144](https://github.com/HankHuang0516/EClaw/issues/1144)) ([b0f17e1](https://github.com/HankHuang0516/EClaw/commit/b0f17e11e4b3d5cb80de2841e18025c6825287b7)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.645.0](https://github.com/HankHuang0516/EClaw/compare/v1.644.0...v1.645.0) (2026-03-30)


### Features

* **i18n:** add French translations (batch 119) ([#1143](https://github.com/HankHuang0516/EClaw/issues/1143)) ([1493a7c](https://github.com/HankHuang0516/EClaw/commit/1493a7c46927e6ae3caead676a6e18edefb60017)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.644.0](https://github.com/HankHuang0516/EClaw/compare/v1.643.0...v1.644.0) (2026-03-30)


### Features

* **i18n:** add French translations (batch 118) ([#1142](https://github.com/HankHuang0516/EClaw/issues/1142)) ([49ba1e1](https://github.com/HankHuang0516/EClaw/commit/49ba1e19ffdada68ec8a99105fefec6891109296)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.643.0](https://github.com/HankHuang0516/EClaw/compare/v1.642.0...v1.643.0) (2026-03-30)


### Features

* **i18n:** add French translations (batch 117) ([#1141](https://github.com/HankHuang0516/EClaw/issues/1141)) ([6aa6d3f](https://github.com/HankHuang0516/EClaw/commit/6aa6d3f01e51d7268bc91b798552c4fbd53843d1)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.642.0](https://github.com/HankHuang0516/EClaw/compare/v1.641.0...v1.642.0) (2026-03-30)


### Features

* **i18n:** add French translations (batch 116) ([#1140](https://github.com/HankHuang0516/EClaw/issues/1140)) ([d901c9a](https://github.com/HankHuang0516/EClaw/commit/d901c9ac97cbb3877c82eed65df00ec34f197d1d)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.641.0](https://github.com/HankHuang0516/EClaw/compare/v1.640.0...v1.641.0) (2026-03-30)


### Features

* **i18n:** add French translations (batch 115) ([#1139](https://github.com/HankHuang0516/EClaw/issues/1139)) ([beb9ef7](https://github.com/HankHuang0516/EClaw/commit/beb9ef7c11f47d9a8195a81d934015d9e3983b72)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.640.0](https://github.com/HankHuang0516/EClaw/compare/v1.639.0...v1.640.0) (2026-03-30)


### Features

* **i18n:** add French translations (batch 114) ([#1138](https://github.com/HankHuang0516/EClaw/issues/1138)) ([42c002d](https://github.com/HankHuang0516/EClaw/commit/42c002ddf22b7e6224e2246908c831ed9d280068)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.639.0](https://github.com/HankHuang0516/EClaw/compare/v1.638.0...v1.639.0) (2026-03-30)


### Features

* **i18n:** add French translations (batch 113) ([#1137](https://github.com/HankHuang0516/EClaw/issues/1137)) ([1695ea5](https://github.com/HankHuang0516/EClaw/commit/1695ea5fbd5ed0f62de1abe2b9c89e72a7b251eb)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.638.0](https://github.com/HankHuang0516/EClaw/compare/v1.637.0...v1.638.0) (2026-03-30)


### Features

* **i18n:** add French translations (batch 112) ([#1136](https://github.com/HankHuang0516/EClaw/issues/1136)) ([b3c9422](https://github.com/HankHuang0516/EClaw/commit/b3c9422197579a6f588472491f5fe1b9ee7244b1)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.637.0](https://github.com/HankHuang0516/EClaw/compare/v1.636.0...v1.637.0) (2026-03-30)


### Features

* **i18n:** add French translations (batch 111) ([#1135](https://github.com/HankHuang0516/EClaw/issues/1135)) ([6f1d68a](https://github.com/HankHuang0516/EClaw/commit/6f1d68a645a2d822fba9436b872d50f1c0885eef)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.636.0](https://github.com/HankHuang0516/EClaw/compare/v1.635.0...v1.636.0) (2026-03-30)


### Features

* **i18n:** add French translations (batch 110) ([#1134](https://github.com/HankHuang0516/EClaw/issues/1134)) ([4852609](https://github.com/HankHuang0516/EClaw/commit/4852609d578ad11e0879c64e76068f72332470ef)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.635.0](https://github.com/HankHuang0516/EClaw/compare/v1.634.0...v1.635.0) (2026-03-30)


### Features

* **i18n:** add French translations (batch 109) ([#1133](https://github.com/HankHuang0516/EClaw/issues/1133)) ([cec478d](https://github.com/HankHuang0516/EClaw/commit/cec478d4ade1449ff78dd78dad7d0bfb96e14cf8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.634.0](https://github.com/HankHuang0516/EClaw/compare/v1.633.0...v1.634.0) (2026-03-30)


### Features

* **i18n:** add French translations (batch 108) ([#1132](https://github.com/HankHuang0516/EClaw/issues/1132)) ([c0c87a5](https://github.com/HankHuang0516/EClaw/commit/c0c87a51525205cff0daa4731290992059e25860)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.633.0](https://github.com/HankHuang0516/EClaw/compare/v1.632.0...v1.633.0) (2026-03-30)


### Features

* **i18n:** add French translations (batch 107) ([#1131](https://github.com/HankHuang0516/EClaw/issues/1131)) ([2a82613](https://github.com/HankHuang0516/EClaw/commit/2a82613b741cc22f853be689e46aa0651bc10db8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.632.0](https://github.com/HankHuang0516/EClaw/compare/v1.631.0...v1.632.0) (2026-03-30)


### Features

* **i18n:** add French translations (batch 106) ([#1130](https://github.com/HankHuang0516/EClaw/issues/1130)) ([dea3689](https://github.com/HankHuang0516/EClaw/commit/dea3689d15b94b0459ca370adbe07562ae9228b0)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.631.0](https://github.com/HankHuang0516/EClaw/compare/v1.630.0...v1.631.0) (2026-03-30)


### Features

* **i18n:** add French translations (batch 105) ([#1129](https://github.com/HankHuang0516/EClaw/issues/1129)) ([9344a6a](https://github.com/HankHuang0516/EClaw/commit/9344a6a0fcd34f12bc1ef9a416b60795632e1183)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.630.0](https://github.com/HankHuang0516/EClaw/compare/v1.629.0...v1.630.0) (2026-03-30)


### Features

* **i18n:** add French translations (batch 104) ([#1128](https://github.com/HankHuang0516/EClaw/issues/1128)) ([10aacb6](https://github.com/HankHuang0516/EClaw/commit/10aacb624411eff457f90d840c6a08e4ed18dcf6)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.629.0](https://github.com/HankHuang0516/EClaw/compare/v1.628.0...v1.629.0) (2026-03-30)


### Features

* **i18n:** add French translations (batch 103) ([#1127](https://github.com/HankHuang0516/EClaw/issues/1127)) ([3f07c0f](https://github.com/HankHuang0516/EClaw/commit/3f07c0f2c65730c36f56321f5496f741720a3403)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.628.0](https://github.com/HankHuang0516/EClaw/compare/v1.627.0...v1.628.0) (2026-03-30)


### Features

* **i18n:** add French translations (batch 102) ([#1126](https://github.com/HankHuang0516/EClaw/issues/1126)) ([508fb16](https://github.com/HankHuang0516/EClaw/commit/508fb166eed8df36626fcb490cd9fbbad9dc01fa)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.627.0](https://github.com/HankHuang0516/EClaw/compare/v1.626.0...v1.627.0) (2026-03-30)


### Features

* **i18n:** add French translations (batch 101) ([#1125](https://github.com/HankHuang0516/EClaw/issues/1125)) ([9722c5d](https://github.com/HankHuang0516/EClaw/commit/9722c5dd8ed166a171fe953af15bf119f5cec03a)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.626.0](https://github.com/HankHuang0516/EClaw/compare/v1.625.0...v1.626.0) (2026-03-30)


### Features

* **i18n:** add French translations (batch 100) ([#1123](https://github.com/HankHuang0516/EClaw/issues/1123)) ([2cfb046](https://github.com/HankHuang0516/EClaw/commit/2cfb046c0a1e1f5c3d753d8f259560c4e9794e1f)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.625.0](https://github.com/HankHuang0516/EClaw/compare/v1.624.0...v1.625.0) (2026-03-29)


### Features

* **i18n:** add French translations (batch 94) ([#1117](https://github.com/HankHuang0516/EClaw/issues/1117)) ([d651500](https://github.com/HankHuang0516/EClaw/commit/d651500abb110a9219a765ccbf4f725774286341)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations (batch 95) ([#1118](https://github.com/HankHuang0516/EClaw/issues/1118)) ([49cecdb](https://github.com/HankHuang0516/EClaw/commit/49cecdb44eb8c97f8690dba63cd45feee8bb0216)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations (batch 96) ([#1119](https://github.com/HankHuang0516/EClaw/issues/1119)) ([1c0522a](https://github.com/HankHuang0516/EClaw/commit/1c0522a5bd412df2b10c01914a79d83136c08023)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations (batch 97) ([#1120](https://github.com/HankHuang0516/EClaw/issues/1120)) ([29ca490](https://github.com/HankHuang0516/EClaw/commit/29ca4905c154ab391abdffbc458fc6503f57052d)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations (batch 98) ([#1121](https://github.com/HankHuang0516/EClaw/issues/1121)) ([e3cbab9](https://github.com/HankHuang0516/EClaw/commit/e3cbab95f9d04487411d323d77bf3990b612a4ef)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations (batch 99) ([#1122](https://github.com/HankHuang0516/EClaw/issues/1122)) ([ea89ff4](https://github.com/HankHuang0516/EClaw/commit/ea89ff48141e500a612f95fcc08a75c5663cac56)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.624.0](https://github.com/HankHuang0516/EClaw/compare/v1.623.0...v1.624.0) (2026-03-29)


### Features

* **i18n:** add French translations (batch 88) ([#1110](https://github.com/HankHuang0516/EClaw/issues/1110)) ([c2acfa9](https://github.com/HankHuang0516/EClaw/commit/c2acfa958edd76dc32b09f859dda605a2b0f9cdc)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations (batch 89) ([#1111](https://github.com/HankHuang0516/EClaw/issues/1111)) ([5db7391](https://github.com/HankHuang0516/EClaw/commit/5db739121c023fff901e6f14fd53318a16fafa64)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations (batch 90) ([#1112](https://github.com/HankHuang0516/EClaw/issues/1112)) ([7806868](https://github.com/HankHuang0516/EClaw/commit/7806868a72f2842ec90cc706b36f38a80c283519)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations (batch 91) ([#1113](https://github.com/HankHuang0516/EClaw/issues/1113)) ([d3955d5](https://github.com/HankHuang0516/EClaw/commit/d3955d512713eb25185314f636922c26b9421308)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations (batch 92) ([#1114](https://github.com/HankHuang0516/EClaw/issues/1114)) ([3ccda13](https://github.com/HankHuang0516/EClaw/commit/3ccda13797104ea038269af06e021a6650d8469c)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations (batch 93) ([#1115](https://github.com/HankHuang0516/EClaw/issues/1115)) ([c1feeff](https://github.com/HankHuang0516/EClaw/commit/c1feeff9a7eb7e37b87288054e8d4e069b39f594)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.623.0](https://github.com/HankHuang0516/EClaw/compare/v1.622.0...v1.623.0) (2026-03-29)


### Features

* **i18n:** add French translations (batch 87) ([#1109](https://github.com/HankHuang0516/EClaw/issues/1109)) ([f687cda](https://github.com/HankHuang0516/EClaw/commit/f687cda77bb15abef92f79399cc9087e4c7d981f)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.622.0](https://github.com/HankHuang0516/EClaw/compare/v1.621.0...v1.622.0) (2026-03-29)


### Features

* **i18n:** add French translations (batch 86) ([#1107](https://github.com/HankHuang0516/EClaw/issues/1107)) ([973e802](https://github.com/HankHuang0516/EClaw/commit/973e802a4f14945f9a17917ea554ae0f54896d15)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.621.0](https://github.com/HankHuang0516/EClaw/compare/v1.620.0...v1.621.0) (2026-03-29)


### Features

* **i18n:** add French translations (batch 85) ([#1105](https://github.com/HankHuang0516/EClaw/issues/1105)) ([c14091f](https://github.com/HankHuang0516/EClaw/commit/c14091feb9ef07645cc55a37a7b8f11e88043c65)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.620.0](https://github.com/HankHuang0516/EClaw/compare/v1.619.0...v1.620.0) (2026-03-29)


### Features

* **i18n:** add French translations (batch 80) ([#1100](https://github.com/HankHuang0516/EClaw/issues/1100)) ([ee8aad4](https://github.com/HankHuang0516/EClaw/commit/ee8aad4785bf2ffe5697700e659e54631ddb435b)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations (batch 81) ([#1101](https://github.com/HankHuang0516/EClaw/issues/1101)) ([5e13c42](https://github.com/HankHuang0516/EClaw/commit/5e13c428461602a3a01f27448847b21930d8a7e2)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations (batch 82) ([#1102](https://github.com/HankHuang0516/EClaw/issues/1102)) ([6b7f743](https://github.com/HankHuang0516/EClaw/commit/6b7f7437926118edc004a8f19a005c70b291c5de)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations (batch 83) ([#1103](https://github.com/HankHuang0516/EClaw/issues/1103)) ([162cb99](https://github.com/HankHuang0516/EClaw/commit/162cb99211f78fbaa7aa4be2ce844b5d52fe13a9)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations (batch 84) ([#1104](https://github.com/HankHuang0516/EClaw/issues/1104)) ([57af8fa](https://github.com/HankHuang0516/EClaw/commit/57af8fa2fdf2d9c49aa11fa0aaa60e7ad19bc768)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.619.0](https://github.com/HankHuang0516/EClaw/compare/v1.618.0...v1.619.0) (2026-03-29)


### Features

* **i18n:** add French translations (batch 79) ([#1099](https://github.com/HankHuang0516/EClaw/issues/1099)) ([f1da935](https://github.com/HankHuang0516/EClaw/commit/f1da935e1d08d5b8f077b3c4729049a3ae2680e4)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.618.0](https://github.com/HankHuang0516/EClaw/compare/v1.617.0...v1.618.0) (2026-03-29)


### Features

* **i18n:** add French translations (batch 77) ([#1096](https://github.com/HankHuang0516/EClaw/issues/1096)) ([f4819a5](https://github.com/HankHuang0516/EClaw/commit/f4819a5d01f5829ffb1c42921b8abdba4e4da8db)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations (batch 78) ([#1097](https://github.com/HankHuang0516/EClaw/issues/1097)) ([80158da](https://github.com/HankHuang0516/EClaw/commit/80158dacb075b9e7b67074e043dfa17b8b2d0923)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.617.0](https://github.com/HankHuang0516/EClaw/compare/v1.616.0...v1.617.0) (2026-03-29)


### Features

* **i18n:** add French translations (batch 76) ([#1095](https://github.com/HankHuang0516/EClaw/issues/1095)) ([79e86eb](https://github.com/HankHuang0516/EClaw/commit/79e86eb6a47dbaaf252d0db6eb8a59681a06800a)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.616.0](https://github.com/HankHuang0516/EClaw/compare/v1.615.0...v1.616.0) (2026-03-29)


### Features

* **i18n:** add French translations (batch 74) ([#1091](https://github.com/HankHuang0516/EClaw/issues/1091)) ([b53d8df](https://github.com/HankHuang0516/EClaw/commit/b53d8df9e1839b2ea1b1991882c4cb4fd805d795)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations (batch 75) ([#1092](https://github.com/HankHuang0516/EClaw/issues/1092)) ([5e4b0f7](https://github.com/HankHuang0516/EClaw/commit/5e4b0f76b0db9c474f25f5ed47e188fbe05cbe9c)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.615.0](https://github.com/HankHuang0516/EClaw/compare/v1.614.0...v1.615.0) (2026-03-29)


### Features

* **i18n:** add French translations (batch 71) ([#1087](https://github.com/HankHuang0516/EClaw/issues/1087)) ([4c76aed](https://github.com/HankHuang0516/EClaw/commit/4c76aedee1e6fe2785944abc054c7a11f9198d99)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations (batch 72) ([#1088](https://github.com/HankHuang0516/EClaw/issues/1088)) ([16f605e](https://github.com/HankHuang0516/EClaw/commit/16f605e3472e49805aa455197f0a28012f462634)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations (batch 73) ([#1089](https://github.com/HankHuang0516/EClaw/issues/1089)) ([d99081f](https://github.com/HankHuang0516/EClaw/commit/d99081f78061c719993d810e5aa3655d8d08bf88)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.614.0](https://github.com/HankHuang0516/EClaw/compare/v1.613.0...v1.614.0) (2026-03-29)


### Features

* **i18n:** add French translations (batch 70) ([#1086](https://github.com/HankHuang0516/EClaw/issues/1086)) ([40c0386](https://github.com/HankHuang0516/EClaw/commit/40c0386be1c6f2b0fd1f3241f56c1ff2accbfac1)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.613.0](https://github.com/HankHuang0516/EClaw/compare/v1.612.0...v1.613.0) (2026-03-29)


### Features

* **i18n:** add French translations (batch 69) ([#1084](https://github.com/HankHuang0516/EClaw/issues/1084)) ([5649116](https://github.com/HankHuang0516/EClaw/commit/5649116e08b0e5e84dbaae3d47da5d3844104842)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.612.0](https://github.com/HankHuang0516/EClaw/compare/v1.611.0...v1.612.0) (2026-03-29)


### Features

* **i18n:** add French translations (batch 67) ([#1081](https://github.com/HankHuang0516/EClaw/issues/1081)) ([18d856f](https://github.com/HankHuang0516/EClaw/commit/18d856f5e0658dfc0c801bf97910bc5e10d9ef95)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations (batch 68) ([#1082](https://github.com/HankHuang0516/EClaw/issues/1082)) ([ffa9b7b](https://github.com/HankHuang0516/EClaw/commit/ffa9b7b627a0cab0cac516876e9a015e4aa5598a)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.611.0](https://github.com/HankHuang0516/EClaw/compare/v1.610.0...v1.611.0) (2026-03-29)


### Features

* **i18n:** add French translations (batch 63) ([#1076](https://github.com/HankHuang0516/EClaw/issues/1076)) ([9cbc10b](https://github.com/HankHuang0516/EClaw/commit/9cbc10b98dbbf70ce003e27845d5fef0f5569b90)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations (batch 64) ([#1077](https://github.com/HankHuang0516/EClaw/issues/1077)) ([17d174e](https://github.com/HankHuang0516/EClaw/commit/17d174e5f68ca920bf11737f2c76bbb3574ab7b5)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations (batch 65) ([#1078](https://github.com/HankHuang0516/EClaw/issues/1078)) ([e56833d](https://github.com/HankHuang0516/EClaw/commit/e56833d432602284737cbed53ed3b10171f7cd79)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations (batch 66) ([#1079](https://github.com/HankHuang0516/EClaw/issues/1079)) ([4400dbd](https://github.com/HankHuang0516/EClaw/commit/4400dbda9e45adf146effc5be3b8511ae4a4ea7d)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.610.0](https://github.com/HankHuang0516/EClaw/compare/v1.609.0...v1.610.0) (2026-03-29)


### Features

* **i18n:** add French translations (batch 53) ([#1065](https://github.com/HankHuang0516/EClaw/issues/1065)) ([d1711d1](https://github.com/HankHuang0516/EClaw/commit/d1711d17cf60c5c9f15e4405babbd30955737c03)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations (batch 54) ([#1066](https://github.com/HankHuang0516/EClaw/issues/1066)) ([5b1cdd2](https://github.com/HankHuang0516/EClaw/commit/5b1cdd208a329a5da0d4c775463a204143bfc849)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations (batch 55) ([#1067](https://github.com/HankHuang0516/EClaw/issues/1067)) ([ba95fb8](https://github.com/HankHuang0516/EClaw/commit/ba95fb85f61182f002a2a915477d8d381bbdcd7e)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations (batch 56) ([#1068](https://github.com/HankHuang0516/EClaw/issues/1068)) ([e2fe480](https://github.com/HankHuang0516/EClaw/commit/e2fe480db2b8ef67bf0fb3f2a8c70d734a851780)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations (batch 57) ([#1069](https://github.com/HankHuang0516/EClaw/issues/1069)) ([5e4fc66](https://github.com/HankHuang0516/EClaw/commit/5e4fc663d255aac97c951f9ccd5647858054934f)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations (batch 58) ([#1070](https://github.com/HankHuang0516/EClaw/issues/1070)) ([adc317f](https://github.com/HankHuang0516/EClaw/commit/adc317f57ec1f6eaa9262f8f64613aa785be5fba)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations (batch 59) ([#1071](https://github.com/HankHuang0516/EClaw/issues/1071)) ([ec2f1b9](https://github.com/HankHuang0516/EClaw/commit/ec2f1b9b58d292c10094939f4fcaee232b7f4192)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations (batch 60) ([#1072](https://github.com/HankHuang0516/EClaw/issues/1072)) ([8c93b1f](https://github.com/HankHuang0516/EClaw/commit/8c93b1fea9cd2506138465bf37bdd839760ad277)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations (batch 61) ([#1073](https://github.com/HankHuang0516/EClaw/issues/1073)) ([fc92c1a](https://github.com/HankHuang0516/EClaw/commit/fc92c1a0809a20fa74bc830e5bdcb7181c22b583)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations (batch 62) ([#1074](https://github.com/HankHuang0516/EClaw/issues/1074)) ([c34141f](https://github.com/HankHuang0516/EClaw/commit/c34141f6da40252f5fe7c9bb7e4e8bc331ba8ba3)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.609.0](https://github.com/HankHuang0516/EClaw/compare/v1.608.0...v1.609.0) (2026-03-29)


### Features

* **i18n:** add French translations (batch 52) ([#1064](https://github.com/HankHuang0516/EClaw/issues/1064)) ([84138c3](https://github.com/HankHuang0516/EClaw/commit/84138c39f53c6b8dac57a595fe09a6cea2b8b6c0)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.608.0](https://github.com/HankHuang0516/EClaw/compare/v1.607.0...v1.608.0) (2026-03-29)


### Features

* **i18n:** add French translations (batch 51) ([#1063](https://github.com/HankHuang0516/EClaw/issues/1063)) ([d661c96](https://github.com/HankHuang0516/EClaw/commit/d661c969fc7430ec43efc52fa2c07cb18812c6f5)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.607.0](https://github.com/HankHuang0516/EClaw/compare/v1.606.0...v1.607.0) (2026-03-29)


### Features

* **i18n:** add French translations (batch 41) ([#1062](https://github.com/HankHuang0516/EClaw/issues/1062)) ([c7c50da](https://github.com/HankHuang0516/EClaw/commit/c7c50dae87fa674301b3306e6ae2a5e0d4a37e0f)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.606.0](https://github.com/HankHuang0516/EClaw/compare/v1.605.0...v1.606.0) (2026-03-29)


### Features

* **i18n:** add French translations (batch 40) ([#1061](https://github.com/HankHuang0516/EClaw/issues/1061)) ([2be6235](https://github.com/HankHuang0516/EClaw/commit/2be6235f99a1a0d86ecedaecf6181cdd59021788)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.605.0](https://github.com/HankHuang0516/EClaw/compare/v1.604.0...v1.605.0) (2026-03-29)


### Features

* **i18n:** add French translations (batch 39) ([#1060](https://github.com/HankHuang0516/EClaw/issues/1060)) ([07f5888](https://github.com/HankHuang0516/EClaw/commit/07f5888adb0cc5d952472ae7e55090cc6d19e7bb)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.604.0](https://github.com/HankHuang0516/EClaw/compare/v1.603.0...v1.604.0) (2026-03-29)


### Features

* **i18n:** add French translations (batch 38) ([#1059](https://github.com/HankHuang0516/EClaw/issues/1059)) ([ef37d79](https://github.com/HankHuang0516/EClaw/commit/ef37d79a7357b83e50c94361cdf4ba0913a59356)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.603.0](https://github.com/HankHuang0516/EClaw/compare/v1.602.0...v1.603.0) (2026-03-29)


### Features

* **i18n:** add French translations (batch 37) ([#1058](https://github.com/HankHuang0516/EClaw/issues/1058)) ([688324e](https://github.com/HankHuang0516/EClaw/commit/688324e174c1ef530e6cd67e6bca3fdd7f7f24df)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.602.0](https://github.com/HankHuang0516/EClaw/compare/v1.601.0...v1.602.0) (2026-03-29)


### Features

* **i18n:** add French translations (batch 36) ([#1057](https://github.com/HankHuang0516/EClaw/issues/1057)) ([0d35489](https://github.com/HankHuang0516/EClaw/commit/0d35489220b7d464448f2bccbef7097f87f75b1a)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.601.0](https://github.com/HankHuang0516/EClaw/compare/v1.600.0...v1.601.0) (2026-03-29)


### Features

* **i18n:** add French translations (batch 35) ([#1056](https://github.com/HankHuang0516/EClaw/issues/1056)) ([a69ea26](https://github.com/HankHuang0516/EClaw/commit/a69ea2639731ea1ac2094dfffa3e2a8eb101f2f6)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.600.0](https://github.com/HankHuang0516/EClaw/compare/v1.599.0...v1.600.0) (2026-03-29)


### Features

* **i18n:** add French translations (batch 34) ([#1055](https://github.com/HankHuang0516/EClaw/issues/1055)) ([de9da35](https://github.com/HankHuang0516/EClaw/commit/de9da358156f8f29e412d3115dad06d64ea55458)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.599.0](https://github.com/HankHuang0516/EClaw/compare/v1.598.0...v1.599.0) (2026-03-29)


### Features

* **i18n:** add French translations (batch 33) ([#1054](https://github.com/HankHuang0516/EClaw/issues/1054)) ([81ff1ea](https://github.com/HankHuang0516/EClaw/commit/81ff1ea35820a5c7ef2e560eb60e613bb0204882)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.598.0](https://github.com/HankHuang0516/EClaw/compare/v1.597.0...v1.598.0) (2026-03-29)


### Features

* **i18n:** add French translations (batch 32) ([#1053](https://github.com/HankHuang0516/EClaw/issues/1053)) ([e1eb980](https://github.com/HankHuang0516/EClaw/commit/e1eb9804671122dba3e1f0d5958699a1686b0788)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.597.0](https://github.com/HankHuang0516/EClaw/compare/v1.596.0...v1.597.0) (2026-03-29)


### Features

* **i18n:** add French translations (batch 31) ([#1052](https://github.com/HankHuang0516/EClaw/issues/1052)) ([532266a](https://github.com/HankHuang0516/EClaw/commit/532266ac876169b6d67f905e889acd75e5bb7e3f)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.596.0](https://github.com/HankHuang0516/EClaw/compare/v1.595.0...v1.596.0) (2026-03-29)


### Features

* **i18n:** add French translations (batch 30) ([#1051](https://github.com/HankHuang0516/EClaw/issues/1051)) ([506b468](https://github.com/HankHuang0516/EClaw/commit/506b468f052b4a98a3a03e3caff6508759610bec)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.595.0](https://github.com/HankHuang0516/EClaw/compare/v1.594.0...v1.595.0) (2026-03-29)


### Features

* **i18n:** add French translations (batch 29) ([#1050](https://github.com/HankHuang0516/EClaw/issues/1050)) ([713a777](https://github.com/HankHuang0516/EClaw/commit/713a777dd42e0bd6d56f44237797e97af382fdf0)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.594.0](https://github.com/HankHuang0516/EClaw/compare/v1.593.0...v1.594.0) (2026-03-29)


### Features

* **i18n:** add French translations (batch 28) ([#1049](https://github.com/HankHuang0516/EClaw/issues/1049)) ([dc3ca47](https://github.com/HankHuang0516/EClaw/commit/dc3ca4777f810554298a1c234287c254ba0cd7af)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.593.0](https://github.com/HankHuang0516/EClaw/compare/v1.592.0...v1.593.0) (2026-03-29)


### Features

* **i18n:** add French translations (batch 27) ([#1048](https://github.com/HankHuang0516/EClaw/issues/1048)) ([21c0f76](https://github.com/HankHuang0516/EClaw/commit/21c0f7616d6432c9800790a1248c4487293c94cf)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.592.0](https://github.com/HankHuang0516/EClaw/compare/v1.591.0...v1.592.0) (2026-03-29)


### Features

* **i18n:** add French translations (batch 26) ([#1047](https://github.com/HankHuang0516/EClaw/issues/1047)) ([5310b35](https://github.com/HankHuang0516/EClaw/commit/5310b35c2c67a99b61c6874fb76a2a0cbae82616)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.591.0](https://github.com/HankHuang0516/EClaw/compare/v1.590.0...v1.591.0) (2026-03-29)


### Features

* **i18n:** add French translations (batch 25) ([#1046](https://github.com/HankHuang0516/EClaw/issues/1046)) ([68c711e](https://github.com/HankHuang0516/EClaw/commit/68c711e7656c74203f7828ff4af964583a3247e8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.590.0](https://github.com/HankHuang0516/EClaw/compare/v1.589.0...v1.590.0) (2026-03-29)


### Features

* **i18n:** add French translations (batch 24) ([#1045](https://github.com/HankHuang0516/EClaw/issues/1045)) ([f9e6f0e](https://github.com/HankHuang0516/EClaw/commit/f9e6f0e5bb8bc7d2551f67a942caa1ec98c86c64)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.589.0](https://github.com/HankHuang0516/EClaw/compare/v1.588.0...v1.589.0) (2026-03-29)


### Features

* **i18n:** add French translations (batch 23) ([#1044](https://github.com/HankHuang0516/EClaw/issues/1044)) ([2064b82](https://github.com/HankHuang0516/EClaw/commit/2064b8290f8972918cef37a94a6a1d95e4d47458)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.588.0](https://github.com/HankHuang0516/EClaw/compare/v1.587.0...v1.588.0) (2026-03-29)


### Features

* **i18n:** add French translations (batch 22) ([#1043](https://github.com/HankHuang0516/EClaw/issues/1043)) ([52d3ed6](https://github.com/HankHuang0516/EClaw/commit/52d3ed6d26ce0ffa5e3295bb2b7694abafdadf97)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.587.0](https://github.com/HankHuang0516/EClaw/compare/v1.586.1...v1.587.0) (2026-03-29)


### Features

* **i18n:** add French translations (batch 21) ([#1042](https://github.com/HankHuang0516/EClaw/issues/1042)) ([86ee00b](https://github.com/HankHuang0516/EClaw/commit/86ee00bd090b81ecc448a94d64c7f30311826f1e)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

## [1.586.1](https://github.com/HankHuang0516/EClaw/compare/v1.586.0...v1.586.1) (2026-03-29)


### Bug Fixes

* **i18n:** correct French translations placement in FR section (batch 20 fix) ([aafa69d](https://github.com/HankHuang0516/EClaw/commit/aafa69dd0631fbf6420253658d007b30c593e76b))

# [1.586.0](https://github.com/HankHuang0516/EClaw/compare/v1.585.0...v1.586.0) (2026-03-29)


### Features

* **i18n:** add French translations (batch 20) ([#1041](https://github.com/HankHuang0516/EClaw/issues/1041)) ([cf68c48](https://github.com/HankHuang0516/EClaw/commit/cf68c48f7d1cc779cda41cf8149305ae23c28ab4)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.585.0](https://github.com/HankHuang0516/EClaw/compare/v1.584.0...v1.585.0) (2026-03-29)


### Features

* **i18n:** add French translations (batch 19) ([#1040](https://github.com/HankHuang0516/EClaw/issues/1040)) ([076c6c0](https://github.com/HankHuang0516/EClaw/commit/076c6c0c19c059d37971adf6d7d8f0210e3df242)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.584.0](https://github.com/HankHuang0516/EClaw/compare/v1.583.0...v1.584.0) (2026-03-29)


### Features

* **i18n:** add Hindi (hi) translations batch 58 (FINAL) (8 keys) (squashed) ([036e649](https://github.com/HankHuang0516/EClaw/commit/036e6497302185f7f04f42231b0cc109b1489765))

# [1.583.0](https://github.com/HankHuang0516/EClaw/compare/v1.582.0...v1.583.0) (2026-03-29)


### Features

* **i18n:** add Arabic (ar) translations batch 58 (FINAL) (8 keys) (squashed) ([0aeb60f](https://github.com/HankHuang0516/EClaw/commit/0aeb60f8ac4a09b942568edba5ff5ff48d8c67eb))

# [1.582.0](https://github.com/HankHuang0516/EClaw/compare/v1.581.0...v1.582.0) (2026-03-29)


### Features

* **i18n:** add Hindi (hi) translations batch 57 (26 keys) (squashed) ([f3195c5](https://github.com/HankHuang0516/EClaw/commit/f3195c535c3f998d2f5e1565784f12938036fa74))

# [1.581.0](https://github.com/HankHuang0516/EClaw/compare/v1.580.0...v1.581.0) (2026-03-29)


### Features

* **i18n:** add Arabic (ar) translations batch 57 (26 keys) (squashed) ([9396eeb](https://github.com/HankHuang0516/EClaw/commit/9396eeb7107776d3e72ad4a1e6ed7a93c1f30ef0))

# [1.580.0](https://github.com/HankHuang0516/EClaw/compare/v1.579.0...v1.580.0) (2026-03-29)


### Features

* **i18n:** add Hindi (hi) translations batch 56 (26 keys) (squashed) ([10b4ddc](https://github.com/HankHuang0516/EClaw/commit/10b4ddcda9bb75a0498e83cd751ddffa89bc1758))

# [1.579.0](https://github.com/HankHuang0516/EClaw/compare/v1.578.0...v1.579.0) (2026-03-29)


### Features

* **i18n:** add Arabic (ar) translations batch 56 (26 keys) (squashed) ([861b57a](https://github.com/HankHuang0516/EClaw/commit/861b57aff9648e48af8e96a22fe592df3a77bd75))

# [1.578.0](https://github.com/HankHuang0516/EClaw/compare/v1.577.0...v1.578.0) (2026-03-29)


### Features

* **i18n:** add Hindi (hi) translations batch 55 (26 keys) (squashed) ([97ab8e9](https://github.com/HankHuang0516/EClaw/commit/97ab8e999aeaced7be54baf63768f52d76a65469))

# [1.577.0](https://github.com/HankHuang0516/EClaw/compare/v1.576.0...v1.577.0) (2026-03-29)


### Features

* **i18n:** add Arabic (ar) translations batch 55 (26 keys) (squashed) ([7c91c96](https://github.com/HankHuang0516/EClaw/commit/7c91c96af3437baa04a4c33741d269abb80606af))

# [1.576.0](https://github.com/HankHuang0516/EClaw/compare/v1.575.0...v1.576.0) (2026-03-29)


### Features

* **i18n:** add Hindi (hi) translations batch 54 (26 keys) (squashed) ([2da196c](https://github.com/HankHuang0516/EClaw/commit/2da196c408a9e2addbaeeba04a5587e490353932))

# [1.575.0](https://github.com/HankHuang0516/EClaw/compare/v1.574.0...v1.575.0) (2026-03-29)


### Features

* **i18n:** add Arabic (ar) translations batch 54 (26 keys) (squashed) ([8c9b9f0](https://github.com/HankHuang0516/EClaw/commit/8c9b9f04f4a2a25b67b36c0760cbd0cd324671bf))

# [1.574.0](https://github.com/HankHuang0516/EClaw/compare/v1.573.0...v1.574.0) (2026-03-29)


### Features

* **i18n:** add Hindi (hi) translations batch 53 (26 keys) (squashed) ([792a46a](https://github.com/HankHuang0516/EClaw/commit/792a46a55dfd7cfe017f88fbc1abc7c91be93995))

# [1.573.0](https://github.com/HankHuang0516/EClaw/compare/v1.572.0...v1.573.0) (2026-03-29)


### Features

* **i18n:** add Arabic (ar) translations batch 53 (26 keys) (squashed) ([1462143](https://github.com/HankHuang0516/EClaw/commit/1462143356035f45f81c9e6f7a8ffb4b5ce6c202))

# [1.572.0](https://github.com/HankHuang0516/EClaw/compare/v1.571.0...v1.572.0) (2026-03-29)


### Features

* **i18n:** add Hindi (hi) translations batch 52 (26 keys) (squashed) ([f5bd353](https://github.com/HankHuang0516/EClaw/commit/f5bd3538df23add12101c75cd8dc35a07b91331a))

# [1.571.0](https://github.com/HankHuang0516/EClaw/compare/v1.570.0...v1.571.0) (2026-03-29)


### Features

* **i18n:** add Arabic (ar) translations batch 52 (26 keys) (squashed) ([0c018c8](https://github.com/HankHuang0516/EClaw/commit/0c018c82650ab012441164baae3a84f51c3af9e7))

# [1.570.0](https://github.com/HankHuang0516/EClaw/compare/v1.569.0...v1.570.0) (2026-03-29)


### Features

* **i18n:** add Hindi (hi) translations batch 51 (26 keys) (squashed) ([50cfbe6](https://github.com/HankHuang0516/EClaw/commit/50cfbe6bd65ea25015513e671737c8a84bf8abc3))

# [1.569.0](https://github.com/HankHuang0516/EClaw/compare/v1.568.0...v1.569.0) (2026-03-29)


### Features

* **i18n:** add Arabic (ar) translations batch 51 (26 keys) (squashed) ([ff75eef](https://github.com/HankHuang0516/EClaw/commit/ff75eef1ab9c9205b760e3f9f1ba454eb648fef1))

# [1.568.0](https://github.com/HankHuang0516/EClaw/compare/v1.567.0...v1.568.0) (2026-03-29)


### Features

* **i18n:** add Hindi (hi) translations batch 50 (26 keys) (squashed) ([742b138](https://github.com/HankHuang0516/EClaw/commit/742b138ce437280a68f26544c73f42a8d1fa9a5c))

# [1.567.0](https://github.com/HankHuang0516/EClaw/compare/v1.566.0...v1.567.0) (2026-03-29)


### Features

* **i18n:** add Arabic (ar) translations batch 50 (26 keys) (squashed) ([679417c](https://github.com/HankHuang0516/EClaw/commit/679417ca6548e4279ac4102b49e56934ebb42fb1))

# [1.566.0](https://github.com/HankHuang0516/EClaw/compare/v1.565.0...v1.566.0) (2026-03-29)


### Features

* **i18n:** add Arabic (ar) translations batch 49 (26 keys) (squashed) ([54e1bb0](https://github.com/HankHuang0516/EClaw/commit/54e1bb0363a7373ddf29600638074c2a2834f465))
* **i18n:** add French translations (batch 18) ([#1019](https://github.com/HankHuang0516/EClaw/issues/1019)) ([ad91665](https://github.com/HankHuang0516/EClaw/commit/ad91665709967c26be9860524875bfd26135a234)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add Hindi (hi) translations batch 48 (26 keys) (squashed) ([8023581](https://github.com/HankHuang0516/EClaw/commit/802358155533b485a45464c28fc11429eb3e8581))
* **i18n:** add Hindi (hi) translations batch 49 (26 keys) (squashed) ([dec75c0](https://github.com/HankHuang0516/EClaw/commit/dec75c0bf00f6806e2f25304f90aad5958af993f))

# [1.565.0](https://github.com/HankHuang0516/EClaw/compare/v1.564.0...v1.565.0) (2026-03-29)


### Features

* **i18n:** add Arabic (ar) translations batch 48 (26 keys) (squashed) ([816513b](https://github.com/HankHuang0516/EClaw/commit/816513b4f53ae6e64bfaf1e49a3c1c0ae0edad0e))

# [1.564.0](https://github.com/HankHuang0516/EClaw/compare/v1.563.0...v1.564.0) (2026-03-29)


### Features

* **i18n:** add Hindi (hi) translations batch 47 (26 keys) (squashed) ([9e0de11](https://github.com/HankHuang0516/EClaw/commit/9e0de11162112f53754347e0340b88a5fc199442))

# [1.563.0](https://github.com/HankHuang0516/EClaw/compare/v1.562.0...v1.563.0) (2026-03-29)


### Features

* **i18n:** add Arabic (ar) translations batch 47 (26 keys) (squashed) ([6d74697](https://github.com/HankHuang0516/EClaw/commit/6d7469721888b33e72aa8fd231a09f2a44919305))

# [1.562.0](https://github.com/HankHuang0516/EClaw/compare/v1.561.0...v1.562.0) (2026-03-29)


### Features

* **i18n:** add Hindi (hi) translations batch 46 (26 keys) (squashed) ([ef2dc15](https://github.com/HankHuang0516/EClaw/commit/ef2dc15cac9b262d431ca687c4b05016ce59d11c))

# [1.561.0](https://github.com/HankHuang0516/EClaw/compare/v1.560.0...v1.561.0) (2026-03-29)


### Features

* **i18n:** add Arabic (ar) translations batch 46 (26 keys) (squashed) ([a6901fa](https://github.com/HankHuang0516/EClaw/commit/a6901fa730a29ce1dbda879b354ae9d0a1d8d513))

# [1.560.0](https://github.com/HankHuang0516/EClaw/compare/v1.559.0...v1.560.0) (2026-03-29)


### Features

* **i18n:** add Hindi (hi) translations batch 45 (26 keys) (squashed) ([c4789f4](https://github.com/HankHuang0516/EClaw/commit/c4789f4710730f74da85d23670c0ec2239bf15c7))

# [1.559.0](https://github.com/HankHuang0516/EClaw/compare/v1.558.0...v1.559.0) (2026-03-29)


### Features

* **i18n:** add Arabic (ar) translations batch 45 (26 keys) (squashed) ([1551dfe](https://github.com/HankHuang0516/EClaw/commit/1551dfe13c1fee2105e631e9b7c6c823071b960a))

# [1.558.0](https://github.com/HankHuang0516/EClaw/compare/v1.557.0...v1.558.0) (2026-03-29)


### Features

* **i18n:** add Hindi (hi) translations batch 44 (26 keys) (squashed) ([098fb1b](https://github.com/HankHuang0516/EClaw/commit/098fb1b5b92e60ac95fd37c0e0dafc751116765c))

# [1.557.0](https://github.com/HankHuang0516/EClaw/compare/v1.556.0...v1.557.0) (2026-03-29)


### Features

* **i18n:** add Arabic (ar) translations batch 44 (26 keys) (squashed) ([136176f](https://github.com/HankHuang0516/EClaw/commit/136176f7e8721abdadae29b71beae1be16da05eb))

# [1.556.0](https://github.com/HankHuang0516/EClaw/compare/v1.555.0...v1.556.0) (2026-03-29)


### Features

* **i18n:** add Hindi (hi) translations batch 43 (26 keys) (squashed) ([8435a7d](https://github.com/HankHuang0516/EClaw/commit/8435a7d0c8ae043d70fcb5fc5c7167038ff793db))

# [1.555.0](https://github.com/HankHuang0516/EClaw/compare/v1.554.0...v1.555.0) (2026-03-29)


### Features

* **i18n:** add Arabic (ar) translations batch 43 (26 keys) (squashed) ([3a39791](https://github.com/HankHuang0516/EClaw/commit/3a39791eba7c74cdde838af86ad0c3356aa15442))

# [1.554.0](https://github.com/HankHuang0516/EClaw/compare/v1.553.0...v1.554.0) (2026-03-29)


### Features

* **i18n:** add Hindi (hi) translations batch 42 (26 keys) (squashed) ([9c2c2a2](https://github.com/HankHuang0516/EClaw/commit/9c2c2a26a22439cfa420e497ea47811900e1171e))

# [1.553.0](https://github.com/HankHuang0516/EClaw/compare/v1.552.0...v1.553.0) (2026-03-29)


### Features

* **i18n:** add Arabic (ar) translations batch 42 (26 keys) (squashed) ([dcfa97c](https://github.com/HankHuang0516/EClaw/commit/dcfa97c211bda48078991d1589ce848a82fdf580))

# [1.552.0](https://github.com/HankHuang0516/EClaw/compare/v1.551.0...v1.552.0) (2026-03-29)


### Features

* **i18n:** add Hindi (hi) translations batch 41 (26 keys) (squashed) ([45d1e06](https://github.com/HankHuang0516/EClaw/commit/45d1e06df4f0126327ae9bed3fb8c12663802444))

# [1.551.0](https://github.com/HankHuang0516/EClaw/compare/v1.550.0...v1.551.0) (2026-03-29)


### Features

* **i18n:** add Arabic (ar) translations batch 41 (26 keys) (squashed) ([05602d1](https://github.com/HankHuang0516/EClaw/commit/05602d1d11df1ea3ebec85be063e60b42fb88cdd))

# [1.550.0](https://github.com/HankHuang0516/EClaw/compare/v1.549.0...v1.550.0) (2026-03-29)


### Features

* **i18n:** add Hindi (hi) translations batch 40 (26 keys) (squashed) ([955a6c7](https://github.com/HankHuang0516/EClaw/commit/955a6c7aae995fe7f9e7456995e9d840c800462f))

# [1.549.0](https://github.com/HankHuang0516/EClaw/compare/v1.548.0...v1.549.0) (2026-03-29)


### Features

* **i18n:** add Arabic (ar) translations batch 40 (26 keys) (squashed) ([94900ec](https://github.com/HankHuang0516/EClaw/commit/94900ec4afff9f13e32bcc65d0a986fc4042d50a))

# [1.548.0](https://github.com/HankHuang0516/EClaw/compare/v1.547.0...v1.548.0) (2026-03-29)


### Features

* **i18n:** add Hindi (hi) translations batch 39 (26 keys) (squashed) ([f5ad515](https://github.com/HankHuang0516/EClaw/commit/f5ad515730154924d578ac0b33f2ef791011a285))

# [1.547.0](https://github.com/HankHuang0516/EClaw/compare/v1.546.0...v1.547.0) (2026-03-29)


### Features

* **i18n:** add Arabic (ar) translations batch 39 (26 keys) (squashed) ([4f93f29](https://github.com/HankHuang0516/EClaw/commit/4f93f2993e1eafdb8d155e047bbebe68e011e19d))

# [1.546.0](https://github.com/HankHuang0516/EClaw/compare/v1.545.0...v1.546.0) (2026-03-29)


### Features

* **i18n:** add Hindi (hi) translations batch 38 (26 keys) (squashed) ([ecd670e](https://github.com/HankHuang0516/EClaw/commit/ecd670e9e7726a08987f0031838d26306de7f7e9))

# [1.545.0](https://github.com/HankHuang0516/EClaw/compare/v1.544.0...v1.545.0) (2026-03-29)


### Features

* **i18n:** add Arabic (ar) translations batch 38 (26 keys) (squashed) ([f1d9956](https://github.com/HankHuang0516/EClaw/commit/f1d99561d3d011c2ea47d8190d705964fe4ea5bf))

# [1.544.0](https://github.com/HankHuang0516/EClaw/compare/v1.543.0...v1.544.0) (2026-03-29)


### Features

* **i18n:** add Hindi (hi) translations batch 37 (26 keys) (squashed) ([58f20ec](https://github.com/HankHuang0516/EClaw/commit/58f20ec81c4fbf12c1c7f6fc0cd127564fe7e779))

# [1.543.0](https://github.com/HankHuang0516/EClaw/compare/v1.542.0...v1.543.0) (2026-03-29)


### Features

* **i18n:** add Arabic (ar) translations batch 37 (26 keys) (squashed) ([c6abed6](https://github.com/HankHuang0516/EClaw/commit/c6abed622642e5ce58528af2ff1bc2d780f03180))

# [1.542.0](https://github.com/HankHuang0516/EClaw/compare/v1.541.0...v1.542.0) (2026-03-29)


### Features

* **i18n:** add Hindi (hi) translations batch 36 (26 keys) (squashed) ([18344c7](https://github.com/HankHuang0516/EClaw/commit/18344c7272dcc5a348f4c8eacea2191d9e5863eb))

# [1.541.0](https://github.com/HankHuang0516/EClaw/compare/v1.540.0...v1.541.0) (2026-03-29)


### Features

* **i18n:** add Arabic (ar) translations batch 36 (26 keys) (squashed) ([b7e0169](https://github.com/HankHuang0516/EClaw/commit/b7e016931e3397112e664f8a6ce3cd27a44e890d))

# [1.540.0](https://github.com/HankHuang0516/EClaw/compare/v1.539.0...v1.540.0) (2026-03-29)


### Features

* **i18n:** add Hindi (hi) translations batch 35 (26 keys) (squashed) ([ddcbe6b](https://github.com/HankHuang0516/EClaw/commit/ddcbe6b1832de6fc0153c8060c6525cda583768c))

# [1.539.0](https://github.com/HankHuang0516/EClaw/compare/v1.538.0...v1.539.0) (2026-03-29)


### Features

* **i18n:** add Arabic (ar) translations batch 35 (26 keys) (squashed) ([22c4138](https://github.com/HankHuang0516/EClaw/commit/22c41388fdbd4bea57f62952b53d5632b0e32621))

# [1.538.0](https://github.com/HankHuang0516/EClaw/compare/v1.537.0...v1.538.0) (2026-03-29)


### Features

* **i18n:** add Arabic (ar) translations batch 34 (26 keys) (squashed) ([336b3ea](https://github.com/HankHuang0516/EClaw/commit/336b3ea667376e93fc6fe9c6606be5ba9567c98b))
* **i18n:** add Hindi (hi) translations batch 34 (26 keys) (squashed) ([69b8ad0](https://github.com/HankHuang0516/EClaw/commit/69b8ad0dd866f7e3ef2b45688c7cf605b2004df3))

# [1.537.0](https://github.com/HankHuang0516/EClaw/compare/v1.536.0...v1.537.0) (2026-03-29)


### Features

* **i18n:** add Hindi (hi) translations batch 33 (26 keys) (squashed) ([0e6aeaa](https://github.com/HankHuang0516/EClaw/commit/0e6aeaa581f1870c10774fecb82255437e1f8f82))

# [1.536.0](https://github.com/HankHuang0516/EClaw/compare/v1.535.0...v1.536.0) (2026-03-29)


### Features

* **i18n:** add Arabic (ar) translations batch 33 (26 keys) (squashed) ([5e74f37](https://github.com/HankHuang0516/EClaw/commit/5e74f37d54e6534697d9fe88f85edcfea3e2f8fe))

# [1.535.0](https://github.com/HankHuang0516/EClaw/compare/v1.534.0...v1.535.0) (2026-03-29)


### Features

* **i18n:** add Hindi (hi) translations batch 32 (26 keys) (squashed) ([3f8cae5](https://github.com/HankHuang0516/EClaw/commit/3f8cae52f5f60b4f2a67e52856a4d0e13cebe8fe))

# [1.534.0](https://github.com/HankHuang0516/EClaw/compare/v1.533.0...v1.534.0) (2026-03-29)


### Features

* **i18n:** add Arabic (ar) translations batch 32 (26 keys) (squashed) ([7c0f2de](https://github.com/HankHuang0516/EClaw/commit/7c0f2de18ff2abe4bf08f3e0e0e68210f9748c78))

# [1.533.0](https://github.com/HankHuang0516/EClaw/compare/v1.532.0...v1.533.0) (2026-03-29)


### Features

* **i18n:** add Hindi (hi) translations batch 31 (32 keys) (squashed) ([2dc3d00](https://github.com/HankHuang0516/EClaw/commit/2dc3d008cbd4836548c9ffe4aab29ea97af39a61))

# [1.532.0](https://github.com/HankHuang0516/EClaw/compare/v1.531.0...v1.532.0) (2026-03-29)


### Features

* **i18n:** add Arabic (ar) translations batch 31 (32 keys) (squashed) ([5a73026](https://github.com/HankHuang0516/EClaw/commit/5a73026a71553b40b0427140739207e0934dbfae))

# [1.531.0](https://github.com/HankHuang0516/EClaw/compare/v1.530.0...v1.531.0) (2026-03-29)


### Features

* **i18n:** add French translations (batch 17) ([#982](https://github.com/HankHuang0516/EClaw/issues/982)) ([88bd70f](https://github.com/HankHuang0516/EClaw/commit/88bd70f16d0bd7f041f5400412c9fe0cbc1e50f3)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.530.0](https://github.com/HankHuang0516/EClaw/compare/v1.529.0...v1.530.0) (2026-03-29)


### Features

* **i18n:** add Hindi (hi) translations batch 30 (20 keys) (squashed) ([f8047a7](https://github.com/HankHuang0516/EClaw/commit/f8047a775bea084890da8bd1bb3ef12731cfbbaf))

# [1.529.0](https://github.com/HankHuang0516/EClaw/compare/v1.528.0...v1.529.0) (2026-03-29)


### Features

* **i18n:** add Arabic (ar) translations batch 30 (20 keys) (squashed) ([29ae8ee](https://github.com/HankHuang0516/EClaw/commit/29ae8ee2ff24a3959d4a22ba159b309e9433b3f9))

# [1.528.0](https://github.com/HankHuang0516/EClaw/compare/v1.527.0...v1.528.0) (2026-03-29)


### Features

* **i18n:** add Hindi (hi) translations batch 29 (20 keys) (squashed) ([e96ae1b](https://github.com/HankHuang0516/EClaw/commit/e96ae1b748009c45d3c2ac797b1ed0b28912479f))

# [1.527.0](https://github.com/HankHuang0516/EClaw/compare/v1.526.0...v1.527.0) (2026-03-29)


### Features

* **i18n:** add Arabic (ar) translations batch 29 (20 keys) (squashed) ([80dcccf](https://github.com/HankHuang0516/EClaw/commit/80dcccfe5be69ef6101d9e9d5288f07eb245d3b2))

# [1.526.0](https://github.com/HankHuang0516/EClaw/compare/v1.525.0...v1.526.0) (2026-03-29)


### Features

* **i18n:** add Hindi (hi) translations batch 28 (26 keys) (squashed) ([b57910e](https://github.com/HankHuang0516/EClaw/commit/b57910e513695ccb336edaccbced389cc159cbba))

# [1.525.0](https://github.com/HankHuang0516/EClaw/compare/v1.524.0...v1.525.0) (2026-03-29)


### Features

* **i18n:** add Arabic (ar) translations batch 28 (26 keys) (squashed) ([bb37085](https://github.com/HankHuang0516/EClaw/commit/bb37085614566c1f0288ea00959052259a432782))

# [1.524.0](https://github.com/HankHuang0516/EClaw/compare/v1.523.0...v1.524.0) (2026-03-29)


### Features

* **i18n:** add Hindi (hi) translations batch 27 (26 keys) (squashed) ([4649acf](https://github.com/HankHuang0516/EClaw/commit/4649acf9029d667e5c67a2e0eb058709dded8f3c))

# [1.523.0](https://github.com/HankHuang0516/EClaw/compare/v1.522.0...v1.523.0) (2026-03-29)


### Features

* **i18n:** add Arabic (ar) translations batch 27 (26 keys) (squashed) ([f0ee30a](https://github.com/HankHuang0516/EClaw/commit/f0ee30a901d0d56ce1c0c58726972cea7a8fe966))

# [1.522.0](https://github.com/HankHuang0516/EClaw/compare/v1.521.0...v1.522.0) (2026-03-29)


### Features

* **i18n:** add Hindi (hi) translations batch 26 (26 keys) (squashed) ([686d23d](https://github.com/HankHuang0516/EClaw/commit/686d23d48e19807dbf00dc0ff959bc6d5d6e5116))

# [1.521.0](https://github.com/HankHuang0516/EClaw/compare/v1.520.0...v1.521.0) (2026-03-29)


### Features

* **i18n:** add Arabic (ar) translations batch 26 (26 keys) (squashed) ([f6dd75a](https://github.com/HankHuang0516/EClaw/commit/f6dd75a287afdb77c0f8aaea21ae90552ca79481))

# [1.520.0](https://github.com/HankHuang0516/EClaw/compare/v1.519.0...v1.520.0) (2026-03-29)


### Features

* **i18n:** add Hindi (hi) translations batch 25 (26 keys) (squashed) ([01a5d8c](https://github.com/HankHuang0516/EClaw/commit/01a5d8ce48ed2cf517b5319fbddde49d8f904fdd))

# [1.519.0](https://github.com/HankHuang0516/EClaw/compare/v1.518.0...v1.519.0) (2026-03-29)


### Features

* **i18n:** add Arabic (ar) translations batch 25 (26 keys) (squashed) ([5912d09](https://github.com/HankHuang0516/EClaw/commit/5912d097ee34a525f449611e07fbeaaad9580087))

# [1.518.0](https://github.com/HankHuang0516/EClaw/compare/v1.517.0...v1.518.0) (2026-03-29)


### Features

* **i18n:** add French translations (batch 16) ([#969](https://github.com/HankHuang0516/EClaw/issues/969)) ([416fbd3](https://github.com/HankHuang0516/EClaw/commit/416fbd302558e9b3b0276d4455b85e1cb0b022eb)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.517.0](https://github.com/HankHuang0516/EClaw/compare/v1.516.0...v1.517.0) (2026-03-29)


### Features

* **i18n:** add Hindi (hi) translations batch 24 (32 keys) (squashed) ([8a9a92b](https://github.com/HankHuang0516/EClaw/commit/8a9a92bdb36ff92e94f7c27f7433d873e346be8d))

# [1.516.0](https://github.com/HankHuang0516/EClaw/compare/v1.515.0...v1.516.0) (2026-03-29)


### Features

* **i18n:** add Arabic (ar) translations batch 24 (32 keys) (squashed) ([e4fb607](https://github.com/HankHuang0516/EClaw/commit/e4fb607e2b95f1ebddaea27fb4453a22c5ae8a33))

# [1.515.0](https://github.com/HankHuang0516/EClaw/compare/v1.514.0...v1.515.0) (2026-03-29)


### Features

* **i18n:** add Hindi (hi) translations batch 23 (32 keys) (squashed) ([f1e9039](https://github.com/HankHuang0516/EClaw/commit/f1e9039ef9f9b5e4db9e47871ce76a4fbe0ad8fe))

# [1.514.0](https://github.com/HankHuang0516/EClaw/compare/v1.513.0...v1.514.0) (2026-03-29)


### Features

* **i18n:** add Arabic (ar) translations batch 23 (32 keys) (squashed) ([8b52d07](https://github.com/HankHuang0516/EClaw/commit/8b52d07fc8ab1cbf08625d2193aa4aa3d404b1e2))

# [1.513.0](https://github.com/HankHuang0516/EClaw/compare/v1.512.0...v1.513.0) (2026-03-29)


### Features

* **i18n:** add Hindi (hi) translations batch 22 (32 keys) (squashed) ([6ca9ced](https://github.com/HankHuang0516/EClaw/commit/6ca9cedcd64c8722bf896fb74a3786074ce2a933))

# [1.512.0](https://github.com/HankHuang0516/EClaw/compare/v1.511.0...v1.512.0) (2026-03-29)


### Features

* **i18n:** add Arabic (ar) translations batch 22 (32 keys) (squashed) ([8623b09](https://github.com/HankHuang0516/EClaw/commit/8623b0968d0ed91c8af279263fad03b94623a399))

# [1.511.0](https://github.com/HankHuang0516/EClaw/compare/v1.510.0...v1.511.0) (2026-03-29)


### Features

* **i18n:** add Hindi (hi) translations batch 21 (32 keys) (squashed) ([fbdf498](https://github.com/HankHuang0516/EClaw/commit/fbdf4983c0a4bd1abc3ee94cf6e97da707f066c9))

# [1.510.0](https://github.com/HankHuang0516/EClaw/compare/v1.509.0...v1.510.0) (2026-03-29)


### Features

* **i18n:** add Arabic (ar) translations batch 21 (32 keys) (squashed) ([aa8043e](https://github.com/HankHuang0516/EClaw/commit/aa8043e05d64be3280e7b50ebf8d4b2d7c320a89))

# [1.509.0](https://github.com/HankHuang0516/EClaw/compare/v1.508.0...v1.509.0) (2026-03-29)


### Features

* **i18n:** add French translations (batch 15) ([#960](https://github.com/HankHuang0516/EClaw/issues/960)) ([0809728](https://github.com/HankHuang0516/EClaw/commit/08097287dd12a04bd506374f6d64e138e76b7040)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.508.0](https://github.com/HankHuang0516/EClaw/compare/v1.507.0...v1.508.0) (2026-03-29)


### Features

* **i18n:** add Hindi (hi) translations batch 20 (38 keys) (squashed) ([8b93daa](https://github.com/HankHuang0516/EClaw/commit/8b93daa094dfd421dee9788587d2c2cce1e24bc8))

# [1.507.0](https://github.com/HankHuang0516/EClaw/compare/v1.506.0...v1.507.0) (2026-03-29)


### Features

* **i18n:** add Arabic (ar) translations batch 20 (38 keys) (squashed) ([80955f3](https://github.com/HankHuang0516/EClaw/commit/80955f3a327d774e8a3702c1f4eb1e0473e38863))

# [1.506.0](https://github.com/HankHuang0516/EClaw/compare/v1.505.0...v1.506.0) (2026-03-29)


### Features

* **i18n:** add Hindi (hi) translations batch 19 (38 keys) (squashed) ([e8d146c](https://github.com/HankHuang0516/EClaw/commit/e8d146c7ae9406b3eeb55b00ff1246d41c488330))

# [1.505.0](https://github.com/HankHuang0516/EClaw/compare/v1.504.0...v1.505.0) (2026-03-29)


### Features

* **i18n:** add Arabic (ar) translations batch 19 (38 keys) (squashed) ([d98519a](https://github.com/HankHuang0516/EClaw/commit/d98519a7c5b970ca9aab741ae594d9b81ccea699))

# [1.504.0](https://github.com/HankHuang0516/EClaw/compare/v1.503.0...v1.504.0) (2026-03-29)


### Features

* **i18n:** add Hindi (hi) translations batch 18 (38 keys) (squashed) ([8345f2a](https://github.com/HankHuang0516/EClaw/commit/8345f2a1f709de654b0d0abb4412e4b5fe18d72e))

# [1.503.0](https://github.com/HankHuang0516/EClaw/compare/v1.502.0...v1.503.0) (2026-03-29)


### Features

* **i18n:** add Arabic (ar) translations batch 18 (38 keys) (squashed) ([d58381c](https://github.com/HankHuang0516/EClaw/commit/d58381ca57aacd58f7c531a1a339cd38413bcd31))

# [1.502.0](https://github.com/HankHuang0516/EClaw/compare/v1.501.0...v1.502.0) (2026-03-29)


### Features

* **i18n:** add Hindi (hi) translations batch 17 (38 keys) (squashed) ([773d980](https://github.com/HankHuang0516/EClaw/commit/773d980a1f78c67f94ad0762b81ba686f9c82dbb))

# [1.501.0](https://github.com/HankHuang0516/EClaw/compare/v1.500.0...v1.501.0) (2026-03-29)


### Features

* **i18n:** add Arabic (ar) translations batch 17 (38 keys) (squashed) ([3bb32a3](https://github.com/HankHuang0516/EClaw/commit/3bb32a3ff21e3e02236c44b770568963207d9986))

# [1.500.0](https://github.com/HankHuang0516/EClaw/compare/v1.499.0...v1.500.0) (2026-03-29)


### Features

* **i18n:** add Hindi (hi) translations batch 16 (54 keys) (squashed) ([a548cb0](https://github.com/HankHuang0516/EClaw/commit/a548cb055caeaa2fcb650e065da513ae8695a97f))

# [1.499.0](https://github.com/HankHuang0516/EClaw/compare/v1.498.0...v1.499.0) (2026-03-29)


### Features

* **i18n:** add Arabic (ar) translations batch 16 (54 keys) (squashed) ([0383121](https://github.com/HankHuang0516/EClaw/commit/03831215ffad11763ebeb7fe7383523d1d315e6e))

# [1.498.0](https://github.com/HankHuang0516/EClaw/compare/v1.497.0...v1.498.0) (2026-03-29)


### Features

* **i18n:** add Hindi (hi) translations batch 15 (38 keys) (squashed) ([e4f5da1](https://github.com/HankHuang0516/EClaw/commit/e4f5da1bb2dd679956d361d71b9319ede1a71549))

# [1.497.0](https://github.com/HankHuang0516/EClaw/compare/v1.496.0...v1.497.0) (2026-03-29)


### Features

* **i18n:** add Arabic (ar) translations batch 15 (38 keys) (squashed) ([e36c157](https://github.com/HankHuang0516/EClaw/commit/e36c157ea3a209cb858346ebde3cc229a9f342fd))

# [1.496.0](https://github.com/HankHuang0516/EClaw/compare/v1.495.0...v1.496.0) (2026-03-29)


### Features

* **i18n:** add Hindi (hi) translations batch 14 (44 keys) (squashed) ([624cf80](https://github.com/HankHuang0516/EClaw/commit/624cf80a5659e9695c27aa6267980ddbb99f45ae))

# [1.495.0](https://github.com/HankHuang0516/EClaw/compare/v1.494.0...v1.495.0) (2026-03-29)


### Features

* **i18n:** add Arabic (ar) translations batch 14 (44 keys) (squashed) ([5bfac0f](https://github.com/HankHuang0516/EClaw/commit/5bfac0f004f5aebc9fc81e22365728430a369e4c))

# [1.494.0](https://github.com/HankHuang0516/EClaw/compare/v1.493.0...v1.494.0) (2026-03-29)


### Features

* **i18n:** add Hindi (hi) translations batch 13 (44 keys) (squashed) ([03cb814](https://github.com/HankHuang0516/EClaw/commit/03cb814dbe8eb23b6984ad16900d68bd1bf9a68b))

# [1.493.0](https://github.com/HankHuang0516/EClaw/compare/v1.492.0...v1.493.0) (2026-03-29)


### Features

* **i18n:** add Arabic (ar) translations batch 13 (44 keys) (squashed) ([1302f82](https://github.com/HankHuang0516/EClaw/commit/1302f8299599d1af9633b5ebd40e9d19f2e756c4))

# [1.492.0](https://github.com/HankHuang0516/EClaw/compare/v1.491.0...v1.492.0) (2026-03-29)


### Features

* **i18n:** add Hindi (hi) translations batch 12 (44 keys) (squashed) ([03ed431](https://github.com/HankHuang0516/EClaw/commit/03ed4314e846b4a445077a001f09318cf105b74b))

# [1.491.0](https://github.com/HankHuang0516/EClaw/compare/v1.490.0...v1.491.0) (2026-03-29)


### Features

* **i18n:** add Arabic (ar) translations batch 12 (44 keys) (squashed) ([6c3ec11](https://github.com/HankHuang0516/EClaw/commit/6c3ec11ca1372a2c37173c25ddd6ef77bf4b6828))

# [1.490.0](https://github.com/HankHuang0516/EClaw/compare/v1.489.0...v1.490.0) (2026-03-29)


### Features

* **i18n:** add Hindi (hi) translations batch 11 (44 keys) (squashed) ([30196f8](https://github.com/HankHuang0516/EClaw/commit/30196f8b8639174eac842a3b52556871b9fcd8f9))

# [1.489.0](https://github.com/HankHuang0516/EClaw/compare/v1.488.0...v1.489.0) (2026-03-29)


### Features

* **i18n:** add Arabic (ar) translations batch 11 (44 keys) (squashed) ([d89604d](https://github.com/HankHuang0516/EClaw/commit/d89604d1d455b9a97e008d100a6b3f6f37e7f19c))

# [1.488.0](https://github.com/HankHuang0516/EClaw/compare/v1.487.0...v1.488.0) (2026-03-29)


### Features

* **i18n:** add French translations (batch 14) ([#939](https://github.com/HankHuang0516/EClaw/issues/939)) ([e1ddd23](https://github.com/HankHuang0516/EClaw/commit/e1ddd23f02e5b004a84e0a66ac7dc3a648af0b53)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.487.0](https://github.com/HankHuang0516/EClaw/compare/v1.486.0...v1.487.0) (2026-03-29)


### Features

* **i18n:** add Hindi (hi) translations batch 10 (44 keys) (squashed) ([52db116](https://github.com/HankHuang0516/EClaw/commit/52db11621cbd574785d357be1ef28bf14de61dbd))

# [1.486.0](https://github.com/HankHuang0516/EClaw/compare/v1.485.0...v1.486.0) (2026-03-29)


### Features

* **i18n:** add Arabic (ar) translations batch 10 (44 keys) (squashed) ([8f0392a](https://github.com/HankHuang0516/EClaw/commit/8f0392a11f1d57ed22480413983f77bd5317faed))

# [1.485.0](https://github.com/HankHuang0516/EClaw/compare/v1.484.0...v1.485.0) (2026-03-29)


### Features

* **i18n:** add Hindi (hi) translations batch 9 (44 keys) (squashed) ([29a3d70](https://github.com/HankHuang0516/EClaw/commit/29a3d7046d03670901b631a56b34ff9032f7c8d7))

# [1.484.0](https://github.com/HankHuang0516/EClaw/compare/v1.483.0...v1.484.0) (2026-03-29)


### Features

* **i18n:** add Arabic (ar) translations batch 9 (44 keys) (squashed) ([74474a6](https://github.com/HankHuang0516/EClaw/commit/74474a62ecceaa2c5969c101006a978595e88d6c))

# [1.483.0](https://github.com/HankHuang0516/EClaw/compare/v1.482.0...v1.483.0) (2026-03-29)


### Features

* **i18n:** add Hindi (hi) translations batch 8 (44 keys) (squashed) ([a4138da](https://github.com/HankHuang0516/EClaw/commit/a4138da5f530ac9d9e8769cb5650a30dd827245c))

# [1.482.0](https://github.com/HankHuang0516/EClaw/compare/v1.481.0...v1.482.0) (2026-03-29)


### Features

* **i18n:** add Arabic (ar) translations batch 8 (44 keys) (squashed) ([d01ab29](https://github.com/HankHuang0516/EClaw/commit/d01ab2969a51309bb255564f47540f2666e276c7))

# [1.481.0](https://github.com/HankHuang0516/EClaw/compare/v1.480.0...v1.481.0) (2026-03-29)


### Features

* **i18n:** add Hindi (hi) translations batch 7 (44 keys) (squashed) ([31f18e7](https://github.com/HankHuang0516/EClaw/commit/31f18e7cbb1c7f0c8dcaca36b43423829f7ad32b))

# [1.480.0](https://github.com/HankHuang0516/EClaw/compare/v1.479.0...v1.480.0) (2026-03-29)


### Features

* **i18n:** add Arabic (ar) translations batch 7 (44 keys) (squashed) ([03899a9](https://github.com/HankHuang0516/EClaw/commit/03899a98bad1a5ca58bd95330dcb0cc8e3a1300b))

# [1.479.0](https://github.com/HankHuang0516/EClaw/compare/v1.478.0...v1.479.0) (2026-03-29)


### Features

* **i18n:** add Hindi (hi) translations batch 6 (45 keys) (squashed) ([8723a91](https://github.com/HankHuang0516/EClaw/commit/8723a9180791d5e75a5ea3835523dddb919517b6))

# [1.478.0](https://github.com/HankHuang0516/EClaw/compare/v1.477.0...v1.478.0) (2026-03-29)


### Features

* **i18n:** add Arabic (ar) translations batch 6 (45 keys) (squashed) ([7ee695e](https://github.com/HankHuang0516/EClaw/commit/7ee695ef2f2bf33a3a8fd6ed78be7c3add63755d))

# [1.477.0](https://github.com/HankHuang0516/EClaw/compare/v1.476.0...v1.477.0) (2026-03-29)


### Features

* **i18n:** add Hindi (hi) translations batch 5 (50 keys) (squashed) ([85de1dc](https://github.com/HankHuang0516/EClaw/commit/85de1dc5ca40256b7d893b684f87141474d2b64f))

# [1.476.0](https://github.com/HankHuang0516/EClaw/compare/v1.475.0...v1.476.0) (2026-03-29)


### Features

* **i18n:** add Arabic (ar) translations batch 5 (50 keys) (squashed) ([92aa7de](https://github.com/HankHuang0516/EClaw/commit/92aa7de135a63133a2801dd6308a3b43b2b1fede))

# [1.475.0](https://github.com/HankHuang0516/EClaw/compare/v1.474.0...v1.475.0) (2026-03-29)


### Features

* **i18n:** add Hindi (hi) translations batch 4 (50 keys) (squashed) ([dbcb801](https://github.com/HankHuang0516/EClaw/commit/dbcb801e1cc3b1294c59ca5768f8768193247f2c))

# [1.474.0](https://github.com/HankHuang0516/EClaw/compare/v1.473.0...v1.474.0) (2026-03-29)


### Features

* **i18n:** add Arabic (ar) translations batch 4 (50 keys) (squashed) ([cd78b4d](https://github.com/HankHuang0516/EClaw/commit/cd78b4d3fe4e4b54f0ea2a8467ef595ad861d870))

# [1.473.0](https://github.com/HankHuang0516/EClaw/compare/v1.472.0...v1.473.0) (2026-03-29)


### Features

* **i18n:** add Hindi (hi) translations batch 3 (50 keys) (squashed) ([0d3ec3c](https://github.com/HankHuang0516/EClaw/commit/0d3ec3cf47dec44c0019b527d19c2ea0937a7c96))

# [1.472.0](https://github.com/HankHuang0516/EClaw/compare/v1.471.0...v1.472.0) (2026-03-29)


### Features

* **i18n:** add Arabic (ar) translations batch 3 (50 keys) (squashed) ([595eff4](https://github.com/HankHuang0516/EClaw/commit/595eff4aa1ce03ba9f882e2b6fdbc8c250ec046c))

# [1.471.0](https://github.com/HankHuang0516/EClaw/compare/v1.470.0...v1.471.0) (2026-03-29)


### Features

* **i18n:** add Arabic (ar) translations batch 2 (50 keys) (squashed) ([96934cd](https://github.com/HankHuang0516/EClaw/commit/96934cd29fcf3ef40ce63b3d4004247134298b3d))
* **i18n:** add Hindi (hi) translations batch 2 (50 keys) (squashed) ([29f0417](https://github.com/HankHuang0516/EClaw/commit/29f041700d16bb5e0b11db7256fcdf1958ff62b9))

# [1.470.0](https://github.com/HankHuang0516/EClaw/compare/v1.469.0...v1.470.0) (2026-03-29)


### Features

* **i18n:** add Arabic (ar) translations batch 1 (50 keys) (squashed) ([a626ab6](https://github.com/HankHuang0516/EClaw/commit/a626ab62bf0e027c4510feb1ca67230ff382cf3e))

# [1.469.0](https://github.com/HankHuang0516/EClaw/compare/v1.468.0...v1.469.0) (2026-03-29)


### Features

* **i18n:** add French translations (batch 13) ([#925](https://github.com/HankHuang0516/EClaw/issues/925)) ([da8e449](https://github.com/HankHuang0516/EClaw/commit/da8e449373b62cffd97a477cacb1ec554f949d3c)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.468.0](https://github.com/HankHuang0516/EClaw/compare/v1.467.0...v1.468.0) (2026-03-29)


### Features

* **i18n:** add Hindi (hi) translations batch 1 (50 keys) (squashed) ([413ab64](https://github.com/HankHuang0516/EClaw/commit/413ab64059c05e69714089f446929d6bcbe9ea73))

# [1.467.0](https://github.com/HankHuang0516/EClaw/compare/v1.466.0...v1.467.0) (2026-03-29)


### Features

* **i18n:** add French translations (batch 12) ([#922](https://github.com/HankHuang0516/EClaw/issues/922)) ([89b62ab](https://github.com/HankHuang0516/EClaw/commit/89b62ab2a623fb2e696accf99bbf68c3968a19e4)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.466.0](https://github.com/HankHuang0516/EClaw/compare/v1.465.4...v1.466.0) (2026-03-29)


### Features

* **i18n:** add French translations (batch 11) ([#920](https://github.com/HankHuang0516/EClaw/issues/920)) ([1f3aa49](https://github.com/HankHuang0516/EClaw/commit/1f3aa49f5ec33ed1d5f5e40254945dba7bceecce)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

## [1.465.4](https://github.com/HankHuang0516/EClaw/compare/v1.465.3...v1.465.4) (2026-03-29)


### Bug Fixes

* **skill-doc:** remove non-existent TODO/rule-add/soul-add/skill-add from API doc ([#917](https://github.com/HankHuang0516/EClaw/issues/917)) ([fbed989](https://github.com/HankHuang0516/EClaw/commit/fbed989c84eea8316868e6f23a7e23905f0296ab))

## [1.465.3](https://github.com/HankHuang0516/EClaw/compare/v1.465.2...v1.465.3) (2026-03-29)


### Bug Fixes

* **csp:** relax CSP for public note pages to allow bot scripts ([#916](https://github.com/HankHuang0516/EClaw/issues/916)) ([98bdd3e](https://github.com/HankHuang0516/EClaw/commit/98bdd3ea27dd8147c287b6f379a8e9727bd7054c))

## [1.465.2](https://github.com/HankHuang0516/EClaw/compare/v1.465.1...v1.465.2) (2026-03-29)


### Bug Fixes

* **mission:** clear/delete category now saves immediately with undo UX ([#915](https://github.com/HankHuang0516/EClaw/issues/915)) ([0d4572c](https://github.com/HankHuang0516/EClaw/commit/0d4572cf9e98dbeb107ae6470e898d78452c898d))

## [1.465.1](https://github.com/HankHuang0516/EClaw/compare/v1.465.0...v1.465.1) (2026-03-29)


### Bug Fixes

* **note:** unify POST /note/add and PUT /note/page endpoints ([#914](https://github.com/HankHuang0516/EClaw/issues/914)) ([904aa19](https://github.com/HankHuang0516/EClaw/commit/904aa197126baffda175526c8316363359b2fd57))

# [1.465.0](https://github.com/HankHuang0516/EClaw/compare/v1.464.0...v1.465.0) (2026-03-29)


### Features

* **note-page:** require script description from bots, show in consent banner ([#913](https://github.com/HankHuang0516/EClaw/issues/913)) ([9b948db](https://github.com/HankHuang0516/EClaw/commit/9b948dbc7001cf1068a9712a763bac8e35df0ede))

# [1.464.0](https://github.com/HankHuang0516/EClaw/compare/v1.463.0...v1.464.0) (2026-03-29)


### Features

* **note-page:** consent-gated script execution for public note pages ([#912](https://github.com/HankHuang0516/EClaw/issues/912)) ([db7faf6](https://github.com/HankHuang0516/EClaw/commit/db7faf665e4a59f7c96014b281b67973c0129173))

# [1.463.0](https://github.com/HankHuang0516/EClaw/compare/v1.462.0...v1.463.0) (2026-03-29)


### Features

* **i18n:** add French translations (batch 10) ([3a219d4](https://github.com/HankHuang0516/EClaw/commit/3a219d4ce49c77193a4e82bacec6a004059a189e))

# [1.462.0](https://github.com/HankHuang0516/EClaw/compare/v1.461.0...v1.462.0) (2026-03-28)


### Features

* **i18n:** add French translations (batch 9) ([bdd01d5](https://github.com/HankHuang0516/EClaw/commit/bdd01d516eb580e97dd8aca08cb0f55dc85b017c))

# [1.461.0](https://github.com/HankHuang0516/EClaw/compare/v1.460.0...v1.461.0) (2026-03-28)


### Features

* **i18n:** add French translations (batch 8) ([136656f](https://github.com/HankHuang0516/EClaw/commit/136656f1658a7388cc24ecc475f7c7ce6f45b2eb))

# [1.460.0](https://github.com/HankHuang0516/EClaw/compare/v1.459.0...v1.460.0) (2026-03-28)


### Features

* **i18n:** add French translations (batch 7) ([#907](https://github.com/HankHuang0516/EClaw/issues/907)) ([7569bf2](https://github.com/HankHuang0516/EClaw/commit/7569bf29f3826be63f911b990815be39f7ad31dc)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.459.0](https://github.com/HankHuang0516/EClaw/compare/v1.458.0...v1.459.0) (2026-03-28)


### Features

* **i18n:** add French translations (batch 6) ([#906](https://github.com/HankHuang0516/EClaw/issues/906)) ([4b1c989](https://github.com/HankHuang0516/EClaw/commit/4b1c9894d772c59bd92ff6b1e58bbd347dc933c1)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.458.0](https://github.com/HankHuang0516/EClaw/compare/v1.457.0...v1.458.0) (2026-03-28)


### Features

* **i18n:** add French translations (batch 5) ([#905](https://github.com/HankHuang0516/EClaw/issues/905)) ([6244e7d](https://github.com/HankHuang0516/EClaw/commit/6244e7d188f0b7c90a5ff7506121500cad1c38ed)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.457.0](https://github.com/HankHuang0516/EClaw/compare/v1.456.0...v1.457.0) (2026-03-28)


### Features

* **i18n:** add French translations (batch 4) ([#904](https://github.com/HankHuang0516/EClaw/issues/904)) ([efe5cb1](https://github.com/HankHuang0516/EClaw/commit/efe5cb132b6921b48d78ae0466e38caad7c933e3)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.456.0](https://github.com/HankHuang0516/EClaw/compare/v1.455.0...v1.456.0) (2026-03-28)


### Features

* **i18n:** add French translations (batch 3) ([#903](https://github.com/HankHuang0516/EClaw/issues/903)) ([ffc7571](https://github.com/HankHuang0516/EClaw/commit/ffc7571b91e04ea6f40e0a7ba30a7f2d47e2d2ff)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.455.0](https://github.com/HankHuang0516/EClaw/compare/v1.454.0...v1.455.0) (2026-03-28)


### Features

* **i18n:** add French translations (batch 2) ([#902](https://github.com/HankHuang0516/EClaw/issues/902)) ([977c7ab](https://github.com/HankHuang0516/EClaw/commit/977c7ab01a3c91fe1f5c0f5d6ac8e22f6845ce3a)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.454.0](https://github.com/HankHuang0516/EClaw/compare/v1.453.0...v1.454.0) (2026-03-28)


### Features

* **i18n:** add French translations (batch 1) ([#901](https://github.com/HankHuang0516/EClaw/issues/901)) ([8cb2174](https://github.com/HankHuang0516/EClaw/commit/8cb2174c7b512fe8faaa540858bd29b5b476c30a)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.453.0](https://github.com/HankHuang0516/EClaw/compare/v1.452.0...v1.453.0) (2026-03-28)


### Features

* **i18n:** add French translations (batch 2) ([#898](https://github.com/HankHuang0516/EClaw/issues/898)) ([ae4d176](https://github.com/HankHuang0516/EClaw/commit/ae4d176f2eb8e532bbd3f3f10364dfff61fc362e)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.452.0](https://github.com/HankHuang0516/EClaw/compare/v1.451.0...v1.452.0) (2026-03-28)


### Features

* **i18n:** add French translations (batch 2) ([#896](https://github.com/HankHuang0516/EClaw/issues/896)) ([36a46cc](https://github.com/HankHuang0516/EClaw/commit/36a46cc0a6e41700150c18751ae4e22f8c30f2cc)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.451.0](https://github.com/HankHuang0516/EClaw/compare/v1.450.2...v1.451.0) (2026-03-28)


### Features

* **i18n:** add French translations (batch 1) ([#895](https://github.com/HankHuang0516/EClaw/issues/895)) ([26a0746](https://github.com/HankHuang0516/EClaw/commit/26a0746f858ab7fafefdb1ae586332f64211d4ce)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

## [1.450.2](https://github.com/HankHuang0516/EClaw/compare/v1.450.1...v1.450.2) (2026-03-28)


### Bug Fixes

* **i18n:** fix es section premature close and merge orphaned Spanish keys ([#894](https://github.com/HankHuang0516/EClaw/issues/894)) ([7b1c3c7](https://github.com/HankHuang0516/EClaw/commit/7b1c3c7817212f2496cebd006c1ed949d284e49d)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

## [1.450.1](https://github.com/HankHuang0516/EClaw/compare/v1.450.0...v1.450.1) (2026-03-28)


### Bug Fixes

* **i18n:** remove orphaned content block from fr/es boundary ([#893](https://github.com/HankHuang0516/EClaw/issues/893)) ([87cfbfc](https://github.com/HankHuang0516/EClaw/commit/87cfbfc80cc1f3074e1a33160c60e4cefa640390)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.450.0](https://github.com/HankHuang0516/EClaw/compare/v1.449.0...v1.450.0) (2026-03-28)


### Features

* **i18n:** add German translations (batch 22f) ([#892](https://github.com/HankHuang0516/EClaw/issues/892)) ([c739858](https://github.com/HankHuang0516/EClaw/commit/c739858739b52d5a6ddb65c1c80a8ae9f93b5fe6)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.449.0](https://github.com/HankHuang0516/EClaw/compare/v1.448.0...v1.449.0) (2026-03-28)


### Features

* **i18n:** add German translations (batch 22e) ([#891](https://github.com/HankHuang0516/EClaw/issues/891)) ([2d17c3d](https://github.com/HankHuang0516/EClaw/commit/2d17c3dd1bc1cbeb60a44286df6edd4141d45c7b)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.448.0](https://github.com/HankHuang0516/EClaw/compare/v1.447.0...v1.448.0) (2026-03-28)


### Features

* **i18n:** add German translations (batch 22c) ([#890](https://github.com/HankHuang0516/EClaw/issues/890)) ([d8f5a35](https://github.com/HankHuang0516/EClaw/commit/d8f5a3572ad4da15f3f487be742545db3cb1fe16)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.447.0](https://github.com/HankHuang0516/EClaw/compare/v1.446.0...v1.447.0) (2026-03-28)


### Features

* **i18n:** add German translations (batch 22b) ([#889](https://github.com/HankHuang0516/EClaw/issues/889)) ([720782a](https://github.com/HankHuang0516/EClaw/commit/720782abeb10536f93502135f1c0807acb8e4182)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.446.0](https://github.com/HankHuang0516/EClaw/compare/v1.445.0...v1.446.0) (2026-03-28)


### Features

* **i18n:** add German translations (batch 22a) ([#887](https://github.com/HankHuang0516/EClaw/issues/887)) ([235bec5](https://github.com/HankHuang0516/EClaw/commit/235bec5908a709f3fc94525ee47ab4259e5245b1)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.445.0](https://github.com/HankHuang0516/EClaw/compare/v1.444.0...v1.445.0) (2026-03-28)


### Features

* **i18n:** add German translations (batch 21z) ([#886](https://github.com/HankHuang0516/EClaw/issues/886)) ([db9a39c](https://github.com/HankHuang0516/EClaw/commit/db9a39c482b16e98b5a9d951ea01d9db1e8feb7e)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.444.0](https://github.com/HankHuang0516/EClaw/compare/v1.443.0...v1.444.0) (2026-03-28)


### Features

* **i18n:** add German translations (batch 21y) ([#885](https://github.com/HankHuang0516/EClaw/issues/885)) ([df1a260](https://github.com/HankHuang0516/EClaw/commit/df1a2603b5a8e25e5bc425d624c9e2de836b6c77)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.443.0](https://github.com/HankHuang0516/EClaw/compare/v1.442.0...v1.443.0) (2026-03-28)


### Features

* **i18n:** add German translations (batch 21x) ([#884](https://github.com/HankHuang0516/EClaw/issues/884)) ([c7b15dd](https://github.com/HankHuang0516/EClaw/commit/c7b15dd45f73eae707e7b9587993987847b37c7b)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.442.0](https://github.com/HankHuang0516/EClaw/compare/v1.441.0...v1.442.0) (2026-03-28)


### Features

* **i18n:** add German translations (batch 21w) ([#883](https://github.com/HankHuang0516/EClaw/issues/883)) ([078d23e](https://github.com/HankHuang0516/EClaw/commit/078d23e65481fbb439a46b01ae70e512be2e18ca)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.441.0](https://github.com/HankHuang0516/EClaw/compare/v1.440.0...v1.441.0) (2026-03-28)


### Features

* **i18n:** add German translations (batch 21v) ([#882](https://github.com/HankHuang0516/EClaw/issues/882)) ([ca67baf](https://github.com/HankHuang0516/EClaw/commit/ca67bafc7567149295dfe4f052dbf0c64d9e1cb8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.440.0](https://github.com/HankHuang0516/EClaw/compare/v1.439.0...v1.440.0) (2026-03-28)


### Features

* **i18n:** add German translations (batch 21u) ([#881](https://github.com/HankHuang0516/EClaw/issues/881)) ([53748f4](https://github.com/HankHuang0516/EClaw/commit/53748f47db6d13566317d03b4d3cf765e20fe3ef)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.439.0](https://github.com/HankHuang0516/EClaw/compare/v1.438.0...v1.439.0) (2026-03-28)


### Features

* **i18n:** add German translations (batch 21t) ([#880](https://github.com/HankHuang0516/EClaw/issues/880)) ([9e94381](https://github.com/HankHuang0516/EClaw/commit/9e94381c435a45b9e238810acac0c24700138225)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.438.0](https://github.com/HankHuang0516/EClaw/compare/v1.437.0...v1.438.0) (2026-03-28)


### Features

* **i18n:** add German translations (batch 21s) ([#879](https://github.com/HankHuang0516/EClaw/issues/879)) ([cd709a3](https://github.com/HankHuang0516/EClaw/commit/cd709a3de45cf359b3ac0c2ff12e3efd38ce98f4)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.437.0](https://github.com/HankHuang0516/EClaw/compare/v1.436.0...v1.437.0) (2026-03-28)


### Features

* **i18n:** add German translations (batch 21r) ([#878](https://github.com/HankHuang0516/EClaw/issues/878)) ([c01c3bb](https://github.com/HankHuang0516/EClaw/commit/c01c3bb40c9f7a0de1b04d7572323925dd6842ad)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.436.0](https://github.com/HankHuang0516/EClaw/compare/v1.435.0...v1.436.0) (2026-03-28)


### Features

* **i18n:** add German translations (batch 21q) ([#877](https://github.com/HankHuang0516/EClaw/issues/877)) ([702a3a8](https://github.com/HankHuang0516/EClaw/commit/702a3a827bdff000e24ff948dda8e1802e180eb4)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.435.0](https://github.com/HankHuang0516/EClaw/compare/v1.434.0...v1.435.0) (2026-03-28)


### Features

* **i18n:** add German translations (batch 21p) ([#876](https://github.com/HankHuang0516/EClaw/issues/876)) ([313788f](https://github.com/HankHuang0516/EClaw/commit/313788f2b59bcb4308f64868a39942daa4ea4b56)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.434.0](https://github.com/HankHuang0516/EClaw/compare/v1.433.0...v1.434.0) (2026-03-28)


### Features

* **i18n:** add German translations (batch 21o) ([#875](https://github.com/HankHuang0516/EClaw/issues/875)) ([5907a8c](https://github.com/HankHuang0516/EClaw/commit/5907a8cd0f1e0121d5946500ae1647a78403a2c2)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.433.0](https://github.com/HankHuang0516/EClaw/compare/v1.432.0...v1.433.0) (2026-03-28)


### Features

* **i18n:** add German translations (batch 21n) ([#874](https://github.com/HankHuang0516/EClaw/issues/874)) ([87e0c48](https://github.com/HankHuang0516/EClaw/commit/87e0c48548afa9020a9e201e659c367b117c3d0f)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.432.0](https://github.com/HankHuang0516/EClaw/compare/v1.431.0...v1.432.0) (2026-03-28)


### Features

* **i18n:** add German translations (batch 21m) ([#873](https://github.com/HankHuang0516/EClaw/issues/873)) ([156bbd5](https://github.com/HankHuang0516/EClaw/commit/156bbd5cf15c867712c466df9e2e0cfa0c0f205a)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.431.0](https://github.com/HankHuang0516/EClaw/compare/v1.430.0...v1.431.0) (2026-03-28)


### Features

* **i18n:** add German translations (batch 21l) ([#872](https://github.com/HankHuang0516/EClaw/issues/872)) ([4267583](https://github.com/HankHuang0516/EClaw/commit/42675838edb79033d27ccdfcb48a6e22067f1be0)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.430.0](https://github.com/HankHuang0516/EClaw/compare/v1.429.0...v1.430.0) (2026-03-28)


### Features

* **i18n:** add German translations (batch 21k) ([#871](https://github.com/HankHuang0516/EClaw/issues/871)) ([3290cf8](https://github.com/HankHuang0516/EClaw/commit/3290cf8fc98dce2b0b2cac2d2daf7b7443a59d83)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.429.0](https://github.com/HankHuang0516/EClaw/compare/v1.428.0...v1.429.0) (2026-03-28)


### Features

* **i18n:** add German translations (batch 21j) ([#870](https://github.com/HankHuang0516/EClaw/issues/870)) ([b253fa3](https://github.com/HankHuang0516/EClaw/commit/b253fa34b09fcd0a5c7bc106d5a4d0a66489dd9c)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.428.0](https://github.com/HankHuang0516/EClaw/compare/v1.427.0...v1.428.0) (2026-03-28)


### Features

* **i18n:** add German translations (batch 21i) ([#869](https://github.com/HankHuang0516/EClaw/issues/869)) ([a8f99aa](https://github.com/HankHuang0516/EClaw/commit/a8f99aa2f2a974a36bf1b49f1a9a02d802adb741)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.427.0](https://github.com/HankHuang0516/EClaw/compare/v1.426.0...v1.427.0) (2026-03-28)


### Features

* **i18n:** add German translations (batch 21h) ([#868](https://github.com/HankHuang0516/EClaw/issues/868)) ([873df3d](https://github.com/HankHuang0516/EClaw/commit/873df3d790993452ce4971feed05edc5e0ed59fb)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.426.0](https://github.com/HankHuang0516/EClaw/compare/v1.425.0...v1.426.0) (2026-03-28)


### Features

* **i18n:** add German translations (batch 21g) ([#867](https://github.com/HankHuang0516/EClaw/issues/867)) ([83cdf22](https://github.com/HankHuang0516/EClaw/commit/83cdf2202794454a32f684a3d7ddab3b828b1b30)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.425.0](https://github.com/HankHuang0516/EClaw/compare/v1.424.0...v1.425.0) (2026-03-28)


### Features

* **i18n:** add German translations (batch 21f) ([#865](https://github.com/HankHuang0516/EClaw/issues/865)) ([3d627ab](https://github.com/HankHuang0516/EClaw/commit/3d627abc202a4e72d6308ee00a48761c4c42679d)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.424.0](https://github.com/HankHuang0516/EClaw/compare/v1.423.0...v1.424.0) (2026-03-28)


### Features

* **i18n:** add German translations (batch 21e) ([#864](https://github.com/HankHuang0516/EClaw/issues/864)) ([b9d345f](https://github.com/HankHuang0516/EClaw/commit/b9d345f89f0f219350d59c997e0c4bdebf6c2704)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.423.0](https://github.com/HankHuang0516/EClaw/compare/v1.422.0...v1.423.0) (2026-03-28)


### Features

* **i18n:** add German translations (batch 21d) ([#863](https://github.com/HankHuang0516/EClaw/issues/863)) ([1cf33f3](https://github.com/HankHuang0516/EClaw/commit/1cf33f368289acaa71b686fc84528356c3e88d52)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.422.0](https://github.com/HankHuang0516/EClaw/compare/v1.421.0...v1.422.0) (2026-03-28)


### Features

* **i18n:** add German translations (batch 21c) ([#862](https://github.com/HankHuang0516/EClaw/issues/862)) ([70b2000](https://github.com/HankHuang0516/EClaw/commit/70b2000e7c8f1fcd0d6410402ca3a0e8f2d72aeb)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.421.0](https://github.com/HankHuang0516/EClaw/compare/v1.420.0...v1.421.0) (2026-03-28)


### Features

* **i18n:** add German translations (batch 21b) ([#861](https://github.com/HankHuang0516/EClaw/issues/861)) ([47370de](https://github.com/HankHuang0516/EClaw/commit/47370de1c5aab925843bd00969b815cb7584bd6a)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.420.0](https://github.com/HankHuang0516/EClaw/compare/v1.419.0...v1.420.0) (2026-03-28)


### Features

* **i18n:** add German translations (batch 21a) ([#860](https://github.com/HankHuang0516/EClaw/issues/860)) ([a431562](https://github.com/HankHuang0516/EClaw/commit/a4315621eb0d9a373770bb4085ac9f94d935f734)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.419.0](https://github.com/HankHuang0516/EClaw/compare/v1.418.0...v1.419.0) (2026-03-28)


### Features

* **i18n:** add German translations (batch 20) ([#858](https://github.com/HankHuang0516/EClaw/issues/858)) ([f61472f](https://github.com/HankHuang0516/EClaw/commit/f61472f0bfbafa33fe906e65494d676c52cfb05d)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.418.0](https://github.com/HankHuang0516/EClaw/compare/v1.417.0...v1.418.0) (2026-03-28)


### Features

* **i18n:** add German translations (batch 19) ([#857](https://github.com/HankHuang0516/EClaw/issues/857)) ([54acf80](https://github.com/HankHuang0516/EClaw/commit/54acf80a60ba304828cd35991e7895ebd8f9971c)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.417.0](https://github.com/HankHuang0516/EClaw/compare/v1.416.0...v1.417.0) (2026-03-28)


### Features

* **i18n:** add German translations (batch 18) ([#856](https://github.com/HankHuang0516/EClaw/issues/856)) ([cf28cef](https://github.com/HankHuang0516/EClaw/commit/cf28cefd813dc00e7cd80ba96cb47bc9f295bceb)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.416.0](https://github.com/HankHuang0516/EClaw/compare/v1.415.0...v1.416.0) (2026-03-28)


### Features

* **i18n:** add German translations (batch 17) ([#855](https://github.com/HankHuang0516/EClaw/issues/855)) ([d1be08d](https://github.com/HankHuang0516/EClaw/commit/d1be08d8c275e7f35e6956010138a6a47dd7ab2e)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.415.0](https://github.com/HankHuang0516/EClaw/compare/v1.414.0...v1.415.0) (2026-03-28)


### Features

* **i18n:** add German translations (batch 16) ([#854](https://github.com/HankHuang0516/EClaw/issues/854)) ([d060ad2](https://github.com/HankHuang0516/EClaw/commit/d060ad215ecddeed38cf6cfee2fd22f68f3f3569)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.414.0](https://github.com/HankHuang0516/EClaw/compare/v1.413.0...v1.414.0) (2026-03-28)


### Features

* **i18n:** add German translations (batch 15) ([#853](https://github.com/HankHuang0516/EClaw/issues/853)) ([02f2f3a](https://github.com/HankHuang0516/EClaw/commit/02f2f3a3ee606f8f9634fddbb94bf9e135de37f9)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.413.0](https://github.com/HankHuang0516/EClaw/compare/v1.412.0...v1.413.0) (2026-03-28)


### Features

* **i18n:** add German translations (batch 14) ([#852](https://github.com/HankHuang0516/EClaw/issues/852)) ([fcd891c](https://github.com/HankHuang0516/EClaw/commit/fcd891cfe1271bbd3885418976873fd6dd1e9c03)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.412.0](https://github.com/HankHuang0516/EClaw/compare/v1.411.0...v1.412.0) (2026-03-28)


### Features

* **i18n:** add German translations (batch 13) ([#851](https://github.com/HankHuang0516/EClaw/issues/851)) ([116ee9b](https://github.com/HankHuang0516/EClaw/commit/116ee9bec7df4613c0280a59b4fe7b4e63be44e5)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.411.0](https://github.com/HankHuang0516/EClaw/compare/v1.410.0...v1.411.0) (2026-03-28)


### Features

* **i18n:** add German translations (batch 12) ([#850](https://github.com/HankHuang0516/EClaw/issues/850)) ([9c85b50](https://github.com/HankHuang0516/EClaw/commit/9c85b502d727cd11093e6306d97a20c06abdb998)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.410.0](https://github.com/HankHuang0516/EClaw/compare/v1.409.0...v1.410.0) (2026-03-28)


### Features

* **i18n:** add German translations (batch 11) ([#849](https://github.com/HankHuang0516/EClaw/issues/849)) ([8dd1bbb](https://github.com/HankHuang0516/EClaw/commit/8dd1bbba553f1a5cb13b9d41c449ac513d6de021)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.409.0](https://github.com/HankHuang0516/EClaw/compare/v1.408.0...v1.409.0) (2026-03-28)


### Features

* **i18n:** add German translations (batch 10) ([#848](https://github.com/HankHuang0516/EClaw/issues/848)) ([587a938](https://github.com/HankHuang0516/EClaw/commit/587a938de1861c21acd28b78fcf316a167889b43)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.408.0](https://github.com/HankHuang0516/EClaw/compare/v1.407.0...v1.408.0) (2026-03-28)


### Features

* **i18n:** add German translations (batch 9) ([#847](https://github.com/HankHuang0516/EClaw/issues/847)) ([01fc334](https://github.com/HankHuang0516/EClaw/commit/01fc33432bb1dbfe654975e74f56e8c02823fc77)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.407.0](https://github.com/HankHuang0516/EClaw/compare/v1.406.0...v1.407.0) (2026-03-28)


### Features

* **i18n:** add German translations (batch 8) ([#846](https://github.com/HankHuang0516/EClaw/issues/846)) ([f366264](https://github.com/HankHuang0516/EClaw/commit/f366264bda57bca59489d72fb3acaf2315fd4410)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.406.0](https://github.com/HankHuang0516/EClaw/compare/v1.405.0...v1.406.0) (2026-03-28)


### Features

* **i18n:** add German translations (batch 7) ([2d1ec3c](https://github.com/HankHuang0516/EClaw/commit/2d1ec3ce181c29da9df84c65eb155c4213fd371e)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.405.0](https://github.com/HankHuang0516/EClaw/compare/v1.404.0...v1.405.0) (2026-03-28)


### Features

* **i18n:** add German translations (batch 6) ([1b201c0](https://github.com/HankHuang0516/EClaw/commit/1b201c01931a82351ad0b1049d5fbb2dda2d5a6c)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.404.0](https://github.com/HankHuang0516/EClaw/compare/v1.403.0...v1.404.0) (2026-03-28)


### Features

* **i18n:** add German translations (batch 5) ([1095dfd](https://github.com/HankHuang0516/EClaw/commit/1095dfd691dd33fc1b736c7177823ade22499c85)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.403.0](https://github.com/HankHuang0516/EClaw/compare/v1.402.0...v1.403.0) (2026-03-28)


### Features

* **i18n:** add German translations (batch 4) ([c64832b](https://github.com/HankHuang0516/EClaw/commit/c64832bd09ab0cb3144f62257e2b7c0ddfdc0795)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.402.0](https://github.com/HankHuang0516/EClaw/compare/v1.401.1...v1.402.0) (2026-03-28)


### Features

* **i18n:** add German translations batch 1 (2624 keys) ([db758e4](https://github.com/HankHuang0516/EClaw/commit/db758e44914bbb99f3f7d639a7c75c59619c3f24)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

## [1.401.1](https://github.com/HankHuang0516/EClaw/compare/v1.401.0...v1.401.1) (2026-03-28)


### Bug Fixes

* **settings:** filter language chips to valid codes only ([#838](https://github.com/HankHuang0516/EClaw/issues/838)) ([8cf48f9](https://github.com/HankHuang0516/EClaw/commit/8cf48f99089b5d6ae4586c85863ef56c15d29c4b))

# [1.401.0](https://github.com/HankHuang0516/EClaw/compare/v1.400.0...v1.401.0) (2026-03-28)


### Features

* **i18n:** add Spanish translations (batch 51) ([#837](https://github.com/HankHuang0516/EClaw/issues/837)) ([45c2a76](https://github.com/HankHuang0516/EClaw/commit/45c2a76cb78cf1f0c27dfdf5c559c2beff5e0f65)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.400.0](https://github.com/HankHuang0516/EClaw/compare/v1.399.0...v1.400.0) (2026-03-28)


### Features

* **i18n:** add Spanish translations (batch 50) ([#836](https://github.com/HankHuang0516/EClaw/issues/836)) ([b11fe57](https://github.com/HankHuang0516/EClaw/commit/b11fe574dc7c56e8b6c3a16afdd4e03a0d277384)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.399.0](https://github.com/HankHuang0516/EClaw/compare/v1.398.0...v1.399.0) (2026-03-28)


### Features

* **i18n:** add Spanish translations (batch 49) ([#835](https://github.com/HankHuang0516/EClaw/issues/835)) ([fc30543](https://github.com/HankHuang0516/EClaw/commit/fc30543c4dc6bcc5026e13daa3e23ca133fcc58f)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.398.0](https://github.com/HankHuang0516/EClaw/compare/v1.397.0...v1.398.0) (2026-03-28)


### Features

* **i18n:** add Spanish translations (batch 48) ([#834](https://github.com/HankHuang0516/EClaw/issues/834)) ([caf489f](https://github.com/HankHuang0516/EClaw/commit/caf489ffa397156904ff0fb0ad4e2f612e853e01)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.397.0](https://github.com/HankHuang0516/EClaw/compare/v1.396.0...v1.397.0) (2026-03-28)


### Features

* **i18n:** add Spanish translations (batch 47) ([#833](https://github.com/HankHuang0516/EClaw/issues/833)) ([5b9068a](https://github.com/HankHuang0516/EClaw/commit/5b9068ac4bc7fc7ef7e24276550689b8a08c245d)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.396.0](https://github.com/HankHuang0516/EClaw/compare/v1.395.0...v1.396.0) (2026-03-28)


### Features

* **i18n:** add Spanish translations (batch 46) ([#832](https://github.com/HankHuang0516/EClaw/issues/832)) ([0f29d0f](https://github.com/HankHuang0516/EClaw/commit/0f29d0faff184ffd311b9cdfbe9d7c7e52420231)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.395.0](https://github.com/HankHuang0516/EClaw/compare/v1.394.0...v1.395.0) (2026-03-28)


### Features

* **i18n:** add Spanish translations (batch 45) ([#831](https://github.com/HankHuang0516/EClaw/issues/831)) ([51e1ca0](https://github.com/HankHuang0516/EClaw/commit/51e1ca019bc7c4a345eb189a73fef2954219acae)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.394.0](https://github.com/HankHuang0516/EClaw/compare/v1.393.0...v1.394.0) (2026-03-28)


### Features

* **i18n:** add Spanish translations (batch 44) ([#830](https://github.com/HankHuang0516/EClaw/issues/830)) ([a00a8ce](https://github.com/HankHuang0516/EClaw/commit/a00a8ce8c5c2258a9a169f4e824b5e58f709f2cb)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.393.0](https://github.com/HankHuang0516/EClaw/compare/v1.392.0...v1.393.0) (2026-03-28)


### Features

* **i18n:** add Spanish translations (batch 43) ([#829](https://github.com/HankHuang0516/EClaw/issues/829)) ([d8d0f81](https://github.com/HankHuang0516/EClaw/commit/d8d0f81921f006783efa1d9657d2ce9acc88219a)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.392.0](https://github.com/HankHuang0516/EClaw/compare/v1.391.0...v1.392.0) (2026-03-28)


### Features

* **i18n:** add Spanish translations (batch 42) ([#828](https://github.com/HankHuang0516/EClaw/issues/828)) ([f04b515](https://github.com/HankHuang0516/EClaw/commit/f04b51552ec835575fcdf66b3b6204ef153c5802)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.391.0](https://github.com/HankHuang0516/EClaw/compare/v1.390.0...v1.391.0) (2026-03-28)


### Features

* **i18n:** add Spanish translations (batch 41) ([#827](https://github.com/HankHuang0516/EClaw/issues/827)) ([4d056ea](https://github.com/HankHuang0516/EClaw/commit/4d056eabc2ffa840be590fcd5e873ca97982513f)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.390.0](https://github.com/HankHuang0516/EClaw/compare/v1.389.0...v1.390.0) (2026-03-28)


### Features

* **i18n:** add Spanish translations (batch 40) ([#826](https://github.com/HankHuang0516/EClaw/issues/826)) ([4dcd7f6](https://github.com/HankHuang0516/EClaw/commit/4dcd7f6e0ebef6b300a06bad026a7f5a8e275da9)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.389.0](https://github.com/HankHuang0516/EClaw/compare/v1.388.0...v1.389.0) (2026-03-28)


### Features

* **i18n:** add Spanish translations (batch 39) ([#825](https://github.com/HankHuang0516/EClaw/issues/825)) ([ebf9a92](https://github.com/HankHuang0516/EClaw/commit/ebf9a92846e6e981eecf7950e70905a4103d9e15)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.388.0](https://github.com/HankHuang0516/EClaw/compare/v1.387.0...v1.388.0) (2026-03-28)


### Features

* **i18n:** add Spanish translations (batch 38) ([#824](https://github.com/HankHuang0516/EClaw/issues/824)) ([f6435b8](https://github.com/HankHuang0516/EClaw/commit/f6435b8e155a4a11f3054e98fe33fe5961f06243)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.387.0](https://github.com/HankHuang0516/EClaw/compare/v1.386.0...v1.387.0) (2026-03-28)


### Features

* **i18n:** add Spanish translations (batch 37) ([#823](https://github.com/HankHuang0516/EClaw/issues/823)) ([53fc453](https://github.com/HankHuang0516/EClaw/commit/53fc453c578996b7574783939d582ec89b4a790c)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.386.0](https://github.com/HankHuang0516/EClaw/compare/v1.385.0...v1.386.0) (2026-03-28)


### Features

* **i18n:** add Spanish translations (batch 36) ([#822](https://github.com/HankHuang0516/EClaw/issues/822)) ([d5b016f](https://github.com/HankHuang0516/EClaw/commit/d5b016ff048f8a0594465428a67c2bc6e7160e76)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.385.0](https://github.com/HankHuang0516/EClaw/compare/v1.384.0...v1.385.0) (2026-03-28)


### Features

* **i18n:** add Spanish translations (batch 35) ([#821](https://github.com/HankHuang0516/EClaw/issues/821)) ([2cc949f](https://github.com/HankHuang0516/EClaw/commit/2cc949fdfc1053b962aa7c2d6f5f8b113ea4040b)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.384.0](https://github.com/HankHuang0516/EClaw/compare/v1.383.0...v1.384.0) (2026-03-28)


### Features

* **i18n:** add Spanish translations (batch 34) ([#820](https://github.com/HankHuang0516/EClaw/issues/820)) ([9ce6b26](https://github.com/HankHuang0516/EClaw/commit/9ce6b2671e195670ca314fcb549afbe24a48e83a)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.383.0](https://github.com/HankHuang0516/EClaw/compare/v1.382.0...v1.383.0) (2026-03-28)


### Features

* **i18n:** add Spanish translations (batch 33) ([#819](https://github.com/HankHuang0516/EClaw/issues/819)) ([afb4cd1](https://github.com/HankHuang0516/EClaw/commit/afb4cd1baa7d97be2255cfc3e4cb140f8c1bd86d)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.382.0](https://github.com/HankHuang0516/EClaw/compare/v1.381.0...v1.382.0) (2026-03-28)


### Features

* **i18n:** add Spanish translations (batch 32) ([#818](https://github.com/HankHuang0516/EClaw/issues/818)) ([844588b](https://github.com/HankHuang0516/EClaw/commit/844588b76184d067dac91dcf26fa80bbf9e20f09)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.381.0](https://github.com/HankHuang0516/EClaw/compare/v1.380.0...v1.381.0) (2026-03-28)


### Features

* **i18n:** add Spanish translations (batch 31) ([#817](https://github.com/HankHuang0516/EClaw/issues/817)) ([8a2ba8c](https://github.com/HankHuang0516/EClaw/commit/8a2ba8ca3b5f248395ca10b6c180a2f5d7460279)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.380.0](https://github.com/HankHuang0516/EClaw/compare/v1.379.0...v1.380.0) (2026-03-28)


### Features

* **i18n:** add Spanish translations (batch 30) ([#816](https://github.com/HankHuang0516/EClaw/issues/816)) ([1bc81d5](https://github.com/HankHuang0516/EClaw/commit/1bc81d5074ebe4bd749682025e0ac9eb4af206a3)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.379.0](https://github.com/HankHuang0516/EClaw/compare/v1.378.0...v1.379.0) (2026-03-28)


### Features

* **i18n:** add Spanish translations (batch 29) ([#815](https://github.com/HankHuang0516/EClaw/issues/815)) ([26849be](https://github.com/HankHuang0516/EClaw/commit/26849beb58c74664413328e3d2571ffadb1f106a)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.378.0](https://github.com/HankHuang0516/EClaw/compare/v1.377.0...v1.378.0) (2026-03-28)


### Features

* **i18n:** add Spanish translations (batch 28) ([#814](https://github.com/HankHuang0516/EClaw/issues/814)) ([c18f6f1](https://github.com/HankHuang0516/EClaw/commit/c18f6f1e4025fa8b262cedec654e6b6f77bb7988)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.377.0](https://github.com/HankHuang0516/EClaw/compare/v1.376.0...v1.377.0) (2026-03-28)


### Features

* **i18n:** add Spanish translations (batch 27) ([#813](https://github.com/HankHuang0516/EClaw/issues/813)) ([dc81423](https://github.com/HankHuang0516/EClaw/commit/dc8142355252af25f1a20c3d2cba77fbc7bb26d9)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.376.0](https://github.com/HankHuang0516/EClaw/compare/v1.375.0...v1.376.0) (2026-03-28)


### Features

* **i18n:** add Spanish translations (batch 26) ([#812](https://github.com/HankHuang0516/EClaw/issues/812)) ([e5bab85](https://github.com/HankHuang0516/EClaw/commit/e5bab85a171b80a98361060a476c081dbf5545b7)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.375.0](https://github.com/HankHuang0516/EClaw/compare/v1.374.0...v1.375.0) (2026-03-28)


### Features

* **i18n:** add Spanish translations (batch 25) ([#811](https://github.com/HankHuang0516/EClaw/issues/811)) ([40eef0b](https://github.com/HankHuang0516/EClaw/commit/40eef0b3f4ee18b933878032dbf1bbf07dd27167)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.374.0](https://github.com/HankHuang0516/EClaw/compare/v1.373.0...v1.374.0) (2026-03-28)


### Features

* **i18n:** add Spanish translations (batch 24) ([#810](https://github.com/HankHuang0516/EClaw/issues/810)) ([d113f55](https://github.com/HankHuang0516/EClaw/commit/d113f5598d5417745cfbf567ba016cbdb58693c2)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.373.0](https://github.com/HankHuang0516/EClaw/compare/v1.372.0...v1.373.0) (2026-03-28)


### Features

* **i18n:** add Spanish translations (batch 23) ([#809](https://github.com/HankHuang0516/EClaw/issues/809)) ([fc0fa29](https://github.com/HankHuang0516/EClaw/commit/fc0fa2996735feffb40cc1e3f302bd8e070335e1)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.372.0](https://github.com/HankHuang0516/EClaw/compare/v1.371.0...v1.372.0) (2026-03-28)


### Features

* **i18n:** add Spanish translations (batch 22) ([#808](https://github.com/HankHuang0516/EClaw/issues/808)) ([dd7415a](https://github.com/HankHuang0516/EClaw/commit/dd7415acd802e293922aed167d7e3fb93a7593f7)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.371.0](https://github.com/HankHuang0516/EClaw/compare/v1.370.0...v1.371.0) (2026-03-28)


### Features

* **i18n:** add Spanish translations (batch 21) ([#807](https://github.com/HankHuang0516/EClaw/issues/807)) ([f489a14](https://github.com/HankHuang0516/EClaw/commit/f489a1401db21b83fe23104b0d9db254d1e3c690)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.370.0](https://github.com/HankHuang0516/EClaw/compare/v1.369.0...v1.370.0) (2026-03-28)


### Features

* **i18n:** add Spanish translations (batch 20) ([#806](https://github.com/HankHuang0516/EClaw/issues/806)) ([86fc575](https://github.com/HankHuang0516/EClaw/commit/86fc575a78c67fe74427a57aed1d168d0cc1f5c6)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.369.0](https://github.com/HankHuang0516/EClaw/compare/v1.368.0...v1.369.0) (2026-03-28)


### Features

* **i18n:** add Spanish translations (batch 19) ([#805](https://github.com/HankHuang0516/EClaw/issues/805)) ([bc3807c](https://github.com/HankHuang0516/EClaw/commit/bc3807c40450bfa31430a934a67fdc4d59f92ce6)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.368.0](https://github.com/HankHuang0516/EClaw/compare/v1.367.0...v1.368.0) (2026-03-28)


### Features

* **i18n:** add Spanish translations (batch 18) ([#804](https://github.com/HankHuang0516/EClaw/issues/804)) ([9af88f0](https://github.com/HankHuang0516/EClaw/commit/9af88f098997e9b23adb325184af90dd33f0d2d8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.367.0](https://github.com/HankHuang0516/EClaw/compare/v1.366.0...v1.367.0) (2026-03-28)


### Features

* **i18n:** add Spanish translations (batch 17) ([#803](https://github.com/HankHuang0516/EClaw/issues/803)) ([334f0b8](https://github.com/HankHuang0516/EClaw/commit/334f0b8c740a21a5f0e6214f2e767a7f219d631a)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.366.0](https://github.com/HankHuang0516/EClaw/compare/v1.365.0...v1.366.0) (2026-03-28)


### Features

* **i18n:** add Spanish translations (batch 16) ([#802](https://github.com/HankHuang0516/EClaw/issues/802)) ([eff1f66](https://github.com/HankHuang0516/EClaw/commit/eff1f664675efc2a18cc1e07aa7ac0678cfebf7e)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.365.0](https://github.com/HankHuang0516/EClaw/compare/v1.364.0...v1.365.0) (2026-03-28)


### Features

* **i18n:** add Spanish translations (batch 15) ([#801](https://github.com/HankHuang0516/EClaw/issues/801)) ([274f3b5](https://github.com/HankHuang0516/EClaw/commit/274f3b563a394d705df5ea5fd544482b54d4f3ae)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.364.0](https://github.com/HankHuang0516/EClaw/compare/v1.363.0...v1.364.0) (2026-03-28)


### Features

* **i18n:** add Spanish translations (batch 14) ([#800](https://github.com/HankHuang0516/EClaw/issues/800)) ([45072e4](https://github.com/HankHuang0516/EClaw/commit/45072e457655f087c63791b0448f212bec0e5868)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.363.0](https://github.com/HankHuang0516/EClaw/compare/v1.362.5...v1.363.0) (2026-03-28)


### Features

* **i18n:** add Spanish translations (batch 13) ([#799](https://github.com/HankHuang0516/EClaw/issues/799)) ([673e096](https://github.com/HankHuang0516/EClaw/commit/673e096e9c4285223bb41dfb7190f4e8df59d337)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

## [1.362.5](https://github.com/HankHuang0516/EClaw/compare/v1.362.4...v1.362.5) (2026-03-28)


### Bug Fixes

* **i18n:** repair broken language block structure in i18n.js ([#797](https://github.com/HankHuang0516/EClaw/issues/797)) ([63156ac](https://github.com/HankHuang0516/EClaw/commit/63156ac8ee3fbc36cc3a439a1de799dad08fcdcb))

## [1.362.4](https://github.com/HankHuang0516/EClaw/compare/v1.362.3...v1.362.4) (2026-03-28)


### Bug Fixes

* **nav:** restore Mission link in navigation bar alongside Kanban ([f41928a](https://github.com/HankHuang0516/EClaw/commit/f41928a97d03875034cfd3c0794959993708db60))

## [1.362.3](https://github.com/HankHuang0516/EClaw/compare/v1.362.2...v1.362.3) (2026-03-28)


### Bug Fixes

* **kanban:** fix timeline layout — remove overflow:hidden, improve entity grouping ([#794](https://github.com/HankHuang0516/EClaw/issues/794)) ([044fda4](https://github.com/HankHuang0516/EClaw/commit/044fda47c3244d020f3f10f8281657c995dff372))

## [1.362.2](https://github.com/HankHuang0516/EClaw/compare/v1.362.1...v1.362.2) (2026-03-28)


### Bug Fixes

* **kanban:** restore timeline CSS + view toggle a11y ([#793](https://github.com/HankHuang0516/EClaw/issues/793)) ([8e2bf9c](https://github.com/HankHuang0516/EClaw/commit/8e2bf9ce05b6d75d13d2a4b98a38ae9955aa3900)), closes [#790](https://github.com/HankHuang0516/EClaw/issues/790) [#790](https://github.com/HankHuang0516/EClaw/issues/790)


### Reverts

* restore mission.html from redirect stub to full Mission Control page ([#792](https://github.com/HankHuang0516/EClaw/issues/792)) ([f7ebf4e](https://github.com/HankHuang0516/EClaw/commit/f7ebf4e2bca3dc8634f34ea2cfe01c5a854c84cf))

## [1.362.1](https://github.com/HankHuang0516/EClaw/compare/v1.362.0...v1.362.1) (2026-03-28)


### Bug Fixes

* **kanban:** hide redundant h2 heading and automation section in Android WebView ([#789](https://github.com/HankHuang0516/EClaw/issues/789)) ([a1ab495](https://github.com/HankHuang0516/EClaw/commit/a1ab4954a24fbe9f6f2f7f53ec85f1738f0b00c0))

# [1.362.0](https://github.com/HankHuang0516/EClaw/compare/v1.361.0...v1.362.0) (2026-03-28)


### Features

* **kanban:** add FLIP card movement animation and automation timeline view ([#787](https://github.com/HankHuang0516/EClaw/issues/787)) ([a5466db](https://github.com/HankHuang0516/EClaw/commit/a5466dbf8a31b8f2079200eff1dd244997ba4c3c))
* **i18n:** add Spanish translations (batch 11) ([#786](https://github.com/HankHuang0516/EClaw/issues/786)) ([3c4be54](https://github.com/HankHuang0516/EClaw/commit/3c4be54b8d52069fe8c52bc40a3c82e4f1c21654)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add Spanish translations (batch 12) ([#788](https://github.com/HankHuang0516/EClaw/issues/788)) ([6513d13](https://github.com/HankHuang0516/EClaw/commit/6513d13ede6ef6adc56bcc0c72192a1cd5a6e75e)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.361.0](https://github.com/HankHuang0516/EClaw/compare/v1.360.0...v1.361.0) (2026-03-28)


### Features

* **i18n:** add Spanish translations (batch 10) ([#785](https://github.com/HankHuang0516/EClaw/issues/785)) ([82f3116](https://github.com/HankHuang0516/EClaw/commit/82f311659e5a9cc13eccb2f75f9bcc29dfc58d35)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.360.0](https://github.com/HankHuang0516/EClaw/compare/v1.359.0...v1.360.0) (2026-03-28)


### Features

* **admin:** add one-time migration from legacy mission + schedules to kanban cards ([#783](https://github.com/HankHuang0516/EClaw/issues/783)) ([3e97a44](https://github.com/HankHuang0516/EClaw/commit/3e97a44dfc1d71a87825bd4877271edc5dd5d027))
* **i18n:** add Spanish translations (batch 8) ([#782](https://github.com/HankHuang0516/EClaw/issues/782)) ([2437822](https://github.com/HankHuang0516/EClaw/commit/2437822e6eb556f98df4f8ddaeaec497d853f65e)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add Spanish translations (batch 9) ([#784](https://github.com/HankHuang0516/EClaw/issues/784)) ([95c4b77](https://github.com/HankHuang0516/EClaw/commit/95c4b7730d08f4614f140988dd1d6ae470003484)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.359.0](https://github.com/HankHuang0516/EClaw/compare/v1.358.0...v1.359.0) (2026-03-28)


### Features

* **i18n:** add Spanish translations (batch 7) ([#781](https://github.com/HankHuang0516/EClaw/issues/781)) ([7e0027d](https://github.com/HankHuang0516/EClaw/commit/7e0027dbc40d37f466b270d46ab49d3ac2d2c621)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.358.0](https://github.com/HankHuang0516/EClaw/compare/v1.357.0...v1.358.0) (2026-03-28)


### Features

* **i18n:** add French translations (batch 92) ([#780](https://github.com/HankHuang0516/EClaw/issues/780)) ([e306b05](https://github.com/HankHuang0516/EClaw/commit/e306b05f1845a17d157d6a8a7114426543008796)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.357.0](https://github.com/HankHuang0516/EClaw/compare/v1.356.0...v1.357.0) (2026-03-28)


### Bug Fixes

* **kanban:** keep sub-tabs visible in Android WebView for mission navigation ([#761](https://github.com/HankHuang0516/EClaw/issues/761)) ([#775](https://github.com/HankHuang0516/EClaw/issues/775)) ([9c09dc1](https://github.com/HankHuang0516/EClaw/commit/9c09dc1a4a211303ebdc1998266f9043ee962944))


### Features

* **i18n:** add French translations (batch 88) ([#776](https://github.com/HankHuang0516/EClaw/issues/776)) ([ee936aa](https://github.com/HankHuang0516/EClaw/commit/ee936aad42037a3cef45b424c49cf844b8acf759)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations (batch 89) ([#777](https://github.com/HankHuang0516/EClaw/issues/777)) ([26b921d](https://github.com/HankHuang0516/EClaw/commit/26b921d32120a71f1c9c75d098ad424e6891ed9d)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations (batch 90) ([#778](https://github.com/HankHuang0516/EClaw/issues/778)) ([e4e1589](https://github.com/HankHuang0516/EClaw/commit/e4e15898974aaef900586ce55717d9ff4f4726af)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations (batch 91) ([#779](https://github.com/HankHuang0516/EClaw/issues/779)) ([e479ecd](https://github.com/HankHuang0516/EClaw/commit/e479ecde07d21ee82c44fc1c8bbed8db85ebec47)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.356.0](https://github.com/HankHuang0516/EClaw/compare/v1.355.0...v1.356.0) (2026-03-28)


### Features

* **i18n:** add French translations (batch 87) ([#774](https://github.com/HankHuang0516/EClaw/issues/774)) ([fd58f18](https://github.com/HankHuang0516/EClaw/commit/fd58f18c75dc04c30953a6a422b92ce2f2c355f0)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.355.0](https://github.com/HankHuang0516/EClaw/compare/v1.354.0...v1.355.0) (2026-03-28)


### Features

* **i18n:** add French translations (batch 86) ([#773](https://github.com/HankHuang0516/EClaw/issues/773)) ([8917f10](https://github.com/HankHuang0516/EClaw/commit/8917f1084e90cbd98dd06ae6f6e92f31828242c9)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.354.0](https://github.com/HankHuang0516/EClaw/compare/v1.353.0...v1.354.0) (2026-03-28)


### Features

* **i18n:** add French translations (batch 85) ([#772](https://github.com/HankHuang0516/EClaw/issues/772)) ([9ac722c](https://github.com/HankHuang0516/EClaw/commit/9ac722c4adf158dc9649aaf9226105d23c66cfdf)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.353.0](https://github.com/HankHuang0516/EClaw/compare/v1.352.0...v1.353.0) (2026-03-28)


### Features

* **i18n:** add French translations (batch 84) ([#771](https://github.com/HankHuang0516/EClaw/issues/771)) ([b2fdcb1](https://github.com/HankHuang0516/EClaw/commit/b2fdcb1c5666b9ab3b73a185e4b449d0debdd3f9)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.352.0](https://github.com/HankHuang0516/EClaw/compare/v1.351.0...v1.352.0) (2026-03-28)


### Bug Fixes

* **mission:** retry auto-save on version conflict to prevent note deletion loss ([#768](https://github.com/HankHuang0516/EClaw/issues/768)) ([cf9ff82](https://github.com/HankHuang0516/EClaw/commit/cf9ff821d30b4315f9939004d310488fb75ff41d))


### Features

* **i18n:** add French translations (batch 81) ([#767](https://github.com/HankHuang0516/EClaw/issues/767)) ([7baf93c](https://github.com/HankHuang0516/EClaw/commit/7baf93c8c0395f483c5ea5f2485f4511d3ab0825)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations (batch 82) ([#769](https://github.com/HankHuang0516/EClaw/issues/769)) ([6d95d61](https://github.com/HankHuang0516/EClaw/commit/6d95d61a1debde95c04381658c66036ad1cf99c8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations (batch 83) ([#770](https://github.com/HankHuang0516/EClaw/issues/770)) ([695211c](https://github.com/HankHuang0516/EClaw/commit/695211cb8991f4bd475e0e65acda5502b015f541)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.351.0](https://github.com/HankHuang0516/EClaw/compare/v1.350.0...v1.351.0) (2026-03-28)


### Features

* **i18n:** add French translations (batch 80) ([#766](https://github.com/HankHuang0516/EClaw/issues/766)) ([1107446](https://github.com/HankHuang0516/EClaw/commit/1107446b7c5c0c7183e45613d4b87120c9be3ed3)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.350.0](https://github.com/HankHuang0516/EClaw/compare/v1.349.0...v1.350.0) (2026-03-28)


### Features

* **i18n:** add French translations (batch 79) ([#765](https://github.com/HankHuang0516/EClaw/issues/765)) ([7f4891d](https://github.com/HankHuang0516/EClaw/commit/7f4891d7efde8f3b5c5b17a4c5dc958be4cb1e1d)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.349.0](https://github.com/HankHuang0516/EClaw/compare/v1.348.0...v1.349.0) (2026-03-28)


### Bug Fixes

* **i18n:** escape newlines in guide_proxy_how_desc ([#764](https://github.com/HankHuang0516/EClaw/issues/764)) ([618259d](https://github.com/HankHuang0516/EClaw/commit/618259d932582564422976b9343f884791279de2)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)


### Features

* **i18n:** add French translations (batch 78) ([#763](https://github.com/HankHuang0516/EClaw/issues/763)) ([9a9a500](https://github.com/HankHuang0516/EClaw/commit/9a9a5001ef1e808ca26a389ef84567b6195d5bc9)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.348.0](https://github.com/HankHuang0516/EClaw/compare/v1.347.0...v1.348.0) (2026-03-28)


### Features

* **i18n:** add French translations (batch 77) ([#762](https://github.com/HankHuang0516/EClaw/issues/762)) ([12f4505](https://github.com/HankHuang0516/EClaw/commit/12f4505e7d9190adefcb46a88f7f4beb6a525f81)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.347.0](https://github.com/HankHuang0516/EClaw/compare/v1.346.0...v1.347.0) (2026-03-28)


### Bug Fixes

* **portal:** prevent Mission sub-tabs from overflowing on mobile screens ([#758](https://github.com/HankHuang0516/EClaw/issues/758)) ([feffabe](https://github.com/HankHuang0516/EClaw/commit/feffabe26b8ef960f91bdea83ab7559568dcd8e4))


### Features

* **i18n:** add French translations (batch 75) ([#759](https://github.com/HankHuang0516/EClaw/issues/759)) ([19e5a7b](https://github.com/HankHuang0516/EClaw/commit/19e5a7b912484630052e4fe61cc82a929749d66c)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations (batch 76) ([#760](https://github.com/HankHuang0516/EClaw/issues/760)) ([38296b4](https://github.com/HankHuang0516/EClaw/commit/38296b4de6e9813f81bafa47c7433e0f8c9c6970)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.346.0](https://github.com/HankHuang0516/EClaw/compare/v1.345.0...v1.346.0) (2026-03-28)


### Features

* **i18n:** add French translations (batch 74) ([#757](https://github.com/HankHuang0516/EClaw/issues/757)) ([8d1f9b5](https://github.com/HankHuang0516/EClaw/commit/8d1f9b5ffcf0b1aaabb3a70423877e0332a602c0)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.345.0](https://github.com/HankHuang0516/EClaw/compare/v1.344.0...v1.345.0) (2026-03-28)


### Features

* **i18n:** add French translations (batch 73) ([#756](https://github.com/HankHuang0516/EClaw/issues/756)) ([494de66](https://github.com/HankHuang0516/EClaw/commit/494de667f56847847d1cba7eb27d927e401d2b62)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.344.0](https://github.com/HankHuang0516/EClaw/compare/v1.343.0...v1.344.0) (2026-03-28)


### Features

* **i18n:** add French translations (batch 72) ([#755](https://github.com/HankHuang0516/EClaw/issues/755)) ([ca4aa3c](https://github.com/HankHuang0516/EClaw/commit/ca4aa3c006d6ddb00bc1201dfb094cf4ef2d808f)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.343.0](https://github.com/HankHuang0516/EClaw/compare/v1.342.0...v1.343.0) (2026-03-28)


### Features

* **i18n:** add French translations (batch 71) ([#754](https://github.com/HankHuang0516/EClaw/issues/754)) ([043f8d8](https://github.com/HankHuang0516/EClaw/commit/043f8d84391b268080291fdd8f9156d4bae738ef)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.342.0](https://github.com/HankHuang0516/EClaw/compare/v1.341.0...v1.342.0) (2026-03-28)


### Features

* **i18n:** add French translations (batch 70) ([#753](https://github.com/HankHuang0516/EClaw/issues/753)) ([2f7b603](https://github.com/HankHuang0516/EClaw/commit/2f7b6033188bb1dc851fefd567a7a33e20beaa48)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.341.0](https://github.com/HankHuang0516/EClaw/compare/v1.340.0...v1.341.0) (2026-03-28)


### Features

* **i18n:** add French translations (batch 69) ([#752](https://github.com/HankHuang0516/EClaw/issues/752)) ([39f218a](https://github.com/HankHuang0516/EClaw/commit/39f218a2af5a1c474f4e3e98324106e9750742b1)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.340.0](https://github.com/HankHuang0516/EClaw/compare/v1.339.0...v1.340.0) (2026-03-28)


### Features

* **i18n:** add French translations (batch 68) ([#751](https://github.com/HankHuang0516/EClaw/issues/751)) ([75067f2](https://github.com/HankHuang0516/EClaw/commit/75067f29e96cea92d7663dba03aadca31d6b77e5)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.339.0](https://github.com/HankHuang0516/EClaw/compare/v1.338.0...v1.339.0) (2026-03-28)


### Features

* **i18n:** add French translations (batch 67) ([#750](https://github.com/HankHuang0516/EClaw/issues/750)) ([5d7cffe](https://github.com/HankHuang0516/EClaw/commit/5d7cffe7b029a945edabe1abf6799effbb4ff7ec)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.338.0](https://github.com/HankHuang0516/EClaw/compare/v1.337.0...v1.338.0) (2026-03-28)


### Features

* **i18n:** add French translations (batch 66) ([#749](https://github.com/HankHuang0516/EClaw/issues/749)) ([0e83e0b](https://github.com/HankHuang0516/EClaw/commit/0e83e0b1c1d6e1def0c85c55918d2ba1061c17e4)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.337.0](https://github.com/HankHuang0516/EClaw/compare/v1.336.0...v1.337.0) (2026-03-28)


### Features

* **i18n:** add French translations (batch 65) ([#748](https://github.com/HankHuang0516/EClaw/issues/748)) ([ab38e19](https://github.com/HankHuang0516/EClaw/commit/ab38e19a21b570c51a5ff50cb66e38c39b63bb26)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.336.0](https://github.com/HankHuang0516/EClaw/compare/v1.335.0...v1.336.0) (2026-03-28)


### Features

* **i18n:** add French translations (batch 64) ([#747](https://github.com/HankHuang0516/EClaw/issues/747)) ([2bc7e26](https://github.com/HankHuang0516/EClaw/commit/2bc7e26c3710937fb22fa9a8127099543d7ba20c)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.335.0](https://github.com/HankHuang0516/EClaw/compare/v1.334.0...v1.335.0) (2026-03-28)


### Features

* **i18n:** add French translations (batch 63) ([#746](https://github.com/HankHuang0516/EClaw/issues/746)) ([4cef47c](https://github.com/HankHuang0516/EClaw/commit/4cef47cc4d6147e6f58719bdc89f1023b92a7e3f)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.334.0](https://github.com/HankHuang0516/EClaw/compare/v1.333.0...v1.334.0) (2026-03-28)


### Features

* **i18n:** add French translations (batch 62) ([#745](https://github.com/HankHuang0516/EClaw/issues/745)) ([5ff9475](https://github.com/HankHuang0516/EClaw/commit/5ff9475c4ef052e19e3e7675201ec95632bd256d)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.333.0](https://github.com/HankHuang0516/EClaw/compare/v1.332.0...v1.333.0) (2026-03-28)


### Features

* **i18n:** add French translations (batch 61) ([#744](https://github.com/HankHuang0516/EClaw/issues/744)) ([6040f23](https://github.com/HankHuang0516/EClaw/commit/6040f23d503be7c86159d27465f06f1fe3624b6e)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.332.0](https://github.com/HankHuang0516/EClaw/compare/v1.331.0...v1.332.0) (2026-03-28)


### Features

* **i18n:** add French translations (batch 53) ([#743](https://github.com/HankHuang0516/EClaw/issues/743)) ([22bba17](https://github.com/HankHuang0516/EClaw/commit/22bba176ef19d5b3e06bff5fc7176038309b58d4)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.331.0](https://github.com/HankHuang0516/EClaw/compare/v1.330.0...v1.331.0) (2026-03-28)


### Features

* **i18n:** add French translations (batch 60) ([#741](https://github.com/HankHuang0516/EClaw/issues/741)) ([c74c9ee](https://github.com/HankHuang0516/EClaw/commit/c74c9ee75a70f521fc98a317846569e1ba7cdd9a)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.330.0](https://github.com/HankHuang0516/EClaw/compare/v1.329.0...v1.330.0) (2026-03-28)


### Features

* **i18n:** add French translations (batch 59) ([#740](https://github.com/HankHuang0516/EClaw/issues/740)) ([1697fc4](https://github.com/HankHuang0516/EClaw/commit/1697fc4516b49ce018fbf11b952cae024917c089)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.329.0](https://github.com/HankHuang0516/EClaw/compare/v1.328.0...v1.329.0) (2026-03-28)


### Features

* **i18n:** add French translations (batch 58) ([#739](https://github.com/HankHuang0516/EClaw/issues/739)) ([563e766](https://github.com/HankHuang0516/EClaw/commit/563e7660ae62e0f223bc2c06cc749f163bdebfd0)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.328.0](https://github.com/HankHuang0516/EClaw/compare/v1.327.0...v1.328.0) (2026-03-28)


### Features

* **i18n:** add French translations (batch 57) ([#738](https://github.com/HankHuang0516/EClaw/issues/738)) ([1c55f9b](https://github.com/HankHuang0516/EClaw/commit/1c55f9bf1f7dd5aa67d3bbdff814d7dd68891272)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.327.0](https://github.com/HankHuang0516/EClaw/compare/v1.326.1...v1.327.0) (2026-03-28)


### Features

* **i18n:** add French translations (batch 56) ([#737](https://github.com/HankHuang0516/EClaw/issues/737)) ([67ad28e](https://github.com/HankHuang0516/EClaw/commit/67ad28ef194c862ddb19d7077ce8bcdd38862f6a)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

## [1.326.1](https://github.com/HankHuang0516/EClaw/compare/v1.326.0...v1.326.1) (2026-03-28)


### Bug Fixes

* **i18n:** escape newlines in French translation strings (batch 55) ([#736](https://github.com/HankHuang0516/EClaw/issues/736)) ([49223a8](https://github.com/HankHuang0516/EClaw/commit/49223a82621e621321e1d03eb3b7b868bea9fc3d)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.326.0](https://github.com/HankHuang0516/EClaw/compare/v1.325.0...v1.326.0) (2026-03-28)


### Features

* **i18n:** add French translations (batch 55) ([#735](https://github.com/HankHuang0516/EClaw/issues/735)) ([5129e27](https://github.com/HankHuang0516/EClaw/commit/5129e271a89f11c988d3e6331c45bb889cefe252)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.325.0](https://github.com/HankHuang0516/EClaw/compare/v1.324.0...v1.325.0) (2026-03-28)


### Features

* **i18n:** add French translations (batch 54) ([#734](https://github.com/HankHuang0516/EClaw/issues/734)) ([0a94fb4](https://github.com/HankHuang0516/EClaw/commit/0a94fb40e18325295ea73c3287fc8b14f1805e16)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.324.0](https://github.com/HankHuang0516/EClaw/compare/v1.323.0...v1.324.0) (2026-03-28)


### Bug Fixes

* **kanban:** add Kanban sub-tab to all sibling pages + fix null navEmail crash ([#731](https://github.com/HankHuang0516/EClaw/issues/731)) ([506088a](https://github.com/HankHuang0516/EClaw/commit/506088aae7b2ad503c195bbdc1e4c07641587595)), closes [#navEmail](https://github.com/HankHuang0516/EClaw/issues/navEmail)


### Features

* **i18n:** add French translations (batch 51) ([#730](https://github.com/HankHuang0516/EClaw/issues/730)) ([520f84c](https://github.com/HankHuang0516/EClaw/commit/520f84cbe6e4a0825c3b1f9d18a601be6d4421a4)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations (batch 52) ([#732](https://github.com/HankHuang0516/EClaw/issues/732)) ([ac0f01b](https://github.com/HankHuang0516/EClaw/commit/ac0f01b5e6c29f5f1bf86b3d3c5be5cf7408869a)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.323.0](https://github.com/HankHuang0516/EClaw/compare/v1.322.0...v1.323.0) (2026-03-28)


### Features

* **i18n:** add French translations (batch 50) ([#729](https://github.com/HankHuang0516/EClaw/issues/729)) ([78bac9d](https://github.com/HankHuang0516/EClaw/commit/78bac9d976cdfc272445e3f403393f3875728c3e)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.322.0](https://github.com/HankHuang0516/EClaw/compare/v1.321.0...v1.322.0) (2026-03-28)


### Features

* **i18n:** add French translations (batch 49) ([#728](https://github.com/HankHuang0516/EClaw/issues/728)) ([6343feb](https://github.com/HankHuang0516/EClaw/commit/6343febb99509f726bf39097fd072ab1894fc078)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.321.0](https://github.com/HankHuang0516/EClaw/compare/v1.320.0...v1.321.0) (2026-03-28)


### Features

* **i18n:** add French translations (batch 48) ([#727](https://github.com/HankHuang0516/EClaw/issues/727)) ([2229514](https://github.com/HankHuang0516/EClaw/commit/222951409a19eae51d328e9aa1fa448a78304553)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.320.0](https://github.com/HankHuang0516/EClaw/compare/v1.319.0...v1.320.0) (2026-03-28)


### Features

* **i18n:** add French translations (batch 47) ([#726](https://github.com/HankHuang0516/EClaw/issues/726)) ([30a6799](https://github.com/HankHuang0516/EClaw/commit/30a67995bca239d8982143c593bf4f14d96f7c66)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.319.0](https://github.com/HankHuang0516/EClaw/compare/v1.318.0...v1.319.0) (2026-03-28)


### Features

* **i18n:** add French translations (batch 46) ([#725](https://github.com/HankHuang0516/EClaw/issues/725)) ([cbd64b9](https://github.com/HankHuang0516/EClaw/commit/cbd64b948518e8441c13577a966ef20d2d9923b4)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.318.0](https://github.com/HankHuang0516/EClaw/compare/v1.317.0...v1.318.0) (2026-03-28)


### Features

* **i18n:** add French translations (batch 45) ([#724](https://github.com/HankHuang0516/EClaw/issues/724)) ([84faa1d](https://github.com/HankHuang0516/EClaw/commit/84faa1db05e049c8c8a3d24718cff00d855e34d9)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.317.0](https://github.com/HankHuang0516/EClaw/compare/v1.316.0...v1.317.0) (2026-03-28)


### Features

* **i18n:** add French translations (batch 44) ([#723](https://github.com/HankHuang0516/EClaw/issues/723)) ([9b299b9](https://github.com/HankHuang0516/EClaw/commit/9b299b922cbfed83500fa159bdd9f4de510dada0)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.316.0](https://github.com/HankHuang0516/EClaw/compare/v1.315.0...v1.316.0) (2026-03-28)


### Features

* **i18n:** add French translations (batch 43) ([#722](https://github.com/HankHuang0516/EClaw/issues/722)) ([5856418](https://github.com/HankHuang0516/EClaw/commit/58564188185538dac83e2ab9a136b983280babbb)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.315.0](https://github.com/HankHuang0516/EClaw/compare/v1.314.0...v1.315.0) (2026-03-28)


### Features

* **i18n:** add French translations (batch 42) ([#721](https://github.com/HankHuang0516/EClaw/issues/721)) ([cd6a912](https://github.com/HankHuang0516/EClaw/commit/cd6a912017ad79411423ef23cd45dd9f51924832)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.314.0](https://github.com/HankHuang0516/EClaw/compare/v1.313.0...v1.314.0) (2026-03-28)


### Features

* **i18n:** add French translations (batch 41) ([#720](https://github.com/HankHuang0516/EClaw/issues/720)) ([7f831b4](https://github.com/HankHuang0516/EClaw/commit/7f831b4dc4c5fcbca17c07b2b8849d85d34a346f)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.313.0](https://github.com/HankHuang0516/EClaw/compare/v1.312.0...v1.313.0) (2026-03-28)


### Features

* **i18n:** add French translations (batch 40) ([#719](https://github.com/HankHuang0516/EClaw/issues/719)) ([b253562](https://github.com/HankHuang0516/EClaw/commit/b25356250b0f97dcc5ad9643dd8ea393ed039c5f)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.312.0](https://github.com/HankHuang0516/EClaw/compare/v1.311.0...v1.312.0) (2026-03-28)


### Features

* **i18n:** add French translations (batch 39) ([#718](https://github.com/HankHuang0516/EClaw/issues/718)) ([6a7331b](https://github.com/HankHuang0516/EClaw/commit/6a7331bfd81c8a50bc0c2d9d3ac3d2c6b65c5c9a)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.311.0](https://github.com/HankHuang0516/EClaw/compare/v1.310.0...v1.311.0) (2026-03-28)


### Features

* **i18n:** add French translations (batch 38) ([#717](https://github.com/HankHuang0516/EClaw/issues/717)) ([d56a420](https://github.com/HankHuang0516/EClaw/commit/d56a4206eb9f1307ca26814ec3f32906fe3fe8b8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.310.0](https://github.com/HankHuang0516/EClaw/compare/v1.309.0...v1.310.0) (2026-03-28)


### Features

* **i18n:** add French translations (batch 37) ([#716](https://github.com/HankHuang0516/EClaw/issues/716)) ([e92eedc](https://github.com/HankHuang0516/EClaw/commit/e92eedc19ea910e69bd6ea07bf674ff5f8b5ed5b)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.309.0](https://github.com/HankHuang0516/EClaw/compare/v1.308.0...v1.309.0) (2026-03-28)


### Features

* **i18n:** add French translations (batch 36) ([#715](https://github.com/HankHuang0516/EClaw/issues/715)) ([5004a04](https://github.com/HankHuang0516/EClaw/commit/5004a045d25e58ad6d1bd935cc39a252cde1560b)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.308.0](https://github.com/HankHuang0516/EClaw/compare/v1.307.0...v1.308.0) (2026-03-28)


### Features

* **i18n:** add French translations (batch 35) ([#714](https://github.com/HankHuang0516/EClaw/issues/714)) ([4774b31](https://github.com/HankHuang0516/EClaw/commit/4774b31a3cae8e5eed3a24e2fc303381bbaa0081)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.307.0](https://github.com/HankHuang0516/EClaw/compare/v1.306.0...v1.307.0) (2026-03-28)


### Features

* **i18n:** add French translations (batch 34) ([#713](https://github.com/HankHuang0516/EClaw/issues/713)) ([d8b1909](https://github.com/HankHuang0516/EClaw/commit/d8b1909b56bb97012d8078338c258ead4f0bb129)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.306.0](https://github.com/HankHuang0516/EClaw/compare/v1.305.0...v1.306.0) (2026-03-28)


### Features

* **i18n:** add French translations (batch 33) ([#712](https://github.com/HankHuang0516/EClaw/issues/712)) ([733287e](https://github.com/HankHuang0516/EClaw/commit/733287e4953f29864e992372014c7687eff6c9ad)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.305.0](https://github.com/HankHuang0516/EClaw/compare/v1.304.0...v1.305.0) (2026-03-28)


### Features

* **i18n:** add French translations (batch 32) ([#711](https://github.com/HankHuang0516/EClaw/issues/711)) ([e828e7d](https://github.com/HankHuang0516/EClaw/commit/e828e7daf28ca73196289ec0efb427f4f5d87055)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.304.0](https://github.com/HankHuang0516/EClaw/compare/v1.303.0...v1.304.0) (2026-03-28)


### Features

* **i18n:** add French translations (batch 31) ([#710](https://github.com/HankHuang0516/EClaw/issues/710)) ([173f477](https://github.com/HankHuang0516/EClaw/commit/173f477c1f2f3b7b90873eae82efdac7e3639df9)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.303.0](https://github.com/HankHuang0516/EClaw/compare/v1.302.0...v1.303.0) (2026-03-28)


### Features

* **i18n:** add French translations (batch 30) ([#709](https://github.com/HankHuang0516/EClaw/issues/709)) ([d3be4da](https://github.com/HankHuang0516/EClaw/commit/d3be4da66d87505e5c0830c90d104093aad3d730)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.302.0](https://github.com/HankHuang0516/EClaw/compare/v1.301.0...v1.302.0) (2026-03-28)


### Bug Fixes

* **ux:** block add buttons on mission + schedule pages with Kanban redirect warning ([418b7a4](https://github.com/HankHuang0516/EClaw/commit/418b7a4c4ab624ba8b5e71d95161059819257288))


### Features

* **i18n:** add French translations (batch 29) ([#708](https://github.com/HankHuang0516/EClaw/issues/708)) ([67a5d2c](https://github.com/HankHuang0516/EClaw/commit/67a5d2c7dc93ae011da8b317df07f8962bc841c0)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.301.0](https://github.com/HankHuang0516/EClaw/compare/v1.300.0...v1.301.0) (2026-03-28)


### Features

* **i18n:** add French translations (batch 28) ([#707](https://github.com/HankHuang0516/EClaw/issues/707)) ([6ecd472](https://github.com/HankHuang0516/EClaw/commit/6ecd472f4008aee5011cb596b07c939070a2e56c)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.300.0](https://github.com/HankHuang0516/EClaw/compare/v1.299.0...v1.300.0) (2026-03-28)


### Features

* **i18n:** add French translations (batch 27) ([#706](https://github.com/HankHuang0516/EClaw/issues/706)) ([b813915](https://github.com/HankHuang0516/EClaw/commit/b8139155e8dcc592fc938b89ec2e95622ac4a6db)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.299.0](https://github.com/HankHuang0516/EClaw/compare/v1.298.1...v1.299.0) (2026-03-28)


### Features

* **i18n:** add French translations (batch 26) ([#705](https://github.com/HankHuang0516/EClaw/issues/705)) ([ab361cf](https://github.com/HankHuang0516/EClaw/commit/ab361cfc2bb8bcbf59802d2c48d6f09f1b2912a7)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

## [1.298.1](https://github.com/HankHuang0516/EClaw/compare/v1.298.0...v1.298.1) (2026-03-28)


### Bug Fixes

* **ux:** remove toggle switches from Soul and Rule lists ([438e770](https://github.com/HankHuang0516/EClaw/commit/438e77061def3b22a478524eb89699cc0c7fcefc))

# [1.298.0](https://github.com/HankHuang0516/EClaw/compare/v1.297.0...v1.298.0) (2026-03-28)


### Features

* **i18n:** add French translations (batch 24) ([#704](https://github.com/HankHuang0516/EClaw/issues/704)) ([bcbb8cc](https://github.com/HankHuang0516/EClaw/commit/bcbb8cc41b7aa3d5cf8630cd2b251bedd332ae35)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.297.0](https://github.com/HankHuang0516/EClaw/compare/v1.296.0...v1.297.0) (2026-03-28)


### Features

* **i18n:** add French translations (batch 23) ([#703](https://github.com/HankHuang0516/EClaw/issues/703)) ([4073ce3](https://github.com/HankHuang0516/EClaw/commit/4073ce3e55ade76859b13bce580121af9f4bdf0a)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.296.0](https://github.com/HankHuang0516/EClaw/compare/v1.295.0...v1.296.0) (2026-03-28)


### Features

* **i18n:** add French translations (batch 22) ([#702](https://github.com/HankHuang0516/EClaw/issues/702)) ([0a2e690](https://github.com/HankHuang0516/EClaw/commit/0a2e69090523ed6ba96dd1b9849a282347327d96)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.295.0](https://github.com/HankHuang0516/EClaw/compare/v1.294.0...v1.295.0) (2026-03-28)


### Features

* **i18n:** add French translations (batch 21) ([#701](https://github.com/HankHuang0516/EClaw/issues/701)) ([d1f9b34](https://github.com/HankHuang0516/EClaw/commit/d1f9b34a51820d3a43a90f3605d67b9a1705867a)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.294.0](https://github.com/HankHuang0516/EClaw/compare/v1.293.0...v1.294.0) (2026-03-28)


### Features

* **i18n:** add French translations (batch 20) ([#700](https://github.com/HankHuang0516/EClaw/issues/700)) ([b86b696](https://github.com/HankHuang0516/EClaw/commit/b86b696cb5a9376e6875f06e0dd14ec008d32545)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.293.0](https://github.com/HankHuang0516/EClaw/compare/v1.292.0...v1.293.0) (2026-03-28)


### Features

* **i18n:** add French translations (batch 19) ([#699](https://github.com/HankHuang0516/EClaw/issues/699)) ([cefaea3](https://github.com/HankHuang0516/EClaw/commit/cefaea352efa15e6dda535442bad37fadc67e083)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.292.0](https://github.com/HankHuang0516/EClaw/compare/v1.291.0...v1.292.0) (2026-03-28)


### Features

* **i18n:** add French translations (batch 18) ([#698](https://github.com/HankHuang0516/EClaw/issues/698)) ([585c705](https://github.com/HankHuang0516/EClaw/commit/585c705d0ef0c356a533f018728d264f7e6f1267)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.291.0](https://github.com/HankHuang0516/EClaw/compare/v1.290.0...v1.291.0) (2026-03-28)


### Features

* **i18n:** add French translations (batch 17) ([#697](https://github.com/HankHuang0516/EClaw/issues/697)) ([803a710](https://github.com/HankHuang0516/EClaw/commit/803a7102a3ceb8c45d2b3725067dde21131e2ae5)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.290.0](https://github.com/HankHuang0516/EClaw/compare/v1.289.0...v1.290.0) (2026-03-28)


### Features

* **i18n:** add French translations (batch 16) ([#696](https://github.com/HankHuang0516/EClaw/issues/696)) ([924c1df](https://github.com/HankHuang0516/EClaw/commit/924c1dfaecbd43c83cdec475f33fb6dfe29a373a)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.289.0](https://github.com/HankHuang0516/EClaw/compare/v1.288.0...v1.289.0) (2026-03-28)


### Features

* **i18n:** add French translations (batch 15) ([#695](https://github.com/HankHuang0516/EClaw/issues/695)) ([46e88af](https://github.com/HankHuang0516/EClaw/commit/46e88af07727b1611a2d1b37a26a1305cbc28802)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.288.0](https://github.com/HankHuang0516/EClaw/compare/v1.287.0...v1.288.0) (2026-03-28)


### Features

* **i18n:** add French translations (batch 14) ([#694](https://github.com/HankHuang0516/EClaw/issues/694)) ([88e9599](https://github.com/HankHuang0516/EClaw/commit/88e959995c0f8e63edb58def641be5be94931113)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.287.0](https://github.com/HankHuang0516/EClaw/compare/v1.286.0...v1.287.0) (2026-03-28)


### Features

* **i18n:** add French translations (batch 13) ([#693](https://github.com/HankHuang0516/EClaw/issues/693)) ([5838a2d](https://github.com/HankHuang0516/EClaw/commit/5838a2dd2bb46eaf6bd8ea26bf3716bf9f5d1d59)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add i18n for skill template requiredVars dialog (10 languages) ([045da20](https://github.com/HankHuang0516/EClaw/commit/045da20133c512b7ea8c7d6461f10f948c8bd625))

# [1.286.0](https://github.com/HankHuang0516/EClaw/compare/v1.285.0...v1.286.0) (2026-03-28)


### Features

* **i18n:** add French translations (batch 12) ([#692](https://github.com/HankHuang0516/EClaw/issues/692)) ([07096f7](https://github.com/HankHuang0516/EClaw/commit/07096f7224eb0e6b7aa97e5bd4f49f6d1c8d1f27)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.285.0](https://github.com/HankHuang0516/EClaw/compare/v1.284.0...v1.285.0) (2026-03-28)


### Features

* **i18n:** add French translations (batch 11) ([#691](https://github.com/HankHuang0516/EClaw/issues/691)) ([c0acf46](https://github.com/HankHuang0516/EClaw/commit/c0acf46c5f0ac1519e40d8b568be099899645d5e)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.284.0](https://github.com/HankHuang0516/EClaw/compare/v1.283.0...v1.284.0) (2026-03-28)


### Bug Fixes

* **ux:** remove duplicate add-variable button + fix env_notice fallback text ([273aaf6](https://github.com/HankHuang0516/EClaw/commit/273aaf64de23c9f0ee895520abca55c3e928c8cc))


### Features

* **i18n:** add French translations (batch 10) ([#690](https://github.com/HankHuang0516/EClaw/issues/690)) ([b9c7d7d](https://github.com/HankHuang0516/EClaw/commit/b9c7d7d6c7da159863abad99426a6e7b73c9f5e2)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations (batch 9) ([#689](https://github.com/HankHuang0516/EClaw/issues/689)) ([09dc413](https://github.com/HankHuang0516/EClaw/commit/09dc4136e102fc43bb6148d03a30f24af1d94e84)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** dynamic language UI + smart device detection + Android es ([#688](https://github.com/HankHuang0516/EClaw/issues/688)) ([16bb392](https://github.com/HankHuang0516/EClaw/commit/16bb392a6c7c67b0931484faed740fbdb0360bab))

# [1.283.0](https://github.com/HankHuang0516/EClaw/compare/v1.282.0...v1.283.0) (2026-03-28)


### Features

* **i18n:** add French translations (batch 8) ([#687](https://github.com/HankHuang0516/EClaw/issues/687)) ([8164328](https://github.com/HankHuang0516/EClaw/commit/816432886633f1660c1a940c94ed018025cbd513)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.282.0](https://github.com/HankHuang0516/EClaw/compare/v1.281.0...v1.282.0) (2026-03-28)


### Features

* **i18n:** add French translations (batch 7) ([#686](https://github.com/HankHuang0516/EClaw/issues/686)) ([e81dbbd](https://github.com/HankHuang0516/EClaw/commit/e81dbbd112eeb56ac0c7581a85c6ef03e7d8907b)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.281.0](https://github.com/HankHuang0516/EClaw/compare/v1.280.0...v1.281.0) (2026-03-28)


### Bug Fixes

* **i18n:** correct env_notice — vars ARE stored server-side (AES-256 encrypted) ([8eea909](https://github.com/HankHuang0516/EClaw/commit/8eea909d04dbc5bbc5a90aee3755a574220d9a4d))
* **ci:** make Railway preview cleanup resilient to transient failures ([#682](https://github.com/HankHuang0516/EClaw/issues/682)) ([cc26dc7](https://github.com/HankHuang0516/EClaw/commit/cc26dc7adfbd3d346d89791563d1e39a1ccb1f02))


### Features

* **i18n:** add French translations (batch 4) ([#683](https://github.com/HankHuang0516/EClaw/issues/683)) ([aa013a8](https://github.com/HankHuang0516/EClaw/commit/aa013a87a6395e187b617eac3747f1525d96b6ef)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations (batch 5) ([#684](https://github.com/HankHuang0516/EClaw/issues/684)) ([60034a4](https://github.com/HankHuang0516/EClaw/commit/60034a4b44a8c9887491efd41cd0cb546d720155)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add French translations (batch 6) ([#685](https://github.com/HankHuang0516/EClaw/issues/685)) ([5d6ebfd](https://github.com/HankHuang0516/EClaw/commit/5d6ebfdd2acfed23b8f27a8df471c264160a2ec4)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.280.0](https://github.com/HankHuang0516/EClaw/compare/v1.279.0...v1.280.0) (2026-03-28)


### Features

* **i18n:** add French translations (batch 3) ([#681](https://github.com/HankHuang0516/EClaw/issues/681)) ([a0f8e95](https://github.com/HankHuang0516/EClaw/commit/a0f8e953f88a1163cd29203ac1877f171dfff2f1)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.279.0](https://github.com/HankHuang0516/EClaw/compare/v1.278.0...v1.279.0) (2026-03-28)


### Features

* **i18n:** add French translations (batch 2) ([#680](https://github.com/HankHuang0516/EClaw/issues/680)) ([6669b35](https://github.com/HankHuang0516/EClaw/commit/6669b3593f3c5a4aeb31eea81bd1cd89e835af41)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.278.0](https://github.com/HankHuang0516/EClaw/compare/v1.277.0...v1.278.0) (2026-03-28)


### Features

* **i18n:** add French translations (batch 1) ([#679](https://github.com/HankHuang0516/EClaw/issues/679)) ([d98e0a0](https://github.com/HankHuang0516/EClaw/commit/d98e0a0772ee3b30f347ddb9ffac3928d30f8e89)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.277.0](https://github.com/HankHuang0516/EClaw/compare/v1.276.0...v1.277.0) (2026-03-28)


### Features

* **privacy:** add full privacy policy link to registration terms dialog ([6f32730](https://github.com/HankHuang0516/EClaw/commit/6f327303ffc1e21b7d10f2a1c08cdc7e1f494213))
* **privacy:** i18n privacy policy page + fix footer/info links ([58aa43b](https://github.com/HankHuang0516/EClaw/commit/58aa43b93af95d1d0dfd2d656347703f6e071201))

# [1.276.0](https://github.com/HankHuang0516/EClaw/compare/v1.275.1...v1.276.0) (2026-03-28)


### Features

* **i18n:** add 14 Spanish translations (batch 60 - FINAL) ([#678](https://github.com/HankHuang0516/EClaw/issues/678)) ([0029a0a](https://github.com/HankHuang0516/EClaw/commit/0029a0aeb87cda2644e0ae6af1e96c214d936ad0)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

## [1.275.1](https://github.com/HankHuang0516/EClaw/compare/v1.275.0...v1.275.1) (2026-03-28)


### Bug Fixes

* add explicit route for /privacy-policy.html ([09b1a5d](https://github.com/HankHuang0516/EClaw/commit/09b1a5dfc31dc1bbf8464570b23d943c218ec51e))

# [1.275.0](https://github.com/HankHuang0516/EClaw/compare/v1.274.0...v1.275.0) (2026-03-28)


### Features

* **i18n:** add 28 Spanish translations (batch 58) ([#676](https://github.com/HankHuang0516/EClaw/issues/676)) ([e2f252f](https://github.com/HankHuang0516/EClaw/commit/e2f252f2b4b8a253182f13a043b314d0a0cd4885)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.274.0](https://github.com/HankHuang0516/EClaw/compare/v1.273.0...v1.274.0) (2026-03-28)


### Features

* **i18n:** add 36 Spanish translations (batch 57) ([#675](https://github.com/HankHuang0516/EClaw/issues/675)) ([9160406](https://github.com/HankHuang0516/EClaw/commit/91604060fd8ecb04e5c012c3cab50071f8f3678a)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.273.0](https://github.com/HankHuang0516/EClaw/compare/v1.272.0...v1.273.0) (2026-03-28)


### Bug Fixes

* serve privacy-policy.html from public/ directory ([daa4bd7](https://github.com/HankHuang0516/EClaw/commit/daa4bd7094cc0c961b16abb33bc30b3384104f9b))


### Features

* **i18n:** add 41 Spanish translations (batch 56) ([#674](https://github.com/HankHuang0516/EClaw/issues/674)) ([5e6d81d](https://github.com/HankHuang0516/EClaw/commit/5e6d81db3575108518b5e4499abd78d00fcec21f)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.272.0](https://github.com/HankHuang0516/EClaw/compare/v1.271.0...v1.272.0) (2026-03-28)


### Features

* **i18n:** add 40 Spanish translations (batch 55) ([#673](https://github.com/HankHuang0516/EClaw/issues/673)) ([affb705](https://github.com/HankHuang0516/EClaw/commit/affb7051d5d6011f04f67942c346101fa6234616)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.271.0](https://github.com/HankHuang0516/EClaw/compare/v1.270.0...v1.271.0) (2026-03-28)


### Features

* **i18n:** add 40 Spanish translations (batch 54) ([#672](https://github.com/HankHuang0516/EClaw/issues/672)) ([1711b71](https://github.com/HankHuang0516/EClaw/commit/1711b71b3f11cbab5cb751d8850d6f46e0e73b4e)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.270.0](https://github.com/HankHuang0516/EClaw/compare/v1.269.0...v1.270.0) (2026-03-28)


### Features

* **i18n:** add 39 Spanish translations (batch 53) ([#671](https://github.com/HankHuang0516/EClaw/issues/671)) ([40fe658](https://github.com/HankHuang0516/EClaw/commit/40fe658ba22dcd2c08d36f0b7f26235ca41a9d99)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.269.0](https://github.com/HankHuang0516/EClaw/compare/v1.268.0...v1.269.0) (2026-03-28)


### Features

* **i18n:** add 39 Spanish translations (batch 52) ([#670](https://github.com/HankHuang0516/EClaw/issues/670)) ([61ec071](https://github.com/HankHuang0516/EClaw/commit/61ec0719cd1b52cf05a1461a0689470038dd3464)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.268.0](https://github.com/HankHuang0516/EClaw/compare/v1.267.0...v1.268.0) (2026-03-28)


### Features

* **i18n:** add 39 Spanish translations (batch 51) ([#669](https://github.com/HankHuang0516/EClaw/issues/669)) ([f2bb607](https://github.com/HankHuang0516/EClaw/commit/f2bb607050fe343048700b4612fe1f3d02b44d60)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.267.0](https://github.com/HankHuang0516/EClaw/compare/v1.266.0...v1.267.0) (2026-03-28)


### Features

* **i18n:** add 39 Spanish translations (batch 50) ([#668](https://github.com/HankHuang0516/EClaw/issues/668)) ([f9dd3cf](https://github.com/HankHuang0516/EClaw/commit/f9dd3cf2f984dd42b9f0a42fcf002a2c31ae8711)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.266.0](https://github.com/HankHuang0516/EClaw/compare/v1.265.0...v1.266.0) (2026-03-28)


### Features

* **i18n:** add 40 Spanish translations (batch 49) ([#667](https://github.com/HankHuang0516/EClaw/issues/667)) ([05c5daa](https://github.com/HankHuang0516/EClaw/commit/05c5daa09986971a20ab791efc9cc62dfa492233)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.265.0](https://github.com/HankHuang0516/EClaw/compare/v1.264.0...v1.265.0) (2026-03-28)


### Features

* **i18n:** add 40 Spanish translations (batch 48) ([#666](https://github.com/HankHuang0516/EClaw/issues/666)) ([9c8cf99](https://github.com/HankHuang0516/EClaw/commit/9c8cf993f383b05317ea702f24fcecf66765e53a)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.264.0](https://github.com/HankHuang0516/EClaw/compare/v1.263.0...v1.264.0) (2026-03-28)


### Features

* **i18n:** add 40 Spanish translations (batch 47) ([#665](https://github.com/HankHuang0516/EClaw/issues/665)) ([f940f4a](https://github.com/HankHuang0516/EClaw/commit/f940f4a3a1e6bce1bca61b34343fbec2d24e6997)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.263.0](https://github.com/HankHuang0516/EClaw/compare/v1.262.0...v1.263.0) (2026-03-28)


### Features

* **i18n:** add 40 Spanish translations (batch 46) ([#664](https://github.com/HankHuang0516/EClaw/issues/664)) ([faec844](https://github.com/HankHuang0516/EClaw/commit/faec844f492eb3b6a6f02b2f5aa0f6dfa3d76919)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.262.0](https://github.com/HankHuang0516/EClaw/compare/v1.261.0...v1.262.0) (2026-03-28)


### Features

* **i18n:** add 40 Spanish translations (batch 45) ([#663](https://github.com/HankHuang0516/EClaw/issues/663)) ([6a1c1ff](https://github.com/HankHuang0516/EClaw/commit/6a1c1ff794f3868774eb3998bb86025f5c7009ae)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.261.0](https://github.com/HankHuang0516/EClaw/compare/v1.260.0...v1.261.0) (2026-03-28)


### Features

* **i18n:** add 40 Spanish translations (batch 44) ([#662](https://github.com/HankHuang0516/EClaw/issues/662)) ([1504ee3](https://github.com/HankHuang0516/EClaw/commit/1504ee3394f3ff9cfef4feaaaee4e12c94f64127)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.260.0](https://github.com/HankHuang0516/EClaw/compare/v1.259.0...v1.260.0) (2026-03-28)


### Features

* **i18n:** add 40 Spanish translations (batch 43) ([#661](https://github.com/HankHuang0516/EClaw/issues/661)) ([7e12bba](https://github.com/HankHuang0516/EClaw/commit/7e12bba41ba77c04a75cef70b0f961ebac26b615)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.259.0](https://github.com/HankHuang0516/EClaw/compare/v1.258.0...v1.259.0) (2026-03-28)


### Features

* **i18n:** add 40 Spanish translations (batch 42) ([#660](https://github.com/HankHuang0516/EClaw/issues/660)) ([3a87748](https://github.com/HankHuang0516/EClaw/commit/3a87748502eaf02f4c556584c38c7eec5fc265af)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.258.0](https://github.com/HankHuang0516/EClaw/compare/v1.257.0...v1.258.0) (2026-03-28)


### Bug Fixes

* **i18n:** add missing comma in Hindi translations causing SyntaxError ([98dd3ce](https://github.com/HankHuang0516/EClaw/commit/98dd3ce68be2e54f7b67cf9b1386a91f8bbcc131)), closes [#651](https://github.com/HankHuang0516/EClaw/issues/651)


### Features

* **i18n:** add 40 Spanish translations (batch 41) ([#659](https://github.com/HankHuang0516/EClaw/issues/659)) ([2f9cd3b](https://github.com/HankHuang0516/EClaw/commit/2f9cd3b6de13ea12c17d8711d2053dd3e7bad558)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.257.0](https://github.com/HankHuang0516/EClaw/compare/v1.256.0...v1.257.0) (2026-03-28)


### Features

* **i18n:** add 39 Spanish translations (batch 40) ([#658](https://github.com/HankHuang0516/EClaw/issues/658)) ([8ea7ed1](https://github.com/HankHuang0516/EClaw/commit/8ea7ed1c4654e1d4fe3e8dae786703deee358928)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.256.0](https://github.com/HankHuang0516/EClaw/compare/v1.255.0...v1.256.0) (2026-03-28)


### Features

* **i18n:** add 40 Spanish translations (batch 39) ([#657](https://github.com/HankHuang0516/EClaw/issues/657)) ([056471d](https://github.com/HankHuang0516/EClaw/commit/056471d154131709dc5c120719d0cf653b45b4cf)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.255.0](https://github.com/HankHuang0516/EClaw/compare/v1.254.1...v1.255.0) (2026-03-28)


### Features

* **i18n:** add 40 Spanish translations (batch 38) ([#656](https://github.com/HankHuang0516/EClaw/issues/656)) ([d1973a2](https://github.com/HankHuang0516/EClaw/commit/d1973a2a45a060946939da1a3e470f40e659e344)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

## [1.254.1](https://github.com/HankHuang0516/EClaw/compare/v1.254.0...v1.254.1) (2026-03-28)


### Bug Fixes

* regenerate GPS demo GIF to fix garbled Chinese characters ([#655](https://github.com/HankHuang0516/EClaw/issues/655)) ([45c39a5](https://github.com/HankHuang0516/EClaw/commit/45c39a5309521969c50056bfd067ea54445caebf))

# [1.254.0](https://github.com/HankHuang0516/EClaw/compare/v1.253.0...v1.254.0) (2026-03-28)


### Features

* **i18n:** add 40 Spanish translations (batch 37) ([#654](https://github.com/HankHuang0516/EClaw/issues/654)) ([c185ba9](https://github.com/HankHuang0516/EClaw/commit/c185ba973cdb701165359443efd442664bcec236)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.253.0](https://github.com/HankHuang0516/EClaw/compare/v1.252.0...v1.253.0) (2026-03-28)


### Features

* **i18n:** add 40 Spanish translations (batch 36) ([#652](https://github.com/HankHuang0516/EClaw/issues/652)) ([6612aa7](https://github.com/HankHuang0516/EClaw/commit/6612aa7d91c8d44fc2490619b00cb87e946f278c)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.252.0](https://github.com/HankHuang0516/EClaw/compare/v1.251.0...v1.252.0) (2026-03-28)


### Features

* **i18n:** add 40 Spanish translations (batch 34) ([#649](https://github.com/HankHuang0516/EClaw/issues/649)) ([0c922f8](https://github.com/HankHuang0516/EClaw/commit/0c922f8c11b8711c38afb3e01fe4eddfd5a40155)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* **i18n:** add 40 Spanish translations (batch 35) ([#650](https://github.com/HankHuang0516/EClaw/issues/650)) ([eeaff34](https://github.com/HankHuang0516/EClaw/commit/eeaff34d86d4ab70f7d18bff6d9ee9e8fa6a34ba)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.251.0](https://github.com/HankHuang0516/EClaw/compare/v1.250.0...v1.251.0) (2026-03-28)


### Features

* **i18n:** add 40 Spanish translations (batch 33) ([#648](https://github.com/HankHuang0516/EClaw/issues/648)) ([719d4c7](https://github.com/HankHuang0516/EClaw/commit/719d4c701db92f020a1a1154c3e780dc408fcea1)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.250.0](https://github.com/HankHuang0516/EClaw/compare/v1.249.0...v1.250.0) (2026-03-28)


### Features

* **i18n:** add 30 Spanish translations (batch 32) ([#647](https://github.com/HankHuang0516/EClaw/issues/647)) ([b8152c9](https://github.com/HankHuang0516/EClaw/commit/b8152c93ba67eaf2fbaef4e62af5dd6ba9b73e80)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.249.0](https://github.com/HankHuang0516/EClaw/compare/v1.248.1...v1.249.0) (2026-03-28)


### Features

* **i18n:** add 30 Spanish translations (batch 31) ([#646](https://github.com/HankHuang0516/EClaw/issues/646)) ([cb285fe](https://github.com/HankHuang0516/EClaw/commit/cb285fee7437b239aaf9e75bc62969482032b740)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

## [1.248.1](https://github.com/HankHuang0516/EClaw/compare/v1.248.0...v1.248.1) (2026-03-28)


### Bug Fixes

* unify app name to EClawbot across all platforms ([7753478](https://github.com/HankHuang0516/EClaw/commit/775347846a9b56c95bc46abd0eeb03bdeb84460b))

# [1.248.0](https://github.com/HankHuang0516/EClaw/compare/v1.247.0...v1.248.0) (2026-03-28)


### Features

* **i18n:** add 58 Spanish translations (batch 30) ([#645](https://github.com/HankHuang0516/EClaw/issues/645)) ([b853d68](https://github.com/HankHuang0516/EClaw/commit/b853d6864be0329fb71e38e8c2e13fca1d9eb616)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.247.0](https://github.com/HankHuang0516/EClaw/compare/v1.246.0...v1.247.0) (2026-03-28)


### Features

* **i18n:** add 50 Spanish translations (batch 29) ([#644](https://github.com/HankHuang0516/EClaw/issues/644)) ([8fe8147](https://github.com/HankHuang0516/EClaw/commit/8fe814709aa505af006115fe6d5348ca0f733fd9)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.246.0](https://github.com/HankHuang0516/EClaw/compare/v1.245.0...v1.246.0) (2026-03-28)


### Features

* **i18n:** add 50 Spanish translations (batch 28) ([#643](https://github.com/HankHuang0516/EClaw/issues/643)) ([971b0f7](https://github.com/HankHuang0516/EClaw/commit/971b0f7e90c88c68e879ea04178f7af17ac1fa73)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.245.0](https://github.com/HankHuang0516/EClaw/compare/v1.244.0...v1.245.0) (2026-03-28)


### Features

* **i18n:** add 50 Spanish translations (batch 27) ([#642](https://github.com/HankHuang0516/EClaw/issues/642)) ([1263383](https://github.com/HankHuang0516/EClaw/commit/12633832b366354971ceb71b27b8e2d624b0e357)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)
* deprecate mission/schedule add UI + tests — redirect to Kanban (3-platform) ([94a48a4](https://github.com/HankHuang0516/EClaw/commit/94a48a4d265a8db04ce9177f101423a04e4e06d9))

# [1.244.0](https://github.com/HankHuang0516/EClaw/compare/v1.243.0...v1.244.0) (2026-03-28)


### Features

* **i18n:** add 63 Spanish translations (batch 26) ([#641](https://github.com/HankHuang0516/EClaw/issues/641)) ([e560fd7](https://github.com/HankHuang0516/EClaw/commit/e560fd78110dcf834eed037de37e49567fff5415)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.243.0](https://github.com/HankHuang0516/EClaw/compare/v1.242.0...v1.243.0) (2026-03-28)


### Features

* **i18n:** add 50 Spanish translations (batch 25) ([#640](https://github.com/HankHuang0516/EClaw/issues/640)) ([36550ca](https://github.com/HankHuang0516/EClaw/commit/36550caee565227b8bba54694c460b76383c9f65)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.242.0](https://github.com/HankHuang0516/EClaw/compare/v1.241.0...v1.242.0) (2026-03-28)


### Features

* **i18n:** add 50 Spanish translations (batch 24) ([#639](https://github.com/HankHuang0516/EClaw/issues/639)) ([3045e17](https://github.com/HankHuang0516/EClaw/commit/3045e176315c443d79b97de690c9c07d48d665ff)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.241.0](https://github.com/HankHuang0516/EClaw/compare/v1.240.0...v1.241.0) (2026-03-28)


### Features

* **i18n:** add 50 Spanish translations (batch 23) ([#638](https://github.com/HankHuang0516/EClaw/issues/638)) ([8efd1bc](https://github.com/HankHuang0516/EClaw/commit/8efd1bc86f89526a5096b30c4d4365fea4c36b23)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.240.0](https://github.com/HankHuang0516/EClaw/compare/v1.239.0...v1.240.0) (2026-03-28)


### Features

* **i18n:** add 49 Spanish translations (batch 22) ([#637](https://github.com/HankHuang0516/EClaw/issues/637)) ([3186cd3](https://github.com/HankHuang0516/EClaw/commit/3186cd34f14388879eb2df037c4dc1f1aefe1054)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.239.0](https://github.com/HankHuang0516/EClaw/compare/v1.238.0...v1.239.0) (2026-03-28)


### Features

* **i18n:** add 50 Spanish translations (batch 21) ([#636](https://github.com/HankHuang0516/EClaw/issues/636)) ([36a276c](https://github.com/HankHuang0516/EClaw/commit/36a276cd49de79293688468647bed5d6c6d6ee5c)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.238.0](https://github.com/HankHuang0516/EClaw/compare/v1.237.0...v1.238.0) (2026-03-28)


### Features

* **i18n:** add 50 Spanish translations (batch 20) ([#635](https://github.com/HankHuang0516/EClaw/issues/635)) ([e3b8170](https://github.com/HankHuang0516/EClaw/commit/e3b8170fd76d8633db35046f07d1559f666b17c2)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.237.0](https://github.com/HankHuang0516/EClaw/compare/v1.236.0...v1.237.0) (2026-03-28)


### Features

* **i18n:** add 50 Spanish translations (batch 19) ([#634](https://github.com/HankHuang0516/EClaw/issues/634)) ([c831b0c](https://github.com/HankHuang0516/EClaw/commit/c831b0c13db89af1add2f03fb4b7e67501e3447d)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.236.0](https://github.com/HankHuang0516/EClaw/compare/v1.235.0...v1.236.0) (2026-03-28)


### Features

* **i18n:** add 50 Spanish translations (batch 18) ([#633](https://github.com/HankHuang0516/EClaw/issues/633)) ([e4edd8d](https://github.com/HankHuang0516/EClaw/commit/e4edd8dcc40442ea0cd8cf700bec63d7022afb8c)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.235.0](https://github.com/HankHuang0516/EClaw/compare/v1.234.0...v1.235.0) (2026-03-28)


### Features

* **i18n:** add 50 Spanish translations (batch 17) ([#632](https://github.com/HankHuang0516/EClaw/issues/632)) ([1bb7d20](https://github.com/HankHuang0516/EClaw/commit/1bb7d202cbfc48ceb3a9cba77b63d92d39a100b2)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.234.0](https://github.com/HankHuang0516/EClaw/compare/v1.233.0...v1.234.0) (2026-03-28)


### Features

* **i18n:** add 50 Spanish translations (batch 16) ([#631](https://github.com/HankHuang0516/EClaw/issues/631)) ([c377744](https://github.com/HankHuang0516/EClaw/commit/c377744ea11b3c912b83617ca31e8f60b7157a19)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.233.0](https://github.com/HankHuang0516/EClaw/compare/v1.232.0...v1.233.0) (2026-03-28)


### Features

* **i18n:** add 50 Spanish translations (batch 15) ([#630](https://github.com/HankHuang0516/EClaw/issues/630)) ([7493214](https://github.com/HankHuang0516/EClaw/commit/749321414258db1971baea77e631dc8539d7f448)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.232.0](https://github.com/HankHuang0516/EClaw/compare/v1.231.0...v1.232.0) (2026-03-28)


### Features

* **i18n:** add 50 Spanish translations (batch 14) ([#629](https://github.com/HankHuang0516/EClaw/issues/629)) ([d921d74](https://github.com/HankHuang0516/EClaw/commit/d921d7463c7d908821f5a4b41e9c5b28af57b9db)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.231.0](https://github.com/HankHuang0516/EClaw/compare/v1.230.0...v1.231.0) (2026-03-28)


### Features

* **i18n:** add 42 Spanish translations (batch 13) ([#628](https://github.com/HankHuang0516/EClaw/issues/628)) ([6a7fed0](https://github.com/HankHuang0516/EClaw/commit/6a7fed0ac068bbe3988d754bcc7aa054e1519e0b)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.230.0](https://github.com/HankHuang0516/EClaw/compare/v1.229.0...v1.230.0) (2026-03-28)


### Features

* **i18n:** add 50 Spanish translations (batch 12) ([#627](https://github.com/HankHuang0516/EClaw/issues/627)) ([f0b9317](https://github.com/HankHuang0516/EClaw/commit/f0b9317cf8c7dd653a09aa7d9f453c55933c3304)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.229.0](https://github.com/HankHuang0516/EClaw/compare/v1.228.0...v1.229.0) (2026-03-28)


### Features

* **i18n:** add 50 Spanish translations (batch 11) ([#626](https://github.com/HankHuang0516/EClaw/issues/626)) ([20df4f6](https://github.com/HankHuang0516/EClaw/commit/20df4f60826855eb277796a8faee3105b5b4d7e9)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.228.0](https://github.com/HankHuang0516/EClaw/compare/v1.227.0...v1.228.0) (2026-03-28)


### Features

* **i18n:** add 50 Spanish translations (batch 10) ([#625](https://github.com/HankHuang0516/EClaw/issues/625)) ([1add405](https://github.com/HankHuang0516/EClaw/commit/1add405a15616fecd47d91abf33b9eecef6423d8)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.227.0](https://github.com/HankHuang0516/EClaw/compare/v1.226.0...v1.227.0) (2026-03-28)


### Features

* **i18n:** add 50 Spanish translations (batch 9) ([#624](https://github.com/HankHuang0516/EClaw/issues/624)) ([db66a28](https://github.com/HankHuang0516/EClaw/commit/db66a28f4539d0fd3160adc819feba979e734860)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.226.0](https://github.com/HankHuang0516/EClaw/compare/v1.225.0...v1.226.0) (2026-03-28)


### Features

* **i18n:** add 50 Spanish translations (batch 8) ([#623](https://github.com/HankHuang0516/EClaw/issues/623)) ([889106b](https://github.com/HankHuang0516/EClaw/commit/889106b52584e84ce763861ea49e7755ebbcfa07)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.225.0](https://github.com/HankHuang0516/EClaw/compare/v1.224.0...v1.225.0) (2026-03-28)


### Features

* **i18n:** add 50 Spanish translations (batch 7) ([#622](https://github.com/HankHuang0516/EClaw/issues/622)) ([4d7c05f](https://github.com/HankHuang0516/EClaw/commit/4d7c05fc7846e3dfa896de1f49a4136d664f47c3)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.224.0](https://github.com/HankHuang0516/EClaw/compare/v1.223.0...v1.224.0) (2026-03-28)


### Features

* **i18n:** add 50 Spanish translations (batch 6) ([#621](https://github.com/HankHuang0516/EClaw/issues/621)) ([5012e3b](https://github.com/HankHuang0516/EClaw/commit/5012e3beedf88ec4cbeffb320711132acc8f7db4)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.223.0](https://github.com/HankHuang0516/EClaw/compare/v1.222.0...v1.223.0) (2026-03-28)


### Features

* **i18n:** add 50 Spanish translations (batch 5) ([#620](https://github.com/HankHuang0516/EClaw/issues/620)) ([e8afe38](https://github.com/HankHuang0516/EClaw/commit/e8afe38ba7a8f5eb32b632f07141692d172d956a)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.222.0](https://github.com/HankHuang0516/EClaw/compare/v1.221.0...v1.222.0) (2026-03-28)


### Features

* **i18n:** add 50 Spanish translations (batch 4) ([#619](https://github.com/HankHuang0516/EClaw/issues/619)) ([7fc6da8](https://github.com/HankHuang0516/EClaw/commit/7fc6da8c892fca9835f2b743f05ec29172f3975c)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.221.0](https://github.com/HankHuang0516/EClaw/compare/v1.220.0...v1.221.0) (2026-03-28)


### Features

* **i18n:** add 50 Spanish translations (batch 3) ([#618](https://github.com/HankHuang0516/EClaw/issues/618)) ([1474dc4](https://github.com/HankHuang0516/EClaw/commit/1474dc430146f67563212c60df978a46fe0edff2)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.220.0](https://github.com/HankHuang0516/EClaw/compare/v1.219.0...v1.220.0) (2026-03-28)


### Features

* **i18n:** add 8 European language translations ([#614](https://github.com/HankHuang0516/EClaw/issues/614)) ([a18e33b](https://github.com/HankHuang0516/EClaw/commit/a18e33b319335c5173ce7f87ebea284d1fe74b4c)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.219.0](https://github.com/HankHuang0516/EClaw/compare/v1.218.1...v1.219.0) (2026-03-28)


### Features

* **community:** replace mock data with real API + enable comments ([#613](https://github.com/HankHuang0516/EClaw/issues/613)) ([60e6736](https://github.com/HankHuang0516/EClaw/commit/60e67362f3c4bb765421e1542045327266e1e84b))

## [1.218.1](https://github.com/HankHuang0516/EClaw/compare/v1.218.0...v1.218.1) (2026-03-28)


### Bug Fixes

* **chat:** use entity name as source for channel bot replies ([#612](https://github.com/HankHuang0516/EClaw/issues/612)) ([cdd624a](https://github.com/HankHuang0516/EClaw/commit/cdd624ababb628a05f2c0b84cead492676860794))

# [1.218.0](https://github.com/HankHuang0516/EClaw/compare/v1.217.1...v1.218.0) (2026-03-28)


### Features

* **kanban:** auto-move child cards to review when bot transforms IDLE ([#611](https://github.com/HankHuang0516/EClaw/issues/611)) ([1ba3e5b](https://github.com/HankHuang0516/EClaw/commit/1ba3e5bdb3c90893cb69691c4fb0da7ec80733cd)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2)

## [1.217.1](https://github.com/HankHuang0516/EClaw/compare/v1.217.0...v1.217.1) (2026-03-28)


### Bug Fixes

* **mission:** add collapsible Notes section + truncate note preview to 80 chars ([65da94f](https://github.com/HankHuang0516/EClaw/commit/65da94f82786a27104571252ef672d8894707359))

# [1.217.0](https://github.com/HankHuang0516/EClaw/compare/v1.216.0...v1.217.0) (2026-03-28)


### Features

* **i18n:** add Arabic (ar) translation (squashed) ([f6b810d](https://github.com/HankHuang0516/EClaw/commit/f6b810d056b2cd524f8c60ddc0886f0f915f7c9f)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.216.0](https://github.com/HankHuang0516/EClaw/compare/v1.215.0...v1.216.0) (2026-03-28)


### Bug Fixes

* **kanban:** App WebView guard — hide nav/footer, force mobile layout for board & detail modal ([8157771](https://github.com/HankHuang0516/EClaw/commit/81577716daddeadb1ebf76a8a009c6a431a5150b))


### Features

* **i18n:** add AI agent installation hint to all channel prompts ([b46ab46](https://github.com/HankHuang0516/EClaw/commit/b46ab46615207a0f8a3bf9982503cf4e7a3cd331))
* **i18n:** add Hindi (hi) translation (squashed) ([24f55fd](https://github.com/HankHuang0516/EClaw/commit/24f55fd016b6cc087489829a73f62b326f46e09c))

# [1.215.0](https://github.com/HankHuang0516/EClaw/compare/v1.214.0...v1.215.0) (2026-03-28)


### Features

* **i18n:** add Malay (ms) translation (squashed) ([5c786d4](https://github.com/HankHuang0516/EClaw/commit/5c786d4ba1d86b261f78625d22db3c4df2e65236)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.214.0](https://github.com/HankHuang0516/EClaw/compare/v1.213.0...v1.214.0) (2026-03-28)


### Features

* **i18n:** add Spanish (es) translation batch 2 (squashed) ([c9bbfb4](https://github.com/HankHuang0516/EClaw/commit/c9bbfb470c3da7a9d177aa20bc8d7c61f14e678d)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

# [1.213.0](https://github.com/HankHuang0516/EClaw/compare/v1.212.0...v1.213.0) (2026-03-28)


### Features

* **i18n:** add ms (Malay) translation for Portal Shared ([#603](https://github.com/HankHuang0516/EClaw/issues/603)) ([a381348](https://github.com/HankHuang0516/EClaw/commit/a381348ecd3d8dc4ea4819c156213e4fcd99fd41))

# [1.212.0](https://github.com/HankHuang0516/EClaw/compare/v1.211.2...v1.212.0) (2026-03-28)


### Features

* **i18n:** add Spanish (es) translation for Mission Control keys (squashed) ([713a3cf](https://github.com/HankHuang0516/EClaw/commit/713a3cf7a1268a2a98ec91cd5362831e1447340c)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6)

## [1.211.2](https://github.com/HankHuang0516/EClaw/compare/v1.211.1...v1.211.2) (2026-03-27)


### Bug Fixes

* **security:** remove debug endpoints, XSS vector, add rate limit + SEO/i18n fixes ([0a67fca](https://github.com/HankHuang0516/EClaw/commit/0a67fcaf5eb51c25a072ca9de4cdfbcf0659aad1))

## [1.211.1](https://github.com/HankHuang0516/EClaw/compare/v1.211.0...v1.211.1) (2026-03-27)


### Bug Fixes

* **kanban:** automation cards openable in detail modal ([a8d0865](https://github.com/HankHuang0516/EClaw/commit/a8d086575d229485fecbb525cfc654ebb8e5c111))

# [1.211.0](https://github.com/HankHuang0516/EClaw/compare/v1.210.2...v1.211.0) (2026-03-27)


### Features

* **kanban:** expose isAutomation in PUT /card/:id/config ([ffa265e](https://github.com/HankHuang0516/EClaw/commit/ffa265eeeb9717955ad15d9b4ec67c707993a49f))

## [1.210.2](https://github.com/HankHuang0516/EClaw/compare/v1.210.1...v1.210.2) (2026-03-27)


### Bug Fixes

* **kanban:** notifyEntities — chat history + standard API hints ([bef029b](https://github.com/HankHuang0516/EClaw/commit/bef029b7b736d063110df2dbf2f5f656802ffc1e))


### Performance Improvements

* **cache:** add gzip compression and fix Cache-Control headers to reduce egress ([26bbe6a](https://github.com/HankHuang0516/EClaw/commit/26bbe6a2f032a3e9322bc62eb9521eaefd04ec0d))

## [1.210.1](https://github.com/HankHuang0516/EClaw/compare/v1.210.0...v1.210.1) (2026-03-27)


### Bug Fixes

* **kanban:** expose schedule.lastRunAt after once-trigger completes ([6e46f96](https://github.com/HankHuang0516/EClaw/commit/6e46f96fefa51cab1062517457bea7f9d771ef3e))

# [1.210.0](https://github.com/HankHuang0516/EClaw/compare/v1.209.0...v1.210.0) (2026-03-27)


### Features

* **info:** [P1-5] Gatekeeper 安全 + 多平台同步 Demo + i18n (P1 COMPLETE) ([ef8240b](https://github.com/HankHuang0516/EClaw/commit/ef8240bae9baa3438a909b666155d2d5385c83f0))

# [1.209.0](https://github.com/HankHuang0516/EClaw/compare/v1.208.0...v1.209.0) (2026-03-27)


### Features

* **info:** [P1-4] Bot 廣場 + 動態桌布 Demo + i18n ([622ed33](https://github.com/HankHuang0516/EClaw/commit/622ed33cfeb1b52cc7650eae943cef009ff7a83c))

# [1.208.0](https://github.com/HankHuang0516/EClaw/compare/v1.207.0...v1.208.0) (2026-03-27)


### Features

* **info:** [P1-4] Bot 廣場 + 動態桌布 Demo HTML + i18n ([6212694](https://github.com/HankHuang0516/EClaw/commit/62126945ec1ae510a65964de88972acdddb4cb58))

# [1.207.0](https://github.com/HankHuang0516/EClaw/compare/v1.206.0...v1.207.0) (2026-03-27)


### Features

* **info:** [P1-2] Kanban AI 團隊看板 Demo HTML + i18n ([36141be](https://github.com/HankHuang0516/EClaw/commit/36141be5c00f022fc34f577b7e1226ea090e8557)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#4](https://github.com/HankHuang0516/EClaw/issues/4) [#5](https://github.com/HankHuang0516/EClaw/issues/5)
* **info:** [P1-3] GPS 定位智慧推薦 Demo HTML + i18n ([e235f34](https://github.com/HankHuang0516/EClaw/commit/e235f34ca9d1edb4ae21bcaac06dc950891837ca))

# [1.206.0](https://github.com/HankHuang0516/EClaw/compare/v1.205.0...v1.206.0) (2026-03-27)


### Features

* **backend:** [P1-3] GET /api/gatekeeper/stats — 攔截統計端點 ([b4958ba](https://github.com/HankHuang0516/EClaw/commit/b4958ba5582230b5e880fd815233ed777317301c))

# [1.205.0](https://github.com/HankHuang0516/EClaw/compare/v1.204.1...v1.205.0) (2026-03-27)


### Features

* **backend:** [P1-2] GET /api/gps/recommendations — GPS mock 推薦 API ([d918d17](https://github.com/HankHuang0516/EClaw/commit/d918d1717fffbaef43b87c32c8c0e2b4382647fd))

## [1.204.1](https://github.com/HankHuang0516/EClaw/compare/v1.204.0...v1.204.1) (2026-03-27)


### Bug Fixes

* **i18n:** add missing guide_kb_cta_* keys (3×3 langs) ([260a479](https://github.com/HankHuang0516/EClaw/commit/260a47931d7264022bed5c00834f914407210a87))

# [1.204.0](https://github.com/HankHuang0516/EClaw/compare/v1.203.2...v1.204.0) (2026-03-27)


### Features

* **info:** [P1-2] Kanban AI 團隊看板 Demo + i18n (PR [#582](https://github.com/HankHuang0516/EClaw/issues/582)) ([c80f7f6](https://github.com/HankHuang0516/EClaw/commit/c80f7f6be081e47195295b400a1e771f3d505cae))

## [1.203.2](https://github.com/HankHuang0516/EClaw/compare/v1.203.1...v1.203.2) (2026-03-27)


### Bug Fixes

* **kanban:** populate entity maps so assigned avatar chips show correct entity ([#580](https://github.com/HankHuang0516/EClaw/issues/580)) ([559c1dd](https://github.com/HankHuang0516/EClaw/commit/559c1ddde111bc60c19d9d64100f2fff5cdaa135))

## [1.203.1](https://github.com/HankHuang0516/EClaw/compare/v1.203.0...v1.203.1) (2026-03-27)


### Bug Fixes

* **community:** correct i18n.js path (shared/ → ../shared/) ([10f5e95](https://github.com/HankHuang0516/EClaw/commit/10f5e9584ce99112495a7747da21cbf769887eae))

# [1.203.0](https://github.com/HankHuang0516/EClaw/compare/v1.202.0...v1.203.0) (2026-03-27)


### Features

* **mission:** mobile card detail view + execution time countdown ([#578](https://github.com/HankHuang0516/EClaw/issues/578)) ([4e3da21](https://github.com/HankHuang0516/EClaw/commit/4e3da214c54da37977478701c73ab455cb5b46b8))

# [1.202.0](https://github.com/HankHuang0516/EClaw/compare/v1.201.0...v1.202.0) (2026-03-27)


### Features

* **info:** 新增電商 AI 客服 Demo 實用案例 ([52bf879](https://github.com/HankHuang0516/EClaw/commit/52bf8798c3ae287a3c819b09664b5a7b2a9d225a)), closes [enterprise#ecommerce-demo](https://github.com/enterprise/issues/ecommerce-demo)

# [1.201.0](https://github.com/HankHuang0516/EClaw/compare/v1.200.0...v1.201.0) (2026-03-27)


### Features

* **info:** ecommerce AI demo use case ([#576](https://github.com/HankHuang0516/EClaw/issues/576)) ([e341799](https://github.com/HankHuang0516/EClaw/commit/e341799cc8ab976ae3abf732c5c3da0e9b77377d))

# [1.200.0](https://github.com/HankHuang0516/EClaw/compare/v1.199.4...v1.200.0) (2026-03-27)


### Features

* **kanban:** GET /cards/summary endpoint ([#575](https://github.com/HankHuang0516/EClaw/issues/575)) ([3cfd3d1](https://github.com/HankHuang0516/EClaw/commit/3cfd3d1df2cfd2851d1a588e0e2441f78264f07e))

## [1.199.4](https://github.com/HankHuang0516/EClaw/compare/v1.199.3...v1.199.4) (2026-03-27)


### Bug Fixes

* **i18n:** restore 314 data-i18n tags on 5 usecase panels + add 39 voice TTS keys ([c131953](https://github.com/HankHuang0516/EClaw/commit/c131953817f46e73981599141c6152490f3878b3))

## [1.199.3](https://github.com/HankHuang0516/EClaw/compare/v1.199.2...v1.199.3) (2026-03-27)


### Bug Fixes

* **auth:** restore deviceSecret in /api/auth/me — fixes mission 401 ([#574](https://github.com/HankHuang0516/EClaw/issues/574)) ([b8969c2](https://github.com/HankHuang0516/EClaw/commit/b8969c2b5016470fee8ccd635894584ab910c9d2)), closes [#490](https://github.com/HankHuang0516/EClaw/issues/490)

## [1.199.2](https://github.com/HankHuang0516/EClaw/compare/v1.199.1...v1.199.2) (2026-03-27)


### Bug Fixes

* **mission:** catch and display init errors instead of silent redirect ([#572](https://github.com/HankHuang0516/EClaw/issues/572)) ([6b8e20c](https://github.com/HankHuang0516/EClaw/commit/6b8e20c792f164540c761aa5030edf51a9538471))

## [1.199.1](https://github.com/HankHuang0516/EClaw/compare/v1.199.0...v1.199.1) (2026-03-27)


### Bug Fixes

* **nav:** remove auto-redirect to workspace, use direct navigation ([#571](https://github.com/HankHuang0516/EClaw/issues/571)) ([434ff56](https://github.com/HankHuang0516/EClaw/commit/434ff56aad9ed5dad3a1f926a673b829b41eb455))

# [1.199.0](https://github.com/HankHuang0516/EClaw/compare/v1.198.3...v1.199.0) (2026-03-27)


### Features

* **info:** TTS voice demo + workspace page + i18n + nav updates ([#569](https://github.com/HankHuang0516/EClaw/issues/569)) ([3e63999](https://github.com/HankHuang0516/EClaw/commit/3e639999b201ac7cc6c9aeecc2a1a7f5ffeed31c))

## [1.198.3](https://github.com/HankHuang0516/EClaw/compare/v1.198.2...v1.198.3) (2026-03-26)


### Bug Fixes

* **test:** skip device register rate limiter in test environment ([08e2923](https://github.com/HankHuang0516/EClaw/commit/08e29233f10634a63a77d45b89235d80cbf5171c)), closes [#491](https://github.com/HankHuang0516/EClaw/issues/491)

## [1.198.2](https://github.com/HankHuang0516/EClaw/compare/v1.198.1...v1.198.2) (2026-03-26)


### Bug Fixes

* webhook payload, i18n coverage, chat receipt, security hardening ([#490](https://github.com/HankHuang0516/EClaw/issues/490) [#491](https://github.com/HankHuang0516/EClaw/issues/491) [#492](https://github.com/HankHuang0516/EClaw/issues/492) [#493](https://github.com/HankHuang0516/EClaw/issues/493) [#547](https://github.com/HankHuang0516/EClaw/issues/547)) ([#567](https://github.com/HankHuang0516/EClaw/issues/567)) ([cfc9497](https://github.com/HankHuang0516/EClaw/commit/cfc94974721bed322ef6c5a358e3c91703a33874))

## [1.198.1](https://github.com/HankHuang0516/EClaw/compare/v1.198.0...v1.198.1) (2026-03-26)


### Bug Fixes

* **settings:** show Display card inside workspace iframe ([#566](https://github.com/HankHuang0516/EClaw/issues/566)) ([5261dd5](https://github.com/HankHuang0516/EClaw/commit/5261dd5b9eb25ff54202137c7cb69cdea1ef33b9))

# [1.198.0](https://github.com/HankHuang0516/EClaw/compare/v1.197.1...v1.198.0) (2026-03-26)


### Features

* **workspace:** unlimited panes with draggable tab reorder ([#565](https://github.com/HankHuang0516/EClaw/issues/565)) ([5692e08](https://github.com/HankHuang0516/EClaw/commit/5692e08f27470ce524f70c9c10250aab84879aac))

## [1.197.1](https://github.com/HankHuang0516/EClaw/compare/v1.197.0...v1.197.1) (2026-03-26)


### Bug Fixes

* **workspace:** add draggable divider + fix duplicate nav in iframes ([#564](https://github.com/HankHuang0516/EClaw/issues/564)) ([c3e4ceb](https://github.com/HankHuang0516/EClaw/commit/c3e4ceb7da650f31f6eca3dfac7429067ec73845))

# [1.197.0](https://github.com/HankHuang0516/EClaw/compare/v1.196.0...v1.197.0) (2026-03-26)


### Features

* **settings:** move split view toggle to Settings page ([#563](https://github.com/HankHuang0516/EClaw/issues/563)) ([c4f2699](https://github.com/HankHuang0516/EClaw/commit/c4f2699774ab6b7ca952d5b804715f4a02dd6314))

# [1.196.0](https://github.com/HankHuang0516/EClaw/compare/v1.195.6...v1.196.0) (2026-03-26)


### Features

* **portal:** add split-view dual-pane workspace mode ([#562](https://github.com/HankHuang0516/EClaw/issues/562)) ([49ec35f](https://github.com/HankHuang0516/EClaw/commit/49ec35ff22f6cea3b673fbe4f3186ebf34ea1ad0))

## [1.195.6](https://github.com/HankHuang0516/EClaw/compare/v1.195.5...v1.195.6) (2026-03-26)


### Bug Fixes

* **info:** move 5 usecase/detail panels from Advanced tab to User Guide tab ([84cb426](https://github.com/HankHuang0516/EClaw/commit/84cb426953f8e2f0f8bd13b06fba477ea94eb9dc)), closes [#panel-guide](https://github.com/HankHuang0516/EClaw/issues/panel-guide) [#panel-advanced](https://github.com/HankHuang0516/EClaw/issues/panel-advanced)

## [1.195.5](https://github.com/HankHuang0516/EClaw/compare/v1.195.4...v1.195.5) (2026-03-26)


### Bug Fixes

* **info:** restore Chinese guide panels — remove 314 orphan i18n tags ([#561](https://github.com/HankHuang0516/EClaw/issues/561)) ([f288302](https://github.com/HankHuang0516/EClaw/commit/f288302842c3aea86765f204fa19d96cd3ca402e))

## [1.195.4](https://github.com/HankHuang0516/EClaw/compare/v1.195.3...v1.195.4) (2026-03-26)


### Bug Fixes

* **note-page:** preserve <style> tags in public note page sanitizer ([#560](https://github.com/HankHuang0516/EClaw/issues/560)) ([6a6e678](https://github.com/HankHuang0516/EClaw/commit/6a6e6780e8fc2f1713f65a231fdc69a7d9aaa5f6))

## [1.195.3](https://github.com/HankHuang0516/EClaw/compare/v1.195.2...v1.195.3) (2026-03-26)


### Bug Fixes

* **i18n:** preserve original HTML when no translation found ([#559](https://github.com/HankHuang0516/EClaw/issues/559)) ([7f2570d](https://github.com/HankHuang0516/EClaw/commit/7f2570d4099c82cfd8847d0ee40425a3115c26f4))

## [1.195.2](https://github.com/HankHuang0516/EClaw/compare/v1.195.1...v1.195.2) (2026-03-26)


### Bug Fixes

* **note-page:** expand allowed CSS styles in public note page sanitizer ([#558](https://github.com/HankHuang0516/EClaw/issues/558)) ([fb602c0](https://github.com/HankHuang0516/EClaw/commit/fb602c0022195b4a0dadde12cecdd170ade8d8e5))

## [1.195.1](https://github.com/HankHuang0516/EClaw/compare/v1.195.0...v1.195.1) (2026-03-26)


### Bug Fixes

* **assets:** add cache-busting query to demo GIFs for CDN refresh ([40a623d](https://github.com/HankHuang0516/EClaw/commit/40a623d9163f3306d7c1380116b0ccbf18d10894))

# [1.195.0](https://github.com/HankHuang0516/EClaw/compare/v1.194.0...v1.195.0) (2026-03-26)


### Features

* **info:** Mermaid architecture diagram ([#557](https://github.com/HankHuang0516/EClaw/issues/557)) ([64ed330](https://github.com/HankHuang0516/EClaw/commit/64ed330e1959fd1ae4678b55ee75ef56f6f24e83))

# [1.194.0](https://github.com/HankHuang0516/EClaw/compare/v1.193.3...v1.194.0) (2026-03-26)


### Features

* **mission:** add copy public link button to note page viewer toolbar ([#556](https://github.com/HankHuang0516/EClaw/issues/556)) ([686cfd9](https://github.com/HankHuang0516/EClaw/commit/686cfd9644f248fdd544611f221fb452dae4f379))

## [1.193.3](https://github.com/HankHuang0516/EClaw/compare/v1.193.2...v1.193.3) (2026-03-26)


### Bug Fixes

* **i18n:** add missing info.html keys — FAQ chips, release notes, proxy window across all 8 languages ([e4e4421](https://github.com/HankHuang0516/EClaw/commit/e4e44211999913f9a0d8f730cfe64de016168cf4))

## [1.193.2](https://github.com/HankHuang0516/EClaw/compare/v1.193.1...v1.193.2) (2026-03-26)


### Bug Fixes

* **kanban:** avatar + name chip for assigned bots ([#555](https://github.com/HankHuang0516/EClaw/issues/555)) ([1b2af2c](https://github.com/HankHuang0516/EClaw/commit/1b2af2c6417f930e3a0ca0c07ff07ff3929fb9cf))

## [1.193.1](https://github.com/HankHuang0516/EClaw/compare/v1.193.0...v1.193.1) (2026-03-26)


### Bug Fixes

* **enterprise:** correct product catalog note page link ([#554](https://github.com/HankHuang0516/EClaw/issues/554)) ([fdf6065](https://github.com/HankHuang0516/EClaw/commit/fdf606592932efdf1a70e6b919da5a2d305fa9fd))

# [1.193.0](https://github.com/HankHuang0516/EClaw/compare/v1.192.1...v1.193.0) (2026-03-26)


### Bug Fixes

* **i18n:** add 71 missing keys for info.html across all 8 languages ([f4eb0fa](https://github.com/HankHuang0516/EClaw/commit/f4eb0fae6e723ec4fbf694abb13afdefedc70f27))


### Features

* **ui:** add channel binding warning above generate code on all platforms ([2e2f1a3](https://github.com/HankHuang0516/EClaw/commit/2e2f1a3c55cffa7573f5d9f5517a76a721cc54ae))
* **community:** Bot Plaza Demo badges + disabled comments ([#553](https://github.com/HankHuang0516/EClaw/issues/553)) ([e82a633](https://github.com/HankHuang0516/EClaw/commit/e82a633f2d6a10ebeb9013998419dfedb4a3b1c3))
* **rate-limit:** bot-to-bot token bucket — regenerate 1 msg/min instead of blocking until human speaks ([e772540](https://github.com/HankHuang0516/EClaw/commit/e772540d431124a6a326bbca3261674d351925e9))

## [1.192.1](https://github.com/HankHuang0516/EClaw/compare/v1.192.0...v1.192.1) (2026-03-26)


### Bug Fixes

* **i18n:** add 10 kanban automation keys — en/zh/zh-CN ([#552](https://github.com/HankHuang0516/EClaw/issues/552)) ([bb17594](https://github.com/HankHuang0516/EClaw/commit/bb17594c9805a4c922eea5d8f95e31d89e357bea))
* **assets:** regenerate demo GIFs with proper emoji rendering ([2d624be](https://github.com/HankHuang0516/EClaw/commit/2d624be594df53f15bd7282e9c57c1b0cbc5db51))

# [1.192.0](https://github.com/HankHuang0516/EClaw/compare/v1.191.0...v1.192.0) (2026-03-26)


### Features

* **kanban:** ⚡ automation collapse section + auto-card badge + create toggle ([#551](https://github.com/HankHuang0516/EClaw/issues/551)) ([2105e6c](https://github.com/HankHuang0516/EClaw/commit/2105e6cfd204281416939b4f4c4ab1c257b1fb2f))

# [1.191.0](https://github.com/HankHuang0516/EClaw/compare/v1.190.1...v1.191.0) (2026-03-26)


### Features

* **kanban:** automation parent/child card mechanism ([#549](https://github.com/HankHuang0516/EClaw/issues/549)) ([6711124](https://github.com/HankHuang0516/EClaw/commit/6711124261020664561095bc2fea5ae553f3aff1))

## [1.190.1](https://github.com/HankHuang0516/EClaw/compare/v1.190.0...v1.190.1) (2026-03-26)


### Bug Fixes

* **kanban:** wire up pushToChannelCallback for bot notifications ([#550](https://github.com/HankHuang0516/EClaw/issues/550)) ([68fe47c](https://github.com/HankHuang0516/EClaw/commit/68fe47cd32f321d3d396acdab3b81ce8ba547c11))

# [1.190.0](https://github.com/HankHuang0516/EClaw/compare/v1.189.1...v1.190.0) (2026-03-26)


### Features

* **kanban:** avatars + countdown + relative time + chat-style comments + mobile ([#545](https://github.com/HankHuang0516/EClaw/issues/545)) ([95af8c6](https://github.com/HankHuang0516/EClaw/commit/95af8c6636927eae31aa09d347b479ef3142be46))

## [1.189.1](https://github.com/HankHuang0516/EClaw/compare/v1.189.0...v1.189.1) (2026-03-26)


### Bug Fixes

* **i18n:** 7 missing chat_ keys — en/zh/zh-CN ([#546](https://github.com/HankHuang0516/EClaw/issues/546)) ([3ab5e3c](https://github.com/HankHuang0516/EClaw/commit/3ab5e3cb35b018a26a5e2fcde9121cba557b6397))

# [1.189.0](https://github.com/HankHuang0516/EClaw/compare/v1.188.1...v1.189.0) (2026-03-26)


### Features

* [Android] MissionControlActivity 加看板 tab ([a26650b](https://github.com/HankHuang0516/EClaw/commit/a26650b226e9a2c0e67070538a2c4c2377b19bac))

## [1.188.1](https://github.com/HankHuang0516/EClaw/compare/v1.188.0...v1.188.1) (2026-03-26)


### Bug Fixes

* **kanban:** assigned bot display — camelCase + entity names ([#544](https://github.com/HankHuang0516/EClaw/issues/544)) ([b7bcc98](https://github.com/HankHuang0516/EClaw/commit/b7bcc98270a2ed67f3025610517a37b0fd0212f3)), closes [#id](https://github.com/HankHuang0516/EClaw/issues/id)

# [1.188.0](https://github.com/HankHuang0516/EClaw/compare/v1.187.5...v1.188.0) (2026-03-26)


### Features

* **kanban:** comprehensive debug logging — 53 log points ([#543](https://github.com/HankHuang0516/EClaw/issues/543)) ([f46542e](https://github.com/HankHuang0516/EClaw/commit/f46542e064cfb6ed0bbef452e450272e688890cd))

## [1.187.5](https://github.com/HankHuang0516/EClaw/compare/v1.187.4...v1.187.5) (2026-03-26)


### Bug Fixes

* **kanban:** CREATE TABLE skipped by comment filter — root cause of 503 ([#542](https://github.com/HankHuang0516/EClaw/issues/542)) ([e9cbfbe](https://github.com/HankHuang0516/EClaw/commit/e9cbfbe45e91e25428925ac2feb4385968ebbcca))

## [1.187.4](https://github.com/HankHuang0516/EClaw/compare/v1.187.3...v1.187.4) (2026-03-26)


### Bug Fixes

* kanban module crash resilience — optional cron-parser ([#540](https://github.com/HankHuang0516/EClaw/issues/540)) ([513a6e3](https://github.com/HankHuang0516/EClaw/commit/513a6e3692bde5e1b641cff1cb2ebad21cc1efd5))

## [1.187.3](https://github.com/HankHuang0516/EClaw/compare/v1.187.2...v1.187.3) (2026-03-26)


### Bug Fixes

* **i18n:** Nav unified + kanban/community/cardholder full translations ([#539](https://github.com/HankHuang0516/EClaw/issues/539)) ([282cebe](https://github.com/HankHuang0516/EClaw/commit/282cebecb388e4e727d5cd5fbb5feb76a07999e3))

## [1.187.2](https://github.com/HankHuang0516/EClaw/compare/v1.187.1...v1.187.2) (2026-03-26)


### Bug Fixes

* **i18n:** add 49 zh-TW + 36 zh-CN missing translations ([#538](https://github.com/HankHuang0516/EClaw/issues/538)) ([2def840](https://github.com/HankHuang0516/EClaw/commit/2def840a406d9678ebcb89ad29ccede139cdf096)), closes [#targetBar](https://github.com/HankHuang0516/EClaw/issues/targetBar)

## [1.187.1](https://github.com/HankHuang0516/EClaw/compare/v1.187.0...v1.187.1) (2026-03-26)


### Bug Fixes

* **kanban:** borderless fullwidth + complete i18n (44 tags) + visual polish ([#536](https://github.com/HankHuang0516/EClaw/issues/536)) ([13b6185](https://github.com/HankHuang0516/EClaw/commit/13b6185f887ce60b3382feee8c90951bf26b8361))

# [1.187.0](https://github.com/HankHuang0516/EClaw/compare/v1.186.0...v1.187.0) (2026-03-26)


### Features

* **chat:** P3-1 tooltip + lightbox nav + unread sep + empty state ([#535](https://github.com/HankHuang0516/EClaw/issues/535)) ([039de0c](https://github.com/HankHuang0516/EClaw/commit/039de0c4ba2d70ca4ca2b6e8f687322fca2d8672))

# [1.186.0](https://github.com/HankHuang0516/EClaw/compare/v1.185.0...v1.186.0) (2026-03-26)


### Bug Fixes

* **info:** P3-3 dark theme + spacing + WCAG AA contrast ([#527](https://github.com/HankHuang0516/EClaw/issues/527)) ([4da403f](https://github.com/HankHuang0516/EClaw/commit/4da403f7937d9136b260466ea9966f6b7da6e3df)), closes [#b0b0b0](https://github.com/HankHuang0516/EClaw/issues/b0b0b0) [#0D0D1A](https://github.com/HankHuang0516/EClaw/issues/0D0D1A) [#b8b8b8](https://github.com/HankHuang0516/EClaw/issues/b8b8b8) [#0D0D1A](https://github.com/HankHuang0516/EClaw/issues/0D0D1A) [#b8b8b8](https://github.com/HankHuang0516/EClaw/issues/b8b8b8)


### Features

* **kanban:** Kanban Board UI — 五欄看板 + Drag & Drop + Detail Modal ([#533](https://github.com/HankHuang0516/EClaw/issues/533)) ([834c05c](https://github.com/HankHuang0516/EClaw/commit/834c05c4f0591810e1f615a8581942b2afb71437))

# [1.185.0](https://github.com/HankHuang0516/EClaw/compare/v1.184.0...v1.185.0) (2026-03-26)


### Features

* **kanban:** card schedule system — once/recurring + unified background timer ([#534](https://github.com/HankHuang0516/EClaw/issues/534)) ([55cc077](https://github.com/HankHuang0516/EClaw/commit/55cc077a6d2a531f7451da04c743de281afb9f50)), closes [#531](https://github.com/HankHuang0516/EClaw/issues/531)

# [1.184.0](https://github.com/HankHuang0516/EClaw/compare/v1.183.1...v1.184.0) (2026-03-26)


### Features

* **kanban:** Mission v2 Kanban Card CRUD + move + comments/notes/files API ([#530](https://github.com/HankHuang0516/EClaw/issues/530)) ([123cb1e](https://github.com/HankHuang0516/EClaw/commit/123cb1e939a08f3e5427e6a20b892547b4ee3e7c))

## [1.183.1](https://github.com/HankHuang0516/EClaw/compare/v1.183.0...v1.183.1) (2026-03-26)


### Bug Fixes

* hide [SILENT] bot messages from chat history ([#529](https://github.com/HankHuang0516/EClaw/issues/529)) ([1c0f00e](https://github.com/HankHuang0516/EClaw/commit/1c0f00e4fb9cc5739426ea83e2073b073f7ae321))

# [1.183.0](https://github.com/HankHuang0516/EClaw/compare/v1.182.0...v1.183.0) (2026-03-26)


### Features

* **info:** P3-2 demo cards unified format ([#525](https://github.com/HankHuang0516/EClaw/issues/525)) ([a4a4584](https://github.com/HankHuang0516/EClaw/commit/a4a45842d7c25bf27e896a26d5ff581a51c8c2c9))

# [1.182.0](https://github.com/HankHuang0516/EClaw/compare/v1.181.0...v1.182.0) (2026-03-26)


### Features

* **chat:** message grouping + date separators + timestamp optimization ([#526](https://github.com/HankHuang0516/EClaw/issues/526)) ([bd944e2](https://github.com/HankHuang0516/EClaw/commit/bd944e24db3d2f54362348d0035144fd021f0656))
* **info:** P3-1 feature card grid layout ([#523](https://github.com/HankHuang0516/EClaw/issues/523)) ([c2bce47](https://github.com/HankHuang0516/EClaw/commit/c2bce471a3f97f56a0107365ed49dc1fa6a41359))

# [1.181.0](https://github.com/HankHuang0516/EClaw/compare/v1.180.0...v1.181.0) (2026-03-26)


### Features

* **chat:** typing indicator when bot is BUSY + code highlight ([#524](https://github.com/HankHuang0516/EClaw/issues/524)) ([539b703](https://github.com/HankHuang0516/EClaw/commit/539b70395bf8be3866831d1566b7d1ceab6e2012))

# [1.180.0](https://github.com/HankHuang0516/EClaw/compare/v1.179.1...v1.180.0) (2026-03-26)


### Features

* **chat:** code block syntax highlighting + copy button ([#522](https://github.com/HankHuang0516/EClaw/issues/522)) ([ac0a2ba](https://github.com/HankHuang0516/EClaw/commit/ac0a2ba53a0981c0dcd4e1d93c781a39af18462d)), closes [#0d1117](https://github.com/HankHuang0516/EClaw/issues/0d1117)
* **info:** P2-2 Onboarding Quick Start redesign ([#519](https://github.com/HankHuang0516/EClaw/issues/519)) ([69591ad](https://github.com/HankHuang0516/EClaw/commit/69591ad12bac517d07f621bbae080c886b57714f)), closes [#4FC3F7](https://github.com/HankHuang0516/EClaw/issues/4FC3F7)
* **assets:** P2-3 tutorial screenshots + GIF animations ([#520](https://github.com/HankHuang0516/EClaw/issues/520)) ([39d2f75](https://github.com/HankHuang0516/EClaw/commit/39d2f750b2611dbd85d61de3cbdec5502f7a1cee)), closes [#4FC3F7](https://github.com/HankHuang0516/EClaw/issues/4FC3F7)

## [1.179.1](https://github.com/HankHuang0516/EClaw/compare/v1.179.0...v1.179.1) (2026-03-26)


### Bug Fixes

* **chat:** 智慧過濾鎖定時不自動捲動到新訊息 ([#521](https://github.com/HankHuang0516/EClaw/issues/521)) ([cd8f96e](https://github.com/HankHuang0516/EClaw/commit/cd8f96e1f69e9e99411b0e5f38ff54f8f5de03fb))

# [1.179.0](https://github.com/HankHuang0516/EClaw/compare/v1.178.1...v1.179.0) (2026-03-26)


### Features

* **chat:** bot message Markdown rendering with marked.js + DOMPurify ([#516](https://github.com/HankHuang0516/EClaw/issues/516)) ([5bb536f](https://github.com/HankHuang0516/EClaw/commit/5bb536f85d82001d0a77e813b9e1a27e9f86914f))

## [1.178.1](https://github.com/HankHuang0516/EClaw/compare/v1.178.0...v1.178.1) (2026-03-26)


### Bug Fixes

* **card-holder:** web tab tabs with iframe src / purple underline / dark theme ([#518](https://github.com/HankHuang0516/EClaw/issues/518)) ([0c04e49](https://github.com/HankHuang0516/EClaw/commit/0c04e49251d46a39c15c2ceb39a00b1a8f486e9c)), closes [#7c3aed](https://github.com/HankHuang0516/EClaw/issues/7c3aed) [card-holder.html#bot-plaza](https://github.com/card-holder.html/issues/bot-plaza)

# [1.178.0](https://github.com/HankHuang0516/EClaw/compare/v1.177.4...v1.178.0) (2026-03-26)


### Features

* **android:** CardHolderActivity Bot Plaza tab with WebView ([#517](https://github.com/HankHuang0516/EClaw/issues/517)) ([dc49a47](https://github.com/HankHuang0516/EClaw/commit/dc49a47893fc326b77bd55bfc6aaef20a2436aee))

## [1.177.4](https://github.com/HankHuang0516/EClaw/compare/v1.177.3...v1.177.4) (2026-03-26)


### Bug Fixes

* replace chatPool with pool in db.js community functions (10 occurrences) ([#515](https://github.com/HankHuang0516/EClaw/issues/515)) ([adac70e](https://github.com/HankHuang0516/EClaw/commit/adac70e509991bddedcf2c45498a7bb19b0b2486))

## [1.177.3](https://github.com/HankHuang0516/EClaw/compare/v1.177.2...v1.177.3) (2026-03-26)


### Bug Fixes

* await saveDeviceData before setEntityPublic in PUT agent-card ([#513](https://github.com/HankHuang0516/EClaw/issues/513)) ([56d3570](https://github.com/HankHuang0516/EClaw/commit/56d357060c753fd469ec4fc40684f5ab6b01c764))

## [1.177.2](https://github.com/HankHuang0516/EClaw/compare/v1.177.1...v1.177.2) (2026-03-26)


### Bug Fixes

* community search finds 0 — saveDeviceData before setEntityPublic ([#512](https://github.com/HankHuang0516/EClaw/issues/512)) ([0ea2fd7](https://github.com/HankHuang0516/EClaw/commit/0ea2fd796157a84c10ac31c7f14d74b4ede59658))

## [1.177.1](https://github.com/HankHuang0516/EClaw/compare/v1.177.0...v1.177.1) (2026-03-26)


### Bug Fixes

* persist is_public to DB when set via PUT agent-card ([#510](https://github.com/HankHuang0516/EClaw/issues/510)) ([dd8eab4](https://github.com/HankHuang0516/EClaw/commit/dd8eab4a1756d702bc0c83bb9b2748f054fc1928))

# [1.177.0](https://github.com/HankHuang0516/EClaw/compare/v1.176.4...v1.177.0) (2026-03-26)


### Features

* add 5s per-device debounce to mission notify endpoint ([#509](https://github.com/HankHuang0516/EClaw/issues/509)) ([2fb854c](https://github.com/HankHuang0516/EClaw/commit/2fb854cae54e1b33ead84a1205ff31153584e11c))

## [1.176.4](https://github.com/HankHuang0516/EClaw/compare/v1.176.3...v1.176.4) (2026-03-26)


### Bug Fixes

* add public visibility toggle to PUT /api/entity/agent-card ([#508](https://github.com/HankHuang0516/EClaw/issues/508)) ([a3aaa3e](https://github.com/HankHuang0516/EClaw/commit/a3aaa3ed4509c47581bb5a06db72a30003e6a10d))

## [1.176.3](https://github.com/HankHuang0516/EClaw/compare/v1.176.2...v1.176.3) (2026-03-26)


### Bug Fixes

* copy CHANGELOG.md to backend/ in nixpacks + visibility accepts X-Bot-Secret header ([#507](https://github.com/HankHuang0516/EClaw/issues/507)) ([331b369](https://github.com/HankHuang0516/EClaw/commit/331b36907df29c394b84220124db4d15b52104b0))

## [1.176.2](https://github.com/HankHuang0516/EClaw/compare/v1.176.1...v1.176.2) (2026-03-26)


### Bug Fixes

* add debug/paths endpoint + GET fallback for community/publish ([#506](https://github.com/HankHuang0516/EClaw/issues/506)) ([6c3da58](https://github.com/HankHuang0516/EClaw/commit/6c3da58fda99cffcb756f154c328c12efc767214))

## [1.176.1](https://github.com/HankHuang0516/EClaw/compare/v1.176.0...v1.176.1) (2026-03-26)


### Bug Fixes

* release-notes path fallback + visibility alias /api/community/publish ([#505](https://github.com/HankHuang0516/EClaw/issues/505)) ([c31b66b](https://github.com/HankHuang0516/EClaw/commit/c31b66b1469c6fc97bb040d86d39d2149df260aa))

# [1.176.0](https://github.com/HankHuang0516/EClaw/compare/v1.175.0...v1.176.0) (2026-03-26)


### Bug Fixes

* visibility endpoint accepts botSecret to avoid Cloudflare WAF 503 ([#504](https://github.com/HankHuang0516/EClaw/issues/504)) ([857dc8c](https://github.com/HankHuang0516/EClaw/commit/857dc8c603b1a90b8177a60510d6750b74192a06))


### Features

* add GET /api/release-notes endpoint + dynamic release notes UI ([#503](https://github.com/HankHuang0516/EClaw/issues/503)) ([e4588ab](https://github.com/HankHuang0516/EClaw/commit/e4588ab928fc60ab411946887b9e8080d7361c9d))

# [1.175.0](https://github.com/HankHuang0516/EClaw/compare/v1.174.0...v1.175.0) (2026-03-26)


### Features

* extract Compare to independent compare.html ([#502](https://github.com/HankHuang0516/EClaw/issues/502)) ([3106028](https://github.com/HankHuang0516/EClaw/commit/3106028c1bb8fb896af76fda9d2b78e5abd0d0bc))

# [1.174.0](https://github.com/HankHuang0516/EClaw/compare/v1.173.0...v1.174.0) (2026-03-26)


### Features

* FAQ accordion with search + category chips ([#501](https://github.com/HankHuang0516/EClaw/issues/501)) ([c2e782f](https://github.com/HankHuang0516/EClaw/commit/c2e782fd2d9d6967f7d2b5c476e4e83d33b7447a))

# [1.173.0](https://github.com/HankHuang0516/EClaw/compare/v1.172.3...v1.173.0) (2026-03-26)


### Features

* restructure info.html — 4 tabs → 5 tabs (Quick Start/User Guide/Advanced/FAQ/Releases) ([#500](https://github.com/HankHuang0516/EClaw/issues/500)) ([8203421](https://github.com/HankHuang0516/EClaw/commit/820342158332a2559786009df9fb29c563689227))

## [1.172.3](https://github.com/HankHuang0516/EClaw/compare/v1.172.2...v1.172.3) (2026-03-26)


### Bug Fixes

* replace GPS demo GIF with English version (no CJK mojibake) ([#499](https://github.com/HankHuang0516/EClaw/issues/499)) ([c81d3ed](https://github.com/HankHuang0516/EClaw/commit/c81d3edb8c6e6e0a5d2b6fc6074a1edfb3bb9f87))

## [1.172.2](https://github.com/HankHuang0516/EClaw/compare/v1.172.1...v1.172.2) (2026-03-26)


### Bug Fixes

* append media URL to message body for text-based agents ([#498](https://github.com/HankHuang0516/EClaw/issues/498)) ([f29486c](https://github.com/HankHuang0516/EClaw/commit/f29486c2a7a02ec632a4202b28e8850cc585e601))

## [1.172.1](https://github.com/HankHuang0516/EClaw/compare/v1.172.0...v1.172.1) (2026-03-26)


### Bug Fixes

* change visibility endpoint from PATCH to POST (Railway proxy blocks PATCH) ([#497](https://github.com/HankHuang0516/EClaw/issues/497)) ([5121d5f](https://github.com/HankHuang0516/EClaw/commit/5121d5fc587e029bafc6156f46cb6eb325dffd6d))

# [1.172.0](https://github.com/HankHuang0516/EClaw/compare/v1.171.0...v1.172.0) (2026-03-26)


### Features

* Bot Plaza P1 — community directory APIs (#bot-plaza) ([#486](https://github.com/HankHuang0516/EClaw/issues/486)) ([b6b73e2](https://github.com/HankHuang0516/EClaw/commit/b6b73e27e22ff29494ce2e1a06586d4a197ba10e)), closes [#bot-plaza](https://github.com/HankHuang0516/EClaw/issues/bot-plaza)

# [1.171.0](https://github.com/HankHuang0516/EClaw/compare/v1.170.5...v1.171.0) (2026-03-26)


### Features

* add Community (Bot Plaza) to nav bar + deploy community.html ([#496](https://github.com/HankHuang0516/EClaw/issues/496)) ([ce91948](https://github.com/HankHuang0516/EClaw/commit/ce9194827668cf65ef87d776cee14c4a65294744)), closes [#4](https://github.com/HankHuang0516/EClaw/issues/4)

## [1.170.5](https://github.com/HankHuang0516/EClaw/compare/v1.170.4...v1.170.5) (2026-03-26)


### Bug Fixes

* chat photo display — add Flickr fallback to backup URL + onerror handler ([#495](https://github.com/HankHuang0516/EClaw/issues/495)) ([3eb12df](https://github.com/HankHuang0516/EClaw/commit/3eb12dfc3627c6a58e283d4da97c7846f7ccda0d))

## [1.170.4](https://github.com/HankHuang0516/EClaw/compare/v1.170.3...v1.170.4) (2026-03-25)


### Bug Fixes

* rename API timeout — respond before DB save, add push timeout guard ([#494](https://github.com/HankHuang0516/EClaw/issues/494)) ([e31336d](https://github.com/HankHuang0516/EClaw/commit/e31336d656dd3ac34a53b6c7d9bd8baba6438f02))

## [1.170.3](https://github.com/HankHuang0516/EClaw/compare/v1.170.2...v1.170.3) (2026-03-25)


### Bug Fixes

* security + SEO + i18n audit fixes ([#489](https://github.com/HankHuang0516/EClaw/issues/489)) ([cdaddd4](https://github.com/HankHuang0516/EClaw/commit/cdaddd44aed1ea3488b7f10155d0a221cd6385a0))

## [1.170.2](https://github.com/HankHuang0516/EClaw/compare/v1.170.1...v1.170.2) (2026-03-25)


### Bug Fixes

* **chat:** loading hint stuck on screen in target bar ([#488](https://github.com/HankHuang0516/EClaw/issues/488)) ([e0f1bdd](https://github.com/HankHuang0516/EClaw/commit/e0f1bdd95c89eb27d5855d64da9c48b69baa98ba)), closes [#targetBar](https://github.com/HankHuang0516/EClaw/issues/targetBar)

## [1.170.1](https://github.com/HankHuang0516/EClaw/compare/v1.170.0...v1.170.1) (2026-03-25)


### Bug Fixes

* skip NAME_CHANGED notification when entity name is unchanged ([#487](https://github.com/HankHuang0516/EClaw/issues/487)) ([29e1f63](https://github.com/HankHuang0516/EClaw/commit/29e1f633bbcdc1106925b2ea9cd60176948fd1a5))

# [1.170.0](https://github.com/HankHuang0516/EClaw/compare/v1.169.2...v1.170.0) (2026-03-25)


### Features

* add markdown and json format options to /api/skill-doc ([#484](https://github.com/HankHuang0516/EClaw/issues/484)) ([8cbe533](https://github.com/HankHuang0516/EClaw/commit/8cbe533fc308ff87d5a19e89595bac62609925bc))

## [1.169.2](https://github.com/HankHuang0516/EClaw/compare/v1.169.1...v1.169.2) (2026-03-25)


### Bug Fixes

* **chat:** fix target bar overflow detection not working ([#483](https://github.com/HankHuang0516/EClaw/issues/483)) ([e0cbffc](https://github.com/HankHuang0516/EClaw/commit/e0cbffc3322d56cf57ffd8a0abaabd7b36a5edfc))

## [1.169.1](https://github.com/HankHuang0516/EClaw/compare/v1.169.0...v1.169.1) (2026-03-25)


### Bug Fixes

* add GPS i18n keys + remake GIF in English to avoid CJK mojibake ([#482](https://github.com/HankHuang0516/EClaw/issues/482)) ([27a8b81](https://github.com/HankHuang0516/EClaw/commit/27a8b81af5d39bdcd05079161999c23a3a9ae5f0))

# [1.169.0](https://github.com/HankHuang0516/EClaw/compare/v1.168.0...v1.169.0) (2026-03-25)


### Features

* **chat:** add side scroll navigator and target bar upward expand ([#481](https://github.com/HankHuang0516/EClaw/issues/481)) ([f58aaf2](https://github.com/HankHuang0516/EClaw/commit/f58aaf2f5ceabe1927ee1374055f433fb608f70c))

# [1.168.0](https://github.com/HankHuang0516/EClaw/compare/v1.167.0...v1.168.0) (2026-03-25)


### Features

* add TTS (text-to-speech) API for bot voice commands ([#480](https://github.com/HankHuang0516/EClaw/issues/480)) ([b6e8fe3](https://github.com/HankHuang0516/EClaw/commit/b6e8fe3d61dd69ebcfd4328627f01f9037403a13))

# [1.167.0](https://github.com/HankHuang0516/EClaw/compare/v1.166.0...v1.167.0) (2026-03-25)


### Features

* **android:** add GPS location support — listen, fetch, report ([4b0da1e](https://github.com/HankHuang0516/EClaw/commit/4b0da1e6f6c7c12b6d15e3b493090a2dd9576c85))

# [1.166.0](https://github.com/HankHuang0516/EClaw/compare/v1.165.1...v1.166.0) (2026-03-25)


### Features

* add GPS location sharing demo to info.html features section ([#479](https://github.com/HankHuang0516/EClaw/issues/479)) ([666b9d8](https://github.com/HankHuang0516/EClaw/commit/666b9d8c226387b7956f192bccd28f8935036e8c)), closes [#4](https://github.com/HankHuang0516/EClaw/issues/4)

## [1.165.1](https://github.com/HankHuang0516/EClaw/compare/v1.165.0...v1.165.1) (2026-03-25)


### Bug Fixes

* show Play Store app name on delete-account page for Google Play compliance ([3acdf81](https://github.com/HankHuang0516/EClaw/commit/3acdf81a9631274c23ff9590bebfb55498921e4f))

# [1.165.0](https://github.com/HankHuang0516/EClaw/compare/v1.164.12...v1.165.0) (2026-03-25)


### Features

* add device GPS location API (request/report/query) ([#477](https://github.com/HankHuang0516/EClaw/issues/477)) ([9816353](https://github.com/HankHuang0516/EClaw/commit/9816353fc3f6d7ff336163054118bbb46728fd9c))

## [1.164.12](https://github.com/HankHuang0516/EClaw/compare/v1.164.11...v1.164.12) (2026-03-25)


### Bug Fixes

* add shared style.css to landing page for nav bar rendering ([#476](https://github.com/HankHuang0516/EClaw/issues/476)) ([7150ac9](https://github.com/HankHuang0516/EClaw/commit/7150ac96f5e236ccd53d0783e57db7ddc6c9dc23))

## [1.164.11](https://github.com/HankHuang0516/EClaw/compare/v1.164.10...v1.164.11) (2026-03-25)


### Bug Fixes

* **security,ux:** harden CSP/CORS/sanitizer + remove usage denominator ([#465](https://github.com/HankHuang0516/EClaw/issues/465), [#463](https://github.com/HankHuang0516/EClaw/issues/463)) ([#475](https://github.com/HankHuang0516/EClaw/issues/475)) ([9bdd3d1](https://github.com/HankHuang0516/EClaw/commit/9bdd3d144afed2506966f002dbea627870300f0b))

## [1.164.10](https://github.com/HankHuang0516/EClaw/compare/v1.164.9...v1.164.10) (2026-03-25)


### Bug Fixes

* redirect /info to /portal/info.html for correct asset resolution ([#474](https://github.com/HankHuang0516/EClaw/issues/474)) ([8855df9](https://github.com/HankHuang0516/EClaw/commit/8855df9748579512f13b87b459388a1f6708a77a))

## [1.164.9](https://github.com/HankHuang0516/EClaw/compare/v1.164.8...v1.164.9) (2026-03-25)


### Bug Fixes

* use absolute paths in public-nav.js for logo and login links ([#473](https://github.com/HankHuang0516/EClaw/issues/473)) ([888411c](https://github.com/HankHuang0516/EClaw/commit/888411c2193a4767fb798557394990b4bbb1fa26))

## [1.164.8](https://github.com/HankHuang0516/EClaw/compare/v1.164.7...v1.164.8) (2026-03-25)


### Bug Fixes

* **portal:** chat input Enter sends instead of newline — switch to textarea with Shift+Enter ([#472](https://github.com/HankHuang0516/EClaw/issues/472)) ([161bcf8](https://github.com/HankHuang0516/EClaw/commit/161bcf88004ce95c933b1701a2fa65c8cc2977da))

## [1.164.7](https://github.com/HankHuang0516/EClaw/compare/v1.164.6...v1.164.7) (2026-03-25)


### Bug Fixes

* prevent WEBHOOK_ERROR from overwriting successful bot transform responses ([#471](https://github.com/HankHuang0516/EClaw/issues/471)) ([5b13a9d](https://github.com/HankHuang0516/EClaw/commit/5b13a9d5d778a5747e31e8ffbae78dff2bc01ec8))

## [1.164.6](https://github.com/HankHuang0516/EClaw/compare/v1.164.5...v1.164.6) (2026-03-25)


### Bug Fixes

* add Google & Facebook domains to CSP script-src whitelist ([0d6d1f9](https://github.com/HankHuang0516/EClaw/commit/0d6d1f97461108bc89194f2d7bc9e5b44c1b40d3))

## [1.164.5](https://github.com/HankHuang0516/EClaw/compare/v1.164.4...v1.164.5) (2026-03-25)


### Bug Fixes

* Google login stuck on "SDK loading" — dynamic load with retry ([c38ae21](https://github.com/HankHuang0516/EClaw/commit/c38ae2169f2bfe5dcaa3d978060607e14642ecd9))

## [1.164.4](https://github.com/HankHuang0516/EClaw/compare/v1.164.3...v1.164.4) (2026-03-25)


### Bug Fixes

* **portal:** settings entity-utils.js 404 + add missing i18n keys ([#469](https://github.com/HankHuang0516/EClaw/issues/469)) ([0323d3e](https://github.com/HankHuang0516/EClaw/commit/0323d3e4dee5631a0988af73342142dac736a4bd))

## [1.164.3](https://github.com/HankHuang0516/EClaw/compare/v1.164.2...v1.164.3) (2026-03-25)


### Bug Fixes

* admin editBot() call loadAll() instead of undefined loadAdminData() ([2090f7b](https://github.com/HankHuang0516/EClaw/commit/2090f7b19c118ed5f1288a51834991f2493e456a))

## [1.164.2](https://github.com/HankHuang0516/EClaw/compare/v1.164.1...v1.164.2) (2026-03-25)


### Bug Fixes

* admin bot edit auth — use cookie JWT instead of x-admin-token ([8011d5b](https://github.com/HankHuang0516/EClaw/commit/8011d5b2382feb0d05fa0c992ab8bafc35994abd))

## [1.164.1](https://github.com/HankHuang0516/EClaw/compare/v1.164.0...v1.164.1) (2026-03-25)


### Performance Improvements

* optimistic UI for entity rename, delete, reorder — instant feedback ([22cbc63](https://github.com/HankHuang0516/EClaw/commit/22cbc63e2a7601e5b9d246a74508486a4028f6dc))

# [1.164.0](https://github.com/HankHuang0516/EClaw/compare/v1.163.1...v1.164.0) (2026-03-25)


### Features

* admin bot edit dialog — rename, webhook URL, token ([#468](https://github.com/HankHuang0516/EClaw/issues/468)) ([96ff9e5](https://github.com/HankHuang0516/EClaw/commit/96ff9e55a28fe15fc4453ada732cfedde0d141f7))

## [1.163.1](https://github.com/HankHuang0516/EClaw/compare/v1.163.0...v1.163.1) (2026-03-25)


### Bug Fixes

* prevent HTML error response on bind-free/bind-personal failure ([#467](https://github.com/HankHuang0516/EClaw/issues/467)) ([749c4b5](https://github.com/HankHuang0516/EClaw/commit/749c4b5bc1629dca3d22f4ba9b1c62b4970681d9))

# [1.163.0](https://github.com/HankHuang0516/EClaw/compare/v1.162.1...v1.163.0) (2026-03-24)


### Features

* add GET /api/whoami endpoint for bot self-identification ([3f225d3](https://github.com/HankHuang0516/EClaw/commit/3f225d396c505f2900768732de41304af65ec7dd))

## [1.162.1](https://github.com/HankHuang0516/EClaw/compare/v1.162.0...v1.162.1) (2026-03-24)


### Bug Fixes

* prevent Enter from sending message during IME composition (Mac Chinese input) ([2b91a46](https://github.com/HankHuang0516/EClaw/commit/2b91a46563e41730b8dddb503816b995b6a5c371))

# [1.162.0](https://github.com/HankHuang0516/EClaw/compare/v1.161.2...v1.162.0) (2026-03-24)


### Features

* add Note Pages + Chat demo GIFs and mockup HTML for enterprise page ([64b6b09](https://github.com/HankHuang0516/EClaw/commit/64b6b09d3e817ba1e8181775d976bff4e85925ff))

## [1.161.2](https://github.com/HankHuang0516/EClaw/compare/v1.161.1...v1.161.2) (2026-03-24)


### Bug Fixes

* update footer_desc from Android wallpaper to A2A platform (all 8 languages) ([40e55d4](https://github.com/HankHuang0516/EClaw/commit/40e55d4e7903f6da8fb3e4a229ff9fc6cd5a8a71)), closes [#3](https://github.com/HankHuang0516/EClaw/issues/3)

## [1.161.1](https://github.com/HankHuang0516/EClaw/compare/v1.161.0...v1.161.1) (2026-03-24)


### Bug Fixes

* avatar HTML appearing as raw text in schedule display (#hardcoded-avatar) ([39efcfd](https://github.com/HankHuang0516/EClaw/commit/39efcfd92fb3497ddf61b3eb853a2cf0f975fd84)), closes [#hardcoded-avatar](https://github.com/HankHuang0516/EClaw/issues/hardcoded-avatar)

# [1.161.0](https://github.com/HankHuang0516/EClaw/compare/v1.160.1...v1.161.0) (2026-03-24)


### Features

* paste image from clipboard in desktop chat (Ctrl+V / Cmd+V) ([75853ac](https://github.com/HankHuang0516/EClaw/commit/75853aca067fd89f7b3cca5eb9f1361462de3a41))

## [1.160.1](https://github.com/HankHuang0516/EClaw/compare/v1.160.0...v1.160.1) (2026-03-24)


### Bug Fixes

* security hardening (DNS rebinding, timing-safe) + landing.html i18n ([#458](https://github.com/HankHuang0516/EClaw/issues/458)) ([70a08da](https://github.com/HankHuang0516/EClaw/commit/70a08daf4ff36540623b77b009c698031b0ccbf6))

# [1.160.0](https://github.com/HankHuang0516/EClaw/compare/v1.159.1...v1.160.0) (2026-03-24)


### Features

* add URL bar with copy button to public note pages ([0e58440](https://github.com/HankHuang0516/EClaw/commit/0e5844022c342e5c1834b764adb8e32cfa50321d))

## [1.159.1](https://github.com/HankHuang0516/EClaw/compare/v1.159.0...v1.159.1) (2026-03-24)


### Bug Fixes

* security audit P0/P1, Discord integration, Android UX ([#457](https://github.com/HankHuang0516/EClaw/issues/457)) ([94bff5e](https://github.com/HankHuang0516/EClaw/commit/94bff5e1dcb403dff6f7880f86c30e93242a0494)), closes [#451](https://github.com/HankHuang0516/EClaw/issues/451) [#439](https://github.com/HankHuang0516/EClaw/issues/439) [#440](https://github.com/HankHuang0516/EClaw/issues/440) [#453](https://github.com/HankHuang0516/EClaw/issues/453) [#454](https://github.com/HankHuang0516/EClaw/issues/454) [#455](https://github.com/HankHuang0516/EClaw/issues/455)

# [1.159.0](https://github.com/HankHuang0516/EClaw/compare/v1.158.0...v1.159.0) (2026-03-24)


### Features

* Note Page public/private UX - badge in list + toggle in viewer ([73c8d13](https://github.com/HankHuang0516/EClaw/commit/73c8d1314e50b39b2c82e42839f4111712cb4070))

# [1.158.0](https://github.com/HankHuang0516/EClaw/compare/v1.157.0...v1.158.0) (2026-03-23)


### Features

* **chat:** order flow with TapPay integration (B2) ([8955ce7](https://github.com/HankHuang0516/EClaw/commit/8955ce73ce66506ecae6785874c30343aacd87ed))

# [1.157.0](https://github.com/HankHuang0516/EClaw/compare/v1.156.0...v1.157.0) (2026-03-23)


### Features

* **chat:** Rich Message Protocol — product cards, carousel, action buttons ([202d9be](https://github.com/HankHuang0516/EClaw/commit/202d9beee35c6b85a5d76bfba1e207ef6eda30da))

# [1.156.0](https://github.com/HankHuang0516/EClaw/compare/v1.155.1...v1.156.0) (2026-03-23)


### Features

* **chat:** Markdown rendering for bot messages via marked.js ([be29baf](https://github.com/HankHuang0516/EClaw/commit/be29baf2158dd4f11ec3632005de4ed90dfd8504))

## [1.155.1](https://github.com/HankHuang0516/EClaw/compare/v1.155.0...v1.155.1) (2026-03-23)


### Bug Fixes

* chat page auto-refresh on Android WebView foreground ([#448](https://github.com/HankHuang0516/EClaw/issues/448)) ([#450](https://github.com/HankHuang0516/EClaw/issues/450)) ([5fe8983](https://github.com/HankHuang0516/EClaw/commit/5fe8983526ccf0ec3ec9d541a06814e39bb0986d))

# [1.155.0](https://github.com/HankHuang0516/EClaw/compare/v1.154.1...v1.155.0) (2026-03-23)


### Features

* add interactive forms for Note Pages (P6) ([eb0c004](https://github.com/HankHuang0516/EClaw/commit/eb0c0044a5190394e188c74310178a29d0b32995))

## [1.154.1](https://github.com/HankHuang0516/EClaw/compare/v1.154.0...v1.154.1) (2026-03-23)


### Bug Fixes

* Android Card Holder manual refresh button ([#444](https://github.com/HankHuang0516/EClaw/issues/444) [#443](https://github.com/HankHuang0516/EClaw/issues/443)) ([4d99a82](https://github.com/HankHuang0516/EClaw/commit/4d99a82b9b1f333c3a579942e23c43dfdd447136))

# [1.154.0](https://github.com/HankHuang0516/EClaw/compare/v1.153.1...v1.154.0) (2026-03-23)


### Features

* add visitor analytics + custom domain APIs for Note Pages ([ad81935](https://github.com/HankHuang0516/EClaw/commit/ad819358d15ddb9f8bc3f95b0b7a2c7b5cb0a56a))

## [1.153.1](https://github.com/HankHuang0516/EClaw/compare/v1.153.0...v1.153.1) (2026-03-23)


### Bug Fixes

* AI widget coverage, draft auto-save, long-press copy ([#442](https://github.com/HankHuang0516/EClaw/issues/442) [#435](https://github.com/HankHuang0516/EClaw/issues/435) [#438](https://github.com/HankHuang0516/EClaw/issues/438)) ([aa61b79](https://github.com/HankHuang0516/EClaw/commit/aa61b797240a03bf246be6da945f5fd91b46bc63)), closes [#437](https://github.com/HankHuang0516/EClaw/issues/437) [#434](https://github.com/HankHuang0516/EClaw/issues/434) [#429](https://github.com/HankHuang0516/EClaw/issues/429)

# [1.153.0](https://github.com/HankHuang0516/EClaw/compare/v1.152.0...v1.153.0) (2026-03-23)


### Features

* add Markdown rendering support for Note Pages ([52e09eb](https://github.com/HankHuang0516/EClaw/commit/52e09ebfe21d5e40deaccdc4564c08a4296b3edb))

# [1.152.0](https://github.com/HankHuang0516/EClaw/compare/v1.151.0...v1.152.0) (2026-03-23)


### Features

* drawing scroll sync + bot-readable PNG snapshot ([#445](https://github.com/HankHuang0516/EClaw/issues/445)) ([0e8deda](https://github.com/HankHuang0516/EClaw/commit/0e8dedaeb214f69f97ca19d52ee5e24c17470aae))

# [1.151.0](https://github.com/HankHuang0516/EClaw/compare/v1.150.0...v1.151.0) (2026-03-23)


### Features

* add page navigation bar to public note pages ([4c5ecfa](https://github.com/HankHuang0516/EClaw/commit/4c5ecfa9fd2af94b85106c79aa64e37d60d8ed72))

# [1.150.0](https://github.com/HankHuang0516/EClaw/compare/v1.149.0...v1.150.0) (2026-03-23)


### Features

* add entity public home page GET /p/:publicCode ([933b22b](https://github.com/HankHuang0516/EClaw/commit/933b22b3c1599eb62a1b09870a9fc8be17337991))

# [1.149.0](https://github.com/HankHuang0516/EClaw/compare/v1.148.0...v1.149.0) (2026-03-23)


### Features

* **chat:** detect eclaw://note/ and /p/ links → iframe preview in messages ([bc85c49](https://github.com/HankHuang0516/EClaw/commit/bc85c49f08007ca56df5351895b56ffe36f58ff7))

# [1.148.0](https://github.com/HankHuang0516/EClaw/compare/v1.147.2...v1.148.0) (2026-03-23)


### Features

* **enterprise:** add demo GIF above live chat section ([66f6705](https://github.com/HankHuang0516/EClaw/commit/66f67057a0ac1b743e00ff143aac54a283e401da))
* add e-commerce demo GIF for enterprise page and GitHub README ([c696ddd](https://github.com/HankHuang0516/EClaw/commit/c696dddee4706f443d11c50d9348e1230475ccb6))

## [1.147.2](https://github.com/HankHuang0516/EClaw/compare/v1.147.1...v1.147.2) (2026-03-23)


### Bug Fixes

* allow same-origin iframe embedding for /c/ and /p/ routes ([c8dbcec](https://github.com/HankHuang0516/EClaw/commit/c8dbcecda12a81e6df7111537bef541f17d9ccc8))

## [1.147.1](https://github.com/HankHuang0516/EClaw/compare/v1.147.0...v1.147.1) (2026-03-23)


### Bug Fixes

* i18n missing keys, mission scroll, scheduler 502 retry ([#437](https://github.com/HankHuang0516/EClaw/issues/437) [#434](https://github.com/HankHuang0516/EClaw/issues/434) [#429](https://github.com/HankHuang0516/EClaw/issues/429)) ([bc5abf4](https://github.com/HankHuang0516/EClaw/commit/bc5abf44b460a0d644560ddecc7458fb354a249a))

# [1.147.0](https://github.com/HankHuang0516/EClaw/compare/v1.146.0...v1.147.0) (2026-03-23)


### Features

* **enterprise:** add live e-commerce AI customer service demo section ([7445c79](https://github.com/HankHuang0516/EClaw/commit/7445c79e28bed9a32349c4b0db89c7b001bc4865)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2)

# [1.146.0](https://github.com/HankHuang0516/EClaw/compare/v1.145.4...v1.146.0) (2026-03-23)


### Features

* **portal:** add public note pages route GET /p/:code/:noteId ([#439](https://github.com/HankHuang0516/EClaw/issues/439)) ([70e2dfb](https://github.com/HankHuang0516/EClaw/commit/70e2dfb123ccd6792ab40c2848f50a2e488bfc58))

## [1.145.4](https://github.com/HankHuang0516/EClaw/compare/v1.145.3...v1.145.4) (2026-03-23)


### Bug Fixes

* move filter chip toggle button outside overflow-hidden container ([#432](https://github.com/HankHuang0516/EClaw/issues/432)) ([4d455bd](https://github.com/HankHuang0516/EClaw/commit/4d455bd3829d93715c8c3ec7d15ea49e9de3419c))

## [1.145.3](https://github.com/HankHuang0516/EClaw/compare/v1.145.2...v1.145.3) (2026-03-23)


### Bug Fixes

* **security:** remove deviceSecret from JWT, add timing-safe OAuth ([#431](https://github.com/HankHuang0516/EClaw/issues/431)) ([0cc3222](https://github.com/HankHuang0516/EClaw/commit/0cc322252dff2e5349802c7fa482d73a51ff1c3c))

## [1.145.2](https://github.com/HankHuang0516/EClaw/compare/v1.145.1...v1.145.2) (2026-03-22)


### Bug Fixes

* comprehensive audit — security, i18n, SEO, chat integrity ([#430](https://github.com/HankHuang0516/EClaw/issues/430)) ([b933349](https://github.com/HankHuang0516/EClaw/commit/b933349076f20edd32f97f253c304a82f4e19492))

## [1.145.1](https://github.com/HankHuang0516/EClaw/compare/v1.145.0...v1.145.1) (2026-03-22)


### Bug Fixes

* canvas drawing only produces small stroke — add pointer capture and touch-action ([f76a66a](https://github.com/HankHuang0516/EClaw/commit/f76a66a0fd14efb520ff9c92a4ec704e2dc63360))

# [1.145.0](https://github.com/HankHuang0516/EClaw/compare/v1.144.2...v1.145.0) (2026-03-22)


### Features

* **portal:** add collapsible filter chip group in chat ([#427](https://github.com/HankHuang0516/EClaw/issues/427)) ([a59db07](https://github.com/HankHuang0516/EClaw/commit/a59db076d51dcccd07124f657ae2ffcd66bb3a54))

## [1.144.2](https://github.com/HankHuang0516/EClaw/compare/v1.144.1...v1.144.2) (2026-03-22)


### Bug Fixes

* add targetDeviceId to all curl templates for explicit cross-device routing ([#426](https://github.com/HankHuang0516/EClaw/issues/426)) ([637f732](https://github.com/HankHuang0516/EClaw/commit/637f732f510ef3406ca882d1c68b73c62471ed7b))

## [1.144.1](https://github.com/HankHuang0516/EClaw/compare/v1.144.0...v1.144.1) (2026-03-22)


### Bug Fixes

* add missing files_btn_delete i18n key for all 8 languages ([#425](https://github.com/HankHuang0516/EClaw/issues/425)) ([d45f92f](https://github.com/HankHuang0516/EClaw/commit/d45f92f817e3e5de33d47b8c7d08f37237df8e6b))

# [1.144.0](https://github.com/HankHuang0516/EClaw/compare/v1.143.3...v1.144.0) (2026-03-22)


### Features

* **web:** add folder structure to Web Portal file manager ([#424](https://github.com/HankHuang0516/EClaw/issues/424)) ([1e5682e](https://github.com/HankHuang0516/EClaw/commit/1e5682e19c3282fda067d77afc5ff5c7181587ca))

## [1.143.3](https://github.com/HankHuang0516/EClaw/compare/v1.143.2...v1.143.3) (2026-03-22)


### Bug Fixes

* remove visible debug banner, fix HTML caching for WebView ([#419](https://github.com/HankHuang0516/EClaw/issues/419)) ([#421](https://github.com/HankHuang0516/EClaw/issues/421)) ([3b9a809](https://github.com/HankHuang0516/EClaw/commit/3b9a809f163d8961ab933d64318a54af83cdcd99))

## [1.143.2](https://github.com/HankHuang0516/EClaw/compare/v1.143.1...v1.143.2) (2026-03-22)


### Bug Fixes

* block duplicate AI chat widget in Android WebView ([#419](https://github.com/HankHuang0516/EClaw/issues/419)) ([#420](https://github.com/HankHuang0516/EClaw/issues/420)) ([5a379eb](https://github.com/HankHuang0516/EClaw/commit/5a379eb66b8fe4571bae25856a955634d494a4d1))

## [1.143.1](https://github.com/HankHuang0516/EClaw/compare/v1.143.0...v1.143.1) (2026-03-22)


### Bug Fixes

* **android:** use View.generateViewId() in FileManagerActivity ([#418](https://github.com/HankHuang0516/EClaw/issues/418)) ([1dabf05](https://github.com/HankHuang0516/EClaw/commit/1dabf055db3c208a8d7d19d4b516eeefee44615b))

# [1.143.0](https://github.com/HankHuang0516/EClaw/compare/v1.142.1...v1.143.0) (2026-03-22)


### Features

* **android:** add folder structure to File Manager ([#417](https://github.com/HankHuang0516/EClaw/issues/417)) ([36ac78e](https://github.com/HankHuang0516/EClaw/commit/36ac78eb6270c5aa18e22249a18bea3ef90d93fe))

## [1.142.1](https://github.com/HankHuang0516/EClaw/compare/v1.142.0...v1.142.1) (2026-03-22)


### Bug Fixes

* **android:** resolve compilation errors in note page viewer ([#416](https://github.com/HankHuang0516/EClaw/issues/416)) ([33d60ea](https://github.com/HankHuang0516/EClaw/commit/33d60ea2b4f108137d2af4b3912ce207bd0f9163))

# [1.142.0](https://github.com/HankHuang0516/EClaw/compare/v1.141.0...v1.142.0) (2026-03-22)


### Features

* add webview static pages for mission notes + Android alignment ([#414](https://github.com/HankHuang0516/EClaw/issues/414)) ([ef68835](https://github.com/HankHuang0516/EClaw/commit/ef688353c72fed1221b77abe1ba88d7ec97ad257))

# [1.141.0](https://github.com/HankHuang0516/EClaw/compare/v1.140.0...v1.141.0) (2026-03-22)


### Features

* unify all website icons to circular ic_launcher_round ([#413](https://github.com/HankHuang0516/EClaw/issues/413)) ([b8cff35](https://github.com/HankHuang0516/EClaw/commit/b8cff35c994fad8f0a6c2ec8337ae5686ea588fd))

# [1.140.0](https://github.com/HankHuang0516/EClaw/compare/v1.139.2...v1.140.0) (2026-03-22)


### Features

* **android:** add category folder structure to Mission Control ([#412](https://github.com/HankHuang0516/EClaw/issues/412)) ([f42f394](https://github.com/HankHuang0516/EClaw/commit/f42f3945ebeab8497c6ad51fa77cad127147e1ec))

## [1.139.2](https://github.com/HankHuang0516/EClaw/compare/v1.139.1...v1.139.2) (2026-03-22)


### Bug Fixes

* add User-Agent fallback for WebView AI widget detection ([#411](https://github.com/HankHuang0516/EClaw/issues/411)) ([6e558a7](https://github.com/HankHuang0516/EClaw/commit/6e558a7cdac3d72e7fd1438cca3efbae9b98f1c7))

## [1.139.1](https://github.com/HankHuang0516/EClaw/compare/v1.139.0...v1.139.1) (2026-03-22)


### Bug Fixes

* hide AI chat widget in Android WebView to prevent duplicate AI service ([#410](https://github.com/HankHuang0516/EClaw/issues/410)) ([837250a](https://github.com/HankHuang0516/EClaw/commit/837250a0cae951a107e3fce48004bcfcbb43b6f9))

# [1.139.0](https://github.com/HankHuang0516/EClaw/compare/v1.138.3...v1.139.0) (2026-03-22)


### Features

* add 🔗 icon to cross-device message labels in chat ([#408](https://github.com/HankHuang0516/EClaw/issues/408)) ([d5d272c](https://github.com/HankHuang0516/EClaw/commit/d5d272cffb93350b428ff92bb7546d6cdb41ee3f))

## [1.138.3](https://github.com/HankHuang0516/EClaw/compare/v1.138.2...v1.138.3) (2026-03-22)


### Bug Fixes

* **api:** improve speak-to and client/speak error diagnostics ([#404](https://github.com/HankHuang0516/EClaw/issues/404)) ([#407](https://github.com/HankHuang0516/EClaw/issues/407)) ([e24a44c](https://github.com/HankHuang0516/EClaw/commit/e24a44c501b7ea7c35aaa9f4124eeff26cc980e2))

## [1.138.2](https://github.com/HankHuang0516/EClaw/compare/v1.138.1...v1.138.2) (2026-03-22)


### Bug Fixes

* **portal:** remove duplicate usecases, fix double bullets, replace nav logo with app icon ([#406](https://github.com/HankHuang0516/EClaw/issues/406)) ([e881fb3](https://github.com/HankHuang0516/EClaw/commit/e881fb301aed4604f271dac7c641bd921416d6de))

## [1.138.1](https://github.com/HankHuang0516/EClaw/compare/v1.138.0...v1.138.1) (2026-03-22)


### Bug Fixes

* **mission:** make category action buttons always visible ([#405](https://github.com/HankHuang0516/EClaw/issues/405)) ([1468b97](https://github.com/HankHuang0516/EClaw/commit/1468b97140731fbe6f4f1a632e03176a4e29fe15))

# [1.138.0](https://github.com/HankHuang0516/EClaw/compare/v1.137.2...v1.138.0) (2026-03-22)


### Features

* **enterprise:** add Beta tag to demo section ([#403](https://github.com/HankHuang0516/EClaw/issues/403)) ([8426efe](https://github.com/HankHuang0516/EClaw/commit/8426efecc8938df3403cbfdf9f25393cc6fc84aa))

## [1.137.2](https://github.com/HankHuang0516/EClaw/compare/v1.137.1...v1.137.2) (2026-03-22)


### Bug Fixes

* **i18n:** comprehensive i18n audit — add missing translations for all 8 languages ([#401](https://github.com/HankHuang0516/EClaw/issues/401)) ([a027bdc](https://github.com/HankHuang0516/EClaw/commit/a027bdc0b766444d3e0739a6960e438ea5e19182))
* **share-chat:** prevent message leakage in share-history and fix pending flush sender copy ([#402](https://github.com/HankHuang0516/EClaw/issues/402)) ([f141673](https://github.com/HankHuang0516/EClaw/commit/f1416739efd1659179f0d11812f0da20c573b287))

## [1.137.1](https://github.com/HankHuang0516/EClaw/compare/v1.137.0...v1.137.1) (2026-03-22)


### Bug Fixes

* **i18n:** comprehensive i18n audit — add missing translations for all 8 languages ([#400](https://github.com/HankHuang0516/EClaw/issues/400)) ([671f5e2](https://github.com/HankHuang0516/EClaw/commit/671f5e2a824100b4cd14fae7ebc2b44d950822bb))

# [1.137.0](https://github.com/HankHuang0516/EClaw/compare/v1.136.0...v1.137.0) (2026-03-22)


### Features

* **enterprise:** add interactive AI demo chat section ([#399](https://github.com/HankHuang0516/EClaw/issues/399)) ([4ebde7b](https://github.com/HankHuang0516/EClaw/commit/4ebde7b0bfc11a6be836c91753d65fbe5125406d))

# [1.136.0](https://github.com/HankHuang0516/EClaw/compare/v1.135.0...v1.136.0) (2026-03-22)


### Features

* **portal:** add enterprise page for business users ([#398](https://github.com/HankHuang0516/EClaw/issues/398)) ([88910c1](https://github.com/HankHuang0516/EClaw/commit/88910c112ac14c2a1a2fb868edffb3b2f79d98ae))

# [1.135.0](https://github.com/HankHuang0516/EClaw/compare/v1.134.0...v1.135.0) (2026-03-22)


### Features

* **mission:** add category folder structure for task organization ([#397](https://github.com/HankHuang0516/EClaw/issues/397)) ([9c87a84](https://github.com/HankHuang0516/EClaw/commit/9c87a84b7d65bb87e061f08c6e5b6a4a4da50689))

# [1.134.0](https://github.com/HankHuang0516/EClaw/compare/v1.133.1...v1.134.0) (2026-03-22)


### Bug Fixes

* **portal:** rewrite cross-device guide as message gate, reorder proxy steps ([#394](https://github.com/HankHuang0516/EClaw/issues/394)) ([c3cd118](https://github.com/HankHuang0516/EClaw/commit/c3cd1184d2782eaa56bdf45d9f11d1222d6a24c0))


### Features

* **mission:** add category folder structure for task organization ([#395](https://github.com/HankHuang0516/EClaw/issues/395)) ([596bad4](https://github.com/HankHuang0516/EClaw/commit/596bad4e34dd03d4bb854836c9dbce94f1e0901f))

## [1.133.1](https://github.com/HankHuang0516/EClaw/compare/v1.133.0...v1.133.1) (2026-03-22)


### Bug Fixes

* **auth:** remove JWT_SECRET hardcoded fallback ([#391](https://github.com/HankHuang0516/EClaw/issues/391)) ([#393](https://github.com/HankHuang0516/EClaw/issues/393)) ([b2c361f](https://github.com/HankHuang0516/EClaw/commit/b2c361f6c0f0576e3b2b0f234e846f1b8987efee))

# [1.133.0](https://github.com/HankHuang0516/EClaw/compare/v1.132.0...v1.133.0) (2026-03-22)


### Features

* repo cleanup, brand alignment, SEO/security fixes, bug fixes [#363](https://github.com/HankHuang0516/EClaw/issues/363) [#388](https://github.com/HankHuang0516/EClaw/issues/388) ([#392](https://github.com/HankHuang0516/EClaw/issues/392)) ([eef64fb](https://github.com/HankHuang0516/EClaw/commit/eef64fb7993903a9630c29496d87d4eba513399c)), closes [#390](https://github.com/HankHuang0516/EClaw/issues/390) [#391](https://github.com/HankHuang0516/EClaw/issues/391)

# [1.132.0](https://github.com/HankHuang0516/EClaw/compare/v1.131.0...v1.132.0) (2026-03-22)


### Features

* replace Android native chat with WebView ([#389](https://github.com/HankHuang0516/EClaw/issues/389)) ([0bbadbd](https://github.com/HankHuang0516/EClaw/commit/0bbadbd44305ea011ba8a376d52eeb803f430fc9))

# [1.131.0](https://github.com/HankHuang0516/EClaw/compare/v1.130.1...v1.131.0) (2026-03-21)


### Features

* **portal:** add Identity, Agent Card, Cross-Device detail guides with visual illustrations ([#387](https://github.com/HankHuang0516/EClaw/issues/387)) ([6b91a7e](https://github.com/HankHuang0516/EClaw/commit/6b91a7ea4fb021178daeada045eabd682535cd77))

## [1.130.1](https://github.com/HankHuang0516/EClaw/compare/v1.130.0...v1.130.1) (2026-03-21)


### Bug Fixes

* save sender copy in pending flush and auto-collect contacts in owner mode ([#386](https://github.com/HankHuang0516/EClaw/issues/386)) ([ed6ea0c](https://github.com/HankHuang0516/EClaw/commit/ed6ea0c6680f8ef58f5d379e770934e1d27ff133))

# [1.130.0](https://github.com/HankHuang0516/EClaw/compare/v1.129.1...v1.130.0) (2026-03-21)


### Features

* **portal:** add Proxy Window enterprise guide to Info Hub ([#385](https://github.com/HankHuang0516/EClaw/issues/385)) ([43db0d5](https://github.com/HankHuang0516/EClaw/commit/43db0d58f5cc4243d27b22876e0f39b0bf38a826))

## [1.129.1](https://github.com/HankHuang0516/EClaw/compare/v1.129.0...v1.129.1) (2026-03-21)


### Bug Fixes

* resolve chat duplicate messages, missing labels, and entity selection issues ([#384](https://github.com/HankHuang0516/EClaw/issues/384)) ([69c39ba](https://github.com/HankHuang0516/EClaw/commit/69c39ba4cb3be850b6b7f536f61abc020d484684))

# [1.129.0](https://github.com/HankHuang0516/EClaw/compare/v1.128.5...v1.129.0) (2026-03-21)


### Features

* add full i18n support to delete-account.html (8 languages) ([#383](https://github.com/HankHuang0516/EClaw/issues/383)) ([f12b6d4](https://github.com/HankHuang0516/EClaw/commit/f12b6d496ce6b3b597eaf9b115c634973c05c0d7))

## [1.128.5](https://github.com/HankHuang0516/EClaw/compare/v1.128.4...v1.128.5) (2026-03-21)


### Bug Fixes

* remove local messages before history reload to prevent duplicates ([#382](https://github.com/HankHuang0516/EClaw/issues/382)) ([fe46aa9](https://github.com/HankHuang0516/EClaw/commit/fe46aa952da209c1aa29e0418efc4e941f7c79b8))

## [1.128.4](https://github.com/HankHuang0516/EClaw/compare/v1.128.3...v1.128.4) (2026-03-21)


### Bug Fixes

* register endpoint sets session cookie so pending messages can be saved ([#381](https://github.com/HankHuang0516/EClaw/issues/381)) ([dbd8010](https://github.com/HankHuang0516/EClaw/commit/dbd8010b6d9d87525babc0e5a738635cad0441ed))

## [1.128.3](https://github.com/HankHuang0516/EClaw/compare/v1.128.2...v1.128.3) (2026-03-21)


### Bug Fixes

* save pending messages to DB and poll for email verification on share-chat ([#380](https://github.com/HankHuang0516/EClaw/issues/380)) ([aaf6b23](https://github.com/HankHuang0516/EClaw/commit/aaf6b2315bcab72619f1e5b0e272a3ca76321e07))

## [1.128.2](https://github.com/HankHuang0516/EClaw/compare/v1.128.1...v1.128.2) (2026-03-21)


### Bug Fixes

* stay on share-chat page after registration instead of redirecting to login ([#379](https://github.com/HankHuang0516/EClaw/issues/379)) ([f55d477](https://github.com/HankHuang0516/EClaw/commit/f55d47745ed2e9f47690b4f1093a8ecd126d4c25))

## [1.128.1](https://github.com/HankHuang0516/EClaw/compare/v1.128.0...v1.128.1) (2026-03-21)


### Bug Fixes

* render contact checkboxes for zero-entity users in chat target bar ([#378](https://github.com/HankHuang0516/EClaw/issues/378)) ([08c2e29](https://github.com/HankHuang0516/EClaw/commit/08c2e296f88c025058fb1847a9d2f0eca7823d2e))

# [1.128.0](https://github.com/HankHuang0516/EClaw/compare/v1.127.4...v1.128.0) (2026-03-21)


### Features

* integrate E-claw_mcp_skill.md into eclaw-a2a-toolkit (single source of truth) ([#377](https://github.com/HankHuang0516/EClaw/issues/377)) ([ba81ff6](https://github.com/HankHuang0516/EClaw/commit/ba81ff6a17f9b7b61237e45db7873a356245dd5e))

## [1.127.4](https://github.com/HankHuang0516/EClaw/compare/v1.127.3...v1.127.4) (2026-03-21)


### Bug Fixes

* use SAVEPOINT to skip non-existent tables during account deletion ([#375](https://github.com/HankHuang0516/EClaw/issues/375)) ([66ab927](https://github.com/HankHuang0516/EClaw/commit/66ab927b552fea94a5e6e0fbc7f24c667d3c0adb))

## [1.127.3](https://github.com/HankHuang0516/EClaw/compare/v1.127.2...v1.127.3) (2026-03-21)


### Bug Fixes

* add debug logging to account deletion + clean up 7 missing tables ([#374](https://github.com/HankHuang0516/EClaw/issues/374)) ([fcb9b97](https://github.com/HankHuang0516/EClaw/commit/fcb9b978087e14db25d5f55ef82f1f6f0aadf332))

## [1.127.2](https://github.com/HankHuang0516/EClaw/compare/v1.127.1...v1.127.2) (2026-03-21)


### Bug Fixes

* account deletion fails due to FK constraint on tappay_transactions ([#373](https://github.com/HankHuang0516/EClaw/issues/373)) ([0e53306](https://github.com/HankHuang0516/EClaw/commit/0e53306a8217d760e8c6daec0ca7287180383f32))

## [1.127.1](https://github.com/HankHuang0516/EClaw/compare/v1.127.0...v1.127.1) (2026-03-21)


### Bug Fixes

* **cross-device:** consume messages after auto-route, add targetDeviceId ([#372](https://github.com/HankHuang0516/EClaw/issues/372)) ([f90ef68](https://github.com/HankHuang0516/EClaw/commit/f90ef681b544be8f2e2ddcfee44a1ed12942e787))

# [1.127.0](https://github.com/HankHuang0516/EClaw/compare/v1.126.5...v1.127.0) (2026-03-21)


### Features

* **share-chat:** add social login and terms consent to modals ([#371](https://github.com/HankHuang0516/EClaw/issues/371)) ([7c049ae](https://github.com/HankHuang0516/EClaw/commit/7c049aeef90955eb243ca40c22200a2daefff7a9))

## [1.126.5](https://github.com/HankHuang0516/EClaw/compare/v1.126.4...v1.126.5) (2026-03-21)


### Bug Fixes

* add missing fields to pending flush channel push payload ([#370](https://github.com/HankHuang0516/EClaw/issues/370)) ([1c605ff](https://github.com/HankHuang0516/EClaw/commit/1c605ff5189c2ef729f13b44917457c6ef1a45ec))

## [1.126.4](https://github.com/HankHuang0516/EClaw/compare/v1.126.3...v1.126.4) (2026-03-21)


### Bug Fixes

* cross-device chat rendering bugs (5 issues) ([#369](https://github.com/HankHuang0516/EClaw/issues/369)) ([1e46c3a](https://github.com/HankHuang0516/EClaw/commit/1e46c3a0af82757e4b8a1b647df873b091997f34))

## [1.126.3](https://github.com/HankHuang0516/EClaw/compare/v1.126.2...v1.126.3) (2026-03-21)


### Bug Fixes

* **cross-speak:** channel auto-route, /c/:code redirect, avatar rendering ([#368](https://github.com/HankHuang0516/EClaw/issues/368)) ([76ec2c8](https://github.com/HankHuang0516/EClaw/commit/76ec2c8b15e0c0f5c7825989ae14dbe6a78d0648))

## [1.126.2](https://github.com/HankHuang0516/EClaw/compare/v1.126.1...v1.126.2) (2026-03-21)


### Bug Fixes

* **android:** align A2A message rendering with web portal architecture ([#367](https://github.com/HankHuang0516/EClaw/issues/367)) ([4abf75c](https://github.com/HankHuang0516/EClaw/commit/4abf75ce18835b19b1226dd8a9b9a6e9887b0a72))

## [1.126.1](https://github.com/HankHuang0516/EClaw/compare/v1.126.0...v1.126.1) (2026-03-21)


### Bug Fixes

* **chat:** correct cross-device message direction rendering ([#366](https://github.com/HankHuang0516/EClaw/issues/366)) ([df1b669](https://github.com/HankHuang0516/EClaw/commit/df1b66967a0e4162594435f9066d0f8af15f4b00))

# [1.126.0](https://github.com/HankHuang0516/EClaw/compare/v1.125.0...v1.126.0) (2026-03-21)


### Features

* **transform:** auto-route cross-device replies to sender ([#365](https://github.com/HankHuang0516/EClaw/issues/365)) ([21487d0](https://github.com/HankHuang0516/EClaw/commit/21487d00b5e30d80477b6c9bb5587b0aafbf6eea))

# [1.125.0](https://github.com/HankHuang0516/EClaw/compare/v1.124.3...v1.125.0) (2026-03-21)


### Features

* **share-chat:** add reply visibility and delivery status ([#364](https://github.com/HankHuang0516/EClaw/issues/364)) ([82a9de4](https://github.com/HankHuang0516/EClaw/commit/82a9de47572587bc19920fd3fe91d0212a77ebf3))

## [1.124.3](https://github.com/HankHuang0516/EClaw/compare/v1.124.2...v1.124.3) (2026-03-21)


### Bug Fixes

* **channel:** add channel push support to cross-speak and pending-flush endpoints ([#362](https://github.com/HankHuang0516/EClaw/issues/362)) ([e1acf43](https://github.com/HankHuang0516/EClaw/commit/e1acf432daec9884e78751a3e004e29d9fdbbfd6))

## [1.124.2](https://github.com/HankHuang0516/EClaw/compare/v1.124.1...v1.124.2) (2026-03-21)


### Bug Fixes

* **scheduler:** allow deleting completed/expired schedules ([#361](https://github.com/HankHuang0516/EClaw/issues/361)) ([2317041](https://github.com/HankHuang0516/EClaw/commit/2317041f002a9e81bc04913905827fdee2732c03))

## [1.124.1](https://github.com/HankHuang0516/EClaw/compare/v1.124.0...v1.124.1) (2026-03-21)


### Bug Fixes

* **ui:** WCAG contrast, CSS vars, i18n gaps ([#360](https://github.com/HankHuang0516/EClaw/issues/360)) ([8a12e6f](https://github.com/HankHuang0516/EClaw/commit/8a12e6f49eb20d77c57e94bb9e4e07ec4ed87398)), closes [#777](https://github.com/HankHuang0516/EClaw/issues/777) [#999](https://github.com/HankHuang0516/EClaw/issues/999) [text_hint/#777](https://github.com/HankHuang0516/EClaw/issues/777) [text_disabled/#666](https://github.com/HankHuang0516/EClaw/issues/666) [#64B5F6](https://github.com/HankHuang0516/EClaw/issues/64B5F6)

# [1.124.0](https://github.com/HankHuang0516/EClaw/compare/v1.123.3...v1.124.0) (2026-03-21)


### Features

* expand Jest test coverage from 65% to 75% ([#359](https://github.com/HankHuang0516/EClaw/issues/359)) ([eeb341a](https://github.com/HankHuang0516/EClaw/commit/eeb341a9c07e5a2bf2a899f5962fad3f9026d81c))

## [1.123.3](https://github.com/HankHuang0516/EClaw/compare/v1.123.2...v1.123.3) (2026-03-21)


### Bug Fixes

* share-chat i18n + debug logging for cross-speak ([#357](https://github.com/HankHuang0516/EClaw/issues/357)) ([5192f96](https://github.com/HankHuang0516/EClaw/commit/5192f963d0fcbef40c7236ee24a3ef71e5d21bfa))

## [1.123.2](https://github.com/HankHuang0516/EClaw/compare/v1.123.1...v1.123.2) (2026-03-21)


### Bug Fixes

* rebrand EClawbot from "IoT claw machine" to "A2A communication platform" ([#356](https://github.com/HankHuang0516/EClaw/issues/356)) ([a7d478e](https://github.com/HankHuang0516/EClaw/commit/a7d478ec4760b06de9f2c1161aba7da86b8b7f8b))

## [1.123.1](https://github.com/HankHuang0516/EClaw/compare/v1.123.0...v1.123.1) (2026-03-21)


### Bug Fixes

* share-chat cross-speak owner mode, i18n, QR code, pending message bugs ([#355](https://github.com/HankHuang0516/EClaw/issues/355)) ([25b0e70](https://github.com/HankHuang0516/EClaw/commit/25b0e70bfad8823ba19bb4bd91b3d71afcb1c01f))

# [1.123.0](https://github.com/HankHuang0516/EClaw/compare/v1.122.0...v1.123.0) (2026-03-20)


### Features

* **i18n:** add Identity Panel translations for all 8 languages ([#354](https://github.com/HankHuang0516/EClaw/issues/354)) ([396e834](https://github.com/HankHuang0516/EClaw/commit/396e83466899b1000cbda4b00e6f43f9bed1d2e1)), closes [#5](https://github.com/HankHuang0516/EClaw/issues/5) [#7](https://github.com/HankHuang0516/EClaw/issues/7) [#8](https://github.com/HankHuang0516/EClaw/issues/8) [#10](https://github.com/HankHuang0516/EClaw/issues/10) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3) [#4](https://github.com/HankHuang0516/EClaw/issues/4) [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#9](https://github.com/HankHuang0516/EClaw/issues/9)

# [1.122.0](https://github.com/HankHuang0516/EClaw/compare/v1.121.0...v1.122.0) (2026-03-20)


### Features

* add shareable chat link with QR code for Card Holder entities ([#353](https://github.com/HankHuang0516/EClaw/issues/353)) ([ba346ba](https://github.com/HankHuang0516/EClaw/commit/ba346ba9f5f8a80f54fc131bd8eca0909a8396a2))

# [1.121.0](https://github.com/HankHuang0516/EClaw/compare/v1.120.3...v1.121.0) (2026-03-20)


### Features

* add DELETE /api/feedback/:id endpoint and test cleanup ([#352](https://github.com/HankHuang0516/EClaw/issues/352)) ([7f50d20](https://github.com/HankHuang0516/EClaw/commit/7f50d20f83e016fa62657719f085bd52a8039bf5)), closes [#345](https://github.com/HankHuang0516/EClaw/issues/345) [#274](https://github.com/HankHuang0516/EClaw/issues/274) [#256](https://github.com/HankHuang0516/EClaw/issues/256) [#258](https://github.com/HankHuang0516/EClaw/issues/258) [#259](https://github.com/HankHuang0516/EClaw/issues/259) [#274](https://github.com/HankHuang0516/EClaw/issues/274) [#276](https://github.com/HankHuang0516/EClaw/issues/276) [#258](https://github.com/HankHuang0516/EClaw/issues/258) [#276](https://github.com/HankHuang0516/EClaw/issues/276) [#256](https://github.com/HankHuang0516/EClaw/issues/256) [#326](https://github.com/HankHuang0516/EClaw/issues/326) [#327](https://github.com/HankHuang0516/EClaw/issues/327) [#330](https://github.com/HankHuang0516/EClaw/issues/330) [#331](https://github.com/HankHuang0516/EClaw/issues/331) [#326](https://github.com/HankHuang0516/EClaw/issues/326) [#327](https://github.com/HankHuang0516/EClaw/issues/327) [#330](https://github.com/HankHuang0516/EClaw/issues/330) [#331](https://github.com/HankHuang0516/EClaw/issues/331) [#284](https://github.com/HankHuang0516/EClaw/issues/284)

## [1.120.3](https://github.com/HankHuang0516/EClaw/compare/v1.120.2...v1.120.3) (2026-03-20)


### Bug Fixes

* ChatIntegrityValidator direction check false positives ([#350](https://github.com/HankHuang0516/EClaw/issues/350)) ([98a0feb](https://github.com/HankHuang0516/EClaw/commit/98a0feb1cea51448aec7263a56e60b21749b0b1d)), closes [#345](https://github.com/HankHuang0516/EClaw/issues/345) [#274](https://github.com/HankHuang0516/EClaw/issues/274) [#256](https://github.com/HankHuang0516/EClaw/issues/256) [#258](https://github.com/HankHuang0516/EClaw/issues/258) [#259](https://github.com/HankHuang0516/EClaw/issues/259) [#274](https://github.com/HankHuang0516/EClaw/issues/274) [#276](https://github.com/HankHuang0516/EClaw/issues/276) [#258](https://github.com/HankHuang0516/EClaw/issues/258) [#276](https://github.com/HankHuang0516/EClaw/issues/276) [#256](https://github.com/HankHuang0516/EClaw/issues/256) [#326](https://github.com/HankHuang0516/EClaw/issues/326) [#327](https://github.com/HankHuang0516/EClaw/issues/327) [#330](https://github.com/HankHuang0516/EClaw/issues/330) [#331](https://github.com/HankHuang0516/EClaw/issues/331) [#326](https://github.com/HankHuang0516/EClaw/issues/326) [#327](https://github.com/HankHuang0516/EClaw/issues/327) [#330](https://github.com/HankHuang0516/EClaw/issues/330) [#331](https://github.com/HankHuang0516/EClaw/issues/331)

## [1.120.2](https://github.com/HankHuang0516/EClaw/compare/v1.120.1...v1.120.2) (2026-03-20)


### Bug Fixes

* fix A2A message rendering and add full closed-loop debug logging ([#349](https://github.com/HankHuang0516/EClaw/issues/349)) ([091e166](https://github.com/HankHuang0516/EClaw/commit/091e166ae6f96ce5308937865d5564eac115932c))

## [1.120.1](https://github.com/HankHuang0516/EClaw/compare/v1.120.0...v1.120.1) (2026-03-20)


### Bug Fixes

* channel-bound entities accumulate XP via /channel/message ([#345](https://github.com/HankHuang0516/EClaw/issues/345)) ([#348](https://github.com/HankHuang0516/EClaw/issues/348)) ([e3d446c](https://github.com/HankHuang0516/EClaw/commit/e3d446c311c055174987ddbb50322d5b805e3051))

# [1.120.0](https://github.com/HankHuang0516/EClaw/compare/v1.119.3...v1.120.0) (2026-03-20)


### Features

* enhance AI customer service with auto-injected device context and proactive lookup ([e1238ad](https://github.com/HankHuang0516/EClaw/commit/e1238ad0a020222aee9082fe962c53e88351c4a6))

## [1.119.3](https://github.com/HankHuang0516/EClaw/compare/v1.119.2...v1.119.3) (2026-03-20)


### Bug Fixes

* remove message_count check and GitHub issue auto-creation from ChatIntegrity ([#347](https://github.com/HankHuang0516/EClaw/issues/347)) ([ad3bf85](https://github.com/HankHuang0516/EClaw/commit/ad3bf85ebbeb71079615b5a053735f4a8fbc83cb))

## [1.119.2](https://github.com/HankHuang0516/EClaw/compare/v1.119.1...v1.119.2) (2026-03-20)


### Bug Fixes

* fix A2A message rendering — eliminate duplicates and multi-line regex ([#339](https://github.com/HankHuang0516/EClaw/issues/339)) ([7082f33](https://github.com/HankHuang0516/EClaw/commit/7082f3341e53ad548519fc880f8791ed5dfa4db4))

## [1.119.1](https://github.com/HankHuang0516/EClaw/compare/v1.119.0...v1.119.1) (2026-03-20)


### Bug Fixes

* add back button to FileManagerActivity and align Files button style ([#333](https://github.com/HankHuang0516/EClaw/issues/333)) ([1ea4e2c](https://github.com/HankHuang0516/EClaw/commit/1ea4e2c6109d0216566d30d54ea7426250213cf5))

# [1.119.0](https://github.com/HankHuang0516/EClaw/compare/v1.118.0...v1.119.0) (2026-03-19)


### Features

* add web-image-search bot tool for article illustrations ([#329](https://github.com/HankHuang0516/EClaw/issues/329)) ([65b27cf](https://github.com/HankHuang0516/EClaw/commit/65b27cf783787b42c8bde8f779c0dae53c78a841)), closes [#27](https://github.com/HankHuang0516/EClaw/issues/27) [#42](https://github.com/HankHuang0516/EClaw/issues/42) [#43](https://github.com/HankHuang0516/EClaw/issues/43)

# [1.118.0](https://github.com/HankHuang0516/EClaw/compare/v1.117.2...v1.118.0) (2026-03-19)


### Features

* add debug log viewer for admin/developer users ([#328](https://github.com/HankHuang0516/EClaw/issues/328)) ([a1fbbdd](https://github.com/HankHuang0516/EClaw/commit/a1fbbdde20bb386784a9f5fdfa91b8c290010b4d))

## [1.117.2](https://github.com/HankHuang0516/EClaw/compare/v1.117.1...v1.117.2) (2026-03-19)


### Bug Fixes

* admin panel bot ID display, active bindings logic, and contribution pagination ([#325](https://github.com/HankHuang0516/EClaw/issues/325)) ([547ae35](https://github.com/HankHuang0516/EClaw/commit/547ae35ba12e99a707d4f78e80f28aedb378fdb4))

## [1.117.1](https://github.com/HankHuang0516/EClaw/compare/v1.117.0...v1.117.1) (2026-03-19)


### Bug Fixes

* set bottom nav layout_gravity to BOTTOM in CardHolderActivity ([31486b0](https://github.com/HankHuang0516/EClaw/commit/31486b08e2f1b94752059ffe654789910ee4d960))

# [1.117.0](https://github.com/HankHuang0516/EClaw/compare/v1.116.0...v1.117.0) (2026-03-19)


### Features

* remove JIT owner approval for device-vars bot read ([fed3abf](https://github.com/HankHuang0516/EClaw/commit/fed3abf1d2c63bfb7d813bf8153fadf8269a9d19))

# [1.116.0](https://github.com/HankHuang0516/EClaw/compare/v1.115.2...v1.116.0) (2026-03-19)


### Features

* add webhook URL to push logs and debug/webhooks endpoint ([#322](https://github.com/HankHuang0516/EClaw/issues/322)) ([6ba1ad7](https://github.com/HankHuang0516/EClaw/commit/6ba1ad70c6e3d17be405a5fb9a6c845e8418ba86))

## [1.115.2](https://github.com/HankHuang0516/EClaw/compare/v1.115.1...v1.115.2) (2026-03-19)


### Bug Fixes

* sync openclaw-channel-eclaw to v1.2.1, fix parseBody overwriting pre-parsed body ([#321](https://github.com/HankHuang0516/EClaw/issues/321)) ([57ff332](https://github.com/HankHuang0516/EClaw/commit/57ff3320fae46e5b23d1f0a84e9d1c60baa82801))

## [1.115.1](https://github.com/HankHuang0516/EClaw/compare/v1.115.0...v1.115.1) (2026-03-19)


### Bug Fixes

* sync channel API key state between web and app, show bound entities ([#320](https://github.com/HankHuang0516/EClaw/issues/320)) ([f9b4fb0](https://github.com/HankHuang0516/EClaw/commit/f9b4fb0c64ef6722e1fe84c8bb200ca0350d6628))

# [1.115.0](https://github.com/HankHuang0516/EClaw/compare/v1.114.2...v1.115.0) (2026-03-19)


### Features

* consolidate entity delete — merge remove and permanent delete into single action ([#316](https://github.com/HankHuang0516/EClaw/issues/316)) ([dd86c00](https://github.com/HankHuang0516/EClaw/commit/dd86c00c5cd58b19fc2c083485c05d8b1ebfa527))

## [1.114.2](https://github.com/HankHuang0516/EClaw/compare/v1.114.1...v1.114.2) (2026-03-19)


### Bug Fixes

* full entity slot compaction — renumber all slots to 0,1,2,... ([#314](https://github.com/HankHuang0516/EClaw/issues/314)) ([0239421](https://github.com/HankHuang0516/EClaw/commit/0239421ef5dcfa94ec07dbdc00cc17840a765b23))

## [1.114.1](https://github.com/HankHuang0516/EClaw/compare/v1.114.0...v1.114.1) (2026-03-19)


### Bug Fixes

* compact entity slots to [#0](https://github.com/HankHuang0516/EClaw/issues/0) when all others are deleted ([#312](https://github.com/HankHuang0516/EClaw/issues/312)) ([cc60b8a](https://github.com/HankHuang0516/EClaw/commit/cc60b8abb6d646ece20042af20b0099b802be409)), closes [#30](https://github.com/HankHuang0516/EClaw/issues/30)

# [1.114.0](https://github.com/HankHuang0516/EClaw/compare/v1.113.2...v1.114.0) (2026-03-19)


### Features

* entity trash + fix tests deleting real entities ([#313](https://github.com/HankHuang0516/EClaw/issues/313)) ([685228e](https://github.com/HankHuang0516/EClaw/commit/685228e303b8d95c0f95630f4cea331545cf25f1))

## [1.113.2](https://github.com/HankHuang0516/EClaw/compare/v1.113.1...v1.113.2) (2026-03-18)


### Bug Fixes

* render image avatars in chat bubble labels via getEntityLabel() ([#306](https://github.com/HankHuang0516/EClaw/issues/306)) ([4f28e2a](https://github.com/HankHuang0516/EClaw/commit/4f28e2a88a68eff2f372489098475e6ceac173ba))

## [1.113.1](https://github.com/HankHuang0516/EClaw/compare/v1.113.0...v1.113.1) (2026-03-18)


### Bug Fixes

* resolve admin nav link race condition in checkAuth() ([#305](https://github.com/HankHuang0516/EClaw/issues/305)) ([f99788f](https://github.com/HankHuang0516/EClaw/commit/f99788f67a05e4fdddb233482c757603c9981e0f))

# [1.113.0](https://github.com/HankHuang0516/EClaw/compare/v1.112.0...v1.113.0) (2026-03-18)


### Features

* improve agent card editing UX with chip-based UI (Android) ([11654bf](https://github.com/HankHuang0516/EClaw/commit/11654bfe0736787909dc4dcd9fb3eefb39c499dd)), closes [#296](https://github.com/HankHuang0516/EClaw/issues/296)

# [1.112.0](https://github.com/HankHuang0516/EClaw/compare/v1.111.3...v1.112.0) (2026-03-18)


### Features

* expand eclaw-a2a-toolkit with all 93 API endpoints ([#302](https://github.com/HankHuang0516/EClaw/issues/302)) ([891fe94](https://github.com/HankHuang0516/EClaw/commit/891fe94031826bb6d27828698fda8eedb1e6b0c0))

## [1.111.3](https://github.com/HankHuang0516/EClaw/compare/v1.111.2...v1.111.3) (2026-03-18)


### Bug Fixes

* render avatar URL as image across all Card Holder pages ([#296](https://github.com/HankHuang0516/EClaw/issues/296)) ([74d186c](https://github.com/HankHuang0516/EClaw/commit/74d186c20de5f9ffdc4e3cb7674c5bf60f6aa135))

## [1.111.2](https://github.com/HankHuang0516/EClaw/compare/v1.111.1...v1.111.2) (2026-03-18)


### Bug Fixes

* exclude Telegraph from publish auth test ([#299](https://github.com/HankHuang0516/EClaw/issues/299)) ([ab735ca](https://github.com/HankHuang0516/EClaw/commit/ab735caaf2aecd667398a62a5e8be08e09192ff4))

## [1.111.1](https://github.com/HankHuang0516/EClaw/compare/v1.111.0...v1.111.1) (2026-03-18)


### Bug Fixes

* relax publisher-integration test assertions for CI environment ([#298](https://github.com/HankHuang0516/EClaw/issues/298)) ([de6a723](https://github.com/HankHuang0516/EClaw/commit/de6a7232dbb8cb203796e5bfcbbd336376514c6f))

# [1.111.0](https://github.com/HankHuang0516/EClaw/compare/v1.110.1...v1.111.0) (2026-03-18)


### Features

* add 10 new Jest test suites and fix test infrastructure ([#297](https://github.com/HankHuang0516/EClaw/issues/297)) ([9baf8b1](https://github.com/HankHuang0516/EClaw/commit/9baf8b1aa0315ed00ed93bab17b150f4fbad9e49))

## [1.110.1](https://github.com/HankHuang0516/EClaw/compare/v1.110.0...v1.110.1) (2026-03-18)


### Bug Fixes

* make /api/health build tag and startedAt dynamic for deploy detection ([#294](https://github.com/HankHuang0516/EClaw/issues/294)) ([d975900](https://github.com/HankHuang0516/EClaw/commit/d975900ad3fcec914f03d7650abccadf8cca14f0))

# [1.110.0](https://github.com/HankHuang0516/EClaw/compare/v1.109.2...v1.110.0) (2026-03-18)


### Features

* avatar photo upload via Flickr with improved UX ([#293](https://github.com/HankHuang0516/EClaw/issues/293)) ([45925ec](https://github.com/HankHuang0516/EClaw/commit/45925ec4ed771aa4174676bf7632998faf708274))

## [1.109.2](https://github.com/HankHuang0516/EClaw/compare/v1.109.1...v1.109.2) (2026-03-18)


### Bug Fixes

* prevent template gallery buttons from opening multiple dialogs on spam-click ([#292](https://github.com/HankHuang0516/EClaw/issues/292)) ([edbfada](https://github.com/HankHuang0516/EClaw/commit/edbfada869d5751d30f4c0da1bfb68d11599d6bb))

## [1.109.1](https://github.com/HankHuang0516/EClaw/compare/v1.109.0...v1.109.1) (2026-03-18)


### Bug Fixes

* prevent CDN cache mismatch from breaking entity loading on web portal ([#291](https://github.com/HankHuang0516/EClaw/issues/291)) ([c57aba0](https://github.com/HankHuang0516/EClaw/commit/c57aba0cbe763421e2e575bcd911f29fd6cb42f5))

# [1.109.0](https://github.com/HankHuang0516/EClaw/compare/v1.108.1...v1.109.0) (2026-03-18)


### Features

* add avatar photo upload to Flickr for all platforms ([378545f](https://github.com/HankHuang0516/EClaw/commit/378545f3438c3f3dfced37cce7cfed281d35f830))

## [1.108.1](https://github.com/HankHuang0516/EClaw/compare/v1.108.0...v1.108.1) (2026-03-18)


### Bug Fixes

* remove duplicate filter_all string resource (Android lint) ([#289](https://github.com/HankHuang0516/EClaw/issues/289)) ([de27ca2](https://github.com/HankHuang0516/EClaw/commit/de27ca215c0b1030cb5c11d168f126ac7490ce30))

# [1.108.0](https://github.com/HankHuang0516/EClaw/compare/v1.107.2...v1.108.0) (2026-03-18)


### Features

* complete agent card rendering across all platforms ([#288](https://github.com/HankHuang0516/EClaw/issues/288)) ([d1c9c91](https://github.com/HankHuang0516/EClaw/commit/d1c9c9192c42d73e39cac28f570856189ac1898f))

## [1.107.2](https://github.com/HankHuang0516/EClaw/compare/v1.107.1...v1.107.2) (2026-03-18)


### Bug Fixes

* preserve scroll position when switching bottom nav tabs ([#287](https://github.com/HankHuang0516/EClaw/issues/287)) ([f357db1](https://github.com/HankHuang0516/EClaw/commit/f357db176285249a885e16f255ff0da33a952676))

## [1.107.1](https://github.com/HankHuang0516/EClaw/compare/v1.107.0...v1.107.1) (2026-03-18)


### Bug Fixes

* card holder edit UX + dashboard-style agent card editor + nav i18n ([#286](https://github.com/HankHuang0516/EClaw/issues/286)) ([e8dba13](https://github.com/HankHuang0516/EClaw/commit/e8dba1331ca5ad8036b38b5d07b85cbf75b4a7c4))

# [1.107.0](https://github.com/HankHuang0516/EClaw/compare/v1.106.8...v1.107.0) (2026-03-18)


### Features

* rewrite Card Holder web portal to match Android 3-section layout ([#285](https://github.com/HankHuang0516/EClaw/issues/285)) ([69fc0b9](https://github.com/HankHuang0516/EClaw/commit/69fc0b9a798fabf5f6b001c9b6d7ffab4e99fdbf))

## [1.106.8](https://github.com/HankHuang0516/EClaw/compare/v1.106.7...v1.106.8) (2026-03-18)


### Bug Fixes

* bump versionCode to 56 (55 already used on Play Store) ([1f03d13](https://github.com/HankHuang0516/EClaw/commit/1f03d13f911f11c8fb7b46839873ec30ee11f87c))

## [1.106.7](https://github.com/HankHuang0516/EClaw/compare/v1.106.6...v1.106.7) (2026-03-18)


### Bug Fixes

* replace non-existent onAuth() with checkAuth() in card-holder.html ([#283](https://github.com/HankHuang0516/EClaw/issues/283)) ([db4ebfb](https://github.com/HankHuang0516/EClaw/commit/db4ebfbb96124f97af13e2a9fcd7865518560f90))

## [1.106.6](https://github.com/HankHuang0516/EClaw/compare/v1.106.5...v1.106.6) (2026-03-18)


### Bug Fixes

* resolve pre-existing Android CI failures (NavItem, MissionViewModel) ([#282](https://github.com/HankHuang0516/EClaw/issues/282)) ([5b877df](https://github.com/HankHuang0516/EClaw/commit/5b877df4f91611550904bf47000a237b6ad81b84))

## [1.106.5](https://github.com/HankHuang0516/EClaw/compare/v1.106.4...v1.106.5) (2026-03-18)


### Bug Fixes

* add FILES to NavItem enum for Android CI ([#281](https://github.com/HankHuang0516/EClaw/issues/281)) ([46e3c54](https://github.com/HankHuang0516/EClaw/commit/46e3c5431a3f4e11a9cc40bb5ddef5260d75278a))

## [1.106.4](https://github.com/HankHuang0516/EClaw/compare/v1.106.3...v1.106.4) (2026-03-18)


### Bug Fixes

* remove duplicate filter_all string resource in strings.xml ([#280](https://github.com/HankHuang0516/EClaw/issues/280)) ([2799a2d](https://github.com/HankHuang0516/EClaw/commit/2799a2db83fff8e2e76666c3753e03cafc416c74))

## [1.106.3](https://github.com/HankHuang0516/EClaw/compare/v1.106.2...v1.106.3) (2026-03-18)


### Bug Fixes

* resolve AI chat message loss and freeze on reopen ([#248](https://github.com/HankHuang0516/EClaw/issues/248)) ([#279](https://github.com/HankHuang0516/EClaw/issues/279)) ([a7e0aa1](https://github.com/HankHuang0516/EClaw/commit/a7e0aa1e4a8c759082781aae9a39dc08d5fd69d8))

## [1.106.2](https://github.com/HankHuang0516/EClaw/compare/v1.106.1...v1.106.2) (2026-03-18)


### Bug Fixes

* remove duplicate `let currentUser` in card-holder.html that broke My Cards tab ([#273](https://github.com/HankHuang0516/EClaw/issues/273)) ([22a1c78](https://github.com/HankHuang0516/EClaw/commit/22a1c78059cc63578a8c2834f594daae56ef5e73))

## [1.106.1](https://github.com/HankHuang0516/EClaw/compare/v1.106.0...v1.106.1) (2026-03-18)


### Bug Fixes

* remove WordPress from schedules and fix Health Check auth ([#272](https://github.com/HankHuang0516/EClaw/issues/272)) ([4abfc71](https://github.com/HankHuang0516/EClaw/commit/4abfc71cdbe73fe210e5273e46887059b267fbd6)), closes [#27](https://github.com/HankHuang0516/EClaw/issues/27) [#40](https://github.com/HankHuang0516/EClaw/issues/40) [#42](https://github.com/HankHuang0516/EClaw/issues/42) [#43](https://github.com/HankHuang0516/EClaw/issues/43) [#53](https://github.com/HankHuang0516/EClaw/issues/53)

# [1.106.0](https://github.com/HankHuang0516/EClaw/compare/v1.105.1...v1.106.0) (2026-03-18)


### Features

* card-holder redesign — 3 sections, block/unblock, chat history ([#269](https://github.com/HankHuang0516/EClaw/issues/269)) ([89026af](https://github.com/HankHuang0516/EClaw/commit/89026afc0785b43f66e98f48517f32eb535ece9f))

## [1.105.1](https://github.com/HankHuang0516/EClaw/compare/v1.105.0...v1.105.1) (2026-03-17)


### Bug Fixes

* resolve Kotlin compile errors and prepare v1.0.48 ([#268](https://github.com/HankHuang0516/EClaw/issues/268)) ([1fea5c1](https://github.com/HankHuang0516/EClaw/commit/1fea5c1f7d62bb8d43be4963c09d487407ff1da5))

# [1.105.0](https://github.com/HankHuang0516/EClaw/compare/v1.104.1...v1.105.0) (2026-03-17)


### Features

* **seo:** rebrand to EClawbot, add landing page, llms.txt, and OG image ([#267](https://github.com/HankHuang0516/EClaw/issues/267)) ([366e744](https://github.com/HankHuang0516/EClaw/commit/366e74497ec4b795504fab0881d9f76158b22897))

## [1.104.1](https://github.com/HankHuang0516/EClaw/compare/v1.104.0...v1.104.1) (2026-03-17)


### Bug Fixes

* scheduled messages not showing in Android app chat ([#261](https://github.com/HankHuang0516/EClaw/issues/261)) ([9485cfc](https://github.com/HankHuang0516/EClaw/commit/9485cfc5cd373e64c24e6d5b1ba3cebfb43c5278))

# [1.104.0](https://github.com/HankHuang0516/EClaw/compare/v1.103.9...v1.104.0) (2026-03-17)


### Features

* **android:** refactor AiChatBottomSheet to use AiChatViewModel ([#248](https://github.com/HankHuang0516/EClaw/issues/248)) ([#253](https://github.com/HankHuang0516/EClaw/issues/253)) ([dcc0860](https://github.com/HankHuang0516/EClaw/commit/dcc086092f651d31fe28d25a86115ec47ba124f6))

## [1.103.9](https://github.com/HankHuang0516/EClaw/compare/v1.103.8...v1.103.9) (2026-03-17)


### Bug Fixes

* add proper mocks to file-delete Jest test to fix CI ([#251](https://github.com/HankHuang0516/EClaw/issues/251)) ([969efb1](https://github.com/HankHuang0516/EClaw/commit/969efb1dd157ffc4f64f75b68764c674e1bf2786))

## [1.103.8](https://github.com/HankHuang0516/EClaw/compare/v1.103.7...v1.103.8) (2026-03-17)


### Bug Fixes

* resolve 7 open issues — race condition, NPE, file delete, auto-save ([#250](https://github.com/HankHuang0516/EClaw/issues/250)) ([e076e04](https://github.com/HankHuang0516/EClaw/commit/e076e041a8330ce67c4b270a1b43df18d880bd38))

## [1.103.7](https://github.com/HankHuang0516/EClaw/compare/v1.103.6...v1.103.7) (2026-03-17)


### Bug Fixes

* add all missing Card Holder page i18n translations (8 languages) ([#241](https://github.com/HankHuang0516/EClaw/issues/241)) ([4ad8cf1](https://github.com/HankHuang0516/EClaw/commit/4ad8cf166b674cd9286e345b1075be962b1a7eec))

## [1.103.6](https://github.com/HankHuang0516/EClaw/compare/v1.103.5...v1.103.6) (2026-03-16)


### Bug Fixes

* delete-account.html i18n.js path missing ../ ([#240](https://github.com/HankHuang0516/EClaw/issues/240)) ([62dad0c](https://github.com/HankHuang0516/EClaw/commit/62dad0c4c6742521af72fb077e7cdcce6e304f8b))

## [1.103.5](https://github.com/HankHuang0516/EClaw/compare/v1.103.4...v1.103.5) (2026-03-16)


### Bug Fixes

* screen-control.html telemetry script path missing ../ ([#239](https://github.com/HankHuang0516/EClaw/issues/239)) ([5ce930f](https://github.com/HankHuang0516/EClaw/commit/5ce930f779e6e11b1ffe72bfd86187647c0c8e6c))

## [1.103.4](https://github.com/HankHuang0516/EClaw/compare/v1.103.3...v1.103.4) (2026-03-16)


### Bug Fixes

* publisher Jest tests fail when PUBLISHER_API_KEY is set ([#238](https://github.com/HankHuang0516/EClaw/issues/238)) ([59f1521](https://github.com/HankHuang0516/EClaw/commit/59f15217386577a5688e052d837591a9d20e4994))

## [1.103.3](https://github.com/HankHuang0516/EClaw/compare/v1.103.2...v1.103.3) (2026-03-16)


### Bug Fixes

* add missing nav_card_holder i18n key for all 8 languages ([#237](https://github.com/HankHuang0516/EClaw/issues/237)) ([e632cde](https://github.com/HankHuang0516/EClaw/commit/e632cde692bb9875affc71d3ddc18fcdad22193d))

## [1.103.2](https://github.com/HankHuang0516/EClaw/compare/v1.103.1...v1.103.2) (2026-03-16)


### Bug Fixes

* portal screen-control uses deviceSecret instead of botSecret ([#236](https://github.com/HankHuang0516/EClaw/issues/236)) ([0347e6c](https://github.com/HankHuang0516/EClaw/commit/0347e6c7c4bdad4df82bdc3110fa23167e26616f))

## [1.103.1](https://github.com/HankHuang0516/EClaw/compare/v1.103.0...v1.103.1) (2026-03-16)


### Bug Fixes

* chat input text invisible due to white-on-light-gray contrast ([#235](https://github.com/HankHuang0516/EClaw/issues/235)) ([292412b](https://github.com/HankHuang0516/EClaw/commit/292412b2369f152eb9b9bce66facf611baac0b06)), closes [#FFE0E0E0](https://github.com/HankHuang0516/EClaw/issues/FFE0E0E0) [#1A1A2E](https://github.com/HankHuang0516/EClaw/issues/1A1A2E)

# [1.103.0](https://github.com/HankHuang0516/EClaw/compare/v1.102.1...v1.103.0) (2026-03-16)


### Features

* bot audit closed-loop (github-issue + audit-log endpoints) ([#234](https://github.com/HankHuang0516/EClaw/issues/234)) ([eed81b7](https://github.com/HankHuang0516/EClaw/commit/eed81b779038a80372210378f4212a8361d3d242))

## [1.102.1](https://github.com/HankHuang0516/EClaw/compare/v1.102.0...v1.102.1) (2026-03-16)


### Bug Fixes

* cache-busting for i18n.js in info.html ([#232](https://github.com/HankHuang0516/EClaw/issues/232)) ([7e91a42](https://github.com/HankHuang0516/EClaw/commit/7e91a42a1298be781db78a808db320b6f5e82067))

# [1.102.0](https://github.com/HankHuang0516/EClaw/compare/v1.101.0...v1.102.0) (2026-03-16)


### Features

* **i18n:** internationalize hard-coded Chinese in OpenClaw usecase examples ([#231](https://github.com/HankHuang0516/EClaw/issues/231)) ([099ac68](https://github.com/HankHuang0516/EClaw/commit/099ac68fcc75f1b7d1e8effca08cf9ce1479306f))

# [1.101.0](https://github.com/HankHuang0516/EClaw/compare/v1.100.0...v1.101.0) (2026-03-16)


### Features

* **publisher:** health check, rate limiter, better error messages ([#230](https://github.com/HankHuang0516/EClaw/issues/230)) ([5351911](https://github.com/HankHuang0516/EClaw/commit/53519111f02c9b7109e318332a242ede73be6fef))

# [1.97.0](https://github.com/HankHuang0516/EClaw/compare/v1.96.2...v1.97.0) (2026-03-16)


### Features

* **seo:** add robots.txt, sitemap.xml, meta tags, JSON-LD, and hreflang to web portal ([925352f](https://github.com/HankHuang0516/EClaw/commit/925352f5571121550cf6fc4f0b6e2430c21ce36b))

## [1.96.2](https://github.com/HankHuang0516/EClaw/compare/v1.96.1...v1.96.2) (2026-03-16)


### Bug Fixes

* **ui:** UIUX audit P0-P1 fixes — design tokens, accessibility, touch targets ([b1fb5ce](https://github.com/HankHuang0516/EClaw/commit/b1fb5ce4ec7b53de99044649e6bb223f0122d329))

## [1.96.1](https://github.com/HankHuang0516/EClaw/compare/v1.96.0...v1.96.1) (2026-03-16)


### Bug Fixes

* **test:** fix E2EE test lookup param and cleanup auth ([bfc8f25](https://github.com/HankHuang0516/EClaw/commit/bfc8f2560b24c2ef05c50d89d6edfb3b2a411d94))

# [1.96.0](https://github.com/HankHuang0516/EClaw/compare/v1.95.2...v1.96.0) (2026-03-16)


### Features

* **channel:** add E2EE awareness for secure messaging channels ([#212](https://github.com/HankHuang0516/EClaw/issues/212)) ([4fe189e](https://github.com/HankHuang0516/EClaw/commit/4fe189ee2a01e66d2e540717be88e4627acf1407))

## [1.95.2](https://github.com/HankHuang0516/EClaw/compare/v1.95.1...v1.95.2) (2026-03-15)


### Bug Fixes

* update regression tests for dynamic entity system + add agent card validation ([eea3dc6](https://github.com/HankHuang0516/EClaw/commit/eea3dc694e0e5f075c163e682803f7f61e811f47))

## [1.95.1](https://github.com/HankHuang0516/EClaw/compare/v1.95.0...v1.95.1) (2026-03-15)


### Bug Fixes

* harden release workflow publisher API calls with real values ([7c2ff9f](https://github.com/HankHuang0516/EClaw/commit/7c2ff9f0db541cce0962989757308ad8048c1918))

# [1.95.0](https://github.com/HankHuang0516/EClaw/compare/v1.94.1...v1.95.0) (2026-03-15)


### Bug Fixes

* [#168](https://github.com/HankHuang0516/EClaw/issues/168) chat bubble text selection & [#167](https://github.com/HankHuang0516/EClaw/issues/167) entity public code display ([c89dccc](https://github.com/HankHuang0516/EClaw/commit/c89dcccdd3f00b96d18aab3d3a0d659569769e54))
* add flex-wrap to dashboard entity action buttons to prevent truncation ([6f0fa21](https://github.com/HankHuang0516/EClaw/commit/6f0fa210fae2e43878ed7c560ad2467644a189d4))
* allow 127.0.0.1 through HTTPS redirect for Jest/supertest tests ([a38f804](https://github.com/HankHuang0516/EClaw/commit/a38f804923d28f11566f90563224783b626021fa))
* avoid gh auth login conflict when GH_TOKEN env var is set ([d94a669](https://github.com/HankHuang0516/EClaw/commit/d94a6695f9293f083376caea97d8356bdbbccd20))
* comprehensive UI audit fixes across Web, Android, and iOS ([eb6e8e8](https://github.com/HankHuang0516/EClaw/commit/eb6e8e8c90ce0cf4e3ba4b9af0763805dae7af61)), closes [#FF6B6B](https://github.com/HankHuang0516/EClaw/issues/FF6B6B) [#FFB6C1](https://github.com/HankHuang0516/EClaw/issues/FFB6C1)
* cron schedule update no longer violates NOT NULL on scheduled_at ([15e46af](https://github.com/HankHuang0516/EClaw/commit/15e46af150476bc0f2a6e0213ae5960c8e078fa1))
* **android:** entity card buttons overflow — apply M3 card action pattern ([f6b4b68](https://github.com/HankHuang0516/EClaw/commit/f6b4b681d77c9dc814e7a19e01a305b90e3b3fcf))
* **android:** force Dark theme to fix black screen on light-mode devices ([47ed30b](https://github.com/HankHuang0516/EClaw/commit/47ed30b5c19f62ea0a7bea5c2fb035ac9011f7c2)), closes [#0D0D1A](https://github.com/HankHuang0516/EClaw/issues/0D0D1A)
* **android:** improve Public Code badge contrast and add functional label ([f725bc6](https://github.com/HankHuang0516/EClaw/commit/f725bc6c7e19521bdf4f9559805d197ba2cf6968)), closes [#4FC3F7](https://github.com/HankHuang0516/EClaw/issues/4FC3F7) [#4CAF50](https://github.com/HankHuang0516/EClaw/issues/4CAF50)
* normalize requiredVars to prevent Gson deserialization crash on Android ([30f9924](https://github.com/HankHuang0516/EClaw/commit/30f99248c95c3c664350e574670aa5f671e42369))
* OAuth test uses fresh token pair for refresh_token test ([392dd05](https://github.com/HankHuang0516/EClaw/commit/392dd0529b671542a7c01b095c67ebd6778c5ddc))
* prevent publicCode loss during entity reorder ([bd8f1f4](https://github.com/HankHuang0516/EClaw/commit/bd8f1f407aa5764fdf7a068bb4f1aeda6d9045ea))
* **ci:** relax edit mode guard grep to match multi-line Kotlin style ([9e19e1a](https://github.com/HankHuang0516/EClaw/commit/9e19e1ac65317f7783b3787986901b24570661af))
* remove duplicate string resources entity_public_code and code_copied ([ba238a4](https://github.com/HankHuang0516/EClaw/commit/ba238a49dbb4d70ff7454d3a291ed3a4e0bc815e)), closes [#167](https://github.com/HankHuang0516/EClaw/issues/167)
* remove ensureEntitySlots and maxEntities references for dynamic entity system ([4aaa3bf](https://github.com/HankHuang0516/EClaw/commit/4aaa3bf89349e991692e4c831d41648506036604))
* remove extra context arg from TelemetryHelper.trackAction calls ([1f25b76](https://github.com/HankHuang0516/EClaw/commit/1f25b76183092249dcbad9239e8dca9166c71ff5))
* **android:** remove yellow diagnostic background after confirming black screen was emulator data corruption ([9c25fe4](https://github.com/HankHuang0516/EClaw/commit/9c25fe46f5edfa4bff73dd07326176b678dc062d))
* send callback_token via X-Callback-Token header alongside Basic Auth ([958d2fd](https://github.com/HankHuang0516/EClaw/commit/958d2fd9690e2694c6788c85baa54ab3e03568fe))
* test uses correct lookup and unbind endpoints ([ed3c913](https://github.com/HankHuang0516/EClaw/commit/ed3c9138bed58efcdd429095ba94b39522d248f4))
* **publisher:** Tumblr delete uses POST not DELETE method ([#213](https://github.com/HankHuang0516/EClaw/issues/213)) ([db2084b](https://github.com/HankHuang0516/EClaw/commit/db2084b44dc51b069d7bf3c3c47c5c3bd704206f))
* **publisher:** Tumblr delete uses POST not DELETE method ([ab23e27](https://github.com/HankHuang0516/EClaw/commit/ab23e273f2cee405b10127eb741662216f813c12))
* **publisher:** Tumblr delete uses POST not DELETE method ([9452991](https://github.com/HankHuang0516/EClaw/commit/945299111efd2f1a529156b10bf0bff25a010a74))
* update regression tests for dynamic entity system ([a671070](https://github.com/HankHuang0516/EClaw/commit/a67107012dfb30588d42df2c2f0748e77048414e))
* widen OAuth access_token column from VARCHAR(256) to VARCHAR(512) ([a93da54](https://github.com/HankHuang0516/EClaw/commit/a93da54d50991908dd2b7e568b07410ac9397e2a))


### Features

* add A2A Agent Card UI across all three platforms ([7812aad](https://github.com/HankHuang0516/EClaw/commit/7812aad89920962efce27fa8d7a1701dbf948dac))
* add A2A compat layer, OAuth 2.0 server, and interactive API docs ([#187](https://github.com/HankHuang0516/EClaw/issues/187), [#189](https://github.com/HankHuang0516/EClaw/issues/189), [#190](https://github.com/HankHuang0516/EClaw/issues/190)) ([9351a9d](https://github.com/HankHuang0516/EClaw/commit/9351a9db5cf0df4aec21615a671cf5f198669f7e))
* add Agent Card button to Home page entity cards ([71d5937](https://github.com/HankHuang0516/EClaw/commit/71d59374322cca2802da2a77f349f5251735c0af))
* add optional X-Publisher-Key auth to publisher API ([e0534a7](https://github.com/HankHuang0516/EClaw/commit/e0534a7436c78a67d0fac0b14cc432f3b0d99953))
* add optional X-Publisher-Key auth to publisher API ([298250f](https://github.com/HankHuang0516/EClaw/commit/298250f0010101e6f31ae637b25211b5a35a09d6))
* add optional X-Publisher-Key auth to publisher API ([af2cd05](https://github.com/HankHuang0516/EClaw/commit/af2cd05d71db59eb75b43c795a0fb5cd8a4843d9))
* add Publisher API key auth middleware ([#215](https://github.com/HankHuang0516/EClaw/issues/215)) ([6bdc30d](https://github.com/HankHuang0516/EClaw/commit/6bdc30d07a94f47e6b6a15d808773fb4470ab157))
* add requiredVars format validation in contribute endpoint + regression tests ([328a56d](https://github.com/HankHuang0516/EClaw/commit/328a56d11964c7fd0c59d2da183ac3d31d549b2a))
* **publisher:** add Telegraph, Qiita, Tumblr, Mastodon + other new platforms ([33b9c4e](https://github.com/HankHuang0516/EClaw/commit/33b9c4e54fe5ee1897b3a10541211a9f3d6e05e2))
* **publisher:** add WordPress token expiry warning in API responses ([2c3c513](https://github.com/HankHuang0516/EClaw/commit/2c3c51368ef9ec2e972db373b26353f87f911fb5))
* **publisher:** add WordPress.com OAuth flow with DB-backed token storage ([3a4dda8](https://github.com/HankHuang0516/EClaw/commit/3a4dda82898ab26d36cf2e1bf846ada081f7acc0))
* align Skill/Soul/Rule template gallery across Web, Android, and iOS ([4809358](https://github.com/HankHuang0516/EClaw/commit/4809358d58b6400f7b12b3fc0102ec8d73c289f4))
* allow bots to manage their own Agent Card via botSecret ([7f95b2c](https://github.com/HankHuang0516/EClaw/commit/7f95b2cbe3195fc222526b434d3f11820aec0026))
* auto-save dashboard + split save/notify workflow ([ce84021](https://github.com/HankHuang0516/EClaw/commit/ce84021ff6838236f872b414bdfc467b6a83b928))
* channel callback Basic Auth for Railway WEB_PASSWORD ([cb9afb4](https://github.com/HankHuang0516/EClaw/commit/cb9afb43f77c4443499100b30da551b61ade126e))
* cross-platform env vars merge mode — avoid key loss on sync ([354ba3a](https://github.com/HankHuang0516/EClaw/commit/354ba3a927c0b2e44fa2a3815af2e30ac810898c))
* Discord webhook support + rich messages + test coverage report ([e0d0dcc](https://github.com/HankHuang0516/EClaw/commit/e0d0dcc0280da0c2eb9d55bde5719a13d1d06103)), closes [#199](https://github.com/HankHuang0516/EClaw/issues/199) [#200](https://github.com/HankHuang0516/EClaw/issues/200) [#194](https://github.com/HankHuang0516/EClaw/issues/194) [#194](https://github.com/HankHuang0516/EClaw/issues/194) [#195](https://github.com/HankHuang0516/EClaw/issues/195) [#196](https://github.com/HankHuang0516/EClaw/issues/196) [#197](https://github.com/HankHuang0516/EClaw/issues/197) [#198](https://github.com/HankHuang0516/EClaw/issues/198) [#199](https://github.com/HankHuang0516/EClaw/issues/199) [#200](https://github.com/HankHuang0516/EClaw/issues/200)
* dynamic unlimited entities — replace hard-coded 8-slot limit with per-device auto-expanding system ([c24888d](https://github.com/HankHuang0516/EClaw/commit/c24888ded40f663fb44646626ebc12d6971302c3))
* expandable EClaw Channel promo + comprehensive UIUX audit fixes ([6252dd4](https://github.com/HankHuang0516/EClaw/commit/6252dd46317fb9cf501bc3b594834980d9b12410)), closes [#AAA](https://github.com/HankHuang0516/EClaw/issues/AAA) [#777](https://github.com/HankHuang0516/EClaw/issues/777)
* implement 5 enterprise security features ([#174](https://github.com/HankHuang0516/EClaw/issues/174)-[#178](https://github.com/HankHuang0516/EClaw/issues/178)) ([320f204](https://github.com/HankHuang0516/EClaw/commit/320f204772ef24bf89e2f8527879ad488aa6859d)), closes [#176](https://github.com/HankHuang0516/EClaw/issues/176) [#177](https://github.com/HankHuang0516/EClaw/issues/177) [#175](https://github.com/HankHuang0516/EClaw/issues/175) [#175](https://github.com/HankHuang0516/EClaw/issues/175) [#176](https://github.com/HankHuang0516/EClaw/issues/176) [#177](https://github.com/HankHuang0516/EClaw/issues/177)
* implement issues [#187](https://github.com/HankHuang0516/EClaw/issues/187)-[#191](https://github.com/HankHuang0516/EClaw/issues/191) — A2A compat, API docs, OAuth 2.0, SDK, gRPC ([a0b2845](https://github.com/HankHuang0516/EClaw/commit/a0b28451849076863d30813d15732f99fd2ec4ae))
* requiredVars validation + regression tests + remove debug logs ([7222b95](https://github.com/HankHuang0516/EClaw/commit/7222b95107cc7a341346d83d748e2e2a740c5676))
* **portal:** show template count on browse button and gallery title ([13ba042](https://github.com/HankHuang0516/EClaw/commit/13ba0422c56dc2fb894c9c4e110dbf6f245a5b4b))
* skill template gallery — search, count badge, retry-on-empty ([05e5239](https://github.com/HankHuang0516/EClaw/commit/05e5239c4b95746a73123f6b4b2c24ae5427003c))
* **publisher:** support WordPress Application Password auth ([95f111f](https://github.com/HankHuang0516/EClaw/commit/95f111fdfd6abfd2a5e2428e015daeb5fbc86b43))

# [1.10.0](https://github.com/HankHuang0516/EClaw/compare/v1.9.2...v1.10.0) (2026-03-15)


### Features

* add optional X-Publisher-Key auth to publisher API ([e0534a7](https://github.com/HankHuang0516/EClaw/commit/e0534a7436c78a67d0fac0b14cc432f3b0d99953))
* add optional X-Publisher-Key auth to publisher API ([298250f](https://github.com/HankHuang0516/EClaw/commit/298250f0010101e6f31ae637b25211b5a35a09d6))
* add optional X-Publisher-Key auth to publisher API ([af2cd05](https://github.com/HankHuang0516/EClaw/commit/af2cd05d71db59eb75b43c795a0fb5cd8a4843d9))
* add Publisher API key auth middleware ([#215](https://github.com/HankHuang0516/EClaw/issues/215)) ([6bdc30d](https://github.com/HankHuang0516/EClaw/commit/6bdc30d07a94f47e6b6a15d808773fb4470ab157))

## [1.9.2](https://github.com/HankHuang0516/EClaw/compare/v1.9.1...v1.9.2) (2026-03-15)


### Bug Fixes

* **ci:** relax edit mode guard grep to match multi-line Kotlin style ([9e19e1a](https://github.com/HankHuang0516/EClaw/commit/9e19e1ac65317f7783b3787986901b24570661af))

## [1.9.1](https://github.com/HankHuang0516/EClaw/compare/v1.9.0...v1.9.1) (2026-03-15)


### Bug Fixes

* comprehensive UI audit fixes across Web, Android, and iOS ([eb6e8e8](https://github.com/HankHuang0516/EClaw/commit/eb6e8e8c90ce0cf4e3ba4b9af0763805dae7af61)), closes [#FF6B6B](https://github.com/HankHuang0516/EClaw/issues/FF6B6B) [#FFB6C1](https://github.com/HankHuang0516/EClaw/issues/FFB6C1)

# [1.9.0](https://github.com/HankHuang0516/EClaw/compare/v1.8.2...v1.9.0) (2026-03-15)


### Bug Fixes

* **publisher:** Tumblr delete uses POST not DELETE method ([ab23e27](https://github.com/HankHuang0516/EClaw/commit/ab23e273f2cee405b10127eb741662216f813c12))
* **publisher:** Tumblr delete uses POST not DELETE method ([9452991](https://github.com/HankHuang0516/EClaw/commit/945299111efd2f1a529156b10bf0bff25a010a74))


### Features

* **publisher:** add WordPress token expiry warning in API responses ([2c3c513](https://github.com/HankHuang0516/EClaw/commit/2c3c51368ef9ec2e972db373b26353f87f911fb5))
* **publisher:** add WordPress.com OAuth flow with DB-backed token storage ([3a4dda8](https://github.com/HankHuang0516/EClaw/commit/3a4dda82898ab26d36cf2e1bf846ada081f7acc0))
* **publisher:** support WordPress Application Password auth ([95f111f](https://github.com/HankHuang0516/EClaw/commit/95f111fdfd6abfd2a5e2428e015daeb5fbc86b43))

## [1.8.2](https://github.com/HankHuang0516/EClaw/compare/v1.8.1...v1.8.2) (2026-03-15)


### Bug Fixes

* **android:** remove yellow diagnostic background after confirming black screen was emulator data corruption ([9c25fe4](https://github.com/HankHuang0516/EClaw/commit/9c25fe46f5edfa4bff73dd07326176b678dc062d))

## [1.8.1](https://github.com/HankHuang0516/EClaw/compare/v1.8.0...v1.8.1) (2026-03-15)


### Bug Fixes

* **publisher:** Tumblr delete uses POST not DELETE method ([#213](https://github.com/HankHuang0516/EClaw/issues/213)) ([db2084b](https://github.com/HankHuang0516/EClaw/commit/db2084b44dc51b069d7bf3c3c47c5c3bd704206f))

# [1.8.0](https://github.com/HankHuang0516/EClaw/compare/v1.7.2...v1.8.0) (2026-03-15)


### Features

* **publisher:** add Telegraph, Qiita, Tumblr, Mastodon + other new platforms ([33b9c4e](https://github.com/HankHuang0516/EClaw/commit/33b9c4e54fe5ee1897b3a10541211a9f3d6e05e2))

## [1.7.2](https://github.com/HankHuang0516/EClaw/compare/v1.7.1...v1.7.2) (2026-03-15)


### Bug Fixes

* **android:** force Dark theme to fix black screen on light-mode devices ([47ed30b](https://github.com/HankHuang0516/EClaw/commit/47ed30b5c19f62ea0a7bea5c2fb035ac9011f7c2)), closes [#0D0D1A](https://github.com/HankHuang0516/EClaw/issues/0D0D1A)

## [1.7.1](https://github.com/HankHuang0516/EClaw/compare/v1.7.0...v1.7.1) (2026-03-15)


### Bug Fixes

* **android:** improve Public Code badge contrast and add functional label ([f725bc6](https://github.com/HankHuang0516/EClaw/commit/f725bc6c7e19521bdf4f9559805d197ba2cf6968)), closes [#4FC3F7](https://github.com/HankHuang0516/EClaw/issues/4FC3F7) [#4CAF50](https://github.com/HankHuang0516/EClaw/issues/4CAF50)

# [1.7.0](https://github.com/HankHuang0516/EClaw/compare/v1.6.2...v1.7.0) (2026-03-15)


### Features

* align Skill/Soul/Rule template gallery across Web, Android, and iOS ([4809358](https://github.com/HankHuang0516/EClaw/commit/4809358d58b6400f7b12b3fc0102ec8d73c289f4))

## [1.6.2](https://github.com/HankHuang0516/EClaw/compare/v1.6.1...v1.6.2) (2026-03-15)


### Bug Fixes

* update regression tests for dynamic entity system ([a671070](https://github.com/HankHuang0516/EClaw/commit/a67107012dfb30588d42df2c2f0748e77048414e))

## [1.6.1](https://github.com/HankHuang0516/EClaw/compare/v1.6.0...v1.6.1) (2026-03-15)


### Bug Fixes

* remove ensureEntitySlots and maxEntities references for dynamic entity system ([4aaa3bf](https://github.com/HankHuang0516/EClaw/commit/4aaa3bf89349e991692e4c831d41648506036604))

# [1.6.0](https://github.com/HankHuang0516/EClaw/compare/v1.5.1...v1.6.0) (2026-03-15)


### Features

* dynamic unlimited entities — replace hard-coded 8-slot limit with per-device auto-expanding system ([c24888d](https://github.com/HankHuang0516/EClaw/commit/c24888ded40f663fb44646626ebc12d6971302c3))

## [1.5.1](https://github.com/HankHuang0516/EClaw/compare/v1.5.0...v1.5.1) (2026-03-15)


### Bug Fixes

* **android:** entity card buttons overflow — apply M3 card action pattern ([f6b4b68](https://github.com/HankHuang0516/EClaw/commit/f6b4b681d77c9dc814e7a19e01a305b90e3b3fcf))

# [1.5.0](https://github.com/HankHuang0516/EClaw/compare/v1.4.0...v1.5.0) (2026-03-14)


### Features

* add Agent Card button to Home page entity cards ([71d5937](https://github.com/HankHuang0516/EClaw/commit/71d59374322cca2802da2a77f349f5251735c0af))

# [1.4.0](https://github.com/HankHuang0516/EClaw/compare/v1.3.0...v1.4.0) (2026-03-14)


### Bug Fixes

* add flex-wrap to dashboard entity action buttons to prevent truncation ([6f0fa21](https://github.com/HankHuang0516/EClaw/commit/6f0fa210fae2e43878ed7c560ad2467644a189d4))


### Features

* allow bots to manage their own Agent Card via botSecret ([7f95b2c](https://github.com/HankHuang0516/EClaw/commit/7f95b2cbe3195fc222526b434d3f11820aec0026))

# [1.3.0](https://github.com/HankHuang0516/EClaw/compare/v1.2.2...v1.3.0) (2026-03-14)


### Features

* add requiredVars format validation in contribute endpoint + regression tests ([328a56d](https://github.com/HankHuang0516/EClaw/commit/328a56d11964c7fd0c59d2da183ac3d31d549b2a))
* requiredVars validation + regression tests + remove debug logs ([7222b95](https://github.com/HankHuang0516/EClaw/commit/7222b95107cc7a341346d83d748e2e2a740c5676))

## [1.2.2](https://github.com/HankHuang0516/EClaw/compare/v1.2.1...v1.2.2) (2026-03-14)


### Bug Fixes

* normalize requiredVars to prevent Gson deserialization crash on Android ([30f9924](https://github.com/HankHuang0516/EClaw/commit/30f99248c95c3c664350e574670aa5f671e42369))

## [1.2.1](https://github.com/HankHuang0516/EClaw/compare/v1.2.0...v1.2.1) (2026-03-14)


### Bug Fixes

* allow 127.0.0.1 through HTTPS redirect for Jest/supertest tests ([a38f804](https://github.com/HankHuang0516/EClaw/commit/a38f804923d28f11566f90563224783b626021fa))

# [1.2.0](https://github.com/HankHuang0516/EClaw/compare/v1.1.0...v1.2.0) (2026-03-14)


### Features

* add A2A Agent Card UI across all three platforms ([7812aad](https://github.com/HankHuang0516/EClaw/commit/7812aad89920962efce27fa8d7a1701dbf948dac))
* Discord webhook support + rich messages + test coverage report ([e0d0dcc](https://github.com/HankHuang0516/EClaw/commit/e0d0dcc0280da0c2eb9d55bde5719a13d1d06103)), closes [#199](https://github.com/HankHuang0516/EClaw/issues/199) [#200](https://github.com/HankHuang0516/EClaw/issues/200) [#194](https://github.com/HankHuang0516/EClaw/issues/194) [#194](https://github.com/HankHuang0516/EClaw/issues/194) [#195](https://github.com/HankHuang0516/EClaw/issues/195) [#196](https://github.com/HankHuang0516/EClaw/issues/196) [#197](https://github.com/HankHuang0516/EClaw/issues/197) [#198](https://github.com/HankHuang0516/EClaw/issues/198) [#199](https://github.com/HankHuang0516/EClaw/issues/199) [#200](https://github.com/HankHuang0516/EClaw/issues/200)

# [1.1.0](https://github.com/HankHuang0516/EClaw/compare/v1.0.0...v1.1.0) (2026-03-14)


### Features

* expandable EClaw Channel promo + comprehensive UIUX audit fixes ([6252dd4](https://github.com/HankHuang0516/EClaw/commit/6252dd46317fb9cf501bc3b594834980d9b12410)), closes [#AAA](https://github.com/HankHuang0516/EClaw/issues/AAA) [#777](https://github.com/HankHuang0516/EClaw/issues/777)

# 1.0.0 (2026-03-14)


* Refactor to matrix architecture: each device has own entity slots (v5) ([a7fb7e2](https://github.com/HankHuang0516/EClaw/commit/a7fb7e2f8a25ee4f90abe14c165d48415722aa10))


### Bug Fixes

* [#168](https://github.com/HankHuang0516/EClaw/issues/168) chat bubble text selection & [#167](https://github.com/HankHuang0516/EClaw/issues/167) entity public code display ([c89dccc](https://github.com/HankHuang0516/EClaw/commit/c89dcccdd3f00b96d18aab3d3a0d659569769e54))
* add --dangerouslySkipPermissions to CLI chat spawn ([5d9ec98](https://github.com/HankHuang0516/EClaw/commit/5d9ec981dd079e06990e0345dd0e2ab41a9b63c0))
* add --verbose flag for stream-json output format ([86da713](https://github.com/HankHuang0516/EClaw/commit/86da713fe6fdf91671c9f7ef9b75e8d3f16b9fb2))
* add [#48](https://github.com/HankHuang0516/EClaw/issues/48) entity visibility diagnosis logging + auto-sync fix ([f146893](https://github.com/HankHuang0516/EClaw/commit/f146893d976a4683a847857b0b0f17c6f0d298b0))
* **lint:** add AbortController, TextDecoder, TextEncoder to ESLint globals ([db1f80f](https://github.com/HankHuang0516/EClaw/commit/db1f80fd6e2ce25efc1e443c8f73d394ca15b24d))
* add all essential backend files for Railway deployment ([32c94a4](https://github.com/HankHuang0516/EClaw/commit/32c94a4f87724b667d0d58b1b15b38c92389eba7))
* **plugin:** add auto-reconnect with exponential backoff to openclaw-channel-eclaw v1.1.0 ([0ae83a0](https://github.com/HankHuang0516/EClaw/commit/0ae83a00da24ce72afd63d59f9be828ca2df32a8))
* add auto-refresh across all pages and fix priority enum mapping ([ddae755](https://github.com/HankHuang0516/EClaw/commit/ddae75574b5f131e62ea6cfec0b9ae17cd5a2ca9))
* add bot-to-bot rate limiter to prevent infinite message loops ([28b6a48](https://github.com/HankHuang0516/EClaw/commit/28b6a481eb488e5ef1048e106e4c09dbf80f81e2))
* add Cache-Control no-cache for i18n.js to prevent stale translations ([b8beac0](https://github.com/HankHuang0516/EClaw/commit/b8beac0d39dc91779888a88cc7714b1741810dad))
* **screenshot:** add canTakeScreenshot flag + shorten backend timeout ([3d9dc21](https://github.com/HankHuang0516/EClaw/commit/3d9dc2105152db23476a93c8625b34de04bac8d7))
* **channel:** add channel bot parity for schedule and entity reorder ([10b9535](https://github.com/HankHuang0516/EClaw/commit/10b9535877e395133c8b71f26c7f6dd8ce2fa675))
* **ci:** add concurrency control to semantic-release workflow ([b5e4ed3](https://github.com/HankHuang0516/EClaw/commit/b5e4ed31e96fe0e505eed67b6fbb17a4e9e797cf))
* add cross-source dedup in syncFromBackend() to prevent chat echo ([4bac4c7](https://github.com/HankHuang0516/EClaw/commit/4bac4c729a02aedfe2c5cec8f97e98114e071644))
* add debug logging to AI support proxy communication ([f00394c](https://github.com/HankHuang0516/EClaw/commit/f00394cd2feb09c64715532365260fbed79a07a6))
* add delete buttons to todo/mission/done items ([9bcb797](https://github.com/HankHuang0516/EClaw/commit/9bcb797c9edd131e2e453bc9334f50dabe6db9d8))
* add dialog input CSS to env-vars.html for consistent styling ([d99e394](https://github.com/HankHuang0516/EClaw/commit/d99e394eae7c02607ebcf16ce32e8b4662065491))
* add direct entity polling in ChatActivity for bot responses ([d07d966](https://github.com/HankHuang0516/EClaw/commit/d07d96665c4ce0a8ed26eba3e04db420fbed096e))
* **debug:** add entityId bounds check in set-entity-xp ([051a1c6](https://github.com/HankHuang0516/EClaw/commit/051a1c6ef1c01ec9bacd2acbfafdce24b3f17c2f))
* **screenshot:** add error propagation and logging in takeAndPostScreenshot ([c38e46e](https://github.com/HankHuang0516/EClaw/commit/c38e46e1ef89985052b6f50704b593058f15a1e5))
* add fallback parsing when stream-json produces no NDJSON events ([fef8b8b](https://github.com/HankHuang0516/EClaw/commit/fef8b8bbc61aba4aea9e4e73b8f39582219e3c76))
* add fill color to card emoji icons (lobster + airplane) ([600057a](https://github.com/HankHuang0516/EClaw/commit/600057ae05c35c83f005db6244b8529a3fefdacd)), closes [#6C63FF](https://github.com/HankHuang0516/EClaw/issues/6C63FF) [#0088CC](https://github.com/HankHuang0516/EClaw/issues/0088CC)
* add git to proxy container + remove invalid CLI flag ([b260696](https://github.com/HankHuang0516/EClaw/commit/b2606968f2b25eb7a0365932a89fdd13a2d53f76))
* add git via both nixPkgs and aptPkgs for Nixpacks compatibility ([770f30c](https://github.com/HankHuang0516/EClaw/commit/770f30cf404be8769db4cf609ae126081357d426))
* **skill-contribute:** add GITHUB_TOKEN support to bypass API rate limit ([51dcea3](https://github.com/HankHuang0516/EClaw/commit/51dcea3a561d3a083cdf9436b9c61f688d3573fa))
* add i18n support to entire User Guide section in info.html ([1f2131a](https://github.com/HankHuang0516/EClaw/commit/1f2131a90b29255075839723536dc0cc823f9d0c))
* add instalment:0 for TapPay INS merchant (code 72 fix) ([64cdd87](https://github.com/HankHuang0516/EClaw/commit/64cdd8762fcc39eb77b7d753858118f5f6845b85))
* add JUnit and Gson test dependencies for Kotlin unit tests ([44154d2](https://github.com/HankHuang0516/EClaw/commit/44154d2b59e5de0868d83a2535dee0c40d756d60))
* add missing ai_chat_view_feedback string resource ([4d2ac91](https://github.com/HankHuang0516/EClaw/commit/4d2ac912112151a810d5d474010f63c216bbb478))
* add missing chat-integrity.js (fixes deployment crash) ([fc4bcc0](https://github.com/HankHuang0516/EClaw/commit/fc4bcc02bd52b44670609bd87b4dc80037e539da))
* **claude-cli-proxy:** add missing import sys ([22cf38f](https://github.com/HankHuang0516/EClaw/commit/22cf38f18dc1ed191d816aa4cfb7db64ccfbc789))
* **tests:** add missing mock methods to Jest test files ([4e9a479](https://github.com/HankHuang0516/EClaw/commit/4e9a479551361abbcb18f986563d97ba93750dcd))
* add missing saveFeedback function to db.js ([fc9ac25](https://github.com/HankHuang0516/EClaw/commit/fc9ac254625a84008280726dbfde99c7ba1c0273))
* add missing skills column migration + clean up mission page UI ([984b8d6](https://github.com/HankHuang0516/EClaw/commit/984b8d66e153928008f96210d6ac457e4f5020c3))
* add missing SQL schema files for Railway deployment ([52602f5](https://github.com/HankHuang0516/EClaw/commit/52602f548696ba190528e9bf5fc2d8c10805649f))
* **android:** add name/description/ruleType to SkillTemplate and fix gallery dialogs ([e0a79b7](https://github.com/HankHuang0516/EClaw/commit/e0a79b76503d36e21e7dc28246e940b27791492b))
* **ssl:** add network_security_config to trust user CAs in debug builds ([7f7cfce](https://github.com/HankHuang0516/EClaw/commit/7f7cfce209a59a214a4a973c37cb21d24d330ad3))
* add OpenClaw 2.14 sessions_send fix instructions to error messages ([a744e63](https://github.com/HankHuang0516/EClaw/commit/a744e63c92db282cce0737a6bf2fa3647e3d7c38))
* add pairing_required solution hint to error messages ([07b1e31](https://github.com/HankHuang0516/EClaw/commit/07b1e3177f3854e9d38f3233d2bfe27868a68a2b))
* **api:** add PATCH to apiCall body serialization ([c317b33](https://github.com/HankHuang0516/EClaw/commit/c317b33f6bbc41b8879280a2fbabff2f452a0238))
* add PR write permission and make Railway deploy non-blocking ([929cf7d](https://github.com/HankHuang0516/EClaw/commit/929cf7d46270ebed75ca31721c93522e22d2d1c2))
* add prominent accessibility disclosure dialog for Google Play compliance (v1.0.37) ([253b96f](https://github.com/HankHuang0516/EClaw/commit/253b96f09f3620b24d5a3e333c16178f977c86a6))
* add required cardholder.name for TapPay pay-by-prime ([d96ed4e](https://github.com/HankHuang0516/EClaw/commit/d96ed4ebc49066fbb9e75627877f53d1f4bd1083))
* **ci:** add setImmediate and clearImmediate to ESLint globals ([8e408f4](https://github.com/HankHuang0516/EClaw/commit/8e408f4decc2ede1d03e87bf27c9d4522644fa97))
* add social login buttons and Google SDK to web portal login/register ([51e2f7e](https://github.com/HankHuang0516/EClaw/commit/51e2f7eb992bd04e7cfd8c745850a741ab5e5a93))
* **api:** add try/catch and docs to soul/rule-templates data loading ([ccd7070](https://github.com/HankHuang0516/EClaw/commit/ccd707008d8f2bfb34456ae58c5ff408ff892ce4))
* add URLSearchParams to ESLint globals ([d09447f](https://github.com/HankHuang0516/EClaw/commit/d09447f08aed81855b50d77a596985441db0c289))
* address code review issues before merge ([e039533](https://github.com/HankHuang0516/EClaw/commit/e039533f973d3bdbfcf2576ecfbbb2018f411412))
* admin bots API auto-cleans stale assigned bots ([e43094f](https://github.com/HankHuang0516/EClaw/commit/e43094f8037add43ab8721e296f1955cb14b86ff))
* admin link not showing on info page ([d538a46](https://github.com/HankHuang0516/EClaw/commit/d538a465ecf88412b502f3ab4aed70948a5dc5e6))
* AI chat proactively creates GitHub issues for user feedback ([cf0bacb](https://github.com/HankHuang0516/EClaw/commit/cf0bacb5cc677c2c739e605dc8d12a1471eae3e2))
* AI chat stuck on "thinking" — t() not defined, use i18n.t() ([692be25](https://github.com/HankHuang0516/EClaw/commit/692be25306a6189c93272286d61f660989e5b98f))
* **settings:** align copy icons to far right edge ([a735ce9](https://github.com/HankHuang0516/EClaw/commit/a735ce95aabdee2f501a5589c0da2e2cb99a84c5))
* allow debug/test devices to use all 8 entity slots ([#66](https://github.com/HankHuang0516/EClaw/issues/66)) ([94be3c5](https://github.com/HankHuang0516/EClaw/commit/94be3c57261801a2f658f8bb037ecce024b57dcb))
* **scheduler:** allow entityId up to device limit (not hardcoded 0-3) ([160a061](https://github.com/HankHuang0516/EClaw/commit/160a061de9a7f947a4d09680101f878b4a068bf9))
* allow key name editing in Env Variables dialog ([78846a4](https://github.com/HankHuang0516/EClaw/commit/78846a42a2e9b9b4f3bf27abb4020701003e94a7))
* also suppress speak-to echo in processEntityMessage() ([be670de](https://github.com/HankHuang0516/EClaw/commit/be670de454cece91590b5ee15e601024b26136cd))
* **screen-control:** always include truncated field in screen-capture response ([aecdc87](https://github.com/HankHuang0516/EClaw/commit/aecdc87536cad9ed49f99b8189eff627579ab17c))
* **scheduler:** append missionHints to channel scheduled message text ([f1244d6](https://github.com/HankHuang0516/EClaw/commit/f1244d66c2226c04798952e41898be8a7ad8d00a))
* **portal:** apply i18n after nav/footer render in info.html ([b5c626c](https://github.com/HankHuang0516/EClaw/commit/b5c626c6ea7b3f9ccd2688323cea1471e2911d39))
* auth redirect loop caused by /api/notifications/count returning 401 ([41832f5](https://github.com/HankHuang0516/EClaw/commit/41832f58a52266dfe4266e99221c264b7a098237))
* auto-create device on API calls to survive server redeploy ([cf48cdc](https://github.com/HankHuang0516/EClaw/commit/cf48cdcd10cc1c46abad2d5abac651da22bc399c))
* auto-create gateway session for official borrow bots ([b02f9a0](https://github.com/HankHuang0516/EClaw/commit/b02f9a0a2fffd0ed707b5a4f1979618583d0f0d8))
* **api:** auto-detect entityId from botSecret in contribute endpoints ([9b3e8d1](https://github.com/HankHuang0516/EClaw/commit/9b3e8d12a8084f7a4fe88363291393e6159bb47b))
* auto-restore .claude.json from backup on proxy startup ([31d2275](https://github.com/HankHuang0516/EClaw/commit/31d2275aaf312f2baf8ee2a404c49e562f40f352))
* auto-strip Bearer prefix from webhook token ([f4be13e](https://github.com/HankHuang0516/EClaw/commit/f4be13ec5cc2149546b4ffd976c6928dfce6c452))
* auto-sync feedback status with GitHub issue state ([6f1574b](https://github.com/HankHuang0516/EClaw/commit/6f1574b33d9db1f3e9552310911c4dfcdd6738b0))
* auto-sync feedback status with GitHub issue state ([9b21e26](https://github.com/HankHuang0516/EClaw/commit/9b21e26c4bcfec822d9f28025e9d74e0cf09a2a8))
* auto-sync server-bound entities to local registry ([571a9ba](https://github.com/HankHuang0516/EClaw/commit/571a9bab356379a9f429ae6bd2a008050e79cc06))
* avoid gh auth login conflict when GH_TOKEN env var is set ([d94a669](https://github.com/HankHuang0516/EClaw/commit/d94a6695f9293f083376caea97d8356bdbbccd20))
* **bind:** await single-device save after binding to prevent race condition ([811b3e9](https://github.com/HankHuang0516/EClaw/commit/811b3e9b250f7dee518e1f7f7cdf65c1a8dd94d8))
* bind to 0.0.0.0 for Railway container healthcheck ([7c86e37](https://github.com/HankHuang0516/EClaw/commit/7c86e375f14338243b35287b88dfd9f370389f17))
* bot-to-bot chat shows sender's bubble with 發送至 footer ([3bfbd70](https://github.com/HankHuang0516/EClaw/commit/3bfbd70bec007cd5e6f194cd508f76b91e1b6e48))
* botSecret auth, read timeout, Room version, and handshake message ([0dee1c4](https://github.com/HankHuang0516/EClaw/commit/0dee1c4646bfaa7ce7e2994e6038e8d9ed45d14e))
* bottom nav position consistency and edge padding ([1a41199](https://github.com/HankHuang0516/EClaw/commit/1a41199e9a3a9bfdb6f2c6001443f9f5408249e6))
* broadcast delivered_to overwrite bug + add broadcast regression test ([d5a82ab](https://github.com/HankHuang0516/EClaw/commit/d5a82ab3b1ac45bf9dc45d54d060b701a2c1da29))
* broadcast test uses polling for delivered_to instead of fixed 15s wait ([8000dab](https://github.com/HankHuang0516/EClaw/commit/8000dab8058d2c960293bcc05fe94df7140e0ed8))
* bump versionCode to 37 (36 already used on Play Console) ([ef63b01](https://github.com/HankHuang0516/EClaw/commit/ef63b01cbe61175cc71188a0eb33875770b41f83))
* canonical domain redirect to prevent cookie/auth loop ([0c5ff85](https://github.com/HankHuang0516/EClaw/commit/0c5ff85332041930ab74058d104829a79a278ddf))
* catch __...__  wrapped placeholder tokens (e.g. __OPENCLAW_REDACTED__) ([d3289f5](https://github.com/HankHuang0516/EClaw/commit/d3289f5678aa4c4e13c207cecf39bfcea2b958c8))
* change message_reactions.message_id from INTEGER to UUID ([4790c2f](https://github.com/HankHuang0516/EClaw/commit/4790c2f78638ce2384f07d74e44d8a7d499e96ba))
* channel test checks entities wrapper object correctly ([dc9e12d](https://github.com/HankHuang0516/EClaw/commit/dc9e12d725b966224febee243496c894bf76bb65))
* chat filter shows broadcast/speak-to messages for recipient entities ([360cb4a](https://github.com/HankHuang0516/EClaw/commit/360cb4a055c9ef7b6201654d7d48c2ae98856122))
* chat history returns latest 500 msgs + skill doc English & improvements ([1022bca](https://github.com/HankHuang0516/EClaw/commit/1022bcab335549c5fa10d068bc46993120070b1b))
* chat message duplication when entity visible on wallpaper ([ccd8458](https://github.com/HankHuang0516/EClaw/commit/ccd845897fd7c64a2641444abcab34e2ac645362))
* chat message query shows newest 500 msgs + reject invalid webhook params ([af941cd](https://github.com/HankHuang0516/EClaw/commit/af941cda9dfbb2414f5d3ab3ec0b4d7137b59164))
* chat page bugs - remove Received echo and self read receipts ([99d7645](https://github.com/HankHuang0516/EClaw/commit/99d764586819c38ae37ea38f6a8fb51a23117dd5))
* Chat polls backend chat history directly, independent of wallpaper ([2a8c11f](https://github.com/HankHuang0516/EClaw/commit/2a8c11f3ffa4df773d5f30d643e02a8216f6e2a3))
* chat UI input section no longer covers messages ([b087c92](https://github.com/HankHuang0516/EClaw/commit/b087c9228bba8f85eafc1f765b617005475c4d7f))
* clarify bot-to-bot push instructions (transform vs speak-to) ([214f001](https://github.com/HankHuang0516/EClaw/commit/214f001f7acd519a44689627c0cec01b8388fc95))
* **android:** close issues [#157](https://github.com/HankHuang0516/EClaw/issues/157) [#159](https://github.com/HankHuang0516/EClaw/issues/159) [#160](https://github.com/HankHuang0516/EClaw/issues/160) ([94a6b92](https://github.com/HankHuang0516/EClaw/commit/94a6b92e26968d54de4b065f4ef79ecdb33a846b))
* code review corrections — credential UI and guide accuracy ([5992dc5](https://github.com/HankHuang0516/EClaw/commit/5992dc5ca0cf35adee17253f5742ed3619ec836e)), closes [#newSecretValue](https://github.com/HankHuang0516/EClaw/issues/newSecretValue)
* convert ChatActivity to full-screen dark style with bottom nav ([fc1d33d](https://github.com/HankHuang0516/EClaw/commit/fc1d33dd6b598691d91cadc7d3f235ca963523c5)), closes [#0D0D1A](https://github.com/HankHuang0516/EClaw/issues/0D0D1A) [#1A1A2E](https://github.com/HankHuang0516/EClaw/issues/1A1A2E)
* correct Multi-Entity max to 8 and Setup description (independent platforms) ([8499441](https://github.com/HankHuang0516/EClaw/commit/84994413319e800af7612d84f222a375c19bf360))
* correct TapPay sandbox app_key (was corrupted) ([9f730e6](https://github.com/HankHuang0516/EClaw/commit/9f730e6ca79f38da3f37cf051bd86b5dc16997ba))
* correct UI test assertions and add settings features ([777d2a9](https://github.com/HankHuang0516/EClaw/commit/777d2a9d3151b097fd59ca905f4b8981d1021170))
* crash on device.entities iteration + add crash logging to /api/logs ([9c19ec5](https://github.com/HankHuang0516/EClaw/commit/9c19ec5edd0ce73416b9267c28d91995ae9bbc5a))
* create Railway preview environment before deploy ([2a1974a](https://github.com/HankHuang0516/EClaw/commit/2a1974a67042dd9e3c2e53226690ddc0d38b2685))
* cron schedule update no longer violates NOT NULL on scheduled_at ([15e46af](https://github.com/HankHuang0516/EClaw/commit/15e46af150476bc0f2a6e0213ae5960c8e078fa1))
* cross-device chat label shows local entity instead of remote target ([ead47bd](https://github.com/HankHuang0516/EClaw/commit/ead47bd3d093808448877658e698840b93f81494))
* dark theme for notification/language cards and fix API field name mismatch ([31473cf](https://github.com/HankHuang0516/EClaw/commit/31473cf3af3909e085722eb7e35ef7c02002403a)), closes [#1A1A1A](https://github.com/HankHuang0516/EClaw/issues/1A1A1A) [#333333](https://github.com/HankHuang0516/EClaw/issues/333333)
* dashboard countdown shows {m}:{ss} literally + reset UI after entity bind ([846bb1a](https://github.com/HankHuang0516/EClaw/commit/846bb1aec5e304d2daba9485ccd55f3aff29e9bc))
* decouple Bash tool from repo clone status ([92640ad](https://github.com/HankHuang0516/EClaw/commit/92640ad6161df202f9dc5b9aeaac8b0ceb9334c5))
* deduplicate broadcast header entities + user message dedup ([4202e8d](https://github.com/HankHuang0516/EClaw/commit/4202e8dad9f15270999eb5face0057d3e6811db5))
* enable EYE_LID/EYE_ANGLE rendering and fix test scripts ([4f9f4dc](https://github.com/HankHuang0516/EClaw/commit/4f9f4dcfa607df802104d828d82e5029b543a804))
* entity count fetches from API with premium-aware max ([ea42c62](https://github.com/HankHuang0516/EClaw/commit/ea42c62320f336106507c1ea65ee090fa6c88542))
* entity reorder now syncs all associated data atomically ([3683914](https://github.com/HankHuang0516/EClaw/commit/368391460d3269a056dfe382b560c71140626194))
* **android:** exclude current message from history to fix AI image processing ([502a909](https://github.com/HankHuang0516/EClaw/commit/502a9096d9b90613f8279d4b6c1a7b0447dee155)), closes [#143](https://github.com/HankHuang0516/EClaw/issues/143)
* extend idle timeout from 20s to 5min to not overwrite bot replies ([a769bca](https://github.com/HankHuang0516/EClaw/commit/a769bca4e0d8d67763ae0930accce35dc305821c))
* fail-safe usage limit with in-memory fallback ([4f1d0d4](https://github.com/HankHuang0516/EClaw/commit/4f1d0d4a0227cbc4cfcc608c6b8f2e6b18e352ae))
* filter Android user messages from ChatIntegrity validation ([aabc61e](https://github.com/HankHuang0516/EClaw/commit/aabc61e88ac48e13244e76bd1678d5f3e0502742)), closes [#82](https://github.com/HankHuang0516/EClaw/issues/82) [#83](https://github.com/HankHuang0516/EClaw/issues/83)
* filter chat target chips to only show bound entities ([7041744](https://github.com/HankHuang0516/EClaw/commit/704174482066424f6610730c406d2cced30f42a8))
* **ios-app:** fix i18n compliance and asset config ([e952ec3](https://github.com/HankHuang0516/EClaw/commit/e952ec3a0dc569565fff21fd1e3974a507822e19))
* **portal:** fix inconsistent white button styles in Channel API section ([22d2db3](https://github.com/HankHuang0516/EClaw/commit/22d2db357cbdc464a2643d5196ff043c920282d6))
* **test:** fix reorder-channel test order array size to match device limit ([3103918](https://github.com/HankHuang0516/EClaw/commit/31039180cf26e0e5f2db3292bd153be856c541f6))
* **portal:** fix screen-control Loading bug + update info.html with new features ([863343e](https://github.com/HankHuang0516/EClaw/commit/863343e958dc875011f9542ef3a3a54e968db574))
* **portal:** fix XSS, broken tags, and filter consistency in soul/rule gallery ([0dd30ec](https://github.com/HankHuang0516/EClaw/commit/0dd30ec0c8a358594d4c603ed5c92e7b86871226))
* Flickr 429 rate limit - use getInfo + static URL + retry + async album ([421316c](https://github.com/HankHuang0516/EClaw/commit/421316c0ff640a760df36bee30c5032f287466d5))
* flickr-sdk v6 API (createFlickr) + add media docs to bot skill ([1907b65](https://github.com/HankHuang0516/EClaw/commit/1907b656410b0a07aaf3fb67efbf99eac8bcab6a))
* force Nixpacks Node.js provider to prevent nginx static site ([613caf6](https://github.com/HankHuang0516/EClaw/commit/613caf6f6f51eaef331882ec25d475df54a29024))
* Gatekeeper false positive — negative context now bypasses credential detection ([a2beb7a](https://github.com/HankHuang0516/EClaw/commit/a2beb7af1120c2a027ed5548b1d7c813f691dda2))
* **ui:** guard coerceIn against empty range in AiChatFabHelper ([20f8e47](https://github.com/HankHuang0516/EClaw/commit/20f8e470e0d8802c863b41d700de01f0a42bf6c0))
* handle duplicate public_code gracefully during device save ([ba853d3](https://github.com/HankHuang0516/EClaw/commit/ba853d30b010e78f443c938b771f4ac4d2be633c))
* handle null JSONB fields in device transfer migration ([571ed60](https://github.com/HankHuang0516/EClaw/commit/571ed60fbc0340322460caed01f95e179bdbf49d))
* **ai-support:** handle object-shaped device.entities in fetchDeviceContext ([10b8fcd](https://github.com/HankHuang0516/EClaw/commit/10b8fcdd9a15be57f929a5c16380321e706d8b31))
* handshake now rejects pairing_required in response body ([17d7730](https://github.com/HankHuang0516/EClaw/commit/17d77302bed885a1d86586c10bb640926f028e5a))
* handshake uses dry-run invoke instead of unreliable /tools/list ([8ba5346](https://github.com/HankHuang0516/EClaw/commit/8ba534655191bfffc1af30975ec50a246bda99b4))
* hashnode tags need both name and slug fields ([b6da5e5](https://github.com/HankHuang0516/EClaw/commit/b6da5e5c0e286c3a0c5fa456751c9929462f7ab2))
* **admin:** i18n By/Date column headers in contribution tables ([c1caaf6](https://github.com/HankHuang0516/EClaw/commit/c1caaf67d893266fca7831cf2c32a231230db4e2))
* i18n interpolation for unlimited usage display ([4a296cb](https://github.com/HankHuang0516/EClaw/commit/4a296cbcf9cfedf3c4f97bcfbd4ad3ed2abdc8d9))
* **screen-control:** ime_action fallback when no INPUT focus (ACTION_SET_TEXT case) ([03c2179](https://github.com/HankHuang0516/EClaw/commit/03c2179da70e6067afc10b27488c0b508d1d61d7))
* **ai-support:** improve 401 and setup_password rules ([c68e972](https://github.com/HankHuang0516/EClaw/commit/c68e972df64ce9603d9198ec4387de9588f3ee90))
* improve entity chip UI - remove close icons, add avatars, dark theme colors ([d710331](https://github.com/HankHuang0516/EClaw/commit/d71033110db0c14643eb19a83717324e6915889a))
* improve local/private IP webhook rejection with OpenClaw Overview guidance ([f89aef5](https://github.com/HankHuang0516/EClaw/commit/f89aef56ec78860e70ea6ba90dde6aa65c2fcf25))
* improve mission dialog UX - checkbox layout, field labels, delete buttons ([ce833fd](https://github.com/HankHuang0516/EClaw/commit/ce833fd2ee2c65d89b6f7d8fc7f6532e3ec3352c))
* improve schedule history display, matching accuracy, and pagination ([e70df42](https://github.com/HankHuang0516/EClaw/commit/e70df426e1f9de4daf789cff83c40f96ebaa8d9e))
* include botSecret in push messages for official bot entities ([c0c6a52](https://github.com/HankHuang0516/EClaw/commit/c0c6a52b876bd4fa3a4f03cf7500f8f78389e1e7))
* **screenshot:** increase body limit to 5mb for screenshot-result endpoint ([661d076](https://github.com/HankHuang0516/EClaw/commit/661d076f35208c1759162f55d369812dca0fb302))
* increase MAX_ENTITIES_PER_DEVICE to 8 for debug entity support ([7c638f2](https://github.com/HankHuang0516/EClaw/commit/7c638f2ecc809f478fddd4800201ccdaf4e6c47a))
* increase max-turns to 15 and add intermediate feedback for AI chat ([3bbd3aa](https://github.com/HankHuang0516/EClaw/commit/3bbd3aade18241a73c33bb527a662f86e7ae65f2))
* install Claude CLI as dependency in proxy container ([90409a3](https://github.com/HankHuang0516/EClaw/commit/90409a3f7d3cbe40e540bfbf6e08e9c427e48663))
* instruct AI to execute tools directly in non-interactive mode ([18d19f1](https://github.com/HankHuang0516/EClaw/commit/18d19f13fb3346a010715310ff6d1cb4715f5c4b))
* instruct bots to update mood/emoji only, not narrate messages ([1354657](https://github.com/HankHuang0516/EClaw/commit/135465713fd607d1d6a11b0e6d3ed73826bdaa82))
* IP detection runs every 10 min, preserves all history from DB ([414e2a2](https://github.com/HankHuang0516/EClaw/commit/414e2a2709acdff71f26163e6b47a63c1fcbe9d1))
* keyboard covers chat input and auto-scroll to latest message ([4ce4f31](https://github.com/HankHuang0516/EClaw/commit/4ce4f31d5642ad3aff6f06d43233b70736d04c68))
* keyboard covers chat input on Pixel 9a (Android 15 edge-to-edge) ([49c4ea4](https://github.com/HankHuang0516/EClaw/commit/49c4ea4387b11765230e3fc13c8885ccb917385e))
* let entity cards scroll independently via RecyclerView ([d76dea7](https://github.com/HankHuang0516/EClaw/commit/d76dea78f42a51e7ab227a8d2e0bd38b59237f3e))
* limit free bot to one binding per device ([6add614](https://github.com/HankHuang0516/EClaw/commit/6add6141416698843c0fce14bae02a0f2a48954d))
* load officialBindingsCache on startup and fix admin BIGINT conversions ([b0f0bb8](https://github.com/HankHuang0516/EClaw/commit/b0f0bb892207278ecc0dbb046fd14e16856e9239))
* **bind:** make /api/bind handler async to fix await syntax error ([f78d373](https://github.com/HankHuang0516/EClaw/commit/f78d373e2826b710adf6a7039604d93e90a627d0))
* make speak-to and broadcast webhook push fire-and-forget ([f73cdba](https://github.com/HankHuang0516/EClaw/commit/f73cdbab50e916bba1bdf432abef0a147238a8f7))
* make sub-item delete buttons visible by default (opacity 0.5) ([480cfab](https://github.com/HankHuang0516/EClaw/commit/480cfab4a68f5b2b41574c8f5d31ae53b0247e25))
* make usage limit unconditional for all client/speak calls ([d1f4d62](https://github.com/HankHuang0516/EClaw/commit/d1f4d629daa39d378526c097b734e4a00004b6ce))
* mission notify chat bubble shows 發送至 and per-entity 已讀 status ([4872aab](https://github.com/HankHuang0516/EClaw/commit/4872aab6a23008ae1816ce7b82b828abcf2b781f))
* monthly bot rental requires per-entity payment, rename button to 購買月租版 ([3c4953d](https://github.com/HankHuang0516/EClaw/commit/3c4953d476fece915ac483a0d3ede6339577c837))
* mount /docs static route for webhook troubleshooting page ([75acb71](https://github.com/HankHuang0516/EClaw/commit/75acb71ed5d52e4bddb0a90a8c72b3f5189c4f1d))
* **mission:** move channel callback wiring after channelModule init ([783d726](https://github.com/HankHuang0516/EClaw/commit/783d7261c9188396ed0376dba9b043f1f230cd60))
* **api:** move skill-templates/contributions route after adminAuth definition ([4915f3d](https://github.com/HankHuang0516/EClaw/commit/4915f3d8f737445f4144bd5998ff5588fb126bbb))
* **channel:** multi-account portal UI + auth.js regression fixes ([8531d69](https://github.com/HankHuang0516/EClaw/commit/8531d698dbf1e6522ae2d903004380e47cacd29a))
* **gatekeeper:** narrow fetch pattern to avoid false positives + add issue docs ([b6b2aa7](https://github.com/HankHuang0516/EClaw/commit/b6b2aa77cd80b895e5620ddf940573b510731fe7))
* normalize webhook URL double-slash + add token debug logging ([e5cd7d3](https://github.com/HankHuang0516/EClaw/commit/e5cd7d37be034531361045cd9491dcc012bbc0f2))
* notify prompt includes all assigned TODOs regardless of priority ([d79a394](https://github.com/HankHuang0516/EClaw/commit/d79a394eaf9881c6e1ebccba10dfdf07a515d648))
* OAuth test uses fresh token pair for refresh_token test ([392dd05](https://github.com/HankHuang0516/EClaw/commit/392dd0529b671542a7c01b095c67ebd6778c5ddc))
* only dedup bot messages, not user messages in saveChatMessage ([96bc624](https://github.com/HankHuang0516/EClaw/commit/96bc6247e25d4b60e430014b126ad86a8ff97807))
* persist DATABASE_URL to file for Claude CLI child processes ([f177bed](https://github.com/HankHuang0516/EClaw/commit/f177bededbfec67061fb02351d0a48f7ff6a87de))
* persist language preference to server for cross-device sync ([bd3f7f6](https://github.com/HankHuang0516/EClaw/commit/bd3f7f65657434136dcf40d1f499de2924fc0c74))
* preserve entity name across unbind/rebind operations ([0f5b771](https://github.com/HankHuang0516/EClaw/commit/0f5b771ca1f457817165acf8eec1f4fe70a1b76b)), closes [#2](https://github.com/HankHuang0516/EClaw/issues/2) [#1](https://github.com/HankHuang0516/EClaw/issues/1) [#3](https://github.com/HankHuang0516/EClaw/issues/3)
* **entity:** preserve XP/level across all unbind/rebind paths ([a27bddf](https://github.com/HankHuang0516/EClaw/commit/a27bddf86c15c340ffe44e6b91506b930ef7992c))
* prevent AI chat timeout — optimize prompt and fix spawn bugs ([18f743e](https://github.com/HankHuang0516/EClaw/commit/18f743ed411d692a835342e59e6dc032d5c638a4))
* prevent entity cards from disappearing + add CI workflow ([#29](https://github.com/HankHuang0516/EClaw/issues/29)) ([09856c8](https://github.com/HankHuang0516/EClaw/commit/09856c8598c80efabd811d2d93cd6756770d853e))
* prevent entity cards from disappearing + improve logging for [#16](https://github.com/HankHuang0516/EClaw/issues/16) ([931d426](https://github.com/HankHuang0516/EClaw/commit/931d42650c34033376fbe43583b9599f0c1b7d8d))
* prevent entity cards from hiding in edit mode + fix price inconsistency ([#16](https://github.com/HankHuang0516/EClaw/issues/16), [#17](https://github.com/HankHuang0516/EClaw/issues/17)) ([2f12e84](https://github.com/HankHuang0516/EClaw/commit/2f12e8428ff0b78108751c6db45d761ef5425d08))
* prevent entity message echo by deduplicating bot chat messages ([41c5bc6](https://github.com/HankHuang0516/EClaw/commit/41c5bc6dc5367d642d5d8d79ffc7db466e631227))
* **ai-chat:** prevent false network error when closing chat mid-request ([e787e2e](https://github.com/HankHuang0516/EClaw/commit/e787e2e6c489885de8bd6a022255f32fccbe8588))
* **entities:** prevent Gson crash when bot sends non-numeric parts value ([f29c550](https://github.com/HankHuang0516/EClaw/commit/f29c5502b2b631ed23474b0387476909ad526b1b))
* prevent publicCode loss during entity reorder ([bd8f1f4](https://github.com/HankHuang0516/EClaw/commit/bd8f1f407aa5764fdf7a068bb4f1aeda6d9045ea))
* prevent usage counter inflation and sync client-server usage ([afd6483](https://github.com/HankHuang0516/EClaw/commit/afd6483aad1783e5e6754918ba76803db17f94e4))
* properly normalize double slashes in webhook URL path ([bebc402](https://github.com/HankHuang0516/EClaw/commit/bebc402b57ea7145c11b5c429e64ffe85645f901))
* public code UI disappears when swapping entities in edit mode ([9150750](https://github.com/HankHuang0516/EClaw/commit/915075093f75531483b9ab9d89fc87d65fb73248))
* Railway startCommand remove cd backend (root dir is already backend) ([6a734aa](https://github.com/HankHuang0516/EClaw/commit/6a734aa48bb1f731e9b1cdf05cbc638436956cc9))
* **tests:** read TEST_ENTITY_ID from .env in bot-api-response test; add setup_broadcast_webhook.js ([0dc137c](https://github.com/HankHuang0516/EClaw/commit/0dc137c85e00de20c74b0c42c7569acbaf117dae))
* redesign bot-to-bot limiter to counter-based (no time reset) ([39d9b0e](https://github.com/HankHuang0516/EClaw/commit/39d9b0e11e3c1cc327b8fcfdf3f12453cc03be71))
* **claude-cli-proxy:** redirect Python logging to stdout ([1417618](https://github.com/HankHuang0516/EClaw/commit/1417618a330e570eb3b5884200ae98eb6caa8be2))
* reduce bot API test from 20 to 10 cases to fit 300s runner timeout ([328e330](https://github.com/HankHuang0516/EClaw/commit/328e3308971f5c80ff6a0092a678219b941523ed))
* reduce gatekeeper false positives + show blocking reason on both platforms ([#18](https://github.com/HankHuang0516/EClaw/issues/18)) ([2006bbc](https://github.com/HankHuang0516/EClaw/commit/2006bbc74b710c2201a29b74380e193b1df5f633))
* regenerate PNG with CJK font support and updated QR codes ([67f6b48](https://github.com/HankHuang0516/EClaw/commit/67f6b489d982f7981a854cb99714c255540f282a))
* **screenshot:** register 5mb json limit before global middleware ([f4e5e41](https://github.com/HankHuang0516/EClaw/commit/f4e5e418d2964480966e8bbbce6c7681748af20a))
* **screen-control:** remove 20-capture session limit, keep 500ms interval only ([61b4665](https://github.com/HankHuang0516/EClaw/commit/61b4665c1dc04cade28ef92e6a8d5585416dd203))
* remove AD_ID permission and add changesNotSentForReview flag ([ebd2fd7](https://github.com/HankHuang0516/EClaw/commit/ebd2fd754e7b4c5d8a6b435a079aa0947ffc6113))
* **portal:** remove broken security info block from env-vars page ([3742253](https://github.com/HankHuang0516/EClaw/commit/374225367b9f8ecbc5193af4734ff69cc5941c28))
* **upload:** remove changesNotSentForReview param (rejected by Play API) ([45aef55](https://github.com/HankHuang0516/EClaw/commit/45aef55e5d9d798f9d79a7e5a27dc2c97fa6e302))
* remove duplicate currentUser declaration causing SyntaxError in env-vars.html ([b92156d](https://github.com/HankHuang0516/EClaw/commit/b92156d8e26bea70a9f9eea49462e902f0cbf55d))
* remove duplicate string resources entity_public_code and code_copied ([ba238a4](https://github.com/HankHuang0516/EClaw/commit/ba238a49dbb4d70ff7454d3a291ed3a4e0bc815e)), closes [#167](https://github.com/HankHuang0516/EClaw/issues/167)
* remove extra context arg from TelemetryHelper.trackAction calls ([1f25b76](https://github.com/HankHuang0516/EClaw/commit/1f25b76183092249dcbad9239e8dca9166c71ff5))
* remove schedule tab from web nav, add Chinese translations for Android schedule ([5cb8e7b](https://github.com/HankHuang0516/EClaw/commit/5cb8e7be350b7ba8c33e7ff093f16173ca1b834b))
* rename loading UI, entity card removal, copy button UX ([fe57a80](https://github.com/HankHuang0516/EClaw/commit/fe57a803ce5acd341b4ce3d8f356c8520ea3b78a))
* **admin:** reorder By/date columns and show full datetime in contribution tables ([260b522](https://github.com/HankHuang0516/EClaw/commit/260b5221407c539f6369368fe83e19120bf6d1eb))
* repair all GitHub Actions CI failures ([ea06c7e](https://github.com/HankHuang0516/EClaw/commit/ea06c7e67bf7cead823fdaac449113b732269a86))
* replace broken QR codes with valid ones for Web portal and Android app ([9a5ec3a](https://github.com/HankHuang0516/EClaw/commit/9a5ec3a211eb18c18c0775fdbc8745ce9eadf253))
* replace emoji icons with proper SVG brand icons + fix table overflow ([8bce357](https://github.com/HankHuang0516/EClaw/commit/8bce3570e33453f6f991b2f71c0444aab4c564b4))
* **claude-cli-proxy:** replace hatchling local package install with requirements.txt ([523c474](https://github.com/HankHuang0516/EClaw/commit/523c474fc12cc69f6ae2071e687287f5eacc8a76))
* replace inline 44KB skill doc with short hint in bind response ([a27985c](https://github.com/HankHuang0516/EClaw/commit/a27985c73da02635d4a698aa5a0e42e7df47027d))
* replace sessions_create with session discovery + handshake ([0995b04](https://github.com/HankHuang0516/EClaw/commit/0995b04a20cf0bf3da2c0e1b5c83ba07df4a7258))
* replace system edit icon with custom Material icon for visual consistency ([0b7a179](https://github.com/HankHuang0516/EClaw/commit/0b7a1798635e1fcffaef61c2dc6630985fbcc7a0)), closes [#888888](https://github.com/HankHuang0516/EClaw/issues/888888) [#4FC3F7](https://github.com/HankHuang0516/EClaw/issues/4FC3F7)
* **screenshot:** report onFailure error immediately to backend ([49e30bd](https://github.com/HankHuang0516/EClaw/commit/49e30bd5d6f03d00b76328b6a0b7bfb5adea0e80))
* **bind:** reset bot-to-bot counter on rebind to prevent stale rate limits ([daea976](https://github.com/HankHuang0516/EClaw/commit/daea976e44768dc65eb515d2bff4b5f400385642))
* resetBotToBotCounter now resets all entity slots dynamically ([b35a099](https://github.com/HankHuang0516/EClaw/commit/b35a0995d585cbcf572d2029e0ef294c207e6a30)), closes [#85](https://github.com/HankHuang0516/EClaw/issues/85)
* resolve "Invalid Date" in notification items ([1905956](https://github.com/HankHuang0516/EClaw/commit/19059565b49cb8f270a397719cf9136661944334))
* resolve 4 GitHub issues in parallel — [#100](https://github.com/HankHuang0516/EClaw/issues/100), [#111](https://github.com/HankHuang0516/EClaw/issues/111), [#112](https://github.com/HankHuang0516/EClaw/issues/112), [#113](https://github.com/HankHuang0516/EClaw/issues/113) ([43247db](https://github.com/HankHuang0516/EClaw/commit/43247db706436f8c9b592e77ab73563f3c2e24f6))
* resolve 5 open issues ([#34](https://github.com/HankHuang0516/EClaw/issues/34), [#35](https://github.com/HankHuang0516/EClaw/issues/35), [#36](https://github.com/HankHuang0516/EClaw/issues/36), [#37](https://github.com/HankHuang0516/EClaw/issues/37), [#38](https://github.com/HankHuang0516/EClaw/issues/38)) ([4a7b211](https://github.com/HankHuang0516/EClaw/commit/4a7b211de216c1b88d2bb2f8feba35fe806eba25))
* resolve 7 GitHub issues — parallel agent batch fix ([bbea86d](https://github.com/HankHuang0516/EClaw/commit/bbea86da677f11f115f29d53d32225ca1a337073)), closes [#97](https://github.com/HankHuang0516/EClaw/issues/97)
* resolve 8 open issues via multi-agent parallel implementation ([8fe348c](https://github.com/HankHuang0516/EClaw/commit/8fe348ca6841b67d6434b3b9c14605a787d3ee9b)), closes [#77](https://github.com/HankHuang0516/EClaw/issues/77) [#76](https://github.com/HankHuang0516/EClaw/issues/76) [#72](https://github.com/HankHuang0516/EClaw/issues/72) [#73](https://github.com/HankHuang0516/EClaw/issues/73) [#79](https://github.com/HankHuang0516/EClaw/issues/79) [#80](https://github.com/HankHuang0516/EClaw/issues/80) [#75](https://github.com/HankHuang0516/EClaw/issues/75) [#74](https://github.com/HankHuang0516/EClaw/issues/74)
* **android:** resolve ChatIntegrity false-positives and LinkPreviewHelper NPE ([a2b53be](https://github.com/HankHuang0516/EClaw/commit/a2b53bed001ea2e5ccb99bf821f12e5e306be7f3)), closes [#141](https://github.com/HankHuang0516/EClaw/issues/141) [#142](https://github.com/HankHuang0516/EClaw/issues/142)
* resolve cross-device display codes and prevent bubble count false positives ([bb2a5b1](https://github.com/HankHuang0516/EClaw/commit/bb2a5b191a99cd31146f892a5e77d7bab847be9d)), closes [#86](https://github.com/HankHuang0516/EClaw/issues/86) [#88](https://github.com/HankHuang0516/EClaw/issues/88) [#89](https://github.com/HankHuang0516/EClaw/issues/89)
* resolve ESLint and Android Lint CI failures ([cae5b94](https://github.com/HankHuang0516/EClaw/commit/cae5b940a1da49e04526890844eaee92dfbe2e5b))
* resolve ESLint and Android Lint CI failures ([9f4d7c1](https://github.com/HankHuang0516/EClaw/commit/9f4d7c1323049776515d65883286617c7ffcaaed))
* resolve issues [#145](https://github.com/HankHuang0516/EClaw/issues/145) [#146](https://github.com/HankHuang0516/EClaw/issues/146)-149 [#150](https://github.com/HankHuang0516/EClaw/issues/150) — skill templates, AI chat fixes ([c532245](https://github.com/HankHuang0516/EClaw/commit/c532245ab645b27207e8bf0523f22ebc145b0da4)), closes [#146-149](https://github.com/HankHuang0516/EClaw/issues/146-149) [#146-149](https://github.com/HankHuang0516/EClaw/issues/146-149)
* **chat:** resolve link preview crash and coroutine lifecycle issues ([3ed4be4](https://github.com/HankHuang0516/EClaw/commit/3ed4be45d13a463bcf1d8d306e78c2c14145d6a5)), closes [#131](https://github.com/HankHuang0516/EClaw/issues/131) [#136](https://github.com/HankHuang0516/EClaw/issues/136) [#128](https://github.com/HankHuang0516/EClaw/issues/128) [#127](https://github.com/HankHuang0516/EClaw/issues/127) [#130](https://github.com/HankHuang0516/EClaw/issues/130)
* resolve merge conflicts in package.json/package-lock.json ([e66abf1](https://github.com/HankHuang0516/EClaw/commit/e66abf13b3b9d2fbf2ec7e30721741ea58921cfe))
* restore CI workflows, fix eslint version conflict, add Unix gradlew ([a8e6f27](https://github.com/HankHuang0516/EClaw/commit/a8e6f2725d70f35f4905b99420502028b81509ef))
* restore template literal in set-entity-xp error message ([40a44ad](https://github.com/HankHuang0516/EClaw/commit/40a44ad9abbc6f85ae7dfa981d80c8c1f7c9ea59))
* restore UTF-8 encoding on files corrupted by PowerShell ([58bf0b3](https://github.com/HankHuang0516/EClaw/commit/58bf0b35102be3c4d9e751b98e18c300240f98b3))
* **screen-control:** revert OkHttp to HttpURLConnection, remove typeWindowContentChanged ([8410931](https://github.com/HankHuang0516/EClaw/commit/841093104ec587ee379041d58e353a6c32932ac6))
* revert v1.0.9 release + fix Railway healthcheck (nixpacks server.js→index.js) ([9af0e10](https://github.com/HankHuang0516/EClaw/commit/9af0e106694dc38a795d4748f3b6f0878de2ad99))
* **settings:** right-align copy icon, remove eye buttons ([010ffb7](https://github.com/HankHuang0516/EClaw/commit/010ffb7487fe57019423e843676752ad203c1c2d))
* **ui:** round border corners to match screen + halve border thickness ([642b455](https://github.com/HankHuang0516/EClaw/commit/642b455baf95c094b7c0509e755fb8e1d90e9330))
* **channel:** route debug messages through serverLog for /api/logs visibility ([ae1e5fe](https://github.com/HankHuang0516/EClaw/commit/ae1e5fe1762a5a32808ab1cb72ebeb131acd573e))
* sanitize raw CLI JSON in async path + stream-json monitoring for proxy ([98d6216](https://github.com/HankHuang0516/EClaw/commit/98d621664550eea0ede08a9a6ea0033d5ce4e9dd))
* sanitize raw JSON from AI chat proxy response ([2e394a2](https://github.com/HankHuang0516/EClaw/commit/2e394a2c89aa1c57563ff8c5b6c68bdbc7f4c833))
* save bot responses to chat history and add AUTH to entity messaging ([7c8a85d](https://github.com/HankHuang0516/EClaw/commit/7c8a85d3a4518659625060b6a2294bf45854abd3))
* schedule card add icon and rename to 進入排程 ([dc013be](https://github.com/HankHuang0516/EClaw/commit/dc013be1076df57160455cd1a3816e6607266aa3))
* send callback_token via X-Callback-Token header alongside Basic Auth ([958d2fd](https://github.com/HankHuang0516/EClaw/commit/958d2fd9690e2694c6788c85baa54ab3e03568fe))
* server-side pre-execute close_issue intent to bypass model safety training ([b760224](https://github.com/HankHuang0516/EClaw/commit/b7602246688b20324a781ec7603655931759834c)), closes [#123](https://github.com/HankHuang0516/EClaw/issues/123)
* set CLAUDE_DANGEROUSLY_SKIP_PERMISSIONS env var for headless CLI ([970430d](https://github.com/HankHuang0516/EClaw/commit/970430d77521f8546dea0a156f30fd6882eaf923))
* short-circuit AI call when close_issue is pre-executed ([3b616aa](https://github.com/HankHuang0516/EClaw/commit/3b616aab36cae364599c584e8fff467c0404e79d))
* **test:** shorten NEW_NAME to stay within 20-char server limit ([45a1653](https://github.com/HankHuang0516/EClaw/commit/45a165359c4212b2d0851cebbfa20c19f26e81e5))
* show actual TapPay error details instead of generic message ([1dec9de](https://github.com/HankHuang0516/EClaw/commit/1dec9deb4addab69da7845797c753eaa9bf774ae))
* show authenticated nav on info page for logged-in users ([d5c864e](https://github.com/HankHuang0516/EClaw/commit/d5c864e23327c1feb185a8c0cb3a5063c997ac4b))
* show binding count and conversation stats for free bots in admin bot list ([88139c9](https://github.com/HankHuang0516/EClaw/commit/88139c9f3726863a013ef491badaf1d9d8b6265b))
* show clear loading status during bot binding (handshake/connect/success) ([a8713e1](https://github.com/HankHuang0516/EClaw/commit/a8713e1b36f8cba123240140dad88d44a62a8477))
* **web:** show edit mode button by using inline-flex display ([020ff1d](https://github.com/HankHuang0516/EClaw/commit/020ff1db5635153e0ad2a6571e479e32fbdfe63a))
* **android:** show requiredVars warning when selecting skill template ([95287bb](https://github.com/HankHuang0516/EClaw/commit/95287bb807d39e261d77348582f7065dbf6c4ef7))
* show upload progress status when sending images in AI chat ([219f04f](https://github.com/HankHuang0516/EClaw/commit/219f04fee016eca9103f323fb9af061c2a6c4661))
* smart 401 handling — guide bot to retry with setup_password ([88a42ea](https://github.com/HankHuang0516/EClaw/commit/88a42eaada90c39c4865ef19144c1aebfcf82a5e))
* smart cleanup of stale official borrow bindings ([36ad43f](https://github.com/HankHuang0516/EClaw/commit/36ad43fe4c8351eab224c81b530582b1a582c9b4))
* startup cleanup releases all stale bot assignments on deploy ([10380ee](https://github.com/HankHuang0516/EClaw/commit/10380ee9d171aa17092889f05b92e639f5a74c92))
* strengthen gatekeeper both locks to catch real-world attacks ([4b5ee5a](https://github.com/HankHuang0516/EClaw/commit/4b5ee5ab4296cc490913e60d0599ec3830aad733))
* strengthen system prompt to override model's GitHub permission hesitation ([7c05798](https://github.com/HankHuang0516/EClaw/commit/7c057988a1e44dc5f504766ab3c036ce4a9f40b9))
* suppress broadcast echo in Chat and update delivery receipts on re-sync ([7559ad4](https://github.com/HankHuang0516/EClaw/commit/7559ad4c3b16dd09d129270083182a796463978f))
* switch to non-instalment merchant ID (GP_POS_1) ([65d6c30](https://github.com/HankHuang0516/EClaw/commit/65d6c30dcd3546b2832a71afc1e4a0edaacb0d85))
* sync Google Play subscription with server to lift usage limits ([925a936](https://github.com/HankHuang0516/EClaw/commit/925a93659ca764e2cd16d4aac94e881e1efc14f4))
* sync web-sent messages to Android chat + merge broadcast bubbles ([2dce0a2](https://github.com/HankHuang0516/EClaw/commit/2dce0a2dff1855748339c4e210ceeef8c3186e8b))
* telemetry path in sub-routers, duration=0 handling, usage limit scope ([e5c9aa3](https://github.com/HankHuang0516/EClaw/commit/e5c9aa351722656d0697c0056c5e278168410cb2))
* test uses correct lookup and unbind endpoints ([ed3c913](https://github.com/HankHuang0516/EClaw/commit/ed3c9138bed58efcdd429095ba94b39522d248f4))
* treat handshake timeout as success (AI processing = tool works) ([a24ef23](https://github.com/HankHuang0516/EClaw/commit/a24ef23c1ffeedbbc37a4188f60bfd98e83ef554))
* **settings:** truncate Device ID/Secret with ellipsis, no line wrap ([94a2ea4](https://github.com/HankHuang0516/EClaw/commit/94a2ea41be12a026d5149a53e779b2403558639b))
* **ssl:** trust-all TrustManager in debug builds for emulator SSL fix ([800fb0e](https://github.com/HankHuang0516/EClaw/commit/800fb0e2355ab34671854a09a54a635855c51ed2))
* unify feedback button style with other settings buttons ([6b9c3ff](https://github.com/HankHuang0516/EClaw/commit/6b9c3ff49bb94e95210cf33c2a13403cec90e970))
* update claude-proxy skill template with correct openclaw-claude-proxy steps ([e3dbc28](https://github.com/HankHuang0516/EClaw/commit/e3dbc289644dae02f6b16c820133a3cf0484311c))
* **info:** update example template with review steps after each goal ([ba3ceb6](https://github.com/HankHuang0516/EClaw/commit/ba3ceb61c3df158c43f081784958ca5cb5f7e451))
* update footer description to AI collaboration platform ([7b5550b](https://github.com/HankHuang0516/EClaw/commit/7b5550bb7eb4aa3400d55214872d471d549bfd86))
* **rebrand:** update HTML fallback strings in comparison section ([a332dbd](https://github.com/HankHuang0516/EClaw/commit/a332dbd95a4069952d1eb785e3969961f0d89cf3))
* update LATEST_APP_VERSION from 1.0.3 to 1.0.14 ([3320f12](https://github.com/HankHuang0516/EClaw/commit/3320f122fe883ac0fcb9424f2830e371e1bcbe24))
* update sessions_send error messages to reference official docs instead of hardcoded config paths ([f3b8313](https://github.com/HankHuang0516/EClaw/commit/f3b8313bb001c013ee664a652010520b90dcef18))
* **rebrand:** update SVG and tester guide - remove pet terminology ([c27b27e](https://github.com/HankHuang0516/EClaw/commit/c27b27e6fb71240a05e5a5afd1b6b8c42b3b5c41))
* **channel:** upsert device to PostgreSQL before creating channel account ([15b9b65](https://github.com/HankHuang0516/EClaw/commit/15b9b65428cfeda98d974cc3a61e9fa7bc946d52))
* use absolute path for db-query.js in system prompt ([c73af64](https://github.com/HankHuang0516/EClaw/commit/c73af6423545f4809f7cce3de81abe795a3d5443))
* use API pattern format instead of full URL with credentials in push messages ([192ddd4](https://github.com/HankHuang0516/EClaw/commit/192ddd4c12735c70698c045d42d36132e5be10a7))
* **admin:** use cookie auth for skill-templates/contributions endpoint ([fcefb1a](https://github.com/HankHuang0516/EClaw/commit/fcefb1a0a7d295646024931bb1d6e018022d0945))
* **admin:** use cookie-based auth for DELETE official-bot endpoint ([93642d4](https://github.com/HankHuang0516/EClaw/commit/93642d4f4a6eeb788d2c1604be5b56d5306fcc43))
* **test:** use correct reorder endpoint /api/device/reorder-entities ([abb1eb3](https://github.com/HankHuang0516/EClaw/commit/abb1eb3b031a293dd01be34080471b00a35a799b))
* **scheduler:** use current timestamp as default scheduled_at for cron schedules ([1610110](https://github.com/HankHuang0516/EClaw/commit/1610110239212ffca506b6cbf3dec67dfb862278))
* use device timezone for cron schedule execution ([84df76c](https://github.com/HankHuang0516/EClaw/commit/84df76cb20d6f25e307e1c1f44ff9540aaff1406))
* use Dockerfile for claude-cli-proxy to ensure git is installed ([838afa7](https://github.com/HankHuang0516/EClaw/commit/838afa78389211c5baa711e7c9e36a60d0a6db5c))
* use flickr-sdk v6 CommonJS API (Flickr.Upload constructor) ([b78ee97](https://github.com/HankHuang0516/EClaw/commit/b78ee97686f2b374f7987506aec59148a3c0ed7d))
* use matching TapPay sandbox partner_key and merchant_id ([84e0d7c](https://github.com/HankHuang0516/EClaw/commit/84e0d7caed57e82ef67a006e60afb8abc97072d7))
* use own TapPay merchant credentials (app_id 166632) ([b87b1fd](https://github.com/HankHuang0516/EClaw/commit/b87b1fdfc228ac28fa338ac4ab0ebe72db7cb471))
* use regular callback for FB.login (async not supported by Facebook SDK) ([46bb49f](https://github.com/HankHuang0516/EClaw/commit/46bb49fdc9acdca3f145414dbfaa23ddacc3d915))
* use rsvg-convert for PNG with proper emoji + CJK rendering ([5ad4612](https://github.com/HankHuang0516/EClaw/commit/5ad4612a328cd788fc6332e94791e5151c113fc3))
* use stdin for Claude CLI prompt + increase timeout to 55s ([73d3aab](https://github.com/HankHuang0516/EClaw/commit/73d3aab5af5b1f853f8d8b1711d32b8939761d3e))
* warn bots not to edit config files directly, use openclaw CLI ([77ffeb4](https://github.com/HankHuang0516/EClaw/commit/77ffeb4d794a1d4ae109f24aeb2aaa4eb595b2d8))
* webhook error handshake validation and message matching ([ce12721](https://github.com/HankHuang0516/EClaw/commit/ce1272111d1e4563533c6ce2f931fa3197fe7512))
* webhook error shown in chat when no webhook or push fails ([bf21157](https://github.com/HankHuang0516/EClaw/commit/bf21157621c3325986ceb7edc54cb5948ccfe7e0))
* **gatekeeper:** whitelist eclawbot.com domain + add unblock APIs ([b427e9c](https://github.com/HankHuang0516/EClaw/commit/b427e9cdd738a44a7b6702256dcde43651738176))
* widen OAuth access_token column from VARCHAR(256) to VARCHAR(512) ([a93da54](https://github.com/HankHuang0516/EClaw/commit/a93da54d50991908dd2b7e568b07410ac9397e2a))
* widen QR cards, replace blurry emoji, fix corrupted QR data ([08cadb0](https://github.com/HankHuang0516/EClaw/commit/08cadb053feaf45607f98bdcb829d45c732c2266))
* widget info pointing to old layout causing load failure ([91b5430](https://github.com/HankHuang0516/EClaw/commit/91b5430ab58d3c2800ccbfef99421311ebb29f9c))
* **claude-cli-proxy:** wrap startCommand with sh -c for PORT variable expansion ([ab7c431](https://github.com/HankHuang0516/EClaw/commit/ab7c4313c969c6e260436a98d4438a76f822e0c3))


### Features

* 5 improvements - entity selection fix, multi-entity TODO, system skill, Markwon MD, bot file storage ([140b73f](https://github.com/HankHuang0516/EClaw/commit/140b73fbc337e7c78fed0027e233f9b1f7b08d02))
* **channel:** add [BIND]/[PUSH] debug messages to channel-api.js ([aa9a7b7](https://github.com/HankHuang0516/EClaw/commit/aa9a7b73378c7d4e44ec0f58d833e2a6c5b27300))
* add /api/ai-support/proxy-sessions admin endpoint for session monitoring ([ecf3de1](https://github.com/HankHuang0516/EClaw/commit/ecf3de1cc2ec0944c1449b344b70b9423ae185b6))
* **backend:** add /api/platform-stats endpoint for bot daily report ([bcd090e](https://github.com/HankHuang0516/EClaw/commit/bcd090e662da9f4877f957c9e5779c0cd5ae3852)), closes [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#6](https://github.com/HankHuang0516/EClaw/issues/6) [#38842](https://github.com/HankHuang0516/EClaw/issues/38842)
* **i18n:** add 160-166 missing translation keys per language for zh-CN/ja/ko/th/vi/id ([1642a92](https://github.com/HankHuang0516/EClaw/commit/1642a929e6b708e5e5737d1ef71325da2b73f4df))
* **skills:** add 3 popular community skill templates ([559bce0](https://github.com/HankHuang0516/EClaw/commit/559bce00ee19a2e05fd339cfc523a04bb0cf44e9))
* add A2A compat layer, OAuth 2.0 server, and interactive API docs ([#187](https://github.com/HankHuang0516/EClaw/issues/187), [#189](https://github.com/HankHuang0516/EClaw/issues/189), [#190](https://github.com/HankHuang0516/EClaw/issues/190)) ([9351a9d](https://github.com/HankHuang0516/EClaw/commit/9351a9db5cf0df4aec21615a671cf5f198669f7e))
* **auth:** add account deletion page and API for Google Play Data Safety ([30fb56c](https://github.com/HankHuang0516/EClaw/commit/30fb56c8cd8d9d920f86309cebd80186058e26b2))
* add account login to Android app for data recovery after reinstall ([95a9b90](https://github.com/HankHuang0516/EClaw/commit/95a9b908f096a72a0414ea848d69106b74ea9598))
* add admin dashboard visualization charts for bot stats and platform breakdown ([ead2451](https://github.com/HankHuang0516/EClaw/commit/ead245122f3a04b95465aaee10c5483101e79c5c))
* add admin role awareness to AI support proxy ([b3cd461](https://github.com/HankHuang0516/EClaw/commit/b3cd4613ba710a1dcbcd845b3de8119b3964356d))
* add AI chat concurrency queue with auto-retry ([e1c2021](https://github.com/HankHuang0516/EClaw/commit/e1c2021b097e0c1cb5ebd774382a476f0235f4e4))
* **admin:** add AI Support Chat widget on admin dashboard ([bde04bb](https://github.com/HankHuang0516/EClaw/commit/bde04bb5aa4530b8a7b5288b9b842e3c1876954e))
* add AI-powered binding troubleshooter with rule engine + Claude CLI proxy ([f2052fd](https://github.com/HankHuang0516/EClaw/commit/f2052fd1c6cc7ea5da05411ae5543c7b5bb77791))
* add all 14 tests to regression runner incl. credential-based tests ([f1f819c](https://github.com/HankHuang0516/EClaw/commit/f1f819c90b2d2106c49fff164a39a8387e18cc90))
* add API hint (注意) to webhook push messages ([79b52df](https://github.com/HankHuang0516/EClaw/commit/79b52dfc0ea77ad5fc22c743110d7ddb34c0f80f))
* add article-publisher module (Blogger OAuth + Hashnode API) ([03f3264](https://github.com/HankHuang0516/EClaw/commit/03f3264ce79bed63da5e6643c018d146b61ce775))
* add bbb880008@gmail.com as admin user ([78dc1a4](https://github.com/HankHuang0516/EClaw/commit/78dc1a4ae67f0fa161b4be66ada11434745e023d))
* add Bot Tools API (web-search & web-fetch proxy) for OpenClaw bots ([c680919](https://github.com/HankHuang0516/EClaw/commit/c680919c659dbac3db53a273b43d01550d800815))
* add broadcast curl template to push notification + skill doc ([003f9a3](https://github.com/HankHuang0516/EClaw/commit/003f9a33acb73bf9d371b1b4b594456268d94d5c))
* add broadcast recipient info toggle to Web Portal settings ([#105](https://github.com/HankHuang0516/EClaw/issues/105)) ([61fb99c](https://github.com/HankHuang0516/EClaw/commit/61fb99cd48cf0f8165a7d7c3c5cdcb652c0eb2ba))
* add buildBroadcastRecipientBlock() helper ([#105](https://github.com/HankHuang0516/EClaw/issues/105)) ([a1e02e5](https://github.com/HankHuang0516/EClaw/commit/a1e02e59aba1bd346de1ed06bb210fe433789909))
* **ui:** add Channel binding type indicators across Portal and Android ([bf72728](https://github.com/HankHuang0516/EClaw/commit/bf7272820e99700cdbf0fad109f69a8ac46fdd66))
* **mission:** add channel bot support for mission notify (Bot Push Parity Rule) ([a9b4b16](https://github.com/HankHuang0516/EClaw/commit/a9b4b16fe5827cbe6df3f5b4dc2c5f79f6d49df7))
* add Claude CLI warmup to reduce cold start latency ([856e16d](https://github.com/HankHuang0516/EClaw/commit/856e16d54cff23e2cb29f2aaba2bfb13b119f01c))
* **skill-templates:** add community skill contribution API + review flow ([375961c](https://github.com/HankHuang0516/EClaw/commit/375961c10791ad9c49013a0d790ce388dcdeefee))
* add comprehensive notification system (Socket.IO, Web Push, FCM prep, preferences) ([f182810](https://github.com/HankHuang0516/EClaw/commit/f182810ce93c88b20a793e7ac6b17e25ed9e3a04))
* **settings:** add copy icon for Device ID and Copy Credentials button ([35a68d7](https://github.com/HankHuang0516/EClaw/commit/35a68d70044c94b643ee6a685ecb88840c008179))
* add crash reporting & debug logging for issue [#120](https://github.com/HankHuang0516/EClaw/issues/120) ([0245cfe](https://github.com/HankHuang0516/EClaw/commit/0245cfe2bd48cff85c4bd9058377909a007d4b5d))
* **templates:** add Creative Thinker soul and Step-by-Step Reasoning rule templates ([61e916f](https://github.com/HankHuang0516/EClaw/commit/61e916feadad2683d5d774073211d54cda6de898))
* add cross-device bot-to-bot communication via public entity codes ([880f8d4](https://github.com/HankHuang0516/EClaw/commit/880f8d4b2190be959b81eae30e2b473d222ab785)), closes [#70](https://github.com/HankHuang0516/EClaw/issues/70)
* add cross-device message management interface ([dd8f27a](https://github.com/HankHuang0516/EClaw/commit/dd8f27a8d63e106c4b10672355580d2e1b80d5d4))
* add debug diagnostics to webhook register response and push errors ([b3c3ad9](https://github.com/HankHuang0516/EClaw/commit/b3c3ad9863465d888c4440653622acc1ee911540))
* **info:** add deep linking support for guide sub-items ([e16ebb7](https://github.com/HankHuang0516/EClaw/commit/e16ebb76d8fdf5d5b53ca117da92c3ea158579f6)), closes [#faq](https://github.com/HankHuang0516/EClaw/issues/faq) [#release-notes](https://github.com/HankHuang0516/EClaw/issues/release-notes) [#compare](https://github.com/HankHuang0516/EClaw/issues/compare)
* **settings:** add Delete Account entry in Settings (web + Android) ([ccac5a5](https://github.com/HankHuang0516/EClaw/commit/ccac5a56145904375565278d2d84c06be6b8d344))
* add device preferences module with DB table ([#105](https://github.com/HankHuang0516/EClaw/issues/105)) ([3a946e4](https://github.com/HankHuang0516/EClaw/commit/3a946e4eba55e04481f1d7b43c88b7ba11b2b0f1))
* add device preferences UI in SettingsActivity + localized strings ([#105](https://github.com/HankHuang0516/EClaw/issues/105)) ([c0d306c](https://github.com/HankHuang0516/EClaw/commit/c0d306c78f4a4e970ac3ca1c4a9e0d3b8cb68ac0))
* **settings:** add Device Secret display with reveal/copy toggle ([4d4281a](https://github.com/HankHuang0516/EClaw/commit/4d4281a967a87f404ca5217f32045f1ff6fb500b))
* add device telemetry debug buffer (~1MB/device) with auto-capture ([0e00872](https://github.com/HankHuang0516/EClaw/commit/0e00872a18e4eb98d4a06f7f1a93d19bfbd2a2d5))
* **db:** add device_vars table + CRUD helpers for encrypted env vars ([c2342f8](https://github.com/HankHuang0516/EClaw/commit/c2342f860f85604ed7d00456948236daf0be5252))
* add device-preferences API endpoints (GET/PUT) ([#105](https://github.com/HankHuang0516/EClaw/issues/105)) ([515eef1](https://github.com/HankHuang0516/EClaw/commit/515eef17fcfe05882f3687c4e26e7ce76a6c9b1f))
* **schedule:** add deviceSecret dual auth for schedule endpoints ([2716375](https://github.com/HankHuang0516/EClaw/commit/2716375a2023b2ff259bdf7aae6051832ddc49c8))
* add E-Claw vs Telegram channel comparison page ([9dd9778](https://github.com/HankHuang0516/EClaw/commit/9dd97789578d803f2baf6c92f037afc127748a7f))
* add E-Claw vs Telegram comparison infographic (SVG) ([cca7dcd](https://github.com/HankHuang0516/EClaw/commit/cca7dcd2aa7f65ec0cf6e4556f1545dc914785d9))
* **channel:** add eclaw_context to channel bot push (v1.0.17 parity) ([a43ac93](https://github.com/HankHuang0516/EClaw/commit/a43ac93b0df0d3609e7e697153cfa2512dd66538))
* **web:** add edit mode to dashboard entity cards (parity with Android) ([0143de6](https://github.com/HankHuang0516/EClaw/commit/0143de67a29d274b9cd7e0c26ec89a2c19c6dea2))
* add edit mode with drag-to-reorder entity cards ([fa5b1ae](https://github.com/HankHuang0516/EClaw/commit/fa5b1ae6aacd40596399da7e9dd9c2d20cb628ea))
* add email binding from Android app for web portal login ([#42](https://github.com/HankHuang0516/EClaw/issues/42)) ([61782b8](https://github.com/HankHuang0516/EClaw/commit/61782b8f3bb9f48a660afb00cb19286198117964))
* **schedule:** add Enable/Disable toggle + fix missing i18n keys ([6c6a96c](https://github.com/HankHuang0516/EClaw/commit/6c6a96c2fb8151b2bec5004c84d2f2bd40e36583))
* add entity assign field to TODO add/edit (web + Android) ([4e41d8c](https://github.com/HankHuang0516/EClaw/commit/4e41d8c7668c641f47966e51edfa552f9c3d55f5))
* add expects_reply field to bot-to-bot speak-to and broadcast APIs ([eb90681](https://github.com/HankHuang0516/EClaw/commit/eb90681299381472b28c0abd539f48088a8b6da0))
* **android:** add fetchSoulTemplates/fetchRuleTemplates to MissionViewModel ([1c411fc](https://github.com/HankHuang0516/EClaw/commit/1c411fce073055eb743d09c71f5d6ce9aed4b988))
* add file management page to web portal and Android app ([096d8e3](https://github.com/HankHuang0516/EClaw/commit/096d8e31c58288e4975333b131939f48e470a6b8))
* add free bot limit hint and sold-out rental demand flow ([#81](https://github.com/HankHuang0516/EClaw/issues/81)) ([4669b19](https://github.com/HankHuang0516/EClaw/commit/4669b19371d35fe29e6f99853f2382f7a2c24c54))
* add free bot TOS agreement flow (Web + App sync) ([5932bc4](https://github.com/HankHuang0516/EClaw/commit/5932bc4de9383291b0020ecd38ad05d8e314fd9b))
* add gatekeeper module for free bot abuse prevention ([0abaf0d](https://github.com/HankHuang0516/EClaw/commit/0abaf0d9d17d6b78d091ed4f8868bbc7a9659bd0))
* **api:** add GET /api/soul-templates and /api/rule-templates endpoints ([47f24d4](https://github.com/HankHuang0516/EClaw/commit/47f24d473d32d3ed98492066ebdfa855daad101c))
* **skill-contribute:** add GET status endpoint for async verification feedback ([e71af93](https://github.com/HankHuang0516/EClaw/commit/e71af9310223c23b786e52d24434e47aaafd9132))
* **remote-control:** add getWindows() fallback + pixel screenshot endpoint ([3a1d7b9](https://github.com/HankHuang0516/EClaw/commit/3a1d7b97b6a46201a15b88d397b100d289e4b238))
* **remote-control:** add ime_action command to submit keyboard input ([130f2dc](https://github.com/HankHuang0516/EClaw/commit/130f2dce744a268fb13ff0febd86d7dda569eda1))
* add in-place entity refresh (rebind without unbinding) ([75d6291](https://github.com/HankHuang0516/EClaw/commit/75d629113ae9e95527ece9ed5e15b46ad2b1740b))
* **admin:** add individual remove button to official bot list ([8288512](https://github.com/HankHuang0516/EClaw/commit/828851279a6a17415cadf088c5766718a6f77cdf))
* **chat:** add inline image preview for direct image URLs ([cbe0561](https://github.com/HankHuang0516/EClaw/commit/cbe0561f18420a6e47a82b7441086d7df3a8b0c0))
* add isTestDevice flag for accurate test device cleanup ([4621cde](https://github.com/HankHuang0516/EClaw/commit/4621cde52192c7478e47d1a97f770cbfd74c9e08))
* add Jest+Supertest, Android instrumented test, and CI/CD workflows ([c0475eb](https://github.com/HankHuang0516/EClaw/commit/c0475eb45cb8989c210cd5966008198b2245170e))
* **android:** add JIT vars approval dialog + sync locked flag ([f9f94b7](https://github.com/HankHuang0516/EClaw/commit/f9f94b7e291ad30d68948ffb4b9189e871baee48))
* add JIT vars approval dialog to Portal shared socket handler ([48b4b7e](https://github.com/HankHuang0516/EClaw/commit/48b4b7eb2c92e0494e707e192293174f40279b78))
* add local variables vault — device-only .env-like secret store ([a84b7be](https://github.com/HankHuang0516/EClaw/commit/a84b7be1e0596878ec1b19899dbb3384661bb612))
* **i18n:** add missing i18n keys across Web Portal and Android App ([60fad93](https://github.com/HankHuang0516/EClaw/commit/60fad933ba7e9ac18da333940a58c34db4874aa2))
* add Mission Control & Chat Attachments comparison rows, fix Setup description ([cc75b13](https://github.com/HankHuang0516/EClaw/commit/cc75b135a9c41ab983f500e0a49e7ac2e4d442cf))
* add multi-language support (8 languages) for Web Portal and Android ([e049536](https://github.com/HankHuang0516/EClaw/commit/e0495360dfbb044bac34357040e0c42ede923341))
* add official bot pool DB tables and CRUD functions ([93a46e4](https://github.com/HankHuang0516/EClaw/commit/93a46e45182a901b8c2500a821592b7ac67ad0ec))
* add official skill templates and installation steps to skill dialog ([73b158e](https://github.com/HankHuang0516/EClaw/commit/73b158e0679e89f30a5003091b56df830f223d9a))
* add OpenClaw channel plugin + backend Channel API ([b80c58d](https://github.com/HankHuang0516/EClaw/commit/b80c58d0d04170d1f3d03afab0788047a80f4d25))
* **admin:** add pagination to user list (50 per page) ([ccd5fb3](https://github.com/HankHuang0516/EClaw/commit/ccd5fb35117fd978d93bc4265e904f7b8ed20a7b))
* add paid_borrow_slots system for free rebinding after accidental unbind ([3dd7646](https://github.com/HankHuang0516/EClaw/commit/3dd764601d9625b25d8deea10862a67258d0cfd0))
* add photo (Flickr) and voice (base64) media support to chat ([46dc381](https://github.com/HankHuang0516/EClaw/commit/46dc38129be987720795e289f6856b57340cff4d))
* add photo upload to feedback system (web + Android) ([02dac84](https://github.com/HankHuang0516/EClaw/commit/02dac844bc4ff548ba04228ce2125b0e9b8fd599))
* add photo upload to settings feedback dialog ([31db074](https://github.com/HankHuang0516/EClaw/commit/31db0749958c4c187474b258338fbf5ccdbbf410))
* add POST /api/admin/transfer-device endpoint ([fbb4c97](https://github.com/HankHuang0516/EClaw/commit/fbb4c975d8cf07178fc0a09426f8478074f505ca))
* add public navigation bar with FAQ, Release Notes, and User Guide pages ([248a6f0](https://github.com/HankHuang0516/EClaw/commit/248a6f09eee1a4c6294dd894ec9aef7a49434619))
* add push health status tracking for bots (方案 A + B) ([c46a89c](https://github.com/HankHuang0516/EClaw/commit/c46a89ccb0b851de1b4777039849b1aa51721fce))
* add push notification status tracking ([76c28ca](https://github.com/HankHuang0516/EClaw/commit/76c28cac3070cc56201e3d9626e19d96df64f3cd))
* **ios:** add React Native Expo iOS app with full feature parity ([934fe0b](https://github.com/HankHuang0516/EClaw/commit/934fe0b2a35929d06fc987803eb7be7175cc4293))
* add scheduled cleanup for test and zombie devices ([d4b8a5e](https://github.com/HankHuang0516/EClaw/commit/d4b8a5e9cf4ab80e4ca2f34c92253755b2f55508))
* add scheduling feature for timed message delivery ([c5fb333](https://github.com/HankHuang0516/EClaw/commit/c5fb333ecd47d1c76828a69294149484ad9cf53e))
* **portal:** add Security & Privacy info card to Remote Control page ([9ec15c5](https://github.com/HankHuang0516/EClaw/commit/9ec15c57f596a0b7849d698dd1ff457a8837c0be))
* **channel:** add self-test infrastructure + provision-device endpoint ([0ebcc3d](https://github.com/HankHuang0516/EClaw/commit/0ebcc3d0bc422c692dd61064ea0e16fbccf48fb3))
* add server_logs table + /api/logs endpoint for remote debugging ([b7149f3](https://github.com/HankHuang0516/EClaw/commit/b7149f381a296de865ac6a802eedb75e10f23a62))
* **admin:** add Setup Password field to create bot dialog ([d07a3fd](https://github.com/HankHuang0516/EClaw/commit/d07a3fdcfb91089b456e61be899a4f5c68a63d5e))
* add skills_documentation_url to bind response for large skill doc fetch ([b733213](https://github.com/HankHuang0516/EClaw/commit/b733213036198253ec54c7f67e700400b346abad))
* add slash command autocomplete in Chat input ([5eac498](https://github.com/HankHuang0516/EClaw/commit/5eac498c356a551eaee790972601e7446ce5d873))
* **android/i18n:** add soul & rule template gallery strings ([0a28d99](https://github.com/HankHuang0516/EClaw/commit/0a28d9979ab846214683a9c3bbc76c62be69e385))
* **portal:** add soul & rule template gallery to mission page ([2535f30](https://github.com/HankHuang0516/EClaw/commit/2535f30c35fa7916e88e3865ca3b81a193d65ad9))
* add soul category to Mission Control for entity personality management ([8015fe5](https://github.com/HankHuang0516/EClaw/commit/8015fe5bbda3aa8fced974425c3208554a04c39b))
* **data:** add soul-templates.json and rule-templates.json with starter templates ([0affa7b](https://github.com/HankHuang0516/EClaw/commit/0affa7b7aa272895b6058b5bad1129e442f3d82b))
* **templates:** add Soul/Rule template community contribution API ([c6fdcba](https://github.com/HankHuang0516/EClaw/commit/c6fdcba5076d34dd85a94293a30b875e8a243b34))
* **android:** add SoulGalleryDialog and RuleGalleryDialog ([5a3142a](https://github.com/HankHuang0516/EClaw/commit/5a3142af3f67dfa4c4ba9473a4381f89e04aee24))
* **skill-templates:** add structural validation to contribute endpoint ([891327d](https://github.com/HankHuang0516/EClaw/commit/891327dc02dbd3d2a8bbbf254d596cdb33fca3ed))
* add system prompt hint in bot-to-bot push notifications ([08d9562](https://github.com/HankHuang0516/EClaw/commit/08d95626cfe0be3f3ffe82eff1d4ccdebedac9ee))
* **scheduler:** add Taiwan time to missionHints + timezone update support ([20f50f7](https://github.com/HankHuang0516/EClaw/commit/20f50f746867c20933c58fd20d3051a41f445af3))
* add telemetry SDK for Web + Android with auto-capture ([1a2da97](https://github.com/HankHuang0516/EClaw/commit/1a2da97fa7ba5077aab6435ad7f71f9bfbef92bb))
* add temporary /api/server-ip endpoint for TapPay IP whitelist ([13ca34c](https://github.com/HankHuang0516/EClaw/commit/13ca34c59379edf5abb585cccc52c7696258ef6b))
* add video sending support to chat with streaming playback ([c6e9da6](https://github.com/HankHuang0516/EClaw/commit/c6e9da6e7ac16f59effc07d5a78e4c39707e4df7))
* add webhook troubleshooting FAQ page, unify error messages ([5d47055](https://github.com/HankHuang0516/EClaw/commit/5d47055a8fe09074a4fec330897706567a2b47fc))
* add WebSocket transport for OpenClaw gateways with SETUP_PASSWORD ([053ba83](https://github.com/HankHuang0516/EClaw/commit/053ba838aaba4fc7c8f4c2bec4c4e7791610be57))
* **templates:** add Wise Mentor soul and Brevity First rule templates ([f1494fd](https://github.com/HankHuang0516/EClaw/commit/f1494fde800c03fe2c650bda26fc87df36f9dd8d))
* add XP/Level system for entities ([6b1dae3](https://github.com/HankHuang0516/EClaw/commit/6b1dae3270e168f66943e509267e78d0c8f0ca8b))
* **info:** add 實用案例 category with Claude x OpenClaw guide ([94475ea](https://github.com/HankHuang0516/EClaw/commit/94475eaf8c8f0cf9cc2068d6edff14b9036f136d))
* AI chat can query user's server logs without asking for credentials ([ef66011](https://github.com/HankHuang0516/EClaw/commit/ef66011acf0bc1c565e4040c9dfd4169b4b30b29))
* AI chat enhancements — feedback entry, image support, Android app ([ebf3bc5](https://github.com/HankHuang0516/EClaw/commit/ebf3bc5b245229e1eb7baa75e73966839d7ab145))
* AI chat runs in background — survives page refresh and navigation ([90ed8c1](https://github.com/HankHuang0516/EClaw/commit/90ed8c19128f23c478f2c93970359a2e07fd4731))
* **portal:** always show requiredVars dialog with read/overwrite UX ([42e5e47](https://github.com/HankHuang0516/EClaw/commit/42e5e4774373f1bb764c32e6dfacdae0c7b47ae9))
* Android Channel API display + OpenClaw metadata + backend auth fix ([d6f42e3](https://github.com/HankHuang0516/EClaw/commit/d6f42e3cbce4c1eea3556ea918cb82a7047100ed))
* Android chat media support (photo/voice) ([f82ea4b](https://github.com/HankHuang0516/EClaw/commit/f82ea4baa875fa3ecd7ba276a6d7f72d2a6e629d))
* assign public_code to free bot bindings ([38017e6](https://github.com/HankHuang0516/EClaw/commit/38017e683f0b1a7d7e700c49d6136f686fe8219c))
* async AI chat with direct Anthropic API + error handling ([4e9587a](https://github.com/HankHuang0516/EClaw/commit/4e9587af007cc6cc28974ac35a6cf1daf43ac46b))
* **skill-templates:** auto-approve pipeline + admin contributions UI ([5f94ea1](https://github.com/HankHuang0516/EClaw/commit/5f94ea13291d6b0d4f12e563d8451402452b09b7))
* auto-create GitHub issues for user feedback via AI chat ([4d44ed7](https://github.com/HankHuang0516/EClaw/commit/4d44ed73e27ca281852047b104391b549bf9567e))
* auto-delete Railway preview environment on PR close ([cd399f6](https://github.com/HankHuang0516/EClaw/commit/cd399f66b32bde7515c2f9967c969736a1e00658))
* auto-detect outbound IP on startup for TapPay whitelist ([35e0543](https://github.com/HankHuang0516/EClaw/commit/35e0543d9d772e13d5c4475ae90a7888590eca6c))
* auto-provision channel API key on registration + settings UI ([cfb6e70](https://github.com/HankHuang0516/EClaw/commit/cfb6e70524f01d1ef3db4edcaf5b85c353953ad1))
* auto-save dashboard + split save/notify workflow ([ce84021](https://github.com/HankHuang0516/EClaw/commit/ce84021ff6838236f872b414bdfc467b6a83b928))
* **channel:** auto-select entity slot + all-slots-full error ([49b29fa](https://github.com/HankHuang0516/EClaw/commit/49b29fa0bd27fd66c3613d10d9e2e6b3a3fa4779))
* backend photo cache (max 5/device) with backup_url for bots ([10eefe5](https://github.com/HankHuang0516/EClaw/commit/10eefe5a3270f146490b705dc5b120f384bd89b2))
* bot-to-bot 已讀 delivery tracking ([9cf485e](https://github.com/HankHuang0516/EClaw/commit/9cf485e0b47bf1ea5c532de2928ade428cc901b2))
* channel callback Basic Auth for Railway WEB_PASSWORD ([cb9afb4](https://github.com/HankHuang0516/EClaw/commit/cb9afb43f77c4443499100b30da551b61ade126e))
* chat cloud sync recovery + app version in telemetry ([#123](https://github.com/HankHuang0516/EClaw/issues/123), [#124](https://github.com/HankHuang0516/EClaw/issues/124)) ([c293018](https://github.com/HankHuang0516/EClaw/commit/c2930181251b8a8a93a50450b76ef4940b99a126))
* chat history with Room DB, avatar system, UI overhaul ([7480b27](https://github.com/HankHuang0516/EClaw/commit/7480b27f86626ec3d6b8e6d80ff2385b30b6345b))
* collapsible notification preferences section in settings ([9b01eba](https://github.com/HankHuang0516/EClaw/commit/9b01eba6ba395fb6c84414e824d36c84a6e0222b))
* complete E-Claw vs Telegram comparison with all 12 categories ([edf1a5a](https://github.com/HankHuang0516/EClaw/commit/edf1a5a2a4986e08bc04da89c4e656aac9419951))
* complete Google + Facebook OAuth social login integration ([d366d12](https://github.com/HankHuang0516/EClaw/commit/d366d1220b868d5c1dfe5e32d30be16e244c6ef0))
* connect claude-cli-proxy to Postgres for direct DB queries ([3d869c5](https://github.com/HankHuang0516/EClaw/commit/3d869c502a4f969e3e886a424e550dbc42a0fc4d))
* **android:** cross-device contacts system for chat ([975fe5a](https://github.com/HankHuang0516/EClaw/commit/975fe5a8ab8b3972a0614fe8d4ffb917cf544bca))
* cross-device contacts system with unified target bar ([e204cb2](https://github.com/HankHuang0516/EClaw/commit/e204cb2a3244fd6e60b9fff2be2937004e093b7a))
* cross-platform env vars merge mode — avoid key loss on sync ([354ba3a](https://github.com/HankHuang0516/EClaw/commit/354ba3a927c0b2e44fa2a3815af2e30ac810898c))
* detect bot gateway disconnection (pairing required) and notify device ([5a929c2](https://github.com/HankHuang0516/EClaw/commit/5a929c2e217a188a23f48211a4a484be5786bce8))
* **ai-chat:** disable image upload button while vision is unavailable ([334d618](https://github.com/HankHuang0516/EClaw/commit/334d6182f8b2212fe395bdc0254c3d6bb8a50ac5))
* **android:** draggable AI FAB with edge snap and position memory ([aaaabfe](https://github.com/HankHuang0516/EClaw/commit/aaaabfed8f409ff0f401cb9e6b76acab0e553978))
* dynamic entity chips with debug 4/8 toggle ([43b13c1](https://github.com/HankHuang0516/EClaw/commit/43b13c14f640637c1a78aaa9f1bf8facc5e0b1b5))
* dynamically show 8 entity slots for premium users on web dashboard ([ba0463f](https://github.com/HankHuang0516/EClaw/commit/ba0463fd8fc23315523d829899060f6678ae6679))
* enable AI to close GitHub issues via action system ([#98](https://github.com/HankHuang0516/EClaw/issues/98)) ([3b39445](https://github.com/HankHuang0516/EClaw/commit/3b394450a8116d845ac01b6592623e9e2385bc60))
* **proxy:** enable AI to query server logs via Bash + curl ([20d6cfa](https://github.com/HankHuang0516/EClaw/commit/20d6cfa2e6f9b1612cc16c114f01716158b9b533))
* enable Firebase Cloud Messaging (FCM) for Android push notifications ([24de393](https://github.com/HankHuang0516/EClaw/commit/24de393a6e06874e631914dd9c26571806de0b69))
* enable Railway PR preview deploy in backend-ci ([39d7447](https://github.com/HankHuang0516/EClaw/commit/39d7447c3797936c6b49a92c98892997f2fc8832))
* encrypted env vars with JIT approval via Socket.IO ([#121](https://github.com/HankHuang0516/EClaw/issues/121)) ([e247571](https://github.com/HankHuang0516/EClaw/commit/e247571b076ec0ed6d94f4cda74c1f96b2ca1713))
* enhance feedback with log snapshot capture + AI diagnostic prompt ([73b9717](https://github.com/HankHuang0516/EClaw/commit/73b97171e53e2181dff94add31b8925fc78c255d))
* entity rename from main page (web + Android) ([9419bfc](https://github.com/HankHuang0516/EClaw/commit/9419bfcb64e03f2c18ccc20b9516270db5df5fa4))
* env-vars.html sends lock as separate flag + adds security info section ([231feea](https://github.com/HankHuang0516/EClaw/commit/231feeadcad7702924119c182e3a8fb3aa13d6b3))
* expand XP system with 8 new channels + message like/dislike UI ([251d692](https://github.com/HankHuang0516/EClaw/commit/251d6929fdb940ed18af02307699bc00ce4ef4da))
* extend transfer-device to migrate all DB tables ([aefb56a](https://github.com/HankHuang0516/EClaw/commit/aefb56accaa39beeab88019b8cfebfd36a9aa43f))
* fix newline display and add link preview for chat ([#58](https://github.com/HankHuang0516/EClaw/issues/58), [#57](https://github.com/HankHuang0516/EClaw/issues/57)) ([e00ac8f](https://github.com/HankHuang0516/EClaw/commit/e00ac8f9bc4a79a12969089b97f72dafec98d521))
* fix push error UX + webhook test polling + skill doc update ([55a17a5](https://github.com/HankHuang0516/EClaw/commit/55a17a5cd0977f7070334f61210ceca8ee8bd29f))
* floating AI chat FAB on all main pages + account status card ([f35c0e9](https://github.com/HankHuang0516/EClaw/commit/f35c0e9d1c7b5b8d055cd437b8b0a85859560c53))
* full mission dashboard Bot CRUD + smart notification API hints ([21de340](https://github.com/HankHuang0516/EClaw/commit/21de340eb87e19a40eec99bd4428cb5d2e375b29))
* grant bots read-write access to mission_notes ([90194e0](https://github.com/HankHuang0516/EClaw/commit/90194e0a56f3d4d9c551adfc5fbd24dba3357080))
* implement 5 enterprise security features ([#174](https://github.com/HankHuang0516/EClaw/issues/174)-[#178](https://github.com/HankHuang0516/EClaw/issues/178)) ([320f204](https://github.com/HankHuang0516/EClaw/commit/320f204772ef24bf89e2f8527879ad488aa6859d)), closes [#176](https://github.com/HankHuang0516/EClaw/issues/176) [#177](https://github.com/HankHuang0516/EClaw/issues/177) [#175](https://github.com/HankHuang0516/EClaw/issues/175) [#175](https://github.com/HankHuang0516/EClaw/issues/175) [#176](https://github.com/HankHuang0516/EClaw/issues/176) [#177](https://github.com/HankHuang0516/EClaw/issues/177)
* implement chat history widget with ListView ([85c456d](https://github.com/HankHuang0516/EClaw/commit/85c456d9a96d6abe42847cbbb1f3cc0d2d769442))
* implement issue [#55](https://github.com/HankHuang0516/EClaw/issues/55) (task saved toast) and [#54](https://github.com/HankHuang0516/EClaw/issues/54) (schedule history + chat annotation) ([7853627](https://github.com/HankHuang0516/EClaw/commit/78536278a91d0592b2c63893eefb5bb605b1b51f))
* implement issues [#187](https://github.com/HankHuang0516/EClaw/issues/187)-[#191](https://github.com/HankHuang0516/EClaw/issues/191) — A2A compat, API docs, OAuth 2.0, SDK, gRPC ([a0b2845](https://github.com/HankHuang0516/EClaw/commit/a0b28451849076863d30813d15732f99fd2ec4ae))
* improve file manager UX - broadcast grouping, view toggle, time filter ([d57ae37](https://github.com/HankHuang0516/EClaw/commit/d57ae373698391b22168c2bdb1bae34922030236))
* include APP-only devices in admin user list ([83c637a](https://github.com/HankHuang0516/EClaw/commit/83c637af26782a990a3be2998a3bc81183360854))
* include mission dashboard API in all bot push messages ([370782f](https://github.com/HankHuang0516/EClaw/commit/370782f9ce0968456eee0ab6b0a205cf981f56b0))
* **screen-control:** increase MAX_ELEMENTS 150→300, add truncated flag ([cb5650a](https://github.com/HankHuang0516/EClaw/commit/cb5650ae55016a29d306c850b6e6fbe0c0b99c53))
* **ai-support:** inject device diagnostics into Claude chat context ([eb621dd](https://github.com/HankHuang0516/EClaw/commit/eb621dd02edb1c7724174d7b5a162f468d427912))
* inject recipient info into bot broadcast push ([#105](https://github.com/HankHuang0516/EClaw/issues/105)) ([0590851](https://github.com/HankHuang0516/EClaw/commit/059085157ff762c95b9cc7138c36469a7877f0d0))
* inject recipient info into user broadcast push ([#105](https://github.com/HankHuang0516/EClaw/issues/105)) ([1fba3e2](https://github.com/HankHuang0516/EClaw/commit/1fba3e21a4e18f13b75ae24ccda599f060bb5157))
* integrate yanhui debug KB into feedback system ([ec863ee](https://github.com/HankHuang0516/EClaw/commit/ec863ee6dbe386a9c431a2face959bc3046e27ef))
* log system errors to server_logs for AI visibility ([46de972](https://github.com/HankHuang0516/EClaw/commit/46de97208d8e5f57f18e480ff99ea78897237283))
* **soul-dialog:** merge dropdown into Gallery, unify template selection ([b9eeb41](https://github.com/HankHuang0516/EClaw/commit/b9eeb415d789243243426adf345552c7970cd8b9))
* mission notify fills actual bot credentials + add POST /todo/done endpoint ([4651f1e](https://github.com/HankHuang0516/EClaw/commit/4651f1e1582a5519375cc5a8a13ec3cb621d3204))
* mission notify saves consolidated chat bubble with per-entity delivery tracking ([99ae767](https://github.com/HankHuang0516/EClaw/commit/99ae7678afb260e5e027f1715dc6a281e1a56da1))
* move Env Variables to dedicated tab (env-vars.html) ([d1ee38d](https://github.com/HankHuang0516/EClaw/commit/d1ee38d700ed3483c610753b1f192665778f64e3))
* override mode for bot binding - auto-unbind existing before re-bind ([7b6d28a](https://github.com/HankHuang0516/EClaw/commit/7b6d28a7c7a5e49b9e92d60c197b4b7cd3e8f598)), closes [0-#2](https://github.com/0-/issues/2)
* per-device entity limit (free: 4, premium: 8) ([6be6136](https://github.com/HankHuang0516/EClaw/commit/6be61363fe1624c0b5ace4e338ca008ff30ed33e)), closes [#50](https://github.com/HankHuang0516/EClaw/issues/50) [#49](https://github.com/HankHuang0516/EClaw/issues/49) [#50](https://github.com/HankHuang0516/EClaw/issues/50)
* persist all known server IPs to PostgreSQL for TapPay whitelist ([7960bd7](https://github.com/HankHuang0516/EClaw/commit/7960bd7656b263962e2f77a5563b8b7865d8d45f))
* **ai-chat:** persist pending requestId to survive Activity recreation ([#129](https://github.com/HankHuang0516/EClaw/issues/129)) ([add3ead](https://github.com/HankHuang0516/EClaw/commit/add3ead7fb74aa66393a087e066cf07cbde748e5))
* phone remote control via Accessibility Tree ([bed8206](https://github.com/HankHuang0516/EClaw/commit/bed820609a5aecf6ec024751ccabe0c998cc73fb))
* photo caption UX + structured media in webhook push ([2a01ef4](https://github.com/HankHuang0516/EClaw/commit/2a01ef473f0f41ec50c60d1a71a03006080d7b54))
* **channel:** push NAME_CHANGED to channel bots immediately on rename ([d7992fc](https://github.com/HankHuang0516/EClaw/commit/d7992fceb50ce615887ed3fe5e5e54c4306be7e9))
* record handshake failures to PostgreSQL for analysis ([fbc1708](https://github.com/HankHuang0516/EClaw/commit/fbc1708b3f356388a38a69d081444e7cfe9a7a04))
* redesign comparison infographic with 3-column card layout ([0b35236](https://github.com/HankHuang0516/EClaw/commit/0b35236dd8c25e698d1cecef87f2eec91360861f))
* redesign feedback UI with dark theme, color-coded categories, and tracking links ([92844a4](https://github.com/HankHuang0516/EClaw/commit/92844a460cd2bb2f02f950b97f0a9ca200e0600f))
* redesign feedback UI with dark theme, highlighted categories, and feedback tracking ([f8a7c52](https://github.com/HankHuang0516/EClaw/commit/f8a7c52f060a8e226c1e0be0b60b38da8a2b7216))
* redirect root URL to /portal/ for custom domain ([4b43637](https://github.com/HankHuang0516/EClaw/commit/4b4363710f1b9b04ae480ced82447837bc3cbed1))
* reframe comparison as competitive + add iPhone/Web note & QR codes ([59e4990](https://github.com/HankHuang0516/EClaw/commit/59e4990f321505c589cd49ebb2f79c37d239e4d5))
* remove battery info and add webhook failure notification ([157548a](https://github.com/HankHuang0516/EClaw/commit/157548a960a95dbd2a14b08ae5a69688fe01f7ab))
* **cleanup:** remove pixel screenshot (Option B) feature ([a947730](https://github.com/HankHuang0516/EClaw/commit/a947730d74e6fd91acc7259db04baa6c49b5552d))
* **remote-control:** replace border with entity name indicator + fix accessibility detection ([e3f8621](https://github.com/HankHuang0516/EClaw/commit/e3f86210f1b74c2911f10f827e1d8143a92c6bac))
* replace chat photo icon with + button, support multi-file upload (100MB) ([1b7a554](https://github.com/HankHuang0516/EClaw/commit/1b7a554b36d565882c720c0a4c01f637255110b3))
* **skills:** replace placeholder templates with verified real repos ([9384751](https://github.com/HankHuang0516/EClaw/commit/9384751ff9c288225508c072ced4432f79e1fd09))
* **ui:** replace skill template chips/spinner with Gallery dialog ([b1f2782](https://github.com/HankHuang0516/EClaw/commit/b1f27826d728c9fa7f97cb601d9d928d34077493))
* restructure push notifications for 90%+ API usage rate ([cc32250](https://github.com/HankHuang0516/EClaw/commit/cc32250c146d63b69a087c6cadf17f880f2783bd))
* **logging:** route all debug messages through serverLog for /api/logs visibility ([be8ad19](https://github.com/HankHuang0516/EClaw/commit/be8ad19661fad806c5932c53790e5ce1f5f97458))
* Rules multi-entity assignment, Skills section, notify prompt + fix auto-refresh bug ([ff6dc81](https://github.com/HankHuang0516/EClaw/commit/ff6dc8102e7478fc515ed2b785e86606245efd6d))
* schedule execution history, mission control UI improvements ([5ab6197](https://github.com/HankHuang0516/EClaw/commit/5ab61979b2cc61953027a0dcfc3748afbd46e381))
* send E-Claw skill documentation to bot on official borrow binding ([301153a](https://github.com/HankHuang0516/EClaw/commit/301153a9400f583a9d2a1e3eb3e06c9b0cbb84ff))
* **channel:** send ECLAW_READY init push to bot after full bind ([656f930](https://github.com/HankHuang0516/EClaw/commit/656f93086a9832de63dc29825d829c44170cc9e7))
* send email notification when feedback status changes ([3976271](https://github.com/HankHuang0516/EClaw/commit/397627145f0f6829b413a15233600b1e12c09e1f))
* shared dashboard permissions, rule/update API, smart notify ([4be61bf](https://github.com/HankHuang0516/EClaw/commit/4be61bf5639d32c636bd8cc9a7405cfcb2cdf633))
* show entity names alongside IDs in chat (web + Android) ([717fa68](https://github.com/HankHuang0516/EClaw/commit/717fa68ccf6be4a66e078f9b6055a7e708724adf)), closes [#id](https://github.com/HankHuang0516/EClaw/issues/id)
* show payment maintenance notice for TapPay features on Web Portal ([79c3799](https://github.com/HankHuang0516/EClaw/commit/79c37995dae11aac71cff6e302bedede921f9fa3))
* show real-time AI progress during long requests ([abf0c3c](https://github.com/HankHuang0516/EClaw/commit/abf0c3c85d27b0bf66023202ee7b5af28f561cd3))
* **portal:** show template count on browse button and gallery title ([13ba042](https://github.com/HankHuang0516/EClaw/commit/13ba0422c56dc2fb894c9c4e110dbf6f245a5b4b))
* **channel:** simplify auth to API key only, remove secret requirement ([2669116](https://github.com/HankHuang0516/EClaw/commit/2669116d58952d3594a483e520cf47fd64152054))
* **info:** simplify claude-openclaw guide with full example + copy button ([d8e31e9](https://github.com/HankHuang0516/EClaw/commit/d8e31e9a3bf1b0b0dd05ef7bb7498bdcff82b335))
* skill template gallery — search, count badge, retry-on-empty ([05e5239](https://github.com/HankHuang0516/EClaw/commit/05e5239c4b95746a73123f6b4b2c24ae5427003c))
* **screen-control:** smart ime_action fallback for apps without Enter key ([a04f6f7](https://github.com/HankHuang0516/EClaw/commit/a04f6f762ab8b809a1688c5ebafc90b8c2c62e1b))
* social login (Google/Facebook) + AI chat feedback dual-track ([e7650ef](https://github.com/HankHuang0516/EClaw/commit/e7650efe030316e62e2eb3d900aa7e3a4d96f070))
* **channel:** support multiple OpenClaw plugins binding different entities ([e848866](https://github.com/HankHuang0516/EClaw/commit/e848866d6b6e9bc532cb6b45790339da9d04e413))
* UI/UX improvements - emoji avatars, floating chat, rename ([24b2855](https://github.com/HankHuang0516/EClaw/commit/24b2855c5c4b72fcc9c40668f88286184b76794b))
* unified Info Hub with embedded User Guide, FAQ, Release Notes & Compare ([2709013](https://github.com/HankHuang0516/EClaw/commit/2709013b278dd45ec196bd44cefdc5b4092bba9a)), closes [info.html#section](https://github.com/info.html/issues/section)
* unify Mission Control delete UX — tap to edit, delete inside dialog ([#114](https://github.com/HankHuang0516/EClaw/issues/114)) ([b40e0f1](https://github.com/HankHuang0516/EClaw/commit/b40e0f1df82a109428a9ed26013641c497d9b427))
* universal AI chat widget + admin assistant with repo access ([e2874d6](https://github.com/HankHuang0516/EClaw/commit/e2874d6a6186e682ed55249b1ef72a424a6139ae))
* **rebrand:** update community post intro to AI Agent collaboration ([5fb15a0](https://github.com/HankHuang0516/EClaw/commit/5fb15a0eca7911ac987686f844216f818a980e75))
* **rebrand:** update comparison page strings to AI Agent collaboration ([82171a1](https://github.com/HankHuang0516/EClaw/commit/82171a161819149f7a9977f0425e41742c816849))
* **rebrand:** update faq_a_what_is to AI Agent collaboration messaging ([a79324a](https://github.com/HankHuang0516/EClaw/commit/a79324aeefbe931e0119986ef4917a0516878bb5))
* **rebrand:** update info.html features section to AI Agent positioning ([1a7fae8](https://github.com/HankHuang0516/EClaw/commit/1a7fae8758b801a1da934eccbbad7be8d64bc9d8))
* **rebrand:** update openclaw plugin metadata to AI Agent collaboration ([96baef7](https://github.com/HankHuang0516/EClaw/commit/96baef7cb5fcf57159ad401b2ed543fef218ae5e))
* **rebrand:** update openclaw-channel README to AI Agent collaboration ([f11653f](https://github.com/HankHuang0516/EClaw/commit/f11653f11c44584e0783dddecc1fcef3dd4e8f55))
* **rebrand:** update privacy policy - replace pet terminology with AI agent ([72b487d](https://github.com/HankHuang0516/EClaw/commit/72b487d0260f5d2ece537c5c606ebb8f87dd4734))
* **rebrand:** update README and package descriptions to AI Agent collaboration ([f9efffa](https://github.com/HankHuang0516/EClaw/commit/f9efffa5179c5685023ef6d199d16f3e8018ee75))
* upgrade Android feedback UI to match web portal (category + mark bug moment) ([107ad65](https://github.com/HankHuang0516/EClaw/commit/107ad655cbd984964a05eb542afe05ce2306285c))
* use Anthropic tool use for GitHub actions instead of text parsing ([8c031c5](https://github.com/HankHuang0516/EClaw/commit/8c031c5dd7b880163c16a6e9fdf19c77890f170e))
* web chat broadcast optimization + 已讀 delivery display ([051ed88](https://github.com/HankHuang0516/EClaw/commit/051ed8809cd32b11fd48bf523e46b0a12920c654))
* web portal chat media support (photo/voice) ([36bfa15](https://github.com/HankHuang0516/EClaw/commit/36bfa15f938031c35b3a81c08982b96faf1031af))
* webhook error AlertDialog and chat message copy ([2d53bb1](https://github.com/HankHuang0516/EClaw/commit/2d53bb1c18f02fa5509e98300a400fec50d26c47))
* wire Android chat reaction buttons (like/dislike) to backend API ([#109](https://github.com/HankHuang0516/EClaw/issues/109)) ([b6227cf](https://github.com/HankHuang0516/EClaw/commit/b6227cf6e35f688802d2fe1e2d2ccceab5b7e553))
* **android:** wire SoulGalleryDialog and RuleGalleryDialog into add dialogs ([74898b3](https://github.com/HankHuang0516/EClaw/commit/74898b3d527990ea769e7f2d3ac8d32a07df9c38))


### Performance Improvements

* **claude-cli-proxy:** reduce warmup interval from 5min to 30min ([369ea6c](https://github.com/HankHuang0516/EClaw/commit/369ea6c319567a9de9292943fc50c09dce5117bd))
* screen-capture latency optimizations ([5fdfe85](https://github.com/HankHuang0516/EClaw/commit/5fdfe851db90d920e11e6a302c04fe1c443d201d))


### Reverts

* **templates:** remove manually added templates, let bot contribute via API ([b1e7914](https://github.com/HankHuang0516/EClaw/commit/b1e79143d3bc10afea36dc8fe7294011a5f75c10))
* rollback MAX_ENTITIES_PER_DEVICE to 4 ([14142ae](https://github.com/HankHuang0516/EClaw/commit/14142ae18b43ba4ebf3baa6f35cbbc8bfa27628c)), closes [#50](https://github.com/HankHuang0516/EClaw/issues/50)


### BREAKING CHANGES

* All APIs now require deviceId parameter!

Architecture change:
- Old: entitySlots[0-3] (global, shared)
- New: devices[deviceId].entities[0-3] (per-device isolation)

Key changes:
- Each device has independent 4 entity slots
- Binding codes now map to (deviceId, entityId) pairs
- Bot receives deviceId + entityId + botSecret on bind
- All APIs require deviceId parameter
- Cross-device access properly rejected (403)

Benefits:
- Unlimited devices (was limited to 4 total bindings)
- True multi-tenant isolation
- Same entityId can be used by different devices

Updated SKILL docs to v5 with new API format.
Added test_device_isolation.js for testing isolation.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>

## [1.100.1](https://github.com/HankHuang0516/EClaw/compare/v1.100.0...v1.100.1) (2026-03-13)


### Bug Fixes

* send callback_token via X-Callback-Token header alongside Basic Auth ([958d2fd](https://github.com/HankHuang0516/EClaw/commit/958d2fd9690e2694c6788c85baa54ab3e03568fe))

# [1.100.0](https://github.com/HankHuang0516/EClaw/compare/v1.99.0...v1.100.0) (2026-03-13)


### Features

* channel callback Basic Auth for Railway WEB_PASSWORD ([cb9afb4](https://github.com/HankHuang0516/EClaw/commit/cb9afb43f77c4443499100b30da551b61ade126e))

# [1.99.0](https://github.com/HankHuang0516/EClaw/compare/v1.98.0...v1.99.0) (2026-03-13)


### Features

* implement issues [#187](https://github.com/HankHuang0516/EClaw/issues/187)-[#191](https://github.com/HankHuang0516/EClaw/issues/191) — A2A compat, API docs, OAuth 2.0, SDK, gRPC ([a0b2845](https://github.com/HankHuang0516/EClaw/commit/a0b28451849076863d30813d15732f99fd2ec4ae))

# [1.98.0](https://github.com/HankHuang0516/EClaw/compare/v1.97.2...v1.98.0) (2026-03-13)


### Features

* cross-platform env vars merge mode — avoid key loss on sync ([354ba3a](https://github.com/HankHuang0516/EClaw/commit/354ba3a927c0b2e44fa2a3815af2e30ac810898c))

## [1.97.2](https://github.com/HankHuang0516/EClaw/compare/v1.97.1...v1.97.2) (2026-03-13)


### Bug Fixes

* OAuth test uses fresh token pair for refresh_token test ([392dd05](https://github.com/HankHuang0516/EClaw/commit/392dd0529b671542a7c01b095c67ebd6778c5ddc))

## [1.97.1](https://github.com/HankHuang0516/EClaw/compare/v1.97.0...v1.97.1) (2026-03-13)


### Bug Fixes

* widen OAuth access_token column from VARCHAR(256) to VARCHAR(512) ([a93da54](https://github.com/HankHuang0516/EClaw/commit/a93da54d50991908dd2b7e568b07410ac9397e2a))

# [1.97.0](https://github.com/HankHuang0516/EClaw/compare/v1.96.2...v1.97.0) (2026-03-13)


### Features

* add A2A compat layer, OAuth 2.0 server, and interactive API docs ([#187](https://github.com/HankHuang0516/EClaw/issues/187), [#189](https://github.com/HankHuang0516/EClaw/issues/189), [#190](https://github.com/HankHuang0516/EClaw/issues/190)) ([9351a9d](https://github.com/HankHuang0516/EClaw/commit/9351a9db5cf0df4aec21615a671cf5f198669f7e))

## [1.96.2](https://github.com/HankHuang0516/EClaw/compare/v1.96.1...v1.96.2) (2026-03-13)


### Bug Fixes

* test uses correct lookup and unbind endpoints ([ed3c913](https://github.com/HankHuang0516/EClaw/commit/ed3c9138bed58efcdd429095ba94b39522d248f4))

## [1.96.1](https://github.com/HankHuang0516/EClaw/compare/v1.96.0...v1.96.1) (2026-03-13)


### Bug Fixes

* prevent publicCode loss during entity reorder ([bd8f1f4](https://github.com/HankHuang0516/EClaw/commit/bd8f1f407aa5764fdf7a068bb4f1aeda6d9045ea))

# [1.96.0](https://github.com/HankHuang0516/EClaw/compare/v1.95.0...v1.96.0) (2026-03-13)


### Features

* auto-save dashboard + split save/notify workflow ([ce84021](https://github.com/HankHuang0516/EClaw/commit/ce84021ff6838236f872b414bdfc467b6a83b928))

# [1.95.0](https://github.com/HankHuang0516/EClaw/compare/v1.94.6...v1.95.0) (2026-03-12)


### Features

* implement 5 enterprise security features ([#174](https://github.com/HankHuang0516/EClaw/issues/174)-[#178](https://github.com/HankHuang0516/EClaw/issues/178)) ([320f204](https://github.com/HankHuang0516/EClaw/commit/320f204772ef24bf89e2f8527879ad488aa6859d)), closes [#176](https://github.com/HankHuang0516/EClaw/issues/176) [#177](https://github.com/HankHuang0516/EClaw/issues/177) [#175](https://github.com/HankHuang0516/EClaw/issues/175) [#175](https://github.com/HankHuang0516/EClaw/issues/175) [#176](https://github.com/HankHuang0516/EClaw/issues/176) [#177](https://github.com/HankHuang0516/EClaw/issues/177)
* **portal:** show template count on browse button and gallery title ([13ba042](https://github.com/HankHuang0516/EClaw/commit/13ba0422c56dc2fb894c9c4e110dbf6f245a5b4b))
* skill template gallery — search, count badge, retry-on-empty ([05e5239](https://github.com/HankHuang0516/EClaw/commit/05e5239c4b95746a73123f6b4b2c24ae5427003c))

## [1.94.6](https://github.com/HankHuang0516/EClaw/compare/v1.94.5...v1.94.6) (2026-03-12)


### Bug Fixes

* cron schedule update no longer violates NOT NULL on scheduled_at ([15e46af](https://github.com/HankHuang0516/EClaw/commit/15e46af150476bc0f2a6e0213ae5960c8e078fa1))

## [1.94.5](https://github.com/HankHuang0516/EClaw/compare/v1.94.4...v1.94.5) (2026-03-12)


### Bug Fixes

* remove extra context arg from TelemetryHelper.trackAction calls ([1f25b76](https://github.com/HankHuang0516/EClaw/commit/1f25b76183092249dcbad9239e8dca9166c71ff5))

## [1.94.4](https://github.com/HankHuang0516/EClaw/compare/v1.94.3...v1.94.4) (2026-03-11)


### Bug Fixes

* remove duplicate string resources entity_public_code and code_copied ([ba238a4](https://github.com/HankHuang0516/EClaw/commit/ba238a49dbb4d70ff7454d3a291ed3a4e0bc815e)), closes [#167](https://github.com/HankHuang0516/EClaw/issues/167)

## [1.94.3](https://github.com/HankHuang0516/EClaw/compare/v1.94.2...v1.94.3) (2026-03-11)


### Bug Fixes

* avoid gh auth login conflict when GH_TOKEN env var is set ([d94a669](https://github.com/HankHuang0516/EClaw/commit/d94a6695f9293f083376caea97d8356bdbbccd20))

## [1.94.2](https://github.com/HankHuang0516/EClaw/compare/v1.94.1...v1.94.2) (2026-03-11)


### Bug Fixes

* [#168](https://github.com/HankHuang0516/EClaw/issues/168) chat bubble text selection & [#167](https://github.com/HankHuang0516/EClaw/issues/167) entity public code display ([c89dccc](https://github.com/HankHuang0516/EClaw/commit/c89dcccdd3f00b96d18aab3d3a0d659569769e54))

## [1.94.1](https://github.com/HankHuang0516/EClaw/compare/v1.94.0...v1.94.1) (2026-03-11)


### Bug Fixes

* public code UI disappears when swapping entities in edit mode ([9150750](https://github.com/HankHuang0516/EClaw/commit/915075093f75531483b9ab9d89fc87d65fb73248))

# [1.94.0](https://github.com/HankHuang0516/EClaw/compare/v1.93.0...v1.94.0) (2026-03-11)


### Features

* add cross-device message management interface ([dd8f27a](https://github.com/HankHuang0516/EClaw/commit/dd8f27a8d63e106c4b10672355580d2e1b80d5d4))

# [1.93.0](https://github.com/HankHuang0516/realbot/compare/v1.92.2...v1.93.0) (2026-03-11)


### Bug Fixes

* hashnode tags need both name and slug fields ([b6da5e5](https://github.com/HankHuang0516/realbot/commit/b6da5e5c0e286c3a0c5fa456751c9929462f7ab2))


### Features

* add article-publisher module (Blogger OAuth + Hashnode API) ([03f3264](https://github.com/HankHuang0516/realbot/commit/03f3264ce79bed63da5e6643c018d146b61ce775))

## [1.92.2](https://github.com/HankHuang0516/realbot/compare/v1.92.1...v1.92.2) (2026-03-10)


### Bug Fixes

* **ci:** add concurrency control to semantic-release workflow ([b5e4ed3](https://github.com/HankHuang0516/realbot/commit/b5e4ed31e96fe0e505eed67b6fbb17a4e9e797cf))

## [1.92.1](https://github.com/HankHuang0516/realbot/compare/v1.92.0...v1.92.1) (2026-03-10)


### Bug Fixes

* **ci:** add setImmediate and clearImmediate to ESLint globals ([8e408f4](https://github.com/HankHuang0516/realbot/commit/8e408f4decc2ede1d03e87bf27c9d4522644fa97))
* **android:** close issues [#157](https://github.com/HankHuang0516/realbot/issues/157) [#159](https://github.com/HankHuang0516/realbot/issues/159) [#160](https://github.com/HankHuang0516/realbot/issues/160) ([94a6b92](https://github.com/HankHuang0516/realbot/commit/94a6b92e26968d54de4b065f4ef79ecdb33a846b))

# [1.3.0](https://github.com/HankHuang0516/realbot/compare/v1.2.0...v1.3.0) (2026-03-10)


### Bug Fixes

* **plugin:** add auto-reconnect with exponential backoff to openclaw-channel-eclaw v1.1.0 ([0ae83a0](https://github.com/HankHuang0516/realbot/commit/0ae83a00da24ce72afd63d59f9be828ca2df32a8))
* **debug:** add entityId bounds check in set-entity-xp ([051a1c6](https://github.com/HankHuang0516/realbot/commit/051a1c6ef1c01ec9bacd2acbfafdce24b3f17c2f))
* **skill-contribute:** add GITHUB_TOKEN support to bypass API rate limit ([51dcea3](https://github.com/HankHuang0516/realbot/commit/51dcea3a561d3a083cdf9436b9c61f688d3573fa))
* add i18n support to entire User Guide section in info.html ([1f2131a](https://github.com/HankHuang0516/realbot/commit/1f2131a90b29255075839723536dc0cc823f9d0c))
* **android:** add name/description/ruleType to SkillTemplate and fix gallery dialogs ([e0a79b7](https://github.com/HankHuang0516/realbot/commit/e0a79b76503d36e21e7dc28246e940b27791492b))
* **settings:** align copy icons to far right edge ([a735ce9](https://github.com/HankHuang0516/realbot/commit/a735ce95aabdee2f501a5589c0da2e2cb99a84c5))
* **scheduler:** append missionHints to channel scheduled message text ([f1244d6](https://github.com/HankHuang0516/realbot/commit/f1244d66c2226c04798952e41898be8a7ad8d00a))
* **api:** auto-detect entityId from botSecret in contribute endpoints ([9b3e8d1](https://github.com/HankHuang0516/realbot/commit/9b3e8d12a8084f7a4fe88363291393e6159bb47b))
* **bind:** await single-device save after binding to prevent race condition ([811b3e9](https://github.com/HankHuang0516/realbot/commit/811b3e9b250f7dee518e1f7f7cdf65c1a8dd94d8))
* **android:** close issues [#157](https://github.com/HankHuang0516/realbot/issues/157) [#159](https://github.com/HankHuang0516/realbot/issues/159) [#160](https://github.com/HankHuang0516/realbot/issues/160) ([94a6b92](https://github.com/HankHuang0516/realbot/commit/94a6b92e26968d54de4b065f4ef79ecdb33a846b))
* code review corrections — credential UI and guide accuracy ([5992dc5](https://github.com/HankHuang0516/realbot/commit/5992dc5ca0cf35adee17253f5742ed3619ec836e)), closes [#newSecretValue](https://github.com/HankHuang0516/realbot/issues/newSecretValue)
* **ios-app:** fix i18n compliance and asset config ([e952ec3](https://github.com/HankHuang0516/realbot/commit/e952ec3a0dc569565fff21fd1e3974a507822e19))
* **test:** fix reorder-channel test order array size to match device limit ([3103918](https://github.com/HankHuang0516/realbot/commit/31039180cf26e0e5f2db3292bd153be856c541f6))
* **portal:** fix XSS, broken tags, and filter consistency in soul/rule gallery ([0dd30ec](https://github.com/HankHuang0516/realbot/commit/0dd30ec0c8a358594d4c603ed5c92e7b86871226))
* Gatekeeper false positive — negative context now bypasses credential detection ([a2beb7a](https://github.com/HankHuang0516/realbot/commit/a2beb7af1120c2a027ed5548b1d7c813f691dda2))
* **admin:** i18n By/Date column headers in contribution tables ([c1caaf6](https://github.com/HankHuang0516/realbot/commit/c1caaf67d893266fca7831cf2c32a231230db4e2))
* **bind:** make /api/bind handler async to fix await syntax error ([f78d373](https://github.com/HankHuang0516/realbot/commit/f78d373e2826b710adf6a7039604d93e90a627d0))
* **api:** move skill-templates/contributions route after adminAuth definition ([4915f3d](https://github.com/HankHuang0516/realbot/commit/4915f3d8f737445f4144bd5998ff5588fb126bbb))
* **gatekeeper:** narrow fetch pattern to avoid false positives + add issue docs ([b6b2aa7](https://github.com/HankHuang0516/realbot/commit/b6b2aa77cd80b895e5620ddf940573b510731fe7))
* persist language preference to server for cross-device sync ([bd3f7f6](https://github.com/HankHuang0516/realbot/commit/bd3f7f65657434136dcf40d1f499de2924fc0c74))
* **entity:** preserve XP/level across all unbind/rebind paths ([a27bddf](https://github.com/HankHuang0516/realbot/commit/a27bddf86c15c340ffe44e6b91506b930ef7992c))
* **ai-chat:** prevent false network error when closing chat mid-request ([e787e2e](https://github.com/HankHuang0516/realbot/commit/e787e2e6c489885de8bd6a022255f32fccbe8588))
* **tests:** read TEST_ENTITY_ID from .env in bot-api-response test; add setup_broadcast_webhook.js ([0dc137c](https://github.com/HankHuang0516/realbot/commit/0dc137c85e00de20c74b0c42c7569acbaf117dae))
* **admin:** reorder By/date columns and show full datetime in contribution tables ([260b522](https://github.com/HankHuang0516/realbot/commit/260b5221407c539f6369368fe83e19120bf6d1eb))
* **bind:** reset bot-to-bot counter on rebind to prevent stale rate limits ([daea976](https://github.com/HankHuang0516/realbot/commit/daea976e44768dc65eb515d2bff4b5f400385642))
* restore template literal in set-entity-xp error message ([40a44ad](https://github.com/HankHuang0516/realbot/commit/40a44ad9abbc6f85ae7dfa981d80c8c1f7c9ea59))
* **settings:** right-align copy icon, remove eye buttons ([010ffb7](https://github.com/HankHuang0516/realbot/commit/010ffb7487fe57019423e843676752ad203c1c2d))
* **test:** shorten NEW_NAME to stay within 20-char server limit ([45a1653](https://github.com/HankHuang0516/realbot/commit/45a165359c4212b2d0851cebbfa20c19f26e81e5))
* **settings:** truncate Device ID/Secret with ellipsis, no line wrap ([94a2ea4](https://github.com/HankHuang0516/realbot/commit/94a2ea41be12a026d5149a53e779b2403558639b))
* **info:** update example template with review steps after each goal ([ba3ceb6](https://github.com/HankHuang0516/realbot/commit/ba3ceb61c3df158c43f081784958ca5cb5f7e451))
* **rebrand:** update HTML fallback strings in comparison section ([a332dbd](https://github.com/HankHuang0516/realbot/commit/a332dbd95a4069952d1eb785e3969961f0d89cf3))
* **rebrand:** update SVG and tester guide - remove pet terminology ([c27b27e](https://github.com/HankHuang0516/realbot/commit/c27b27e6fb71240a05e5a5afd1b6b8c42b3b5c41))
* **channel:** upsert device to PostgreSQL before creating channel account ([15b9b65](https://github.com/HankHuang0516/realbot/commit/15b9b65428cfeda98d974cc3a61e9fa7bc946d52))
* **admin:** use cookie auth for skill-templates/contributions endpoint ([fcefb1a](https://github.com/HankHuang0516/realbot/commit/fcefb1a0a7d295646024931bb1d6e018022d0945))
* **scheduler:** use current timestamp as default scheduled_at for cron schedules ([1610110](https://github.com/HankHuang0516/realbot/commit/1610110239212ffca506b6cbf3dec67dfb862278))
* **gatekeeper:** whitelist eclawbot.com domain + add unblock APIs ([b427e9c](https://github.com/HankHuang0516/realbot/commit/b427e9cdd738a44a7b6702256dcde43651738176))


### Features

* **backend:** add /api/platform-stats endpoint for bot daily report ([bcd090e](https://github.com/HankHuang0516/realbot/commit/bcd090e662da9f4877f957c9e5779c0cd5ae3852)), closes [#6](https://github.com/HankHuang0516/realbot/issues/6) [#6](https://github.com/HankHuang0516/realbot/issues/6) [#38842](https://github.com/HankHuang0516/realbot/issues/38842)
* **i18n:** add 160-166 missing translation keys per language for zh-CN/ja/ko/th/vi/id ([1642a92](https://github.com/HankHuang0516/realbot/commit/1642a929e6b708e5e5737d1ef71325da2b73f4df))
* add Bot Tools API (web-search & web-fetch proxy) for OpenClaw bots ([c680919](https://github.com/HankHuang0516/realbot/commit/c680919c659dbac3db53a273b43d01550d800815))
* **settings:** add copy icon for Device ID and Copy Credentials button ([35a68d7](https://github.com/HankHuang0516/realbot/commit/35a68d70044c94b643ee6a685ecb88840c008179))
* **templates:** add Creative Thinker soul and Step-by-Step Reasoning rule templates ([61e916f](https://github.com/HankHuang0516/realbot/commit/61e916feadad2683d5d774073211d54cda6de898))
* **info:** add deep linking support for guide sub-items ([e16ebb7](https://github.com/HankHuang0516/realbot/commit/e16ebb76d8fdf5d5b53ca117da92c3ea158579f6)), closes [#faq](https://github.com/HankHuang0516/realbot/issues/faq) [#release-notes](https://github.com/HankHuang0516/realbot/issues/release-notes) [#compare](https://github.com/HankHuang0516/realbot/issues/compare)
* **settings:** add Device Secret display with reveal/copy toggle ([4d4281a](https://github.com/HankHuang0516/realbot/commit/4d4281a967a87f404ca5217f32045f1ff6fb500b))
* **schedule:** add deviceSecret dual auth for schedule endpoints ([2716375](https://github.com/HankHuang0516/realbot/commit/2716375a2023b2ff259bdf7aae6051832ddc49c8))
* **android:** add fetchSoulTemplates/fetchRuleTemplates to MissionViewModel ([1c411fc](https://github.com/HankHuang0516/realbot/commit/1c411fce073055eb743d09c71f5d6ce9aed4b988))
* **skill-contribute:** add GET status endpoint for async verification feedback ([e71af93](https://github.com/HankHuang0516/realbot/commit/e71af9310223c23b786e52d24434e47aaafd9132))
* **admin:** add pagination to user list (50 per page) ([ccd5fb3](https://github.com/HankHuang0516/realbot/commit/ccd5fb35117fd978d93bc4265e904f7b8ed20a7b))
* **ios:** add React Native Expo iOS app with full feature parity ([934fe0b](https://github.com/HankHuang0516/realbot/commit/934fe0b2a35929d06fc987803eb7be7175cc4293))
* **android/i18n:** add soul & rule template gallery strings ([0a28d99](https://github.com/HankHuang0516/realbot/commit/0a28d9979ab846214683a9c3bbc76c62be69e385))
* **templates:** add Soul/Rule template community contribution API ([c6fdcba](https://github.com/HankHuang0516/realbot/commit/c6fdcba5076d34dd85a94293a30b875e8a243b34))
* **android:** add SoulGalleryDialog and RuleGalleryDialog ([5a3142a](https://github.com/HankHuang0516/realbot/commit/5a3142af3f67dfa4c4ba9473a4381f89e04aee24))
* **skill-templates:** add structural validation to contribute endpoint ([891327d](https://github.com/HankHuang0516/realbot/commit/891327dc02dbd3d2a8bbbf254d596cdb33fca3ed))
* **scheduler:** add Taiwan time to missionHints + timezone update support ([20f50f7](https://github.com/HankHuang0516/realbot/commit/20f50f746867c20933c58fd20d3051a41f445af3))
* **templates:** add Wise Mentor soul and Brevity First rule templates ([f1494fd](https://github.com/HankHuang0516/realbot/commit/f1494fde800c03fe2c650bda26fc87df36f9dd8d))
* **info:** add 實用案例 category with Claude x OpenClaw guide ([94475ea](https://github.com/HankHuang0516/realbot/commit/94475eaf8c8f0cf9cc2068d6edff14b9036f136d))
* **skill-templates:** auto-approve pipeline + admin contributions UI ([5f94ea1](https://github.com/HankHuang0516/realbot/commit/5f94ea13291d6b0d4f12e563d8451402452b09b7))
* **soul-dialog:** merge dropdown into Gallery, unify template selection ([b9eeb41](https://github.com/HankHuang0516/realbot/commit/b9eeb415d789243243426adf345552c7970cd8b9))
* **channel:** push NAME_CHANGED to channel bots immediately on rename ([d7992fc](https://github.com/HankHuang0516/realbot/commit/d7992fceb50ce615887ed3fe5e5e54c4306be7e9))
* **channel:** send ECLAW_READY init push to bot after full bind ([656f930](https://github.com/HankHuang0516/realbot/commit/656f93086a9832de63dc29825d829c44170cc9e7))
* **info:** simplify claude-openclaw guide with full example + copy button ([d8e31e9](https://github.com/HankHuang0516/realbot/commit/d8e31e9a3bf1b0b0dd05ef7bb7498bdcff82b335))
* **rebrand:** update community post intro to AI Agent collaboration ([5fb15a0](https://github.com/HankHuang0516/realbot/commit/5fb15a0eca7911ac987686f844216f818a980e75))
* **rebrand:** update comparison page strings to AI Agent collaboration ([82171a1](https://github.com/HankHuang0516/realbot/commit/82171a161819149f7a9977f0425e41742c816849))
* **rebrand:** update faq_a_what_is to AI Agent collaboration messaging ([a79324a](https://github.com/HankHuang0516/realbot/commit/a79324aeefbe931e0119986ef4917a0516878bb5))
* **rebrand:** update info.html features section to AI Agent positioning ([1a7fae8](https://github.com/HankHuang0516/realbot/commit/1a7fae8758b801a1da934eccbbad7be8d64bc9d8))
* **rebrand:** update openclaw plugin metadata to AI Agent collaboration ([96baef7](https://github.com/HankHuang0516/realbot/commit/96baef7cb5fcf57159ad401b2ed543fef218ae5e))
* **rebrand:** update openclaw-channel README to AI Agent collaboration ([f11653f](https://github.com/HankHuang0516/realbot/commit/f11653f11c44584e0783dddecc1fcef3dd4e8f55))
* **rebrand:** update privacy policy - replace pet terminology with AI agent ([72b487d](https://github.com/HankHuang0516/realbot/commit/72b487d0260f5d2ece537c5c606ebb8f87dd4734))
* **rebrand:** update README and package descriptions to AI Agent collaboration ([f9efffa](https://github.com/HankHuang0516/realbot/commit/f9efffa5179c5685023ef6d199d16f3e8018ee75))
* **android:** wire SoulGalleryDialog and RuleGalleryDialog into add dialogs ([74898b3](https://github.com/HankHuang0516/realbot/commit/74898b3d527990ea769e7f2d3ac8d32a07df9c38))


### Reverts

* **templates:** remove manually added templates, let bot contribute via API ([b1e7914](https://github.com/HankHuang0516/realbot/commit/b1e79143d3bc10afea36dc8fe7294011a5f75c10))

# [1.3.0](https://github.com/HankHuang0516/realbot/compare/v1.2.0...v1.3.0) (2026-03-10)


### Bug Fixes

* **plugin:** add auto-reconnect with exponential backoff to openclaw-channel-eclaw v1.1.0 ([0ae83a0](https://github.com/HankHuang0516/realbot/commit/0ae83a00da24ce72afd63d59f9be828ca2df32a8))
* **debug:** add entityId bounds check in set-entity-xp ([051a1c6](https://github.com/HankHuang0516/realbot/commit/051a1c6ef1c01ec9bacd2acbfafdce24b3f17c2f))
* **skill-contribute:** add GITHUB_TOKEN support to bypass API rate limit ([51dcea3](https://github.com/HankHuang0516/realbot/commit/51dcea3a561d3a083cdf9436b9c61f688d3573fa))
* add i18n support to entire User Guide section in info.html ([1f2131a](https://github.com/HankHuang0516/realbot/commit/1f2131a90b29255075839723536dc0cc823f9d0c))
* **android:** add name/description/ruleType to SkillTemplate and fix gallery dialogs ([e0a79b7](https://github.com/HankHuang0516/realbot/commit/e0a79b76503d36e21e7dc28246e940b27791492b))
* **settings:** align copy icons to far right edge ([a735ce9](https://github.com/HankHuang0516/realbot/commit/a735ce95aabdee2f501a5589c0da2e2cb99a84c5))
* **scheduler:** append missionHints to channel scheduled message text ([f1244d6](https://github.com/HankHuang0516/realbot/commit/f1244d66c2226c04798952e41898be8a7ad8d00a))
* **api:** auto-detect entityId from botSecret in contribute endpoints ([9b3e8d1](https://github.com/HankHuang0516/realbot/commit/9b3e8d12a8084f7a4fe88363291393e6159bb47b))
* **bind:** await single-device save after binding to prevent race condition ([811b3e9](https://github.com/HankHuang0516/realbot/commit/811b3e9b250f7dee518e1f7f7cdf65c1a8dd94d8))
* code review corrections — credential UI and guide accuracy ([5992dc5](https://github.com/HankHuang0516/realbot/commit/5992dc5ca0cf35adee17253f5742ed3619ec836e)), closes [#newSecretValue](https://github.com/HankHuang0516/realbot/issues/newSecretValue)
* **ios-app:** fix i18n compliance and asset config ([e952ec3](https://github.com/HankHuang0516/realbot/commit/e952ec3a0dc569565fff21fd1e3974a507822e19))
* **test:** fix reorder-channel test order array size to match device limit ([3103918](https://github.com/HankHuang0516/realbot/commit/31039180cf26e0e5f2db3292bd153be856c541f6))
* **portal:** fix XSS, broken tags, and filter consistency in soul/rule gallery ([0dd30ec](https://github.com/HankHuang0516/realbot/commit/0dd30ec0c8a358594d4c603ed5c92e7b86871226))
* Gatekeeper false positive — negative context now bypasses credential detection ([a2beb7a](https://github.com/HankHuang0516/realbot/commit/a2beb7af1120c2a027ed5548b1d7c813f691dda2))
* **admin:** i18n By/Date column headers in contribution tables ([c1caaf6](https://github.com/HankHuang0516/realbot/commit/c1caaf67d893266fca7831cf2c32a231230db4e2))
* **bind:** make /api/bind handler async to fix await syntax error ([f78d373](https://github.com/HankHuang0516/realbot/commit/f78d373e2826b710adf6a7039604d93e90a627d0))
* **api:** move skill-templates/contributions route after adminAuth definition ([4915f3d](https://github.com/HankHuang0516/realbot/commit/4915f3d8f737445f4144bd5998ff5588fb126bbb))
* **gatekeeper:** narrow fetch pattern to avoid false positives + add issue docs ([b6b2aa7](https://github.com/HankHuang0516/realbot/commit/b6b2aa77cd80b895e5620ddf940573b510731fe7))
* persist language preference to server for cross-device sync ([bd3f7f6](https://github.com/HankHuang0516/realbot/commit/bd3f7f65657434136dcf40d1f499de2924fc0c74))
* **entity:** preserve XP/level across all unbind/rebind paths ([a27bddf](https://github.com/HankHuang0516/realbot/commit/a27bddf86c15c340ffe44e6b91506b930ef7992c))
* **ai-chat:** prevent false network error when closing chat mid-request ([e787e2e](https://github.com/HankHuang0516/realbot/commit/e787e2e6c489885de8bd6a022255f32fccbe8588))
* **tests:** read TEST_ENTITY_ID from .env in bot-api-response test; add setup_broadcast_webhook.js ([0dc137c](https://github.com/HankHuang0516/realbot/commit/0dc137c85e00de20c74b0c42c7569acbaf117dae))
* **admin:** reorder By/date columns and show full datetime in contribution tables ([260b522](https://github.com/HankHuang0516/realbot/commit/260b5221407c539f6369368fe83e19120bf6d1eb))
* **bind:** reset bot-to-bot counter on rebind to prevent stale rate limits ([daea976](https://github.com/HankHuang0516/realbot/commit/daea976e44768dc65eb515d2bff4b5f400385642))
* restore template literal in set-entity-xp error message ([40a44ad](https://github.com/HankHuang0516/realbot/commit/40a44ad9abbc6f85ae7dfa981d80c8c1f7c9ea59))
* **settings:** right-align copy icon, remove eye buttons ([010ffb7](https://github.com/HankHuang0516/realbot/commit/010ffb7487fe57019423e843676752ad203c1c2d))
* **test:** shorten NEW_NAME to stay within 20-char server limit ([45a1653](https://github.com/HankHuang0516/realbot/commit/45a165359c4212b2d0851cebbfa20c19f26e81e5))
* **settings:** truncate Device ID/Secret with ellipsis, no line wrap ([94a2ea4](https://github.com/HankHuang0516/realbot/commit/94a2ea41be12a026d5149a53e779b2403558639b))
* **info:** update example template with review steps after each goal ([ba3ceb6](https://github.com/HankHuang0516/realbot/commit/ba3ceb61c3df158c43f081784958ca5cb5f7e451))
* **rebrand:** update HTML fallback strings in comparison section ([a332dbd](https://github.com/HankHuang0516/realbot/commit/a332dbd95a4069952d1eb785e3969961f0d89cf3))
* **rebrand:** update SVG and tester guide - remove pet terminology ([c27b27e](https://github.com/HankHuang0516/realbot/commit/c27b27e6fb71240a05e5a5afd1b6b8c42b3b5c41))
* **channel:** upsert device to PostgreSQL before creating channel account ([15b9b65](https://github.com/HankHuang0516/realbot/commit/15b9b65428cfeda98d974cc3a61e9fa7bc946d52))
* **admin:** use cookie auth for skill-templates/contributions endpoint ([fcefb1a](https://github.com/HankHuang0516/realbot/commit/fcefb1a0a7d295646024931bb1d6e018022d0945))
* **scheduler:** use current timestamp as default scheduled_at for cron schedules ([1610110](https://github.com/HankHuang0516/realbot/commit/1610110239212ffca506b6cbf3dec67dfb862278))
* **gatekeeper:** whitelist eclawbot.com domain + add unblock APIs ([b427e9c](https://github.com/HankHuang0516/realbot/commit/b427e9cdd738a44a7b6702256dcde43651738176))


### Features

* **backend:** add /api/platform-stats endpoint for bot daily report ([bcd090e](https://github.com/HankHuang0516/realbot/commit/bcd090e662da9f4877f957c9e5779c0cd5ae3852)), closes [#6](https://github.com/HankHuang0516/realbot/issues/6) [#6](https://github.com/HankHuang0516/realbot/issues/6) [#38842](https://github.com/HankHuang0516/realbot/issues/38842)
* **i18n:** add 160-166 missing translation keys per language for zh-CN/ja/ko/th/vi/id ([1642a92](https://github.com/HankHuang0516/realbot/commit/1642a929e6b708e5e5737d1ef71325da2b73f4df))
* add Bot Tools API (web-search & web-fetch proxy) for OpenClaw bots ([c680919](https://github.com/HankHuang0516/realbot/commit/c680919c659dbac3db53a273b43d01550d800815))
* **settings:** add copy icon for Device ID and Copy Credentials button ([35a68d7](https://github.com/HankHuang0516/realbot/commit/35a68d70044c94b643ee6a685ecb88840c008179))
* **templates:** add Creative Thinker soul and Step-by-Step Reasoning rule templates ([61e916f](https://github.com/HankHuang0516/realbot/commit/61e916feadad2683d5d774073211d54cda6de898))
* **info:** add deep linking support for guide sub-items ([e16ebb7](https://github.com/HankHuang0516/realbot/commit/e16ebb76d8fdf5d5b53ca117da92c3ea158579f6)), closes [#faq](https://github.com/HankHuang0516/realbot/issues/faq) [#release-notes](https://github.com/HankHuang0516/realbot/issues/release-notes) [#compare](https://github.com/HankHuang0516/realbot/issues/compare)
* **settings:** add Device Secret display with reveal/copy toggle ([4d4281a](https://github.com/HankHuang0516/realbot/commit/4d4281a967a87f404ca5217f32045f1ff6fb500b))
* **schedule:** add deviceSecret dual auth for schedule endpoints ([2716375](https://github.com/HankHuang0516/realbot/commit/2716375a2023b2ff259bdf7aae6051832ddc49c8))
* **android:** add fetchSoulTemplates/fetchRuleTemplates to MissionViewModel ([1c411fc](https://github.com/HankHuang0516/realbot/commit/1c411fce073055eb743d09c71f5d6ce9aed4b988))
* **skill-contribute:** add GET status endpoint for async verification feedback ([e71af93](https://github.com/HankHuang0516/realbot/commit/e71af9310223c23b786e52d24434e47aaafd9132))
* **admin:** add pagination to user list (50 per page) ([ccd5fb3](https://github.com/HankHuang0516/realbot/commit/ccd5fb35117fd978d93bc4265e904f7b8ed20a7b))
* **ios:** add React Native Expo iOS app with full feature parity ([934fe0b](https://github.com/HankHuang0516/realbot/commit/934fe0b2a35929d06fc987803eb7be7175cc4293))
* **android/i18n:** add soul & rule template gallery strings ([0a28d99](https://github.com/HankHuang0516/realbot/commit/0a28d9979ab846214683a9c3bbc76c62be69e385))
* **templates:** add Soul/Rule template community contribution API ([c6fdcba](https://github.com/HankHuang0516/realbot/commit/c6fdcba5076d34dd85a94293a30b875e8a243b34))
* **android:** add SoulGalleryDialog and RuleGalleryDialog ([5a3142a](https://github.com/HankHuang0516/realbot/commit/5a3142af3f67dfa4c4ba9473a4381f89e04aee24))
* **skill-templates:** add structural validation to contribute endpoint ([891327d](https://github.com/HankHuang0516/realbot/commit/891327dc02dbd3d2a8bbbf254d596cdb33fca3ed))
* **scheduler:** add Taiwan time to missionHints + timezone update support ([20f50f7](https://github.com/HankHuang0516/realbot/commit/20f50f746867c20933c58fd20d3051a41f445af3))
* **templates:** add Wise Mentor soul and Brevity First rule templates ([f1494fd](https://github.com/HankHuang0516/realbot/commit/f1494fde800c03fe2c650bda26fc87df36f9dd8d))
* **info:** add 實用案例 category with Claude x OpenClaw guide ([94475ea](https://github.com/HankHuang0516/realbot/commit/94475eaf8c8f0cf9cc2068d6edff14b9036f136d))
* **skill-templates:** auto-approve pipeline + admin contributions UI ([5f94ea1](https://github.com/HankHuang0516/realbot/commit/5f94ea13291d6b0d4f12e563d8451402452b09b7))
* **soul-dialog:** merge dropdown into Gallery, unify template selection ([b9eeb41](https://github.com/HankHuang0516/realbot/commit/b9eeb415d789243243426adf345552c7970cd8b9))
* **channel:** push NAME_CHANGED to channel bots immediately on rename ([d7992fc](https://github.com/HankHuang0516/realbot/commit/d7992fceb50ce615887ed3fe5e5e54c4306be7e9))
* **channel:** send ECLAW_READY init push to bot after full bind ([656f930](https://github.com/HankHuang0516/realbot/commit/656f93086a9832de63dc29825d829c44170cc9e7))
* **info:** simplify claude-openclaw guide with full example + copy button ([d8e31e9](https://github.com/HankHuang0516/realbot/commit/d8e31e9a3bf1b0b0dd05ef7bb7498bdcff82b335))
* **rebrand:** update community post intro to AI Agent collaboration ([5fb15a0](https://github.com/HankHuang0516/realbot/commit/5fb15a0eca7911ac987686f844216f818a980e75))
* **rebrand:** update comparison page strings to AI Agent collaboration ([82171a1](https://github.com/HankHuang0516/realbot/commit/82171a161819149f7a9977f0425e41742c816849))
* **rebrand:** update faq_a_what_is to AI Agent collaboration messaging ([a79324a](https://github.com/HankHuang0516/realbot/commit/a79324aeefbe931e0119986ef4917a0516878bb5))
* **rebrand:** update info.html features section to AI Agent positioning ([1a7fae8](https://github.com/HankHuang0516/realbot/commit/1a7fae8758b801a1da934eccbbad7be8d64bc9d8))
* **rebrand:** update openclaw plugin metadata to AI Agent collaboration ([96baef7](https://github.com/HankHuang0516/realbot/commit/96baef7cb5fcf57159ad401b2ed543fef218ae5e))
* **rebrand:** update openclaw-channel README to AI Agent collaboration ([f11653f](https://github.com/HankHuang0516/realbot/commit/f11653f11c44584e0783dddecc1fcef3dd4e8f55))
* **rebrand:** update privacy policy - replace pet terminology with AI agent ([72b487d](https://github.com/HankHuang0516/realbot/commit/72b487d0260f5d2ece537c5c606ebb8f87dd4734))
* **rebrand:** update README and package descriptions to AI Agent collaboration ([f9efffa](https://github.com/HankHuang0516/realbot/commit/f9efffa5179c5685023ef6d199d16f3e8018ee75))
* **android:** wire SoulGalleryDialog and RuleGalleryDialog into add dialogs ([74898b3](https://github.com/HankHuang0516/realbot/commit/74898b3d527990ea769e7f2d3ac8d32a07df9c38))


### Reverts

* **templates:** remove manually added templates, let bot contribute via API ([b1e7914](https://github.com/HankHuang0516/realbot/commit/b1e79143d3bc10afea36dc8fe7294011a5f75c10))

# [1.3.0](https://github.com/HankHuang0516/realbot/compare/v1.2.0...v1.3.0) (2026-03-10)


### Bug Fixes

* **plugin:** add auto-reconnect with exponential backoff to openclaw-channel-eclaw v1.1.0 ([0ae83a0](https://github.com/HankHuang0516/realbot/commit/0ae83a00da24ce72afd63d59f9be828ca2df32a8))
* **debug:** add entityId bounds check in set-entity-xp ([051a1c6](https://github.com/HankHuang0516/realbot/commit/051a1c6ef1c01ec9bacd2acbfafdce24b3f17c2f))
* **skill-contribute:** add GITHUB_TOKEN support to bypass API rate limit ([51dcea3](https://github.com/HankHuang0516/realbot/commit/51dcea3a561d3a083cdf9436b9c61f688d3573fa))
* add i18n support to entire User Guide section in info.html ([1f2131a](https://github.com/HankHuang0516/realbot/commit/1f2131a90b29255075839723536dc0cc823f9d0c))
* **android:** add name/description/ruleType to SkillTemplate and fix gallery dialogs ([e0a79b7](https://github.com/HankHuang0516/realbot/commit/e0a79b76503d36e21e7dc28246e940b27791492b))
* **settings:** align copy icons to far right edge ([a735ce9](https://github.com/HankHuang0516/realbot/commit/a735ce95aabdee2f501a5589c0da2e2cb99a84c5))
* **scheduler:** append missionHints to channel scheduled message text ([f1244d6](https://github.com/HankHuang0516/realbot/commit/f1244d66c2226c04798952e41898be8a7ad8d00a))
* **api:** auto-detect entityId from botSecret in contribute endpoints ([9b3e8d1](https://github.com/HankHuang0516/realbot/commit/9b3e8d12a8084f7a4fe88363291393e6159bb47b))
* **bind:** await single-device save after binding to prevent race condition ([811b3e9](https://github.com/HankHuang0516/realbot/commit/811b3e9b250f7dee518e1f7f7cdf65c1a8dd94d8))
* code review corrections — credential UI and guide accuracy ([5992dc5](https://github.com/HankHuang0516/realbot/commit/5992dc5ca0cf35adee17253f5742ed3619ec836e)), closes [#newSecretValue](https://github.com/HankHuang0516/realbot/issues/newSecretValue)
* **ios-app:** fix i18n compliance and asset config ([e952ec3](https://github.com/HankHuang0516/realbot/commit/e952ec3a0dc569565fff21fd1e3974a507822e19))
* **test:** fix reorder-channel test order array size to match device limit ([3103918](https://github.com/HankHuang0516/realbot/commit/31039180cf26e0e5f2db3292bd153be856c541f6))
* **portal:** fix XSS, broken tags, and filter consistency in soul/rule gallery ([0dd30ec](https://github.com/HankHuang0516/realbot/commit/0dd30ec0c8a358594d4c603ed5c92e7b86871226))
* **admin:** i18n By/Date column headers in contribution tables ([c1caaf6](https://github.com/HankHuang0516/realbot/commit/c1caaf67d893266fca7831cf2c32a231230db4e2))
* **bind:** make /api/bind handler async to fix await syntax error ([f78d373](https://github.com/HankHuang0516/realbot/commit/f78d373e2826b710adf6a7039604d93e90a627d0))
* **api:** move skill-templates/contributions route after adminAuth definition ([4915f3d](https://github.com/HankHuang0516/realbot/commit/4915f3d8f737445f4144bd5998ff5588fb126bbb))
* **gatekeeper:** narrow fetch pattern to avoid false positives + add issue docs ([b6b2aa7](https://github.com/HankHuang0516/realbot/commit/b6b2aa77cd80b895e5620ddf940573b510731fe7))
* persist language preference to server for cross-device sync ([bd3f7f6](https://github.com/HankHuang0516/realbot/commit/bd3f7f65657434136dcf40d1f499de2924fc0c74))
* **entity:** preserve XP/level across all unbind/rebind paths ([a27bddf](https://github.com/HankHuang0516/realbot/commit/a27bddf86c15c340ffe44e6b91506b930ef7992c))
* **ai-chat:** prevent false network error when closing chat mid-request ([e787e2e](https://github.com/HankHuang0516/realbot/commit/e787e2e6c489885de8bd6a022255f32fccbe8588))
* **tests:** read TEST_ENTITY_ID from .env in bot-api-response test; add setup_broadcast_webhook.js ([0dc137c](https://github.com/HankHuang0516/realbot/commit/0dc137c85e00de20c74b0c42c7569acbaf117dae))
* **admin:** reorder By/date columns and show full datetime in contribution tables ([260b522](https://github.com/HankHuang0516/realbot/commit/260b5221407c539f6369368fe83e19120bf6d1eb))
* **bind:** reset bot-to-bot counter on rebind to prevent stale rate limits ([daea976](https://github.com/HankHuang0516/realbot/commit/daea976e44768dc65eb515d2bff4b5f400385642))
* restore template literal in set-entity-xp error message ([40a44ad](https://github.com/HankHuang0516/realbot/commit/40a44ad9abbc6f85ae7dfa981d80c8c1f7c9ea59))
* **settings:** right-align copy icon, remove eye buttons ([010ffb7](https://github.com/HankHuang0516/realbot/commit/010ffb7487fe57019423e843676752ad203c1c2d))
* **test:** shorten NEW_NAME to stay within 20-char server limit ([45a1653](https://github.com/HankHuang0516/realbot/commit/45a165359c4212b2d0851cebbfa20c19f26e81e5))
* **settings:** truncate Device ID/Secret with ellipsis, no line wrap ([94a2ea4](https://github.com/HankHuang0516/realbot/commit/94a2ea41be12a026d5149a53e779b2403558639b))
* **info:** update example template with review steps after each goal ([ba3ceb6](https://github.com/HankHuang0516/realbot/commit/ba3ceb61c3df158c43f081784958ca5cb5f7e451))
* **rebrand:** update HTML fallback strings in comparison section ([a332dbd](https://github.com/HankHuang0516/realbot/commit/a332dbd95a4069952d1eb785e3969961f0d89cf3))
* **rebrand:** update SVG and tester guide - remove pet terminology ([c27b27e](https://github.com/HankHuang0516/realbot/commit/c27b27e6fb71240a05e5a5afd1b6b8c42b3b5c41))
* **channel:** upsert device to PostgreSQL before creating channel account ([15b9b65](https://github.com/HankHuang0516/realbot/commit/15b9b65428cfeda98d974cc3a61e9fa7bc946d52))
* **admin:** use cookie auth for skill-templates/contributions endpoint ([fcefb1a](https://github.com/HankHuang0516/realbot/commit/fcefb1a0a7d295646024931bb1d6e018022d0945))
* **scheduler:** use current timestamp as default scheduled_at for cron schedules ([1610110](https://github.com/HankHuang0516/realbot/commit/1610110239212ffca506b6cbf3dec67dfb862278))
* **gatekeeper:** whitelist eclawbot.com domain + add unblock APIs ([b427e9c](https://github.com/HankHuang0516/realbot/commit/b427e9cdd738a44a7b6702256dcde43651738176))


### Features

* **backend:** add /api/platform-stats endpoint for bot daily report ([bcd090e](https://github.com/HankHuang0516/realbot/commit/bcd090e662da9f4877f957c9e5779c0cd5ae3852)), closes [#6](https://github.com/HankHuang0516/realbot/issues/6) [#6](https://github.com/HankHuang0516/realbot/issues/6) [#38842](https://github.com/HankHuang0516/realbot/issues/38842)
* **i18n:** add 160-166 missing translation keys per language for zh-CN/ja/ko/th/vi/id ([1642a92](https://github.com/HankHuang0516/realbot/commit/1642a929e6b708e5e5737d1ef71325da2b73f4df))
* add Bot Tools API (web-search & web-fetch proxy) for OpenClaw bots ([c680919](https://github.com/HankHuang0516/realbot/commit/c680919c659dbac3db53a273b43d01550d800815))
* **settings:** add copy icon for Device ID and Copy Credentials button ([35a68d7](https://github.com/HankHuang0516/realbot/commit/35a68d70044c94b643ee6a685ecb88840c008179))
* **templates:** add Creative Thinker soul and Step-by-Step Reasoning rule templates ([61e916f](https://github.com/HankHuang0516/realbot/commit/61e916feadad2683d5d774073211d54cda6de898))
* **info:** add deep linking support for guide sub-items ([e16ebb7](https://github.com/HankHuang0516/realbot/commit/e16ebb76d8fdf5d5b53ca117da92c3ea158579f6)), closes [#faq](https://github.com/HankHuang0516/realbot/issues/faq) [#release-notes](https://github.com/HankHuang0516/realbot/issues/release-notes) [#compare](https://github.com/HankHuang0516/realbot/issues/compare)
* **settings:** add Device Secret display with reveal/copy toggle ([4d4281a](https://github.com/HankHuang0516/realbot/commit/4d4281a967a87f404ca5217f32045f1ff6fb500b))
* **schedule:** add deviceSecret dual auth for schedule endpoints ([2716375](https://github.com/HankHuang0516/realbot/commit/2716375a2023b2ff259bdf7aae6051832ddc49c8))
* **android:** add fetchSoulTemplates/fetchRuleTemplates to MissionViewModel ([1c411fc](https://github.com/HankHuang0516/realbot/commit/1c411fce073055eb743d09c71f5d6ce9aed4b988))
* **skill-contribute:** add GET status endpoint for async verification feedback ([e71af93](https://github.com/HankHuang0516/realbot/commit/e71af9310223c23b786e52d24434e47aaafd9132))
* **admin:** add pagination to user list (50 per page) ([ccd5fb3](https://github.com/HankHuang0516/realbot/commit/ccd5fb35117fd978d93bc4265e904f7b8ed20a7b))
* **ios:** add React Native Expo iOS app with full feature parity ([934fe0b](https://github.com/HankHuang0516/realbot/commit/934fe0b2a35929d06fc987803eb7be7175cc4293))
* **android/i18n:** add soul & rule template gallery strings ([0a28d99](https://github.com/HankHuang0516/realbot/commit/0a28d9979ab846214683a9c3bbc76c62be69e385))
* **templates:** add Soul/Rule template community contribution API ([c6fdcba](https://github.com/HankHuang0516/realbot/commit/c6fdcba5076d34dd85a94293a30b875e8a243b34))
* **android:** add SoulGalleryDialog and RuleGalleryDialog ([5a3142a](https://github.com/HankHuang0516/realbot/commit/5a3142af3f67dfa4c4ba9473a4381f89e04aee24))
* **skill-templates:** add structural validation to contribute endpoint ([891327d](https://github.com/HankHuang0516/realbot/commit/891327dc02dbd3d2a8bbbf254d596cdb33fca3ed))
* **scheduler:** add Taiwan time to missionHints + timezone update support ([20f50f7](https://github.com/HankHuang0516/realbot/commit/20f50f746867c20933c58fd20d3051a41f445af3))
* **templates:** add Wise Mentor soul and Brevity First rule templates ([f1494fd](https://github.com/HankHuang0516/realbot/commit/f1494fde800c03fe2c650bda26fc87df36f9dd8d))
* **info:** add 實用案例 category with Claude x OpenClaw guide ([94475ea](https://github.com/HankHuang0516/realbot/commit/94475eaf8c8f0cf9cc2068d6edff14b9036f136d))
* **skill-templates:** auto-approve pipeline + admin contributions UI ([5f94ea1](https://github.com/HankHuang0516/realbot/commit/5f94ea13291d6b0d4f12e563d8451402452b09b7))
* **soul-dialog:** merge dropdown into Gallery, unify template selection ([b9eeb41](https://github.com/HankHuang0516/realbot/commit/b9eeb415d789243243426adf345552c7970cd8b9))
* **channel:** push NAME_CHANGED to channel bots immediately on rename ([d7992fc](https://github.com/HankHuang0516/realbot/commit/d7992fceb50ce615887ed3fe5e5e54c4306be7e9))
* **channel:** send ECLAW_READY init push to bot after full bind ([656f930](https://github.com/HankHuang0516/realbot/commit/656f93086a9832de63dc29825d829c44170cc9e7))
* **info:** simplify claude-openclaw guide with full example + copy button ([d8e31e9](https://github.com/HankHuang0516/realbot/commit/d8e31e9a3bf1b0b0dd05ef7bb7498bdcff82b335))
* **rebrand:** update community post intro to AI Agent collaboration ([5fb15a0](https://github.com/HankHuang0516/realbot/commit/5fb15a0eca7911ac987686f844216f818a980e75))
* **rebrand:** update comparison page strings to AI Agent collaboration ([82171a1](https://github.com/HankHuang0516/realbot/commit/82171a161819149f7a9977f0425e41742c816849))
* **rebrand:** update faq_a_what_is to AI Agent collaboration messaging ([a79324a](https://github.com/HankHuang0516/realbot/commit/a79324aeefbe931e0119986ef4917a0516878bb5))
* **rebrand:** update info.html features section to AI Agent positioning ([1a7fae8](https://github.com/HankHuang0516/realbot/commit/1a7fae8758b801a1da934eccbbad7be8d64bc9d8))
* **rebrand:** update openclaw plugin metadata to AI Agent collaboration ([96baef7](https://github.com/HankHuang0516/realbot/commit/96baef7cb5fcf57159ad401b2ed543fef218ae5e))
* **rebrand:** update openclaw-channel README to AI Agent collaboration ([f11653f](https://github.com/HankHuang0516/realbot/commit/f11653f11c44584e0783dddecc1fcef3dd4e8f55))
* **rebrand:** update privacy policy - replace pet terminology with AI agent ([72b487d](https://github.com/HankHuang0516/realbot/commit/72b487d0260f5d2ece537c5c606ebb8f87dd4734))
* **rebrand:** update README and package descriptions to AI Agent collaboration ([f9efffa](https://github.com/HankHuang0516/realbot/commit/f9efffa5179c5685023ef6d199d16f3e8018ee75))
* **android:** wire SoulGalleryDialog and RuleGalleryDialog into add dialogs ([74898b3](https://github.com/HankHuang0516/realbot/commit/74898b3d527990ea769e7f2d3ac8d32a07df9c38))


### Reverts

* **templates:** remove manually added templates, let bot contribute via API ([b1e7914](https://github.com/HankHuang0516/realbot/commit/b1e79143d3bc10afea36dc8fe7294011a5f75c10))

# [1.3.0](https://github.com/HankHuang0516/realbot/compare/v1.2.0...v1.3.0) (2026-03-10)


### Bug Fixes

* **plugin:** add auto-reconnect with exponential backoff to openclaw-channel-eclaw v1.1.0 ([0ae83a0](https://github.com/HankHuang0516/realbot/commit/0ae83a00da24ce72afd63d59f9be828ca2df32a8))
* **debug:** add entityId bounds check in set-entity-xp ([051a1c6](https://github.com/HankHuang0516/realbot/commit/051a1c6ef1c01ec9bacd2acbfafdce24b3f17c2f))
* **skill-contribute:** add GITHUB_TOKEN support to bypass API rate limit ([51dcea3](https://github.com/HankHuang0516/realbot/commit/51dcea3a561d3a083cdf9436b9c61f688d3573fa))
* add i18n support to entire User Guide section in info.html ([1f2131a](https://github.com/HankHuang0516/realbot/commit/1f2131a90b29255075839723536dc0cc823f9d0c))
* **android:** add name/description/ruleType to SkillTemplate and fix gallery dialogs ([e0a79b7](https://github.com/HankHuang0516/realbot/commit/e0a79b76503d36e21e7dc28246e940b27791492b))
* **settings:** align copy icons to far right edge ([a735ce9](https://github.com/HankHuang0516/realbot/commit/a735ce95aabdee2f501a5589c0da2e2cb99a84c5))
* **scheduler:** append missionHints to channel scheduled message text ([f1244d6](https://github.com/HankHuang0516/realbot/commit/f1244d66c2226c04798952e41898be8a7ad8d00a))
* **api:** auto-detect entityId from botSecret in contribute endpoints ([9b3e8d1](https://github.com/HankHuang0516/realbot/commit/9b3e8d12a8084f7a4fe88363291393e6159bb47b))
* **bind:** await single-device save after binding to prevent race condition ([811b3e9](https://github.com/HankHuang0516/realbot/commit/811b3e9b250f7dee518e1f7f7cdf65c1a8dd94d8))
* code review corrections — credential UI and guide accuracy ([5992dc5](https://github.com/HankHuang0516/realbot/commit/5992dc5ca0cf35adee17253f5742ed3619ec836e)), closes [#newSecretValue](https://github.com/HankHuang0516/realbot/issues/newSecretValue)
* **ios-app:** fix i18n compliance and asset config ([e952ec3](https://github.com/HankHuang0516/realbot/commit/e952ec3a0dc569565fff21fd1e3974a507822e19))
* **test:** fix reorder-channel test order array size to match device limit ([3103918](https://github.com/HankHuang0516/realbot/commit/31039180cf26e0e5f2db3292bd153be856c541f6))
* **portal:** fix XSS, broken tags, and filter consistency in soul/rule gallery ([0dd30ec](https://github.com/HankHuang0516/realbot/commit/0dd30ec0c8a358594d4c603ed5c92e7b86871226))
* **admin:** i18n By/Date column headers in contribution tables ([c1caaf6](https://github.com/HankHuang0516/realbot/commit/c1caaf67d893266fca7831cf2c32a231230db4e2))
* **bind:** make /api/bind handler async to fix await syntax error ([f78d373](https://github.com/HankHuang0516/realbot/commit/f78d373e2826b710adf6a7039604d93e90a627d0))
* **api:** move skill-templates/contributions route after adminAuth definition ([4915f3d](https://github.com/HankHuang0516/realbot/commit/4915f3d8f737445f4144bd5998ff5588fb126bbb))
* persist language preference to server for cross-device sync ([bd3f7f6](https://github.com/HankHuang0516/realbot/commit/bd3f7f65657434136dcf40d1f499de2924fc0c74))
* **entity:** preserve XP/level across all unbind/rebind paths ([a27bddf](https://github.com/HankHuang0516/realbot/commit/a27bddf86c15c340ffe44e6b91506b930ef7992c))
* **ai-chat:** prevent false network error when closing chat mid-request ([e787e2e](https://github.com/HankHuang0516/realbot/commit/e787e2e6c489885de8bd6a022255f32fccbe8588))
* **tests:** read TEST_ENTITY_ID from .env in bot-api-response test; add setup_broadcast_webhook.js ([0dc137c](https://github.com/HankHuang0516/realbot/commit/0dc137c85e00de20c74b0c42c7569acbaf117dae))
* **admin:** reorder By/date columns and show full datetime in contribution tables ([260b522](https://github.com/HankHuang0516/realbot/commit/260b5221407c539f6369368fe83e19120bf6d1eb))
* **bind:** reset bot-to-bot counter on rebind to prevent stale rate limits ([daea976](https://github.com/HankHuang0516/realbot/commit/daea976e44768dc65eb515d2bff4b5f400385642))
* restore template literal in set-entity-xp error message ([40a44ad](https://github.com/HankHuang0516/realbot/commit/40a44ad9abbc6f85ae7dfa981d80c8c1f7c9ea59))
* **settings:** right-align copy icon, remove eye buttons ([010ffb7](https://github.com/HankHuang0516/realbot/commit/010ffb7487fe57019423e843676752ad203c1c2d))
* **test:** shorten NEW_NAME to stay within 20-char server limit ([45a1653](https://github.com/HankHuang0516/realbot/commit/45a165359c4212b2d0851cebbfa20c19f26e81e5))
* **settings:** truncate Device ID/Secret with ellipsis, no line wrap ([94a2ea4](https://github.com/HankHuang0516/realbot/commit/94a2ea41be12a026d5149a53e779b2403558639b))
* **info:** update example template with review steps after each goal ([ba3ceb6](https://github.com/HankHuang0516/realbot/commit/ba3ceb61c3df158c43f081784958ca5cb5f7e451))
* **rebrand:** update HTML fallback strings in comparison section ([a332dbd](https://github.com/HankHuang0516/realbot/commit/a332dbd95a4069952d1eb785e3969961f0d89cf3))
* **rebrand:** update SVG and tester guide - remove pet terminology ([c27b27e](https://github.com/HankHuang0516/realbot/commit/c27b27e6fb71240a05e5a5afd1b6b8c42b3b5c41))
* **channel:** upsert device to PostgreSQL before creating channel account ([15b9b65](https://github.com/HankHuang0516/realbot/commit/15b9b65428cfeda98d974cc3a61e9fa7bc946d52))
* **admin:** use cookie auth for skill-templates/contributions endpoint ([fcefb1a](https://github.com/HankHuang0516/realbot/commit/fcefb1a0a7d295646024931bb1d6e018022d0945))
* **scheduler:** use current timestamp as default scheduled_at for cron schedules ([1610110](https://github.com/HankHuang0516/realbot/commit/1610110239212ffca506b6cbf3dec67dfb862278))
* **gatekeeper:** whitelist eclawbot.com domain + add unblock APIs ([b427e9c](https://github.com/HankHuang0516/realbot/commit/b427e9cdd738a44a7b6702256dcde43651738176))


### Features

* **backend:** add /api/platform-stats endpoint for bot daily report ([bcd090e](https://github.com/HankHuang0516/realbot/commit/bcd090e662da9f4877f957c9e5779c0cd5ae3852)), closes [#6](https://github.com/HankHuang0516/realbot/issues/6) [#6](https://github.com/HankHuang0516/realbot/issues/6) [#38842](https://github.com/HankHuang0516/realbot/issues/38842)
* **i18n:** add 160-166 missing translation keys per language for zh-CN/ja/ko/th/vi/id ([1642a92](https://github.com/HankHuang0516/realbot/commit/1642a929e6b708e5e5737d1ef71325da2b73f4df))
* add Bot Tools API (web-search & web-fetch proxy) for OpenClaw bots ([c680919](https://github.com/HankHuang0516/realbot/commit/c680919c659dbac3db53a273b43d01550d800815))
* **settings:** add copy icon for Device ID and Copy Credentials button ([35a68d7](https://github.com/HankHuang0516/realbot/commit/35a68d70044c94b643ee6a685ecb88840c008179))
* **templates:** add Creative Thinker soul and Step-by-Step Reasoning rule templates ([61e916f](https://github.com/HankHuang0516/realbot/commit/61e916feadad2683d5d774073211d54cda6de898))
* **info:** add deep linking support for guide sub-items ([e16ebb7](https://github.com/HankHuang0516/realbot/commit/e16ebb76d8fdf5d5b53ca117da92c3ea158579f6)), closes [#faq](https://github.com/HankHuang0516/realbot/issues/faq) [#release-notes](https://github.com/HankHuang0516/realbot/issues/release-notes) [#compare](https://github.com/HankHuang0516/realbot/issues/compare)
* **settings:** add Device Secret display with reveal/copy toggle ([4d4281a](https://github.com/HankHuang0516/realbot/commit/4d4281a967a87f404ca5217f32045f1ff6fb500b))
* **schedule:** add deviceSecret dual auth for schedule endpoints ([2716375](https://github.com/HankHuang0516/realbot/commit/2716375a2023b2ff259bdf7aae6051832ddc49c8))
* **android:** add fetchSoulTemplates/fetchRuleTemplates to MissionViewModel ([1c411fc](https://github.com/HankHuang0516/realbot/commit/1c411fce073055eb743d09c71f5d6ce9aed4b988))
* **skill-contribute:** add GET status endpoint for async verification feedback ([e71af93](https://github.com/HankHuang0516/realbot/commit/e71af9310223c23b786e52d24434e47aaafd9132))
* **admin:** add pagination to user list (50 per page) ([ccd5fb3](https://github.com/HankHuang0516/realbot/commit/ccd5fb35117fd978d93bc4265e904f7b8ed20a7b))
* **ios:** add React Native Expo iOS app with full feature parity ([934fe0b](https://github.com/HankHuang0516/realbot/commit/934fe0b2a35929d06fc987803eb7be7175cc4293))
* **android/i18n:** add soul & rule template gallery strings ([0a28d99](https://github.com/HankHuang0516/realbot/commit/0a28d9979ab846214683a9c3bbc76c62be69e385))
* **templates:** add Soul/Rule template community contribution API ([c6fdcba](https://github.com/HankHuang0516/realbot/commit/c6fdcba5076d34dd85a94293a30b875e8a243b34))
* **android:** add SoulGalleryDialog and RuleGalleryDialog ([5a3142a](https://github.com/HankHuang0516/realbot/commit/5a3142af3f67dfa4c4ba9473a4381f89e04aee24))
* **skill-templates:** add structural validation to contribute endpoint ([891327d](https://github.com/HankHuang0516/realbot/commit/891327dc02dbd3d2a8bbbf254d596cdb33fca3ed))
* **scheduler:** add Taiwan time to missionHints + timezone update support ([20f50f7](https://github.com/HankHuang0516/realbot/commit/20f50f746867c20933c58fd20d3051a41f445af3))
* **templates:** add Wise Mentor soul and Brevity First rule templates ([f1494fd](https://github.com/HankHuang0516/realbot/commit/f1494fde800c03fe2c650bda26fc87df36f9dd8d))
* **info:** add 實用案例 category with Claude x OpenClaw guide ([94475ea](https://github.com/HankHuang0516/realbot/commit/94475eaf8c8f0cf9cc2068d6edff14b9036f136d))
* **skill-templates:** auto-approve pipeline + admin contributions UI ([5f94ea1](https://github.com/HankHuang0516/realbot/commit/5f94ea13291d6b0d4f12e563d8451402452b09b7))
* **soul-dialog:** merge dropdown into Gallery, unify template selection ([b9eeb41](https://github.com/HankHuang0516/realbot/commit/b9eeb415d789243243426adf345552c7970cd8b9))
* **channel:** push NAME_CHANGED to channel bots immediately on rename ([d7992fc](https://github.com/HankHuang0516/realbot/commit/d7992fceb50ce615887ed3fe5e5e54c4306be7e9))
* **channel:** send ECLAW_READY init push to bot after full bind ([656f930](https://github.com/HankHuang0516/realbot/commit/656f93086a9832de63dc29825d829c44170cc9e7))
* **info:** simplify claude-openclaw guide with full example + copy button ([d8e31e9](https://github.com/HankHuang0516/realbot/commit/d8e31e9a3bf1b0b0dd05ef7bb7498bdcff82b335))
* **rebrand:** update community post intro to AI Agent collaboration ([5fb15a0](https://github.com/HankHuang0516/realbot/commit/5fb15a0eca7911ac987686f844216f818a980e75))
* **rebrand:** update comparison page strings to AI Agent collaboration ([82171a1](https://github.com/HankHuang0516/realbot/commit/82171a161819149f7a9977f0425e41742c816849))
* **rebrand:** update faq_a_what_is to AI Agent collaboration messaging ([a79324a](https://github.com/HankHuang0516/realbot/commit/a79324aeefbe931e0119986ef4917a0516878bb5))
* **rebrand:** update info.html features section to AI Agent positioning ([1a7fae8](https://github.com/HankHuang0516/realbot/commit/1a7fae8758b801a1da934eccbbad7be8d64bc9d8))
* **rebrand:** update openclaw plugin metadata to AI Agent collaboration ([96baef7](https://github.com/HankHuang0516/realbot/commit/96baef7cb5fcf57159ad401b2ed543fef218ae5e))
* **rebrand:** update openclaw-channel README to AI Agent collaboration ([f11653f](https://github.com/HankHuang0516/realbot/commit/f11653f11c44584e0783dddecc1fcef3dd4e8f55))
* **rebrand:** update privacy policy - replace pet terminology with AI agent ([72b487d](https://github.com/HankHuang0516/realbot/commit/72b487d0260f5d2ece537c5c606ebb8f87dd4734))
* **rebrand:** update README and package descriptions to AI Agent collaboration ([f9efffa](https://github.com/HankHuang0516/realbot/commit/f9efffa5179c5685023ef6d199d16f3e8018ee75))
* **android:** wire SoulGalleryDialog and RuleGalleryDialog into add dialogs ([74898b3](https://github.com/HankHuang0516/realbot/commit/74898b3d527990ea769e7f2d3ac8d32a07df9c38))


### Reverts

* **templates:** remove manually added templates, let bot contribute via API ([b1e7914](https://github.com/HankHuang0516/realbot/commit/b1e79143d3bc10afea36dc8fe7294011a5f75c10))

# [1.3.0](https://github.com/HankHuang0516/realbot/compare/v1.2.0...v1.3.0) (2026-03-10)


### Bug Fixes

* **plugin:** add auto-reconnect with exponential backoff to openclaw-channel-eclaw v1.1.0 ([0ae83a0](https://github.com/HankHuang0516/realbot/commit/0ae83a00da24ce72afd63d59f9be828ca2df32a8))
* **debug:** add entityId bounds check in set-entity-xp ([051a1c6](https://github.com/HankHuang0516/realbot/commit/051a1c6ef1c01ec9bacd2acbfafdce24b3f17c2f))
* **skill-contribute:** add GITHUB_TOKEN support to bypass API rate limit ([51dcea3](https://github.com/HankHuang0516/realbot/commit/51dcea3a561d3a083cdf9436b9c61f688d3573fa))
* add i18n support to entire User Guide section in info.html ([1f2131a](https://github.com/HankHuang0516/realbot/commit/1f2131a90b29255075839723536dc0cc823f9d0c))
* **android:** add name/description/ruleType to SkillTemplate and fix gallery dialogs ([e0a79b7](https://github.com/HankHuang0516/realbot/commit/e0a79b76503d36e21e7dc28246e940b27791492b))
* **settings:** align copy icons to far right edge ([a735ce9](https://github.com/HankHuang0516/realbot/commit/a735ce95aabdee2f501a5589c0da2e2cb99a84c5))
* **scheduler:** append missionHints to channel scheduled message text ([f1244d6](https://github.com/HankHuang0516/realbot/commit/f1244d66c2226c04798952e41898be8a7ad8d00a))
* **api:** auto-detect entityId from botSecret in contribute endpoints ([9b3e8d1](https://github.com/HankHuang0516/realbot/commit/9b3e8d12a8084f7a4fe88363291393e6159bb47b))
* **bind:** await single-device save after binding to prevent race condition ([811b3e9](https://github.com/HankHuang0516/realbot/commit/811b3e9b250f7dee518e1f7f7cdf65c1a8dd94d8))
* code review corrections — credential UI and guide accuracy ([5992dc5](https://github.com/HankHuang0516/realbot/commit/5992dc5ca0cf35adee17253f5742ed3619ec836e)), closes [#newSecretValue](https://github.com/HankHuang0516/realbot/issues/newSecretValue)
* **ios-app:** fix i18n compliance and asset config ([e952ec3](https://github.com/HankHuang0516/realbot/commit/e952ec3a0dc569565fff21fd1e3974a507822e19))
* **test:** fix reorder-channel test order array size to match device limit ([3103918](https://github.com/HankHuang0516/realbot/commit/31039180cf26e0e5f2db3292bd153be856c541f6))
* **portal:** fix XSS, broken tags, and filter consistency in soul/rule gallery ([0dd30ec](https://github.com/HankHuang0516/realbot/commit/0dd30ec0c8a358594d4c603ed5c92e7b86871226))
* **admin:** i18n By/Date column headers in contribution tables ([c1caaf6](https://github.com/HankHuang0516/realbot/commit/c1caaf67d893266fca7831cf2c32a231230db4e2))
* **bind:** make /api/bind handler async to fix await syntax error ([f78d373](https://github.com/HankHuang0516/realbot/commit/f78d373e2826b710adf6a7039604d93e90a627d0))
* **api:** move skill-templates/contributions route after adminAuth definition ([4915f3d](https://github.com/HankHuang0516/realbot/commit/4915f3d8f737445f4144bd5998ff5588fb126bbb))
* persist language preference to server for cross-device sync ([bd3f7f6](https://github.com/HankHuang0516/realbot/commit/bd3f7f65657434136dcf40d1f499de2924fc0c74))
* **entity:** preserve XP/level across all unbind/rebind paths ([a27bddf](https://github.com/HankHuang0516/realbot/commit/a27bddf86c15c340ffe44e6b91506b930ef7992c))
* **ai-chat:** prevent false network error when closing chat mid-request ([e787e2e](https://github.com/HankHuang0516/realbot/commit/e787e2e6c489885de8bd6a022255f32fccbe8588))
* **tests:** read TEST_ENTITY_ID from .env in bot-api-response test; add setup_broadcast_webhook.js ([0dc137c](https://github.com/HankHuang0516/realbot/commit/0dc137c85e00de20c74b0c42c7569acbaf117dae))
* **admin:** reorder By/date columns and show full datetime in contribution tables ([260b522](https://github.com/HankHuang0516/realbot/commit/260b5221407c539f6369368fe83e19120bf6d1eb))
* **bind:** reset bot-to-bot counter on rebind to prevent stale rate limits ([daea976](https://github.com/HankHuang0516/realbot/commit/daea976e44768dc65eb515d2bff4b5f400385642))
* restore template literal in set-entity-xp error message ([40a44ad](https://github.com/HankHuang0516/realbot/commit/40a44ad9abbc6f85ae7dfa981d80c8c1f7c9ea59))
* **settings:** right-align copy icon, remove eye buttons ([010ffb7](https://github.com/HankHuang0516/realbot/commit/010ffb7487fe57019423e843676752ad203c1c2d))
* **test:** shorten NEW_NAME to stay within 20-char server limit ([45a1653](https://github.com/HankHuang0516/realbot/commit/45a165359c4212b2d0851cebbfa20c19f26e81e5))
* **settings:** truncate Device ID/Secret with ellipsis, no line wrap ([94a2ea4](https://github.com/HankHuang0516/realbot/commit/94a2ea41be12a026d5149a53e779b2403558639b))
* **info:** update example template with review steps after each goal ([ba3ceb6](https://github.com/HankHuang0516/realbot/commit/ba3ceb61c3df158c43f081784958ca5cb5f7e451))
* **rebrand:** update HTML fallback strings in comparison section ([a332dbd](https://github.com/HankHuang0516/realbot/commit/a332dbd95a4069952d1eb785e3969961f0d89cf3))
* **rebrand:** update SVG and tester guide - remove pet terminology ([c27b27e](https://github.com/HankHuang0516/realbot/commit/c27b27e6fb71240a05e5a5afd1b6b8c42b3b5c41))
* **channel:** upsert device to PostgreSQL before creating channel account ([15b9b65](https://github.com/HankHuang0516/realbot/commit/15b9b65428cfeda98d974cc3a61e9fa7bc946d52))
* **admin:** use cookie auth for skill-templates/contributions endpoint ([fcefb1a](https://github.com/HankHuang0516/realbot/commit/fcefb1a0a7d295646024931bb1d6e018022d0945))
* **scheduler:** use current timestamp as default scheduled_at for cron schedules ([1610110](https://github.com/HankHuang0516/realbot/commit/1610110239212ffca506b6cbf3dec67dfb862278))


### Features

* **backend:** add /api/platform-stats endpoint for bot daily report ([bcd090e](https://github.com/HankHuang0516/realbot/commit/bcd090e662da9f4877f957c9e5779c0cd5ae3852)), closes [#6](https://github.com/HankHuang0516/realbot/issues/6) [#6](https://github.com/HankHuang0516/realbot/issues/6) [#38842](https://github.com/HankHuang0516/realbot/issues/38842)
* **i18n:** add 160-166 missing translation keys per language for zh-CN/ja/ko/th/vi/id ([1642a92](https://github.com/HankHuang0516/realbot/commit/1642a929e6b708e5e5737d1ef71325da2b73f4df))
* add Bot Tools API (web-search & web-fetch proxy) for OpenClaw bots ([c680919](https://github.com/HankHuang0516/realbot/commit/c680919c659dbac3db53a273b43d01550d800815))
* **settings:** add copy icon for Device ID and Copy Credentials button ([35a68d7](https://github.com/HankHuang0516/realbot/commit/35a68d70044c94b643ee6a685ecb88840c008179))
* **templates:** add Creative Thinker soul and Step-by-Step Reasoning rule templates ([61e916f](https://github.com/HankHuang0516/realbot/commit/61e916feadad2683d5d774073211d54cda6de898))
* **info:** add deep linking support for guide sub-items ([e16ebb7](https://github.com/HankHuang0516/realbot/commit/e16ebb76d8fdf5d5b53ca117da92c3ea158579f6)), closes [#faq](https://github.com/HankHuang0516/realbot/issues/faq) [#release-notes](https://github.com/HankHuang0516/realbot/issues/release-notes) [#compare](https://github.com/HankHuang0516/realbot/issues/compare)
* **settings:** add Device Secret display with reveal/copy toggle ([4d4281a](https://github.com/HankHuang0516/realbot/commit/4d4281a967a87f404ca5217f32045f1ff6fb500b))
* **schedule:** add deviceSecret dual auth for schedule endpoints ([2716375](https://github.com/HankHuang0516/realbot/commit/2716375a2023b2ff259bdf7aae6051832ddc49c8))
* **android:** add fetchSoulTemplates/fetchRuleTemplates to MissionViewModel ([1c411fc](https://github.com/HankHuang0516/realbot/commit/1c411fce073055eb743d09c71f5d6ce9aed4b988))
* **skill-contribute:** add GET status endpoint for async verification feedback ([e71af93](https://github.com/HankHuang0516/realbot/commit/e71af9310223c23b786e52d24434e47aaafd9132))
* **admin:** add pagination to user list (50 per page) ([ccd5fb3](https://github.com/HankHuang0516/realbot/commit/ccd5fb35117fd978d93bc4265e904f7b8ed20a7b))
* **ios:** add React Native Expo iOS app with full feature parity ([934fe0b](https://github.com/HankHuang0516/realbot/commit/934fe0b2a35929d06fc987803eb7be7175cc4293))
* **android/i18n:** add soul & rule template gallery strings ([0a28d99](https://github.com/HankHuang0516/realbot/commit/0a28d9979ab846214683a9c3bbc76c62be69e385))
* **templates:** add Soul/Rule template community contribution API ([c6fdcba](https://github.com/HankHuang0516/realbot/commit/c6fdcba5076d34dd85a94293a30b875e8a243b34))
* **android:** add SoulGalleryDialog and RuleGalleryDialog ([5a3142a](https://github.com/HankHuang0516/realbot/commit/5a3142af3f67dfa4c4ba9473a4381f89e04aee24))
* **skill-templates:** add structural validation to contribute endpoint ([891327d](https://github.com/HankHuang0516/realbot/commit/891327dc02dbd3d2a8bbbf254d596cdb33fca3ed))
* **scheduler:** add Taiwan time to missionHints + timezone update support ([20f50f7](https://github.com/HankHuang0516/realbot/commit/20f50f746867c20933c58fd20d3051a41f445af3))
* **templates:** add Wise Mentor soul and Brevity First rule templates ([f1494fd](https://github.com/HankHuang0516/realbot/commit/f1494fde800c03fe2c650bda26fc87df36f9dd8d))
* **info:** add 實用案例 category with Claude x OpenClaw guide ([94475ea](https://github.com/HankHuang0516/realbot/commit/94475eaf8c8f0cf9cc2068d6edff14b9036f136d))
* **skill-templates:** auto-approve pipeline + admin contributions UI ([5f94ea1](https://github.com/HankHuang0516/realbot/commit/5f94ea13291d6b0d4f12e563d8451402452b09b7))
* **soul-dialog:** merge dropdown into Gallery, unify template selection ([b9eeb41](https://github.com/HankHuang0516/realbot/commit/b9eeb415d789243243426adf345552c7970cd8b9))
* **channel:** push NAME_CHANGED to channel bots immediately on rename ([d7992fc](https://github.com/HankHuang0516/realbot/commit/d7992fceb50ce615887ed3fe5e5e54c4306be7e9))
* **channel:** send ECLAW_READY init push to bot after full bind ([656f930](https://github.com/HankHuang0516/realbot/commit/656f93086a9832de63dc29825d829c44170cc9e7))
* **info:** simplify claude-openclaw guide with full example + copy button ([d8e31e9](https://github.com/HankHuang0516/realbot/commit/d8e31e9a3bf1b0b0dd05ef7bb7498bdcff82b335))
* **rebrand:** update community post intro to AI Agent collaboration ([5fb15a0](https://github.com/HankHuang0516/realbot/commit/5fb15a0eca7911ac987686f844216f818a980e75))
* **rebrand:** update comparison page strings to AI Agent collaboration ([82171a1](https://github.com/HankHuang0516/realbot/commit/82171a161819149f7a9977f0425e41742c816849))
* **rebrand:** update faq_a_what_is to AI Agent collaboration messaging ([a79324a](https://github.com/HankHuang0516/realbot/commit/a79324aeefbe931e0119986ef4917a0516878bb5))
* **rebrand:** update info.html features section to AI Agent positioning ([1a7fae8](https://github.com/HankHuang0516/realbot/commit/1a7fae8758b801a1da934eccbbad7be8d64bc9d8))
* **rebrand:** update openclaw plugin metadata to AI Agent collaboration ([96baef7](https://github.com/HankHuang0516/realbot/commit/96baef7cb5fcf57159ad401b2ed543fef218ae5e))
* **rebrand:** update openclaw-channel README to AI Agent collaboration ([f11653f](https://github.com/HankHuang0516/realbot/commit/f11653f11c44584e0783dddecc1fcef3dd4e8f55))
* **rebrand:** update privacy policy - replace pet terminology with AI agent ([72b487d](https://github.com/HankHuang0516/realbot/commit/72b487d0260f5d2ece537c5c606ebb8f87dd4734))
* **rebrand:** update README and package descriptions to AI Agent collaboration ([f9efffa](https://github.com/HankHuang0516/realbot/commit/f9efffa5179c5685023ef6d199d16f3e8018ee75))
* **android:** wire SoulGalleryDialog and RuleGalleryDialog into add dialogs ([74898b3](https://github.com/HankHuang0516/realbot/commit/74898b3d527990ea769e7f2d3ac8d32a07df9c38))


### Reverts

* **templates:** remove manually added templates, let bot contribute via API ([b1e7914](https://github.com/HankHuang0516/realbot/commit/b1e79143d3bc10afea36dc8fe7294011a5f75c10))

# [1.3.0](https://github.com/HankHuang0516/realbot/compare/v1.2.0...v1.3.0) (2026-03-10)


### Bug Fixes

* **plugin:** add auto-reconnect with exponential backoff to openclaw-channel-eclaw v1.1.0 ([0ae83a0](https://github.com/HankHuang0516/realbot/commit/0ae83a00da24ce72afd63d59f9be828ca2df32a8))
* **debug:** add entityId bounds check in set-entity-xp ([051a1c6](https://github.com/HankHuang0516/realbot/commit/051a1c6ef1c01ec9bacd2acbfafdce24b3f17c2f))
* **skill-contribute:** add GITHUB_TOKEN support to bypass API rate limit ([51dcea3](https://github.com/HankHuang0516/realbot/commit/51dcea3a561d3a083cdf9436b9c61f688d3573fa))
* add i18n support to entire User Guide section in info.html ([1f2131a](https://github.com/HankHuang0516/realbot/commit/1f2131a90b29255075839723536dc0cc823f9d0c))
* **android:** add name/description/ruleType to SkillTemplate and fix gallery dialogs ([e0a79b7](https://github.com/HankHuang0516/realbot/commit/e0a79b76503d36e21e7dc28246e940b27791492b))
* **settings:** align copy icons to far right edge ([a735ce9](https://github.com/HankHuang0516/realbot/commit/a735ce95aabdee2f501a5589c0da2e2cb99a84c5))
* **scheduler:** append missionHints to channel scheduled message text ([f1244d6](https://github.com/HankHuang0516/realbot/commit/f1244d66c2226c04798952e41898be8a7ad8d00a))
* **api:** auto-detect entityId from botSecret in contribute endpoints ([9b3e8d1](https://github.com/HankHuang0516/realbot/commit/9b3e8d12a8084f7a4fe88363291393e6159bb47b))
* **bind:** await single-device save after binding to prevent race condition ([811b3e9](https://github.com/HankHuang0516/realbot/commit/811b3e9b250f7dee518e1f7f7cdf65c1a8dd94d8))
* code review corrections — credential UI and guide accuracy ([5992dc5](https://github.com/HankHuang0516/realbot/commit/5992dc5ca0cf35adee17253f5742ed3619ec836e)), closes [#newSecretValue](https://github.com/HankHuang0516/realbot/issues/newSecretValue)
* **ios-app:** fix i18n compliance and asset config ([e952ec3](https://github.com/HankHuang0516/realbot/commit/e952ec3a0dc569565fff21fd1e3974a507822e19))
* **test:** fix reorder-channel test order array size to match device limit ([3103918](https://github.com/HankHuang0516/realbot/commit/31039180cf26e0e5f2db3292bd153be856c541f6))
* **portal:** fix XSS, broken tags, and filter consistency in soul/rule gallery ([0dd30ec](https://github.com/HankHuang0516/realbot/commit/0dd30ec0c8a358594d4c603ed5c92e7b86871226))
* **admin:** i18n By/Date column headers in contribution tables ([c1caaf6](https://github.com/HankHuang0516/realbot/commit/c1caaf67d893266fca7831cf2c32a231230db4e2))
* **bind:** make /api/bind handler async to fix await syntax error ([f78d373](https://github.com/HankHuang0516/realbot/commit/f78d373e2826b710adf6a7039604d93e90a627d0))
* **api:** move skill-templates/contributions route after adminAuth definition ([4915f3d](https://github.com/HankHuang0516/realbot/commit/4915f3d8f737445f4144bd5998ff5588fb126bbb))
* persist language preference to server for cross-device sync ([bd3f7f6](https://github.com/HankHuang0516/realbot/commit/bd3f7f65657434136dcf40d1f499de2924fc0c74))
* **entity:** preserve XP/level across all unbind/rebind paths ([a27bddf](https://github.com/HankHuang0516/realbot/commit/a27bddf86c15c340ffe44e6b91506b930ef7992c))
* **ai-chat:** prevent false network error when closing chat mid-request ([e787e2e](https://github.com/HankHuang0516/realbot/commit/e787e2e6c489885de8bd6a022255f32fccbe8588))
* **tests:** read TEST_ENTITY_ID from .env in bot-api-response test; add setup_broadcast_webhook.js ([0dc137c](https://github.com/HankHuang0516/realbot/commit/0dc137c85e00de20c74b0c42c7569acbaf117dae))
* **admin:** reorder By/date columns and show full datetime in contribution tables ([260b522](https://github.com/HankHuang0516/realbot/commit/260b5221407c539f6369368fe83e19120bf6d1eb))
* **bind:** reset bot-to-bot counter on rebind to prevent stale rate limits ([daea976](https://github.com/HankHuang0516/realbot/commit/daea976e44768dc65eb515d2bff4b5f400385642))
* restore template literal in set-entity-xp error message ([40a44ad](https://github.com/HankHuang0516/realbot/commit/40a44ad9abbc6f85ae7dfa981d80c8c1f7c9ea59))
* **settings:** right-align copy icon, remove eye buttons ([010ffb7](https://github.com/HankHuang0516/realbot/commit/010ffb7487fe57019423e843676752ad203c1c2d))
* **test:** shorten NEW_NAME to stay within 20-char server limit ([45a1653](https://github.com/HankHuang0516/realbot/commit/45a165359c4212b2d0851cebbfa20c19f26e81e5))
* **settings:** truncate Device ID/Secret with ellipsis, no line wrap ([94a2ea4](https://github.com/HankHuang0516/realbot/commit/94a2ea41be12a026d5149a53e779b2403558639b))
* **info:** update example template with review steps after each goal ([ba3ceb6](https://github.com/HankHuang0516/realbot/commit/ba3ceb61c3df158c43f081784958ca5cb5f7e451))
* **rebrand:** update HTML fallback strings in comparison section ([a332dbd](https://github.com/HankHuang0516/realbot/commit/a332dbd95a4069952d1eb785e3969961f0d89cf3))
* **rebrand:** update SVG and tester guide - remove pet terminology ([c27b27e](https://github.com/HankHuang0516/realbot/commit/c27b27e6fb71240a05e5a5afd1b6b8c42b3b5c41))
* **channel:** upsert device to PostgreSQL before creating channel account ([15b9b65](https://github.com/HankHuang0516/realbot/commit/15b9b65428cfeda98d974cc3a61e9fa7bc946d52))
* **admin:** use cookie auth for skill-templates/contributions endpoint ([fcefb1a](https://github.com/HankHuang0516/realbot/commit/fcefb1a0a7d295646024931bb1d6e018022d0945))
* **scheduler:** use current timestamp as default scheduled_at for cron schedules ([1610110](https://github.com/HankHuang0516/realbot/commit/1610110239212ffca506b6cbf3dec67dfb862278))


### Features

* **backend:** add /api/platform-stats endpoint for bot daily report ([bcd090e](https://github.com/HankHuang0516/realbot/commit/bcd090e662da9f4877f957c9e5779c0cd5ae3852)), closes [#6](https://github.com/HankHuang0516/realbot/issues/6) [#6](https://github.com/HankHuang0516/realbot/issues/6) [#38842](https://github.com/HankHuang0516/realbot/issues/38842)
* **i18n:** add 160-166 missing translation keys per language for zh-CN/ja/ko/th/vi/id ([1642a92](https://github.com/HankHuang0516/realbot/commit/1642a929e6b708e5e5737d1ef71325da2b73f4df))
* add Bot Tools API (web-search & web-fetch proxy) for OpenClaw bots ([c680919](https://github.com/HankHuang0516/realbot/commit/c680919c659dbac3db53a273b43d01550d800815))
* **settings:** add copy icon for Device ID and Copy Credentials button ([35a68d7](https://github.com/HankHuang0516/realbot/commit/35a68d70044c94b643ee6a685ecb88840c008179))
* **templates:** add Creative Thinker soul and Step-by-Step Reasoning rule templates ([61e916f](https://github.com/HankHuang0516/realbot/commit/61e916feadad2683d5d774073211d54cda6de898))
* **info:** add deep linking support for guide sub-items ([e16ebb7](https://github.com/HankHuang0516/realbot/commit/e16ebb76d8fdf5d5b53ca117da92c3ea158579f6)), closes [#faq](https://github.com/HankHuang0516/realbot/issues/faq) [#release-notes](https://github.com/HankHuang0516/realbot/issues/release-notes) [#compare](https://github.com/HankHuang0516/realbot/issues/compare)
* **settings:** add Device Secret display with reveal/copy toggle ([4d4281a](https://github.com/HankHuang0516/realbot/commit/4d4281a967a87f404ca5217f32045f1ff6fb500b))
* **schedule:** add deviceSecret dual auth for schedule endpoints ([2716375](https://github.com/HankHuang0516/realbot/commit/2716375a2023b2ff259bdf7aae6051832ddc49c8))
* **android:** add fetchSoulTemplates/fetchRuleTemplates to MissionViewModel ([1c411fc](https://github.com/HankHuang0516/realbot/commit/1c411fce073055eb743d09c71f5d6ce9aed4b988))
* **skill-contribute:** add GET status endpoint for async verification feedback ([e71af93](https://github.com/HankHuang0516/realbot/commit/e71af9310223c23b786e52d24434e47aaafd9132))
* **admin:** add pagination to user list (50 per page) ([ccd5fb3](https://github.com/HankHuang0516/realbot/commit/ccd5fb35117fd978d93bc4265e904f7b8ed20a7b))
* **ios:** add React Native Expo iOS app with full feature parity ([934fe0b](https://github.com/HankHuang0516/realbot/commit/934fe0b2a35929d06fc987803eb7be7175cc4293))
* **android/i18n:** add soul & rule template gallery strings ([0a28d99](https://github.com/HankHuang0516/realbot/commit/0a28d9979ab846214683a9c3bbc76c62be69e385))
* **templates:** add Soul/Rule template community contribution API ([c6fdcba](https://github.com/HankHuang0516/realbot/commit/c6fdcba5076d34dd85a94293a30b875e8a243b34))
* **android:** add SoulGalleryDialog and RuleGalleryDialog ([5a3142a](https://github.com/HankHuang0516/realbot/commit/5a3142af3f67dfa4c4ba9473a4381f89e04aee24))
* **skill-templates:** add structural validation to contribute endpoint ([891327d](https://github.com/HankHuang0516/realbot/commit/891327dc02dbd3d2a8bbbf254d596cdb33fca3ed))
* **scheduler:** add Taiwan time to missionHints + timezone update support ([20f50f7](https://github.com/HankHuang0516/realbot/commit/20f50f746867c20933c58fd20d3051a41f445af3))
* **templates:** add Wise Mentor soul and Brevity First rule templates ([f1494fd](https://github.com/HankHuang0516/realbot/commit/f1494fde800c03fe2c650bda26fc87df36f9dd8d))
* **info:** add 實用案例 category with Claude x OpenClaw guide ([94475ea](https://github.com/HankHuang0516/realbot/commit/94475eaf8c8f0cf9cc2068d6edff14b9036f136d))
* **skill-templates:** auto-approve pipeline + admin contributions UI ([5f94ea1](https://github.com/HankHuang0516/realbot/commit/5f94ea13291d6b0d4f12e563d8451402452b09b7))
* **soul-dialog:** merge dropdown into Gallery, unify template selection ([b9eeb41](https://github.com/HankHuang0516/realbot/commit/b9eeb415d789243243426adf345552c7970cd8b9))
* **channel:** push NAME_CHANGED to channel bots immediately on rename ([d7992fc](https://github.com/HankHuang0516/realbot/commit/d7992fceb50ce615887ed3fe5e5e54c4306be7e9))
* **channel:** send ECLAW_READY init push to bot after full bind ([656f930](https://github.com/HankHuang0516/realbot/commit/656f93086a9832de63dc29825d829c44170cc9e7))
* **info:** simplify claude-openclaw guide with full example + copy button ([d8e31e9](https://github.com/HankHuang0516/realbot/commit/d8e31e9a3bf1b0b0dd05ef7bb7498bdcff82b335))
* **rebrand:** update community post intro to AI Agent collaboration ([5fb15a0](https://github.com/HankHuang0516/realbot/commit/5fb15a0eca7911ac987686f844216f818a980e75))
* **rebrand:** update comparison page strings to AI Agent collaboration ([82171a1](https://github.com/HankHuang0516/realbot/commit/82171a161819149f7a9977f0425e41742c816849))
* **rebrand:** update faq_a_what_is to AI Agent collaboration messaging ([a79324a](https://github.com/HankHuang0516/realbot/commit/a79324aeefbe931e0119986ef4917a0516878bb5))
* **rebrand:** update info.html features section to AI Agent positioning ([1a7fae8](https://github.com/HankHuang0516/realbot/commit/1a7fae8758b801a1da934eccbbad7be8d64bc9d8))
* **rebrand:** update openclaw plugin metadata to AI Agent collaboration ([96baef7](https://github.com/HankHuang0516/realbot/commit/96baef7cb5fcf57159ad401b2ed543fef218ae5e))
* **rebrand:** update openclaw-channel README to AI Agent collaboration ([f11653f](https://github.com/HankHuang0516/realbot/commit/f11653f11c44584e0783dddecc1fcef3dd4e8f55))
* **rebrand:** update privacy policy - replace pet terminology with AI agent ([72b487d](https://github.com/HankHuang0516/realbot/commit/72b487d0260f5d2ece537c5c606ebb8f87dd4734))
* **rebrand:** update README and package descriptions to AI Agent collaboration ([f9efffa](https://github.com/HankHuang0516/realbot/commit/f9efffa5179c5685023ef6d199d16f3e8018ee75))
* **android:** wire SoulGalleryDialog and RuleGalleryDialog into add dialogs ([74898b3](https://github.com/HankHuang0516/realbot/commit/74898b3d527990ea769e7f2d3ac8d32a07df9c38))


### Reverts

* **templates:** remove manually added templates, let bot contribute via API ([b1e7914](https://github.com/HankHuang0516/realbot/commit/b1e79143d3bc10afea36dc8fe7294011a5f75c10))

# [1.3.0](https://github.com/HankHuang0516/realbot/compare/v1.2.0...v1.3.0) (2026-03-10)


### Bug Fixes

* **plugin:** add auto-reconnect with exponential backoff to openclaw-channel-eclaw v1.1.0 ([0ae83a0](https://github.com/HankHuang0516/realbot/commit/0ae83a00da24ce72afd63d59f9be828ca2df32a8))
* **debug:** add entityId bounds check in set-entity-xp ([051a1c6](https://github.com/HankHuang0516/realbot/commit/051a1c6ef1c01ec9bacd2acbfafdce24b3f17c2f))
* **skill-contribute:** add GITHUB_TOKEN support to bypass API rate limit ([51dcea3](https://github.com/HankHuang0516/realbot/commit/51dcea3a561d3a083cdf9436b9c61f688d3573fa))
* add i18n support to entire User Guide section in info.html ([1f2131a](https://github.com/HankHuang0516/realbot/commit/1f2131a90b29255075839723536dc0cc823f9d0c))
* **android:** add name/description/ruleType to SkillTemplate and fix gallery dialogs ([e0a79b7](https://github.com/HankHuang0516/realbot/commit/e0a79b76503d36e21e7dc28246e940b27791492b))
* **settings:** align copy icons to far right edge ([a735ce9](https://github.com/HankHuang0516/realbot/commit/a735ce95aabdee2f501a5589c0da2e2cb99a84c5))
* **scheduler:** append missionHints to channel scheduled message text ([f1244d6](https://github.com/HankHuang0516/realbot/commit/f1244d66c2226c04798952e41898be8a7ad8d00a))
* **api:** auto-detect entityId from botSecret in contribute endpoints ([9b3e8d1](https://github.com/HankHuang0516/realbot/commit/9b3e8d12a8084f7a4fe88363291393e6159bb47b))
* **bind:** await single-device save after binding to prevent race condition ([811b3e9](https://github.com/HankHuang0516/realbot/commit/811b3e9b250f7dee518e1f7f7cdf65c1a8dd94d8))
* code review corrections — credential UI and guide accuracy ([5992dc5](https://github.com/HankHuang0516/realbot/commit/5992dc5ca0cf35adee17253f5742ed3619ec836e)), closes [#newSecretValue](https://github.com/HankHuang0516/realbot/issues/newSecretValue)
* **ios-app:** fix i18n compliance and asset config ([e952ec3](https://github.com/HankHuang0516/realbot/commit/e952ec3a0dc569565fff21fd1e3974a507822e19))
* **test:** fix reorder-channel test order array size to match device limit ([3103918](https://github.com/HankHuang0516/realbot/commit/31039180cf26e0e5f2db3292bd153be856c541f6))
* **portal:** fix XSS, broken tags, and filter consistency in soul/rule gallery ([0dd30ec](https://github.com/HankHuang0516/realbot/commit/0dd30ec0c8a358594d4c603ed5c92e7b86871226))
* **admin:** i18n By/Date column headers in contribution tables ([c1caaf6](https://github.com/HankHuang0516/realbot/commit/c1caaf67d893266fca7831cf2c32a231230db4e2))
* **bind:** make /api/bind handler async to fix await syntax error ([f78d373](https://github.com/HankHuang0516/realbot/commit/f78d373e2826b710adf6a7039604d93e90a627d0))
* **api:** move skill-templates/contributions route after adminAuth definition ([4915f3d](https://github.com/HankHuang0516/realbot/commit/4915f3d8f737445f4144bd5998ff5588fb126bbb))
* persist language preference to server for cross-device sync ([bd3f7f6](https://github.com/HankHuang0516/realbot/commit/bd3f7f65657434136dcf40d1f499de2924fc0c74))
* **entity:** preserve XP/level across all unbind/rebind paths ([a27bddf](https://github.com/HankHuang0516/realbot/commit/a27bddf86c15c340ffe44e6b91506b930ef7992c))
* **ai-chat:** prevent false network error when closing chat mid-request ([e787e2e](https://github.com/HankHuang0516/realbot/commit/e787e2e6c489885de8bd6a022255f32fccbe8588))
* **tests:** read TEST_ENTITY_ID from .env in bot-api-response test; add setup_broadcast_webhook.js ([0dc137c](https://github.com/HankHuang0516/realbot/commit/0dc137c85e00de20c74b0c42c7569acbaf117dae))
* **admin:** reorder By/date columns and show full datetime in contribution tables ([260b522](https://github.com/HankHuang0516/realbot/commit/260b5221407c539f6369368fe83e19120bf6d1eb))
* **bind:** reset bot-to-bot counter on rebind to prevent stale rate limits ([daea976](https://github.com/HankHuang0516/realbot/commit/daea976e44768dc65eb515d2bff4b5f400385642))
* restore template literal in set-entity-xp error message ([40a44ad](https://github.com/HankHuang0516/realbot/commit/40a44ad9abbc6f85ae7dfa981d80c8c1f7c9ea59))
* **settings:** right-align copy icon, remove eye buttons ([010ffb7](https://github.com/HankHuang0516/realbot/commit/010ffb7487fe57019423e843676752ad203c1c2d))
* **test:** shorten NEW_NAME to stay within 20-char server limit ([45a1653](https://github.com/HankHuang0516/realbot/commit/45a165359c4212b2d0851cebbfa20c19f26e81e5))
* **settings:** truncate Device ID/Secret with ellipsis, no line wrap ([94a2ea4](https://github.com/HankHuang0516/realbot/commit/94a2ea41be12a026d5149a53e779b2403558639b))
* **info:** update example template with review steps after each goal ([ba3ceb6](https://github.com/HankHuang0516/realbot/commit/ba3ceb61c3df158c43f081784958ca5cb5f7e451))
* **rebrand:** update HTML fallback strings in comparison section ([a332dbd](https://github.com/HankHuang0516/realbot/commit/a332dbd95a4069952d1eb785e3969961f0d89cf3))
* **rebrand:** update SVG and tester guide - remove pet terminology ([c27b27e](https://github.com/HankHuang0516/realbot/commit/c27b27e6fb71240a05e5a5afd1b6b8c42b3b5c41))
* **channel:** upsert device to PostgreSQL before creating channel account ([15b9b65](https://github.com/HankHuang0516/realbot/commit/15b9b65428cfeda98d974cc3a61e9fa7bc946d52))
* **admin:** use cookie auth for skill-templates/contributions endpoint ([fcefb1a](https://github.com/HankHuang0516/realbot/commit/fcefb1a0a7d295646024931bb1d6e018022d0945))
* **scheduler:** use current timestamp as default scheduled_at for cron schedules ([1610110](https://github.com/HankHuang0516/realbot/commit/1610110239212ffca506b6cbf3dec67dfb862278))


### Features

* **backend:** add /api/platform-stats endpoint for bot daily report ([bcd090e](https://github.com/HankHuang0516/realbot/commit/bcd090e662da9f4877f957c9e5779c0cd5ae3852)), closes [#6](https://github.com/HankHuang0516/realbot/issues/6) [#6](https://github.com/HankHuang0516/realbot/issues/6) [#38842](https://github.com/HankHuang0516/realbot/issues/38842)
* **i18n:** add 160-166 missing translation keys per language for zh-CN/ja/ko/th/vi/id ([1642a92](https://github.com/HankHuang0516/realbot/commit/1642a929e6b708e5e5737d1ef71325da2b73f4df))
* **settings:** add copy icon for Device ID and Copy Credentials button ([35a68d7](https://github.com/HankHuang0516/realbot/commit/35a68d70044c94b643ee6a685ecb88840c008179))
* **templates:** add Creative Thinker soul and Step-by-Step Reasoning rule templates ([61e916f](https://github.com/HankHuang0516/realbot/commit/61e916feadad2683d5d774073211d54cda6de898))
* **info:** add deep linking support for guide sub-items ([e16ebb7](https://github.com/HankHuang0516/realbot/commit/e16ebb76d8fdf5d5b53ca117da92c3ea158579f6)), closes [#faq](https://github.com/HankHuang0516/realbot/issues/faq) [#release-notes](https://github.com/HankHuang0516/realbot/issues/release-notes) [#compare](https://github.com/HankHuang0516/realbot/issues/compare)
* **settings:** add Device Secret display with reveal/copy toggle ([4d4281a](https://github.com/HankHuang0516/realbot/commit/4d4281a967a87f404ca5217f32045f1ff6fb500b))
* **schedule:** add deviceSecret dual auth for schedule endpoints ([2716375](https://github.com/HankHuang0516/realbot/commit/2716375a2023b2ff259bdf7aae6051832ddc49c8))
* **android:** add fetchSoulTemplates/fetchRuleTemplates to MissionViewModel ([1c411fc](https://github.com/HankHuang0516/realbot/commit/1c411fce073055eb743d09c71f5d6ce9aed4b988))
* **skill-contribute:** add GET status endpoint for async verification feedback ([e71af93](https://github.com/HankHuang0516/realbot/commit/e71af9310223c23b786e52d24434e47aaafd9132))
* **admin:** add pagination to user list (50 per page) ([ccd5fb3](https://github.com/HankHuang0516/realbot/commit/ccd5fb35117fd978d93bc4265e904f7b8ed20a7b))
* **ios:** add React Native Expo iOS app with full feature parity ([934fe0b](https://github.com/HankHuang0516/realbot/commit/934fe0b2a35929d06fc987803eb7be7175cc4293))
* **android/i18n:** add soul & rule template gallery strings ([0a28d99](https://github.com/HankHuang0516/realbot/commit/0a28d9979ab846214683a9c3bbc76c62be69e385))
* **templates:** add Soul/Rule template community contribution API ([c6fdcba](https://github.com/HankHuang0516/realbot/commit/c6fdcba5076d34dd85a94293a30b875e8a243b34))
* **android:** add SoulGalleryDialog and RuleGalleryDialog ([5a3142a](https://github.com/HankHuang0516/realbot/commit/5a3142af3f67dfa4c4ba9473a4381f89e04aee24))
* **skill-templates:** add structural validation to contribute endpoint ([891327d](https://github.com/HankHuang0516/realbot/commit/891327dc02dbd3d2a8bbbf254d596cdb33fca3ed))
* **scheduler:** add Taiwan time to missionHints + timezone update support ([20f50f7](https://github.com/HankHuang0516/realbot/commit/20f50f746867c20933c58fd20d3051a41f445af3))
* **templates:** add Wise Mentor soul and Brevity First rule templates ([f1494fd](https://github.com/HankHuang0516/realbot/commit/f1494fde800c03fe2c650bda26fc87df36f9dd8d))
* **info:** add 實用案例 category with Claude x OpenClaw guide ([94475ea](https://github.com/HankHuang0516/realbot/commit/94475eaf8c8f0cf9cc2068d6edff14b9036f136d))
* **skill-templates:** auto-approve pipeline + admin contributions UI ([5f94ea1](https://github.com/HankHuang0516/realbot/commit/5f94ea13291d6b0d4f12e563d8451402452b09b7))
* **soul-dialog:** merge dropdown into Gallery, unify template selection ([b9eeb41](https://github.com/HankHuang0516/realbot/commit/b9eeb415d789243243426adf345552c7970cd8b9))
* **channel:** push NAME_CHANGED to channel bots immediately on rename ([d7992fc](https://github.com/HankHuang0516/realbot/commit/d7992fceb50ce615887ed3fe5e5e54c4306be7e9))
* **channel:** send ECLAW_READY init push to bot after full bind ([656f930](https://github.com/HankHuang0516/realbot/commit/656f93086a9832de63dc29825d829c44170cc9e7))
* **info:** simplify claude-openclaw guide with full example + copy button ([d8e31e9](https://github.com/HankHuang0516/realbot/commit/d8e31e9a3bf1b0b0dd05ef7bb7498bdcff82b335))
* **rebrand:** update community post intro to AI Agent collaboration ([5fb15a0](https://github.com/HankHuang0516/realbot/commit/5fb15a0eca7911ac987686f844216f818a980e75))
* **rebrand:** update comparison page strings to AI Agent collaboration ([82171a1](https://github.com/HankHuang0516/realbot/commit/82171a161819149f7a9977f0425e41742c816849))
* **rebrand:** update faq_a_what_is to AI Agent collaboration messaging ([a79324a](https://github.com/HankHuang0516/realbot/commit/a79324aeefbe931e0119986ef4917a0516878bb5))
* **rebrand:** update info.html features section to AI Agent positioning ([1a7fae8](https://github.com/HankHuang0516/realbot/commit/1a7fae8758b801a1da934eccbbad7be8d64bc9d8))
* **rebrand:** update openclaw plugin metadata to AI Agent collaboration ([96baef7](https://github.com/HankHuang0516/realbot/commit/96baef7cb5fcf57159ad401b2ed543fef218ae5e))
* **rebrand:** update openclaw-channel README to AI Agent collaboration ([f11653f](https://github.com/HankHuang0516/realbot/commit/f11653f11c44584e0783dddecc1fcef3dd4e8f55))
* **rebrand:** update privacy policy - replace pet terminology with AI agent ([72b487d](https://github.com/HankHuang0516/realbot/commit/72b487d0260f5d2ece537c5c606ebb8f87dd4734))
* **rebrand:** update README and package descriptions to AI Agent collaboration ([f9efffa](https://github.com/HankHuang0516/realbot/commit/f9efffa5179c5685023ef6d199d16f3e8018ee75))
* **android:** wire SoulGalleryDialog and RuleGalleryDialog into add dialogs ([74898b3](https://github.com/HankHuang0516/realbot/commit/74898b3d527990ea769e7f2d3ac8d32a07df9c38))


### Reverts

* **templates:** remove manually added templates, let bot contribute via API ([b1e7914](https://github.com/HankHuang0516/realbot/commit/b1e79143d3bc10afea36dc8fe7294011a5f75c10))

# [1.3.0](https://github.com/HankHuang0516/realbot/compare/v1.2.0...v1.3.0) (2026-03-09)


### Bug Fixes

* **plugin:** add auto-reconnect with exponential backoff to openclaw-channel-eclaw v1.1.0 ([0ae83a0](https://github.com/HankHuang0516/realbot/commit/0ae83a00da24ce72afd63d59f9be828ca2df32a8))
* **debug:** add entityId bounds check in set-entity-xp ([051a1c6](https://github.com/HankHuang0516/realbot/commit/051a1c6ef1c01ec9bacd2acbfafdce24b3f17c2f))
* **skill-contribute:** add GITHUB_TOKEN support to bypass API rate limit ([51dcea3](https://github.com/HankHuang0516/realbot/commit/51dcea3a561d3a083cdf9436b9c61f688d3573fa))
* add i18n support to entire User Guide section in info.html ([1f2131a](https://github.com/HankHuang0516/realbot/commit/1f2131a90b29255075839723536dc0cc823f9d0c))
* **android:** add name/description/ruleType to SkillTemplate and fix gallery dialogs ([e0a79b7](https://github.com/HankHuang0516/realbot/commit/e0a79b76503d36e21e7dc28246e940b27791492b))
* **settings:** align copy icons to far right edge ([a735ce9](https://github.com/HankHuang0516/realbot/commit/a735ce95aabdee2f501a5589c0da2e2cb99a84c5))
* **scheduler:** append missionHints to channel scheduled message text ([f1244d6](https://github.com/HankHuang0516/realbot/commit/f1244d66c2226c04798952e41898be8a7ad8d00a))
* **api:** auto-detect entityId from botSecret in contribute endpoints ([9b3e8d1](https://github.com/HankHuang0516/realbot/commit/9b3e8d12a8084f7a4fe88363291393e6159bb47b))
* **bind:** await single-device save after binding to prevent race condition ([811b3e9](https://github.com/HankHuang0516/realbot/commit/811b3e9b250f7dee518e1f7f7cdf65c1a8dd94d8))
* code review corrections — credential UI and guide accuracy ([5992dc5](https://github.com/HankHuang0516/realbot/commit/5992dc5ca0cf35adee17253f5742ed3619ec836e)), closes [#newSecretValue](https://github.com/HankHuang0516/realbot/issues/newSecretValue)
* **ios-app:** fix i18n compliance and asset config ([e952ec3](https://github.com/HankHuang0516/realbot/commit/e952ec3a0dc569565fff21fd1e3974a507822e19))
* **test:** fix reorder-channel test order array size to match device limit ([3103918](https://github.com/HankHuang0516/realbot/commit/31039180cf26e0e5f2db3292bd153be856c541f6))
* **portal:** fix XSS, broken tags, and filter consistency in soul/rule gallery ([0dd30ec](https://github.com/HankHuang0516/realbot/commit/0dd30ec0c8a358594d4c603ed5c92e7b86871226))
* **admin:** i18n By/Date column headers in contribution tables ([c1caaf6](https://github.com/HankHuang0516/realbot/commit/c1caaf67d893266fca7831cf2c32a231230db4e2))
* **bind:** make /api/bind handler async to fix await syntax error ([f78d373](https://github.com/HankHuang0516/realbot/commit/f78d373e2826b710adf6a7039604d93e90a627d0))
* **api:** move skill-templates/contributions route after adminAuth definition ([4915f3d](https://github.com/HankHuang0516/realbot/commit/4915f3d8f737445f4144bd5998ff5588fb126bbb))
* persist language preference to server for cross-device sync ([bd3f7f6](https://github.com/HankHuang0516/realbot/commit/bd3f7f65657434136dcf40d1f499de2924fc0c74))
* **entity:** preserve XP/level across all unbind/rebind paths ([a27bddf](https://github.com/HankHuang0516/realbot/commit/a27bddf86c15c340ffe44e6b91506b930ef7992c))
* **ai-chat:** prevent false network error when closing chat mid-request ([e787e2e](https://github.com/HankHuang0516/realbot/commit/e787e2e6c489885de8bd6a022255f32fccbe8588))
* **tests:** read TEST_ENTITY_ID from .env in bot-api-response test; add setup_broadcast_webhook.js ([0dc137c](https://github.com/HankHuang0516/realbot/commit/0dc137c85e00de20c74b0c42c7569acbaf117dae))
* **admin:** reorder By/date columns and show full datetime in contribution tables ([260b522](https://github.com/HankHuang0516/realbot/commit/260b5221407c539f6369368fe83e19120bf6d1eb))
* **bind:** reset bot-to-bot counter on rebind to prevent stale rate limits ([daea976](https://github.com/HankHuang0516/realbot/commit/daea976e44768dc65eb515d2bff4b5f400385642))
* restore template literal in set-entity-xp error message ([40a44ad](https://github.com/HankHuang0516/realbot/commit/40a44ad9abbc6f85ae7dfa981d80c8c1f7c9ea59))
* **settings:** right-align copy icon, remove eye buttons ([010ffb7](https://github.com/HankHuang0516/realbot/commit/010ffb7487fe57019423e843676752ad203c1c2d))
* **test:** shorten NEW_NAME to stay within 20-char server limit ([45a1653](https://github.com/HankHuang0516/realbot/commit/45a165359c4212b2d0851cebbfa20c19f26e81e5))
* **settings:** truncate Device ID/Secret with ellipsis, no line wrap ([94a2ea4](https://github.com/HankHuang0516/realbot/commit/94a2ea41be12a026d5149a53e779b2403558639b))
* **info:** update example template with review steps after each goal ([ba3ceb6](https://github.com/HankHuang0516/realbot/commit/ba3ceb61c3df158c43f081784958ca5cb5f7e451))
* **rebrand:** update HTML fallback strings in comparison section ([a332dbd](https://github.com/HankHuang0516/realbot/commit/a332dbd95a4069952d1eb785e3969961f0d89cf3))
* **rebrand:** update SVG and tester guide - remove pet terminology ([c27b27e](https://github.com/HankHuang0516/realbot/commit/c27b27e6fb71240a05e5a5afd1b6b8c42b3b5c41))
* **channel:** upsert device to PostgreSQL before creating channel account ([15b9b65](https://github.com/HankHuang0516/realbot/commit/15b9b65428cfeda98d974cc3a61e9fa7bc946d52))
* **admin:** use cookie auth for skill-templates/contributions endpoint ([fcefb1a](https://github.com/HankHuang0516/realbot/commit/fcefb1a0a7d295646024931bb1d6e018022d0945))
* **scheduler:** use current timestamp as default scheduled_at for cron schedules ([1610110](https://github.com/HankHuang0516/realbot/commit/1610110239212ffca506b6cbf3dec67dfb862278))


### Features

* **backend:** add /api/platform-stats endpoint for bot daily report ([bcd090e](https://github.com/HankHuang0516/realbot/commit/bcd090e662da9f4877f957c9e5779c0cd5ae3852)), closes [#6](https://github.com/HankHuang0516/realbot/issues/6) [#6](https://github.com/HankHuang0516/realbot/issues/6) [#38842](https://github.com/HankHuang0516/realbot/issues/38842)
* **i18n:** add 160-166 missing translation keys per language for zh-CN/ja/ko/th/vi/id ([1642a92](https://github.com/HankHuang0516/realbot/commit/1642a929e6b708e5e5737d1ef71325da2b73f4df))
* **settings:** add copy icon for Device ID and Copy Credentials button ([35a68d7](https://github.com/HankHuang0516/realbot/commit/35a68d70044c94b643ee6a685ecb88840c008179))
* **templates:** add Creative Thinker soul and Step-by-Step Reasoning rule templates ([61e916f](https://github.com/HankHuang0516/realbot/commit/61e916feadad2683d5d774073211d54cda6de898))
* **info:** add deep linking support for guide sub-items ([e16ebb7](https://github.com/HankHuang0516/realbot/commit/e16ebb76d8fdf5d5b53ca117da92c3ea158579f6)), closes [#faq](https://github.com/HankHuang0516/realbot/issues/faq) [#release-notes](https://github.com/HankHuang0516/realbot/issues/release-notes) [#compare](https://github.com/HankHuang0516/realbot/issues/compare)
* **settings:** add Device Secret display with reveal/copy toggle ([4d4281a](https://github.com/HankHuang0516/realbot/commit/4d4281a967a87f404ca5217f32045f1ff6fb500b))
* **schedule:** add deviceSecret dual auth for schedule endpoints ([2716375](https://github.com/HankHuang0516/realbot/commit/2716375a2023b2ff259bdf7aae6051832ddc49c8))
* **android:** add fetchSoulTemplates/fetchRuleTemplates to MissionViewModel ([1c411fc](https://github.com/HankHuang0516/realbot/commit/1c411fce073055eb743d09c71f5d6ce9aed4b988))
* **skill-contribute:** add GET status endpoint for async verification feedback ([e71af93](https://github.com/HankHuang0516/realbot/commit/e71af9310223c23b786e52d24434e47aaafd9132))
* **admin:** add pagination to user list (50 per page) ([ccd5fb3](https://github.com/HankHuang0516/realbot/commit/ccd5fb35117fd978d93bc4265e904f7b8ed20a7b))
* **ios:** add React Native Expo iOS app with full feature parity ([934fe0b](https://github.com/HankHuang0516/realbot/commit/934fe0b2a35929d06fc987803eb7be7175cc4293))
* **android/i18n:** add soul & rule template gallery strings ([0a28d99](https://github.com/HankHuang0516/realbot/commit/0a28d9979ab846214683a9c3bbc76c62be69e385))
* **templates:** add Soul/Rule template community contribution API ([c6fdcba](https://github.com/HankHuang0516/realbot/commit/c6fdcba5076d34dd85a94293a30b875e8a243b34))
* **android:** add SoulGalleryDialog and RuleGalleryDialog ([5a3142a](https://github.com/HankHuang0516/realbot/commit/5a3142af3f67dfa4c4ba9473a4381f89e04aee24))
* **skill-templates:** add structural validation to contribute endpoint ([891327d](https://github.com/HankHuang0516/realbot/commit/891327dc02dbd3d2a8bbbf254d596cdb33fca3ed))
* **scheduler:** add Taiwan time to missionHints + timezone update support ([20f50f7](https://github.com/HankHuang0516/realbot/commit/20f50f746867c20933c58fd20d3051a41f445af3))
* **templates:** add Wise Mentor soul and Brevity First rule templates ([f1494fd](https://github.com/HankHuang0516/realbot/commit/f1494fde800c03fe2c650bda26fc87df36f9dd8d))
* **info:** add 實用案例 category with Claude x OpenClaw guide ([94475ea](https://github.com/HankHuang0516/realbot/commit/94475eaf8c8f0cf9cc2068d6edff14b9036f136d))
* **skill-templates:** auto-approve pipeline + admin contributions UI ([5f94ea1](https://github.com/HankHuang0516/realbot/commit/5f94ea13291d6b0d4f12e563d8451402452b09b7))
* **soul-dialog:** merge dropdown into Gallery, unify template selection ([b9eeb41](https://github.com/HankHuang0516/realbot/commit/b9eeb415d789243243426adf345552c7970cd8b9))
* **channel:** push NAME_CHANGED to channel bots immediately on rename ([d7992fc](https://github.com/HankHuang0516/realbot/commit/d7992fceb50ce615887ed3fe5e5e54c4306be7e9))
* **channel:** send ECLAW_READY init push to bot after full bind ([656f930](https://github.com/HankHuang0516/realbot/commit/656f93086a9832de63dc29825d829c44170cc9e7))
* **info:** simplify claude-openclaw guide with full example + copy button ([d8e31e9](https://github.com/HankHuang0516/realbot/commit/d8e31e9a3bf1b0b0dd05ef7bb7498bdcff82b335))
* **rebrand:** update community post intro to AI Agent collaboration ([5fb15a0](https://github.com/HankHuang0516/realbot/commit/5fb15a0eca7911ac987686f844216f818a980e75))
* **rebrand:** update comparison page strings to AI Agent collaboration ([82171a1](https://github.com/HankHuang0516/realbot/commit/82171a161819149f7a9977f0425e41742c816849))
* **rebrand:** update faq_a_what_is to AI Agent collaboration messaging ([a79324a](https://github.com/HankHuang0516/realbot/commit/a79324aeefbe931e0119986ef4917a0516878bb5))
* **rebrand:** update info.html features section to AI Agent positioning ([1a7fae8](https://github.com/HankHuang0516/realbot/commit/1a7fae8758b801a1da934eccbbad7be8d64bc9d8))
* **rebrand:** update openclaw plugin metadata to AI Agent collaboration ([96baef7](https://github.com/HankHuang0516/realbot/commit/96baef7cb5fcf57159ad401b2ed543fef218ae5e))
* **rebrand:** update openclaw-channel README to AI Agent collaboration ([f11653f](https://github.com/HankHuang0516/realbot/commit/f11653f11c44584e0783dddecc1fcef3dd4e8f55))
* **rebrand:** update privacy policy - replace pet terminology with AI agent ([72b487d](https://github.com/HankHuang0516/realbot/commit/72b487d0260f5d2ece537c5c606ebb8f87dd4734))
* **rebrand:** update README and package descriptions to AI Agent collaboration ([f9efffa](https://github.com/HankHuang0516/realbot/commit/f9efffa5179c5685023ef6d199d16f3e8018ee75))
* **android:** wire SoulGalleryDialog and RuleGalleryDialog into add dialogs ([74898b3](https://github.com/HankHuang0516/realbot/commit/74898b3d527990ea769e7f2d3ac8d32a07df9c38))


### Reverts

* **templates:** remove manually added templates, let bot contribute via API ([b1e7914](https://github.com/HankHuang0516/realbot/commit/b1e79143d3bc10afea36dc8fe7294011a5f75c10))

# [1.3.0](https://github.com/HankHuang0516/realbot/compare/v1.2.0...v1.3.0) (2026-03-09)


### Bug Fixes

* **plugin:** add auto-reconnect with exponential backoff to openclaw-channel-eclaw v1.1.0 ([0ae83a0](https://github.com/HankHuang0516/realbot/commit/0ae83a00da24ce72afd63d59f9be828ca2df32a8))
* **debug:** add entityId bounds check in set-entity-xp ([051a1c6](https://github.com/HankHuang0516/realbot/commit/051a1c6ef1c01ec9bacd2acbfafdce24b3f17c2f))
* **skill-contribute:** add GITHUB_TOKEN support to bypass API rate limit ([51dcea3](https://github.com/HankHuang0516/realbot/commit/51dcea3a561d3a083cdf9436b9c61f688d3573fa))
* add i18n support to entire User Guide section in info.html ([1f2131a](https://github.com/HankHuang0516/realbot/commit/1f2131a90b29255075839723536dc0cc823f9d0c))
* **android:** add name/description/ruleType to SkillTemplate and fix gallery dialogs ([e0a79b7](https://github.com/HankHuang0516/realbot/commit/e0a79b76503d36e21e7dc28246e940b27791492b))
* **settings:** align copy icons to far right edge ([a735ce9](https://github.com/HankHuang0516/realbot/commit/a735ce95aabdee2f501a5589c0da2e2cb99a84c5))
* **scheduler:** append missionHints to channel scheduled message text ([f1244d6](https://github.com/HankHuang0516/realbot/commit/f1244d66c2226c04798952e41898be8a7ad8d00a))
* **api:** auto-detect entityId from botSecret in contribute endpoints ([9b3e8d1](https://github.com/HankHuang0516/realbot/commit/9b3e8d12a8084f7a4fe88363291393e6159bb47b))
* **bind:** await single-device save after binding to prevent race condition ([811b3e9](https://github.com/HankHuang0516/realbot/commit/811b3e9b250f7dee518e1f7f7cdf65c1a8dd94d8))
* code review corrections — credential UI and guide accuracy ([5992dc5](https://github.com/HankHuang0516/realbot/commit/5992dc5ca0cf35adee17253f5742ed3619ec836e)), closes [#newSecretValue](https://github.com/HankHuang0516/realbot/issues/newSecretValue)
* **ios-app:** fix i18n compliance and asset config ([e952ec3](https://github.com/HankHuang0516/realbot/commit/e952ec3a0dc569565fff21fd1e3974a507822e19))
* **test:** fix reorder-channel test order array size to match device limit ([3103918](https://github.com/HankHuang0516/realbot/commit/31039180cf26e0e5f2db3292bd153be856c541f6))
* **portal:** fix XSS, broken tags, and filter consistency in soul/rule gallery ([0dd30ec](https://github.com/HankHuang0516/realbot/commit/0dd30ec0c8a358594d4c603ed5c92e7b86871226))
* **admin:** i18n By/Date column headers in contribution tables ([c1caaf6](https://github.com/HankHuang0516/realbot/commit/c1caaf67d893266fca7831cf2c32a231230db4e2))
* **bind:** make /api/bind handler async to fix await syntax error ([f78d373](https://github.com/HankHuang0516/realbot/commit/f78d373e2826b710adf6a7039604d93e90a627d0))
* **api:** move skill-templates/contributions route after adminAuth definition ([4915f3d](https://github.com/HankHuang0516/realbot/commit/4915f3d8f737445f4144bd5998ff5588fb126bbb))
* persist language preference to server for cross-device sync ([bd3f7f6](https://github.com/HankHuang0516/realbot/commit/bd3f7f65657434136dcf40d1f499de2924fc0c74))
* **entity:** preserve XP/level across all unbind/rebind paths ([a27bddf](https://github.com/HankHuang0516/realbot/commit/a27bddf86c15c340ffe44e6b91506b930ef7992c))
* **ai-chat:** prevent false network error when closing chat mid-request ([e787e2e](https://github.com/HankHuang0516/realbot/commit/e787e2e6c489885de8bd6a022255f32fccbe8588))
* **tests:** read TEST_ENTITY_ID from .env in bot-api-response test; add setup_broadcast_webhook.js ([0dc137c](https://github.com/HankHuang0516/realbot/commit/0dc137c85e00de20c74b0c42c7569acbaf117dae))
* **admin:** reorder By/date columns and show full datetime in contribution tables ([260b522](https://github.com/HankHuang0516/realbot/commit/260b5221407c539f6369368fe83e19120bf6d1eb))
* **bind:** reset bot-to-bot counter on rebind to prevent stale rate limits ([daea976](https://github.com/HankHuang0516/realbot/commit/daea976e44768dc65eb515d2bff4b5f400385642))
* restore template literal in set-entity-xp error message ([40a44ad](https://github.com/HankHuang0516/realbot/commit/40a44ad9abbc6f85ae7dfa981d80c8c1f7c9ea59))
* **settings:** right-align copy icon, remove eye buttons ([010ffb7](https://github.com/HankHuang0516/realbot/commit/010ffb7487fe57019423e843676752ad203c1c2d))
* **test:** shorten NEW_NAME to stay within 20-char server limit ([45a1653](https://github.com/HankHuang0516/realbot/commit/45a165359c4212b2d0851cebbfa20c19f26e81e5))
* **settings:** truncate Device ID/Secret with ellipsis, no line wrap ([94a2ea4](https://github.com/HankHuang0516/realbot/commit/94a2ea41be12a026d5149a53e779b2403558639b))
* **info:** update example template with review steps after each goal ([ba3ceb6](https://github.com/HankHuang0516/realbot/commit/ba3ceb61c3df158c43f081784958ca5cb5f7e451))
* **rebrand:** update HTML fallback strings in comparison section ([a332dbd](https://github.com/HankHuang0516/realbot/commit/a332dbd95a4069952d1eb785e3969961f0d89cf3))
* **rebrand:** update SVG and tester guide - remove pet terminology ([c27b27e](https://github.com/HankHuang0516/realbot/commit/c27b27e6fb71240a05e5a5afd1b6b8c42b3b5c41))
* **channel:** upsert device to PostgreSQL before creating channel account ([15b9b65](https://github.com/HankHuang0516/realbot/commit/15b9b65428cfeda98d974cc3a61e9fa7bc946d52))
* **admin:** use cookie auth for skill-templates/contributions endpoint ([fcefb1a](https://github.com/HankHuang0516/realbot/commit/fcefb1a0a7d295646024931bb1d6e018022d0945))
* **scheduler:** use current timestamp as default scheduled_at for cron schedules ([1610110](https://github.com/HankHuang0516/realbot/commit/1610110239212ffca506b6cbf3dec67dfb862278))


### Features

* **backend:** add /api/platform-stats endpoint for bot daily report ([bcd090e](https://github.com/HankHuang0516/realbot/commit/bcd090e662da9f4877f957c9e5779c0cd5ae3852)), closes [#6](https://github.com/HankHuang0516/realbot/issues/6) [#6](https://github.com/HankHuang0516/realbot/issues/6) [#38842](https://github.com/HankHuang0516/realbot/issues/38842)
* **i18n:** add 160-166 missing translation keys per language for zh-CN/ja/ko/th/vi/id ([1642a92](https://github.com/HankHuang0516/realbot/commit/1642a929e6b708e5e5737d1ef71325da2b73f4df))
* **settings:** add copy icon for Device ID and Copy Credentials button ([35a68d7](https://github.com/HankHuang0516/realbot/commit/35a68d70044c94b643ee6a685ecb88840c008179))
* **templates:** add Creative Thinker soul and Step-by-Step Reasoning rule templates ([61e916f](https://github.com/HankHuang0516/realbot/commit/61e916feadad2683d5d774073211d54cda6de898))
* **info:** add deep linking support for guide sub-items ([e16ebb7](https://github.com/HankHuang0516/realbot/commit/e16ebb76d8fdf5d5b53ca117da92c3ea158579f6)), closes [#faq](https://github.com/HankHuang0516/realbot/issues/faq) [#release-notes](https://github.com/HankHuang0516/realbot/issues/release-notes) [#compare](https://github.com/HankHuang0516/realbot/issues/compare)
* **settings:** add Device Secret display with reveal/copy toggle ([4d4281a](https://github.com/HankHuang0516/realbot/commit/4d4281a967a87f404ca5217f32045f1ff6fb500b))
* **schedule:** add deviceSecret dual auth for schedule endpoints ([2716375](https://github.com/HankHuang0516/realbot/commit/2716375a2023b2ff259bdf7aae6051832ddc49c8))
* **android:** add fetchSoulTemplates/fetchRuleTemplates to MissionViewModel ([1c411fc](https://github.com/HankHuang0516/realbot/commit/1c411fce073055eb743d09c71f5d6ce9aed4b988))
* **skill-contribute:** add GET status endpoint for async verification feedback ([e71af93](https://github.com/HankHuang0516/realbot/commit/e71af9310223c23b786e52d24434e47aaafd9132))
* **admin:** add pagination to user list (50 per page) ([ccd5fb3](https://github.com/HankHuang0516/realbot/commit/ccd5fb35117fd978d93bc4265e904f7b8ed20a7b))
* **ios:** add React Native Expo iOS app with full feature parity ([934fe0b](https://github.com/HankHuang0516/realbot/commit/934fe0b2a35929d06fc987803eb7be7175cc4293))
* **android/i18n:** add soul & rule template gallery strings ([0a28d99](https://github.com/HankHuang0516/realbot/commit/0a28d9979ab846214683a9c3bbc76c62be69e385))
* **templates:** add Soul/Rule template community contribution API ([c6fdcba](https://github.com/HankHuang0516/realbot/commit/c6fdcba5076d34dd85a94293a30b875e8a243b34))
* **android:** add SoulGalleryDialog and RuleGalleryDialog ([5a3142a](https://github.com/HankHuang0516/realbot/commit/5a3142af3f67dfa4c4ba9473a4381f89e04aee24))
* **skill-templates:** add structural validation to contribute endpoint ([891327d](https://github.com/HankHuang0516/realbot/commit/891327dc02dbd3d2a8bbbf254d596cdb33fca3ed))
* **scheduler:** add Taiwan time to missionHints + timezone update support ([20f50f7](https://github.com/HankHuang0516/realbot/commit/20f50f746867c20933c58fd20d3051a41f445af3))
* **templates:** add Wise Mentor soul and Brevity First rule templates ([f1494fd](https://github.com/HankHuang0516/realbot/commit/f1494fde800c03fe2c650bda26fc87df36f9dd8d))
* **info:** add 實用案例 category with Claude x OpenClaw guide ([94475ea](https://github.com/HankHuang0516/realbot/commit/94475eaf8c8f0cf9cc2068d6edff14b9036f136d))
* **skill-templates:** auto-approve pipeline + admin contributions UI ([5f94ea1](https://github.com/HankHuang0516/realbot/commit/5f94ea13291d6b0d4f12e563d8451402452b09b7))
* **soul-dialog:** merge dropdown into Gallery, unify template selection ([b9eeb41](https://github.com/HankHuang0516/realbot/commit/b9eeb415d789243243426adf345552c7970cd8b9))
* **channel:** push NAME_CHANGED to channel bots immediately on rename ([d7992fc](https://github.com/HankHuang0516/realbot/commit/d7992fceb50ce615887ed3fe5e5e54c4306be7e9))
* **channel:** send ECLAW_READY init push to bot after full bind ([656f930](https://github.com/HankHuang0516/realbot/commit/656f93086a9832de63dc29825d829c44170cc9e7))
* **info:** simplify claude-openclaw guide with full example + copy button ([d8e31e9](https://github.com/HankHuang0516/realbot/commit/d8e31e9a3bf1b0b0dd05ef7bb7498bdcff82b335))
* **rebrand:** update community post intro to AI Agent collaboration ([5fb15a0](https://github.com/HankHuang0516/realbot/commit/5fb15a0eca7911ac987686f844216f818a980e75))
* **rebrand:** update comparison page strings to AI Agent collaboration ([82171a1](https://github.com/HankHuang0516/realbot/commit/82171a161819149f7a9977f0425e41742c816849))
* **rebrand:** update faq_a_what_is to AI Agent collaboration messaging ([a79324a](https://github.com/HankHuang0516/realbot/commit/a79324aeefbe931e0119986ef4917a0516878bb5))
* **rebrand:** update info.html features section to AI Agent positioning ([1a7fae8](https://github.com/HankHuang0516/realbot/commit/1a7fae8758b801a1da934eccbbad7be8d64bc9d8))
* **rebrand:** update openclaw plugin metadata to AI Agent collaboration ([96baef7](https://github.com/HankHuang0516/realbot/commit/96baef7cb5fcf57159ad401b2ed543fef218ae5e))
* **rebrand:** update openclaw-channel README to AI Agent collaboration ([f11653f](https://github.com/HankHuang0516/realbot/commit/f11653f11c44584e0783dddecc1fcef3dd4e8f55))
* **rebrand:** update privacy policy - replace pet terminology with AI agent ([72b487d](https://github.com/HankHuang0516/realbot/commit/72b487d0260f5d2ece537c5c606ebb8f87dd4734))
* **rebrand:** update README and package descriptions to AI Agent collaboration ([f9efffa](https://github.com/HankHuang0516/realbot/commit/f9efffa5179c5685023ef6d199d16f3e8018ee75))
* **android:** wire SoulGalleryDialog and RuleGalleryDialog into add dialogs ([74898b3](https://github.com/HankHuang0516/realbot/commit/74898b3d527990ea769e7f2d3ac8d32a07df9c38))


### Reverts

* **templates:** remove manually added templates, let bot contribute via API ([b1e7914](https://github.com/HankHuang0516/realbot/commit/b1e79143d3bc10afea36dc8fe7294011a5f75c10))

# [1.3.0](https://github.com/HankHuang0516/realbot/compare/v1.2.0...v1.3.0) (2026-03-09)


### Bug Fixes

* **plugin:** add auto-reconnect with exponential backoff to openclaw-channel-eclaw v1.1.0 ([0ae83a0](https://github.com/HankHuang0516/realbot/commit/0ae83a00da24ce72afd63d59f9be828ca2df32a8))
* **debug:** add entityId bounds check in set-entity-xp ([051a1c6](https://github.com/HankHuang0516/realbot/commit/051a1c6ef1c01ec9bacd2acbfafdce24b3f17c2f))
* **skill-contribute:** add GITHUB_TOKEN support to bypass API rate limit ([51dcea3](https://github.com/HankHuang0516/realbot/commit/51dcea3a561d3a083cdf9436b9c61f688d3573fa))
* add i18n support to entire User Guide section in info.html ([1f2131a](https://github.com/HankHuang0516/realbot/commit/1f2131a90b29255075839723536dc0cc823f9d0c))
* **android:** add name/description/ruleType to SkillTemplate and fix gallery dialogs ([e0a79b7](https://github.com/HankHuang0516/realbot/commit/e0a79b76503d36e21e7dc28246e940b27791492b))
* **settings:** align copy icons to far right edge ([a735ce9](https://github.com/HankHuang0516/realbot/commit/a735ce95aabdee2f501a5589c0da2e2cb99a84c5))
* **scheduler:** append missionHints to channel scheduled message text ([f1244d6](https://github.com/HankHuang0516/realbot/commit/f1244d66c2226c04798952e41898be8a7ad8d00a))
* **api:** auto-detect entityId from botSecret in contribute endpoints ([9b3e8d1](https://github.com/HankHuang0516/realbot/commit/9b3e8d12a8084f7a4fe88363291393e6159bb47b))
* **bind:** await single-device save after binding to prevent race condition ([811b3e9](https://github.com/HankHuang0516/realbot/commit/811b3e9b250f7dee518e1f7f7cdf65c1a8dd94d8))
* code review corrections — credential UI and guide accuracy ([5992dc5](https://github.com/HankHuang0516/realbot/commit/5992dc5ca0cf35adee17253f5742ed3619ec836e)), closes [#newSecretValue](https://github.com/HankHuang0516/realbot/issues/newSecretValue)
* **ios-app:** fix i18n compliance and asset config ([e952ec3](https://github.com/HankHuang0516/realbot/commit/e952ec3a0dc569565fff21fd1e3974a507822e19))
* **test:** fix reorder-channel test order array size to match device limit ([3103918](https://github.com/HankHuang0516/realbot/commit/31039180cf26e0e5f2db3292bd153be856c541f6))
* **portal:** fix XSS, broken tags, and filter consistency in soul/rule gallery ([0dd30ec](https://github.com/HankHuang0516/realbot/commit/0dd30ec0c8a358594d4c603ed5c92e7b86871226))
* **admin:** i18n By/Date column headers in contribution tables ([c1caaf6](https://github.com/HankHuang0516/realbot/commit/c1caaf67d893266fca7831cf2c32a231230db4e2))
* **bind:** make /api/bind handler async to fix await syntax error ([f78d373](https://github.com/HankHuang0516/realbot/commit/f78d373e2826b710adf6a7039604d93e90a627d0))
* **api:** move skill-templates/contributions route after adminAuth definition ([4915f3d](https://github.com/HankHuang0516/realbot/commit/4915f3d8f737445f4144bd5998ff5588fb126bbb))
* persist language preference to server for cross-device sync ([bd3f7f6](https://github.com/HankHuang0516/realbot/commit/bd3f7f65657434136dcf40d1f499de2924fc0c74))
* **entity:** preserve XP/level across all unbind/rebind paths ([a27bddf](https://github.com/HankHuang0516/realbot/commit/a27bddf86c15c340ffe44e6b91506b930ef7992c))
* **ai-chat:** prevent false network error when closing chat mid-request ([e787e2e](https://github.com/HankHuang0516/realbot/commit/e787e2e6c489885de8bd6a022255f32fccbe8588))
* **tests:** read TEST_ENTITY_ID from .env in bot-api-response test; add setup_broadcast_webhook.js ([0dc137c](https://github.com/HankHuang0516/realbot/commit/0dc137c85e00de20c74b0c42c7569acbaf117dae))
* **admin:** reorder By/date columns and show full datetime in contribution tables ([260b522](https://github.com/HankHuang0516/realbot/commit/260b5221407c539f6369368fe83e19120bf6d1eb))
* **bind:** reset bot-to-bot counter on rebind to prevent stale rate limits ([daea976](https://github.com/HankHuang0516/realbot/commit/daea976e44768dc65eb515d2bff4b5f400385642))
* restore template literal in set-entity-xp error message ([40a44ad](https://github.com/HankHuang0516/realbot/commit/40a44ad9abbc6f85ae7dfa981d80c8c1f7c9ea59))
* **settings:** right-align copy icon, remove eye buttons ([010ffb7](https://github.com/HankHuang0516/realbot/commit/010ffb7487fe57019423e843676752ad203c1c2d))
* **test:** shorten NEW_NAME to stay within 20-char server limit ([45a1653](https://github.com/HankHuang0516/realbot/commit/45a165359c4212b2d0851cebbfa20c19f26e81e5))
* **settings:** truncate Device ID/Secret with ellipsis, no line wrap ([94a2ea4](https://github.com/HankHuang0516/realbot/commit/94a2ea41be12a026d5149a53e779b2403558639b))
* **info:** update example template with review steps after each goal ([ba3ceb6](https://github.com/HankHuang0516/realbot/commit/ba3ceb61c3df158c43f081784958ca5cb5f7e451))
* **rebrand:** update HTML fallback strings in comparison section ([a332dbd](https://github.com/HankHuang0516/realbot/commit/a332dbd95a4069952d1eb785e3969961f0d89cf3))
* **rebrand:** update SVG and tester guide - remove pet terminology ([c27b27e](https://github.com/HankHuang0516/realbot/commit/c27b27e6fb71240a05e5a5afd1b6b8c42b3b5c41))
* **admin:** use cookie auth for skill-templates/contributions endpoint ([fcefb1a](https://github.com/HankHuang0516/realbot/commit/fcefb1a0a7d295646024931bb1d6e018022d0945))
* **scheduler:** use current timestamp as default scheduled_at for cron schedules ([1610110](https://github.com/HankHuang0516/realbot/commit/1610110239212ffca506b6cbf3dec67dfb862278))


### Features

* **backend:** add /api/platform-stats endpoint for bot daily report ([bcd090e](https://github.com/HankHuang0516/realbot/commit/bcd090e662da9f4877f957c9e5779c0cd5ae3852)), closes [#6](https://github.com/HankHuang0516/realbot/issues/6) [#6](https://github.com/HankHuang0516/realbot/issues/6) [#38842](https://github.com/HankHuang0516/realbot/issues/38842)
* **i18n:** add 160-166 missing translation keys per language for zh-CN/ja/ko/th/vi/id ([1642a92](https://github.com/HankHuang0516/realbot/commit/1642a929e6b708e5e5737d1ef71325da2b73f4df))
* **settings:** add copy icon for Device ID and Copy Credentials button ([35a68d7](https://github.com/HankHuang0516/realbot/commit/35a68d70044c94b643ee6a685ecb88840c008179))
* **templates:** add Creative Thinker soul and Step-by-Step Reasoning rule templates ([61e916f](https://github.com/HankHuang0516/realbot/commit/61e916feadad2683d5d774073211d54cda6de898))
* **info:** add deep linking support for guide sub-items ([e16ebb7](https://github.com/HankHuang0516/realbot/commit/e16ebb76d8fdf5d5b53ca117da92c3ea158579f6)), closes [#faq](https://github.com/HankHuang0516/realbot/issues/faq) [#release-notes](https://github.com/HankHuang0516/realbot/issues/release-notes) [#compare](https://github.com/HankHuang0516/realbot/issues/compare)
* **settings:** add Device Secret display with reveal/copy toggle ([4d4281a](https://github.com/HankHuang0516/realbot/commit/4d4281a967a87f404ca5217f32045f1ff6fb500b))
* **schedule:** add deviceSecret dual auth for schedule endpoints ([2716375](https://github.com/HankHuang0516/realbot/commit/2716375a2023b2ff259bdf7aae6051832ddc49c8))
* **android:** add fetchSoulTemplates/fetchRuleTemplates to MissionViewModel ([1c411fc](https://github.com/HankHuang0516/realbot/commit/1c411fce073055eb743d09c71f5d6ce9aed4b988))
* **skill-contribute:** add GET status endpoint for async verification feedback ([e71af93](https://github.com/HankHuang0516/realbot/commit/e71af9310223c23b786e52d24434e47aaafd9132))
* **admin:** add pagination to user list (50 per page) ([ccd5fb3](https://github.com/HankHuang0516/realbot/commit/ccd5fb35117fd978d93bc4265e904f7b8ed20a7b))
* **ios:** add React Native Expo iOS app with full feature parity ([934fe0b](https://github.com/HankHuang0516/realbot/commit/934fe0b2a35929d06fc987803eb7be7175cc4293))
* **android/i18n:** add soul & rule template gallery strings ([0a28d99](https://github.com/HankHuang0516/realbot/commit/0a28d9979ab846214683a9c3bbc76c62be69e385))
* **templates:** add Soul/Rule template community contribution API ([c6fdcba](https://github.com/HankHuang0516/realbot/commit/c6fdcba5076d34dd85a94293a30b875e8a243b34))
* **android:** add SoulGalleryDialog and RuleGalleryDialog ([5a3142a](https://github.com/HankHuang0516/realbot/commit/5a3142af3f67dfa4c4ba9473a4381f89e04aee24))
* **skill-templates:** add structural validation to contribute endpoint ([891327d](https://github.com/HankHuang0516/realbot/commit/891327dc02dbd3d2a8bbbf254d596cdb33fca3ed))
* **scheduler:** add Taiwan time to missionHints + timezone update support ([20f50f7](https://github.com/HankHuang0516/realbot/commit/20f50f746867c20933c58fd20d3051a41f445af3))
* **templates:** add Wise Mentor soul and Brevity First rule templates ([f1494fd](https://github.com/HankHuang0516/realbot/commit/f1494fde800c03fe2c650bda26fc87df36f9dd8d))
* **info:** add 實用案例 category with Claude x OpenClaw guide ([94475ea](https://github.com/HankHuang0516/realbot/commit/94475eaf8c8f0cf9cc2068d6edff14b9036f136d))
* **skill-templates:** auto-approve pipeline + admin contributions UI ([5f94ea1](https://github.com/HankHuang0516/realbot/commit/5f94ea13291d6b0d4f12e563d8451402452b09b7))
* **soul-dialog:** merge dropdown into Gallery, unify template selection ([b9eeb41](https://github.com/HankHuang0516/realbot/commit/b9eeb415d789243243426adf345552c7970cd8b9))
* **channel:** push NAME_CHANGED to channel bots immediately on rename ([d7992fc](https://github.com/HankHuang0516/realbot/commit/d7992fceb50ce615887ed3fe5e5e54c4306be7e9))
* **channel:** send ECLAW_READY init push to bot after full bind ([656f930](https://github.com/HankHuang0516/realbot/commit/656f93086a9832de63dc29825d829c44170cc9e7))
* **info:** simplify claude-openclaw guide with full example + copy button ([d8e31e9](https://github.com/HankHuang0516/realbot/commit/d8e31e9a3bf1b0b0dd05ef7bb7498bdcff82b335))
* **rebrand:** update community post intro to AI Agent collaboration ([5fb15a0](https://github.com/HankHuang0516/realbot/commit/5fb15a0eca7911ac987686f844216f818a980e75))
* **rebrand:** update comparison page strings to AI Agent collaboration ([82171a1](https://github.com/HankHuang0516/realbot/commit/82171a161819149f7a9977f0425e41742c816849))
* **rebrand:** update faq_a_what_is to AI Agent collaboration messaging ([a79324a](https://github.com/HankHuang0516/realbot/commit/a79324aeefbe931e0119986ef4917a0516878bb5))
* **rebrand:** update info.html features section to AI Agent positioning ([1a7fae8](https://github.com/HankHuang0516/realbot/commit/1a7fae8758b801a1da934eccbbad7be8d64bc9d8))
* **rebrand:** update openclaw plugin metadata to AI Agent collaboration ([96baef7](https://github.com/HankHuang0516/realbot/commit/96baef7cb5fcf57159ad401b2ed543fef218ae5e))
* **rebrand:** update openclaw-channel README to AI Agent collaboration ([f11653f](https://github.com/HankHuang0516/realbot/commit/f11653f11c44584e0783dddecc1fcef3dd4e8f55))
* **rebrand:** update privacy policy - replace pet terminology with AI agent ([72b487d](https://github.com/HankHuang0516/realbot/commit/72b487d0260f5d2ece537c5c606ebb8f87dd4734))
* **rebrand:** update README and package descriptions to AI Agent collaboration ([f9efffa](https://github.com/HankHuang0516/realbot/commit/f9efffa5179c5685023ef6d199d16f3e8018ee75))
* **android:** wire SoulGalleryDialog and RuleGalleryDialog into add dialogs ([74898b3](https://github.com/HankHuang0516/realbot/commit/74898b3d527990ea769e7f2d3ac8d32a07df9c38))


### Reverts

* **templates:** remove manually added templates, let bot contribute via API ([b1e7914](https://github.com/HankHuang0516/realbot/commit/b1e79143d3bc10afea36dc8fe7294011a5f75c10))

# [1.3.0](https://github.com/HankHuang0516/realbot/compare/v1.2.0...v1.3.0) (2026-03-09)


### Bug Fixes

* **plugin:** add auto-reconnect with exponential backoff to openclaw-channel-eclaw v1.1.0 ([0ae83a0](https://github.com/HankHuang0516/realbot/commit/0ae83a00da24ce72afd63d59f9be828ca2df32a8))
* **debug:** add entityId bounds check in set-entity-xp ([051a1c6](https://github.com/HankHuang0516/realbot/commit/051a1c6ef1c01ec9bacd2acbfafdce24b3f17c2f))
* **skill-contribute:** add GITHUB_TOKEN support to bypass API rate limit ([51dcea3](https://github.com/HankHuang0516/realbot/commit/51dcea3a561d3a083cdf9436b9c61f688d3573fa))
* add i18n support to entire User Guide section in info.html ([1f2131a](https://github.com/HankHuang0516/realbot/commit/1f2131a90b29255075839723536dc0cc823f9d0c))
* **android:** add name/description/ruleType to SkillTemplate and fix gallery dialogs ([e0a79b7](https://github.com/HankHuang0516/realbot/commit/e0a79b76503d36e21e7dc28246e940b27791492b))
* **settings:** align copy icons to far right edge ([a735ce9](https://github.com/HankHuang0516/realbot/commit/a735ce95aabdee2f501a5589c0da2e2cb99a84c5))
* **scheduler:** append missionHints to channel scheduled message text ([f1244d6](https://github.com/HankHuang0516/realbot/commit/f1244d66c2226c04798952e41898be8a7ad8d00a))
* **api:** auto-detect entityId from botSecret in contribute endpoints ([9b3e8d1](https://github.com/HankHuang0516/realbot/commit/9b3e8d12a8084f7a4fe88363291393e6159bb47b))
* **bind:** await single-device save after binding to prevent race condition ([811b3e9](https://github.com/HankHuang0516/realbot/commit/811b3e9b250f7dee518e1f7f7cdf65c1a8dd94d8))
* code review corrections — credential UI and guide accuracy ([5992dc5](https://github.com/HankHuang0516/realbot/commit/5992dc5ca0cf35adee17253f5742ed3619ec836e)), closes [#newSecretValue](https://github.com/HankHuang0516/realbot/issues/newSecretValue)
* **ios-app:** fix i18n compliance and asset config ([e952ec3](https://github.com/HankHuang0516/realbot/commit/e952ec3a0dc569565fff21fd1e3974a507822e19))
* **test:** fix reorder-channel test order array size to match device limit ([3103918](https://github.com/HankHuang0516/realbot/commit/31039180cf26e0e5f2db3292bd153be856c541f6))
* **portal:** fix XSS, broken tags, and filter consistency in soul/rule gallery ([0dd30ec](https://github.com/HankHuang0516/realbot/commit/0dd30ec0c8a358594d4c603ed5c92e7b86871226))
* **admin:** i18n By/Date column headers in contribution tables ([c1caaf6](https://github.com/HankHuang0516/realbot/commit/c1caaf67d893266fca7831cf2c32a231230db4e2))
* **bind:** make /api/bind handler async to fix await syntax error ([f78d373](https://github.com/HankHuang0516/realbot/commit/f78d373e2826b710adf6a7039604d93e90a627d0))
* **api:** move skill-templates/contributions route after adminAuth definition ([4915f3d](https://github.com/HankHuang0516/realbot/commit/4915f3d8f737445f4144bd5998ff5588fb126bbb))
* persist language preference to server for cross-device sync ([bd3f7f6](https://github.com/HankHuang0516/realbot/commit/bd3f7f65657434136dcf40d1f499de2924fc0c74))
* **entity:** preserve XP/level across all unbind/rebind paths ([a27bddf](https://github.com/HankHuang0516/realbot/commit/a27bddf86c15c340ffe44e6b91506b930ef7992c))
* **ai-chat:** prevent false network error when closing chat mid-request ([e787e2e](https://github.com/HankHuang0516/realbot/commit/e787e2e6c489885de8bd6a022255f32fccbe8588))
* **tests:** read TEST_ENTITY_ID from .env in bot-api-response test; add setup_broadcast_webhook.js ([0dc137c](https://github.com/HankHuang0516/realbot/commit/0dc137c85e00de20c74b0c42c7569acbaf117dae))
* **admin:** reorder By/date columns and show full datetime in contribution tables ([260b522](https://github.com/HankHuang0516/realbot/commit/260b5221407c539f6369368fe83e19120bf6d1eb))
* **bind:** reset bot-to-bot counter on rebind to prevent stale rate limits ([daea976](https://github.com/HankHuang0516/realbot/commit/daea976e44768dc65eb515d2bff4b5f400385642))
* restore template literal in set-entity-xp error message ([40a44ad](https://github.com/HankHuang0516/realbot/commit/40a44ad9abbc6f85ae7dfa981d80c8c1f7c9ea59))
* **settings:** right-align copy icon, remove eye buttons ([010ffb7](https://github.com/HankHuang0516/realbot/commit/010ffb7487fe57019423e843676752ad203c1c2d))
* **test:** shorten NEW_NAME to stay within 20-char server limit ([45a1653](https://github.com/HankHuang0516/realbot/commit/45a165359c4212b2d0851cebbfa20c19f26e81e5))
* **settings:** truncate Device ID/Secret with ellipsis, no line wrap ([94a2ea4](https://github.com/HankHuang0516/realbot/commit/94a2ea41be12a026d5149a53e779b2403558639b))
* **info:** update example template with review steps after each goal ([ba3ceb6](https://github.com/HankHuang0516/realbot/commit/ba3ceb61c3df158c43f081784958ca5cb5f7e451))
* **rebrand:** update HTML fallback strings in comparison section ([a332dbd](https://github.com/HankHuang0516/realbot/commit/a332dbd95a4069952d1eb785e3969961f0d89cf3))
* **rebrand:** update SVG and tester guide - remove pet terminology ([c27b27e](https://github.com/HankHuang0516/realbot/commit/c27b27e6fb71240a05e5a5afd1b6b8c42b3b5c41))
* **admin:** use cookie auth for skill-templates/contributions endpoint ([fcefb1a](https://github.com/HankHuang0516/realbot/commit/fcefb1a0a7d295646024931bb1d6e018022d0945))
* **scheduler:** use current timestamp as default scheduled_at for cron schedules ([1610110](https://github.com/HankHuang0516/realbot/commit/1610110239212ffca506b6cbf3dec67dfb862278))


### Features

* **i18n:** add 160-166 missing translation keys per language for zh-CN/ja/ko/th/vi/id ([1642a92](https://github.com/HankHuang0516/realbot/commit/1642a929e6b708e5e5737d1ef71325da2b73f4df))
* **settings:** add copy icon for Device ID and Copy Credentials button ([35a68d7](https://github.com/HankHuang0516/realbot/commit/35a68d70044c94b643ee6a685ecb88840c008179))
* **templates:** add Creative Thinker soul and Step-by-Step Reasoning rule templates ([61e916f](https://github.com/HankHuang0516/realbot/commit/61e916feadad2683d5d774073211d54cda6de898))
* **info:** add deep linking support for guide sub-items ([e16ebb7](https://github.com/HankHuang0516/realbot/commit/e16ebb76d8fdf5d5b53ca117da92c3ea158579f6)), closes [#faq](https://github.com/HankHuang0516/realbot/issues/faq) [#release-notes](https://github.com/HankHuang0516/realbot/issues/release-notes) [#compare](https://github.com/HankHuang0516/realbot/issues/compare)
* **settings:** add Device Secret display with reveal/copy toggle ([4d4281a](https://github.com/HankHuang0516/realbot/commit/4d4281a967a87f404ca5217f32045f1ff6fb500b))
* **schedule:** add deviceSecret dual auth for schedule endpoints ([2716375](https://github.com/HankHuang0516/realbot/commit/2716375a2023b2ff259bdf7aae6051832ddc49c8))
* **android:** add fetchSoulTemplates/fetchRuleTemplates to MissionViewModel ([1c411fc](https://github.com/HankHuang0516/realbot/commit/1c411fce073055eb743d09c71f5d6ce9aed4b988))
* **skill-contribute:** add GET status endpoint for async verification feedback ([e71af93](https://github.com/HankHuang0516/realbot/commit/e71af9310223c23b786e52d24434e47aaafd9132))
* **admin:** add pagination to user list (50 per page) ([ccd5fb3](https://github.com/HankHuang0516/realbot/commit/ccd5fb35117fd978d93bc4265e904f7b8ed20a7b))
* **ios:** add React Native Expo iOS app with full feature parity ([934fe0b](https://github.com/HankHuang0516/realbot/commit/934fe0b2a35929d06fc987803eb7be7175cc4293))
* **android/i18n:** add soul & rule template gallery strings ([0a28d99](https://github.com/HankHuang0516/realbot/commit/0a28d9979ab846214683a9c3bbc76c62be69e385))
* **templates:** add Soul/Rule template community contribution API ([c6fdcba](https://github.com/HankHuang0516/realbot/commit/c6fdcba5076d34dd85a94293a30b875e8a243b34))
* **android:** add SoulGalleryDialog and RuleGalleryDialog ([5a3142a](https://github.com/HankHuang0516/realbot/commit/5a3142af3f67dfa4c4ba9473a4381f89e04aee24))
* **skill-templates:** add structural validation to contribute endpoint ([891327d](https://github.com/HankHuang0516/realbot/commit/891327dc02dbd3d2a8bbbf254d596cdb33fca3ed))
* **scheduler:** add Taiwan time to missionHints + timezone update support ([20f50f7](https://github.com/HankHuang0516/realbot/commit/20f50f746867c20933c58fd20d3051a41f445af3))
* **templates:** add Wise Mentor soul and Brevity First rule templates ([f1494fd](https://github.com/HankHuang0516/realbot/commit/f1494fde800c03fe2c650bda26fc87df36f9dd8d))
* **info:** add 實用案例 category with Claude x OpenClaw guide ([94475ea](https://github.com/HankHuang0516/realbot/commit/94475eaf8c8f0cf9cc2068d6edff14b9036f136d))
* **skill-templates:** auto-approve pipeline + admin contributions UI ([5f94ea1](https://github.com/HankHuang0516/realbot/commit/5f94ea13291d6b0d4f12e563d8451402452b09b7))
* **soul-dialog:** merge dropdown into Gallery, unify template selection ([b9eeb41](https://github.com/HankHuang0516/realbot/commit/b9eeb415d789243243426adf345552c7970cd8b9))
* **channel:** push NAME_CHANGED to channel bots immediately on rename ([d7992fc](https://github.com/HankHuang0516/realbot/commit/d7992fceb50ce615887ed3fe5e5e54c4306be7e9))
* **channel:** send ECLAW_READY init push to bot after full bind ([656f930](https://github.com/HankHuang0516/realbot/commit/656f93086a9832de63dc29825d829c44170cc9e7))
* **info:** simplify claude-openclaw guide with full example + copy button ([d8e31e9](https://github.com/HankHuang0516/realbot/commit/d8e31e9a3bf1b0b0dd05ef7bb7498bdcff82b335))
* **rebrand:** update community post intro to AI Agent collaboration ([5fb15a0](https://github.com/HankHuang0516/realbot/commit/5fb15a0eca7911ac987686f844216f818a980e75))
* **rebrand:** update comparison page strings to AI Agent collaboration ([82171a1](https://github.com/HankHuang0516/realbot/commit/82171a161819149f7a9977f0425e41742c816849))
* **rebrand:** update faq_a_what_is to AI Agent collaboration messaging ([a79324a](https://github.com/HankHuang0516/realbot/commit/a79324aeefbe931e0119986ef4917a0516878bb5))
* **rebrand:** update info.html features section to AI Agent positioning ([1a7fae8](https://github.com/HankHuang0516/realbot/commit/1a7fae8758b801a1da934eccbbad7be8d64bc9d8))
* **rebrand:** update openclaw plugin metadata to AI Agent collaboration ([96baef7](https://github.com/HankHuang0516/realbot/commit/96baef7cb5fcf57159ad401b2ed543fef218ae5e))
* **rebrand:** update openclaw-channel README to AI Agent collaboration ([f11653f](https://github.com/HankHuang0516/realbot/commit/f11653f11c44584e0783dddecc1fcef3dd4e8f55))
* **rebrand:** update privacy policy - replace pet terminology with AI agent ([72b487d](https://github.com/HankHuang0516/realbot/commit/72b487d0260f5d2ece537c5c606ebb8f87dd4734))
* **rebrand:** update README and package descriptions to AI Agent collaboration ([f9efffa](https://github.com/HankHuang0516/realbot/commit/f9efffa5179c5685023ef6d199d16f3e8018ee75))
* **android:** wire SoulGalleryDialog and RuleGalleryDialog into add dialogs ([74898b3](https://github.com/HankHuang0516/realbot/commit/74898b3d527990ea769e7f2d3ac8d32a07df9c38))


### Reverts

* **templates:** remove manually added templates, let bot contribute via API ([b1e7914](https://github.com/HankHuang0516/realbot/commit/b1e79143d3bc10afea36dc8fe7294011a5f75c10))

# [1.3.0](https://github.com/HankHuang0516/realbot/compare/v1.2.0...v1.3.0) (2026-03-09)


### Bug Fixes

* **plugin:** add auto-reconnect with exponential backoff to openclaw-channel-eclaw v1.1.0 ([0ae83a0](https://github.com/HankHuang0516/realbot/commit/0ae83a00da24ce72afd63d59f9be828ca2df32a8))
* **debug:** add entityId bounds check in set-entity-xp ([051a1c6](https://github.com/HankHuang0516/realbot/commit/051a1c6ef1c01ec9bacd2acbfafdce24b3f17c2f))
* **skill-contribute:** add GITHUB_TOKEN support to bypass API rate limit ([51dcea3](https://github.com/HankHuang0516/realbot/commit/51dcea3a561d3a083cdf9436b9c61f688d3573fa))
* add i18n support to entire User Guide section in info.html ([1f2131a](https://github.com/HankHuang0516/realbot/commit/1f2131a90b29255075839723536dc0cc823f9d0c))
* **android:** add name/description/ruleType to SkillTemplate and fix gallery dialogs ([e0a79b7](https://github.com/HankHuang0516/realbot/commit/e0a79b76503d36e21e7dc28246e940b27791492b))
* **settings:** align copy icons to far right edge ([a735ce9](https://github.com/HankHuang0516/realbot/commit/a735ce95aabdee2f501a5589c0da2e2cb99a84c5))
* **scheduler:** append missionHints to channel scheduled message text ([f1244d6](https://github.com/HankHuang0516/realbot/commit/f1244d66c2226c04798952e41898be8a7ad8d00a))
* **api:** auto-detect entityId from botSecret in contribute endpoints ([9b3e8d1](https://github.com/HankHuang0516/realbot/commit/9b3e8d12a8084f7a4fe88363291393e6159bb47b))
* **bind:** await single-device save after binding to prevent race condition ([811b3e9](https://github.com/HankHuang0516/realbot/commit/811b3e9b250f7dee518e1f7f7cdf65c1a8dd94d8))
* code review corrections — credential UI and guide accuracy ([5992dc5](https://github.com/HankHuang0516/realbot/commit/5992dc5ca0cf35adee17253f5742ed3619ec836e)), closes [#newSecretValue](https://github.com/HankHuang0516/realbot/issues/newSecretValue)
* **ios-app:** fix i18n compliance and asset config ([e952ec3](https://github.com/HankHuang0516/realbot/commit/e952ec3a0dc569565fff21fd1e3974a507822e19))
* **test:** fix reorder-channel test order array size to match device limit ([3103918](https://github.com/HankHuang0516/realbot/commit/31039180cf26e0e5f2db3292bd153be856c541f6))
* **portal:** fix XSS, broken tags, and filter consistency in soul/rule gallery ([0dd30ec](https://github.com/HankHuang0516/realbot/commit/0dd30ec0c8a358594d4c603ed5c92e7b86871226))
* **admin:** i18n By/Date column headers in contribution tables ([c1caaf6](https://github.com/HankHuang0516/realbot/commit/c1caaf67d893266fca7831cf2c32a231230db4e2))
* **bind:** make /api/bind handler async to fix await syntax error ([f78d373](https://github.com/HankHuang0516/realbot/commit/f78d373e2826b710adf6a7039604d93e90a627d0))
* **api:** move skill-templates/contributions route after adminAuth definition ([4915f3d](https://github.com/HankHuang0516/realbot/commit/4915f3d8f737445f4144bd5998ff5588fb126bbb))
* persist language preference to server for cross-device sync ([bd3f7f6](https://github.com/HankHuang0516/realbot/commit/bd3f7f65657434136dcf40d1f499de2924fc0c74))
* **entity:** preserve XP/level across all unbind/rebind paths ([a27bddf](https://github.com/HankHuang0516/realbot/commit/a27bddf86c15c340ffe44e6b91506b930ef7992c))
* **ai-chat:** prevent false network error when closing chat mid-request ([e787e2e](https://github.com/HankHuang0516/realbot/commit/e787e2e6c489885de8bd6a022255f32fccbe8588))
* **tests:** read TEST_ENTITY_ID from .env in bot-api-response test; add setup_broadcast_webhook.js ([0dc137c](https://github.com/HankHuang0516/realbot/commit/0dc137c85e00de20c74b0c42c7569acbaf117dae))
* **admin:** reorder By/date columns and show full datetime in contribution tables ([260b522](https://github.com/HankHuang0516/realbot/commit/260b5221407c539f6369368fe83e19120bf6d1eb))
* **bind:** reset bot-to-bot counter on rebind to prevent stale rate limits ([daea976](https://github.com/HankHuang0516/realbot/commit/daea976e44768dc65eb515d2bff4b5f400385642))
* restore template literal in set-entity-xp error message ([40a44ad](https://github.com/HankHuang0516/realbot/commit/40a44ad9abbc6f85ae7dfa981d80c8c1f7c9ea59))
* **settings:** right-align copy icon, remove eye buttons ([010ffb7](https://github.com/HankHuang0516/realbot/commit/010ffb7487fe57019423e843676752ad203c1c2d))
* **test:** shorten NEW_NAME to stay within 20-char server limit ([45a1653](https://github.com/HankHuang0516/realbot/commit/45a165359c4212b2d0851cebbfa20c19f26e81e5))
* **settings:** truncate Device ID/Secret with ellipsis, no line wrap ([94a2ea4](https://github.com/HankHuang0516/realbot/commit/94a2ea41be12a026d5149a53e779b2403558639b))
* **info:** update example template with review steps after each goal ([ba3ceb6](https://github.com/HankHuang0516/realbot/commit/ba3ceb61c3df158c43f081784958ca5cb5f7e451))
* **rebrand:** update HTML fallback strings in comparison section ([a332dbd](https://github.com/HankHuang0516/realbot/commit/a332dbd95a4069952d1eb785e3969961f0d89cf3))
* **rebrand:** update SVG and tester guide - remove pet terminology ([c27b27e](https://github.com/HankHuang0516/realbot/commit/c27b27e6fb71240a05e5a5afd1b6b8c42b3b5c41))
* **admin:** use cookie auth for skill-templates/contributions endpoint ([fcefb1a](https://github.com/HankHuang0516/realbot/commit/fcefb1a0a7d295646024931bb1d6e018022d0945))
* **scheduler:** use current timestamp as default scheduled_at for cron schedules ([1610110](https://github.com/HankHuang0516/realbot/commit/1610110239212ffca506b6cbf3dec67dfb862278))


### Features

* **i18n:** add 160-166 missing translation keys per language for zh-CN/ja/ko/th/vi/id ([1642a92](https://github.com/HankHuang0516/realbot/commit/1642a929e6b708e5e5737d1ef71325da2b73f4df))
* **settings:** add copy icon for Device ID and Copy Credentials button ([35a68d7](https://github.com/HankHuang0516/realbot/commit/35a68d70044c94b643ee6a685ecb88840c008179))
* **templates:** add Creative Thinker soul and Step-by-Step Reasoning rule templates ([61e916f](https://github.com/HankHuang0516/realbot/commit/61e916feadad2683d5d774073211d54cda6de898))
* **info:** add deep linking support for guide sub-items ([e16ebb7](https://github.com/HankHuang0516/realbot/commit/e16ebb76d8fdf5d5b53ca117da92c3ea158579f6)), closes [#faq](https://github.com/HankHuang0516/realbot/issues/faq) [#release-notes](https://github.com/HankHuang0516/realbot/issues/release-notes) [#compare](https://github.com/HankHuang0516/realbot/issues/compare)
* **settings:** add Device Secret display with reveal/copy toggle ([4d4281a](https://github.com/HankHuang0516/realbot/commit/4d4281a967a87f404ca5217f32045f1ff6fb500b))
* **schedule:** add deviceSecret dual auth for schedule endpoints ([2716375](https://github.com/HankHuang0516/realbot/commit/2716375a2023b2ff259bdf7aae6051832ddc49c8))
* **android:** add fetchSoulTemplates/fetchRuleTemplates to MissionViewModel ([1c411fc](https://github.com/HankHuang0516/realbot/commit/1c411fce073055eb743d09c71f5d6ce9aed4b988))
* **skill-contribute:** add GET status endpoint for async verification feedback ([e71af93](https://github.com/HankHuang0516/realbot/commit/e71af9310223c23b786e52d24434e47aaafd9132))
* **admin:** add pagination to user list (50 per page) ([ccd5fb3](https://github.com/HankHuang0516/realbot/commit/ccd5fb35117fd978d93bc4265e904f7b8ed20a7b))
* **ios:** add React Native Expo iOS app with full feature parity ([934fe0b](https://github.com/HankHuang0516/realbot/commit/934fe0b2a35929d06fc987803eb7be7175cc4293))
* **android/i18n:** add soul & rule template gallery strings ([0a28d99](https://github.com/HankHuang0516/realbot/commit/0a28d9979ab846214683a9c3bbc76c62be69e385))
* **templates:** add Soul/Rule template community contribution API ([c6fdcba](https://github.com/HankHuang0516/realbot/commit/c6fdcba5076d34dd85a94293a30b875e8a243b34))
* **android:** add SoulGalleryDialog and RuleGalleryDialog ([5a3142a](https://github.com/HankHuang0516/realbot/commit/5a3142af3f67dfa4c4ba9473a4381f89e04aee24))
* **skill-templates:** add structural validation to contribute endpoint ([891327d](https://github.com/HankHuang0516/realbot/commit/891327dc02dbd3d2a8bbbf254d596cdb33fca3ed))
* **scheduler:** add Taiwan time to missionHints + timezone update support ([20f50f7](https://github.com/HankHuang0516/realbot/commit/20f50f746867c20933c58fd20d3051a41f445af3))
* **templates:** add Wise Mentor soul and Brevity First rule templates ([f1494fd](https://github.com/HankHuang0516/realbot/commit/f1494fde800c03fe2c650bda26fc87df36f9dd8d))
* **info:** add 實用案例 category with Claude x OpenClaw guide ([94475ea](https://github.com/HankHuang0516/realbot/commit/94475eaf8c8f0cf9cc2068d6edff14b9036f136d))
* **skill-templates:** auto-approve pipeline + admin contributions UI ([5f94ea1](https://github.com/HankHuang0516/realbot/commit/5f94ea13291d6b0d4f12e563d8451402452b09b7))
* **soul-dialog:** merge dropdown into Gallery, unify template selection ([b9eeb41](https://github.com/HankHuang0516/realbot/commit/b9eeb415d789243243426adf345552c7970cd8b9))
* **channel:** push NAME_CHANGED to channel bots immediately on rename ([d7992fc](https://github.com/HankHuang0516/realbot/commit/d7992fceb50ce615887ed3fe5e5e54c4306be7e9))
* **info:** simplify claude-openclaw guide with full example + copy button ([d8e31e9](https://github.com/HankHuang0516/realbot/commit/d8e31e9a3bf1b0b0dd05ef7bb7498bdcff82b335))
* **rebrand:** update community post intro to AI Agent collaboration ([5fb15a0](https://github.com/HankHuang0516/realbot/commit/5fb15a0eca7911ac987686f844216f818a980e75))
* **rebrand:** update comparison page strings to AI Agent collaboration ([82171a1](https://github.com/HankHuang0516/realbot/commit/82171a161819149f7a9977f0425e41742c816849))
* **rebrand:** update faq_a_what_is to AI Agent collaboration messaging ([a79324a](https://github.com/HankHuang0516/realbot/commit/a79324aeefbe931e0119986ef4917a0516878bb5))
* **rebrand:** update info.html features section to AI Agent positioning ([1a7fae8](https://github.com/HankHuang0516/realbot/commit/1a7fae8758b801a1da934eccbbad7be8d64bc9d8))
* **rebrand:** update openclaw plugin metadata to AI Agent collaboration ([96baef7](https://github.com/HankHuang0516/realbot/commit/96baef7cb5fcf57159ad401b2ed543fef218ae5e))
* **rebrand:** update openclaw-channel README to AI Agent collaboration ([f11653f](https://github.com/HankHuang0516/realbot/commit/f11653f11c44584e0783dddecc1fcef3dd4e8f55))
* **rebrand:** update privacy policy - replace pet terminology with AI agent ([72b487d](https://github.com/HankHuang0516/realbot/commit/72b487d0260f5d2ece537c5c606ebb8f87dd4734))
* **rebrand:** update README and package descriptions to AI Agent collaboration ([f9efffa](https://github.com/HankHuang0516/realbot/commit/f9efffa5179c5685023ef6d199d16f3e8018ee75))
* **android:** wire SoulGalleryDialog and RuleGalleryDialog into add dialogs ([74898b3](https://github.com/HankHuang0516/realbot/commit/74898b3d527990ea769e7f2d3ac8d32a07df9c38))


### Reverts

* **templates:** remove manually added templates, let bot contribute via API ([b1e7914](https://github.com/HankHuang0516/realbot/commit/b1e79143d3bc10afea36dc8fe7294011a5f75c10))

# [1.3.0](https://github.com/HankHuang0516/realbot/compare/v1.2.0...v1.3.0) (2026-03-09)


### Bug Fixes

* **plugin:** add auto-reconnect with exponential backoff to openclaw-channel-eclaw v1.1.0 ([0ae83a0](https://github.com/HankHuang0516/realbot/commit/0ae83a00da24ce72afd63d59f9be828ca2df32a8))
* **debug:** add entityId bounds check in set-entity-xp ([051a1c6](https://github.com/HankHuang0516/realbot/commit/051a1c6ef1c01ec9bacd2acbfafdce24b3f17c2f))
* **skill-contribute:** add GITHUB_TOKEN support to bypass API rate limit ([51dcea3](https://github.com/HankHuang0516/realbot/commit/51dcea3a561d3a083cdf9436b9c61f688d3573fa))
* add i18n support to entire User Guide section in info.html ([1f2131a](https://github.com/HankHuang0516/realbot/commit/1f2131a90b29255075839723536dc0cc823f9d0c))
* **android:** add name/description/ruleType to SkillTemplate and fix gallery dialogs ([e0a79b7](https://github.com/HankHuang0516/realbot/commit/e0a79b76503d36e21e7dc28246e940b27791492b))
* **settings:** align copy icons to far right edge ([a735ce9](https://github.com/HankHuang0516/realbot/commit/a735ce95aabdee2f501a5589c0da2e2cb99a84c5))
* **scheduler:** append missionHints to channel scheduled message text ([f1244d6](https://github.com/HankHuang0516/realbot/commit/f1244d66c2226c04798952e41898be8a7ad8d00a))
* **api:** auto-detect entityId from botSecret in contribute endpoints ([9b3e8d1](https://github.com/HankHuang0516/realbot/commit/9b3e8d12a8084f7a4fe88363291393e6159bb47b))
* **bind:** await single-device save after binding to prevent race condition ([811b3e9](https://github.com/HankHuang0516/realbot/commit/811b3e9b250f7dee518e1f7f7cdf65c1a8dd94d8))
* code review corrections — credential UI and guide accuracy ([5992dc5](https://github.com/HankHuang0516/realbot/commit/5992dc5ca0cf35adee17253f5742ed3619ec836e)), closes [#newSecretValue](https://github.com/HankHuang0516/realbot/issues/newSecretValue)
* **ios-app:** fix i18n compliance and asset config ([e952ec3](https://github.com/HankHuang0516/realbot/commit/e952ec3a0dc569565fff21fd1e3974a507822e19))
* **test:** fix reorder-channel test order array size to match device limit ([3103918](https://github.com/HankHuang0516/realbot/commit/31039180cf26e0e5f2db3292bd153be856c541f6))
* **portal:** fix XSS, broken tags, and filter consistency in soul/rule gallery ([0dd30ec](https://github.com/HankHuang0516/realbot/commit/0dd30ec0c8a358594d4c603ed5c92e7b86871226))
* **admin:** i18n By/Date column headers in contribution tables ([c1caaf6](https://github.com/HankHuang0516/realbot/commit/c1caaf67d893266fca7831cf2c32a231230db4e2))
* **bind:** make /api/bind handler async to fix await syntax error ([f78d373](https://github.com/HankHuang0516/realbot/commit/f78d373e2826b710adf6a7039604d93e90a627d0))
* **api:** move skill-templates/contributions route after adminAuth definition ([4915f3d](https://github.com/HankHuang0516/realbot/commit/4915f3d8f737445f4144bd5998ff5588fb126bbb))
* persist language preference to server for cross-device sync ([bd3f7f6](https://github.com/HankHuang0516/realbot/commit/bd3f7f65657434136dcf40d1f499de2924fc0c74))
* **entity:** preserve XP/level across all unbind/rebind paths ([a27bddf](https://github.com/HankHuang0516/realbot/commit/a27bddf86c15c340ffe44e6b91506b930ef7992c))
* **ai-chat:** prevent false network error when closing chat mid-request ([e787e2e](https://github.com/HankHuang0516/realbot/commit/e787e2e6c489885de8bd6a022255f32fccbe8588))
* **tests:** read TEST_ENTITY_ID from .env in bot-api-response test; add setup_broadcast_webhook.js ([0dc137c](https://github.com/HankHuang0516/realbot/commit/0dc137c85e00de20c74b0c42c7569acbaf117dae))
* **admin:** reorder By/date columns and show full datetime in contribution tables ([260b522](https://github.com/HankHuang0516/realbot/commit/260b5221407c539f6369368fe83e19120bf6d1eb))
* **bind:** reset bot-to-bot counter on rebind to prevent stale rate limits ([daea976](https://github.com/HankHuang0516/realbot/commit/daea976e44768dc65eb515d2bff4b5f400385642))
* restore template literal in set-entity-xp error message ([40a44ad](https://github.com/HankHuang0516/realbot/commit/40a44ad9abbc6f85ae7dfa981d80c8c1f7c9ea59))
* **settings:** right-align copy icon, remove eye buttons ([010ffb7](https://github.com/HankHuang0516/realbot/commit/010ffb7487fe57019423e843676752ad203c1c2d))
* **test:** shorten NEW_NAME to stay within 20-char server limit ([45a1653](https://github.com/HankHuang0516/realbot/commit/45a165359c4212b2d0851cebbfa20c19f26e81e5))
* **settings:** truncate Device ID/Secret with ellipsis, no line wrap ([94a2ea4](https://github.com/HankHuang0516/realbot/commit/94a2ea41be12a026d5149a53e779b2403558639b))
* **info:** update example template with review steps after each goal ([ba3ceb6](https://github.com/HankHuang0516/realbot/commit/ba3ceb61c3df158c43f081784958ca5cb5f7e451))
* **rebrand:** update HTML fallback strings in comparison section ([a332dbd](https://github.com/HankHuang0516/realbot/commit/a332dbd95a4069952d1eb785e3969961f0d89cf3))
* **rebrand:** update SVG and tester guide - remove pet terminology ([c27b27e](https://github.com/HankHuang0516/realbot/commit/c27b27e6fb71240a05e5a5afd1b6b8c42b3b5c41))
* **admin:** use cookie auth for skill-templates/contributions endpoint ([fcefb1a](https://github.com/HankHuang0516/realbot/commit/fcefb1a0a7d295646024931bb1d6e018022d0945))
* **scheduler:** use current timestamp as default scheduled_at for cron schedules ([1610110](https://github.com/HankHuang0516/realbot/commit/1610110239212ffca506b6cbf3dec67dfb862278))


### Features

* **settings:** add copy icon for Device ID and Copy Credentials button ([35a68d7](https://github.com/HankHuang0516/realbot/commit/35a68d70044c94b643ee6a685ecb88840c008179))
* **templates:** add Creative Thinker soul and Step-by-Step Reasoning rule templates ([61e916f](https://github.com/HankHuang0516/realbot/commit/61e916feadad2683d5d774073211d54cda6de898))
* **info:** add deep linking support for guide sub-items ([e16ebb7](https://github.com/HankHuang0516/realbot/commit/e16ebb76d8fdf5d5b53ca117da92c3ea158579f6)), closes [#faq](https://github.com/HankHuang0516/realbot/issues/faq) [#release-notes](https://github.com/HankHuang0516/realbot/issues/release-notes) [#compare](https://github.com/HankHuang0516/realbot/issues/compare)
* **settings:** add Device Secret display with reveal/copy toggle ([4d4281a](https://github.com/HankHuang0516/realbot/commit/4d4281a967a87f404ca5217f32045f1ff6fb500b))
* **schedule:** add deviceSecret dual auth for schedule endpoints ([2716375](https://github.com/HankHuang0516/realbot/commit/2716375a2023b2ff259bdf7aae6051832ddc49c8))
* **android:** add fetchSoulTemplates/fetchRuleTemplates to MissionViewModel ([1c411fc](https://github.com/HankHuang0516/realbot/commit/1c411fce073055eb743d09c71f5d6ce9aed4b988))
* **skill-contribute:** add GET status endpoint for async verification feedback ([e71af93](https://github.com/HankHuang0516/realbot/commit/e71af9310223c23b786e52d24434e47aaafd9132))
* **admin:** add pagination to user list (50 per page) ([ccd5fb3](https://github.com/HankHuang0516/realbot/commit/ccd5fb35117fd978d93bc4265e904f7b8ed20a7b))
* **ios:** add React Native Expo iOS app with full feature parity ([934fe0b](https://github.com/HankHuang0516/realbot/commit/934fe0b2a35929d06fc987803eb7be7175cc4293))
* **android/i18n:** add soul & rule template gallery strings ([0a28d99](https://github.com/HankHuang0516/realbot/commit/0a28d9979ab846214683a9c3bbc76c62be69e385))
* **templates:** add Soul/Rule template community contribution API ([c6fdcba](https://github.com/HankHuang0516/realbot/commit/c6fdcba5076d34dd85a94293a30b875e8a243b34))
* **android:** add SoulGalleryDialog and RuleGalleryDialog ([5a3142a](https://github.com/HankHuang0516/realbot/commit/5a3142af3f67dfa4c4ba9473a4381f89e04aee24))
* **skill-templates:** add structural validation to contribute endpoint ([891327d](https://github.com/HankHuang0516/realbot/commit/891327dc02dbd3d2a8bbbf254d596cdb33fca3ed))
* **scheduler:** add Taiwan time to missionHints + timezone update support ([20f50f7](https://github.com/HankHuang0516/realbot/commit/20f50f746867c20933c58fd20d3051a41f445af3))
* **templates:** add Wise Mentor soul and Brevity First rule templates ([f1494fd](https://github.com/HankHuang0516/realbot/commit/f1494fde800c03fe2c650bda26fc87df36f9dd8d))
* **info:** add 實用案例 category with Claude x OpenClaw guide ([94475ea](https://github.com/HankHuang0516/realbot/commit/94475eaf8c8f0cf9cc2068d6edff14b9036f136d))
* **skill-templates:** auto-approve pipeline + admin contributions UI ([5f94ea1](https://github.com/HankHuang0516/realbot/commit/5f94ea13291d6b0d4f12e563d8451402452b09b7))
* **soul-dialog:** merge dropdown into Gallery, unify template selection ([b9eeb41](https://github.com/HankHuang0516/realbot/commit/b9eeb415d789243243426adf345552c7970cd8b9))
* **channel:** push NAME_CHANGED to channel bots immediately on rename ([d7992fc](https://github.com/HankHuang0516/realbot/commit/d7992fceb50ce615887ed3fe5e5e54c4306be7e9))
* **info:** simplify claude-openclaw guide with full example + copy button ([d8e31e9](https://github.com/HankHuang0516/realbot/commit/d8e31e9a3bf1b0b0dd05ef7bb7498bdcff82b335))
* **rebrand:** update community post intro to AI Agent collaboration ([5fb15a0](https://github.com/HankHuang0516/realbot/commit/5fb15a0eca7911ac987686f844216f818a980e75))
* **rebrand:** update comparison page strings to AI Agent collaboration ([82171a1](https://github.com/HankHuang0516/realbot/commit/82171a161819149f7a9977f0425e41742c816849))
* **rebrand:** update faq_a_what_is to AI Agent collaboration messaging ([a79324a](https://github.com/HankHuang0516/realbot/commit/a79324aeefbe931e0119986ef4917a0516878bb5))
* **rebrand:** update info.html features section to AI Agent positioning ([1a7fae8](https://github.com/HankHuang0516/realbot/commit/1a7fae8758b801a1da934eccbbad7be8d64bc9d8))
* **rebrand:** update openclaw plugin metadata to AI Agent collaboration ([96baef7](https://github.com/HankHuang0516/realbot/commit/96baef7cb5fcf57159ad401b2ed543fef218ae5e))
* **rebrand:** update openclaw-channel README to AI Agent collaboration ([f11653f](https://github.com/HankHuang0516/realbot/commit/f11653f11c44584e0783dddecc1fcef3dd4e8f55))
* **rebrand:** update privacy policy - replace pet terminology with AI agent ([72b487d](https://github.com/HankHuang0516/realbot/commit/72b487d0260f5d2ece537c5c606ebb8f87dd4734))
* **rebrand:** update README and package descriptions to AI Agent collaboration ([f9efffa](https://github.com/HankHuang0516/realbot/commit/f9efffa5179c5685023ef6d199d16f3e8018ee75))
* **android:** wire SoulGalleryDialog and RuleGalleryDialog into add dialogs ([74898b3](https://github.com/HankHuang0516/realbot/commit/74898b3d527990ea769e7f2d3ac8d32a07df9c38))


### Reverts

* **templates:** remove manually added templates, let bot contribute via API ([b1e7914](https://github.com/HankHuang0516/realbot/commit/b1e79143d3bc10afea36dc8fe7294011a5f75c10))

# [1.3.0](https://github.com/HankHuang0516/realbot/compare/v1.2.0...v1.3.0) (2026-03-09)


### Bug Fixes

* **plugin:** add auto-reconnect with exponential backoff to openclaw-channel-eclaw v1.1.0 ([0ae83a0](https://github.com/HankHuang0516/realbot/commit/0ae83a00da24ce72afd63d59f9be828ca2df32a8))
* **debug:** add entityId bounds check in set-entity-xp ([051a1c6](https://github.com/HankHuang0516/realbot/commit/051a1c6ef1c01ec9bacd2acbfafdce24b3f17c2f))
* **skill-contribute:** add GITHUB_TOKEN support to bypass API rate limit ([51dcea3](https://github.com/HankHuang0516/realbot/commit/51dcea3a561d3a083cdf9436b9c61f688d3573fa))
* add i18n support to entire User Guide section in info.html ([1f2131a](https://github.com/HankHuang0516/realbot/commit/1f2131a90b29255075839723536dc0cc823f9d0c))
* **android:** add name/description/ruleType to SkillTemplate and fix gallery dialogs ([e0a79b7](https://github.com/HankHuang0516/realbot/commit/e0a79b76503d36e21e7dc28246e940b27791492b))
* **settings:** align copy icons to far right edge ([a735ce9](https://github.com/HankHuang0516/realbot/commit/a735ce95aabdee2f501a5589c0da2e2cb99a84c5))
* **scheduler:** append missionHints to channel scheduled message text ([f1244d6](https://github.com/HankHuang0516/realbot/commit/f1244d66c2226c04798952e41898be8a7ad8d00a))
* **api:** auto-detect entityId from botSecret in contribute endpoints ([9b3e8d1](https://github.com/HankHuang0516/realbot/commit/9b3e8d12a8084f7a4fe88363291393e6159bb47b))
* **bind:** await single-device save after binding to prevent race condition ([811b3e9](https://github.com/HankHuang0516/realbot/commit/811b3e9b250f7dee518e1f7f7cdf65c1a8dd94d8))
* code review corrections — credential UI and guide accuracy ([5992dc5](https://github.com/HankHuang0516/realbot/commit/5992dc5ca0cf35adee17253f5742ed3619ec836e)), closes [#newSecretValue](https://github.com/HankHuang0516/realbot/issues/newSecretValue)
* **ios-app:** fix i18n compliance and asset config ([e952ec3](https://github.com/HankHuang0516/realbot/commit/e952ec3a0dc569565fff21fd1e3974a507822e19))
* **test:** fix reorder-channel test order array size to match device limit ([3103918](https://github.com/HankHuang0516/realbot/commit/31039180cf26e0e5f2db3292bd153be856c541f6))
* **portal:** fix XSS, broken tags, and filter consistency in soul/rule gallery ([0dd30ec](https://github.com/HankHuang0516/realbot/commit/0dd30ec0c8a358594d4c603ed5c92e7b86871226))
* **admin:** i18n By/Date column headers in contribution tables ([c1caaf6](https://github.com/HankHuang0516/realbot/commit/c1caaf67d893266fca7831cf2c32a231230db4e2))
* **bind:** make /api/bind handler async to fix await syntax error ([f78d373](https://github.com/HankHuang0516/realbot/commit/f78d373e2826b710adf6a7039604d93e90a627d0))
* **api:** move skill-templates/contributions route after adminAuth definition ([4915f3d](https://github.com/HankHuang0516/realbot/commit/4915f3d8f737445f4144bd5998ff5588fb126bbb))
* persist language preference to server for cross-device sync ([bd3f7f6](https://github.com/HankHuang0516/realbot/commit/bd3f7f65657434136dcf40d1f499de2924fc0c74))
* **entity:** preserve XP/level across all unbind/rebind paths ([a27bddf](https://github.com/HankHuang0516/realbot/commit/a27bddf86c15c340ffe44e6b91506b930ef7992c))
* **ai-chat:** prevent false network error when closing chat mid-request ([e787e2e](https://github.com/HankHuang0516/realbot/commit/e787e2e6c489885de8bd6a022255f32fccbe8588))
* **tests:** read TEST_ENTITY_ID from .env in bot-api-response test; add setup_broadcast_webhook.js ([0dc137c](https://github.com/HankHuang0516/realbot/commit/0dc137c85e00de20c74b0c42c7569acbaf117dae))
* **admin:** reorder By/date columns and show full datetime in contribution tables ([260b522](https://github.com/HankHuang0516/realbot/commit/260b5221407c539f6369368fe83e19120bf6d1eb))
* **bind:** reset bot-to-bot counter on rebind to prevent stale rate limits ([daea976](https://github.com/HankHuang0516/realbot/commit/daea976e44768dc65eb515d2bff4b5f400385642))
* restore template literal in set-entity-xp error message ([40a44ad](https://github.com/HankHuang0516/realbot/commit/40a44ad9abbc6f85ae7dfa981d80c8c1f7c9ea59))
* **settings:** right-align copy icon, remove eye buttons ([010ffb7](https://github.com/HankHuang0516/realbot/commit/010ffb7487fe57019423e843676752ad203c1c2d))
* **test:** shorten NEW_NAME to stay within 20-char server limit ([45a1653](https://github.com/HankHuang0516/realbot/commit/45a165359c4212b2d0851cebbfa20c19f26e81e5))
* **settings:** truncate Device ID/Secret with ellipsis, no line wrap ([94a2ea4](https://github.com/HankHuang0516/realbot/commit/94a2ea41be12a026d5149a53e779b2403558639b))
* **info:** update example template with review steps after each goal ([ba3ceb6](https://github.com/HankHuang0516/realbot/commit/ba3ceb61c3df158c43f081784958ca5cb5f7e451))
* **rebrand:** update HTML fallback strings in comparison section ([a332dbd](https://github.com/HankHuang0516/realbot/commit/a332dbd95a4069952d1eb785e3969961f0d89cf3))
* **rebrand:** update SVG and tester guide - remove pet terminology ([c27b27e](https://github.com/HankHuang0516/realbot/commit/c27b27e6fb71240a05e5a5afd1b6b8c42b3b5c41))
* **admin:** use cookie auth for skill-templates/contributions endpoint ([fcefb1a](https://github.com/HankHuang0516/realbot/commit/fcefb1a0a7d295646024931bb1d6e018022d0945))
* **scheduler:** use current timestamp as default scheduled_at for cron schedules ([1610110](https://github.com/HankHuang0516/realbot/commit/1610110239212ffca506b6cbf3dec67dfb862278))


### Features

* **settings:** add copy icon for Device ID and Copy Credentials button ([35a68d7](https://github.com/HankHuang0516/realbot/commit/35a68d70044c94b643ee6a685ecb88840c008179))
* **templates:** add Creative Thinker soul and Step-by-Step Reasoning rule templates ([61e916f](https://github.com/HankHuang0516/realbot/commit/61e916feadad2683d5d774073211d54cda6de898))
* **info:** add deep linking support for guide sub-items ([e16ebb7](https://github.com/HankHuang0516/realbot/commit/e16ebb76d8fdf5d5b53ca117da92c3ea158579f6)), closes [#faq](https://github.com/HankHuang0516/realbot/issues/faq) [#release-notes](https://github.com/HankHuang0516/realbot/issues/release-notes) [#compare](https://github.com/HankHuang0516/realbot/issues/compare)
* **settings:** add Device Secret display with reveal/copy toggle ([4d4281a](https://github.com/HankHuang0516/realbot/commit/4d4281a967a87f404ca5217f32045f1ff6fb500b))
* **schedule:** add deviceSecret dual auth for schedule endpoints ([2716375](https://github.com/HankHuang0516/realbot/commit/2716375a2023b2ff259bdf7aae6051832ddc49c8))
* **android:** add fetchSoulTemplates/fetchRuleTemplates to MissionViewModel ([1c411fc](https://github.com/HankHuang0516/realbot/commit/1c411fce073055eb743d09c71f5d6ce9aed4b988))
* **skill-contribute:** add GET status endpoint for async verification feedback ([e71af93](https://github.com/HankHuang0516/realbot/commit/e71af9310223c23b786e52d24434e47aaafd9132))
* **admin:** add pagination to user list (50 per page) ([ccd5fb3](https://github.com/HankHuang0516/realbot/commit/ccd5fb35117fd978d93bc4265e904f7b8ed20a7b))
* **ios:** add React Native Expo iOS app with full feature parity ([934fe0b](https://github.com/HankHuang0516/realbot/commit/934fe0b2a35929d06fc987803eb7be7175cc4293))
* **android/i18n:** add soul & rule template gallery strings ([0a28d99](https://github.com/HankHuang0516/realbot/commit/0a28d9979ab846214683a9c3bbc76c62be69e385))
* **templates:** add Soul/Rule template community contribution API ([c6fdcba](https://github.com/HankHuang0516/realbot/commit/c6fdcba5076d34dd85a94293a30b875e8a243b34))
* **android:** add SoulGalleryDialog and RuleGalleryDialog ([5a3142a](https://github.com/HankHuang0516/realbot/commit/5a3142af3f67dfa4c4ba9473a4381f89e04aee24))
* **skill-templates:** add structural validation to contribute endpoint ([891327d](https://github.com/HankHuang0516/realbot/commit/891327dc02dbd3d2a8bbbf254d596cdb33fca3ed))
* **scheduler:** add Taiwan time to missionHints + timezone update support ([20f50f7](https://github.com/HankHuang0516/realbot/commit/20f50f746867c20933c58fd20d3051a41f445af3))
* **templates:** add Wise Mentor soul and Brevity First rule templates ([f1494fd](https://github.com/HankHuang0516/realbot/commit/f1494fde800c03fe2c650bda26fc87df36f9dd8d))
* **info:** add 實用案例 category with Claude x OpenClaw guide ([94475ea](https://github.com/HankHuang0516/realbot/commit/94475eaf8c8f0cf9cc2068d6edff14b9036f136d))
* **skill-templates:** auto-approve pipeline + admin contributions UI ([5f94ea1](https://github.com/HankHuang0516/realbot/commit/5f94ea13291d6b0d4f12e563d8451402452b09b7))
* **soul-dialog:** merge dropdown into Gallery, unify template selection ([b9eeb41](https://github.com/HankHuang0516/realbot/commit/b9eeb415d789243243426adf345552c7970cd8b9))
* **channel:** push NAME_CHANGED to channel bots immediately on rename ([d7992fc](https://github.com/HankHuang0516/realbot/commit/d7992fceb50ce615887ed3fe5e5e54c4306be7e9))
* **info:** simplify claude-openclaw guide with full example + copy button ([d8e31e9](https://github.com/HankHuang0516/realbot/commit/d8e31e9a3bf1b0b0dd05ef7bb7498bdcff82b335))
* **rebrand:** update community post intro to AI Agent collaboration ([5fb15a0](https://github.com/HankHuang0516/realbot/commit/5fb15a0eca7911ac987686f844216f818a980e75))
* **rebrand:** update comparison page strings to AI Agent collaboration ([82171a1](https://github.com/HankHuang0516/realbot/commit/82171a161819149f7a9977f0425e41742c816849))
* **rebrand:** update faq_a_what_is to AI Agent collaboration messaging ([a79324a](https://github.com/HankHuang0516/realbot/commit/a79324aeefbe931e0119986ef4917a0516878bb5))
* **rebrand:** update info.html features section to AI Agent positioning ([1a7fae8](https://github.com/HankHuang0516/realbot/commit/1a7fae8758b801a1da934eccbbad7be8d64bc9d8))
* **rebrand:** update openclaw plugin metadata to AI Agent collaboration ([96baef7](https://github.com/HankHuang0516/realbot/commit/96baef7cb5fcf57159ad401b2ed543fef218ae5e))
* **rebrand:** update openclaw-channel README to AI Agent collaboration ([f11653f](https://github.com/HankHuang0516/realbot/commit/f11653f11c44584e0783dddecc1fcef3dd4e8f55))
* **rebrand:** update privacy policy - replace pet terminology with AI agent ([72b487d](https://github.com/HankHuang0516/realbot/commit/72b487d0260f5d2ece537c5c606ebb8f87dd4734))
* **rebrand:** update README and package descriptions to AI Agent collaboration ([f9efffa](https://github.com/HankHuang0516/realbot/commit/f9efffa5179c5685023ef6d199d16f3e8018ee75))
* **android:** wire SoulGalleryDialog and RuleGalleryDialog into add dialogs ([74898b3](https://github.com/HankHuang0516/realbot/commit/74898b3d527990ea769e7f2d3ac8d32a07df9c38))


### Reverts

* **templates:** remove manually added templates, let bot contribute via API ([b1e7914](https://github.com/HankHuang0516/realbot/commit/b1e79143d3bc10afea36dc8fe7294011a5f75c10))

# [1.3.0](https://github.com/HankHuang0516/realbot/compare/v1.2.0...v1.3.0) (2026-03-09)


### Bug Fixes

* **plugin:** add auto-reconnect with exponential backoff to openclaw-channel-eclaw v1.1.0 ([0ae83a0](https://github.com/HankHuang0516/realbot/commit/0ae83a00da24ce72afd63d59f9be828ca2df32a8))
* **skill-contribute:** add GITHUB_TOKEN support to bypass API rate limit ([51dcea3](https://github.com/HankHuang0516/realbot/commit/51dcea3a561d3a083cdf9436b9c61f688d3573fa))
* add i18n support to entire User Guide section in info.html ([1f2131a](https://github.com/HankHuang0516/realbot/commit/1f2131a90b29255075839723536dc0cc823f9d0c))
* **android:** add name/description/ruleType to SkillTemplate and fix gallery dialogs ([e0a79b7](https://github.com/HankHuang0516/realbot/commit/e0a79b76503d36e21e7dc28246e940b27791492b))
* **settings:** align copy icons to far right edge ([a735ce9](https://github.com/HankHuang0516/realbot/commit/a735ce95aabdee2f501a5589c0da2e2cb99a84c5))
* **scheduler:** append missionHints to channel scheduled message text ([f1244d6](https://github.com/HankHuang0516/realbot/commit/f1244d66c2226c04798952e41898be8a7ad8d00a))
* **api:** auto-detect entityId from botSecret in contribute endpoints ([9b3e8d1](https://github.com/HankHuang0516/realbot/commit/9b3e8d12a8084f7a4fe88363291393e6159bb47b))
* **bind:** await single-device save after binding to prevent race condition ([811b3e9](https://github.com/HankHuang0516/realbot/commit/811b3e9b250f7dee518e1f7f7cdf65c1a8dd94d8))
* code review corrections — credential UI and guide accuracy ([5992dc5](https://github.com/HankHuang0516/realbot/commit/5992dc5ca0cf35adee17253f5742ed3619ec836e)), closes [#newSecretValue](https://github.com/HankHuang0516/realbot/issues/newSecretValue)
* **ios-app:** fix i18n compliance and asset config ([e952ec3](https://github.com/HankHuang0516/realbot/commit/e952ec3a0dc569565fff21fd1e3974a507822e19))
* **test:** fix reorder-channel test order array size to match device limit ([3103918](https://github.com/HankHuang0516/realbot/commit/31039180cf26e0e5f2db3292bd153be856c541f6))
* **portal:** fix XSS, broken tags, and filter consistency in soul/rule gallery ([0dd30ec](https://github.com/HankHuang0516/realbot/commit/0dd30ec0c8a358594d4c603ed5c92e7b86871226))
* **admin:** i18n By/Date column headers in contribution tables ([c1caaf6](https://github.com/HankHuang0516/realbot/commit/c1caaf67d893266fca7831cf2c32a231230db4e2))
* **bind:** make /api/bind handler async to fix await syntax error ([f78d373](https://github.com/HankHuang0516/realbot/commit/f78d373e2826b710adf6a7039604d93e90a627d0))
* **api:** move skill-templates/contributions route after adminAuth definition ([4915f3d](https://github.com/HankHuang0516/realbot/commit/4915f3d8f737445f4144bd5998ff5588fb126bbb))
* persist language preference to server for cross-device sync ([bd3f7f6](https://github.com/HankHuang0516/realbot/commit/bd3f7f65657434136dcf40d1f499de2924fc0c74))
* **entity:** preserve XP/level across all unbind/rebind paths ([a27bddf](https://github.com/HankHuang0516/realbot/commit/a27bddf86c15c340ffe44e6b91506b930ef7992c))
* **ai-chat:** prevent false network error when closing chat mid-request ([e787e2e](https://github.com/HankHuang0516/realbot/commit/e787e2e6c489885de8bd6a022255f32fccbe8588))
* **tests:** read TEST_ENTITY_ID from .env in bot-api-response test; add setup_broadcast_webhook.js ([0dc137c](https://github.com/HankHuang0516/realbot/commit/0dc137c85e00de20c74b0c42c7569acbaf117dae))
* **admin:** reorder By/date columns and show full datetime in contribution tables ([260b522](https://github.com/HankHuang0516/realbot/commit/260b5221407c539f6369368fe83e19120bf6d1eb))
* **bind:** reset bot-to-bot counter on rebind to prevent stale rate limits ([daea976](https://github.com/HankHuang0516/realbot/commit/daea976e44768dc65eb515d2bff4b5f400385642))
* restore template literal in set-entity-xp error message ([40a44ad](https://github.com/HankHuang0516/realbot/commit/40a44ad9abbc6f85ae7dfa981d80c8c1f7c9ea59))
* **settings:** right-align copy icon, remove eye buttons ([010ffb7](https://github.com/HankHuang0516/realbot/commit/010ffb7487fe57019423e843676752ad203c1c2d))
* **test:** shorten NEW_NAME to stay within 20-char server limit ([45a1653](https://github.com/HankHuang0516/realbot/commit/45a165359c4212b2d0851cebbfa20c19f26e81e5))
* **settings:** truncate Device ID/Secret with ellipsis, no line wrap ([94a2ea4](https://github.com/HankHuang0516/realbot/commit/94a2ea41be12a026d5149a53e779b2403558639b))
* **info:** update example template with review steps after each goal ([ba3ceb6](https://github.com/HankHuang0516/realbot/commit/ba3ceb61c3df158c43f081784958ca5cb5f7e451))
* **rebrand:** update HTML fallback strings in comparison section ([a332dbd](https://github.com/HankHuang0516/realbot/commit/a332dbd95a4069952d1eb785e3969961f0d89cf3))
* **rebrand:** update SVG and tester guide - remove pet terminology ([c27b27e](https://github.com/HankHuang0516/realbot/commit/c27b27e6fb71240a05e5a5afd1b6b8c42b3b5c41))
* **admin:** use cookie auth for skill-templates/contributions endpoint ([fcefb1a](https://github.com/HankHuang0516/realbot/commit/fcefb1a0a7d295646024931bb1d6e018022d0945))
* **scheduler:** use current timestamp as default scheduled_at for cron schedules ([1610110](https://github.com/HankHuang0516/realbot/commit/1610110239212ffca506b6cbf3dec67dfb862278))


### Features

* **settings:** add copy icon for Device ID and Copy Credentials button ([35a68d7](https://github.com/HankHuang0516/realbot/commit/35a68d70044c94b643ee6a685ecb88840c008179))
* **templates:** add Creative Thinker soul and Step-by-Step Reasoning rule templates ([61e916f](https://github.com/HankHuang0516/realbot/commit/61e916feadad2683d5d774073211d54cda6de898))
* **info:** add deep linking support for guide sub-items ([e16ebb7](https://github.com/HankHuang0516/realbot/commit/e16ebb76d8fdf5d5b53ca117da92c3ea158579f6)), closes [#faq](https://github.com/HankHuang0516/realbot/issues/faq) [#release-notes](https://github.com/HankHuang0516/realbot/issues/release-notes) [#compare](https://github.com/HankHuang0516/realbot/issues/compare)
* **settings:** add Device Secret display with reveal/copy toggle ([4d4281a](https://github.com/HankHuang0516/realbot/commit/4d4281a967a87f404ca5217f32045f1ff6fb500b))
* **schedule:** add deviceSecret dual auth for schedule endpoints ([2716375](https://github.com/HankHuang0516/realbot/commit/2716375a2023b2ff259bdf7aae6051832ddc49c8))
* **android:** add fetchSoulTemplates/fetchRuleTemplates to MissionViewModel ([1c411fc](https://github.com/HankHuang0516/realbot/commit/1c411fce073055eb743d09c71f5d6ce9aed4b988))
* **skill-contribute:** add GET status endpoint for async verification feedback ([e71af93](https://github.com/HankHuang0516/realbot/commit/e71af9310223c23b786e52d24434e47aaafd9132))
* **admin:** add pagination to user list (50 per page) ([ccd5fb3](https://github.com/HankHuang0516/realbot/commit/ccd5fb35117fd978d93bc4265e904f7b8ed20a7b))
* **ios:** add React Native Expo iOS app with full feature parity ([934fe0b](https://github.com/HankHuang0516/realbot/commit/934fe0b2a35929d06fc987803eb7be7175cc4293))
* **android/i18n:** add soul & rule template gallery strings ([0a28d99](https://github.com/HankHuang0516/realbot/commit/0a28d9979ab846214683a9c3bbc76c62be69e385))
* **templates:** add Soul/Rule template community contribution API ([c6fdcba](https://github.com/HankHuang0516/realbot/commit/c6fdcba5076d34dd85a94293a30b875e8a243b34))
* **android:** add SoulGalleryDialog and RuleGalleryDialog ([5a3142a](https://github.com/HankHuang0516/realbot/commit/5a3142af3f67dfa4c4ba9473a4381f89e04aee24))
* **skill-templates:** add structural validation to contribute endpoint ([891327d](https://github.com/HankHuang0516/realbot/commit/891327dc02dbd3d2a8bbbf254d596cdb33fca3ed))
* **scheduler:** add Taiwan time to missionHints + timezone update support ([20f50f7](https://github.com/HankHuang0516/realbot/commit/20f50f746867c20933c58fd20d3051a41f445af3))
* **templates:** add Wise Mentor soul and Brevity First rule templates ([f1494fd](https://github.com/HankHuang0516/realbot/commit/f1494fde800c03fe2c650bda26fc87df36f9dd8d))
* **info:** add 實用案例 category with Claude x OpenClaw guide ([94475ea](https://github.com/HankHuang0516/realbot/commit/94475eaf8c8f0cf9cc2068d6edff14b9036f136d))
* **skill-templates:** auto-approve pipeline + admin contributions UI ([5f94ea1](https://github.com/HankHuang0516/realbot/commit/5f94ea13291d6b0d4f12e563d8451402452b09b7))
* **soul-dialog:** merge dropdown into Gallery, unify template selection ([b9eeb41](https://github.com/HankHuang0516/realbot/commit/b9eeb415d789243243426adf345552c7970cd8b9))
* **channel:** push NAME_CHANGED to channel bots immediately on rename ([d7992fc](https://github.com/HankHuang0516/realbot/commit/d7992fceb50ce615887ed3fe5e5e54c4306be7e9))
* **info:** simplify claude-openclaw guide with full example + copy button ([d8e31e9](https://github.com/HankHuang0516/realbot/commit/d8e31e9a3bf1b0b0dd05ef7bb7498bdcff82b335))
* **rebrand:** update community post intro to AI Agent collaboration ([5fb15a0](https://github.com/HankHuang0516/realbot/commit/5fb15a0eca7911ac987686f844216f818a980e75))
* **rebrand:** update comparison page strings to AI Agent collaboration ([82171a1](https://github.com/HankHuang0516/realbot/commit/82171a161819149f7a9977f0425e41742c816849))
* **rebrand:** update faq_a_what_is to AI Agent collaboration messaging ([a79324a](https://github.com/HankHuang0516/realbot/commit/a79324aeefbe931e0119986ef4917a0516878bb5))
* **rebrand:** update info.html features section to AI Agent positioning ([1a7fae8](https://github.com/HankHuang0516/realbot/commit/1a7fae8758b801a1da934eccbbad7be8d64bc9d8))
* **rebrand:** update openclaw plugin metadata to AI Agent collaboration ([96baef7](https://github.com/HankHuang0516/realbot/commit/96baef7cb5fcf57159ad401b2ed543fef218ae5e))
* **rebrand:** update openclaw-channel README to AI Agent collaboration ([f11653f](https://github.com/HankHuang0516/realbot/commit/f11653f11c44584e0783dddecc1fcef3dd4e8f55))
* **rebrand:** update privacy policy - replace pet terminology with AI agent ([72b487d](https://github.com/HankHuang0516/realbot/commit/72b487d0260f5d2ece537c5c606ebb8f87dd4734))
* **rebrand:** update README and package descriptions to AI Agent collaboration ([f9efffa](https://github.com/HankHuang0516/realbot/commit/f9efffa5179c5685023ef6d199d16f3e8018ee75))
* **android:** wire SoulGalleryDialog and RuleGalleryDialog into add dialogs ([74898b3](https://github.com/HankHuang0516/realbot/commit/74898b3d527990ea769e7f2d3ac8d32a07df9c38))


### Reverts

* **templates:** remove manually added templates, let bot contribute via API ([b1e7914](https://github.com/HankHuang0516/realbot/commit/b1e79143d3bc10afea36dc8fe7294011a5f75c10))

# [1.3.0](https://github.com/HankHuang0516/realbot/compare/v1.2.0...v1.3.0) (2026-03-09)


### Bug Fixes

* **plugin:** add auto-reconnect with exponential backoff to openclaw-channel-eclaw v1.1.0 ([0ae83a0](https://github.com/HankHuang0516/realbot/commit/0ae83a00da24ce72afd63d59f9be828ca2df32a8))
* **skill-contribute:** add GITHUB_TOKEN support to bypass API rate limit ([51dcea3](https://github.com/HankHuang0516/realbot/commit/51dcea3a561d3a083cdf9436b9c61f688d3573fa))
* add i18n support to entire User Guide section in info.html ([1f2131a](https://github.com/HankHuang0516/realbot/commit/1f2131a90b29255075839723536dc0cc823f9d0c))
* **android:** add name/description/ruleType to SkillTemplate and fix gallery dialogs ([e0a79b7](https://github.com/HankHuang0516/realbot/commit/e0a79b76503d36e21e7dc28246e940b27791492b))
* **settings:** align copy icons to far right edge ([a735ce9](https://github.com/HankHuang0516/realbot/commit/a735ce95aabdee2f501a5589c0da2e2cb99a84c5))
* **scheduler:** append missionHints to channel scheduled message text ([f1244d6](https://github.com/HankHuang0516/realbot/commit/f1244d66c2226c04798952e41898be8a7ad8d00a))
* **api:** auto-detect entityId from botSecret in contribute endpoints ([9b3e8d1](https://github.com/HankHuang0516/realbot/commit/9b3e8d12a8084f7a4fe88363291393e6159bb47b))
* **bind:** await single-device save after binding to prevent race condition ([811b3e9](https://github.com/HankHuang0516/realbot/commit/811b3e9b250f7dee518e1f7f7cdf65c1a8dd94d8))
* code review corrections — credential UI and guide accuracy ([5992dc5](https://github.com/HankHuang0516/realbot/commit/5992dc5ca0cf35adee17253f5742ed3619ec836e)), closes [#newSecretValue](https://github.com/HankHuang0516/realbot/issues/newSecretValue)
* **ios-app:** fix i18n compliance and asset config ([e952ec3](https://github.com/HankHuang0516/realbot/commit/e952ec3a0dc569565fff21fd1e3974a507822e19))
* **test:** fix reorder-channel test order array size to match device limit ([3103918](https://github.com/HankHuang0516/realbot/commit/31039180cf26e0e5f2db3292bd153be856c541f6))
* **portal:** fix XSS, broken tags, and filter consistency in soul/rule gallery ([0dd30ec](https://github.com/HankHuang0516/realbot/commit/0dd30ec0c8a358594d4c603ed5c92e7b86871226))
* **admin:** i18n By/Date column headers in contribution tables ([c1caaf6](https://github.com/HankHuang0516/realbot/commit/c1caaf67d893266fca7831cf2c32a231230db4e2))
* **bind:** make /api/bind handler async to fix await syntax error ([f78d373](https://github.com/HankHuang0516/realbot/commit/f78d373e2826b710adf6a7039604d93e90a627d0))
* **api:** move skill-templates/contributions route after adminAuth definition ([4915f3d](https://github.com/HankHuang0516/realbot/commit/4915f3d8f737445f4144bd5998ff5588fb126bbb))
* persist language preference to server for cross-device sync ([bd3f7f6](https://github.com/HankHuang0516/realbot/commit/bd3f7f65657434136dcf40d1f499de2924fc0c74))
* **entity:** preserve XP/level across all unbind/rebind paths ([a27bddf](https://github.com/HankHuang0516/realbot/commit/a27bddf86c15c340ffe44e6b91506b930ef7992c))
* **ai-chat:** prevent false network error when closing chat mid-request ([e787e2e](https://github.com/HankHuang0516/realbot/commit/e787e2e6c489885de8bd6a022255f32fccbe8588))
* **tests:** read TEST_ENTITY_ID from .env in bot-api-response test; add setup_broadcast_webhook.js ([0dc137c](https://github.com/HankHuang0516/realbot/commit/0dc137c85e00de20c74b0c42c7569acbaf117dae))
* **admin:** reorder By/date columns and show full datetime in contribution tables ([260b522](https://github.com/HankHuang0516/realbot/commit/260b5221407c539f6369368fe83e19120bf6d1eb))
* **bind:** reset bot-to-bot counter on rebind to prevent stale rate limits ([daea976](https://github.com/HankHuang0516/realbot/commit/daea976e44768dc65eb515d2bff4b5f400385642))
* **settings:** right-align copy icon, remove eye buttons ([010ffb7](https://github.com/HankHuang0516/realbot/commit/010ffb7487fe57019423e843676752ad203c1c2d))
* **test:** shorten NEW_NAME to stay within 20-char server limit ([45a1653](https://github.com/HankHuang0516/realbot/commit/45a165359c4212b2d0851cebbfa20c19f26e81e5))
* **settings:** truncate Device ID/Secret with ellipsis, no line wrap ([94a2ea4](https://github.com/HankHuang0516/realbot/commit/94a2ea41be12a026d5149a53e779b2403558639b))
* **info:** update example template with review steps after each goal ([ba3ceb6](https://github.com/HankHuang0516/realbot/commit/ba3ceb61c3df158c43f081784958ca5cb5f7e451))
* **rebrand:** update HTML fallback strings in comparison section ([a332dbd](https://github.com/HankHuang0516/realbot/commit/a332dbd95a4069952d1eb785e3969961f0d89cf3))
* **rebrand:** update SVG and tester guide - remove pet terminology ([c27b27e](https://github.com/HankHuang0516/realbot/commit/c27b27e6fb71240a05e5a5afd1b6b8c42b3b5c41))
* **admin:** use cookie auth for skill-templates/contributions endpoint ([fcefb1a](https://github.com/HankHuang0516/realbot/commit/fcefb1a0a7d295646024931bb1d6e018022d0945))
* **scheduler:** use current timestamp as default scheduled_at for cron schedules ([1610110](https://github.com/HankHuang0516/realbot/commit/1610110239212ffca506b6cbf3dec67dfb862278))


### Features

* **settings:** add copy icon for Device ID and Copy Credentials button ([35a68d7](https://github.com/HankHuang0516/realbot/commit/35a68d70044c94b643ee6a685ecb88840c008179))
* **templates:** add Creative Thinker soul and Step-by-Step Reasoning rule templates ([61e916f](https://github.com/HankHuang0516/realbot/commit/61e916feadad2683d5d774073211d54cda6de898))
* **info:** add deep linking support for guide sub-items ([e16ebb7](https://github.com/HankHuang0516/realbot/commit/e16ebb76d8fdf5d5b53ca117da92c3ea158579f6)), closes [#faq](https://github.com/HankHuang0516/realbot/issues/faq) [#release-notes](https://github.com/HankHuang0516/realbot/issues/release-notes) [#compare](https://github.com/HankHuang0516/realbot/issues/compare)
* **settings:** add Device Secret display with reveal/copy toggle ([4d4281a](https://github.com/HankHuang0516/realbot/commit/4d4281a967a87f404ca5217f32045f1ff6fb500b))
* **schedule:** add deviceSecret dual auth for schedule endpoints ([2716375](https://github.com/HankHuang0516/realbot/commit/2716375a2023b2ff259bdf7aae6051832ddc49c8))
* **android:** add fetchSoulTemplates/fetchRuleTemplates to MissionViewModel ([1c411fc](https://github.com/HankHuang0516/realbot/commit/1c411fce073055eb743d09c71f5d6ce9aed4b988))
* **skill-contribute:** add GET status endpoint for async verification feedback ([e71af93](https://github.com/HankHuang0516/realbot/commit/e71af9310223c23b786e52d24434e47aaafd9132))
* **admin:** add pagination to user list (50 per page) ([ccd5fb3](https://github.com/HankHuang0516/realbot/commit/ccd5fb35117fd978d93bc4265e904f7b8ed20a7b))
* **ios:** add React Native Expo iOS app with full feature parity ([934fe0b](https://github.com/HankHuang0516/realbot/commit/934fe0b2a35929d06fc987803eb7be7175cc4293))
* **android/i18n:** add soul & rule template gallery strings ([0a28d99](https://github.com/HankHuang0516/realbot/commit/0a28d9979ab846214683a9c3bbc76c62be69e385))
* **templates:** add Soul/Rule template community contribution API ([c6fdcba](https://github.com/HankHuang0516/realbot/commit/c6fdcba5076d34dd85a94293a30b875e8a243b34))
* **android:** add SoulGalleryDialog and RuleGalleryDialog ([5a3142a](https://github.com/HankHuang0516/realbot/commit/5a3142af3f67dfa4c4ba9473a4381f89e04aee24))
* **skill-templates:** add structural validation to contribute endpoint ([891327d](https://github.com/HankHuang0516/realbot/commit/891327dc02dbd3d2a8bbbf254d596cdb33fca3ed))
* **scheduler:** add Taiwan time to missionHints + timezone update support ([20f50f7](https://github.com/HankHuang0516/realbot/commit/20f50f746867c20933c58fd20d3051a41f445af3))
* **templates:** add Wise Mentor soul and Brevity First rule templates ([f1494fd](https://github.com/HankHuang0516/realbot/commit/f1494fde800c03fe2c650bda26fc87df36f9dd8d))
* **info:** add 實用案例 category with Claude x OpenClaw guide ([94475ea](https://github.com/HankHuang0516/realbot/commit/94475eaf8c8f0cf9cc2068d6edff14b9036f136d))
* **skill-templates:** auto-approve pipeline + admin contributions UI ([5f94ea1](https://github.com/HankHuang0516/realbot/commit/5f94ea13291d6b0d4f12e563d8451402452b09b7))
* **soul-dialog:** merge dropdown into Gallery, unify template selection ([b9eeb41](https://github.com/HankHuang0516/realbot/commit/b9eeb415d789243243426adf345552c7970cd8b9))
* **channel:** push NAME_CHANGED to channel bots immediately on rename ([d7992fc](https://github.com/HankHuang0516/realbot/commit/d7992fceb50ce615887ed3fe5e5e54c4306be7e9))
* **info:** simplify claude-openclaw guide with full example + copy button ([d8e31e9](https://github.com/HankHuang0516/realbot/commit/d8e31e9a3bf1b0b0dd05ef7bb7498bdcff82b335))
* **rebrand:** update community post intro to AI Agent collaboration ([5fb15a0](https://github.com/HankHuang0516/realbot/commit/5fb15a0eca7911ac987686f844216f818a980e75))
* **rebrand:** update comparison page strings to AI Agent collaboration ([82171a1](https://github.com/HankHuang0516/realbot/commit/82171a161819149f7a9977f0425e41742c816849))
* **rebrand:** update faq_a_what_is to AI Agent collaboration messaging ([a79324a](https://github.com/HankHuang0516/realbot/commit/a79324aeefbe931e0119986ef4917a0516878bb5))
* **rebrand:** update info.html features section to AI Agent positioning ([1a7fae8](https://github.com/HankHuang0516/realbot/commit/1a7fae8758b801a1da934eccbbad7be8d64bc9d8))
* **rebrand:** update openclaw plugin metadata to AI Agent collaboration ([96baef7](https://github.com/HankHuang0516/realbot/commit/96baef7cb5fcf57159ad401b2ed543fef218ae5e))
* **rebrand:** update openclaw-channel README to AI Agent collaboration ([f11653f](https://github.com/HankHuang0516/realbot/commit/f11653f11c44584e0783dddecc1fcef3dd4e8f55))
* **rebrand:** update privacy policy - replace pet terminology with AI agent ([72b487d](https://github.com/HankHuang0516/realbot/commit/72b487d0260f5d2ece537c5c606ebb8f87dd4734))
* **rebrand:** update README and package descriptions to AI Agent collaboration ([f9efffa](https://github.com/HankHuang0516/realbot/commit/f9efffa5179c5685023ef6d199d16f3e8018ee75))
* **android:** wire SoulGalleryDialog and RuleGalleryDialog into add dialogs ([74898b3](https://github.com/HankHuang0516/realbot/commit/74898b3d527990ea769e7f2d3ac8d32a07df9c38))


### Reverts

* **templates:** remove manually added templates, let bot contribute via API ([b1e7914](https://github.com/HankHuang0516/realbot/commit/b1e79143d3bc10afea36dc8fe7294011a5f75c10))

# [1.3.0](https://github.com/HankHuang0516/realbot/compare/v1.2.0...v1.3.0) (2026-03-09)


### Bug Fixes

* **plugin:** add auto-reconnect with exponential backoff to openclaw-channel-eclaw v1.1.0 ([0ae83a0](https://github.com/HankHuang0516/realbot/commit/0ae83a00da24ce72afd63d59f9be828ca2df32a8))
* **skill-contribute:** add GITHUB_TOKEN support to bypass API rate limit ([51dcea3](https://github.com/HankHuang0516/realbot/commit/51dcea3a561d3a083cdf9436b9c61f688d3573fa))
* add i18n support to entire User Guide section in info.html ([1f2131a](https://github.com/HankHuang0516/realbot/commit/1f2131a90b29255075839723536dc0cc823f9d0c))
* **android:** add name/description/ruleType to SkillTemplate and fix gallery dialogs ([e0a79b7](https://github.com/HankHuang0516/realbot/commit/e0a79b76503d36e21e7dc28246e940b27791492b))
* **settings:** align copy icons to far right edge ([a735ce9](https://github.com/HankHuang0516/realbot/commit/a735ce95aabdee2f501a5589c0da2e2cb99a84c5))
* **scheduler:** append missionHints to channel scheduled message text ([f1244d6](https://github.com/HankHuang0516/realbot/commit/f1244d66c2226c04798952e41898be8a7ad8d00a))
* **api:** auto-detect entityId from botSecret in contribute endpoints ([9b3e8d1](https://github.com/HankHuang0516/realbot/commit/9b3e8d12a8084f7a4fe88363291393e6159bb47b))
* **bind:** await single-device save after binding to prevent race condition ([811b3e9](https://github.com/HankHuang0516/realbot/commit/811b3e9b250f7dee518e1f7f7cdf65c1a8dd94d8))
* code review corrections — credential UI and guide accuracy ([5992dc5](https://github.com/HankHuang0516/realbot/commit/5992dc5ca0cf35adee17253f5742ed3619ec836e)), closes [#newSecretValue](https://github.com/HankHuang0516/realbot/issues/newSecretValue)
* **ios-app:** fix i18n compliance and asset config ([e952ec3](https://github.com/HankHuang0516/realbot/commit/e952ec3a0dc569565fff21fd1e3974a507822e19))
* **test:** fix reorder-channel test order array size to match device limit ([3103918](https://github.com/HankHuang0516/realbot/commit/31039180cf26e0e5f2db3292bd153be856c541f6))
* **portal:** fix XSS, broken tags, and filter consistency in soul/rule gallery ([0dd30ec](https://github.com/HankHuang0516/realbot/commit/0dd30ec0c8a358594d4c603ed5c92e7b86871226))
* **admin:** i18n By/Date column headers in contribution tables ([c1caaf6](https://github.com/HankHuang0516/realbot/commit/c1caaf67d893266fca7831cf2c32a231230db4e2))
* **bind:** make /api/bind handler async to fix await syntax error ([f78d373](https://github.com/HankHuang0516/realbot/commit/f78d373e2826b710adf6a7039604d93e90a627d0))
* **api:** move skill-templates/contributions route after adminAuth definition ([4915f3d](https://github.com/HankHuang0516/realbot/commit/4915f3d8f737445f4144bd5998ff5588fb126bbb))
* persist language preference to server for cross-device sync ([bd3f7f6](https://github.com/HankHuang0516/realbot/commit/bd3f7f65657434136dcf40d1f499de2924fc0c74))
* **entity:** preserve XP/level across all unbind/rebind paths ([a27bddf](https://github.com/HankHuang0516/realbot/commit/a27bddf86c15c340ffe44e6b91506b930ef7992c))
* **ai-chat:** prevent false network error when closing chat mid-request ([e787e2e](https://github.com/HankHuang0516/realbot/commit/e787e2e6c489885de8bd6a022255f32fccbe8588))
* **tests:** read TEST_ENTITY_ID from .env in bot-api-response test; add setup_broadcast_webhook.js ([0dc137c](https://github.com/HankHuang0516/realbot/commit/0dc137c85e00de20c74b0c42c7569acbaf117dae))
* **admin:** reorder By/date columns and show full datetime in contribution tables ([260b522](https://github.com/HankHuang0516/realbot/commit/260b5221407c539f6369368fe83e19120bf6d1eb))
* **bind:** reset bot-to-bot counter on rebind to prevent stale rate limits ([daea976](https://github.com/HankHuang0516/realbot/commit/daea976e44768dc65eb515d2bff4b5f400385642))
* **settings:** right-align copy icon, remove eye buttons ([010ffb7](https://github.com/HankHuang0516/realbot/commit/010ffb7487fe57019423e843676752ad203c1c2d))
* **test:** shorten NEW_NAME to stay within 20-char server limit ([45a1653](https://github.com/HankHuang0516/realbot/commit/45a165359c4212b2d0851cebbfa20c19f26e81e5))
* **settings:** truncate Device ID/Secret with ellipsis, no line wrap ([94a2ea4](https://github.com/HankHuang0516/realbot/commit/94a2ea41be12a026d5149a53e779b2403558639b))
* **info:** update example template with review steps after each goal ([ba3ceb6](https://github.com/HankHuang0516/realbot/commit/ba3ceb61c3df158c43f081784958ca5cb5f7e451))
* **rebrand:** update HTML fallback strings in comparison section ([a332dbd](https://github.com/HankHuang0516/realbot/commit/a332dbd95a4069952d1eb785e3969961f0d89cf3))
* **rebrand:** update SVG and tester guide - remove pet terminology ([c27b27e](https://github.com/HankHuang0516/realbot/commit/c27b27e6fb71240a05e5a5afd1b6b8c42b3b5c41))
* **admin:** use cookie auth for skill-templates/contributions endpoint ([fcefb1a](https://github.com/HankHuang0516/realbot/commit/fcefb1a0a7d295646024931bb1d6e018022d0945))
* **scheduler:** use current timestamp as default scheduled_at for cron schedules ([1610110](https://github.com/HankHuang0516/realbot/commit/1610110239212ffca506b6cbf3dec67dfb862278))


### Features

* **settings:** add copy icon for Device ID and Copy Credentials button ([35a68d7](https://github.com/HankHuang0516/realbot/commit/35a68d70044c94b643ee6a685ecb88840c008179))
* **templates:** add Creative Thinker soul and Step-by-Step Reasoning rule templates ([61e916f](https://github.com/HankHuang0516/realbot/commit/61e916feadad2683d5d774073211d54cda6de898))
* **info:** add deep linking support for guide sub-items ([e16ebb7](https://github.com/HankHuang0516/realbot/commit/e16ebb76d8fdf5d5b53ca117da92c3ea158579f6)), closes [#faq](https://github.com/HankHuang0516/realbot/issues/faq) [#release-notes](https://github.com/HankHuang0516/realbot/issues/release-notes) [#compare](https://github.com/HankHuang0516/realbot/issues/compare)
* **settings:** add Device Secret display with reveal/copy toggle ([4d4281a](https://github.com/HankHuang0516/realbot/commit/4d4281a967a87f404ca5217f32045f1ff6fb500b))
* **schedule:** add deviceSecret dual auth for schedule endpoints ([2716375](https://github.com/HankHuang0516/realbot/commit/2716375a2023b2ff259bdf7aae6051832ddc49c8))
* **android:** add fetchSoulTemplates/fetchRuleTemplates to MissionViewModel ([1c411fc](https://github.com/HankHuang0516/realbot/commit/1c411fce073055eb743d09c71f5d6ce9aed4b988))
* **skill-contribute:** add GET status endpoint for async verification feedback ([e71af93](https://github.com/HankHuang0516/realbot/commit/e71af9310223c23b786e52d24434e47aaafd9132))
* **admin:** add pagination to user list (50 per page) ([ccd5fb3](https://github.com/HankHuang0516/realbot/commit/ccd5fb35117fd978d93bc4265e904f7b8ed20a7b))
* **ios:** add React Native Expo iOS app with full feature parity ([934fe0b](https://github.com/HankHuang0516/realbot/commit/934fe0b2a35929d06fc987803eb7be7175cc4293))
* **android/i18n:** add soul & rule template gallery strings ([0a28d99](https://github.com/HankHuang0516/realbot/commit/0a28d9979ab846214683a9c3bbc76c62be69e385))
* **templates:** add Soul/Rule template community contribution API ([c6fdcba](https://github.com/HankHuang0516/realbot/commit/c6fdcba5076d34dd85a94293a30b875e8a243b34))
* **android:** add SoulGalleryDialog and RuleGalleryDialog ([5a3142a](https://github.com/HankHuang0516/realbot/commit/5a3142af3f67dfa4c4ba9473a4381f89e04aee24))
* **skill-templates:** add structural validation to contribute endpoint ([891327d](https://github.com/HankHuang0516/realbot/commit/891327dc02dbd3d2a8bbbf254d596cdb33fca3ed))
* **templates:** add Wise Mentor soul and Brevity First rule templates ([f1494fd](https://github.com/HankHuang0516/realbot/commit/f1494fde800c03fe2c650bda26fc87df36f9dd8d))
* **info:** add 實用案例 category with Claude x OpenClaw guide ([94475ea](https://github.com/HankHuang0516/realbot/commit/94475eaf8c8f0cf9cc2068d6edff14b9036f136d))
* **skill-templates:** auto-approve pipeline + admin contributions UI ([5f94ea1](https://github.com/HankHuang0516/realbot/commit/5f94ea13291d6b0d4f12e563d8451402452b09b7))
* **soul-dialog:** merge dropdown into Gallery, unify template selection ([b9eeb41](https://github.com/HankHuang0516/realbot/commit/b9eeb415d789243243426adf345552c7970cd8b9))
* **channel:** push NAME_CHANGED to channel bots immediately on rename ([d7992fc](https://github.com/HankHuang0516/realbot/commit/d7992fceb50ce615887ed3fe5e5e54c4306be7e9))
* **info:** simplify claude-openclaw guide with full example + copy button ([d8e31e9](https://github.com/HankHuang0516/realbot/commit/d8e31e9a3bf1b0b0dd05ef7bb7498bdcff82b335))
* **rebrand:** update community post intro to AI Agent collaboration ([5fb15a0](https://github.com/HankHuang0516/realbot/commit/5fb15a0eca7911ac987686f844216f818a980e75))
* **rebrand:** update comparison page strings to AI Agent collaboration ([82171a1](https://github.com/HankHuang0516/realbot/commit/82171a161819149f7a9977f0425e41742c816849))
* **rebrand:** update faq_a_what_is to AI Agent collaboration messaging ([a79324a](https://github.com/HankHuang0516/realbot/commit/a79324aeefbe931e0119986ef4917a0516878bb5))
* **rebrand:** update info.html features section to AI Agent positioning ([1a7fae8](https://github.com/HankHuang0516/realbot/commit/1a7fae8758b801a1da934eccbbad7be8d64bc9d8))
* **rebrand:** update openclaw plugin metadata to AI Agent collaboration ([96baef7](https://github.com/HankHuang0516/realbot/commit/96baef7cb5fcf57159ad401b2ed543fef218ae5e))
* **rebrand:** update openclaw-channel README to AI Agent collaboration ([f11653f](https://github.com/HankHuang0516/realbot/commit/f11653f11c44584e0783dddecc1fcef3dd4e8f55))
* **rebrand:** update privacy policy - replace pet terminology with AI agent ([72b487d](https://github.com/HankHuang0516/realbot/commit/72b487d0260f5d2ece537c5c606ebb8f87dd4734))
* **rebrand:** update README and package descriptions to AI Agent collaboration ([f9efffa](https://github.com/HankHuang0516/realbot/commit/f9efffa5179c5685023ef6d199d16f3e8018ee75))
* **android:** wire SoulGalleryDialog and RuleGalleryDialog into add dialogs ([74898b3](https://github.com/HankHuang0516/realbot/commit/74898b3d527990ea769e7f2d3ac8d32a07df9c38))


### Reverts

* **templates:** remove manually added templates, let bot contribute via API ([b1e7914](https://github.com/HankHuang0516/realbot/commit/b1e79143d3bc10afea36dc8fe7294011a5f75c10))

# [1.3.0](https://github.com/HankHuang0516/realbot/compare/v1.2.0...v1.3.0) (2026-03-09)


### Bug Fixes

* **plugin:** add auto-reconnect with exponential backoff to openclaw-channel-eclaw v1.1.0 ([0ae83a0](https://github.com/HankHuang0516/realbot/commit/0ae83a00da24ce72afd63d59f9be828ca2df32a8))
* **skill-contribute:** add GITHUB_TOKEN support to bypass API rate limit ([51dcea3](https://github.com/HankHuang0516/realbot/commit/51dcea3a561d3a083cdf9436b9c61f688d3573fa))
* add i18n support to entire User Guide section in info.html ([1f2131a](https://github.com/HankHuang0516/realbot/commit/1f2131a90b29255075839723536dc0cc823f9d0c))
* **android:** add name/description/ruleType to SkillTemplate and fix gallery dialogs ([e0a79b7](https://github.com/HankHuang0516/realbot/commit/e0a79b76503d36e21e7dc28246e940b27791492b))
* **settings:** align copy icons to far right edge ([a735ce9](https://github.com/HankHuang0516/realbot/commit/a735ce95aabdee2f501a5589c0da2e2cb99a84c5))
* **api:** auto-detect entityId from botSecret in contribute endpoints ([9b3e8d1](https://github.com/HankHuang0516/realbot/commit/9b3e8d12a8084f7a4fe88363291393e6159bb47b))
* **bind:** await single-device save after binding to prevent race condition ([811b3e9](https://github.com/HankHuang0516/realbot/commit/811b3e9b250f7dee518e1f7f7cdf65c1a8dd94d8))
* code review corrections — credential UI and guide accuracy ([5992dc5](https://github.com/HankHuang0516/realbot/commit/5992dc5ca0cf35adee17253f5742ed3619ec836e)), closes [#newSecretValue](https://github.com/HankHuang0516/realbot/issues/newSecretValue)
* **ios-app:** fix i18n compliance and asset config ([e952ec3](https://github.com/HankHuang0516/realbot/commit/e952ec3a0dc569565fff21fd1e3974a507822e19))
* **test:** fix reorder-channel test order array size to match device limit ([3103918](https://github.com/HankHuang0516/realbot/commit/31039180cf26e0e5f2db3292bd153be856c541f6))
* **portal:** fix XSS, broken tags, and filter consistency in soul/rule gallery ([0dd30ec](https://github.com/HankHuang0516/realbot/commit/0dd30ec0c8a358594d4c603ed5c92e7b86871226))
* **admin:** i18n By/Date column headers in contribution tables ([c1caaf6](https://github.com/HankHuang0516/realbot/commit/c1caaf67d893266fca7831cf2c32a231230db4e2))
* **bind:** make /api/bind handler async to fix await syntax error ([f78d373](https://github.com/HankHuang0516/realbot/commit/f78d373e2826b710adf6a7039604d93e90a627d0))
* **api:** move skill-templates/contributions route after adminAuth definition ([4915f3d](https://github.com/HankHuang0516/realbot/commit/4915f3d8f737445f4144bd5998ff5588fb126bbb))
* persist language preference to server for cross-device sync ([bd3f7f6](https://github.com/HankHuang0516/realbot/commit/bd3f7f65657434136dcf40d1f499de2924fc0c74))
* **entity:** preserve XP/level across all unbind/rebind paths ([a27bddf](https://github.com/HankHuang0516/realbot/commit/a27bddf86c15c340ffe44e6b91506b930ef7992c))
* **ai-chat:** prevent false network error when closing chat mid-request ([e787e2e](https://github.com/HankHuang0516/realbot/commit/e787e2e6c489885de8bd6a022255f32fccbe8588))
* **tests:** read TEST_ENTITY_ID from .env in bot-api-response test; add setup_broadcast_webhook.js ([0dc137c](https://github.com/HankHuang0516/realbot/commit/0dc137c85e00de20c74b0c42c7569acbaf117dae))
* **admin:** reorder By/date columns and show full datetime in contribution tables ([260b522](https://github.com/HankHuang0516/realbot/commit/260b5221407c539f6369368fe83e19120bf6d1eb))
* **bind:** reset bot-to-bot counter on rebind to prevent stale rate limits ([daea976](https://github.com/HankHuang0516/realbot/commit/daea976e44768dc65eb515d2bff4b5f400385642))
* **settings:** right-align copy icon, remove eye buttons ([010ffb7](https://github.com/HankHuang0516/realbot/commit/010ffb7487fe57019423e843676752ad203c1c2d))
* **test:** shorten NEW_NAME to stay within 20-char server limit ([45a1653](https://github.com/HankHuang0516/realbot/commit/45a165359c4212b2d0851cebbfa20c19f26e81e5))
* **settings:** truncate Device ID/Secret with ellipsis, no line wrap ([94a2ea4](https://github.com/HankHuang0516/realbot/commit/94a2ea41be12a026d5149a53e779b2403558639b))
* **info:** update example template with review steps after each goal ([ba3ceb6](https://github.com/HankHuang0516/realbot/commit/ba3ceb61c3df158c43f081784958ca5cb5f7e451))
* **rebrand:** update HTML fallback strings in comparison section ([a332dbd](https://github.com/HankHuang0516/realbot/commit/a332dbd95a4069952d1eb785e3969961f0d89cf3))
* **rebrand:** update SVG and tester guide - remove pet terminology ([c27b27e](https://github.com/HankHuang0516/realbot/commit/c27b27e6fb71240a05e5a5afd1b6b8c42b3b5c41))
* **admin:** use cookie auth for skill-templates/contributions endpoint ([fcefb1a](https://github.com/HankHuang0516/realbot/commit/fcefb1a0a7d295646024931bb1d6e018022d0945))
* **scheduler:** use current timestamp as default scheduled_at for cron schedules ([1610110](https://github.com/HankHuang0516/realbot/commit/1610110239212ffca506b6cbf3dec67dfb862278))


### Features

* **settings:** add copy icon for Device ID and Copy Credentials button ([35a68d7](https://github.com/HankHuang0516/realbot/commit/35a68d70044c94b643ee6a685ecb88840c008179))
* **templates:** add Creative Thinker soul and Step-by-Step Reasoning rule templates ([61e916f](https://github.com/HankHuang0516/realbot/commit/61e916feadad2683d5d774073211d54cda6de898))
* **info:** add deep linking support for guide sub-items ([e16ebb7](https://github.com/HankHuang0516/realbot/commit/e16ebb76d8fdf5d5b53ca117da92c3ea158579f6)), closes [#faq](https://github.com/HankHuang0516/realbot/issues/faq) [#release-notes](https://github.com/HankHuang0516/realbot/issues/release-notes) [#compare](https://github.com/HankHuang0516/realbot/issues/compare)
* **settings:** add Device Secret display with reveal/copy toggle ([4d4281a](https://github.com/HankHuang0516/realbot/commit/4d4281a967a87f404ca5217f32045f1ff6fb500b))
* **schedule:** add deviceSecret dual auth for schedule endpoints ([2716375](https://github.com/HankHuang0516/realbot/commit/2716375a2023b2ff259bdf7aae6051832ddc49c8))
* **android:** add fetchSoulTemplates/fetchRuleTemplates to MissionViewModel ([1c411fc](https://github.com/HankHuang0516/realbot/commit/1c411fce073055eb743d09c71f5d6ce9aed4b988))
* **skill-contribute:** add GET status endpoint for async verification feedback ([e71af93](https://github.com/HankHuang0516/realbot/commit/e71af9310223c23b786e52d24434e47aaafd9132))
* **admin:** add pagination to user list (50 per page) ([ccd5fb3](https://github.com/HankHuang0516/realbot/commit/ccd5fb35117fd978d93bc4265e904f7b8ed20a7b))
* **ios:** add React Native Expo iOS app with full feature parity ([934fe0b](https://github.com/HankHuang0516/realbot/commit/934fe0b2a35929d06fc987803eb7be7175cc4293))
* **android/i18n:** add soul & rule template gallery strings ([0a28d99](https://github.com/HankHuang0516/realbot/commit/0a28d9979ab846214683a9c3bbc76c62be69e385))
* **templates:** add Soul/Rule template community contribution API ([c6fdcba](https://github.com/HankHuang0516/realbot/commit/c6fdcba5076d34dd85a94293a30b875e8a243b34))
* **android:** add SoulGalleryDialog and RuleGalleryDialog ([5a3142a](https://github.com/HankHuang0516/realbot/commit/5a3142af3f67dfa4c4ba9473a4381f89e04aee24))
* **skill-templates:** add structural validation to contribute endpoint ([891327d](https://github.com/HankHuang0516/realbot/commit/891327dc02dbd3d2a8bbbf254d596cdb33fca3ed))
* **templates:** add Wise Mentor soul and Brevity First rule templates ([f1494fd](https://github.com/HankHuang0516/realbot/commit/f1494fde800c03fe2c650bda26fc87df36f9dd8d))
* **info:** add 實用案例 category with Claude x OpenClaw guide ([94475ea](https://github.com/HankHuang0516/realbot/commit/94475eaf8c8f0cf9cc2068d6edff14b9036f136d))
* **skill-templates:** auto-approve pipeline + admin contributions UI ([5f94ea1](https://github.com/HankHuang0516/realbot/commit/5f94ea13291d6b0d4f12e563d8451402452b09b7))
* **soul-dialog:** merge dropdown into Gallery, unify template selection ([b9eeb41](https://github.com/HankHuang0516/realbot/commit/b9eeb415d789243243426adf345552c7970cd8b9))
* **channel:** push NAME_CHANGED to channel bots immediately on rename ([d7992fc](https://github.com/HankHuang0516/realbot/commit/d7992fceb50ce615887ed3fe5e5e54c4306be7e9))
* **info:** simplify claude-openclaw guide with full example + copy button ([d8e31e9](https://github.com/HankHuang0516/realbot/commit/d8e31e9a3bf1b0b0dd05ef7bb7498bdcff82b335))
* **rebrand:** update community post intro to AI Agent collaboration ([5fb15a0](https://github.com/HankHuang0516/realbot/commit/5fb15a0eca7911ac987686f844216f818a980e75))
* **rebrand:** update comparison page strings to AI Agent collaboration ([82171a1](https://github.com/HankHuang0516/realbot/commit/82171a161819149f7a9977f0425e41742c816849))
* **rebrand:** update faq_a_what_is to AI Agent collaboration messaging ([a79324a](https://github.com/HankHuang0516/realbot/commit/a79324aeefbe931e0119986ef4917a0516878bb5))
* **rebrand:** update info.html features section to AI Agent positioning ([1a7fae8](https://github.com/HankHuang0516/realbot/commit/1a7fae8758b801a1da934eccbbad7be8d64bc9d8))
* **rebrand:** update openclaw plugin metadata to AI Agent collaboration ([96baef7](https://github.com/HankHuang0516/realbot/commit/96baef7cb5fcf57159ad401b2ed543fef218ae5e))
* **rebrand:** update openclaw-channel README to AI Agent collaboration ([f11653f](https://github.com/HankHuang0516/realbot/commit/f11653f11c44584e0783dddecc1fcef3dd4e8f55))
* **rebrand:** update privacy policy - replace pet terminology with AI agent ([72b487d](https://github.com/HankHuang0516/realbot/commit/72b487d0260f5d2ece537c5c606ebb8f87dd4734))
* **rebrand:** update README and package descriptions to AI Agent collaboration ([f9efffa](https://github.com/HankHuang0516/realbot/commit/f9efffa5179c5685023ef6d199d16f3e8018ee75))
* **android:** wire SoulGalleryDialog and RuleGalleryDialog into add dialogs ([74898b3](https://github.com/HankHuang0516/realbot/commit/74898b3d527990ea769e7f2d3ac8d32a07df9c38))


### Reverts

* **templates:** remove manually added templates, let bot contribute via API ([b1e7914](https://github.com/HankHuang0516/realbot/commit/b1e79143d3bc10afea36dc8fe7294011a5f75c10))

# [1.3.0](https://github.com/HankHuang0516/realbot/compare/v1.2.0...v1.3.0) (2026-03-08)


### Bug Fixes

* **plugin:** add auto-reconnect with exponential backoff to openclaw-channel-eclaw v1.1.0 ([0ae83a0](https://github.com/HankHuang0516/realbot/commit/0ae83a00da24ce72afd63d59f9be828ca2df32a8))
* **skill-contribute:** add GITHUB_TOKEN support to bypass API rate limit ([51dcea3](https://github.com/HankHuang0516/realbot/commit/51dcea3a561d3a083cdf9436b9c61f688d3573fa))
* add i18n support to entire User Guide section in info.html ([1f2131a](https://github.com/HankHuang0516/realbot/commit/1f2131a90b29255075839723536dc0cc823f9d0c))
* **android:** add name/description/ruleType to SkillTemplate and fix gallery dialogs ([e0a79b7](https://github.com/HankHuang0516/realbot/commit/e0a79b76503d36e21e7dc28246e940b27791492b))
* **settings:** align copy icons to far right edge ([a735ce9](https://github.com/HankHuang0516/realbot/commit/a735ce95aabdee2f501a5589c0da2e2cb99a84c5))
* **api:** auto-detect entityId from botSecret in contribute endpoints ([9b3e8d1](https://github.com/HankHuang0516/realbot/commit/9b3e8d12a8084f7a4fe88363291393e6159bb47b))
* **bind:** await single-device save after binding to prevent race condition ([811b3e9](https://github.com/HankHuang0516/realbot/commit/811b3e9b250f7dee518e1f7f7cdf65c1a8dd94d8))
* code review corrections — credential UI and guide accuracy ([5992dc5](https://github.com/HankHuang0516/realbot/commit/5992dc5ca0cf35adee17253f5742ed3619ec836e)), closes [#newSecretValue](https://github.com/HankHuang0516/realbot/issues/newSecretValue)
* **test:** fix reorder-channel test order array size to match device limit ([3103918](https://github.com/HankHuang0516/realbot/commit/31039180cf26e0e5f2db3292bd153be856c541f6))
* **portal:** fix XSS, broken tags, and filter consistency in soul/rule gallery ([0dd30ec](https://github.com/HankHuang0516/realbot/commit/0dd30ec0c8a358594d4c603ed5c92e7b86871226))
* **admin:** i18n By/Date column headers in contribution tables ([c1caaf6](https://github.com/HankHuang0516/realbot/commit/c1caaf67d893266fca7831cf2c32a231230db4e2))
* **bind:** make /api/bind handler async to fix await syntax error ([f78d373](https://github.com/HankHuang0516/realbot/commit/f78d373e2826b710adf6a7039604d93e90a627d0))
* **api:** move skill-templates/contributions route after adminAuth definition ([4915f3d](https://github.com/HankHuang0516/realbot/commit/4915f3d8f737445f4144bd5998ff5588fb126bbb))
* persist language preference to server for cross-device sync ([bd3f7f6](https://github.com/HankHuang0516/realbot/commit/bd3f7f65657434136dcf40d1f499de2924fc0c74))
* **ai-chat:** prevent false network error when closing chat mid-request ([e787e2e](https://github.com/HankHuang0516/realbot/commit/e787e2e6c489885de8bd6a022255f32fccbe8588))
* **tests:** read TEST_ENTITY_ID from .env in bot-api-response test; add setup_broadcast_webhook.js ([0dc137c](https://github.com/HankHuang0516/realbot/commit/0dc137c85e00de20c74b0c42c7569acbaf117dae))
* **admin:** reorder By/date columns and show full datetime in contribution tables ([260b522](https://github.com/HankHuang0516/realbot/commit/260b5221407c539f6369368fe83e19120bf6d1eb))
* **bind:** reset bot-to-bot counter on rebind to prevent stale rate limits ([daea976](https://github.com/HankHuang0516/realbot/commit/daea976e44768dc65eb515d2bff4b5f400385642))
* **settings:** right-align copy icon, remove eye buttons ([010ffb7](https://github.com/HankHuang0516/realbot/commit/010ffb7487fe57019423e843676752ad203c1c2d))
* **test:** shorten NEW_NAME to stay within 20-char server limit ([45a1653](https://github.com/HankHuang0516/realbot/commit/45a165359c4212b2d0851cebbfa20c19f26e81e5))
* **settings:** truncate Device ID/Secret with ellipsis, no line wrap ([94a2ea4](https://github.com/HankHuang0516/realbot/commit/94a2ea41be12a026d5149a53e779b2403558639b))
* **info:** update example template with review steps after each goal ([ba3ceb6](https://github.com/HankHuang0516/realbot/commit/ba3ceb61c3df158c43f081784958ca5cb5f7e451))
* **rebrand:** update HTML fallback strings in comparison section ([a332dbd](https://github.com/HankHuang0516/realbot/commit/a332dbd95a4069952d1eb785e3969961f0d89cf3))
* **rebrand:** update SVG and tester guide - remove pet terminology ([c27b27e](https://github.com/HankHuang0516/realbot/commit/c27b27e6fb71240a05e5a5afd1b6b8c42b3b5c41))
* **admin:** use cookie auth for skill-templates/contributions endpoint ([fcefb1a](https://github.com/HankHuang0516/realbot/commit/fcefb1a0a7d295646024931bb1d6e018022d0945))
* **scheduler:** use current timestamp as default scheduled_at for cron schedules ([1610110](https://github.com/HankHuang0516/realbot/commit/1610110239212ffca506b6cbf3dec67dfb862278))


### Features

* **settings:** add copy icon for Device ID and Copy Credentials button ([35a68d7](https://github.com/HankHuang0516/realbot/commit/35a68d70044c94b643ee6a685ecb88840c008179))
* **templates:** add Creative Thinker soul and Step-by-Step Reasoning rule templates ([61e916f](https://github.com/HankHuang0516/realbot/commit/61e916feadad2683d5d774073211d54cda6de898))
* **info:** add deep linking support for guide sub-items ([e16ebb7](https://github.com/HankHuang0516/realbot/commit/e16ebb76d8fdf5d5b53ca117da92c3ea158579f6)), closes [#faq](https://github.com/HankHuang0516/realbot/issues/faq) [#release-notes](https://github.com/HankHuang0516/realbot/issues/release-notes) [#compare](https://github.com/HankHuang0516/realbot/issues/compare)
* **settings:** add Device Secret display with reveal/copy toggle ([4d4281a](https://github.com/HankHuang0516/realbot/commit/4d4281a967a87f404ca5217f32045f1ff6fb500b))
* **schedule:** add deviceSecret dual auth for schedule endpoints ([2716375](https://github.com/HankHuang0516/realbot/commit/2716375a2023b2ff259bdf7aae6051832ddc49c8))
* **android:** add fetchSoulTemplates/fetchRuleTemplates to MissionViewModel ([1c411fc](https://github.com/HankHuang0516/realbot/commit/1c411fce073055eb743d09c71f5d6ce9aed4b988))
* **skill-contribute:** add GET status endpoint for async verification feedback ([e71af93](https://github.com/HankHuang0516/realbot/commit/e71af9310223c23b786e52d24434e47aaafd9132))
* **admin:** add pagination to user list (50 per page) ([ccd5fb3](https://github.com/HankHuang0516/realbot/commit/ccd5fb35117fd978d93bc4265e904f7b8ed20a7b))
* **android/i18n:** add soul & rule template gallery strings ([0a28d99](https://github.com/HankHuang0516/realbot/commit/0a28d9979ab846214683a9c3bbc76c62be69e385))
* **templates:** add Soul/Rule template community contribution API ([c6fdcba](https://github.com/HankHuang0516/realbot/commit/c6fdcba5076d34dd85a94293a30b875e8a243b34))
* **android:** add SoulGalleryDialog and RuleGalleryDialog ([5a3142a](https://github.com/HankHuang0516/realbot/commit/5a3142af3f67dfa4c4ba9473a4381f89e04aee24))
* **skill-templates:** add structural validation to contribute endpoint ([891327d](https://github.com/HankHuang0516/realbot/commit/891327dc02dbd3d2a8bbbf254d596cdb33fca3ed))
* **templates:** add Wise Mentor soul and Brevity First rule templates ([f1494fd](https://github.com/HankHuang0516/realbot/commit/f1494fde800c03fe2c650bda26fc87df36f9dd8d))
* **info:** add 實用案例 category with Claude x OpenClaw guide ([94475ea](https://github.com/HankHuang0516/realbot/commit/94475eaf8c8f0cf9cc2068d6edff14b9036f136d))
* **skill-templates:** auto-approve pipeline + admin contributions UI ([5f94ea1](https://github.com/HankHuang0516/realbot/commit/5f94ea13291d6b0d4f12e563d8451402452b09b7))
* **soul-dialog:** merge dropdown into Gallery, unify template selection ([b9eeb41](https://github.com/HankHuang0516/realbot/commit/b9eeb415d789243243426adf345552c7970cd8b9))
* **channel:** push NAME_CHANGED to channel bots immediately on rename ([d7992fc](https://github.com/HankHuang0516/realbot/commit/d7992fceb50ce615887ed3fe5e5e54c4306be7e9))
* **info:** simplify claude-openclaw guide with full example + copy button ([d8e31e9](https://github.com/HankHuang0516/realbot/commit/d8e31e9a3bf1b0b0dd05ef7bb7498bdcff82b335))
* **rebrand:** update community post intro to AI Agent collaboration ([5fb15a0](https://github.com/HankHuang0516/realbot/commit/5fb15a0eca7911ac987686f844216f818a980e75))
* **rebrand:** update comparison page strings to AI Agent collaboration ([82171a1](https://github.com/HankHuang0516/realbot/commit/82171a161819149f7a9977f0425e41742c816849))
* **rebrand:** update faq_a_what_is to AI Agent collaboration messaging ([a79324a](https://github.com/HankHuang0516/realbot/commit/a79324aeefbe931e0119986ef4917a0516878bb5))
* **rebrand:** update info.html features section to AI Agent positioning ([1a7fae8](https://github.com/HankHuang0516/realbot/commit/1a7fae8758b801a1da934eccbbad7be8d64bc9d8))
* **rebrand:** update openclaw plugin metadata to AI Agent collaboration ([96baef7](https://github.com/HankHuang0516/realbot/commit/96baef7cb5fcf57159ad401b2ed543fef218ae5e))
* **rebrand:** update openclaw-channel README to AI Agent collaboration ([f11653f](https://github.com/HankHuang0516/realbot/commit/f11653f11c44584e0783dddecc1fcef3dd4e8f55))
* **rebrand:** update privacy policy - replace pet terminology with AI agent ([72b487d](https://github.com/HankHuang0516/realbot/commit/72b487d0260f5d2ece537c5c606ebb8f87dd4734))
* **rebrand:** update README and package descriptions to AI Agent collaboration ([f9efffa](https://github.com/HankHuang0516/realbot/commit/f9efffa5179c5685023ef6d199d16f3e8018ee75))
* **android:** wire SoulGalleryDialog and RuleGalleryDialog into add dialogs ([74898b3](https://github.com/HankHuang0516/realbot/commit/74898b3d527990ea769e7f2d3ac8d32a07df9c38))


### Reverts

* **templates:** remove manually added templates, let bot contribute via API ([b1e7914](https://github.com/HankHuang0516/realbot/commit/b1e79143d3bc10afea36dc8fe7294011a5f75c10))

# [1.3.0](https://github.com/HankHuang0516/realbot/compare/v1.2.0...v1.3.0) (2026-03-08)


### Bug Fixes

* **plugin:** add auto-reconnect with exponential backoff to openclaw-channel-eclaw v1.1.0 ([0ae83a0](https://github.com/HankHuang0516/realbot/commit/0ae83a00da24ce72afd63d59f9be828ca2df32a8))
* **skill-contribute:** add GITHUB_TOKEN support to bypass API rate limit ([51dcea3](https://github.com/HankHuang0516/realbot/commit/51dcea3a561d3a083cdf9436b9c61f688d3573fa))
* **android:** add name/description/ruleType to SkillTemplate and fix gallery dialogs ([e0a79b7](https://github.com/HankHuang0516/realbot/commit/e0a79b76503d36e21e7dc28246e940b27791492b))
* **settings:** align copy icons to far right edge ([a735ce9](https://github.com/HankHuang0516/realbot/commit/a735ce95aabdee2f501a5589c0da2e2cb99a84c5))
* **api:** auto-detect entityId from botSecret in contribute endpoints ([9b3e8d1](https://github.com/HankHuang0516/realbot/commit/9b3e8d12a8084f7a4fe88363291393e6159bb47b))
* **bind:** await single-device save after binding to prevent race condition ([811b3e9](https://github.com/HankHuang0516/realbot/commit/811b3e9b250f7dee518e1f7f7cdf65c1a8dd94d8))
* code review corrections — credential UI and guide accuracy ([5992dc5](https://github.com/HankHuang0516/realbot/commit/5992dc5ca0cf35adee17253f5742ed3619ec836e)), closes [#newSecretValue](https://github.com/HankHuang0516/realbot/issues/newSecretValue)
* **test:** fix reorder-channel test order array size to match device limit ([3103918](https://github.com/HankHuang0516/realbot/commit/31039180cf26e0e5f2db3292bd153be856c541f6))
* **portal:** fix XSS, broken tags, and filter consistency in soul/rule gallery ([0dd30ec](https://github.com/HankHuang0516/realbot/commit/0dd30ec0c8a358594d4c603ed5c92e7b86871226))
* **admin:** i18n By/Date column headers in contribution tables ([c1caaf6](https://github.com/HankHuang0516/realbot/commit/c1caaf67d893266fca7831cf2c32a231230db4e2))
* **bind:** make /api/bind handler async to fix await syntax error ([f78d373](https://github.com/HankHuang0516/realbot/commit/f78d373e2826b710adf6a7039604d93e90a627d0))
* **api:** move skill-templates/contributions route after adminAuth definition ([4915f3d](https://github.com/HankHuang0516/realbot/commit/4915f3d8f737445f4144bd5998ff5588fb126bbb))
* persist language preference to server for cross-device sync ([bd3f7f6](https://github.com/HankHuang0516/realbot/commit/bd3f7f65657434136dcf40d1f499de2924fc0c74))
* **ai-chat:** prevent false network error when closing chat mid-request ([e787e2e](https://github.com/HankHuang0516/realbot/commit/e787e2e6c489885de8bd6a022255f32fccbe8588))
* **tests:** read TEST_ENTITY_ID from .env in bot-api-response test; add setup_broadcast_webhook.js ([0dc137c](https://github.com/HankHuang0516/realbot/commit/0dc137c85e00de20c74b0c42c7569acbaf117dae))
* **admin:** reorder By/date columns and show full datetime in contribution tables ([260b522](https://github.com/HankHuang0516/realbot/commit/260b5221407c539f6369368fe83e19120bf6d1eb))
* **bind:** reset bot-to-bot counter on rebind to prevent stale rate limits ([daea976](https://github.com/HankHuang0516/realbot/commit/daea976e44768dc65eb515d2bff4b5f400385642))
* **settings:** right-align copy icon, remove eye buttons ([010ffb7](https://github.com/HankHuang0516/realbot/commit/010ffb7487fe57019423e843676752ad203c1c2d))
* **test:** shorten NEW_NAME to stay within 20-char server limit ([45a1653](https://github.com/HankHuang0516/realbot/commit/45a165359c4212b2d0851cebbfa20c19f26e81e5))
* **settings:** truncate Device ID/Secret with ellipsis, no line wrap ([94a2ea4](https://github.com/HankHuang0516/realbot/commit/94a2ea41be12a026d5149a53e779b2403558639b))
* **info:** update example template with review steps after each goal ([ba3ceb6](https://github.com/HankHuang0516/realbot/commit/ba3ceb61c3df158c43f081784958ca5cb5f7e451))
* **rebrand:** update HTML fallback strings in comparison section ([a332dbd](https://github.com/HankHuang0516/realbot/commit/a332dbd95a4069952d1eb785e3969961f0d89cf3))
* **rebrand:** update SVG and tester guide - remove pet terminology ([c27b27e](https://github.com/HankHuang0516/realbot/commit/c27b27e6fb71240a05e5a5afd1b6b8c42b3b5c41))
* **admin:** use cookie auth for skill-templates/contributions endpoint ([fcefb1a](https://github.com/HankHuang0516/realbot/commit/fcefb1a0a7d295646024931bb1d6e018022d0945))
* **scheduler:** use current timestamp as default scheduled_at for cron schedules ([1610110](https://github.com/HankHuang0516/realbot/commit/1610110239212ffca506b6cbf3dec67dfb862278))


### Features

* **settings:** add copy icon for Device ID and Copy Credentials button ([35a68d7](https://github.com/HankHuang0516/realbot/commit/35a68d70044c94b643ee6a685ecb88840c008179))
* **templates:** add Creative Thinker soul and Step-by-Step Reasoning rule templates ([61e916f](https://github.com/HankHuang0516/realbot/commit/61e916feadad2683d5d774073211d54cda6de898))
* **info:** add deep linking support for guide sub-items ([e16ebb7](https://github.com/HankHuang0516/realbot/commit/e16ebb76d8fdf5d5b53ca117da92c3ea158579f6)), closes [#faq](https://github.com/HankHuang0516/realbot/issues/faq) [#release-notes](https://github.com/HankHuang0516/realbot/issues/release-notes) [#compare](https://github.com/HankHuang0516/realbot/issues/compare)
* **settings:** add Device Secret display with reveal/copy toggle ([4d4281a](https://github.com/HankHuang0516/realbot/commit/4d4281a967a87f404ca5217f32045f1ff6fb500b))
* **schedule:** add deviceSecret dual auth for schedule endpoints ([2716375](https://github.com/HankHuang0516/realbot/commit/2716375a2023b2ff259bdf7aae6051832ddc49c8))
* **android:** add fetchSoulTemplates/fetchRuleTemplates to MissionViewModel ([1c411fc](https://github.com/HankHuang0516/realbot/commit/1c411fce073055eb743d09c71f5d6ce9aed4b988))
* **skill-contribute:** add GET status endpoint for async verification feedback ([e71af93](https://github.com/HankHuang0516/realbot/commit/e71af9310223c23b786e52d24434e47aaafd9132))
* **admin:** add pagination to user list (50 per page) ([ccd5fb3](https://github.com/HankHuang0516/realbot/commit/ccd5fb35117fd978d93bc4265e904f7b8ed20a7b))
* **android/i18n:** add soul & rule template gallery strings ([0a28d99](https://github.com/HankHuang0516/realbot/commit/0a28d9979ab846214683a9c3bbc76c62be69e385))
* **templates:** add Soul/Rule template community contribution API ([c6fdcba](https://github.com/HankHuang0516/realbot/commit/c6fdcba5076d34dd85a94293a30b875e8a243b34))
* **android:** add SoulGalleryDialog and RuleGalleryDialog ([5a3142a](https://github.com/HankHuang0516/realbot/commit/5a3142af3f67dfa4c4ba9473a4381f89e04aee24))
* **skill-templates:** add structural validation to contribute endpoint ([891327d](https://github.com/HankHuang0516/realbot/commit/891327dc02dbd3d2a8bbbf254d596cdb33fca3ed))
* **templates:** add Wise Mentor soul and Brevity First rule templates ([f1494fd](https://github.com/HankHuang0516/realbot/commit/f1494fde800c03fe2c650bda26fc87df36f9dd8d))
* **info:** add 實用案例 category with Claude x OpenClaw guide ([94475ea](https://github.com/HankHuang0516/realbot/commit/94475eaf8c8f0cf9cc2068d6edff14b9036f136d))
* **skill-templates:** auto-approve pipeline + admin contributions UI ([5f94ea1](https://github.com/HankHuang0516/realbot/commit/5f94ea13291d6b0d4f12e563d8451402452b09b7))
* **soul-dialog:** merge dropdown into Gallery, unify template selection ([b9eeb41](https://github.com/HankHuang0516/realbot/commit/b9eeb415d789243243426adf345552c7970cd8b9))
* **channel:** push NAME_CHANGED to channel bots immediately on rename ([d7992fc](https://github.com/HankHuang0516/realbot/commit/d7992fceb50ce615887ed3fe5e5e54c4306be7e9))
* **info:** simplify claude-openclaw guide with full example + copy button ([d8e31e9](https://github.com/HankHuang0516/realbot/commit/d8e31e9a3bf1b0b0dd05ef7bb7498bdcff82b335))
* **rebrand:** update community post intro to AI Agent collaboration ([5fb15a0](https://github.com/HankHuang0516/realbot/commit/5fb15a0eca7911ac987686f844216f818a980e75))
* **rebrand:** update comparison page strings to AI Agent collaboration ([82171a1](https://github.com/HankHuang0516/realbot/commit/82171a161819149f7a9977f0425e41742c816849))
* **rebrand:** update faq_a_what_is to AI Agent collaboration messaging ([a79324a](https://github.com/HankHuang0516/realbot/commit/a79324aeefbe931e0119986ef4917a0516878bb5))
* **rebrand:** update info.html features section to AI Agent positioning ([1a7fae8](https://github.com/HankHuang0516/realbot/commit/1a7fae8758b801a1da934eccbbad7be8d64bc9d8))
* **rebrand:** update openclaw plugin metadata to AI Agent collaboration ([96baef7](https://github.com/HankHuang0516/realbot/commit/96baef7cb5fcf57159ad401b2ed543fef218ae5e))
* **rebrand:** update openclaw-channel README to AI Agent collaboration ([f11653f](https://github.com/HankHuang0516/realbot/commit/f11653f11c44584e0783dddecc1fcef3dd4e8f55))
* **rebrand:** update privacy policy - replace pet terminology with AI agent ([72b487d](https://github.com/HankHuang0516/realbot/commit/72b487d0260f5d2ece537c5c606ebb8f87dd4734))
* **rebrand:** update README and package descriptions to AI Agent collaboration ([f9efffa](https://github.com/HankHuang0516/realbot/commit/f9efffa5179c5685023ef6d199d16f3e8018ee75))
* **android:** wire SoulGalleryDialog and RuleGalleryDialog into add dialogs ([74898b3](https://github.com/HankHuang0516/realbot/commit/74898b3d527990ea769e7f2d3ac8d32a07df9c38))


### Reverts

* **templates:** remove manually added templates, let bot contribute via API ([b1e7914](https://github.com/HankHuang0516/realbot/commit/b1e79143d3bc10afea36dc8fe7294011a5f75c10))

# [1.3.0](https://github.com/HankHuang0516/realbot/compare/v1.2.0...v1.3.0) (2026-03-08)


### Bug Fixes

* **plugin:** add auto-reconnect with exponential backoff to openclaw-channel-eclaw v1.1.0 ([0ae83a0](https://github.com/HankHuang0516/realbot/commit/0ae83a00da24ce72afd63d59f9be828ca2df32a8))
* **skill-contribute:** add GITHUB_TOKEN support to bypass API rate limit ([51dcea3](https://github.com/HankHuang0516/realbot/commit/51dcea3a561d3a083cdf9436b9c61f688d3573fa))
* **android:** add name/description/ruleType to SkillTemplate and fix gallery dialogs ([e0a79b7](https://github.com/HankHuang0516/realbot/commit/e0a79b76503d36e21e7dc28246e940b27791492b))
* **settings:** align copy icons to far right edge ([a735ce9](https://github.com/HankHuang0516/realbot/commit/a735ce95aabdee2f501a5589c0da2e2cb99a84c5))
* **api:** auto-detect entityId from botSecret in contribute endpoints ([9b3e8d1](https://github.com/HankHuang0516/realbot/commit/9b3e8d12a8084f7a4fe88363291393e6159bb47b))
* **bind:** await single-device save after binding to prevent race condition ([811b3e9](https://github.com/HankHuang0516/realbot/commit/811b3e9b250f7dee518e1f7f7cdf65c1a8dd94d8))
* code review corrections — credential UI and guide accuracy ([5992dc5](https://github.com/HankHuang0516/realbot/commit/5992dc5ca0cf35adee17253f5742ed3619ec836e)), closes [#newSecretValue](https://github.com/HankHuang0516/realbot/issues/newSecretValue)
* **test:** fix reorder-channel test order array size to match device limit ([3103918](https://github.com/HankHuang0516/realbot/commit/31039180cf26e0e5f2db3292bd153be856c541f6))
* **portal:** fix XSS, broken tags, and filter consistency in soul/rule gallery ([0dd30ec](https://github.com/HankHuang0516/realbot/commit/0dd30ec0c8a358594d4c603ed5c92e7b86871226))
* **admin:** i18n By/Date column headers in contribution tables ([c1caaf6](https://github.com/HankHuang0516/realbot/commit/c1caaf67d893266fca7831cf2c32a231230db4e2))
* **bind:** make /api/bind handler async to fix await syntax error ([f78d373](https://github.com/HankHuang0516/realbot/commit/f78d373e2826b710adf6a7039604d93e90a627d0))
* **api:** move skill-templates/contributions route after adminAuth definition ([4915f3d](https://github.com/HankHuang0516/realbot/commit/4915f3d8f737445f4144bd5998ff5588fb126bbb))
* persist language preference to server for cross-device sync ([bd3f7f6](https://github.com/HankHuang0516/realbot/commit/bd3f7f65657434136dcf40d1f499de2924fc0c74))
* **ai-chat:** prevent false network error when closing chat mid-request ([e787e2e](https://github.com/HankHuang0516/realbot/commit/e787e2e6c489885de8bd6a022255f32fccbe8588))
* **tests:** read TEST_ENTITY_ID from .env in bot-api-response test; add setup_broadcast_webhook.js ([0dc137c](https://github.com/HankHuang0516/realbot/commit/0dc137c85e00de20c74b0c42c7569acbaf117dae))
* **admin:** reorder By/date columns and show full datetime in contribution tables ([260b522](https://github.com/HankHuang0516/realbot/commit/260b5221407c539f6369368fe83e19120bf6d1eb))
* **bind:** reset bot-to-bot counter on rebind to prevent stale rate limits ([daea976](https://github.com/HankHuang0516/realbot/commit/daea976e44768dc65eb515d2bff4b5f400385642))
* **settings:** right-align copy icon, remove eye buttons ([010ffb7](https://github.com/HankHuang0516/realbot/commit/010ffb7487fe57019423e843676752ad203c1c2d))
* **test:** shorten NEW_NAME to stay within 20-char server limit ([45a1653](https://github.com/HankHuang0516/realbot/commit/45a165359c4212b2d0851cebbfa20c19f26e81e5))
* **settings:** truncate Device ID/Secret with ellipsis, no line wrap ([94a2ea4](https://github.com/HankHuang0516/realbot/commit/94a2ea41be12a026d5149a53e779b2403558639b))
* **info:** update example template with review steps after each goal ([ba3ceb6](https://github.com/HankHuang0516/realbot/commit/ba3ceb61c3df158c43f081784958ca5cb5f7e451))
* **rebrand:** update HTML fallback strings in comparison section ([a332dbd](https://github.com/HankHuang0516/realbot/commit/a332dbd95a4069952d1eb785e3969961f0d89cf3))
* **rebrand:** update SVG and tester guide - remove pet terminology ([c27b27e](https://github.com/HankHuang0516/realbot/commit/c27b27e6fb71240a05e5a5afd1b6b8c42b3b5c41))
* **admin:** use cookie auth for skill-templates/contributions endpoint ([fcefb1a](https://github.com/HankHuang0516/realbot/commit/fcefb1a0a7d295646024931bb1d6e018022d0945))
* **scheduler:** use current timestamp as default scheduled_at for cron schedules ([1610110](https://github.com/HankHuang0516/realbot/commit/1610110239212ffca506b6cbf3dec67dfb862278))


### Features

* **settings:** add copy icon for Device ID and Copy Credentials button ([35a68d7](https://github.com/HankHuang0516/realbot/commit/35a68d70044c94b643ee6a685ecb88840c008179))
* **templates:** add Creative Thinker soul and Step-by-Step Reasoning rule templates ([61e916f](https://github.com/HankHuang0516/realbot/commit/61e916feadad2683d5d774073211d54cda6de898))
* **info:** add deep linking support for guide sub-items ([e16ebb7](https://github.com/HankHuang0516/realbot/commit/e16ebb76d8fdf5d5b53ca117da92c3ea158579f6)), closes [#faq](https://github.com/HankHuang0516/realbot/issues/faq) [#release-notes](https://github.com/HankHuang0516/realbot/issues/release-notes) [#compare](https://github.com/HankHuang0516/realbot/issues/compare)
* **settings:** add Device Secret display with reveal/copy toggle ([4d4281a](https://github.com/HankHuang0516/realbot/commit/4d4281a967a87f404ca5217f32045f1ff6fb500b))
* **schedule:** add deviceSecret dual auth for schedule endpoints ([2716375](https://github.com/HankHuang0516/realbot/commit/2716375a2023b2ff259bdf7aae6051832ddc49c8))
* **android:** add fetchSoulTemplates/fetchRuleTemplates to MissionViewModel ([1c411fc](https://github.com/HankHuang0516/realbot/commit/1c411fce073055eb743d09c71f5d6ce9aed4b988))
* **skill-contribute:** add GET status endpoint for async verification feedback ([e71af93](https://github.com/HankHuang0516/realbot/commit/e71af9310223c23b786e52d24434e47aaafd9132))
* **admin:** add pagination to user list (50 per page) ([ccd5fb3](https://github.com/HankHuang0516/realbot/commit/ccd5fb35117fd978d93bc4265e904f7b8ed20a7b))
* **android/i18n:** add soul & rule template gallery strings ([0a28d99](https://github.com/HankHuang0516/realbot/commit/0a28d9979ab846214683a9c3bbc76c62be69e385))
* **templates:** add Soul/Rule template community contribution API ([c6fdcba](https://github.com/HankHuang0516/realbot/commit/c6fdcba5076d34dd85a94293a30b875e8a243b34))
* **android:** add SoulGalleryDialog and RuleGalleryDialog ([5a3142a](https://github.com/HankHuang0516/realbot/commit/5a3142af3f67dfa4c4ba9473a4381f89e04aee24))
* **skill-templates:** add structural validation to contribute endpoint ([891327d](https://github.com/HankHuang0516/realbot/commit/891327dc02dbd3d2a8bbbf254d596cdb33fca3ed))
* **templates:** add Wise Mentor soul and Brevity First rule templates ([f1494fd](https://github.com/HankHuang0516/realbot/commit/f1494fde800c03fe2c650bda26fc87df36f9dd8d))
* **info:** add 實用案例 category with Claude x OpenClaw guide ([94475ea](https://github.com/HankHuang0516/realbot/commit/94475eaf8c8f0cf9cc2068d6edff14b9036f136d))
* **skill-templates:** auto-approve pipeline + admin contributions UI ([5f94ea1](https://github.com/HankHuang0516/realbot/commit/5f94ea13291d6b0d4f12e563d8451402452b09b7))
* **soul-dialog:** merge dropdown into Gallery, unify template selection ([b9eeb41](https://github.com/HankHuang0516/realbot/commit/b9eeb415d789243243426adf345552c7970cd8b9))
* **channel:** push NAME_CHANGED to channel bots immediately on rename ([d7992fc](https://github.com/HankHuang0516/realbot/commit/d7992fceb50ce615887ed3fe5e5e54c4306be7e9))
* **info:** simplify claude-openclaw guide with full example + copy button ([d8e31e9](https://github.com/HankHuang0516/realbot/commit/d8e31e9a3bf1b0b0dd05ef7bb7498bdcff82b335))
* **rebrand:** update community post intro to AI Agent collaboration ([5fb15a0](https://github.com/HankHuang0516/realbot/commit/5fb15a0eca7911ac987686f844216f818a980e75))
* **rebrand:** update comparison page strings to AI Agent collaboration ([82171a1](https://github.com/HankHuang0516/realbot/commit/82171a161819149f7a9977f0425e41742c816849))
* **rebrand:** update faq_a_what_is to AI Agent collaboration messaging ([a79324a](https://github.com/HankHuang0516/realbot/commit/a79324aeefbe931e0119986ef4917a0516878bb5))
* **rebrand:** update info.html features section to AI Agent positioning ([1a7fae8](https://github.com/HankHuang0516/realbot/commit/1a7fae8758b801a1da934eccbbad7be8d64bc9d8))
* **rebrand:** update openclaw plugin metadata to AI Agent collaboration ([96baef7](https://github.com/HankHuang0516/realbot/commit/96baef7cb5fcf57159ad401b2ed543fef218ae5e))
* **rebrand:** update openclaw-channel README to AI Agent collaboration ([f11653f](https://github.com/HankHuang0516/realbot/commit/f11653f11c44584e0783dddecc1fcef3dd4e8f55))
* **rebrand:** update privacy policy - replace pet terminology with AI agent ([72b487d](https://github.com/HankHuang0516/realbot/commit/72b487d0260f5d2ece537c5c606ebb8f87dd4734))
* **rebrand:** update README and package descriptions to AI Agent collaboration ([f9efffa](https://github.com/HankHuang0516/realbot/commit/f9efffa5179c5685023ef6d199d16f3e8018ee75))
* **android:** wire SoulGalleryDialog and RuleGalleryDialog into add dialogs ([74898b3](https://github.com/HankHuang0516/realbot/commit/74898b3d527990ea769e7f2d3ac8d32a07df9c38))


### Reverts

* **templates:** remove manually added templates, let bot contribute via API ([b1e7914](https://github.com/HankHuang0516/realbot/commit/b1e79143d3bc10afea36dc8fe7294011a5f75c10))

# [1.3.0](https://github.com/HankHuang0516/realbot/compare/v1.2.0...v1.3.0) (2026-03-08)


### Bug Fixes

* **plugin:** add auto-reconnect with exponential backoff to openclaw-channel-eclaw v1.1.0 ([0ae83a0](https://github.com/HankHuang0516/realbot/commit/0ae83a00da24ce72afd63d59f9be828ca2df32a8))
* **skill-contribute:** add GITHUB_TOKEN support to bypass API rate limit ([51dcea3](https://github.com/HankHuang0516/realbot/commit/51dcea3a561d3a083cdf9436b9c61f688d3573fa))
* **android:** add name/description/ruleType to SkillTemplate and fix gallery dialogs ([e0a79b7](https://github.com/HankHuang0516/realbot/commit/e0a79b76503d36e21e7dc28246e940b27791492b))
* **api:** auto-detect entityId from botSecret in contribute endpoints ([9b3e8d1](https://github.com/HankHuang0516/realbot/commit/9b3e8d12a8084f7a4fe88363291393e6159bb47b))
* **bind:** await single-device save after binding to prevent race condition ([811b3e9](https://github.com/HankHuang0516/realbot/commit/811b3e9b250f7dee518e1f7f7cdf65c1a8dd94d8))
* code review corrections — credential UI and guide accuracy ([5992dc5](https://github.com/HankHuang0516/realbot/commit/5992dc5ca0cf35adee17253f5742ed3619ec836e)), closes [#newSecretValue](https://github.com/HankHuang0516/realbot/issues/newSecretValue)
* **test:** fix reorder-channel test order array size to match device limit ([3103918](https://github.com/HankHuang0516/realbot/commit/31039180cf26e0e5f2db3292bd153be856c541f6))
* **portal:** fix XSS, broken tags, and filter consistency in soul/rule gallery ([0dd30ec](https://github.com/HankHuang0516/realbot/commit/0dd30ec0c8a358594d4c603ed5c92e7b86871226))
* **admin:** i18n By/Date column headers in contribution tables ([c1caaf6](https://github.com/HankHuang0516/realbot/commit/c1caaf67d893266fca7831cf2c32a231230db4e2))
* **bind:** make /api/bind handler async to fix await syntax error ([f78d373](https://github.com/HankHuang0516/realbot/commit/f78d373e2826b710adf6a7039604d93e90a627d0))
* **api:** move skill-templates/contributions route after adminAuth definition ([4915f3d](https://github.com/HankHuang0516/realbot/commit/4915f3d8f737445f4144bd5998ff5588fb126bbb))
* persist language preference to server for cross-device sync ([bd3f7f6](https://github.com/HankHuang0516/realbot/commit/bd3f7f65657434136dcf40d1f499de2924fc0c74))
* **ai-chat:** prevent false network error when closing chat mid-request ([e787e2e](https://github.com/HankHuang0516/realbot/commit/e787e2e6c489885de8bd6a022255f32fccbe8588))
* **tests:** read TEST_ENTITY_ID from .env in bot-api-response test; add setup_broadcast_webhook.js ([0dc137c](https://github.com/HankHuang0516/realbot/commit/0dc137c85e00de20c74b0c42c7569acbaf117dae))
* **admin:** reorder By/date columns and show full datetime in contribution tables ([260b522](https://github.com/HankHuang0516/realbot/commit/260b5221407c539f6369368fe83e19120bf6d1eb))
* **bind:** reset bot-to-bot counter on rebind to prevent stale rate limits ([daea976](https://github.com/HankHuang0516/realbot/commit/daea976e44768dc65eb515d2bff4b5f400385642))
* **settings:** right-align copy icon, remove eye buttons ([010ffb7](https://github.com/HankHuang0516/realbot/commit/010ffb7487fe57019423e843676752ad203c1c2d))
* **test:** shorten NEW_NAME to stay within 20-char server limit ([45a1653](https://github.com/HankHuang0516/realbot/commit/45a165359c4212b2d0851cebbfa20c19f26e81e5))
* **settings:** truncate Device ID/Secret with ellipsis, no line wrap ([94a2ea4](https://github.com/HankHuang0516/realbot/commit/94a2ea41be12a026d5149a53e779b2403558639b))
* **info:** update example template with review steps after each goal ([ba3ceb6](https://github.com/HankHuang0516/realbot/commit/ba3ceb61c3df158c43f081784958ca5cb5f7e451))
* **rebrand:** update HTML fallback strings in comparison section ([a332dbd](https://github.com/HankHuang0516/realbot/commit/a332dbd95a4069952d1eb785e3969961f0d89cf3))
* **rebrand:** update SVG and tester guide - remove pet terminology ([c27b27e](https://github.com/HankHuang0516/realbot/commit/c27b27e6fb71240a05e5a5afd1b6b8c42b3b5c41))
* **admin:** use cookie auth for skill-templates/contributions endpoint ([fcefb1a](https://github.com/HankHuang0516/realbot/commit/fcefb1a0a7d295646024931bb1d6e018022d0945))
* **scheduler:** use current timestamp as default scheduled_at for cron schedules ([1610110](https://github.com/HankHuang0516/realbot/commit/1610110239212ffca506b6cbf3dec67dfb862278))


### Features

* **settings:** add copy icon for Device ID and Copy Credentials button ([35a68d7](https://github.com/HankHuang0516/realbot/commit/35a68d70044c94b643ee6a685ecb88840c008179))
* **templates:** add Creative Thinker soul and Step-by-Step Reasoning rule templates ([61e916f](https://github.com/HankHuang0516/realbot/commit/61e916feadad2683d5d774073211d54cda6de898))
* **info:** add deep linking support for guide sub-items ([e16ebb7](https://github.com/HankHuang0516/realbot/commit/e16ebb76d8fdf5d5b53ca117da92c3ea158579f6)), closes [#faq](https://github.com/HankHuang0516/realbot/issues/faq) [#release-notes](https://github.com/HankHuang0516/realbot/issues/release-notes) [#compare](https://github.com/HankHuang0516/realbot/issues/compare)
* **settings:** add Device Secret display with reveal/copy toggle ([4d4281a](https://github.com/HankHuang0516/realbot/commit/4d4281a967a87f404ca5217f32045f1ff6fb500b))
* **schedule:** add deviceSecret dual auth for schedule endpoints ([2716375](https://github.com/HankHuang0516/realbot/commit/2716375a2023b2ff259bdf7aae6051832ddc49c8))
* **android:** add fetchSoulTemplates/fetchRuleTemplates to MissionViewModel ([1c411fc](https://github.com/HankHuang0516/realbot/commit/1c411fce073055eb743d09c71f5d6ce9aed4b988))
* **skill-contribute:** add GET status endpoint for async verification feedback ([e71af93](https://github.com/HankHuang0516/realbot/commit/e71af9310223c23b786e52d24434e47aaafd9132))
* **admin:** add pagination to user list (50 per page) ([ccd5fb3](https://github.com/HankHuang0516/realbot/commit/ccd5fb35117fd978d93bc4265e904f7b8ed20a7b))
* **android/i18n:** add soul & rule template gallery strings ([0a28d99](https://github.com/HankHuang0516/realbot/commit/0a28d9979ab846214683a9c3bbc76c62be69e385))
* **templates:** add Soul/Rule template community contribution API ([c6fdcba](https://github.com/HankHuang0516/realbot/commit/c6fdcba5076d34dd85a94293a30b875e8a243b34))
* **android:** add SoulGalleryDialog and RuleGalleryDialog ([5a3142a](https://github.com/HankHuang0516/realbot/commit/5a3142af3f67dfa4c4ba9473a4381f89e04aee24))
* **skill-templates:** add structural validation to contribute endpoint ([891327d](https://github.com/HankHuang0516/realbot/commit/891327dc02dbd3d2a8bbbf254d596cdb33fca3ed))
* **templates:** add Wise Mentor soul and Brevity First rule templates ([f1494fd](https://github.com/HankHuang0516/realbot/commit/f1494fde800c03fe2c650bda26fc87df36f9dd8d))
* **info:** add 實用案例 category with Claude x OpenClaw guide ([94475ea](https://github.com/HankHuang0516/realbot/commit/94475eaf8c8f0cf9cc2068d6edff14b9036f136d))
* **skill-templates:** auto-approve pipeline + admin contributions UI ([5f94ea1](https://github.com/HankHuang0516/realbot/commit/5f94ea13291d6b0d4f12e563d8451402452b09b7))
* **soul-dialog:** merge dropdown into Gallery, unify template selection ([b9eeb41](https://github.com/HankHuang0516/realbot/commit/b9eeb415d789243243426adf345552c7970cd8b9))
* **channel:** push NAME_CHANGED to channel bots immediately on rename ([d7992fc](https://github.com/HankHuang0516/realbot/commit/d7992fceb50ce615887ed3fe5e5e54c4306be7e9))
* **info:** simplify claude-openclaw guide with full example + copy button ([d8e31e9](https://github.com/HankHuang0516/realbot/commit/d8e31e9a3bf1b0b0dd05ef7bb7498bdcff82b335))
* **rebrand:** update community post intro to AI Agent collaboration ([5fb15a0](https://github.com/HankHuang0516/realbot/commit/5fb15a0eca7911ac987686f844216f818a980e75))
* **rebrand:** update comparison page strings to AI Agent collaboration ([82171a1](https://github.com/HankHuang0516/realbot/commit/82171a161819149f7a9977f0425e41742c816849))
* **rebrand:** update faq_a_what_is to AI Agent collaboration messaging ([a79324a](https://github.com/HankHuang0516/realbot/commit/a79324aeefbe931e0119986ef4917a0516878bb5))
* **rebrand:** update info.html features section to AI Agent positioning ([1a7fae8](https://github.com/HankHuang0516/realbot/commit/1a7fae8758b801a1da934eccbbad7be8d64bc9d8))
* **rebrand:** update openclaw plugin metadata to AI Agent collaboration ([96baef7](https://github.com/HankHuang0516/realbot/commit/96baef7cb5fcf57159ad401b2ed543fef218ae5e))
* **rebrand:** update openclaw-channel README to AI Agent collaboration ([f11653f](https://github.com/HankHuang0516/realbot/commit/f11653f11c44584e0783dddecc1fcef3dd4e8f55))
* **rebrand:** update privacy policy - replace pet terminology with AI agent ([72b487d](https://github.com/HankHuang0516/realbot/commit/72b487d0260f5d2ece537c5c606ebb8f87dd4734))
* **rebrand:** update README and package descriptions to AI Agent collaboration ([f9efffa](https://github.com/HankHuang0516/realbot/commit/f9efffa5179c5685023ef6d199d16f3e8018ee75))
* **android:** wire SoulGalleryDialog and RuleGalleryDialog into add dialogs ([74898b3](https://github.com/HankHuang0516/realbot/commit/74898b3d527990ea769e7f2d3ac8d32a07df9c38))


### Reverts

* **templates:** remove manually added templates, let bot contribute via API ([b1e7914](https://github.com/HankHuang0516/realbot/commit/b1e79143d3bc10afea36dc8fe7294011a5f75c10))

# [1.3.0](https://github.com/HankHuang0516/realbot/compare/v1.2.0...v1.3.0) (2026-03-08)


### Bug Fixes

* **plugin:** add auto-reconnect with exponential backoff to openclaw-channel-eclaw v1.1.0 ([0ae83a0](https://github.com/HankHuang0516/realbot/commit/0ae83a00da24ce72afd63d59f9be828ca2df32a8))
* **skill-contribute:** add GITHUB_TOKEN support to bypass API rate limit ([51dcea3](https://github.com/HankHuang0516/realbot/commit/51dcea3a561d3a083cdf9436b9c61f688d3573fa))
* **android:** add name/description/ruleType to SkillTemplate and fix gallery dialogs ([e0a79b7](https://github.com/HankHuang0516/realbot/commit/e0a79b76503d36e21e7dc28246e940b27791492b))
* **api:** auto-detect entityId from botSecret in contribute endpoints ([9b3e8d1](https://github.com/HankHuang0516/realbot/commit/9b3e8d12a8084f7a4fe88363291393e6159bb47b))
* **bind:** await single-device save after binding to prevent race condition ([811b3e9](https://github.com/HankHuang0516/realbot/commit/811b3e9b250f7dee518e1f7f7cdf65c1a8dd94d8))
* code review corrections — credential UI and guide accuracy ([5992dc5](https://github.com/HankHuang0516/realbot/commit/5992dc5ca0cf35adee17253f5742ed3619ec836e)), closes [#newSecretValue](https://github.com/HankHuang0516/realbot/issues/newSecretValue)
* **test:** fix reorder-channel test order array size to match device limit ([3103918](https://github.com/HankHuang0516/realbot/commit/31039180cf26e0e5f2db3292bd153be856c541f6))
* **portal:** fix XSS, broken tags, and filter consistency in soul/rule gallery ([0dd30ec](https://github.com/HankHuang0516/realbot/commit/0dd30ec0c8a358594d4c603ed5c92e7b86871226))
* **admin:** i18n By/Date column headers in contribution tables ([c1caaf6](https://github.com/HankHuang0516/realbot/commit/c1caaf67d893266fca7831cf2c32a231230db4e2))
* **bind:** make /api/bind handler async to fix await syntax error ([f78d373](https://github.com/HankHuang0516/realbot/commit/f78d373e2826b710adf6a7039604d93e90a627d0))
* **api:** move skill-templates/contributions route after adminAuth definition ([4915f3d](https://github.com/HankHuang0516/realbot/commit/4915f3d8f737445f4144bd5998ff5588fb126bbb))
* persist language preference to server for cross-device sync ([bd3f7f6](https://github.com/HankHuang0516/realbot/commit/bd3f7f65657434136dcf40d1f499de2924fc0c74))
* **ai-chat:** prevent false network error when closing chat mid-request ([e787e2e](https://github.com/HankHuang0516/realbot/commit/e787e2e6c489885de8bd6a022255f32fccbe8588))
* **tests:** read TEST_ENTITY_ID from .env in bot-api-response test; add setup_broadcast_webhook.js ([0dc137c](https://github.com/HankHuang0516/realbot/commit/0dc137c85e00de20c74b0c42c7569acbaf117dae))
* **admin:** reorder By/date columns and show full datetime in contribution tables ([260b522](https://github.com/HankHuang0516/realbot/commit/260b5221407c539f6369368fe83e19120bf6d1eb))
* **bind:** reset bot-to-bot counter on rebind to prevent stale rate limits ([daea976](https://github.com/HankHuang0516/realbot/commit/daea976e44768dc65eb515d2bff4b5f400385642))
* **settings:** right-align copy icon, remove eye buttons ([010ffb7](https://github.com/HankHuang0516/realbot/commit/010ffb7487fe57019423e843676752ad203c1c2d))
* **test:** shorten NEW_NAME to stay within 20-char server limit ([45a1653](https://github.com/HankHuang0516/realbot/commit/45a165359c4212b2d0851cebbfa20c19f26e81e5))
* **settings:** truncate Device ID/Secret with ellipsis, no line wrap ([94a2ea4](https://github.com/HankHuang0516/realbot/commit/94a2ea41be12a026d5149a53e779b2403558639b))
* **info:** update example template with review steps after each goal ([ba3ceb6](https://github.com/HankHuang0516/realbot/commit/ba3ceb61c3df158c43f081784958ca5cb5f7e451))
* **rebrand:** update HTML fallback strings in comparison section ([a332dbd](https://github.com/HankHuang0516/realbot/commit/a332dbd95a4069952d1eb785e3969961f0d89cf3))
* **rebrand:** update SVG and tester guide - remove pet terminology ([c27b27e](https://github.com/HankHuang0516/realbot/commit/c27b27e6fb71240a05e5a5afd1b6b8c42b3b5c41))
* **admin:** use cookie auth for skill-templates/contributions endpoint ([fcefb1a](https://github.com/HankHuang0516/realbot/commit/fcefb1a0a7d295646024931bb1d6e018022d0945))
* **scheduler:** use current timestamp as default scheduled_at for cron schedules ([1610110](https://github.com/HankHuang0516/realbot/commit/1610110239212ffca506b6cbf3dec67dfb862278))


### Features

* **settings:** add copy icon for Device ID and Copy Credentials button ([35a68d7](https://github.com/HankHuang0516/realbot/commit/35a68d70044c94b643ee6a685ecb88840c008179))
* **templates:** add Creative Thinker soul and Step-by-Step Reasoning rule templates ([61e916f](https://github.com/HankHuang0516/realbot/commit/61e916feadad2683d5d774073211d54cda6de898))
* **info:** add deep linking support for guide sub-items ([e16ebb7](https://github.com/HankHuang0516/realbot/commit/e16ebb76d8fdf5d5b53ca117da92c3ea158579f6)), closes [#faq](https://github.com/HankHuang0516/realbot/issues/faq) [#release-notes](https://github.com/HankHuang0516/realbot/issues/release-notes) [#compare](https://github.com/HankHuang0516/realbot/issues/compare)
* **settings:** add Device Secret display with reveal/copy toggle ([4d4281a](https://github.com/HankHuang0516/realbot/commit/4d4281a967a87f404ca5217f32045f1ff6fb500b))
* **schedule:** add deviceSecret dual auth for schedule endpoints ([2716375](https://github.com/HankHuang0516/realbot/commit/2716375a2023b2ff259bdf7aae6051832ddc49c8))
* **android:** add fetchSoulTemplates/fetchRuleTemplates to MissionViewModel ([1c411fc](https://github.com/HankHuang0516/realbot/commit/1c411fce073055eb743d09c71f5d6ce9aed4b988))
* **admin:** add pagination to user list (50 per page) ([ccd5fb3](https://github.com/HankHuang0516/realbot/commit/ccd5fb35117fd978d93bc4265e904f7b8ed20a7b))
* **android/i18n:** add soul & rule template gallery strings ([0a28d99](https://github.com/HankHuang0516/realbot/commit/0a28d9979ab846214683a9c3bbc76c62be69e385))
* **templates:** add Soul/Rule template community contribution API ([c6fdcba](https://github.com/HankHuang0516/realbot/commit/c6fdcba5076d34dd85a94293a30b875e8a243b34))
* **android:** add SoulGalleryDialog and RuleGalleryDialog ([5a3142a](https://github.com/HankHuang0516/realbot/commit/5a3142af3f67dfa4c4ba9473a4381f89e04aee24))
* **skill-templates:** add structural validation to contribute endpoint ([891327d](https://github.com/HankHuang0516/realbot/commit/891327dc02dbd3d2a8bbbf254d596cdb33fca3ed))
* **templates:** add Wise Mentor soul and Brevity First rule templates ([f1494fd](https://github.com/HankHuang0516/realbot/commit/f1494fde800c03fe2c650bda26fc87df36f9dd8d))
* **info:** add 實用案例 category with Claude x OpenClaw guide ([94475ea](https://github.com/HankHuang0516/realbot/commit/94475eaf8c8f0cf9cc2068d6edff14b9036f136d))
* **skill-templates:** auto-approve pipeline + admin contributions UI ([5f94ea1](https://github.com/HankHuang0516/realbot/commit/5f94ea13291d6b0d4f12e563d8451402452b09b7))
* **soul-dialog:** merge dropdown into Gallery, unify template selection ([b9eeb41](https://github.com/HankHuang0516/realbot/commit/b9eeb415d789243243426adf345552c7970cd8b9))
* **channel:** push NAME_CHANGED to channel bots immediately on rename ([d7992fc](https://github.com/HankHuang0516/realbot/commit/d7992fceb50ce615887ed3fe5e5e54c4306be7e9))
* **info:** simplify claude-openclaw guide with full example + copy button ([d8e31e9](https://github.com/HankHuang0516/realbot/commit/d8e31e9a3bf1b0b0dd05ef7bb7498bdcff82b335))
* **rebrand:** update community post intro to AI Agent collaboration ([5fb15a0](https://github.com/HankHuang0516/realbot/commit/5fb15a0eca7911ac987686f844216f818a980e75))
* **rebrand:** update comparison page strings to AI Agent collaboration ([82171a1](https://github.com/HankHuang0516/realbot/commit/82171a161819149f7a9977f0425e41742c816849))
* **rebrand:** update faq_a_what_is to AI Agent collaboration messaging ([a79324a](https://github.com/HankHuang0516/realbot/commit/a79324aeefbe931e0119986ef4917a0516878bb5))
* **rebrand:** update info.html features section to AI Agent positioning ([1a7fae8](https://github.com/HankHuang0516/realbot/commit/1a7fae8758b801a1da934eccbbad7be8d64bc9d8))
* **rebrand:** update openclaw plugin metadata to AI Agent collaboration ([96baef7](https://github.com/HankHuang0516/realbot/commit/96baef7cb5fcf57159ad401b2ed543fef218ae5e))
* **rebrand:** update openclaw-channel README to AI Agent collaboration ([f11653f](https://github.com/HankHuang0516/realbot/commit/f11653f11c44584e0783dddecc1fcef3dd4e8f55))
* **rebrand:** update privacy policy - replace pet terminology with AI agent ([72b487d](https://github.com/HankHuang0516/realbot/commit/72b487d0260f5d2ece537c5c606ebb8f87dd4734))
* **rebrand:** update README and package descriptions to AI Agent collaboration ([f9efffa](https://github.com/HankHuang0516/realbot/commit/f9efffa5179c5685023ef6d199d16f3e8018ee75))
* **android:** wire SoulGalleryDialog and RuleGalleryDialog into add dialogs ([74898b3](https://github.com/HankHuang0516/realbot/commit/74898b3d527990ea769e7f2d3ac8d32a07df9c38))


### Reverts

* **templates:** remove manually added templates, let bot contribute via API ([b1e7914](https://github.com/HankHuang0516/realbot/commit/b1e79143d3bc10afea36dc8fe7294011a5f75c10))

# [1.3.0](https://github.com/HankHuang0516/realbot/compare/v1.2.0...v1.3.0) (2026-03-08)


### Bug Fixes

* **plugin:** add auto-reconnect with exponential backoff to openclaw-channel-eclaw v1.1.0 ([0ae83a0](https://github.com/HankHuang0516/realbot/commit/0ae83a00da24ce72afd63d59f9be828ca2df32a8))
* **skill-contribute:** add GITHUB_TOKEN support to bypass API rate limit ([51dcea3](https://github.com/HankHuang0516/realbot/commit/51dcea3a561d3a083cdf9436b9c61f688d3573fa))
* **android:** add name/description/ruleType to SkillTemplate and fix gallery dialogs ([e0a79b7](https://github.com/HankHuang0516/realbot/commit/e0a79b76503d36e21e7dc28246e940b27791492b))
* **api:** auto-detect entityId from botSecret in contribute endpoints ([9b3e8d1](https://github.com/HankHuang0516/realbot/commit/9b3e8d12a8084f7a4fe88363291393e6159bb47b))
* **bind:** await single-device save after binding to prevent race condition ([811b3e9](https://github.com/HankHuang0516/realbot/commit/811b3e9b250f7dee518e1f7f7cdf65c1a8dd94d8))
* code review corrections — credential UI and guide accuracy ([5992dc5](https://github.com/HankHuang0516/realbot/commit/5992dc5ca0cf35adee17253f5742ed3619ec836e)), closes [#newSecretValue](https://github.com/HankHuang0516/realbot/issues/newSecretValue)
* **test:** fix reorder-channel test order array size to match device limit ([3103918](https://github.com/HankHuang0516/realbot/commit/31039180cf26e0e5f2db3292bd153be856c541f6))
* **portal:** fix XSS, broken tags, and filter consistency in soul/rule gallery ([0dd30ec](https://github.com/HankHuang0516/realbot/commit/0dd30ec0c8a358594d4c603ed5c92e7b86871226))
* **admin:** i18n By/Date column headers in contribution tables ([c1caaf6](https://github.com/HankHuang0516/realbot/commit/c1caaf67d893266fca7831cf2c32a231230db4e2))
* **bind:** make /api/bind handler async to fix await syntax error ([f78d373](https://github.com/HankHuang0516/realbot/commit/f78d373e2826b710adf6a7039604d93e90a627d0))
* **api:** move skill-templates/contributions route after adminAuth definition ([4915f3d](https://github.com/HankHuang0516/realbot/commit/4915f3d8f737445f4144bd5998ff5588fb126bbb))
* persist language preference to server for cross-device sync ([bd3f7f6](https://github.com/HankHuang0516/realbot/commit/bd3f7f65657434136dcf40d1f499de2924fc0c74))
* **ai-chat:** prevent false network error when closing chat mid-request ([e787e2e](https://github.com/HankHuang0516/realbot/commit/e787e2e6c489885de8bd6a022255f32fccbe8588))
* **tests:** read TEST_ENTITY_ID from .env in bot-api-response test; add setup_broadcast_webhook.js ([0dc137c](https://github.com/HankHuang0516/realbot/commit/0dc137c85e00de20c74b0c42c7569acbaf117dae))
* **bind:** reset bot-to-bot counter on rebind to prevent stale rate limits ([daea976](https://github.com/HankHuang0516/realbot/commit/daea976e44768dc65eb515d2bff4b5f400385642))
* **settings:** right-align copy icon, remove eye buttons ([010ffb7](https://github.com/HankHuang0516/realbot/commit/010ffb7487fe57019423e843676752ad203c1c2d))
* **test:** shorten NEW_NAME to stay within 20-char server limit ([45a1653](https://github.com/HankHuang0516/realbot/commit/45a165359c4212b2d0851cebbfa20c19f26e81e5))
* **settings:** truncate Device ID/Secret with ellipsis, no line wrap ([94a2ea4](https://github.com/HankHuang0516/realbot/commit/94a2ea41be12a026d5149a53e779b2403558639b))
* **info:** update example template with review steps after each goal ([ba3ceb6](https://github.com/HankHuang0516/realbot/commit/ba3ceb61c3df158c43f081784958ca5cb5f7e451))
* **rebrand:** update HTML fallback strings in comparison section ([a332dbd](https://github.com/HankHuang0516/realbot/commit/a332dbd95a4069952d1eb785e3969961f0d89cf3))
* **rebrand:** update SVG and tester guide - remove pet terminology ([c27b27e](https://github.com/HankHuang0516/realbot/commit/c27b27e6fb71240a05e5a5afd1b6b8c42b3b5c41))
* **admin:** use cookie auth for skill-templates/contributions endpoint ([fcefb1a](https://github.com/HankHuang0516/realbot/commit/fcefb1a0a7d295646024931bb1d6e018022d0945))
* **scheduler:** use current timestamp as default scheduled_at for cron schedules ([1610110](https://github.com/HankHuang0516/realbot/commit/1610110239212ffca506b6cbf3dec67dfb862278))


### Features

* **settings:** add copy icon for Device ID and Copy Credentials button ([35a68d7](https://github.com/HankHuang0516/realbot/commit/35a68d70044c94b643ee6a685ecb88840c008179))
* **templates:** add Creative Thinker soul and Step-by-Step Reasoning rule templates ([61e916f](https://github.com/HankHuang0516/realbot/commit/61e916feadad2683d5d774073211d54cda6de898))
* **info:** add deep linking support for guide sub-items ([e16ebb7](https://github.com/HankHuang0516/realbot/commit/e16ebb76d8fdf5d5b53ca117da92c3ea158579f6)), closes [#faq](https://github.com/HankHuang0516/realbot/issues/faq) [#release-notes](https://github.com/HankHuang0516/realbot/issues/release-notes) [#compare](https://github.com/HankHuang0516/realbot/issues/compare)
* **settings:** add Device Secret display with reveal/copy toggle ([4d4281a](https://github.com/HankHuang0516/realbot/commit/4d4281a967a87f404ca5217f32045f1ff6fb500b))
* **schedule:** add deviceSecret dual auth for schedule endpoints ([2716375](https://github.com/HankHuang0516/realbot/commit/2716375a2023b2ff259bdf7aae6051832ddc49c8))
* **android:** add fetchSoulTemplates/fetchRuleTemplates to MissionViewModel ([1c411fc](https://github.com/HankHuang0516/realbot/commit/1c411fce073055eb743d09c71f5d6ce9aed4b988))
* **admin:** add pagination to user list (50 per page) ([ccd5fb3](https://github.com/HankHuang0516/realbot/commit/ccd5fb35117fd978d93bc4265e904f7b8ed20a7b))
* **android/i18n:** add soul & rule template gallery strings ([0a28d99](https://github.com/HankHuang0516/realbot/commit/0a28d9979ab846214683a9c3bbc76c62be69e385))
* **templates:** add Soul/Rule template community contribution API ([c6fdcba](https://github.com/HankHuang0516/realbot/commit/c6fdcba5076d34dd85a94293a30b875e8a243b34))
* **android:** add SoulGalleryDialog and RuleGalleryDialog ([5a3142a](https://github.com/HankHuang0516/realbot/commit/5a3142af3f67dfa4c4ba9473a4381f89e04aee24))
* **skill-templates:** add structural validation to contribute endpoint ([891327d](https://github.com/HankHuang0516/realbot/commit/891327dc02dbd3d2a8bbbf254d596cdb33fca3ed))
* **templates:** add Wise Mentor soul and Brevity First rule templates ([f1494fd](https://github.com/HankHuang0516/realbot/commit/f1494fde800c03fe2c650bda26fc87df36f9dd8d))
* **info:** add 實用案例 category with Claude x OpenClaw guide ([94475ea](https://github.com/HankHuang0516/realbot/commit/94475eaf8c8f0cf9cc2068d6edff14b9036f136d))
* **skill-templates:** auto-approve pipeline + admin contributions UI ([5f94ea1](https://github.com/HankHuang0516/realbot/commit/5f94ea13291d6b0d4f12e563d8451402452b09b7))
* **soul-dialog:** merge dropdown into Gallery, unify template selection ([b9eeb41](https://github.com/HankHuang0516/realbot/commit/b9eeb415d789243243426adf345552c7970cd8b9))
* **channel:** push NAME_CHANGED to channel bots immediately on rename ([d7992fc](https://github.com/HankHuang0516/realbot/commit/d7992fceb50ce615887ed3fe5e5e54c4306be7e9))
* **info:** simplify claude-openclaw guide with full example + copy button ([d8e31e9](https://github.com/HankHuang0516/realbot/commit/d8e31e9a3bf1b0b0dd05ef7bb7498bdcff82b335))
* **rebrand:** update community post intro to AI Agent collaboration ([5fb15a0](https://github.com/HankHuang0516/realbot/commit/5fb15a0eca7911ac987686f844216f818a980e75))
* **rebrand:** update comparison page strings to AI Agent collaboration ([82171a1](https://github.com/HankHuang0516/realbot/commit/82171a161819149f7a9977f0425e41742c816849))
* **rebrand:** update faq_a_what_is to AI Agent collaboration messaging ([a79324a](https://github.com/HankHuang0516/realbot/commit/a79324aeefbe931e0119986ef4917a0516878bb5))
* **rebrand:** update info.html features section to AI Agent positioning ([1a7fae8](https://github.com/HankHuang0516/realbot/commit/1a7fae8758b801a1da934eccbbad7be8d64bc9d8))
* **rebrand:** update openclaw plugin metadata to AI Agent collaboration ([96baef7](https://github.com/HankHuang0516/realbot/commit/96baef7cb5fcf57159ad401b2ed543fef218ae5e))
* **rebrand:** update openclaw-channel README to AI Agent collaboration ([f11653f](https://github.com/HankHuang0516/realbot/commit/f11653f11c44584e0783dddecc1fcef3dd4e8f55))
* **rebrand:** update privacy policy - replace pet terminology with AI agent ([72b487d](https://github.com/HankHuang0516/realbot/commit/72b487d0260f5d2ece537c5c606ebb8f87dd4734))
* **rebrand:** update README and package descriptions to AI Agent collaboration ([f9efffa](https://github.com/HankHuang0516/realbot/commit/f9efffa5179c5685023ef6d199d16f3e8018ee75))
* **android:** wire SoulGalleryDialog and RuleGalleryDialog into add dialogs ([74898b3](https://github.com/HankHuang0516/realbot/commit/74898b3d527990ea769e7f2d3ac8d32a07df9c38))


### Reverts

* **templates:** remove manually added templates, let bot contribute via API ([b1e7914](https://github.com/HankHuang0516/realbot/commit/b1e79143d3bc10afea36dc8fe7294011a5f75c10))

# [1.3.0](https://github.com/HankHuang0516/realbot/compare/v1.2.0...v1.3.0) (2026-03-08)


### Bug Fixes

* **plugin:** add auto-reconnect with exponential backoff to openclaw-channel-eclaw v1.1.0 ([0ae83a0](https://github.com/HankHuang0516/realbot/commit/0ae83a00da24ce72afd63d59f9be828ca2df32a8))
* **android:** add name/description/ruleType to SkillTemplate and fix gallery dialogs ([e0a79b7](https://github.com/HankHuang0516/realbot/commit/e0a79b76503d36e21e7dc28246e940b27791492b))
* **api:** auto-detect entityId from botSecret in contribute endpoints ([9b3e8d1](https://github.com/HankHuang0516/realbot/commit/9b3e8d12a8084f7a4fe88363291393e6159bb47b))
* **bind:** await single-device save after binding to prevent race condition ([811b3e9](https://github.com/HankHuang0516/realbot/commit/811b3e9b250f7dee518e1f7f7cdf65c1a8dd94d8))
* code review corrections — credential UI and guide accuracy ([5992dc5](https://github.com/HankHuang0516/realbot/commit/5992dc5ca0cf35adee17253f5742ed3619ec836e)), closes [#newSecretValue](https://github.com/HankHuang0516/realbot/issues/newSecretValue)
* **test:** fix reorder-channel test order array size to match device limit ([3103918](https://github.com/HankHuang0516/realbot/commit/31039180cf26e0e5f2db3292bd153be856c541f6))
* **portal:** fix XSS, broken tags, and filter consistency in soul/rule gallery ([0dd30ec](https://github.com/HankHuang0516/realbot/commit/0dd30ec0c8a358594d4c603ed5c92e7b86871226))
* **admin:** i18n By/Date column headers in contribution tables ([c1caaf6](https://github.com/HankHuang0516/realbot/commit/c1caaf67d893266fca7831cf2c32a231230db4e2))
* **bind:** make /api/bind handler async to fix await syntax error ([f78d373](https://github.com/HankHuang0516/realbot/commit/f78d373e2826b710adf6a7039604d93e90a627d0))
* **api:** move skill-templates/contributions route after adminAuth definition ([4915f3d](https://github.com/HankHuang0516/realbot/commit/4915f3d8f737445f4144bd5998ff5588fb126bbb))
* persist language preference to server for cross-device sync ([bd3f7f6](https://github.com/HankHuang0516/realbot/commit/bd3f7f65657434136dcf40d1f499de2924fc0c74))
* **ai-chat:** prevent false network error when closing chat mid-request ([e787e2e](https://github.com/HankHuang0516/realbot/commit/e787e2e6c489885de8bd6a022255f32fccbe8588))
* **tests:** read TEST_ENTITY_ID from .env in bot-api-response test; add setup_broadcast_webhook.js ([0dc137c](https://github.com/HankHuang0516/realbot/commit/0dc137c85e00de20c74b0c42c7569acbaf117dae))
* **bind:** reset bot-to-bot counter on rebind to prevent stale rate limits ([daea976](https://github.com/HankHuang0516/realbot/commit/daea976e44768dc65eb515d2bff4b5f400385642))
* **settings:** right-align copy icon, remove eye buttons ([010ffb7](https://github.com/HankHuang0516/realbot/commit/010ffb7487fe57019423e843676752ad203c1c2d))
* **test:** shorten NEW_NAME to stay within 20-char server limit ([45a1653](https://github.com/HankHuang0516/realbot/commit/45a165359c4212b2d0851cebbfa20c19f26e81e5))
* **settings:** truncate Device ID/Secret with ellipsis, no line wrap ([94a2ea4](https://github.com/HankHuang0516/realbot/commit/94a2ea41be12a026d5149a53e779b2403558639b))
* **info:** update example template with review steps after each goal ([ba3ceb6](https://github.com/HankHuang0516/realbot/commit/ba3ceb61c3df158c43f081784958ca5cb5f7e451))
* **rebrand:** update HTML fallback strings in comparison section ([a332dbd](https://github.com/HankHuang0516/realbot/commit/a332dbd95a4069952d1eb785e3969961f0d89cf3))
* **rebrand:** update SVG and tester guide - remove pet terminology ([c27b27e](https://github.com/HankHuang0516/realbot/commit/c27b27e6fb71240a05e5a5afd1b6b8c42b3b5c41))
* **admin:** use cookie auth for skill-templates/contributions endpoint ([fcefb1a](https://github.com/HankHuang0516/realbot/commit/fcefb1a0a7d295646024931bb1d6e018022d0945))
* **scheduler:** use current timestamp as default scheduled_at for cron schedules ([1610110](https://github.com/HankHuang0516/realbot/commit/1610110239212ffca506b6cbf3dec67dfb862278))


### Features

* **settings:** add copy icon for Device ID and Copy Credentials button ([35a68d7](https://github.com/HankHuang0516/realbot/commit/35a68d70044c94b643ee6a685ecb88840c008179))
* **templates:** add Creative Thinker soul and Step-by-Step Reasoning rule templates ([61e916f](https://github.com/HankHuang0516/realbot/commit/61e916feadad2683d5d774073211d54cda6de898))
* **info:** add deep linking support for guide sub-items ([e16ebb7](https://github.com/HankHuang0516/realbot/commit/e16ebb76d8fdf5d5b53ca117da92c3ea158579f6)), closes [#faq](https://github.com/HankHuang0516/realbot/issues/faq) [#release-notes](https://github.com/HankHuang0516/realbot/issues/release-notes) [#compare](https://github.com/HankHuang0516/realbot/issues/compare)
* **settings:** add Device Secret display with reveal/copy toggle ([4d4281a](https://github.com/HankHuang0516/realbot/commit/4d4281a967a87f404ca5217f32045f1ff6fb500b))
* **schedule:** add deviceSecret dual auth for schedule endpoints ([2716375](https://github.com/HankHuang0516/realbot/commit/2716375a2023b2ff259bdf7aae6051832ddc49c8))
* **android:** add fetchSoulTemplates/fetchRuleTemplates to MissionViewModel ([1c411fc](https://github.com/HankHuang0516/realbot/commit/1c411fce073055eb743d09c71f5d6ce9aed4b988))
* **admin:** add pagination to user list (50 per page) ([ccd5fb3](https://github.com/HankHuang0516/realbot/commit/ccd5fb35117fd978d93bc4265e904f7b8ed20a7b))
* **android/i18n:** add soul & rule template gallery strings ([0a28d99](https://github.com/HankHuang0516/realbot/commit/0a28d9979ab846214683a9c3bbc76c62be69e385))
* **templates:** add Soul/Rule template community contribution API ([c6fdcba](https://github.com/HankHuang0516/realbot/commit/c6fdcba5076d34dd85a94293a30b875e8a243b34))
* **android:** add SoulGalleryDialog and RuleGalleryDialog ([5a3142a](https://github.com/HankHuang0516/realbot/commit/5a3142af3f67dfa4c4ba9473a4381f89e04aee24))
* **skill-templates:** add structural validation to contribute endpoint ([891327d](https://github.com/HankHuang0516/realbot/commit/891327dc02dbd3d2a8bbbf254d596cdb33fca3ed))
* **templates:** add Wise Mentor soul and Brevity First rule templates ([f1494fd](https://github.com/HankHuang0516/realbot/commit/f1494fde800c03fe2c650bda26fc87df36f9dd8d))
* **info:** add 實用案例 category with Claude x OpenClaw guide ([94475ea](https://github.com/HankHuang0516/realbot/commit/94475eaf8c8f0cf9cc2068d6edff14b9036f136d))
* **skill-templates:** auto-approve pipeline + admin contributions UI ([5f94ea1](https://github.com/HankHuang0516/realbot/commit/5f94ea13291d6b0d4f12e563d8451402452b09b7))
* **soul-dialog:** merge dropdown into Gallery, unify template selection ([b9eeb41](https://github.com/HankHuang0516/realbot/commit/b9eeb415d789243243426adf345552c7970cd8b9))
* **channel:** push NAME_CHANGED to channel bots immediately on rename ([d7992fc](https://github.com/HankHuang0516/realbot/commit/d7992fceb50ce615887ed3fe5e5e54c4306be7e9))
* **info:** simplify claude-openclaw guide with full example + copy button ([d8e31e9](https://github.com/HankHuang0516/realbot/commit/d8e31e9a3bf1b0b0dd05ef7bb7498bdcff82b335))
* **rebrand:** update community post intro to AI Agent collaboration ([5fb15a0](https://github.com/HankHuang0516/realbot/commit/5fb15a0eca7911ac987686f844216f818a980e75))
* **rebrand:** update comparison page strings to AI Agent collaboration ([82171a1](https://github.com/HankHuang0516/realbot/commit/82171a161819149f7a9977f0425e41742c816849))
* **rebrand:** update faq_a_what_is to AI Agent collaboration messaging ([a79324a](https://github.com/HankHuang0516/realbot/commit/a79324aeefbe931e0119986ef4917a0516878bb5))
* **rebrand:** update info.html features section to AI Agent positioning ([1a7fae8](https://github.com/HankHuang0516/realbot/commit/1a7fae8758b801a1da934eccbbad7be8d64bc9d8))
* **rebrand:** update openclaw plugin metadata to AI Agent collaboration ([96baef7](https://github.com/HankHuang0516/realbot/commit/96baef7cb5fcf57159ad401b2ed543fef218ae5e))
* **rebrand:** update openclaw-channel README to AI Agent collaboration ([f11653f](https://github.com/HankHuang0516/realbot/commit/f11653f11c44584e0783dddecc1fcef3dd4e8f55))
* **rebrand:** update privacy policy - replace pet terminology with AI agent ([72b487d](https://github.com/HankHuang0516/realbot/commit/72b487d0260f5d2ece537c5c606ebb8f87dd4734))
* **rebrand:** update README and package descriptions to AI Agent collaboration ([f9efffa](https://github.com/HankHuang0516/realbot/commit/f9efffa5179c5685023ef6d199d16f3e8018ee75))
* **android:** wire SoulGalleryDialog and RuleGalleryDialog into add dialogs ([74898b3](https://github.com/HankHuang0516/realbot/commit/74898b3d527990ea769e7f2d3ac8d32a07df9c38))


### Reverts

* **templates:** remove manually added templates, let bot contribute via API ([b1e7914](https://github.com/HankHuang0516/realbot/commit/b1e79143d3bc10afea36dc8fe7294011a5f75c10))

# [1.3.0](https://github.com/HankHuang0516/realbot/compare/v1.2.0...v1.3.0) (2026-03-08)


### Bug Fixes

* **plugin:** add auto-reconnect with exponential backoff to openclaw-channel-eclaw v1.1.0 ([0ae83a0](https://github.com/HankHuang0516/realbot/commit/0ae83a00da24ce72afd63d59f9be828ca2df32a8))
* **android:** add name/description/ruleType to SkillTemplate and fix gallery dialogs ([e0a79b7](https://github.com/HankHuang0516/realbot/commit/e0a79b76503d36e21e7dc28246e940b27791492b))
* **bind:** await single-device save after binding to prevent race condition ([811b3e9](https://github.com/HankHuang0516/realbot/commit/811b3e9b250f7dee518e1f7f7cdf65c1a8dd94d8))
* code review corrections — credential UI and guide accuracy ([5992dc5](https://github.com/HankHuang0516/realbot/commit/5992dc5ca0cf35adee17253f5742ed3619ec836e)), closes [#newSecretValue](https://github.com/HankHuang0516/realbot/issues/newSecretValue)
* **test:** fix reorder-channel test order array size to match device limit ([3103918](https://github.com/HankHuang0516/realbot/commit/31039180cf26e0e5f2db3292bd153be856c541f6))
* **portal:** fix XSS, broken tags, and filter consistency in soul/rule gallery ([0dd30ec](https://github.com/HankHuang0516/realbot/commit/0dd30ec0c8a358594d4c603ed5c92e7b86871226))
* **admin:** i18n By/Date column headers in contribution tables ([c1caaf6](https://github.com/HankHuang0516/realbot/commit/c1caaf67d893266fca7831cf2c32a231230db4e2))
* **bind:** make /api/bind handler async to fix await syntax error ([f78d373](https://github.com/HankHuang0516/realbot/commit/f78d373e2826b710adf6a7039604d93e90a627d0))
* **api:** move skill-templates/contributions route after adminAuth definition ([4915f3d](https://github.com/HankHuang0516/realbot/commit/4915f3d8f737445f4144bd5998ff5588fb126bbb))
* persist language preference to server for cross-device sync ([bd3f7f6](https://github.com/HankHuang0516/realbot/commit/bd3f7f65657434136dcf40d1f499de2924fc0c74))
* **ai-chat:** prevent false network error when closing chat mid-request ([e787e2e](https://github.com/HankHuang0516/realbot/commit/e787e2e6c489885de8bd6a022255f32fccbe8588))
* **tests:** read TEST_ENTITY_ID from .env in bot-api-response test; add setup_broadcast_webhook.js ([0dc137c](https://github.com/HankHuang0516/realbot/commit/0dc137c85e00de20c74b0c42c7569acbaf117dae))
* **bind:** reset bot-to-bot counter on rebind to prevent stale rate limits ([daea976](https://github.com/HankHuang0516/realbot/commit/daea976e44768dc65eb515d2bff4b5f400385642))
* **settings:** right-align copy icon, remove eye buttons ([010ffb7](https://github.com/HankHuang0516/realbot/commit/010ffb7487fe57019423e843676752ad203c1c2d))
* **test:** shorten NEW_NAME to stay within 20-char server limit ([45a1653](https://github.com/HankHuang0516/realbot/commit/45a165359c4212b2d0851cebbfa20c19f26e81e5))
* **settings:** truncate Device ID/Secret with ellipsis, no line wrap ([94a2ea4](https://github.com/HankHuang0516/realbot/commit/94a2ea41be12a026d5149a53e779b2403558639b))
* **info:** update example template with review steps after each goal ([ba3ceb6](https://github.com/HankHuang0516/realbot/commit/ba3ceb61c3df158c43f081784958ca5cb5f7e451))
* **rebrand:** update HTML fallback strings in comparison section ([a332dbd](https://github.com/HankHuang0516/realbot/commit/a332dbd95a4069952d1eb785e3969961f0d89cf3))
* **rebrand:** update SVG and tester guide - remove pet terminology ([c27b27e](https://github.com/HankHuang0516/realbot/commit/c27b27e6fb71240a05e5a5afd1b6b8c42b3b5c41))
* **admin:** use cookie auth for skill-templates/contributions endpoint ([fcefb1a](https://github.com/HankHuang0516/realbot/commit/fcefb1a0a7d295646024931bb1d6e018022d0945))
* **scheduler:** use current timestamp as default scheduled_at for cron schedules ([1610110](https://github.com/HankHuang0516/realbot/commit/1610110239212ffca506b6cbf3dec67dfb862278))


### Features

* **settings:** add copy icon for Device ID and Copy Credentials button ([35a68d7](https://github.com/HankHuang0516/realbot/commit/35a68d70044c94b643ee6a685ecb88840c008179))
* **templates:** add Creative Thinker soul and Step-by-Step Reasoning rule templates ([61e916f](https://github.com/HankHuang0516/realbot/commit/61e916feadad2683d5d774073211d54cda6de898))
* **info:** add deep linking support for guide sub-items ([e16ebb7](https://github.com/HankHuang0516/realbot/commit/e16ebb76d8fdf5d5b53ca117da92c3ea158579f6)), closes [#faq](https://github.com/HankHuang0516/realbot/issues/faq) [#release-notes](https://github.com/HankHuang0516/realbot/issues/release-notes) [#compare](https://github.com/HankHuang0516/realbot/issues/compare)
* **settings:** add Device Secret display with reveal/copy toggle ([4d4281a](https://github.com/HankHuang0516/realbot/commit/4d4281a967a87f404ca5217f32045f1ff6fb500b))
* **schedule:** add deviceSecret dual auth for schedule endpoints ([2716375](https://github.com/HankHuang0516/realbot/commit/2716375a2023b2ff259bdf7aae6051832ddc49c8))
* **android:** add fetchSoulTemplates/fetchRuleTemplates to MissionViewModel ([1c411fc](https://github.com/HankHuang0516/realbot/commit/1c411fce073055eb743d09c71f5d6ce9aed4b988))
* **admin:** add pagination to user list (50 per page) ([ccd5fb3](https://github.com/HankHuang0516/realbot/commit/ccd5fb35117fd978d93bc4265e904f7b8ed20a7b))
* **android/i18n:** add soul & rule template gallery strings ([0a28d99](https://github.com/HankHuang0516/realbot/commit/0a28d9979ab846214683a9c3bbc76c62be69e385))
* **templates:** add Soul/Rule template community contribution API ([c6fdcba](https://github.com/HankHuang0516/realbot/commit/c6fdcba5076d34dd85a94293a30b875e8a243b34))
* **android:** add SoulGalleryDialog and RuleGalleryDialog ([5a3142a](https://github.com/HankHuang0516/realbot/commit/5a3142af3f67dfa4c4ba9473a4381f89e04aee24))
* **skill-templates:** add structural validation to contribute endpoint ([891327d](https://github.com/HankHuang0516/realbot/commit/891327dc02dbd3d2a8bbbf254d596cdb33fca3ed))
* **templates:** add Wise Mentor soul and Brevity First rule templates ([f1494fd](https://github.com/HankHuang0516/realbot/commit/f1494fde800c03fe2c650bda26fc87df36f9dd8d))
* **info:** add 實用案例 category with Claude x OpenClaw guide ([94475ea](https://github.com/HankHuang0516/realbot/commit/94475eaf8c8f0cf9cc2068d6edff14b9036f136d))
* **skill-templates:** auto-approve pipeline + admin contributions UI ([5f94ea1](https://github.com/HankHuang0516/realbot/commit/5f94ea13291d6b0d4f12e563d8451402452b09b7))
* **soul-dialog:** merge dropdown into Gallery, unify template selection ([b9eeb41](https://github.com/HankHuang0516/realbot/commit/b9eeb415d789243243426adf345552c7970cd8b9))
* **channel:** push NAME_CHANGED to channel bots immediately on rename ([d7992fc](https://github.com/HankHuang0516/realbot/commit/d7992fceb50ce615887ed3fe5e5e54c4306be7e9))
* **info:** simplify claude-openclaw guide with full example + copy button ([d8e31e9](https://github.com/HankHuang0516/realbot/commit/d8e31e9a3bf1b0b0dd05ef7bb7498bdcff82b335))
* **rebrand:** update community post intro to AI Agent collaboration ([5fb15a0](https://github.com/HankHuang0516/realbot/commit/5fb15a0eca7911ac987686f844216f818a980e75))
* **rebrand:** update comparison page strings to AI Agent collaboration ([82171a1](https://github.com/HankHuang0516/realbot/commit/82171a161819149f7a9977f0425e41742c816849))
* **rebrand:** update faq_a_what_is to AI Agent collaboration messaging ([a79324a](https://github.com/HankHuang0516/realbot/commit/a79324aeefbe931e0119986ef4917a0516878bb5))
* **rebrand:** update info.html features section to AI Agent positioning ([1a7fae8](https://github.com/HankHuang0516/realbot/commit/1a7fae8758b801a1da934eccbbad7be8d64bc9d8))
* **rebrand:** update openclaw plugin metadata to AI Agent collaboration ([96baef7](https://github.com/HankHuang0516/realbot/commit/96baef7cb5fcf57159ad401b2ed543fef218ae5e))
* **rebrand:** update openclaw-channel README to AI Agent collaboration ([f11653f](https://github.com/HankHuang0516/realbot/commit/f11653f11c44584e0783dddecc1fcef3dd4e8f55))
* **rebrand:** update privacy policy - replace pet terminology with AI agent ([72b487d](https://github.com/HankHuang0516/realbot/commit/72b487d0260f5d2ece537c5c606ebb8f87dd4734))
* **rebrand:** update README and package descriptions to AI Agent collaboration ([f9efffa](https://github.com/HankHuang0516/realbot/commit/f9efffa5179c5685023ef6d199d16f3e8018ee75))
* **android:** wire SoulGalleryDialog and RuleGalleryDialog into add dialogs ([74898b3](https://github.com/HankHuang0516/realbot/commit/74898b3d527990ea769e7f2d3ac8d32a07df9c38))


### Reverts

* **templates:** remove manually added templates, let bot contribute via API ([b1e7914](https://github.com/HankHuang0516/realbot/commit/b1e79143d3bc10afea36dc8fe7294011a5f75c10))

# [1.3.0](https://github.com/HankHuang0516/realbot/compare/v1.2.0...v1.3.0) (2026-03-08)


### Bug Fixes

* **plugin:** add auto-reconnect with exponential backoff to openclaw-channel-eclaw v1.1.0 ([0ae83a0](https://github.com/HankHuang0516/realbot/commit/0ae83a00da24ce72afd63d59f9be828ca2df32a8))
* **android:** add name/description/ruleType to SkillTemplate and fix gallery dialogs ([e0a79b7](https://github.com/HankHuang0516/realbot/commit/e0a79b76503d36e21e7dc28246e940b27791492b))
* **bind:** await single-device save after binding to prevent race condition ([811b3e9](https://github.com/HankHuang0516/realbot/commit/811b3e9b250f7dee518e1f7f7cdf65c1a8dd94d8))
* code review corrections — credential UI and guide accuracy ([5992dc5](https://github.com/HankHuang0516/realbot/commit/5992dc5ca0cf35adee17253f5742ed3619ec836e)), closes [#newSecretValue](https://github.com/HankHuang0516/realbot/issues/newSecretValue)
* **test:** fix reorder-channel test order array size to match device limit ([3103918](https://github.com/HankHuang0516/realbot/commit/31039180cf26e0e5f2db3292bd153be856c541f6))
* **portal:** fix XSS, broken tags, and filter consistency in soul/rule gallery ([0dd30ec](https://github.com/HankHuang0516/realbot/commit/0dd30ec0c8a358594d4c603ed5c92e7b86871226))
* **admin:** i18n By/Date column headers in contribution tables ([c1caaf6](https://github.com/HankHuang0516/realbot/commit/c1caaf67d893266fca7831cf2c32a231230db4e2))
* **bind:** make /api/bind handler async to fix await syntax error ([f78d373](https://github.com/HankHuang0516/realbot/commit/f78d373e2826b710adf6a7039604d93e90a627d0))
* **api:** move skill-templates/contributions route after adminAuth definition ([4915f3d](https://github.com/HankHuang0516/realbot/commit/4915f3d8f737445f4144bd5998ff5588fb126bbb))
* persist language preference to server for cross-device sync ([bd3f7f6](https://github.com/HankHuang0516/realbot/commit/bd3f7f65657434136dcf40d1f499de2924fc0c74))
* **tests:** read TEST_ENTITY_ID from .env in bot-api-response test; add setup_broadcast_webhook.js ([0dc137c](https://github.com/HankHuang0516/realbot/commit/0dc137c85e00de20c74b0c42c7569acbaf117dae))
* **bind:** reset bot-to-bot counter on rebind to prevent stale rate limits ([daea976](https://github.com/HankHuang0516/realbot/commit/daea976e44768dc65eb515d2bff4b5f400385642))
* **settings:** right-align copy icon, remove eye buttons ([010ffb7](https://github.com/HankHuang0516/realbot/commit/010ffb7487fe57019423e843676752ad203c1c2d))
* **test:** shorten NEW_NAME to stay within 20-char server limit ([45a1653](https://github.com/HankHuang0516/realbot/commit/45a165359c4212b2d0851cebbfa20c19f26e81e5))
* **settings:** truncate Device ID/Secret with ellipsis, no line wrap ([94a2ea4](https://github.com/HankHuang0516/realbot/commit/94a2ea41be12a026d5149a53e779b2403558639b))
* **info:** update example template with review steps after each goal ([ba3ceb6](https://github.com/HankHuang0516/realbot/commit/ba3ceb61c3df158c43f081784958ca5cb5f7e451))
* **rebrand:** update HTML fallback strings in comparison section ([a332dbd](https://github.com/HankHuang0516/realbot/commit/a332dbd95a4069952d1eb785e3969961f0d89cf3))
* **rebrand:** update SVG and tester guide - remove pet terminology ([c27b27e](https://github.com/HankHuang0516/realbot/commit/c27b27e6fb71240a05e5a5afd1b6b8c42b3b5c41))
* **admin:** use cookie auth for skill-templates/contributions endpoint ([fcefb1a](https://github.com/HankHuang0516/realbot/commit/fcefb1a0a7d295646024931bb1d6e018022d0945))
* **scheduler:** use current timestamp as default scheduled_at for cron schedules ([1610110](https://github.com/HankHuang0516/realbot/commit/1610110239212ffca506b6cbf3dec67dfb862278))


### Features

* **settings:** add copy icon for Device ID and Copy Credentials button ([35a68d7](https://github.com/HankHuang0516/realbot/commit/35a68d70044c94b643ee6a685ecb88840c008179))
* **templates:** add Creative Thinker soul and Step-by-Step Reasoning rule templates ([61e916f](https://github.com/HankHuang0516/realbot/commit/61e916feadad2683d5d774073211d54cda6de898))
* **info:** add deep linking support for guide sub-items ([e16ebb7](https://github.com/HankHuang0516/realbot/commit/e16ebb76d8fdf5d5b53ca117da92c3ea158579f6)), closes [#faq](https://github.com/HankHuang0516/realbot/issues/faq) [#release-notes](https://github.com/HankHuang0516/realbot/issues/release-notes) [#compare](https://github.com/HankHuang0516/realbot/issues/compare)
* **settings:** add Device Secret display with reveal/copy toggle ([4d4281a](https://github.com/HankHuang0516/realbot/commit/4d4281a967a87f404ca5217f32045f1ff6fb500b))
* **schedule:** add deviceSecret dual auth for schedule endpoints ([2716375](https://github.com/HankHuang0516/realbot/commit/2716375a2023b2ff259bdf7aae6051832ddc49c8))
* **android:** add fetchSoulTemplates/fetchRuleTemplates to MissionViewModel ([1c411fc](https://github.com/HankHuang0516/realbot/commit/1c411fce073055eb743d09c71f5d6ce9aed4b988))
* **admin:** add pagination to user list (50 per page) ([ccd5fb3](https://github.com/HankHuang0516/realbot/commit/ccd5fb35117fd978d93bc4265e904f7b8ed20a7b))
* **android/i18n:** add soul & rule template gallery strings ([0a28d99](https://github.com/HankHuang0516/realbot/commit/0a28d9979ab846214683a9c3bbc76c62be69e385))
* **templates:** add Soul/Rule template community contribution API ([c6fdcba](https://github.com/HankHuang0516/realbot/commit/c6fdcba5076d34dd85a94293a30b875e8a243b34))
* **android:** add SoulGalleryDialog and RuleGalleryDialog ([5a3142a](https://github.com/HankHuang0516/realbot/commit/5a3142af3f67dfa4c4ba9473a4381f89e04aee24))
* **skill-templates:** add structural validation to contribute endpoint ([891327d](https://github.com/HankHuang0516/realbot/commit/891327dc02dbd3d2a8bbbf254d596cdb33fca3ed))
* **templates:** add Wise Mentor soul and Brevity First rule templates ([f1494fd](https://github.com/HankHuang0516/realbot/commit/f1494fde800c03fe2c650bda26fc87df36f9dd8d))
* **info:** add 實用案例 category with Claude x OpenClaw guide ([94475ea](https://github.com/HankHuang0516/realbot/commit/94475eaf8c8f0cf9cc2068d6edff14b9036f136d))
* **skill-templates:** auto-approve pipeline + admin contributions UI ([5f94ea1](https://github.com/HankHuang0516/realbot/commit/5f94ea13291d6b0d4f12e563d8451402452b09b7))
* **soul-dialog:** merge dropdown into Gallery, unify template selection ([b9eeb41](https://github.com/HankHuang0516/realbot/commit/b9eeb415d789243243426adf345552c7970cd8b9))
* **channel:** push NAME_CHANGED to channel bots immediately on rename ([d7992fc](https://github.com/HankHuang0516/realbot/commit/d7992fceb50ce615887ed3fe5e5e54c4306be7e9))
* **info:** simplify claude-openclaw guide with full example + copy button ([d8e31e9](https://github.com/HankHuang0516/realbot/commit/d8e31e9a3bf1b0b0dd05ef7bb7498bdcff82b335))
* **rebrand:** update community post intro to AI Agent collaboration ([5fb15a0](https://github.com/HankHuang0516/realbot/commit/5fb15a0eca7911ac987686f844216f818a980e75))
* **rebrand:** update comparison page strings to AI Agent collaboration ([82171a1](https://github.com/HankHuang0516/realbot/commit/82171a161819149f7a9977f0425e41742c816849))
* **rebrand:** update faq_a_what_is to AI Agent collaboration messaging ([a79324a](https://github.com/HankHuang0516/realbot/commit/a79324aeefbe931e0119986ef4917a0516878bb5))
* **rebrand:** update info.html features section to AI Agent positioning ([1a7fae8](https://github.com/HankHuang0516/realbot/commit/1a7fae8758b801a1da934eccbbad7be8d64bc9d8))
* **rebrand:** update openclaw plugin metadata to AI Agent collaboration ([96baef7](https://github.com/HankHuang0516/realbot/commit/96baef7cb5fcf57159ad401b2ed543fef218ae5e))
* **rebrand:** update openclaw-channel README to AI Agent collaboration ([f11653f](https://github.com/HankHuang0516/realbot/commit/f11653f11c44584e0783dddecc1fcef3dd4e8f55))
* **rebrand:** update privacy policy - replace pet terminology with AI agent ([72b487d](https://github.com/HankHuang0516/realbot/commit/72b487d0260f5d2ece537c5c606ebb8f87dd4734))
* **rebrand:** update README and package descriptions to AI Agent collaboration ([f9efffa](https://github.com/HankHuang0516/realbot/commit/f9efffa5179c5685023ef6d199d16f3e8018ee75))
* **android:** wire SoulGalleryDialog and RuleGalleryDialog into add dialogs ([74898b3](https://github.com/HankHuang0516/realbot/commit/74898b3d527990ea769e7f2d3ac8d32a07df9c38))


### Reverts

* **templates:** remove manually added templates, let bot contribute via API ([b1e7914](https://github.com/HankHuang0516/realbot/commit/b1e79143d3bc10afea36dc8fe7294011a5f75c10))

# [1.3.0](https://github.com/HankHuang0516/realbot/compare/v1.2.0...v1.3.0) (2026-03-08)


### Bug Fixes

* **plugin:** add auto-reconnect with exponential backoff to openclaw-channel-eclaw v1.1.0 ([0ae83a0](https://github.com/HankHuang0516/realbot/commit/0ae83a00da24ce72afd63d59f9be828ca2df32a8))
* **android:** add name/description/ruleType to SkillTemplate and fix gallery dialogs ([e0a79b7](https://github.com/HankHuang0516/realbot/commit/e0a79b76503d36e21e7dc28246e940b27791492b))
* **bind:** await single-device save after binding to prevent race condition ([811b3e9](https://github.com/HankHuang0516/realbot/commit/811b3e9b250f7dee518e1f7f7cdf65c1a8dd94d8))
* code review corrections — credential UI and guide accuracy ([5992dc5](https://github.com/HankHuang0516/realbot/commit/5992dc5ca0cf35adee17253f5742ed3619ec836e)), closes [#newSecretValue](https://github.com/HankHuang0516/realbot/issues/newSecretValue)
* **test:** fix reorder-channel test order array size to match device limit ([3103918](https://github.com/HankHuang0516/realbot/commit/31039180cf26e0e5f2db3292bd153be856c541f6))
* **portal:** fix XSS, broken tags, and filter consistency in soul/rule gallery ([0dd30ec](https://github.com/HankHuang0516/realbot/commit/0dd30ec0c8a358594d4c603ed5c92e7b86871226))
* **admin:** i18n By/Date column headers in contribution tables ([c1caaf6](https://github.com/HankHuang0516/realbot/commit/c1caaf67d893266fca7831cf2c32a231230db4e2))
* **bind:** make /api/bind handler async to fix await syntax error ([f78d373](https://github.com/HankHuang0516/realbot/commit/f78d373e2826b710adf6a7039604d93e90a627d0))
* **api:** move skill-templates/contributions route after adminAuth definition ([4915f3d](https://github.com/HankHuang0516/realbot/commit/4915f3d8f737445f4144bd5998ff5588fb126bbb))
* **tests:** read TEST_ENTITY_ID from .env in bot-api-response test; add setup_broadcast_webhook.js ([0dc137c](https://github.com/HankHuang0516/realbot/commit/0dc137c85e00de20c74b0c42c7569acbaf117dae))
* **bind:** reset bot-to-bot counter on rebind to prevent stale rate limits ([daea976](https://github.com/HankHuang0516/realbot/commit/daea976e44768dc65eb515d2bff4b5f400385642))
* **settings:** right-align copy icon, remove eye buttons ([010ffb7](https://github.com/HankHuang0516/realbot/commit/010ffb7487fe57019423e843676752ad203c1c2d))
* **test:** shorten NEW_NAME to stay within 20-char server limit ([45a1653](https://github.com/HankHuang0516/realbot/commit/45a165359c4212b2d0851cebbfa20c19f26e81e5))
* **settings:** truncate Device ID/Secret with ellipsis, no line wrap ([94a2ea4](https://github.com/HankHuang0516/realbot/commit/94a2ea41be12a026d5149a53e779b2403558639b))
* **info:** update example template with review steps after each goal ([ba3ceb6](https://github.com/HankHuang0516/realbot/commit/ba3ceb61c3df158c43f081784958ca5cb5f7e451))
* **rebrand:** update HTML fallback strings in comparison section ([a332dbd](https://github.com/HankHuang0516/realbot/commit/a332dbd95a4069952d1eb785e3969961f0d89cf3))
* **rebrand:** update SVG and tester guide - remove pet terminology ([c27b27e](https://github.com/HankHuang0516/realbot/commit/c27b27e6fb71240a05e5a5afd1b6b8c42b3b5c41))
* **admin:** use cookie auth for skill-templates/contributions endpoint ([fcefb1a](https://github.com/HankHuang0516/realbot/commit/fcefb1a0a7d295646024931bb1d6e018022d0945))
* **scheduler:** use current timestamp as default scheduled_at for cron schedules ([1610110](https://github.com/HankHuang0516/realbot/commit/1610110239212ffca506b6cbf3dec67dfb862278))


### Features

* **settings:** add copy icon for Device ID and Copy Credentials button ([35a68d7](https://github.com/HankHuang0516/realbot/commit/35a68d70044c94b643ee6a685ecb88840c008179))
* **templates:** add Creative Thinker soul and Step-by-Step Reasoning rule templates ([61e916f](https://github.com/HankHuang0516/realbot/commit/61e916feadad2683d5d774073211d54cda6de898))
* **info:** add deep linking support for guide sub-items ([e16ebb7](https://github.com/HankHuang0516/realbot/commit/e16ebb76d8fdf5d5b53ca117da92c3ea158579f6)), closes [#faq](https://github.com/HankHuang0516/realbot/issues/faq) [#release-notes](https://github.com/HankHuang0516/realbot/issues/release-notes) [#compare](https://github.com/HankHuang0516/realbot/issues/compare)
* **settings:** add Device Secret display with reveal/copy toggle ([4d4281a](https://github.com/HankHuang0516/realbot/commit/4d4281a967a87f404ca5217f32045f1ff6fb500b))
* **schedule:** add deviceSecret dual auth for schedule endpoints ([2716375](https://github.com/HankHuang0516/realbot/commit/2716375a2023b2ff259bdf7aae6051832ddc49c8))
* **android:** add fetchSoulTemplates/fetchRuleTemplates to MissionViewModel ([1c411fc](https://github.com/HankHuang0516/realbot/commit/1c411fce073055eb743d09c71f5d6ce9aed4b988))
* **admin:** add pagination to user list (50 per page) ([ccd5fb3](https://github.com/HankHuang0516/realbot/commit/ccd5fb35117fd978d93bc4265e904f7b8ed20a7b))
* **android/i18n:** add soul & rule template gallery strings ([0a28d99](https://github.com/HankHuang0516/realbot/commit/0a28d9979ab846214683a9c3bbc76c62be69e385))
* **templates:** add Soul/Rule template community contribution API ([c6fdcba](https://github.com/HankHuang0516/realbot/commit/c6fdcba5076d34dd85a94293a30b875e8a243b34))
* **android:** add SoulGalleryDialog and RuleGalleryDialog ([5a3142a](https://github.com/HankHuang0516/realbot/commit/5a3142af3f67dfa4c4ba9473a4381f89e04aee24))
* **skill-templates:** add structural validation to contribute endpoint ([891327d](https://github.com/HankHuang0516/realbot/commit/891327dc02dbd3d2a8bbbf254d596cdb33fca3ed))
* **templates:** add Wise Mentor soul and Brevity First rule templates ([f1494fd](https://github.com/HankHuang0516/realbot/commit/f1494fde800c03fe2c650bda26fc87df36f9dd8d))
* **info:** add 實用案例 category with Claude x OpenClaw guide ([94475ea](https://github.com/HankHuang0516/realbot/commit/94475eaf8c8f0cf9cc2068d6edff14b9036f136d))
* **skill-templates:** auto-approve pipeline + admin contributions UI ([5f94ea1](https://github.com/HankHuang0516/realbot/commit/5f94ea13291d6b0d4f12e563d8451402452b09b7))
* **soul-dialog:** merge dropdown into Gallery, unify template selection ([b9eeb41](https://github.com/HankHuang0516/realbot/commit/b9eeb415d789243243426adf345552c7970cd8b9))
* **channel:** push NAME_CHANGED to channel bots immediately on rename ([d7992fc](https://github.com/HankHuang0516/realbot/commit/d7992fceb50ce615887ed3fe5e5e54c4306be7e9))
* **info:** simplify claude-openclaw guide with full example + copy button ([d8e31e9](https://github.com/HankHuang0516/realbot/commit/d8e31e9a3bf1b0b0dd05ef7bb7498bdcff82b335))
* **rebrand:** update community post intro to AI Agent collaboration ([5fb15a0](https://github.com/HankHuang0516/realbot/commit/5fb15a0eca7911ac987686f844216f818a980e75))
* **rebrand:** update comparison page strings to AI Agent collaboration ([82171a1](https://github.com/HankHuang0516/realbot/commit/82171a161819149f7a9977f0425e41742c816849))
* **rebrand:** update faq_a_what_is to AI Agent collaboration messaging ([a79324a](https://github.com/HankHuang0516/realbot/commit/a79324aeefbe931e0119986ef4917a0516878bb5))
* **rebrand:** update info.html features section to AI Agent positioning ([1a7fae8](https://github.com/HankHuang0516/realbot/commit/1a7fae8758b801a1da934eccbbad7be8d64bc9d8))
* **rebrand:** update openclaw plugin metadata to AI Agent collaboration ([96baef7](https://github.com/HankHuang0516/realbot/commit/96baef7cb5fcf57159ad401b2ed543fef218ae5e))
* **rebrand:** update openclaw-channel README to AI Agent collaboration ([f11653f](https://github.com/HankHuang0516/realbot/commit/f11653f11c44584e0783dddecc1fcef3dd4e8f55))
* **rebrand:** update privacy policy - replace pet terminology with AI agent ([72b487d](https://github.com/HankHuang0516/realbot/commit/72b487d0260f5d2ece537c5c606ebb8f87dd4734))
* **rebrand:** update README and package descriptions to AI Agent collaboration ([f9efffa](https://github.com/HankHuang0516/realbot/commit/f9efffa5179c5685023ef6d199d16f3e8018ee75))
* **android:** wire SoulGalleryDialog and RuleGalleryDialog into add dialogs ([74898b3](https://github.com/HankHuang0516/realbot/commit/74898b3d527990ea769e7f2d3ac8d32a07df9c38))


### Reverts

* **templates:** remove manually added templates, let bot contribute via API ([b1e7914](https://github.com/HankHuang0516/realbot/commit/b1e79143d3bc10afea36dc8fe7294011a5f75c10))

# [1.3.0](https://github.com/HankHuang0516/realbot/compare/v1.2.0...v1.3.0) (2026-03-08)


### Bug Fixes

* **plugin:** add auto-reconnect with exponential backoff to openclaw-channel-eclaw v1.1.0 ([0ae83a0](https://github.com/HankHuang0516/realbot/commit/0ae83a00da24ce72afd63d59f9be828ca2df32a8))
* **android:** add name/description/ruleType to SkillTemplate and fix gallery dialogs ([e0a79b7](https://github.com/HankHuang0516/realbot/commit/e0a79b76503d36e21e7dc28246e940b27791492b))
* **bind:** await single-device save after binding to prevent race condition ([811b3e9](https://github.com/HankHuang0516/realbot/commit/811b3e9b250f7dee518e1f7f7cdf65c1a8dd94d8))
* code review corrections — credential UI and guide accuracy ([5992dc5](https://github.com/HankHuang0516/realbot/commit/5992dc5ca0cf35adee17253f5742ed3619ec836e)), closes [#newSecretValue](https://github.com/HankHuang0516/realbot/issues/newSecretValue)
* **test:** fix reorder-channel test order array size to match device limit ([3103918](https://github.com/HankHuang0516/realbot/commit/31039180cf26e0e5f2db3292bd153be856c541f6))
* **portal:** fix XSS, broken tags, and filter consistency in soul/rule gallery ([0dd30ec](https://github.com/HankHuang0516/realbot/commit/0dd30ec0c8a358594d4c603ed5c92e7b86871226))
* **admin:** i18n By/Date column headers in contribution tables ([c1caaf6](https://github.com/HankHuang0516/realbot/commit/c1caaf67d893266fca7831cf2c32a231230db4e2))
* **bind:** make /api/bind handler async to fix await syntax error ([f78d373](https://github.com/HankHuang0516/realbot/commit/f78d373e2826b710adf6a7039604d93e90a627d0))
* **api:** move skill-templates/contributions route after adminAuth definition ([4915f3d](https://github.com/HankHuang0516/realbot/commit/4915f3d8f737445f4144bd5998ff5588fb126bbb))
* **tests:** read TEST_ENTITY_ID from .env in bot-api-response test; add setup_broadcast_webhook.js ([0dc137c](https://github.com/HankHuang0516/realbot/commit/0dc137c85e00de20c74b0c42c7569acbaf117dae))
* **bind:** reset bot-to-bot counter on rebind to prevent stale rate limits ([daea976](https://github.com/HankHuang0516/realbot/commit/daea976e44768dc65eb515d2bff4b5f400385642))
* **settings:** right-align copy icon, remove eye buttons ([010ffb7](https://github.com/HankHuang0516/realbot/commit/010ffb7487fe57019423e843676752ad203c1c2d))
* **test:** shorten NEW_NAME to stay within 20-char server limit ([45a1653](https://github.com/HankHuang0516/realbot/commit/45a165359c4212b2d0851cebbfa20c19f26e81e5))
* **settings:** truncate Device ID/Secret with ellipsis, no line wrap ([94a2ea4](https://github.com/HankHuang0516/realbot/commit/94a2ea41be12a026d5149a53e779b2403558639b))
* **info:** update example template with review steps after each goal ([ba3ceb6](https://github.com/HankHuang0516/realbot/commit/ba3ceb61c3df158c43f081784958ca5cb5f7e451))
* **rebrand:** update HTML fallback strings in comparison section ([a332dbd](https://github.com/HankHuang0516/realbot/commit/a332dbd95a4069952d1eb785e3969961f0d89cf3))
* **rebrand:** update SVG and tester guide - remove pet terminology ([c27b27e](https://github.com/HankHuang0516/realbot/commit/c27b27e6fb71240a05e5a5afd1b6b8c42b3b5c41))
* **admin:** use cookie auth for skill-templates/contributions endpoint ([fcefb1a](https://github.com/HankHuang0516/realbot/commit/fcefb1a0a7d295646024931bb1d6e018022d0945))
* **scheduler:** use current timestamp as default scheduled_at for cron schedules ([1610110](https://github.com/HankHuang0516/realbot/commit/1610110239212ffca506b6cbf3dec67dfb862278))


### Features

* **settings:** add copy icon for Device ID and Copy Credentials button ([35a68d7](https://github.com/HankHuang0516/realbot/commit/35a68d70044c94b643ee6a685ecb88840c008179))
* **templates:** add Creative Thinker soul and Step-by-Step Reasoning rule templates ([61e916f](https://github.com/HankHuang0516/realbot/commit/61e916feadad2683d5d774073211d54cda6de898))
* **info:** add deep linking support for guide sub-items ([e16ebb7](https://github.com/HankHuang0516/realbot/commit/e16ebb76d8fdf5d5b53ca117da92c3ea158579f6)), closes [#faq](https://github.com/HankHuang0516/realbot/issues/faq) [#release-notes](https://github.com/HankHuang0516/realbot/issues/release-notes) [#compare](https://github.com/HankHuang0516/realbot/issues/compare)
* **settings:** add Device Secret display with reveal/copy toggle ([4d4281a](https://github.com/HankHuang0516/realbot/commit/4d4281a967a87f404ca5217f32045f1ff6fb500b))
* **schedule:** add deviceSecret dual auth for schedule endpoints ([2716375](https://github.com/HankHuang0516/realbot/commit/2716375a2023b2ff259bdf7aae6051832ddc49c8))
* **android:** add fetchSoulTemplates/fetchRuleTemplates to MissionViewModel ([1c411fc](https://github.com/HankHuang0516/realbot/commit/1c411fce073055eb743d09c71f5d6ce9aed4b988))
* **admin:** add pagination to user list (50 per page) ([ccd5fb3](https://github.com/HankHuang0516/realbot/commit/ccd5fb35117fd978d93bc4265e904f7b8ed20a7b))
* **android/i18n:** add soul & rule template gallery strings ([0a28d99](https://github.com/HankHuang0516/realbot/commit/0a28d9979ab846214683a9c3bbc76c62be69e385))
* **templates:** add Soul/Rule template community contribution API ([c6fdcba](https://github.com/HankHuang0516/realbot/commit/c6fdcba5076d34dd85a94293a30b875e8a243b34))
* **android:** add SoulGalleryDialog and RuleGalleryDialog ([5a3142a](https://github.com/HankHuang0516/realbot/commit/5a3142af3f67dfa4c4ba9473a4381f89e04aee24))
* **skill-templates:** add structural validation to contribute endpoint ([891327d](https://github.com/HankHuang0516/realbot/commit/891327dc02dbd3d2a8bbbf254d596cdb33fca3ed))
* **templates:** add Wise Mentor soul and Brevity First rule templates ([f1494fd](https://github.com/HankHuang0516/realbot/commit/f1494fde800c03fe2c650bda26fc87df36f9dd8d))
* **info:** add 實用案例 category with Claude x OpenClaw guide ([94475ea](https://github.com/HankHuang0516/realbot/commit/94475eaf8c8f0cf9cc2068d6edff14b9036f136d))
* **skill-templates:** auto-approve pipeline + admin contributions UI ([5f94ea1](https://github.com/HankHuang0516/realbot/commit/5f94ea13291d6b0d4f12e563d8451402452b09b7))
* **soul-dialog:** merge dropdown into Gallery, unify template selection ([b9eeb41](https://github.com/HankHuang0516/realbot/commit/b9eeb415d789243243426adf345552c7970cd8b9))
* **channel:** push NAME_CHANGED to channel bots immediately on rename ([d7992fc](https://github.com/HankHuang0516/realbot/commit/d7992fceb50ce615887ed3fe5e5e54c4306be7e9))
* **info:** simplify claude-openclaw guide with full example + copy button ([d8e31e9](https://github.com/HankHuang0516/realbot/commit/d8e31e9a3bf1b0b0dd05ef7bb7498bdcff82b335))
* **rebrand:** update community post intro to AI Agent collaboration ([5fb15a0](https://github.com/HankHuang0516/realbot/commit/5fb15a0eca7911ac987686f844216f818a980e75))
* **rebrand:** update comparison page strings to AI Agent collaboration ([82171a1](https://github.com/HankHuang0516/realbot/commit/82171a161819149f7a9977f0425e41742c816849))
* **rebrand:** update faq_a_what_is to AI Agent collaboration messaging ([a79324a](https://github.com/HankHuang0516/realbot/commit/a79324aeefbe931e0119986ef4917a0516878bb5))
* **rebrand:** update info.html features section to AI Agent positioning ([1a7fae8](https://github.com/HankHuang0516/realbot/commit/1a7fae8758b801a1da934eccbbad7be8d64bc9d8))
* **rebrand:** update openclaw plugin metadata to AI Agent collaboration ([96baef7](https://github.com/HankHuang0516/realbot/commit/96baef7cb5fcf57159ad401b2ed543fef218ae5e))
* **rebrand:** update openclaw-channel README to AI Agent collaboration ([f11653f](https://github.com/HankHuang0516/realbot/commit/f11653f11c44584e0783dddecc1fcef3dd4e8f55))
* **rebrand:** update privacy policy - replace pet terminology with AI agent ([72b487d](https://github.com/HankHuang0516/realbot/commit/72b487d0260f5d2ece537c5c606ebb8f87dd4734))
* **rebrand:** update README and package descriptions to AI Agent collaboration ([f9efffa](https://github.com/HankHuang0516/realbot/commit/f9efffa5179c5685023ef6d199d16f3e8018ee75))
* **android:** wire SoulGalleryDialog and RuleGalleryDialog into add dialogs ([74898b3](https://github.com/HankHuang0516/realbot/commit/74898b3d527990ea769e7f2d3ac8d32a07df9c38))


### Reverts

* **templates:** remove manually added templates, let bot contribute via API ([b1e7914](https://github.com/HankHuang0516/realbot/commit/b1e79143d3bc10afea36dc8fe7294011a5f75c10))

# [1.3.0](https://github.com/HankHuang0516/realbot/compare/v1.2.0...v1.3.0) (2026-03-08)


### Bug Fixes

* **android:** add name/description/ruleType to SkillTemplate and fix gallery dialogs ([e0a79b7](https://github.com/HankHuang0516/realbot/commit/e0a79b76503d36e21e7dc28246e940b27791492b))
* **bind:** await single-device save after binding to prevent race condition ([811b3e9](https://github.com/HankHuang0516/realbot/commit/811b3e9b250f7dee518e1f7f7cdf65c1a8dd94d8))
* code review corrections — credential UI and guide accuracy ([5992dc5](https://github.com/HankHuang0516/realbot/commit/5992dc5ca0cf35adee17253f5742ed3619ec836e)), closes [#newSecretValue](https://github.com/HankHuang0516/realbot/issues/newSecretValue)
* **test:** fix reorder-channel test order array size to match device limit ([3103918](https://github.com/HankHuang0516/realbot/commit/31039180cf26e0e5f2db3292bd153be856c541f6))
* **portal:** fix XSS, broken tags, and filter consistency in soul/rule gallery ([0dd30ec](https://github.com/HankHuang0516/realbot/commit/0dd30ec0c8a358594d4c603ed5c92e7b86871226))
* **bind:** make /api/bind handler async to fix await syntax error ([f78d373](https://github.com/HankHuang0516/realbot/commit/f78d373e2826b710adf6a7039604d93e90a627d0))
* **api:** move skill-templates/contributions route after adminAuth definition ([4915f3d](https://github.com/HankHuang0516/realbot/commit/4915f3d8f737445f4144bd5998ff5588fb126bbb))
* **tests:** read TEST_ENTITY_ID from .env in bot-api-response test; add setup_broadcast_webhook.js ([0dc137c](https://github.com/HankHuang0516/realbot/commit/0dc137c85e00de20c74b0c42c7569acbaf117dae))
* **bind:** reset bot-to-bot counter on rebind to prevent stale rate limits ([daea976](https://github.com/HankHuang0516/realbot/commit/daea976e44768dc65eb515d2bff4b5f400385642))
* **settings:** right-align copy icon, remove eye buttons ([010ffb7](https://github.com/HankHuang0516/realbot/commit/010ffb7487fe57019423e843676752ad203c1c2d))
* **test:** shorten NEW_NAME to stay within 20-char server limit ([45a1653](https://github.com/HankHuang0516/realbot/commit/45a165359c4212b2d0851cebbfa20c19f26e81e5))
* **settings:** truncate Device ID/Secret with ellipsis, no line wrap ([94a2ea4](https://github.com/HankHuang0516/realbot/commit/94a2ea41be12a026d5149a53e779b2403558639b))
* **info:** update example template with review steps after each goal ([ba3ceb6](https://github.com/HankHuang0516/realbot/commit/ba3ceb61c3df158c43f081784958ca5cb5f7e451))
* **rebrand:** update HTML fallback strings in comparison section ([a332dbd](https://github.com/HankHuang0516/realbot/commit/a332dbd95a4069952d1eb785e3969961f0d89cf3))
* **rebrand:** update SVG and tester guide - remove pet terminology ([c27b27e](https://github.com/HankHuang0516/realbot/commit/c27b27e6fb71240a05e5a5afd1b6b8c42b3b5c41))
* **admin:** use cookie auth for skill-templates/contributions endpoint ([fcefb1a](https://github.com/HankHuang0516/realbot/commit/fcefb1a0a7d295646024931bb1d6e018022d0945))
* **scheduler:** use current timestamp as default scheduled_at for cron schedules ([1610110](https://github.com/HankHuang0516/realbot/commit/1610110239212ffca506b6cbf3dec67dfb862278))


### Features

* **settings:** add copy icon for Device ID and Copy Credentials button ([35a68d7](https://github.com/HankHuang0516/realbot/commit/35a68d70044c94b643ee6a685ecb88840c008179))
* **templates:** add Creative Thinker soul and Step-by-Step Reasoning rule templates ([61e916f](https://github.com/HankHuang0516/realbot/commit/61e916feadad2683d5d774073211d54cda6de898))
* **info:** add deep linking support for guide sub-items ([e16ebb7](https://github.com/HankHuang0516/realbot/commit/e16ebb76d8fdf5d5b53ca117da92c3ea158579f6)), closes [#faq](https://github.com/HankHuang0516/realbot/issues/faq) [#release-notes](https://github.com/HankHuang0516/realbot/issues/release-notes) [#compare](https://github.com/HankHuang0516/realbot/issues/compare)
* **settings:** add Device Secret display with reveal/copy toggle ([4d4281a](https://github.com/HankHuang0516/realbot/commit/4d4281a967a87f404ca5217f32045f1ff6fb500b))
* **schedule:** add deviceSecret dual auth for schedule endpoints ([2716375](https://github.com/HankHuang0516/realbot/commit/2716375a2023b2ff259bdf7aae6051832ddc49c8))
* **android:** add fetchSoulTemplates/fetchRuleTemplates to MissionViewModel ([1c411fc](https://github.com/HankHuang0516/realbot/commit/1c411fce073055eb743d09c71f5d6ce9aed4b988))
* **admin:** add pagination to user list (50 per page) ([ccd5fb3](https://github.com/HankHuang0516/realbot/commit/ccd5fb35117fd978d93bc4265e904f7b8ed20a7b))
* **android/i18n:** add soul & rule template gallery strings ([0a28d99](https://github.com/HankHuang0516/realbot/commit/0a28d9979ab846214683a9c3bbc76c62be69e385))
* **templates:** add Soul/Rule template community contribution API ([c6fdcba](https://github.com/HankHuang0516/realbot/commit/c6fdcba5076d34dd85a94293a30b875e8a243b34))
* **android:** add SoulGalleryDialog and RuleGalleryDialog ([5a3142a](https://github.com/HankHuang0516/realbot/commit/5a3142af3f67dfa4c4ba9473a4381f89e04aee24))
* **skill-templates:** add structural validation to contribute endpoint ([891327d](https://github.com/HankHuang0516/realbot/commit/891327dc02dbd3d2a8bbbf254d596cdb33fca3ed))
* **templates:** add Wise Mentor soul and Brevity First rule templates ([f1494fd](https://github.com/HankHuang0516/realbot/commit/f1494fde800c03fe2c650bda26fc87df36f9dd8d))
* **info:** add 實用案例 category with Claude x OpenClaw guide ([94475ea](https://github.com/HankHuang0516/realbot/commit/94475eaf8c8f0cf9cc2068d6edff14b9036f136d))
* **skill-templates:** auto-approve pipeline + admin contributions UI ([5f94ea1](https://github.com/HankHuang0516/realbot/commit/5f94ea13291d6b0d4f12e563d8451402452b09b7))
* **soul-dialog:** merge dropdown into Gallery, unify template selection ([b9eeb41](https://github.com/HankHuang0516/realbot/commit/b9eeb415d789243243426adf345552c7970cd8b9))
* **channel:** push NAME_CHANGED to channel bots immediately on rename ([d7992fc](https://github.com/HankHuang0516/realbot/commit/d7992fceb50ce615887ed3fe5e5e54c4306be7e9))
* **info:** simplify claude-openclaw guide with full example + copy button ([d8e31e9](https://github.com/HankHuang0516/realbot/commit/d8e31e9a3bf1b0b0dd05ef7bb7498bdcff82b335))
* **rebrand:** update community post intro to AI Agent collaboration ([5fb15a0](https://github.com/HankHuang0516/realbot/commit/5fb15a0eca7911ac987686f844216f818a980e75))
* **rebrand:** update comparison page strings to AI Agent collaboration ([82171a1](https://github.com/HankHuang0516/realbot/commit/82171a161819149f7a9977f0425e41742c816849))
* **rebrand:** update faq_a_what_is to AI Agent collaboration messaging ([a79324a](https://github.com/HankHuang0516/realbot/commit/a79324aeefbe931e0119986ef4917a0516878bb5))
* **rebrand:** update info.html features section to AI Agent positioning ([1a7fae8](https://github.com/HankHuang0516/realbot/commit/1a7fae8758b801a1da934eccbbad7be8d64bc9d8))
* **rebrand:** update openclaw plugin metadata to AI Agent collaboration ([96baef7](https://github.com/HankHuang0516/realbot/commit/96baef7cb5fcf57159ad401b2ed543fef218ae5e))
* **rebrand:** update openclaw-channel README to AI Agent collaboration ([f11653f](https://github.com/HankHuang0516/realbot/commit/f11653f11c44584e0783dddecc1fcef3dd4e8f55))
* **rebrand:** update privacy policy - replace pet terminology with AI agent ([72b487d](https://github.com/HankHuang0516/realbot/commit/72b487d0260f5d2ece537c5c606ebb8f87dd4734))
* **rebrand:** update README and package descriptions to AI Agent collaboration ([f9efffa](https://github.com/HankHuang0516/realbot/commit/f9efffa5179c5685023ef6d199d16f3e8018ee75))
* **android:** wire SoulGalleryDialog and RuleGalleryDialog into add dialogs ([74898b3](https://github.com/HankHuang0516/realbot/commit/74898b3d527990ea769e7f2d3ac8d32a07df9c38))


### Reverts

* **templates:** remove manually added templates, let bot contribute via API ([b1e7914](https://github.com/HankHuang0516/realbot/commit/b1e79143d3bc10afea36dc8fe7294011a5f75c10))

# [1.3.0](https://github.com/HankHuang0516/realbot/compare/v1.2.0...v1.3.0) (2026-03-08)


### Bug Fixes

* **android:** add name/description/ruleType to SkillTemplate and fix gallery dialogs ([e0a79b7](https://github.com/HankHuang0516/realbot/commit/e0a79b76503d36e21e7dc28246e940b27791492b))
* **bind:** await single-device save after binding to prevent race condition ([811b3e9](https://github.com/HankHuang0516/realbot/commit/811b3e9b250f7dee518e1f7f7cdf65c1a8dd94d8))
* code review corrections — credential UI and guide accuracy ([5992dc5](https://github.com/HankHuang0516/realbot/commit/5992dc5ca0cf35adee17253f5742ed3619ec836e)), closes [#newSecretValue](https://github.com/HankHuang0516/realbot/issues/newSecretValue)
* **test:** fix reorder-channel test order array size to match device limit ([3103918](https://github.com/HankHuang0516/realbot/commit/31039180cf26e0e5f2db3292bd153be856c541f6))
* **portal:** fix XSS, broken tags, and filter consistency in soul/rule gallery ([0dd30ec](https://github.com/HankHuang0516/realbot/commit/0dd30ec0c8a358594d4c603ed5c92e7b86871226))
* **bind:** make /api/bind handler async to fix await syntax error ([f78d373](https://github.com/HankHuang0516/realbot/commit/f78d373e2826b710adf6a7039604d93e90a627d0))
* **api:** move skill-templates/contributions route after adminAuth definition ([4915f3d](https://github.com/HankHuang0516/realbot/commit/4915f3d8f737445f4144bd5998ff5588fb126bbb))
* **tests:** read TEST_ENTITY_ID from .env in bot-api-response test; add setup_broadcast_webhook.js ([0dc137c](https://github.com/HankHuang0516/realbot/commit/0dc137c85e00de20c74b0c42c7569acbaf117dae))
* **bind:** reset bot-to-bot counter on rebind to prevent stale rate limits ([daea976](https://github.com/HankHuang0516/realbot/commit/daea976e44768dc65eb515d2bff4b5f400385642))
* **settings:** right-align copy icon, remove eye buttons ([010ffb7](https://github.com/HankHuang0516/realbot/commit/010ffb7487fe57019423e843676752ad203c1c2d))
* **test:** shorten NEW_NAME to stay within 20-char server limit ([45a1653](https://github.com/HankHuang0516/realbot/commit/45a165359c4212b2d0851cebbfa20c19f26e81e5))
* **settings:** truncate Device ID/Secret with ellipsis, no line wrap ([94a2ea4](https://github.com/HankHuang0516/realbot/commit/94a2ea41be12a026d5149a53e779b2403558639b))
* **info:** update example template with review steps after each goal ([ba3ceb6](https://github.com/HankHuang0516/realbot/commit/ba3ceb61c3df158c43f081784958ca5cb5f7e451))
* **rebrand:** update HTML fallback strings in comparison section ([a332dbd](https://github.com/HankHuang0516/realbot/commit/a332dbd95a4069952d1eb785e3969961f0d89cf3))
* **rebrand:** update SVG and tester guide - remove pet terminology ([c27b27e](https://github.com/HankHuang0516/realbot/commit/c27b27e6fb71240a05e5a5afd1b6b8c42b3b5c41))
* **admin:** use cookie auth for skill-templates/contributions endpoint ([fcefb1a](https://github.com/HankHuang0516/realbot/commit/fcefb1a0a7d295646024931bb1d6e018022d0945))
* **scheduler:** use current timestamp as default scheduled_at for cron schedules ([1610110](https://github.com/HankHuang0516/realbot/commit/1610110239212ffca506b6cbf3dec67dfb862278))


### Features

* **settings:** add copy icon for Device ID and Copy Credentials button ([35a68d7](https://github.com/HankHuang0516/realbot/commit/35a68d70044c94b643ee6a685ecb88840c008179))
* **templates:** add Creative Thinker soul and Step-by-Step Reasoning rule templates ([61e916f](https://github.com/HankHuang0516/realbot/commit/61e916feadad2683d5d774073211d54cda6de898))
* **info:** add deep linking support for guide sub-items ([e16ebb7](https://github.com/HankHuang0516/realbot/commit/e16ebb76d8fdf5d5b53ca117da92c3ea158579f6)), closes [#faq](https://github.com/HankHuang0516/realbot/issues/faq) [#release-notes](https://github.com/HankHuang0516/realbot/issues/release-notes) [#compare](https://github.com/HankHuang0516/realbot/issues/compare)
* **settings:** add Device Secret display with reveal/copy toggle ([4d4281a](https://github.com/HankHuang0516/realbot/commit/4d4281a967a87f404ca5217f32045f1ff6fb500b))
* **schedule:** add deviceSecret dual auth for schedule endpoints ([2716375](https://github.com/HankHuang0516/realbot/commit/2716375a2023b2ff259bdf7aae6051832ddc49c8))
* **android:** add fetchSoulTemplates/fetchRuleTemplates to MissionViewModel ([1c411fc](https://github.com/HankHuang0516/realbot/commit/1c411fce073055eb743d09c71f5d6ce9aed4b988))
* **admin:** add pagination to user list (50 per page) ([ccd5fb3](https://github.com/HankHuang0516/realbot/commit/ccd5fb35117fd978d93bc4265e904f7b8ed20a7b))
* **android/i18n:** add soul & rule template gallery strings ([0a28d99](https://github.com/HankHuang0516/realbot/commit/0a28d9979ab846214683a9c3bbc76c62be69e385))
* **templates:** add Soul/Rule template community contribution API ([c6fdcba](https://github.com/HankHuang0516/realbot/commit/c6fdcba5076d34dd85a94293a30b875e8a243b34))
* **android:** add SoulGalleryDialog and RuleGalleryDialog ([5a3142a](https://github.com/HankHuang0516/realbot/commit/5a3142af3f67dfa4c4ba9473a4381f89e04aee24))
* **skill-templates:** add structural validation to contribute endpoint ([891327d](https://github.com/HankHuang0516/realbot/commit/891327dc02dbd3d2a8bbbf254d596cdb33fca3ed))
* **templates:** add Wise Mentor soul and Brevity First rule templates ([f1494fd](https://github.com/HankHuang0516/realbot/commit/f1494fde800c03fe2c650bda26fc87df36f9dd8d))
* **info:** add 實用案例 category with Claude x OpenClaw guide ([94475ea](https://github.com/HankHuang0516/realbot/commit/94475eaf8c8f0cf9cc2068d6edff14b9036f136d))
* **skill-templates:** auto-approve pipeline + admin contributions UI ([5f94ea1](https://github.com/HankHuang0516/realbot/commit/5f94ea13291d6b0d4f12e563d8451402452b09b7))
* **soul-dialog:** merge dropdown into Gallery, unify template selection ([b9eeb41](https://github.com/HankHuang0516/realbot/commit/b9eeb415d789243243426adf345552c7970cd8b9))
* **channel:** push NAME_CHANGED to channel bots immediately on rename ([d7992fc](https://github.com/HankHuang0516/realbot/commit/d7992fceb50ce615887ed3fe5e5e54c4306be7e9))
* **info:** simplify claude-openclaw guide with full example + copy button ([d8e31e9](https://github.com/HankHuang0516/realbot/commit/d8e31e9a3bf1b0b0dd05ef7bb7498bdcff82b335))
* **rebrand:** update community post intro to AI Agent collaboration ([5fb15a0](https://github.com/HankHuang0516/realbot/commit/5fb15a0eca7911ac987686f844216f818a980e75))
* **rebrand:** update comparison page strings to AI Agent collaboration ([82171a1](https://github.com/HankHuang0516/realbot/commit/82171a161819149f7a9977f0425e41742c816849))
* **rebrand:** update faq_a_what_is to AI Agent collaboration messaging ([a79324a](https://github.com/HankHuang0516/realbot/commit/a79324aeefbe931e0119986ef4917a0516878bb5))
* **rebrand:** update info.html features section to AI Agent positioning ([1a7fae8](https://github.com/HankHuang0516/realbot/commit/1a7fae8758b801a1da934eccbbad7be8d64bc9d8))
* **rebrand:** update openclaw plugin metadata to AI Agent collaboration ([96baef7](https://github.com/HankHuang0516/realbot/commit/96baef7cb5fcf57159ad401b2ed543fef218ae5e))
* **rebrand:** update openclaw-channel README to AI Agent collaboration ([f11653f](https://github.com/HankHuang0516/realbot/commit/f11653f11c44584e0783dddecc1fcef3dd4e8f55))
* **rebrand:** update privacy policy - replace pet terminology with AI agent ([72b487d](https://github.com/HankHuang0516/realbot/commit/72b487d0260f5d2ece537c5c606ebb8f87dd4734))
* **rebrand:** update README and package descriptions to AI Agent collaboration ([f9efffa](https://github.com/HankHuang0516/realbot/commit/f9efffa5179c5685023ef6d199d16f3e8018ee75))
* **android:** wire SoulGalleryDialog and RuleGalleryDialog into add dialogs ([74898b3](https://github.com/HankHuang0516/realbot/commit/74898b3d527990ea769e7f2d3ac8d32a07df9c38))


### Reverts

* **templates:** remove manually added templates, let bot contribute via API ([b1e7914](https://github.com/HankHuang0516/realbot/commit/b1e79143d3bc10afea36dc8fe7294011a5f75c10))

# [1.3.0](https://github.com/HankHuang0516/realbot/compare/v1.2.0...v1.3.0) (2026-03-08)


### Bug Fixes

* **android:** add name/description/ruleType to SkillTemplate and fix gallery dialogs ([e0a79b7](https://github.com/HankHuang0516/realbot/commit/e0a79b76503d36e21e7dc28246e940b27791492b))
* **bind:** await single-device save after binding to prevent race condition ([811b3e9](https://github.com/HankHuang0516/realbot/commit/811b3e9b250f7dee518e1f7f7cdf65c1a8dd94d8))
* code review corrections — credential UI and guide accuracy ([5992dc5](https://github.com/HankHuang0516/realbot/commit/5992dc5ca0cf35adee17253f5742ed3619ec836e)), closes [#newSecretValue](https://github.com/HankHuang0516/realbot/issues/newSecretValue)
* **test:** fix reorder-channel test order array size to match device limit ([3103918](https://github.com/HankHuang0516/realbot/commit/31039180cf26e0e5f2db3292bd153be856c541f6))
* **portal:** fix XSS, broken tags, and filter consistency in soul/rule gallery ([0dd30ec](https://github.com/HankHuang0516/realbot/commit/0dd30ec0c8a358594d4c603ed5c92e7b86871226))
* **bind:** make /api/bind handler async to fix await syntax error ([f78d373](https://github.com/HankHuang0516/realbot/commit/f78d373e2826b710adf6a7039604d93e90a627d0))
* **api:** move skill-templates/contributions route after adminAuth definition ([4915f3d](https://github.com/HankHuang0516/realbot/commit/4915f3d8f737445f4144bd5998ff5588fb126bbb))
* **tests:** read TEST_ENTITY_ID from .env in bot-api-response test; add setup_broadcast_webhook.js ([0dc137c](https://github.com/HankHuang0516/realbot/commit/0dc137c85e00de20c74b0c42c7569acbaf117dae))
* **bind:** reset bot-to-bot counter on rebind to prevent stale rate limits ([daea976](https://github.com/HankHuang0516/realbot/commit/daea976e44768dc65eb515d2bff4b5f400385642))
* **settings:** right-align copy icon, remove eye buttons ([010ffb7](https://github.com/HankHuang0516/realbot/commit/010ffb7487fe57019423e843676752ad203c1c2d))
* **test:** shorten NEW_NAME to stay within 20-char server limit ([45a1653](https://github.com/HankHuang0516/realbot/commit/45a165359c4212b2d0851cebbfa20c19f26e81e5))
* **settings:** truncate Device ID/Secret with ellipsis, no line wrap ([94a2ea4](https://github.com/HankHuang0516/realbot/commit/94a2ea41be12a026d5149a53e779b2403558639b))
* **info:** update example template with review steps after each goal ([ba3ceb6](https://github.com/HankHuang0516/realbot/commit/ba3ceb61c3df158c43f081784958ca5cb5f7e451))
* **rebrand:** update HTML fallback strings in comparison section ([a332dbd](https://github.com/HankHuang0516/realbot/commit/a332dbd95a4069952d1eb785e3969961f0d89cf3))
* **rebrand:** update SVG and tester guide - remove pet terminology ([c27b27e](https://github.com/HankHuang0516/realbot/commit/c27b27e6fb71240a05e5a5afd1b6b8c42b3b5c41))
* **admin:** use cookie auth for skill-templates/contributions endpoint ([fcefb1a](https://github.com/HankHuang0516/realbot/commit/fcefb1a0a7d295646024931bb1d6e018022d0945))
* **scheduler:** use current timestamp as default scheduled_at for cron schedules ([1610110](https://github.com/HankHuang0516/realbot/commit/1610110239212ffca506b6cbf3dec67dfb862278))


### Features

* **settings:** add copy icon for Device ID and Copy Credentials button ([35a68d7](https://github.com/HankHuang0516/realbot/commit/35a68d70044c94b643ee6a685ecb88840c008179))
* **templates:** add Creative Thinker soul and Step-by-Step Reasoning rule templates ([61e916f](https://github.com/HankHuang0516/realbot/commit/61e916feadad2683d5d774073211d54cda6de898))
* **info:** add deep linking support for guide sub-items ([e16ebb7](https://github.com/HankHuang0516/realbot/commit/e16ebb76d8fdf5d5b53ca117da92c3ea158579f6)), closes [#faq](https://github.com/HankHuang0516/realbot/issues/faq) [#release-notes](https://github.com/HankHuang0516/realbot/issues/release-notes) [#compare](https://github.com/HankHuang0516/realbot/issues/compare)
* **settings:** add Device Secret display with reveal/copy toggle ([4d4281a](https://github.com/HankHuang0516/realbot/commit/4d4281a967a87f404ca5217f32045f1ff6fb500b))
* **schedule:** add deviceSecret dual auth for schedule endpoints ([2716375](https://github.com/HankHuang0516/realbot/commit/2716375a2023b2ff259bdf7aae6051832ddc49c8))
* **android:** add fetchSoulTemplates/fetchRuleTemplates to MissionViewModel ([1c411fc](https://github.com/HankHuang0516/realbot/commit/1c411fce073055eb743d09c71f5d6ce9aed4b988))
* **android/i18n:** add soul & rule template gallery strings ([0a28d99](https://github.com/HankHuang0516/realbot/commit/0a28d9979ab846214683a9c3bbc76c62be69e385))
* **templates:** add Soul/Rule template community contribution API ([c6fdcba](https://github.com/HankHuang0516/realbot/commit/c6fdcba5076d34dd85a94293a30b875e8a243b34))
* **android:** add SoulGalleryDialog and RuleGalleryDialog ([5a3142a](https://github.com/HankHuang0516/realbot/commit/5a3142af3f67dfa4c4ba9473a4381f89e04aee24))
* **skill-templates:** add structural validation to contribute endpoint ([891327d](https://github.com/HankHuang0516/realbot/commit/891327dc02dbd3d2a8bbbf254d596cdb33fca3ed))
* **templates:** add Wise Mentor soul and Brevity First rule templates ([f1494fd](https://github.com/HankHuang0516/realbot/commit/f1494fde800c03fe2c650bda26fc87df36f9dd8d))
* **info:** add 實用案例 category with Claude x OpenClaw guide ([94475ea](https://github.com/HankHuang0516/realbot/commit/94475eaf8c8f0cf9cc2068d6edff14b9036f136d))
* **skill-templates:** auto-approve pipeline + admin contributions UI ([5f94ea1](https://github.com/HankHuang0516/realbot/commit/5f94ea13291d6b0d4f12e563d8451402452b09b7))
* **soul-dialog:** merge dropdown into Gallery, unify template selection ([b9eeb41](https://github.com/HankHuang0516/realbot/commit/b9eeb415d789243243426adf345552c7970cd8b9))
* **channel:** push NAME_CHANGED to channel bots immediately on rename ([d7992fc](https://github.com/HankHuang0516/realbot/commit/d7992fceb50ce615887ed3fe5e5e54c4306be7e9))
* **info:** simplify claude-openclaw guide with full example + copy button ([d8e31e9](https://github.com/HankHuang0516/realbot/commit/d8e31e9a3bf1b0b0dd05ef7bb7498bdcff82b335))
* **rebrand:** update community post intro to AI Agent collaboration ([5fb15a0](https://github.com/HankHuang0516/realbot/commit/5fb15a0eca7911ac987686f844216f818a980e75))
* **rebrand:** update comparison page strings to AI Agent collaboration ([82171a1](https://github.com/HankHuang0516/realbot/commit/82171a161819149f7a9977f0425e41742c816849))
* **rebrand:** update faq_a_what_is to AI Agent collaboration messaging ([a79324a](https://github.com/HankHuang0516/realbot/commit/a79324aeefbe931e0119986ef4917a0516878bb5))
* **rebrand:** update info.html features section to AI Agent positioning ([1a7fae8](https://github.com/HankHuang0516/realbot/commit/1a7fae8758b801a1da934eccbbad7be8d64bc9d8))
* **rebrand:** update openclaw plugin metadata to AI Agent collaboration ([96baef7](https://github.com/HankHuang0516/realbot/commit/96baef7cb5fcf57159ad401b2ed543fef218ae5e))
* **rebrand:** update openclaw-channel README to AI Agent collaboration ([f11653f](https://github.com/HankHuang0516/realbot/commit/f11653f11c44584e0783dddecc1fcef3dd4e8f55))
* **rebrand:** update privacy policy - replace pet terminology with AI agent ([72b487d](https://github.com/HankHuang0516/realbot/commit/72b487d0260f5d2ece537c5c606ebb8f87dd4734))
* **rebrand:** update README and package descriptions to AI Agent collaboration ([f9efffa](https://github.com/HankHuang0516/realbot/commit/f9efffa5179c5685023ef6d199d16f3e8018ee75))
* **android:** wire SoulGalleryDialog and RuleGalleryDialog into add dialogs ([74898b3](https://github.com/HankHuang0516/realbot/commit/74898b3d527990ea769e7f2d3ac8d32a07df9c38))


### Reverts

* **templates:** remove manually added templates, let bot contribute via API ([b1e7914](https://github.com/HankHuang0516/realbot/commit/b1e79143d3bc10afea36dc8fe7294011a5f75c10))

# [1.3.0](https://github.com/HankHuang0516/realbot/compare/v1.2.0...v1.3.0) (2026-03-08)


### Bug Fixes

* **android:** add name/description/ruleType to SkillTemplate and fix gallery dialogs ([e0a79b7](https://github.com/HankHuang0516/realbot/commit/e0a79b76503d36e21e7dc28246e940b27791492b))
* **bind:** await single-device save after binding to prevent race condition ([811b3e9](https://github.com/HankHuang0516/realbot/commit/811b3e9b250f7dee518e1f7f7cdf65c1a8dd94d8))
* code review corrections — credential UI and guide accuracy ([5992dc5](https://github.com/HankHuang0516/realbot/commit/5992dc5ca0cf35adee17253f5742ed3619ec836e)), closes [#newSecretValue](https://github.com/HankHuang0516/realbot/issues/newSecretValue)
* **test:** fix reorder-channel test order array size to match device limit ([3103918](https://github.com/HankHuang0516/realbot/commit/31039180cf26e0e5f2db3292bd153be856c541f6))
* **portal:** fix XSS, broken tags, and filter consistency in soul/rule gallery ([0dd30ec](https://github.com/HankHuang0516/realbot/commit/0dd30ec0c8a358594d4c603ed5c92e7b86871226))
* **bind:** make /api/bind handler async to fix await syntax error ([f78d373](https://github.com/HankHuang0516/realbot/commit/f78d373e2826b710adf6a7039604d93e90a627d0))
* **api:** move skill-templates/contributions route after adminAuth definition ([4915f3d](https://github.com/HankHuang0516/realbot/commit/4915f3d8f737445f4144bd5998ff5588fb126bbb))
* **tests:** read TEST_ENTITY_ID from .env in bot-api-response test; add setup_broadcast_webhook.js ([0dc137c](https://github.com/HankHuang0516/realbot/commit/0dc137c85e00de20c74b0c42c7569acbaf117dae))
* **bind:** reset bot-to-bot counter on rebind to prevent stale rate limits ([daea976](https://github.com/HankHuang0516/realbot/commit/daea976e44768dc65eb515d2bff4b5f400385642))
* **settings:** right-align copy icon, remove eye buttons ([010ffb7](https://github.com/HankHuang0516/realbot/commit/010ffb7487fe57019423e843676752ad203c1c2d))
* **test:** shorten NEW_NAME to stay within 20-char server limit ([45a1653](https://github.com/HankHuang0516/realbot/commit/45a165359c4212b2d0851cebbfa20c19f26e81e5))
* **settings:** truncate Device ID/Secret with ellipsis, no line wrap ([94a2ea4](https://github.com/HankHuang0516/realbot/commit/94a2ea41be12a026d5149a53e779b2403558639b))
* **info:** update example template with review steps after each goal ([ba3ceb6](https://github.com/HankHuang0516/realbot/commit/ba3ceb61c3df158c43f081784958ca5cb5f7e451))
* **rebrand:** update HTML fallback strings in comparison section ([a332dbd](https://github.com/HankHuang0516/realbot/commit/a332dbd95a4069952d1eb785e3969961f0d89cf3))
* **rebrand:** update SVG and tester guide - remove pet terminology ([c27b27e](https://github.com/HankHuang0516/realbot/commit/c27b27e6fb71240a05e5a5afd1b6b8c42b3b5c41))
* **admin:** use cookie auth for skill-templates/contributions endpoint ([fcefb1a](https://github.com/HankHuang0516/realbot/commit/fcefb1a0a7d295646024931bb1d6e018022d0945))
* **scheduler:** use current timestamp as default scheduled_at for cron schedules ([1610110](https://github.com/HankHuang0516/realbot/commit/1610110239212ffca506b6cbf3dec67dfb862278))


### Features

* **settings:** add copy icon for Device ID and Copy Credentials button ([35a68d7](https://github.com/HankHuang0516/realbot/commit/35a68d70044c94b643ee6a685ecb88840c008179))
* **templates:** add Creative Thinker soul and Step-by-Step Reasoning rule templates ([61e916f](https://github.com/HankHuang0516/realbot/commit/61e916feadad2683d5d774073211d54cda6de898))
* **info:** add deep linking support for guide sub-items ([e16ebb7](https://github.com/HankHuang0516/realbot/commit/e16ebb76d8fdf5d5b53ca117da92c3ea158579f6)), closes [#faq](https://github.com/HankHuang0516/realbot/issues/faq) [#release-notes](https://github.com/HankHuang0516/realbot/issues/release-notes) [#compare](https://github.com/HankHuang0516/realbot/issues/compare)
* **settings:** add Device Secret display with reveal/copy toggle ([4d4281a](https://github.com/HankHuang0516/realbot/commit/4d4281a967a87f404ca5217f32045f1ff6fb500b))
* **schedule:** add deviceSecret dual auth for schedule endpoints ([2716375](https://github.com/HankHuang0516/realbot/commit/2716375a2023b2ff259bdf7aae6051832ddc49c8))
* **android:** add fetchSoulTemplates/fetchRuleTemplates to MissionViewModel ([1c411fc](https://github.com/HankHuang0516/realbot/commit/1c411fce073055eb743d09c71f5d6ce9aed4b988))
* **android/i18n:** add soul & rule template gallery strings ([0a28d99](https://github.com/HankHuang0516/realbot/commit/0a28d9979ab846214683a9c3bbc76c62be69e385))
* **templates:** add Soul/Rule template community contribution API ([c6fdcba](https://github.com/HankHuang0516/realbot/commit/c6fdcba5076d34dd85a94293a30b875e8a243b34))
* **android:** add SoulGalleryDialog and RuleGalleryDialog ([5a3142a](https://github.com/HankHuang0516/realbot/commit/5a3142af3f67dfa4c4ba9473a4381f89e04aee24))
* **skill-templates:** add structural validation to contribute endpoint ([891327d](https://github.com/HankHuang0516/realbot/commit/891327dc02dbd3d2a8bbbf254d596cdb33fca3ed))
* **templates:** add Wise Mentor soul and Brevity First rule templates ([f1494fd](https://github.com/HankHuang0516/realbot/commit/f1494fde800c03fe2c650bda26fc87df36f9dd8d))
* **info:** add 實用案例 category with Claude x OpenClaw guide ([94475ea](https://github.com/HankHuang0516/realbot/commit/94475eaf8c8f0cf9cc2068d6edff14b9036f136d))
* **skill-templates:** auto-approve pipeline + admin contributions UI ([5f94ea1](https://github.com/HankHuang0516/realbot/commit/5f94ea13291d6b0d4f12e563d8451402452b09b7))
* **soul-dialog:** merge dropdown into Gallery, unify template selection ([b9eeb41](https://github.com/HankHuang0516/realbot/commit/b9eeb415d789243243426adf345552c7970cd8b9))
* **channel:** push NAME_CHANGED to channel bots immediately on rename ([d7992fc](https://github.com/HankHuang0516/realbot/commit/d7992fceb50ce615887ed3fe5e5e54c4306be7e9))
* **info:** simplify claude-openclaw guide with full example + copy button ([d8e31e9](https://github.com/HankHuang0516/realbot/commit/d8e31e9a3bf1b0b0dd05ef7bb7498bdcff82b335))
* **rebrand:** update community post intro to AI Agent collaboration ([5fb15a0](https://github.com/HankHuang0516/realbot/commit/5fb15a0eca7911ac987686f844216f818a980e75))
* **rebrand:** update comparison page strings to AI Agent collaboration ([82171a1](https://github.com/HankHuang0516/realbot/commit/82171a161819149f7a9977f0425e41742c816849))
* **rebrand:** update faq_a_what_is to AI Agent collaboration messaging ([a79324a](https://github.com/HankHuang0516/realbot/commit/a79324aeefbe931e0119986ef4917a0516878bb5))
* **rebrand:** update info.html features section to AI Agent positioning ([1a7fae8](https://github.com/HankHuang0516/realbot/commit/1a7fae8758b801a1da934eccbbad7be8d64bc9d8))
* **rebrand:** update openclaw plugin metadata to AI Agent collaboration ([96baef7](https://github.com/HankHuang0516/realbot/commit/96baef7cb5fcf57159ad401b2ed543fef218ae5e))
* **rebrand:** update openclaw-channel README to AI Agent collaboration ([f11653f](https://github.com/HankHuang0516/realbot/commit/f11653f11c44584e0783dddecc1fcef3dd4e8f55))
* **rebrand:** update privacy policy - replace pet terminology with AI agent ([72b487d](https://github.com/HankHuang0516/realbot/commit/72b487d0260f5d2ece537c5c606ebb8f87dd4734))
* **rebrand:** update README and package descriptions to AI Agent collaboration ([f9efffa](https://github.com/HankHuang0516/realbot/commit/f9efffa5179c5685023ef6d199d16f3e8018ee75))
* **android:** wire SoulGalleryDialog and RuleGalleryDialog into add dialogs ([74898b3](https://github.com/HankHuang0516/realbot/commit/74898b3d527990ea769e7f2d3ac8d32a07df9c38))

# [1.3.0](https://github.com/HankHuang0516/realbot/compare/v1.2.0...v1.3.0) (2026-03-08)


### Bug Fixes

* **android:** add name/description/ruleType to SkillTemplate and fix gallery dialogs ([e0a79b7](https://github.com/HankHuang0516/realbot/commit/e0a79b76503d36e21e7dc28246e940b27791492b))
* **bind:** await single-device save after binding to prevent race condition ([811b3e9](https://github.com/HankHuang0516/realbot/commit/811b3e9b250f7dee518e1f7f7cdf65c1a8dd94d8))
* code review corrections — credential UI and guide accuracy ([5992dc5](https://github.com/HankHuang0516/realbot/commit/5992dc5ca0cf35adee17253f5742ed3619ec836e)), closes [#newSecretValue](https://github.com/HankHuang0516/realbot/issues/newSecretValue)
* **test:** fix reorder-channel test order array size to match device limit ([3103918](https://github.com/HankHuang0516/realbot/commit/31039180cf26e0e5f2db3292bd153be856c541f6))
* **portal:** fix XSS, broken tags, and filter consistency in soul/rule gallery ([0dd30ec](https://github.com/HankHuang0516/realbot/commit/0dd30ec0c8a358594d4c603ed5c92e7b86871226))
* **bind:** make /api/bind handler async to fix await syntax error ([f78d373](https://github.com/HankHuang0516/realbot/commit/f78d373e2826b710adf6a7039604d93e90a627d0))
* **api:** move skill-templates/contributions route after adminAuth definition ([4915f3d](https://github.com/HankHuang0516/realbot/commit/4915f3d8f737445f4144bd5998ff5588fb126bbb))
* **tests:** read TEST_ENTITY_ID from .env in bot-api-response test; add setup_broadcast_webhook.js ([0dc137c](https://github.com/HankHuang0516/realbot/commit/0dc137c85e00de20c74b0c42c7569acbaf117dae))
* **bind:** reset bot-to-bot counter on rebind to prevent stale rate limits ([daea976](https://github.com/HankHuang0516/realbot/commit/daea976e44768dc65eb515d2bff4b5f400385642))
* **settings:** right-align copy icon, remove eye buttons ([010ffb7](https://github.com/HankHuang0516/realbot/commit/010ffb7487fe57019423e843676752ad203c1c2d))
* **test:** shorten NEW_NAME to stay within 20-char server limit ([45a1653](https://github.com/HankHuang0516/realbot/commit/45a165359c4212b2d0851cebbfa20c19f26e81e5))
* **settings:** truncate Device ID/Secret with ellipsis, no line wrap ([94a2ea4](https://github.com/HankHuang0516/realbot/commit/94a2ea41be12a026d5149a53e779b2403558639b))
* **info:** update example template with review steps after each goal ([ba3ceb6](https://github.com/HankHuang0516/realbot/commit/ba3ceb61c3df158c43f081784958ca5cb5f7e451))
* **rebrand:** update HTML fallback strings in comparison section ([a332dbd](https://github.com/HankHuang0516/realbot/commit/a332dbd95a4069952d1eb785e3969961f0d89cf3))
* **rebrand:** update SVG and tester guide - remove pet terminology ([c27b27e](https://github.com/HankHuang0516/realbot/commit/c27b27e6fb71240a05e5a5afd1b6b8c42b3b5c41))
* **admin:** use cookie auth for skill-templates/contributions endpoint ([fcefb1a](https://github.com/HankHuang0516/realbot/commit/fcefb1a0a7d295646024931bb1d6e018022d0945))
* **scheduler:** use current timestamp as default scheduled_at for cron schedules ([1610110](https://github.com/HankHuang0516/realbot/commit/1610110239212ffca506b6cbf3dec67dfb862278))


### Features

* **settings:** add copy icon for Device ID and Copy Credentials button ([35a68d7](https://github.com/HankHuang0516/realbot/commit/35a68d70044c94b643ee6a685ecb88840c008179))
* **templates:** add Creative Thinker soul and Step-by-Step Reasoning rule templates ([61e916f](https://github.com/HankHuang0516/realbot/commit/61e916feadad2683d5d774073211d54cda6de898))
* **info:** add deep linking support for guide sub-items ([e16ebb7](https://github.com/HankHuang0516/realbot/commit/e16ebb76d8fdf5d5b53ca117da92c3ea158579f6)), closes [#faq](https://github.com/HankHuang0516/realbot/issues/faq) [#release-notes](https://github.com/HankHuang0516/realbot/issues/release-notes) [#compare](https://github.com/HankHuang0516/realbot/issues/compare)
* **settings:** add Device Secret display with reveal/copy toggle ([4d4281a](https://github.com/HankHuang0516/realbot/commit/4d4281a967a87f404ca5217f32045f1ff6fb500b))
* **schedule:** add deviceSecret dual auth for schedule endpoints ([2716375](https://github.com/HankHuang0516/realbot/commit/2716375a2023b2ff259bdf7aae6051832ddc49c8))
* **android:** add fetchSoulTemplates/fetchRuleTemplates to MissionViewModel ([1c411fc](https://github.com/HankHuang0516/realbot/commit/1c411fce073055eb743d09c71f5d6ce9aed4b988))
* **android/i18n:** add soul & rule template gallery strings ([0a28d99](https://github.com/HankHuang0516/realbot/commit/0a28d9979ab846214683a9c3bbc76c62be69e385))
* **android:** add SoulGalleryDialog and RuleGalleryDialog ([5a3142a](https://github.com/HankHuang0516/realbot/commit/5a3142af3f67dfa4c4ba9473a4381f89e04aee24))
* **skill-templates:** add structural validation to contribute endpoint ([891327d](https://github.com/HankHuang0516/realbot/commit/891327dc02dbd3d2a8bbbf254d596cdb33fca3ed))
* **templates:** add Wise Mentor soul and Brevity First rule templates ([f1494fd](https://github.com/HankHuang0516/realbot/commit/f1494fde800c03fe2c650bda26fc87df36f9dd8d))
* **info:** add 實用案例 category with Claude x OpenClaw guide ([94475ea](https://github.com/HankHuang0516/realbot/commit/94475eaf8c8f0cf9cc2068d6edff14b9036f136d))
* **skill-templates:** auto-approve pipeline + admin contributions UI ([5f94ea1](https://github.com/HankHuang0516/realbot/commit/5f94ea13291d6b0d4f12e563d8451402452b09b7))
* **soul-dialog:** merge dropdown into Gallery, unify template selection ([b9eeb41](https://github.com/HankHuang0516/realbot/commit/b9eeb415d789243243426adf345552c7970cd8b9))
* **channel:** push NAME_CHANGED to channel bots immediately on rename ([d7992fc](https://github.com/HankHuang0516/realbot/commit/d7992fceb50ce615887ed3fe5e5e54c4306be7e9))
* **info:** simplify claude-openclaw guide with full example + copy button ([d8e31e9](https://github.com/HankHuang0516/realbot/commit/d8e31e9a3bf1b0b0dd05ef7bb7498bdcff82b335))
* **rebrand:** update community post intro to AI Agent collaboration ([5fb15a0](https://github.com/HankHuang0516/realbot/commit/5fb15a0eca7911ac987686f844216f818a980e75))
* **rebrand:** update comparison page strings to AI Agent collaboration ([82171a1](https://github.com/HankHuang0516/realbot/commit/82171a161819149f7a9977f0425e41742c816849))
* **rebrand:** update faq_a_what_is to AI Agent collaboration messaging ([a79324a](https://github.com/HankHuang0516/realbot/commit/a79324aeefbe931e0119986ef4917a0516878bb5))
* **rebrand:** update info.html features section to AI Agent positioning ([1a7fae8](https://github.com/HankHuang0516/realbot/commit/1a7fae8758b801a1da934eccbbad7be8d64bc9d8))
* **rebrand:** update openclaw plugin metadata to AI Agent collaboration ([96baef7](https://github.com/HankHuang0516/realbot/commit/96baef7cb5fcf57159ad401b2ed543fef218ae5e))
* **rebrand:** update openclaw-channel README to AI Agent collaboration ([f11653f](https://github.com/HankHuang0516/realbot/commit/f11653f11c44584e0783dddecc1fcef3dd4e8f55))
* **rebrand:** update privacy policy - replace pet terminology with AI agent ([72b487d](https://github.com/HankHuang0516/realbot/commit/72b487d0260f5d2ece537c5c606ebb8f87dd4734))
* **rebrand:** update README and package descriptions to AI Agent collaboration ([f9efffa](https://github.com/HankHuang0516/realbot/commit/f9efffa5179c5685023ef6d199d16f3e8018ee75))
* **android:** wire SoulGalleryDialog and RuleGalleryDialog into add dialogs ([74898b3](https://github.com/HankHuang0516/realbot/commit/74898b3d527990ea769e7f2d3ac8d32a07df9c38))

# [1.3.0](https://github.com/HankHuang0516/realbot/compare/v1.2.0...v1.3.0) (2026-03-08)


### Bug Fixes

* **android:** add name/description/ruleType to SkillTemplate and fix gallery dialogs ([e0a79b7](https://github.com/HankHuang0516/realbot/commit/e0a79b76503d36e21e7dc28246e940b27791492b))
* **bind:** await single-device save after binding to prevent race condition ([811b3e9](https://github.com/HankHuang0516/realbot/commit/811b3e9b250f7dee518e1f7f7cdf65c1a8dd94d8))
* code review corrections — credential UI and guide accuracy ([5992dc5](https://github.com/HankHuang0516/realbot/commit/5992dc5ca0cf35adee17253f5742ed3619ec836e)), closes [#newSecretValue](https://github.com/HankHuang0516/realbot/issues/newSecretValue)
* **test:** fix reorder-channel test order array size to match device limit ([3103918](https://github.com/HankHuang0516/realbot/commit/31039180cf26e0e5f2db3292bd153be856c541f6))
* **portal:** fix XSS, broken tags, and filter consistency in soul/rule gallery ([0dd30ec](https://github.com/HankHuang0516/realbot/commit/0dd30ec0c8a358594d4c603ed5c92e7b86871226))
* **bind:** make /api/bind handler async to fix await syntax error ([f78d373](https://github.com/HankHuang0516/realbot/commit/f78d373e2826b710adf6a7039604d93e90a627d0))
* **api:** move skill-templates/contributions route after adminAuth definition ([4915f3d](https://github.com/HankHuang0516/realbot/commit/4915f3d8f737445f4144bd5998ff5588fb126bbb))
* **tests:** read TEST_ENTITY_ID from .env in bot-api-response test; add setup_broadcast_webhook.js ([0dc137c](https://github.com/HankHuang0516/realbot/commit/0dc137c85e00de20c74b0c42c7569acbaf117dae))
* **bind:** reset bot-to-bot counter on rebind to prevent stale rate limits ([daea976](https://github.com/HankHuang0516/realbot/commit/daea976e44768dc65eb515d2bff4b5f400385642))
* **settings:** right-align copy icon, remove eye buttons ([010ffb7](https://github.com/HankHuang0516/realbot/commit/010ffb7487fe57019423e843676752ad203c1c2d))
* **test:** shorten NEW_NAME to stay within 20-char server limit ([45a1653](https://github.com/HankHuang0516/realbot/commit/45a165359c4212b2d0851cebbfa20c19f26e81e5))
* **settings:** truncate Device ID/Secret with ellipsis, no line wrap ([94a2ea4](https://github.com/HankHuang0516/realbot/commit/94a2ea41be12a026d5149a53e779b2403558639b))
* **rebrand:** update HTML fallback strings in comparison section ([a332dbd](https://github.com/HankHuang0516/realbot/commit/a332dbd95a4069952d1eb785e3969961f0d89cf3))
* **rebrand:** update SVG and tester guide - remove pet terminology ([c27b27e](https://github.com/HankHuang0516/realbot/commit/c27b27e6fb71240a05e5a5afd1b6b8c42b3b5c41))
* **admin:** use cookie auth for skill-templates/contributions endpoint ([fcefb1a](https://github.com/HankHuang0516/realbot/commit/fcefb1a0a7d295646024931bb1d6e018022d0945))
* **scheduler:** use current timestamp as default scheduled_at for cron schedules ([1610110](https://github.com/HankHuang0516/realbot/commit/1610110239212ffca506b6cbf3dec67dfb862278))


### Features

* **settings:** add copy icon for Device ID and Copy Credentials button ([35a68d7](https://github.com/HankHuang0516/realbot/commit/35a68d70044c94b643ee6a685ecb88840c008179))
* **templates:** add Creative Thinker soul and Step-by-Step Reasoning rule templates ([61e916f](https://github.com/HankHuang0516/realbot/commit/61e916feadad2683d5d774073211d54cda6de898))
* **info:** add deep linking support for guide sub-items ([e16ebb7](https://github.com/HankHuang0516/realbot/commit/e16ebb76d8fdf5d5b53ca117da92c3ea158579f6)), closes [#faq](https://github.com/HankHuang0516/realbot/issues/faq) [#release-notes](https://github.com/HankHuang0516/realbot/issues/release-notes) [#compare](https://github.com/HankHuang0516/realbot/issues/compare)
* **settings:** add Device Secret display with reveal/copy toggle ([4d4281a](https://github.com/HankHuang0516/realbot/commit/4d4281a967a87f404ca5217f32045f1ff6fb500b))
* **schedule:** add deviceSecret dual auth for schedule endpoints ([2716375](https://github.com/HankHuang0516/realbot/commit/2716375a2023b2ff259bdf7aae6051832ddc49c8))
* **android:** add fetchSoulTemplates/fetchRuleTemplates to MissionViewModel ([1c411fc](https://github.com/HankHuang0516/realbot/commit/1c411fce073055eb743d09c71f5d6ce9aed4b988))
* **android/i18n:** add soul & rule template gallery strings ([0a28d99](https://github.com/HankHuang0516/realbot/commit/0a28d9979ab846214683a9c3bbc76c62be69e385))
* **android:** add SoulGalleryDialog and RuleGalleryDialog ([5a3142a](https://github.com/HankHuang0516/realbot/commit/5a3142af3f67dfa4c4ba9473a4381f89e04aee24))
* **skill-templates:** add structural validation to contribute endpoint ([891327d](https://github.com/HankHuang0516/realbot/commit/891327dc02dbd3d2a8bbbf254d596cdb33fca3ed))
* **templates:** add Wise Mentor soul and Brevity First rule templates ([f1494fd](https://github.com/HankHuang0516/realbot/commit/f1494fde800c03fe2c650bda26fc87df36f9dd8d))
* **info:** add 實用案例 category with Claude x OpenClaw guide ([94475ea](https://github.com/HankHuang0516/realbot/commit/94475eaf8c8f0cf9cc2068d6edff14b9036f136d))
* **skill-templates:** auto-approve pipeline + admin contributions UI ([5f94ea1](https://github.com/HankHuang0516/realbot/commit/5f94ea13291d6b0d4f12e563d8451402452b09b7))
* **soul-dialog:** merge dropdown into Gallery, unify template selection ([b9eeb41](https://github.com/HankHuang0516/realbot/commit/b9eeb415d789243243426adf345552c7970cd8b9))
* **channel:** push NAME_CHANGED to channel bots immediately on rename ([d7992fc](https://github.com/HankHuang0516/realbot/commit/d7992fceb50ce615887ed3fe5e5e54c4306be7e9))
* **info:** simplify claude-openclaw guide with full example + copy button ([d8e31e9](https://github.com/HankHuang0516/realbot/commit/d8e31e9a3bf1b0b0dd05ef7bb7498bdcff82b335))
* **rebrand:** update community post intro to AI Agent collaboration ([5fb15a0](https://github.com/HankHuang0516/realbot/commit/5fb15a0eca7911ac987686f844216f818a980e75))
* **rebrand:** update comparison page strings to AI Agent collaboration ([82171a1](https://github.com/HankHuang0516/realbot/commit/82171a161819149f7a9977f0425e41742c816849))
* **rebrand:** update faq_a_what_is to AI Agent collaboration messaging ([a79324a](https://github.com/HankHuang0516/realbot/commit/a79324aeefbe931e0119986ef4917a0516878bb5))
* **rebrand:** update info.html features section to AI Agent positioning ([1a7fae8](https://github.com/HankHuang0516/realbot/commit/1a7fae8758b801a1da934eccbbad7be8d64bc9d8))
* **rebrand:** update openclaw plugin metadata to AI Agent collaboration ([96baef7](https://github.com/HankHuang0516/realbot/commit/96baef7cb5fcf57159ad401b2ed543fef218ae5e))
* **rebrand:** update openclaw-channel README to AI Agent collaboration ([f11653f](https://github.com/HankHuang0516/realbot/commit/f11653f11c44584e0783dddecc1fcef3dd4e8f55))
* **rebrand:** update privacy policy - replace pet terminology with AI agent ([72b487d](https://github.com/HankHuang0516/realbot/commit/72b487d0260f5d2ece537c5c606ebb8f87dd4734))
* **rebrand:** update README and package descriptions to AI Agent collaboration ([f9efffa](https://github.com/HankHuang0516/realbot/commit/f9efffa5179c5685023ef6d199d16f3e8018ee75))
* **android:** wire SoulGalleryDialog and RuleGalleryDialog into add dialogs ([74898b3](https://github.com/HankHuang0516/realbot/commit/74898b3d527990ea769e7f2d3ac8d32a07df9c38))

# [1.3.0](https://github.com/HankHuang0516/realbot/compare/v1.2.0...v1.3.0) (2026-03-08)


### Bug Fixes

* **android:** add name/description/ruleType to SkillTemplate and fix gallery dialogs ([e0a79b7](https://github.com/HankHuang0516/realbot/commit/e0a79b76503d36e21e7dc28246e940b27791492b))
* **bind:** await single-device save after binding to prevent race condition ([811b3e9](https://github.com/HankHuang0516/realbot/commit/811b3e9b250f7dee518e1f7f7cdf65c1a8dd94d8))
* code review corrections — credential UI and guide accuracy ([5992dc5](https://github.com/HankHuang0516/realbot/commit/5992dc5ca0cf35adee17253f5742ed3619ec836e)), closes [#newSecretValue](https://github.com/HankHuang0516/realbot/issues/newSecretValue)
* **test:** fix reorder-channel test order array size to match device limit ([3103918](https://github.com/HankHuang0516/realbot/commit/31039180cf26e0e5f2db3292bd153be856c541f6))
* **portal:** fix XSS, broken tags, and filter consistency in soul/rule gallery ([0dd30ec](https://github.com/HankHuang0516/realbot/commit/0dd30ec0c8a358594d4c603ed5c92e7b86871226))
* **bind:** make /api/bind handler async to fix await syntax error ([f78d373](https://github.com/HankHuang0516/realbot/commit/f78d373e2826b710adf6a7039604d93e90a627d0))
* **api:** move skill-templates/contributions route after adminAuth definition ([4915f3d](https://github.com/HankHuang0516/realbot/commit/4915f3d8f737445f4144bd5998ff5588fb126bbb))
* **tests:** read TEST_ENTITY_ID from .env in bot-api-response test; add setup_broadcast_webhook.js ([0dc137c](https://github.com/HankHuang0516/realbot/commit/0dc137c85e00de20c74b0c42c7569acbaf117dae))
* **bind:** reset bot-to-bot counter on rebind to prevent stale rate limits ([daea976](https://github.com/HankHuang0516/realbot/commit/daea976e44768dc65eb515d2bff4b5f400385642))
* **settings:** right-align copy icon, remove eye buttons ([010ffb7](https://github.com/HankHuang0516/realbot/commit/010ffb7487fe57019423e843676752ad203c1c2d))
* **test:** shorten NEW_NAME to stay within 20-char server limit ([45a1653](https://github.com/HankHuang0516/realbot/commit/45a165359c4212b2d0851cebbfa20c19f26e81e5))
* **settings:** truncate Device ID/Secret with ellipsis, no line wrap ([94a2ea4](https://github.com/HankHuang0516/realbot/commit/94a2ea41be12a026d5149a53e779b2403558639b))
* **rebrand:** update HTML fallback strings in comparison section ([a332dbd](https://github.com/HankHuang0516/realbot/commit/a332dbd95a4069952d1eb785e3969961f0d89cf3))
* **rebrand:** update SVG and tester guide - remove pet terminology ([c27b27e](https://github.com/HankHuang0516/realbot/commit/c27b27e6fb71240a05e5a5afd1b6b8c42b3b5c41))
* **admin:** use cookie auth for skill-templates/contributions endpoint ([fcefb1a](https://github.com/HankHuang0516/realbot/commit/fcefb1a0a7d295646024931bb1d6e018022d0945))
* **scheduler:** use current timestamp as default scheduled_at for cron schedules ([1610110](https://github.com/HankHuang0516/realbot/commit/1610110239212ffca506b6cbf3dec67dfb862278))


### Features

* **settings:** add copy icon for Device ID and Copy Credentials button ([35a68d7](https://github.com/HankHuang0516/realbot/commit/35a68d70044c94b643ee6a685ecb88840c008179))
* **templates:** add Creative Thinker soul and Step-by-Step Reasoning rule templates ([61e916f](https://github.com/HankHuang0516/realbot/commit/61e916feadad2683d5d774073211d54cda6de898))
* **info:** add deep linking support for guide sub-items ([e16ebb7](https://github.com/HankHuang0516/realbot/commit/e16ebb76d8fdf5d5b53ca117da92c3ea158579f6)), closes [#faq](https://github.com/HankHuang0516/realbot/issues/faq) [#release-notes](https://github.com/HankHuang0516/realbot/issues/release-notes) [#compare](https://github.com/HankHuang0516/realbot/issues/compare)
* **settings:** add Device Secret display with reveal/copy toggle ([4d4281a](https://github.com/HankHuang0516/realbot/commit/4d4281a967a87f404ca5217f32045f1ff6fb500b))
* **schedule:** add deviceSecret dual auth for schedule endpoints ([2716375](https://github.com/HankHuang0516/realbot/commit/2716375a2023b2ff259bdf7aae6051832ddc49c8))
* **android:** add fetchSoulTemplates/fetchRuleTemplates to MissionViewModel ([1c411fc](https://github.com/HankHuang0516/realbot/commit/1c411fce073055eb743d09c71f5d6ce9aed4b988))
* **android/i18n:** add soul & rule template gallery strings ([0a28d99](https://github.com/HankHuang0516/realbot/commit/0a28d9979ab846214683a9c3bbc76c62be69e385))
* **android:** add SoulGalleryDialog and RuleGalleryDialog ([5a3142a](https://github.com/HankHuang0516/realbot/commit/5a3142af3f67dfa4c4ba9473a4381f89e04aee24))
* **skill-templates:** add structural validation to contribute endpoint ([891327d](https://github.com/HankHuang0516/realbot/commit/891327dc02dbd3d2a8bbbf254d596cdb33fca3ed))
* **info:** add 實用案例 category with Claude x OpenClaw guide ([94475ea](https://github.com/HankHuang0516/realbot/commit/94475eaf8c8f0cf9cc2068d6edff14b9036f136d))
* **skill-templates:** auto-approve pipeline + admin contributions UI ([5f94ea1](https://github.com/HankHuang0516/realbot/commit/5f94ea13291d6b0d4f12e563d8451402452b09b7))
* **soul-dialog:** merge dropdown into Gallery, unify template selection ([b9eeb41](https://github.com/HankHuang0516/realbot/commit/b9eeb415d789243243426adf345552c7970cd8b9))
* **channel:** push NAME_CHANGED to channel bots immediately on rename ([d7992fc](https://github.com/HankHuang0516/realbot/commit/d7992fceb50ce615887ed3fe5e5e54c4306be7e9))
* **info:** simplify claude-openclaw guide with full example + copy button ([d8e31e9](https://github.com/HankHuang0516/realbot/commit/d8e31e9a3bf1b0b0dd05ef7bb7498bdcff82b335))
* **rebrand:** update community post intro to AI Agent collaboration ([5fb15a0](https://github.com/HankHuang0516/realbot/commit/5fb15a0eca7911ac987686f844216f818a980e75))
* **rebrand:** update comparison page strings to AI Agent collaboration ([82171a1](https://github.com/HankHuang0516/realbot/commit/82171a161819149f7a9977f0425e41742c816849))
* **rebrand:** update faq_a_what_is to AI Agent collaboration messaging ([a79324a](https://github.com/HankHuang0516/realbot/commit/a79324aeefbe931e0119986ef4917a0516878bb5))
* **rebrand:** update info.html features section to AI Agent positioning ([1a7fae8](https://github.com/HankHuang0516/realbot/commit/1a7fae8758b801a1da934eccbbad7be8d64bc9d8))
* **rebrand:** update openclaw plugin metadata to AI Agent collaboration ([96baef7](https://github.com/HankHuang0516/realbot/commit/96baef7cb5fcf57159ad401b2ed543fef218ae5e))
* **rebrand:** update openclaw-channel README to AI Agent collaboration ([f11653f](https://github.com/HankHuang0516/realbot/commit/f11653f11c44584e0783dddecc1fcef3dd4e8f55))
* **rebrand:** update privacy policy - replace pet terminology with AI agent ([72b487d](https://github.com/HankHuang0516/realbot/commit/72b487d0260f5d2ece537c5c606ebb8f87dd4734))
* **rebrand:** update README and package descriptions to AI Agent collaboration ([f9efffa](https://github.com/HankHuang0516/realbot/commit/f9efffa5179c5685023ef6d199d16f3e8018ee75))
* **android:** wire SoulGalleryDialog and RuleGalleryDialog into add dialogs ([74898b3](https://github.com/HankHuang0516/realbot/commit/74898b3d527990ea769e7f2d3ac8d32a07df9c38))

# [1.3.0](https://github.com/HankHuang0516/realbot/compare/v1.2.0...v1.3.0) (2026-03-08)


### Bug Fixes

* **android:** add name/description/ruleType to SkillTemplate and fix gallery dialogs ([e0a79b7](https://github.com/HankHuang0516/realbot/commit/e0a79b76503d36e21e7dc28246e940b27791492b))
* **bind:** await single-device save after binding to prevent race condition ([811b3e9](https://github.com/HankHuang0516/realbot/commit/811b3e9b250f7dee518e1f7f7cdf65c1a8dd94d8))
* code review corrections — credential UI and guide accuracy ([5992dc5](https://github.com/HankHuang0516/realbot/commit/5992dc5ca0cf35adee17253f5742ed3619ec836e)), closes [#newSecretValue](https://github.com/HankHuang0516/realbot/issues/newSecretValue)
* **test:** fix reorder-channel test order array size to match device limit ([3103918](https://github.com/HankHuang0516/realbot/commit/31039180cf26e0e5f2db3292bd153be856c541f6))
* **portal:** fix XSS, broken tags, and filter consistency in soul/rule gallery ([0dd30ec](https://github.com/HankHuang0516/realbot/commit/0dd30ec0c8a358594d4c603ed5c92e7b86871226))
* **bind:** make /api/bind handler async to fix await syntax error ([f78d373](https://github.com/HankHuang0516/realbot/commit/f78d373e2826b710adf6a7039604d93e90a627d0))
* **api:** move skill-templates/contributions route after adminAuth definition ([4915f3d](https://github.com/HankHuang0516/realbot/commit/4915f3d8f737445f4144bd5998ff5588fb126bbb))
* **tests:** read TEST_ENTITY_ID from .env in bot-api-response test; add setup_broadcast_webhook.js ([0dc137c](https://github.com/HankHuang0516/realbot/commit/0dc137c85e00de20c74b0c42c7569acbaf117dae))
* **bind:** reset bot-to-bot counter on rebind to prevent stale rate limits ([daea976](https://github.com/HankHuang0516/realbot/commit/daea976e44768dc65eb515d2bff4b5f400385642))
* **settings:** right-align copy icon, remove eye buttons ([010ffb7](https://github.com/HankHuang0516/realbot/commit/010ffb7487fe57019423e843676752ad203c1c2d))
* **test:** shorten NEW_NAME to stay within 20-char server limit ([45a1653](https://github.com/HankHuang0516/realbot/commit/45a165359c4212b2d0851cebbfa20c19f26e81e5))
* **settings:** truncate Device ID/Secret with ellipsis, no line wrap ([94a2ea4](https://github.com/HankHuang0516/realbot/commit/94a2ea41be12a026d5149a53e779b2403558639b))
* **rebrand:** update HTML fallback strings in comparison section ([a332dbd](https://github.com/HankHuang0516/realbot/commit/a332dbd95a4069952d1eb785e3969961f0d89cf3))
* **rebrand:** update SVG and tester guide - remove pet terminology ([c27b27e](https://github.com/HankHuang0516/realbot/commit/c27b27e6fb71240a05e5a5afd1b6b8c42b3b5c41))
* **admin:** use cookie auth for skill-templates/contributions endpoint ([fcefb1a](https://github.com/HankHuang0516/realbot/commit/fcefb1a0a7d295646024931bb1d6e018022d0945))
* **scheduler:** use current timestamp as default scheduled_at for cron schedules ([1610110](https://github.com/HankHuang0516/realbot/commit/1610110239212ffca506b6cbf3dec67dfb862278))


### Features

* **settings:** add copy icon for Device ID and Copy Credentials button ([35a68d7](https://github.com/HankHuang0516/realbot/commit/35a68d70044c94b643ee6a685ecb88840c008179))
* **templates:** add Creative Thinker soul and Step-by-Step Reasoning rule templates ([61e916f](https://github.com/HankHuang0516/realbot/commit/61e916feadad2683d5d774073211d54cda6de898))
* **info:** add deep linking support for guide sub-items ([e16ebb7](https://github.com/HankHuang0516/realbot/commit/e16ebb76d8fdf5d5b53ca117da92c3ea158579f6)), closes [#faq](https://github.com/HankHuang0516/realbot/issues/faq) [#release-notes](https://github.com/HankHuang0516/realbot/issues/release-notes) [#compare](https://github.com/HankHuang0516/realbot/issues/compare)
* **settings:** add Device Secret display with reveal/copy toggle ([4d4281a](https://github.com/HankHuang0516/realbot/commit/4d4281a967a87f404ca5217f32045f1ff6fb500b))
* **schedule:** add deviceSecret dual auth for schedule endpoints ([2716375](https://github.com/HankHuang0516/realbot/commit/2716375a2023b2ff259bdf7aae6051832ddc49c8))
* **android:** add fetchSoulTemplates/fetchRuleTemplates to MissionViewModel ([1c411fc](https://github.com/HankHuang0516/realbot/commit/1c411fce073055eb743d09c71f5d6ce9aed4b988))
* **android/i18n:** add soul & rule template gallery strings ([0a28d99](https://github.com/HankHuang0516/realbot/commit/0a28d9979ab846214683a9c3bbc76c62be69e385))
* **android:** add SoulGalleryDialog and RuleGalleryDialog ([5a3142a](https://github.com/HankHuang0516/realbot/commit/5a3142af3f67dfa4c4ba9473a4381f89e04aee24))
* **skill-templates:** add structural validation to contribute endpoint ([891327d](https://github.com/HankHuang0516/realbot/commit/891327dc02dbd3d2a8bbbf254d596cdb33fca3ed))
* **info:** add 實用案例 category with Claude x OpenClaw guide ([94475ea](https://github.com/HankHuang0516/realbot/commit/94475eaf8c8f0cf9cc2068d6edff14b9036f136d))
* **skill-templates:** auto-approve pipeline + admin contributions UI ([5f94ea1](https://github.com/HankHuang0516/realbot/commit/5f94ea13291d6b0d4f12e563d8451402452b09b7))
* **soul-dialog:** merge dropdown into Gallery, unify template selection ([b9eeb41](https://github.com/HankHuang0516/realbot/commit/b9eeb415d789243243426adf345552c7970cd8b9))
* **channel:** push NAME_CHANGED to channel bots immediately on rename ([d7992fc](https://github.com/HankHuang0516/realbot/commit/d7992fceb50ce615887ed3fe5e5e54c4306be7e9))
* **rebrand:** update community post intro to AI Agent collaboration ([5fb15a0](https://github.com/HankHuang0516/realbot/commit/5fb15a0eca7911ac987686f844216f818a980e75))
* **rebrand:** update comparison page strings to AI Agent collaboration ([82171a1](https://github.com/HankHuang0516/realbot/commit/82171a161819149f7a9977f0425e41742c816849))
* **rebrand:** update faq_a_what_is to AI Agent collaboration messaging ([a79324a](https://github.com/HankHuang0516/realbot/commit/a79324aeefbe931e0119986ef4917a0516878bb5))
* **rebrand:** update info.html features section to AI Agent positioning ([1a7fae8](https://github.com/HankHuang0516/realbot/commit/1a7fae8758b801a1da934eccbbad7be8d64bc9d8))
* **rebrand:** update openclaw plugin metadata to AI Agent collaboration ([96baef7](https://github.com/HankHuang0516/realbot/commit/96baef7cb5fcf57159ad401b2ed543fef218ae5e))
* **rebrand:** update openclaw-channel README to AI Agent collaboration ([f11653f](https://github.com/HankHuang0516/realbot/commit/f11653f11c44584e0783dddecc1fcef3dd4e8f55))
* **rebrand:** update privacy policy - replace pet terminology with AI agent ([72b487d](https://github.com/HankHuang0516/realbot/commit/72b487d0260f5d2ece537c5c606ebb8f87dd4734))
* **rebrand:** update README and package descriptions to AI Agent collaboration ([f9efffa](https://github.com/HankHuang0516/realbot/commit/f9efffa5179c5685023ef6d199d16f3e8018ee75))
* **android:** wire SoulGalleryDialog and RuleGalleryDialog into add dialogs ([74898b3](https://github.com/HankHuang0516/realbot/commit/74898b3d527990ea769e7f2d3ac8d32a07df9c38))

# [1.3.0](https://github.com/HankHuang0516/realbot/compare/v1.2.0...v1.3.0) (2026-03-08)


### Bug Fixes

* **android:** add name/description/ruleType to SkillTemplate and fix gallery dialogs ([e0a79b7](https://github.com/HankHuang0516/realbot/commit/e0a79b76503d36e21e7dc28246e940b27791492b))
* **bind:** await single-device save after binding to prevent race condition ([811b3e9](https://github.com/HankHuang0516/realbot/commit/811b3e9b250f7dee518e1f7f7cdf65c1a8dd94d8))
* code review corrections — credential UI and guide accuracy ([5992dc5](https://github.com/HankHuang0516/realbot/commit/5992dc5ca0cf35adee17253f5742ed3619ec836e)), closes [#newSecretValue](https://github.com/HankHuang0516/realbot/issues/newSecretValue)
* **test:** fix reorder-channel test order array size to match device limit ([3103918](https://github.com/HankHuang0516/realbot/commit/31039180cf26e0e5f2db3292bd153be856c541f6))
* **portal:** fix XSS, broken tags, and filter consistency in soul/rule gallery ([0dd30ec](https://github.com/HankHuang0516/realbot/commit/0dd30ec0c8a358594d4c603ed5c92e7b86871226))
* **bind:** make /api/bind handler async to fix await syntax error ([f78d373](https://github.com/HankHuang0516/realbot/commit/f78d373e2826b710adf6a7039604d93e90a627d0))
* **tests:** read TEST_ENTITY_ID from .env in bot-api-response test; add setup_broadcast_webhook.js ([0dc137c](https://github.com/HankHuang0516/realbot/commit/0dc137c85e00de20c74b0c42c7569acbaf117dae))
* **bind:** reset bot-to-bot counter on rebind to prevent stale rate limits ([daea976](https://github.com/HankHuang0516/realbot/commit/daea976e44768dc65eb515d2bff4b5f400385642))
* **settings:** right-align copy icon, remove eye buttons ([010ffb7](https://github.com/HankHuang0516/realbot/commit/010ffb7487fe57019423e843676752ad203c1c2d))
* **test:** shorten NEW_NAME to stay within 20-char server limit ([45a1653](https://github.com/HankHuang0516/realbot/commit/45a165359c4212b2d0851cebbfa20c19f26e81e5))
* **settings:** truncate Device ID/Secret with ellipsis, no line wrap ([94a2ea4](https://github.com/HankHuang0516/realbot/commit/94a2ea41be12a026d5149a53e779b2403558639b))
* **rebrand:** update HTML fallback strings in comparison section ([a332dbd](https://github.com/HankHuang0516/realbot/commit/a332dbd95a4069952d1eb785e3969961f0d89cf3))
* **rebrand:** update SVG and tester guide - remove pet terminology ([c27b27e](https://github.com/HankHuang0516/realbot/commit/c27b27e6fb71240a05e5a5afd1b6b8c42b3b5c41))
* **admin:** use cookie auth for skill-templates/contributions endpoint ([fcefb1a](https://github.com/HankHuang0516/realbot/commit/fcefb1a0a7d295646024931bb1d6e018022d0945))
* **scheduler:** use current timestamp as default scheduled_at for cron schedules ([1610110](https://github.com/HankHuang0516/realbot/commit/1610110239212ffca506b6cbf3dec67dfb862278))


### Features

* **settings:** add copy icon for Device ID and Copy Credentials button ([35a68d7](https://github.com/HankHuang0516/realbot/commit/35a68d70044c94b643ee6a685ecb88840c008179))
* **templates:** add Creative Thinker soul and Step-by-Step Reasoning rule templates ([61e916f](https://github.com/HankHuang0516/realbot/commit/61e916feadad2683d5d774073211d54cda6de898))
* **info:** add deep linking support for guide sub-items ([e16ebb7](https://github.com/HankHuang0516/realbot/commit/e16ebb76d8fdf5d5b53ca117da92c3ea158579f6)), closes [#faq](https://github.com/HankHuang0516/realbot/issues/faq) [#release-notes](https://github.com/HankHuang0516/realbot/issues/release-notes) [#compare](https://github.com/HankHuang0516/realbot/issues/compare)
* **settings:** add Device Secret display with reveal/copy toggle ([4d4281a](https://github.com/HankHuang0516/realbot/commit/4d4281a967a87f404ca5217f32045f1ff6fb500b))
* **schedule:** add deviceSecret dual auth for schedule endpoints ([2716375](https://github.com/HankHuang0516/realbot/commit/2716375a2023b2ff259bdf7aae6051832ddc49c8))
* **android:** add fetchSoulTemplates/fetchRuleTemplates to MissionViewModel ([1c411fc](https://github.com/HankHuang0516/realbot/commit/1c411fce073055eb743d09c71f5d6ce9aed4b988))
* **android/i18n:** add soul & rule template gallery strings ([0a28d99](https://github.com/HankHuang0516/realbot/commit/0a28d9979ab846214683a9c3bbc76c62be69e385))
* **android:** add SoulGalleryDialog and RuleGalleryDialog ([5a3142a](https://github.com/HankHuang0516/realbot/commit/5a3142af3f67dfa4c4ba9473a4381f89e04aee24))
* **skill-templates:** add structural validation to contribute endpoint ([891327d](https://github.com/HankHuang0516/realbot/commit/891327dc02dbd3d2a8bbbf254d596cdb33fca3ed))
* **info:** add 實用案例 category with Claude x OpenClaw guide ([94475ea](https://github.com/HankHuang0516/realbot/commit/94475eaf8c8f0cf9cc2068d6edff14b9036f136d))
* **skill-templates:** auto-approve pipeline + admin contributions UI ([5f94ea1](https://github.com/HankHuang0516/realbot/commit/5f94ea13291d6b0d4f12e563d8451402452b09b7))
* **soul-dialog:** merge dropdown into Gallery, unify template selection ([b9eeb41](https://github.com/HankHuang0516/realbot/commit/b9eeb415d789243243426adf345552c7970cd8b9))
* **channel:** push NAME_CHANGED to channel bots immediately on rename ([d7992fc](https://github.com/HankHuang0516/realbot/commit/d7992fceb50ce615887ed3fe5e5e54c4306be7e9))
* **rebrand:** update community post intro to AI Agent collaboration ([5fb15a0](https://github.com/HankHuang0516/realbot/commit/5fb15a0eca7911ac987686f844216f818a980e75))
* **rebrand:** update comparison page strings to AI Agent collaboration ([82171a1](https://github.com/HankHuang0516/realbot/commit/82171a161819149f7a9977f0425e41742c816849))
* **rebrand:** update faq_a_what_is to AI Agent collaboration messaging ([a79324a](https://github.com/HankHuang0516/realbot/commit/a79324aeefbe931e0119986ef4917a0516878bb5))
* **rebrand:** update info.html features section to AI Agent positioning ([1a7fae8](https://github.com/HankHuang0516/realbot/commit/1a7fae8758b801a1da934eccbbad7be8d64bc9d8))
* **rebrand:** update openclaw plugin metadata to AI Agent collaboration ([96baef7](https://github.com/HankHuang0516/realbot/commit/96baef7cb5fcf57159ad401b2ed543fef218ae5e))
* **rebrand:** update openclaw-channel README to AI Agent collaboration ([f11653f](https://github.com/HankHuang0516/realbot/commit/f11653f11c44584e0783dddecc1fcef3dd4e8f55))
* **rebrand:** update privacy policy - replace pet terminology with AI agent ([72b487d](https://github.com/HankHuang0516/realbot/commit/72b487d0260f5d2ece537c5c606ebb8f87dd4734))
* **rebrand:** update README and package descriptions to AI Agent collaboration ([f9efffa](https://github.com/HankHuang0516/realbot/commit/f9efffa5179c5685023ef6d199d16f3e8018ee75))
* **android:** wire SoulGalleryDialog and RuleGalleryDialog into add dialogs ([74898b3](https://github.com/HankHuang0516/realbot/commit/74898b3d527990ea769e7f2d3ac8d32a07df9c38))

# [1.3.0](https://github.com/HankHuang0516/realbot/compare/v1.2.0...v1.3.0) (2026-03-08)


### Bug Fixes

* **android:** add name/description/ruleType to SkillTemplate and fix gallery dialogs ([e0a79b7](https://github.com/HankHuang0516/realbot/commit/e0a79b76503d36e21e7dc28246e940b27791492b))
* **bind:** await single-device save after binding to prevent race condition ([811b3e9](https://github.com/HankHuang0516/realbot/commit/811b3e9b250f7dee518e1f7f7cdf65c1a8dd94d8))
* code review corrections — credential UI and guide accuracy ([5992dc5](https://github.com/HankHuang0516/realbot/commit/5992dc5ca0cf35adee17253f5742ed3619ec836e)), closes [#newSecretValue](https://github.com/HankHuang0516/realbot/issues/newSecretValue)
* **test:** fix reorder-channel test order array size to match device limit ([3103918](https://github.com/HankHuang0516/realbot/commit/31039180cf26e0e5f2db3292bd153be856c541f6))
* **portal:** fix XSS, broken tags, and filter consistency in soul/rule gallery ([0dd30ec](https://github.com/HankHuang0516/realbot/commit/0dd30ec0c8a358594d4c603ed5c92e7b86871226))
* **bind:** make /api/bind handler async to fix await syntax error ([f78d373](https://github.com/HankHuang0516/realbot/commit/f78d373e2826b710adf6a7039604d93e90a627d0))
* **tests:** read TEST_ENTITY_ID from .env in bot-api-response test; add setup_broadcast_webhook.js ([0dc137c](https://github.com/HankHuang0516/realbot/commit/0dc137c85e00de20c74b0c42c7569acbaf117dae))
* **bind:** reset bot-to-bot counter on rebind to prevent stale rate limits ([daea976](https://github.com/HankHuang0516/realbot/commit/daea976e44768dc65eb515d2bff4b5f400385642))
* **settings:** right-align copy icon, remove eye buttons ([010ffb7](https://github.com/HankHuang0516/realbot/commit/010ffb7487fe57019423e843676752ad203c1c2d))
* **test:** shorten NEW_NAME to stay within 20-char server limit ([45a1653](https://github.com/HankHuang0516/realbot/commit/45a165359c4212b2d0851cebbfa20c19f26e81e5))
* **settings:** truncate Device ID/Secret with ellipsis, no line wrap ([94a2ea4](https://github.com/HankHuang0516/realbot/commit/94a2ea41be12a026d5149a53e779b2403558639b))
* **rebrand:** update HTML fallback strings in comparison section ([a332dbd](https://github.com/HankHuang0516/realbot/commit/a332dbd95a4069952d1eb785e3969961f0d89cf3))
* **rebrand:** update SVG and tester guide - remove pet terminology ([c27b27e](https://github.com/HankHuang0516/realbot/commit/c27b27e6fb71240a05e5a5afd1b6b8c42b3b5c41))
* **admin:** use cookie auth for skill-templates/contributions endpoint ([fcefb1a](https://github.com/HankHuang0516/realbot/commit/fcefb1a0a7d295646024931bb1d6e018022d0945))
* **scheduler:** use current timestamp as default scheduled_at for cron schedules ([1610110](https://github.com/HankHuang0516/realbot/commit/1610110239212ffca506b6cbf3dec67dfb862278))


### Features

* **settings:** add copy icon for Device ID and Copy Credentials button ([35a68d7](https://github.com/HankHuang0516/realbot/commit/35a68d70044c94b643ee6a685ecb88840c008179))
* **templates:** add Creative Thinker soul and Step-by-Step Reasoning rule templates ([61e916f](https://github.com/HankHuang0516/realbot/commit/61e916feadad2683d5d774073211d54cda6de898))
* **info:** add deep linking support for guide sub-items ([e16ebb7](https://github.com/HankHuang0516/realbot/commit/e16ebb76d8fdf5d5b53ca117da92c3ea158579f6)), closes [#faq](https://github.com/HankHuang0516/realbot/issues/faq) [#release-notes](https://github.com/HankHuang0516/realbot/issues/release-notes) [#compare](https://github.com/HankHuang0516/realbot/issues/compare)
* **settings:** add Device Secret display with reveal/copy toggle ([4d4281a](https://github.com/HankHuang0516/realbot/commit/4d4281a967a87f404ca5217f32045f1ff6fb500b))
* **schedule:** add deviceSecret dual auth for schedule endpoints ([2716375](https://github.com/HankHuang0516/realbot/commit/2716375a2023b2ff259bdf7aae6051832ddc49c8))
* **android:** add fetchSoulTemplates/fetchRuleTemplates to MissionViewModel ([1c411fc](https://github.com/HankHuang0516/realbot/commit/1c411fce073055eb743d09c71f5d6ce9aed4b988))
* **android/i18n:** add soul & rule template gallery strings ([0a28d99](https://github.com/HankHuang0516/realbot/commit/0a28d9979ab846214683a9c3bbc76c62be69e385))
* **android:** add SoulGalleryDialog and RuleGalleryDialog ([5a3142a](https://github.com/HankHuang0516/realbot/commit/5a3142af3f67dfa4c4ba9473a4381f89e04aee24))
* **skill-templates:** add structural validation to contribute endpoint ([891327d](https://github.com/HankHuang0516/realbot/commit/891327dc02dbd3d2a8bbbf254d596cdb33fca3ed))
* **info:** add 實用案例 category with Claude x OpenClaw guide ([94475ea](https://github.com/HankHuang0516/realbot/commit/94475eaf8c8f0cf9cc2068d6edff14b9036f136d))
* **skill-templates:** auto-approve pipeline + admin contributions UI ([5f94ea1](https://github.com/HankHuang0516/realbot/commit/5f94ea13291d6b0d4f12e563d8451402452b09b7))
* **channel:** push NAME_CHANGED to channel bots immediately on rename ([d7992fc](https://github.com/HankHuang0516/realbot/commit/d7992fceb50ce615887ed3fe5e5e54c4306be7e9))
* **rebrand:** update community post intro to AI Agent collaboration ([5fb15a0](https://github.com/HankHuang0516/realbot/commit/5fb15a0eca7911ac987686f844216f818a980e75))
* **rebrand:** update comparison page strings to AI Agent collaboration ([82171a1](https://github.com/HankHuang0516/realbot/commit/82171a161819149f7a9977f0425e41742c816849))
* **rebrand:** update faq_a_what_is to AI Agent collaboration messaging ([a79324a](https://github.com/HankHuang0516/realbot/commit/a79324aeefbe931e0119986ef4917a0516878bb5))
* **rebrand:** update info.html features section to AI Agent positioning ([1a7fae8](https://github.com/HankHuang0516/realbot/commit/1a7fae8758b801a1da934eccbbad7be8d64bc9d8))
* **rebrand:** update openclaw plugin metadata to AI Agent collaboration ([96baef7](https://github.com/HankHuang0516/realbot/commit/96baef7cb5fcf57159ad401b2ed543fef218ae5e))
* **rebrand:** update openclaw-channel README to AI Agent collaboration ([f11653f](https://github.com/HankHuang0516/realbot/commit/f11653f11c44584e0783dddecc1fcef3dd4e8f55))
* **rebrand:** update privacy policy - replace pet terminology with AI agent ([72b487d](https://github.com/HankHuang0516/realbot/commit/72b487d0260f5d2ece537c5c606ebb8f87dd4734))
* **rebrand:** update README and package descriptions to AI Agent collaboration ([f9efffa](https://github.com/HankHuang0516/realbot/commit/f9efffa5179c5685023ef6d199d16f3e8018ee75))
* **android:** wire SoulGalleryDialog and RuleGalleryDialog into add dialogs ([74898b3](https://github.com/HankHuang0516/realbot/commit/74898b3d527990ea769e7f2d3ac8d32a07df9c38))

# [1.3.0](https://github.com/HankHuang0516/realbot/compare/v1.2.0...v1.3.0) (2026-03-08)


### Bug Fixes

* **android:** add name/description/ruleType to SkillTemplate and fix gallery dialogs ([e0a79b7](https://github.com/HankHuang0516/realbot/commit/e0a79b76503d36e21e7dc28246e940b27791492b))
* **bind:** await single-device save after binding to prevent race condition ([811b3e9](https://github.com/HankHuang0516/realbot/commit/811b3e9b250f7dee518e1f7f7cdf65c1a8dd94d8))
* code review corrections — credential UI and guide accuracy ([5992dc5](https://github.com/HankHuang0516/realbot/commit/5992dc5ca0cf35adee17253f5742ed3619ec836e)), closes [#newSecretValue](https://github.com/HankHuang0516/realbot/issues/newSecretValue)
* **test:** fix reorder-channel test order array size to match device limit ([3103918](https://github.com/HankHuang0516/realbot/commit/31039180cf26e0e5f2db3292bd153be856c541f6))
* **portal:** fix XSS, broken tags, and filter consistency in soul/rule gallery ([0dd30ec](https://github.com/HankHuang0516/realbot/commit/0dd30ec0c8a358594d4c603ed5c92e7b86871226))
* **bind:** make /api/bind handler async to fix await syntax error ([f78d373](https://github.com/HankHuang0516/realbot/commit/f78d373e2826b710adf6a7039604d93e90a627d0))
* **tests:** read TEST_ENTITY_ID from .env in bot-api-response test; add setup_broadcast_webhook.js ([0dc137c](https://github.com/HankHuang0516/realbot/commit/0dc137c85e00de20c74b0c42c7569acbaf117dae))
* **bind:** reset bot-to-bot counter on rebind to prevent stale rate limits ([daea976](https://github.com/HankHuang0516/realbot/commit/daea976e44768dc65eb515d2bff4b5f400385642))
* **settings:** right-align copy icon, remove eye buttons ([010ffb7](https://github.com/HankHuang0516/realbot/commit/010ffb7487fe57019423e843676752ad203c1c2d))
* **test:** shorten NEW_NAME to stay within 20-char server limit ([45a1653](https://github.com/HankHuang0516/realbot/commit/45a165359c4212b2d0851cebbfa20c19f26e81e5))
* **settings:** truncate Device ID/Secret with ellipsis, no line wrap ([94a2ea4](https://github.com/HankHuang0516/realbot/commit/94a2ea41be12a026d5149a53e779b2403558639b))
* **rebrand:** update HTML fallback strings in comparison section ([a332dbd](https://github.com/HankHuang0516/realbot/commit/a332dbd95a4069952d1eb785e3969961f0d89cf3))
* **rebrand:** update SVG and tester guide - remove pet terminology ([c27b27e](https://github.com/HankHuang0516/realbot/commit/c27b27e6fb71240a05e5a5afd1b6b8c42b3b5c41))
* **scheduler:** use current timestamp as default scheduled_at for cron schedules ([1610110](https://github.com/HankHuang0516/realbot/commit/1610110239212ffca506b6cbf3dec67dfb862278))


### Features

* **settings:** add copy icon for Device ID and Copy Credentials button ([35a68d7](https://github.com/HankHuang0516/realbot/commit/35a68d70044c94b643ee6a685ecb88840c008179))
* **templates:** add Creative Thinker soul and Step-by-Step Reasoning rule templates ([61e916f](https://github.com/HankHuang0516/realbot/commit/61e916feadad2683d5d774073211d54cda6de898))
* **info:** add deep linking support for guide sub-items ([e16ebb7](https://github.com/HankHuang0516/realbot/commit/e16ebb76d8fdf5d5b53ca117da92c3ea158579f6)), closes [#faq](https://github.com/HankHuang0516/realbot/issues/faq) [#release-notes](https://github.com/HankHuang0516/realbot/issues/release-notes) [#compare](https://github.com/HankHuang0516/realbot/issues/compare)
* **settings:** add Device Secret display with reveal/copy toggle ([4d4281a](https://github.com/HankHuang0516/realbot/commit/4d4281a967a87f404ca5217f32045f1ff6fb500b))
* **schedule:** add deviceSecret dual auth for schedule endpoints ([2716375](https://github.com/HankHuang0516/realbot/commit/2716375a2023b2ff259bdf7aae6051832ddc49c8))
* **android:** add fetchSoulTemplates/fetchRuleTemplates to MissionViewModel ([1c411fc](https://github.com/HankHuang0516/realbot/commit/1c411fce073055eb743d09c71f5d6ce9aed4b988))
* **android/i18n:** add soul & rule template gallery strings ([0a28d99](https://github.com/HankHuang0516/realbot/commit/0a28d9979ab846214683a9c3bbc76c62be69e385))
* **android:** add SoulGalleryDialog and RuleGalleryDialog ([5a3142a](https://github.com/HankHuang0516/realbot/commit/5a3142af3f67dfa4c4ba9473a4381f89e04aee24))
* **skill-templates:** add structural validation to contribute endpoint ([891327d](https://github.com/HankHuang0516/realbot/commit/891327dc02dbd3d2a8bbbf254d596cdb33fca3ed))
* **info:** add 實用案例 category with Claude x OpenClaw guide ([94475ea](https://github.com/HankHuang0516/realbot/commit/94475eaf8c8f0cf9cc2068d6edff14b9036f136d))
* **skill-templates:** auto-approve pipeline + admin contributions UI ([5f94ea1](https://github.com/HankHuang0516/realbot/commit/5f94ea13291d6b0d4f12e563d8451402452b09b7))
* **channel:** push NAME_CHANGED to channel bots immediately on rename ([d7992fc](https://github.com/HankHuang0516/realbot/commit/d7992fceb50ce615887ed3fe5e5e54c4306be7e9))
* **rebrand:** update community post intro to AI Agent collaboration ([5fb15a0](https://github.com/HankHuang0516/realbot/commit/5fb15a0eca7911ac987686f844216f818a980e75))
* **rebrand:** update comparison page strings to AI Agent collaboration ([82171a1](https://github.com/HankHuang0516/realbot/commit/82171a161819149f7a9977f0425e41742c816849))
* **rebrand:** update faq_a_what_is to AI Agent collaboration messaging ([a79324a](https://github.com/HankHuang0516/realbot/commit/a79324aeefbe931e0119986ef4917a0516878bb5))
* **rebrand:** update info.html features section to AI Agent positioning ([1a7fae8](https://github.com/HankHuang0516/realbot/commit/1a7fae8758b801a1da934eccbbad7be8d64bc9d8))
* **rebrand:** update openclaw plugin metadata to AI Agent collaboration ([96baef7](https://github.com/HankHuang0516/realbot/commit/96baef7cb5fcf57159ad401b2ed543fef218ae5e))
* **rebrand:** update openclaw-channel README to AI Agent collaboration ([f11653f](https://github.com/HankHuang0516/realbot/commit/f11653f11c44584e0783dddecc1fcef3dd4e8f55))
* **rebrand:** update privacy policy - replace pet terminology with AI agent ([72b487d](https://github.com/HankHuang0516/realbot/commit/72b487d0260f5d2ece537c5c606ebb8f87dd4734))
* **rebrand:** update README and package descriptions to AI Agent collaboration ([f9efffa](https://github.com/HankHuang0516/realbot/commit/f9efffa5179c5685023ef6d199d16f3e8018ee75))
* **android:** wire SoulGalleryDialog and RuleGalleryDialog into add dialogs ([74898b3](https://github.com/HankHuang0516/realbot/commit/74898b3d527990ea769e7f2d3ac8d32a07df9c38))

# [1.3.0](https://github.com/HankHuang0516/realbot/compare/v1.2.0...v1.3.0) (2026-03-08)


### Bug Fixes

* **android:** add name/description/ruleType to SkillTemplate and fix gallery dialogs ([e0a79b7](https://github.com/HankHuang0516/realbot/commit/e0a79b76503d36e21e7dc28246e940b27791492b))
* **bind:** await single-device save after binding to prevent race condition ([811b3e9](https://github.com/HankHuang0516/realbot/commit/811b3e9b250f7dee518e1f7f7cdf65c1a8dd94d8))
* code review corrections — credential UI and guide accuracy ([5992dc5](https://github.com/HankHuang0516/realbot/commit/5992dc5ca0cf35adee17253f5742ed3619ec836e)), closes [#newSecretValue](https://github.com/HankHuang0516/realbot/issues/newSecretValue)
* **test:** fix reorder-channel test order array size to match device limit ([3103918](https://github.com/HankHuang0516/realbot/commit/31039180cf26e0e5f2db3292bd153be856c541f6))
* **portal:** fix XSS, broken tags, and filter consistency in soul/rule gallery ([0dd30ec](https://github.com/HankHuang0516/realbot/commit/0dd30ec0c8a358594d4c603ed5c92e7b86871226))
* **bind:** make /api/bind handler async to fix await syntax error ([f78d373](https://github.com/HankHuang0516/realbot/commit/f78d373e2826b710adf6a7039604d93e90a627d0))
* **tests:** read TEST_ENTITY_ID from .env in bot-api-response test; add setup_broadcast_webhook.js ([0dc137c](https://github.com/HankHuang0516/realbot/commit/0dc137c85e00de20c74b0c42c7569acbaf117dae))
* **bind:** reset bot-to-bot counter on rebind to prevent stale rate limits ([daea976](https://github.com/HankHuang0516/realbot/commit/daea976e44768dc65eb515d2bff4b5f400385642))
* **settings:** right-align copy icon, remove eye buttons ([010ffb7](https://github.com/HankHuang0516/realbot/commit/010ffb7487fe57019423e843676752ad203c1c2d))
* **test:** shorten NEW_NAME to stay within 20-char server limit ([45a1653](https://github.com/HankHuang0516/realbot/commit/45a165359c4212b2d0851cebbfa20c19f26e81e5))
* **settings:** truncate Device ID/Secret with ellipsis, no line wrap ([94a2ea4](https://github.com/HankHuang0516/realbot/commit/94a2ea41be12a026d5149a53e779b2403558639b))
* **rebrand:** update HTML fallback strings in comparison section ([a332dbd](https://github.com/HankHuang0516/realbot/commit/a332dbd95a4069952d1eb785e3969961f0d89cf3))
* **rebrand:** update SVG and tester guide - remove pet terminology ([c27b27e](https://github.com/HankHuang0516/realbot/commit/c27b27e6fb71240a05e5a5afd1b6b8c42b3b5c41))


### Features

* **settings:** add copy icon for Device ID and Copy Credentials button ([35a68d7](https://github.com/HankHuang0516/realbot/commit/35a68d70044c94b643ee6a685ecb88840c008179))
* **templates:** add Creative Thinker soul and Step-by-Step Reasoning rule templates ([61e916f](https://github.com/HankHuang0516/realbot/commit/61e916feadad2683d5d774073211d54cda6de898))
* **info:** add deep linking support for guide sub-items ([e16ebb7](https://github.com/HankHuang0516/realbot/commit/e16ebb76d8fdf5d5b53ca117da92c3ea158579f6)), closes [#faq](https://github.com/HankHuang0516/realbot/issues/faq) [#release-notes](https://github.com/HankHuang0516/realbot/issues/release-notes) [#compare](https://github.com/HankHuang0516/realbot/issues/compare)
* **settings:** add Device Secret display with reveal/copy toggle ([4d4281a](https://github.com/HankHuang0516/realbot/commit/4d4281a967a87f404ca5217f32045f1ff6fb500b))
* **schedule:** add deviceSecret dual auth for schedule endpoints ([2716375](https://github.com/HankHuang0516/realbot/commit/2716375a2023b2ff259bdf7aae6051832ddc49c8))
* **android:** add fetchSoulTemplates/fetchRuleTemplates to MissionViewModel ([1c411fc](https://github.com/HankHuang0516/realbot/commit/1c411fce073055eb743d09c71f5d6ce9aed4b988))
* **android/i18n:** add soul & rule template gallery strings ([0a28d99](https://github.com/HankHuang0516/realbot/commit/0a28d9979ab846214683a9c3bbc76c62be69e385))
* **android:** add SoulGalleryDialog and RuleGalleryDialog ([5a3142a](https://github.com/HankHuang0516/realbot/commit/5a3142af3f67dfa4c4ba9473a4381f89e04aee24))
* **skill-templates:** add structural validation to contribute endpoint ([891327d](https://github.com/HankHuang0516/realbot/commit/891327dc02dbd3d2a8bbbf254d596cdb33fca3ed))
* **info:** add 實用案例 category with Claude x OpenClaw guide ([94475ea](https://github.com/HankHuang0516/realbot/commit/94475eaf8c8f0cf9cc2068d6edff14b9036f136d))
* **skill-templates:** auto-approve pipeline + admin contributions UI ([5f94ea1](https://github.com/HankHuang0516/realbot/commit/5f94ea13291d6b0d4f12e563d8451402452b09b7))
* **channel:** push NAME_CHANGED to channel bots immediately on rename ([d7992fc](https://github.com/HankHuang0516/realbot/commit/d7992fceb50ce615887ed3fe5e5e54c4306be7e9))
* **rebrand:** update community post intro to AI Agent collaboration ([5fb15a0](https://github.com/HankHuang0516/realbot/commit/5fb15a0eca7911ac987686f844216f818a980e75))
* **rebrand:** update comparison page strings to AI Agent collaboration ([82171a1](https://github.com/HankHuang0516/realbot/commit/82171a161819149f7a9977f0425e41742c816849))
* **rebrand:** update faq_a_what_is to AI Agent collaboration messaging ([a79324a](https://github.com/HankHuang0516/realbot/commit/a79324aeefbe931e0119986ef4917a0516878bb5))
* **rebrand:** update info.html features section to AI Agent positioning ([1a7fae8](https://github.com/HankHuang0516/realbot/commit/1a7fae8758b801a1da934eccbbad7be8d64bc9d8))
* **rebrand:** update openclaw plugin metadata to AI Agent collaboration ([96baef7](https://github.com/HankHuang0516/realbot/commit/96baef7cb5fcf57159ad401b2ed543fef218ae5e))
* **rebrand:** update openclaw-channel README to AI Agent collaboration ([f11653f](https://github.com/HankHuang0516/realbot/commit/f11653f11c44584e0783dddecc1fcef3dd4e8f55))
* **rebrand:** update privacy policy - replace pet terminology with AI agent ([72b487d](https://github.com/HankHuang0516/realbot/commit/72b487d0260f5d2ece537c5c606ebb8f87dd4734))
* **rebrand:** update README and package descriptions to AI Agent collaboration ([f9efffa](https://github.com/HankHuang0516/realbot/commit/f9efffa5179c5685023ef6d199d16f3e8018ee75))
* **android:** wire SoulGalleryDialog and RuleGalleryDialog into add dialogs ([74898b3](https://github.com/HankHuang0516/realbot/commit/74898b3d527990ea769e7f2d3ac8d32a07df9c38))

# [1.3.0](https://github.com/HankHuang0516/realbot/compare/v1.2.0...v1.3.0) (2026-03-08)


### Bug Fixes

* **android:** add name/description/ruleType to SkillTemplate and fix gallery dialogs ([e0a79b7](https://github.com/HankHuang0516/realbot/commit/e0a79b76503d36e21e7dc28246e940b27791492b))
* **bind:** await single-device save after binding to prevent race condition ([811b3e9](https://github.com/HankHuang0516/realbot/commit/811b3e9b250f7dee518e1f7f7cdf65c1a8dd94d8))
* code review corrections — credential UI and guide accuracy ([5992dc5](https://github.com/HankHuang0516/realbot/commit/5992dc5ca0cf35adee17253f5742ed3619ec836e)), closes [#newSecretValue](https://github.com/HankHuang0516/realbot/issues/newSecretValue)
* **test:** fix reorder-channel test order array size to match device limit ([3103918](https://github.com/HankHuang0516/realbot/commit/31039180cf26e0e5f2db3292bd153be856c541f6))
* **portal:** fix XSS, broken tags, and filter consistency in soul/rule gallery ([0dd30ec](https://github.com/HankHuang0516/realbot/commit/0dd30ec0c8a358594d4c603ed5c92e7b86871226))
* **bind:** make /api/bind handler async to fix await syntax error ([f78d373](https://github.com/HankHuang0516/realbot/commit/f78d373e2826b710adf6a7039604d93e90a627d0))
* **tests:** read TEST_ENTITY_ID from .env in bot-api-response test; add setup_broadcast_webhook.js ([0dc137c](https://github.com/HankHuang0516/realbot/commit/0dc137c85e00de20c74b0c42c7569acbaf117dae))
* **bind:** reset bot-to-bot counter on rebind to prevent stale rate limits ([daea976](https://github.com/HankHuang0516/realbot/commit/daea976e44768dc65eb515d2bff4b5f400385642))
* **test:** shorten NEW_NAME to stay within 20-char server limit ([45a1653](https://github.com/HankHuang0516/realbot/commit/45a165359c4212b2d0851cebbfa20c19f26e81e5))
* **settings:** truncate Device ID/Secret with ellipsis, no line wrap ([94a2ea4](https://github.com/HankHuang0516/realbot/commit/94a2ea41be12a026d5149a53e779b2403558639b))
* **rebrand:** update HTML fallback strings in comparison section ([a332dbd](https://github.com/HankHuang0516/realbot/commit/a332dbd95a4069952d1eb785e3969961f0d89cf3))
* **rebrand:** update SVG and tester guide - remove pet terminology ([c27b27e](https://github.com/HankHuang0516/realbot/commit/c27b27e6fb71240a05e5a5afd1b6b8c42b3b5c41))


### Features

* **settings:** add copy icon for Device ID and Copy Credentials button ([35a68d7](https://github.com/HankHuang0516/realbot/commit/35a68d70044c94b643ee6a685ecb88840c008179))
* **templates:** add Creative Thinker soul and Step-by-Step Reasoning rule templates ([61e916f](https://github.com/HankHuang0516/realbot/commit/61e916feadad2683d5d774073211d54cda6de898))
* **info:** add deep linking support for guide sub-items ([e16ebb7](https://github.com/HankHuang0516/realbot/commit/e16ebb76d8fdf5d5b53ca117da92c3ea158579f6)), closes [#faq](https://github.com/HankHuang0516/realbot/issues/faq) [#release-notes](https://github.com/HankHuang0516/realbot/issues/release-notes) [#compare](https://github.com/HankHuang0516/realbot/issues/compare)
* **settings:** add Device Secret display with reveal/copy toggle ([4d4281a](https://github.com/HankHuang0516/realbot/commit/4d4281a967a87f404ca5217f32045f1ff6fb500b))
* **schedule:** add deviceSecret dual auth for schedule endpoints ([2716375](https://github.com/HankHuang0516/realbot/commit/2716375a2023b2ff259bdf7aae6051832ddc49c8))
* **android:** add fetchSoulTemplates/fetchRuleTemplates to MissionViewModel ([1c411fc](https://github.com/HankHuang0516/realbot/commit/1c411fce073055eb743d09c71f5d6ce9aed4b988))
* **android/i18n:** add soul & rule template gallery strings ([0a28d99](https://github.com/HankHuang0516/realbot/commit/0a28d9979ab846214683a9c3bbc76c62be69e385))
* **android:** add SoulGalleryDialog and RuleGalleryDialog ([5a3142a](https://github.com/HankHuang0516/realbot/commit/5a3142af3f67dfa4c4ba9473a4381f89e04aee24))
* **skill-templates:** add structural validation to contribute endpoint ([891327d](https://github.com/HankHuang0516/realbot/commit/891327dc02dbd3d2a8bbbf254d596cdb33fca3ed))
* **info:** add 實用案例 category with Claude x OpenClaw guide ([94475ea](https://github.com/HankHuang0516/realbot/commit/94475eaf8c8f0cf9cc2068d6edff14b9036f136d))
* **skill-templates:** auto-approve pipeline + admin contributions UI ([5f94ea1](https://github.com/HankHuang0516/realbot/commit/5f94ea13291d6b0d4f12e563d8451402452b09b7))
* **channel:** push NAME_CHANGED to channel bots immediately on rename ([d7992fc](https://github.com/HankHuang0516/realbot/commit/d7992fceb50ce615887ed3fe5e5e54c4306be7e9))
* **rebrand:** update community post intro to AI Agent collaboration ([5fb15a0](https://github.com/HankHuang0516/realbot/commit/5fb15a0eca7911ac987686f844216f818a980e75))
* **rebrand:** update comparison page strings to AI Agent collaboration ([82171a1](https://github.com/HankHuang0516/realbot/commit/82171a161819149f7a9977f0425e41742c816849))
* **rebrand:** update faq_a_what_is to AI Agent collaboration messaging ([a79324a](https://github.com/HankHuang0516/realbot/commit/a79324aeefbe931e0119986ef4917a0516878bb5))
* **rebrand:** update info.html features section to AI Agent positioning ([1a7fae8](https://github.com/HankHuang0516/realbot/commit/1a7fae8758b801a1da934eccbbad7be8d64bc9d8))
* **rebrand:** update openclaw plugin metadata to AI Agent collaboration ([96baef7](https://github.com/HankHuang0516/realbot/commit/96baef7cb5fcf57159ad401b2ed543fef218ae5e))
* **rebrand:** update openclaw-channel README to AI Agent collaboration ([f11653f](https://github.com/HankHuang0516/realbot/commit/f11653f11c44584e0783dddecc1fcef3dd4e8f55))
* **rebrand:** update privacy policy - replace pet terminology with AI agent ([72b487d](https://github.com/HankHuang0516/realbot/commit/72b487d0260f5d2ece537c5c606ebb8f87dd4734))
* **rebrand:** update README and package descriptions to AI Agent collaboration ([f9efffa](https://github.com/HankHuang0516/realbot/commit/f9efffa5179c5685023ef6d199d16f3e8018ee75))
* **android:** wire SoulGalleryDialog and RuleGalleryDialog into add dialogs ([74898b3](https://github.com/HankHuang0516/realbot/commit/74898b3d527990ea769e7f2d3ac8d32a07df9c38))

# [1.3.0](https://github.com/HankHuang0516/realbot/compare/v1.2.0...v1.3.0) (2026-03-08)


### Bug Fixes

* **android:** add name/description/ruleType to SkillTemplate and fix gallery dialogs ([e0a79b7](https://github.com/HankHuang0516/realbot/commit/e0a79b76503d36e21e7dc28246e940b27791492b))
* **bind:** await single-device save after binding to prevent race condition ([811b3e9](https://github.com/HankHuang0516/realbot/commit/811b3e9b250f7dee518e1f7f7cdf65c1a8dd94d8))
* code review corrections — credential UI and guide accuracy ([5992dc5](https://github.com/HankHuang0516/realbot/commit/5992dc5ca0cf35adee17253f5742ed3619ec836e)), closes [#newSecretValue](https://github.com/HankHuang0516/realbot/issues/newSecretValue)
* **test:** fix reorder-channel test order array size to match device limit ([3103918](https://github.com/HankHuang0516/realbot/commit/31039180cf26e0e5f2db3292bd153be856c541f6))
* **portal:** fix XSS, broken tags, and filter consistency in soul/rule gallery ([0dd30ec](https://github.com/HankHuang0516/realbot/commit/0dd30ec0c8a358594d4c603ed5c92e7b86871226))
* **bind:** make /api/bind handler async to fix await syntax error ([f78d373](https://github.com/HankHuang0516/realbot/commit/f78d373e2826b710adf6a7039604d93e90a627d0))
* **tests:** read TEST_ENTITY_ID from .env in bot-api-response test; add setup_broadcast_webhook.js ([0dc137c](https://github.com/HankHuang0516/realbot/commit/0dc137c85e00de20c74b0c42c7569acbaf117dae))
* **bind:** reset bot-to-bot counter on rebind to prevent stale rate limits ([daea976](https://github.com/HankHuang0516/realbot/commit/daea976e44768dc65eb515d2bff4b5f400385642))
* **test:** shorten NEW_NAME to stay within 20-char server limit ([45a1653](https://github.com/HankHuang0516/realbot/commit/45a165359c4212b2d0851cebbfa20c19f26e81e5))
* **settings:** truncate Device ID/Secret with ellipsis, no line wrap ([94a2ea4](https://github.com/HankHuang0516/realbot/commit/94a2ea41be12a026d5149a53e779b2403558639b))
* **rebrand:** update HTML fallback strings in comparison section ([a332dbd](https://github.com/HankHuang0516/realbot/commit/a332dbd95a4069952d1eb785e3969961f0d89cf3))
* **rebrand:** update SVG and tester guide - remove pet terminology ([c27b27e](https://github.com/HankHuang0516/realbot/commit/c27b27e6fb71240a05e5a5afd1b6b8c42b3b5c41))


### Features

* **settings:** add copy icon for Device ID and Copy Credentials button ([35a68d7](https://github.com/HankHuang0516/realbot/commit/35a68d70044c94b643ee6a685ecb88840c008179))
* **templates:** add Creative Thinker soul and Step-by-Step Reasoning rule templates ([61e916f](https://github.com/HankHuang0516/realbot/commit/61e916feadad2683d5d774073211d54cda6de898))
* **info:** add deep linking support for guide sub-items ([e16ebb7](https://github.com/HankHuang0516/realbot/commit/e16ebb76d8fdf5d5b53ca117da92c3ea158579f6)), closes [#faq](https://github.com/HankHuang0516/realbot/issues/faq) [#release-notes](https://github.com/HankHuang0516/realbot/issues/release-notes) [#compare](https://github.com/HankHuang0516/realbot/issues/compare)
* **settings:** add Device Secret display with reveal/copy toggle ([4d4281a](https://github.com/HankHuang0516/realbot/commit/4d4281a967a87f404ca5217f32045f1ff6fb500b))
* **android:** add fetchSoulTemplates/fetchRuleTemplates to MissionViewModel ([1c411fc](https://github.com/HankHuang0516/realbot/commit/1c411fce073055eb743d09c71f5d6ce9aed4b988))
* **android/i18n:** add soul & rule template gallery strings ([0a28d99](https://github.com/HankHuang0516/realbot/commit/0a28d9979ab846214683a9c3bbc76c62be69e385))
* **android:** add SoulGalleryDialog and RuleGalleryDialog ([5a3142a](https://github.com/HankHuang0516/realbot/commit/5a3142af3f67dfa4c4ba9473a4381f89e04aee24))
* **skill-templates:** add structural validation to contribute endpoint ([891327d](https://github.com/HankHuang0516/realbot/commit/891327dc02dbd3d2a8bbbf254d596cdb33fca3ed))
* **info:** add 實用案例 category with Claude x OpenClaw guide ([94475ea](https://github.com/HankHuang0516/realbot/commit/94475eaf8c8f0cf9cc2068d6edff14b9036f136d))
* **skill-templates:** auto-approve pipeline + admin contributions UI ([5f94ea1](https://github.com/HankHuang0516/realbot/commit/5f94ea13291d6b0d4f12e563d8451402452b09b7))
* **channel:** push NAME_CHANGED to channel bots immediately on rename ([d7992fc](https://github.com/HankHuang0516/realbot/commit/d7992fceb50ce615887ed3fe5e5e54c4306be7e9))
* **rebrand:** update community post intro to AI Agent collaboration ([5fb15a0](https://github.com/HankHuang0516/realbot/commit/5fb15a0eca7911ac987686f844216f818a980e75))
* **rebrand:** update comparison page strings to AI Agent collaboration ([82171a1](https://github.com/HankHuang0516/realbot/commit/82171a161819149f7a9977f0425e41742c816849))
* **rebrand:** update faq_a_what_is to AI Agent collaboration messaging ([a79324a](https://github.com/HankHuang0516/realbot/commit/a79324aeefbe931e0119986ef4917a0516878bb5))
* **rebrand:** update info.html features section to AI Agent positioning ([1a7fae8](https://github.com/HankHuang0516/realbot/commit/1a7fae8758b801a1da934eccbbad7be8d64bc9d8))
* **rebrand:** update openclaw plugin metadata to AI Agent collaboration ([96baef7](https://github.com/HankHuang0516/realbot/commit/96baef7cb5fcf57159ad401b2ed543fef218ae5e))
* **rebrand:** update openclaw-channel README to AI Agent collaboration ([f11653f](https://github.com/HankHuang0516/realbot/commit/f11653f11c44584e0783dddecc1fcef3dd4e8f55))
* **rebrand:** update privacy policy - replace pet terminology with AI agent ([72b487d](https://github.com/HankHuang0516/realbot/commit/72b487d0260f5d2ece537c5c606ebb8f87dd4734))
* **rebrand:** update README and package descriptions to AI Agent collaboration ([f9efffa](https://github.com/HankHuang0516/realbot/commit/f9efffa5179c5685023ef6d199d16f3e8018ee75))
* **android:** wire SoulGalleryDialog and RuleGalleryDialog into add dialogs ([74898b3](https://github.com/HankHuang0516/realbot/commit/74898b3d527990ea769e7f2d3ac8d32a07df9c38))

# [1.3.0](https://github.com/HankHuang0516/realbot/compare/v1.2.0...v1.3.0) (2026-03-07)


### Bug Fixes

* **android:** add name/description/ruleType to SkillTemplate and fix gallery dialogs ([e0a79b7](https://github.com/HankHuang0516/realbot/commit/e0a79b76503d36e21e7dc28246e940b27791492b))
* **bind:** await single-device save after binding to prevent race condition ([811b3e9](https://github.com/HankHuang0516/realbot/commit/811b3e9b250f7dee518e1f7f7cdf65c1a8dd94d8))
* code review corrections — credential UI and guide accuracy ([5992dc5](https://github.com/HankHuang0516/realbot/commit/5992dc5ca0cf35adee17253f5742ed3619ec836e)), closes [#newSecretValue](https://github.com/HankHuang0516/realbot/issues/newSecretValue)
* **test:** fix reorder-channel test order array size to match device limit ([3103918](https://github.com/HankHuang0516/realbot/commit/31039180cf26e0e5f2db3292bd153be856c541f6))
* **portal:** fix XSS, broken tags, and filter consistency in soul/rule gallery ([0dd30ec](https://github.com/HankHuang0516/realbot/commit/0dd30ec0c8a358594d4c603ed5c92e7b86871226))
* **bind:** make /api/bind handler async to fix await syntax error ([f78d373](https://github.com/HankHuang0516/realbot/commit/f78d373e2826b710adf6a7039604d93e90a627d0))
* **tests:** read TEST_ENTITY_ID from .env in bot-api-response test; add setup_broadcast_webhook.js ([0dc137c](https://github.com/HankHuang0516/realbot/commit/0dc137c85e00de20c74b0c42c7569acbaf117dae))
* **bind:** reset bot-to-bot counter on rebind to prevent stale rate limits ([daea976](https://github.com/HankHuang0516/realbot/commit/daea976e44768dc65eb515d2bff4b5f400385642))
* **test:** shorten NEW_NAME to stay within 20-char server limit ([45a1653](https://github.com/HankHuang0516/realbot/commit/45a165359c4212b2d0851cebbfa20c19f26e81e5))
* **settings:** truncate Device ID/Secret with ellipsis, no line wrap ([94a2ea4](https://github.com/HankHuang0516/realbot/commit/94a2ea41be12a026d5149a53e779b2403558639b))


### Features

* **settings:** add copy icon for Device ID and Copy Credentials button ([35a68d7](https://github.com/HankHuang0516/realbot/commit/35a68d70044c94b643ee6a685ecb88840c008179))
* **info:** add deep linking support for guide sub-items ([e16ebb7](https://github.com/HankHuang0516/realbot/commit/e16ebb76d8fdf5d5b53ca117da92c3ea158579f6)), closes [#faq](https://github.com/HankHuang0516/realbot/issues/faq) [#release-notes](https://github.com/HankHuang0516/realbot/issues/release-notes) [#compare](https://github.com/HankHuang0516/realbot/issues/compare)
* **settings:** add Device Secret display with reveal/copy toggle ([4d4281a](https://github.com/HankHuang0516/realbot/commit/4d4281a967a87f404ca5217f32045f1ff6fb500b))
* **android:** add fetchSoulTemplates/fetchRuleTemplates to MissionViewModel ([1c411fc](https://github.com/HankHuang0516/realbot/commit/1c411fce073055eb743d09c71f5d6ce9aed4b988))
* **android/i18n:** add soul & rule template gallery strings ([0a28d99](https://github.com/HankHuang0516/realbot/commit/0a28d9979ab846214683a9c3bbc76c62be69e385))
* **android:** add SoulGalleryDialog and RuleGalleryDialog ([5a3142a](https://github.com/HankHuang0516/realbot/commit/5a3142af3f67dfa4c4ba9473a4381f89e04aee24))
* **skill-templates:** add structural validation to contribute endpoint ([891327d](https://github.com/HankHuang0516/realbot/commit/891327dc02dbd3d2a8bbbf254d596cdb33fca3ed))
* **info:** add 實用案例 category with Claude x OpenClaw guide ([94475ea](https://github.com/HankHuang0516/realbot/commit/94475eaf8c8f0cf9cc2068d6edff14b9036f136d))
* **skill-templates:** auto-approve pipeline + admin contributions UI ([5f94ea1](https://github.com/HankHuang0516/realbot/commit/5f94ea13291d6b0d4f12e563d8451402452b09b7))
* **channel:** push NAME_CHANGED to channel bots immediately on rename ([d7992fc](https://github.com/HankHuang0516/realbot/commit/d7992fceb50ce615887ed3fe5e5e54c4306be7e9))
* **android:** wire SoulGalleryDialog and RuleGalleryDialog into add dialogs ([74898b3](https://github.com/HankHuang0516/realbot/commit/74898b3d527990ea769e7f2d3ac8d32a07df9c38))

# [1.3.0](https://github.com/HankHuang0516/realbot/compare/v1.2.0...v1.3.0) (2026-03-07)


### Bug Fixes

* **android:** add name/description/ruleType to SkillTemplate and fix gallery dialogs ([e0a79b7](https://github.com/HankHuang0516/realbot/commit/e0a79b76503d36e21e7dc28246e940b27791492b))
* **bind:** await single-device save after binding to prevent race condition ([811b3e9](https://github.com/HankHuang0516/realbot/commit/811b3e9b250f7dee518e1f7f7cdf65c1a8dd94d8))
* code review corrections — credential UI and guide accuracy ([5992dc5](https://github.com/HankHuang0516/realbot/commit/5992dc5ca0cf35adee17253f5742ed3619ec836e)), closes [#newSecretValue](https://github.com/HankHuang0516/realbot/issues/newSecretValue)
* **test:** fix reorder-channel test order array size to match device limit ([3103918](https://github.com/HankHuang0516/realbot/commit/31039180cf26e0e5f2db3292bd153be856c541f6))
* **portal:** fix XSS, broken tags, and filter consistency in soul/rule gallery ([0dd30ec](https://github.com/HankHuang0516/realbot/commit/0dd30ec0c8a358594d4c603ed5c92e7b86871226))
* **bind:** make /api/bind handler async to fix await syntax error ([f78d373](https://github.com/HankHuang0516/realbot/commit/f78d373e2826b710adf6a7039604d93e90a627d0))
* **tests:** read TEST_ENTITY_ID from .env in bot-api-response test; add setup_broadcast_webhook.js ([0dc137c](https://github.com/HankHuang0516/realbot/commit/0dc137c85e00de20c74b0c42c7569acbaf117dae))
* **bind:** reset bot-to-bot counter on rebind to prevent stale rate limits ([daea976](https://github.com/HankHuang0516/realbot/commit/daea976e44768dc65eb515d2bff4b5f400385642))
* **test:** shorten NEW_NAME to stay within 20-char server limit ([45a1653](https://github.com/HankHuang0516/realbot/commit/45a165359c4212b2d0851cebbfa20c19f26e81e5))
* **settings:** truncate Device ID/Secret with ellipsis, no line wrap ([94a2ea4](https://github.com/HankHuang0516/realbot/commit/94a2ea41be12a026d5149a53e779b2403558639b))


### Features

* **info:** add deep linking support for guide sub-items ([e16ebb7](https://github.com/HankHuang0516/realbot/commit/e16ebb76d8fdf5d5b53ca117da92c3ea158579f6)), closes [#faq](https://github.com/HankHuang0516/realbot/issues/faq) [#release-notes](https://github.com/HankHuang0516/realbot/issues/release-notes) [#compare](https://github.com/HankHuang0516/realbot/issues/compare)
* **settings:** add Device Secret display with reveal/copy toggle ([4d4281a](https://github.com/HankHuang0516/realbot/commit/4d4281a967a87f404ca5217f32045f1ff6fb500b))
* **android:** add fetchSoulTemplates/fetchRuleTemplates to MissionViewModel ([1c411fc](https://github.com/HankHuang0516/realbot/commit/1c411fce073055eb743d09c71f5d6ce9aed4b988))
* **android/i18n:** add soul & rule template gallery strings ([0a28d99](https://github.com/HankHuang0516/realbot/commit/0a28d9979ab846214683a9c3bbc76c62be69e385))
* **android:** add SoulGalleryDialog and RuleGalleryDialog ([5a3142a](https://github.com/HankHuang0516/realbot/commit/5a3142af3f67dfa4c4ba9473a4381f89e04aee24))
* **skill-templates:** add structural validation to contribute endpoint ([891327d](https://github.com/HankHuang0516/realbot/commit/891327dc02dbd3d2a8bbbf254d596cdb33fca3ed))
* **info:** add 實用案例 category with Claude x OpenClaw guide ([94475ea](https://github.com/HankHuang0516/realbot/commit/94475eaf8c8f0cf9cc2068d6edff14b9036f136d))
* **skill-templates:** auto-approve pipeline + admin contributions UI ([5f94ea1](https://github.com/HankHuang0516/realbot/commit/5f94ea13291d6b0d4f12e563d8451402452b09b7))
* **channel:** push NAME_CHANGED to channel bots immediately on rename ([d7992fc](https://github.com/HankHuang0516/realbot/commit/d7992fceb50ce615887ed3fe5e5e54c4306be7e9))
* **android:** wire SoulGalleryDialog and RuleGalleryDialog into add dialogs ([74898b3](https://github.com/HankHuang0516/realbot/commit/74898b3d527990ea769e7f2d3ac8d32a07df9c38))

# [1.3.0](https://github.com/HankHuang0516/realbot/compare/v1.2.0...v1.3.0) (2026-03-07)


### Bug Fixes

* **android:** add name/description/ruleType to SkillTemplate and fix gallery dialogs ([e0a79b7](https://github.com/HankHuang0516/realbot/commit/e0a79b76503d36e21e7dc28246e940b27791492b))
* **bind:** await single-device save after binding to prevent race condition ([811b3e9](https://github.com/HankHuang0516/realbot/commit/811b3e9b250f7dee518e1f7f7cdf65c1a8dd94d8))
* code review corrections — credential UI and guide accuracy ([5992dc5](https://github.com/HankHuang0516/realbot/commit/5992dc5ca0cf35adee17253f5742ed3619ec836e)), closes [#newSecretValue](https://github.com/HankHuang0516/realbot/issues/newSecretValue)
* **test:** fix reorder-channel test order array size to match device limit ([3103918](https://github.com/HankHuang0516/realbot/commit/31039180cf26e0e5f2db3292bd153be856c541f6))
* **portal:** fix XSS, broken tags, and filter consistency in soul/rule gallery ([0dd30ec](https://github.com/HankHuang0516/realbot/commit/0dd30ec0c8a358594d4c603ed5c92e7b86871226))
* **bind:** make /api/bind handler async to fix await syntax error ([f78d373](https://github.com/HankHuang0516/realbot/commit/f78d373e2826b710adf6a7039604d93e90a627d0))
* **tests:** read TEST_ENTITY_ID from .env in bot-api-response test; add setup_broadcast_webhook.js ([0dc137c](https://github.com/HankHuang0516/realbot/commit/0dc137c85e00de20c74b0c42c7569acbaf117dae))
* **bind:** reset bot-to-bot counter on rebind to prevent stale rate limits ([daea976](https://github.com/HankHuang0516/realbot/commit/daea976e44768dc65eb515d2bff4b5f400385642))
* **test:** shorten NEW_NAME to stay within 20-char server limit ([45a1653](https://github.com/HankHuang0516/realbot/commit/45a165359c4212b2d0851cebbfa20c19f26e81e5))


### Features

* **info:** add deep linking support for guide sub-items ([e16ebb7](https://github.com/HankHuang0516/realbot/commit/e16ebb76d8fdf5d5b53ca117da92c3ea158579f6)), closes [#faq](https://github.com/HankHuang0516/realbot/issues/faq) [#release-notes](https://github.com/HankHuang0516/realbot/issues/release-notes) [#compare](https://github.com/HankHuang0516/realbot/issues/compare)
* **settings:** add Device Secret display with reveal/copy toggle ([4d4281a](https://github.com/HankHuang0516/realbot/commit/4d4281a967a87f404ca5217f32045f1ff6fb500b))
* **android:** add fetchSoulTemplates/fetchRuleTemplates to MissionViewModel ([1c411fc](https://github.com/HankHuang0516/realbot/commit/1c411fce073055eb743d09c71f5d6ce9aed4b988))
* **android/i18n:** add soul & rule template gallery strings ([0a28d99](https://github.com/HankHuang0516/realbot/commit/0a28d9979ab846214683a9c3bbc76c62be69e385))
* **android:** add SoulGalleryDialog and RuleGalleryDialog ([5a3142a](https://github.com/HankHuang0516/realbot/commit/5a3142af3f67dfa4c4ba9473a4381f89e04aee24))
* **skill-templates:** add structural validation to contribute endpoint ([891327d](https://github.com/HankHuang0516/realbot/commit/891327dc02dbd3d2a8bbbf254d596cdb33fca3ed))
* **info:** add 實用案例 category with Claude x OpenClaw guide ([94475ea](https://github.com/HankHuang0516/realbot/commit/94475eaf8c8f0cf9cc2068d6edff14b9036f136d))
* **skill-templates:** auto-approve pipeline + admin contributions UI ([5f94ea1](https://github.com/HankHuang0516/realbot/commit/5f94ea13291d6b0d4f12e563d8451402452b09b7))
* **channel:** push NAME_CHANGED to channel bots immediately on rename ([d7992fc](https://github.com/HankHuang0516/realbot/commit/d7992fceb50ce615887ed3fe5e5e54c4306be7e9))
* **android:** wire SoulGalleryDialog and RuleGalleryDialog into add dialogs ([74898b3](https://github.com/HankHuang0516/realbot/commit/74898b3d527990ea769e7f2d3ac8d32a07df9c38))

# [1.3.0](https://github.com/HankHuang0516/realbot/compare/v1.2.0...v1.3.0) (2026-03-07)


### Bug Fixes

* **android:** add name/description/ruleType to SkillTemplate and fix gallery dialogs ([e0a79b7](https://github.com/HankHuang0516/realbot/commit/e0a79b76503d36e21e7dc28246e940b27791492b))
* **bind:** await single-device save after binding to prevent race condition ([811b3e9](https://github.com/HankHuang0516/realbot/commit/811b3e9b250f7dee518e1f7f7cdf65c1a8dd94d8))
* **test:** fix reorder-channel test order array size to match device limit ([3103918](https://github.com/HankHuang0516/realbot/commit/31039180cf26e0e5f2db3292bd153be856c541f6))
* **portal:** fix XSS, broken tags, and filter consistency in soul/rule gallery ([0dd30ec](https://github.com/HankHuang0516/realbot/commit/0dd30ec0c8a358594d4c603ed5c92e7b86871226))
* **bind:** make /api/bind handler async to fix await syntax error ([f78d373](https://github.com/HankHuang0516/realbot/commit/f78d373e2826b710adf6a7039604d93e90a627d0))
* **tests:** read TEST_ENTITY_ID from .env in bot-api-response test; add setup_broadcast_webhook.js ([0dc137c](https://github.com/HankHuang0516/realbot/commit/0dc137c85e00de20c74b0c42c7569acbaf117dae))
* **bind:** reset bot-to-bot counter on rebind to prevent stale rate limits ([daea976](https://github.com/HankHuang0516/realbot/commit/daea976e44768dc65eb515d2bff4b5f400385642))
* **test:** shorten NEW_NAME to stay within 20-char server limit ([45a1653](https://github.com/HankHuang0516/realbot/commit/45a165359c4212b2d0851cebbfa20c19f26e81e5))


### Features

* **info:** add deep linking support for guide sub-items ([e16ebb7](https://github.com/HankHuang0516/realbot/commit/e16ebb76d8fdf5d5b53ca117da92c3ea158579f6)), closes [#faq](https://github.com/HankHuang0516/realbot/issues/faq) [#release-notes](https://github.com/HankHuang0516/realbot/issues/release-notes) [#compare](https://github.com/HankHuang0516/realbot/issues/compare)
* **settings:** add Device Secret display with reveal/copy toggle ([4d4281a](https://github.com/HankHuang0516/realbot/commit/4d4281a967a87f404ca5217f32045f1ff6fb500b))
* **android:** add fetchSoulTemplates/fetchRuleTemplates to MissionViewModel ([1c411fc](https://github.com/HankHuang0516/realbot/commit/1c411fce073055eb743d09c71f5d6ce9aed4b988))
* **android/i18n:** add soul & rule template gallery strings ([0a28d99](https://github.com/HankHuang0516/realbot/commit/0a28d9979ab846214683a9c3bbc76c62be69e385))
* **android:** add SoulGalleryDialog and RuleGalleryDialog ([5a3142a](https://github.com/HankHuang0516/realbot/commit/5a3142af3f67dfa4c4ba9473a4381f89e04aee24))
* **skill-templates:** add structural validation to contribute endpoint ([891327d](https://github.com/HankHuang0516/realbot/commit/891327dc02dbd3d2a8bbbf254d596cdb33fca3ed))
* **info:** add 實用案例 category with Claude x OpenClaw guide ([94475ea](https://github.com/HankHuang0516/realbot/commit/94475eaf8c8f0cf9cc2068d6edff14b9036f136d))
* **skill-templates:** auto-approve pipeline + admin contributions UI ([5f94ea1](https://github.com/HankHuang0516/realbot/commit/5f94ea13291d6b0d4f12e563d8451402452b09b7))
* **channel:** push NAME_CHANGED to channel bots immediately on rename ([d7992fc](https://github.com/HankHuang0516/realbot/commit/d7992fceb50ce615887ed3fe5e5e54c4306be7e9))
* **android:** wire SoulGalleryDialog and RuleGalleryDialog into add dialogs ([74898b3](https://github.com/HankHuang0516/realbot/commit/74898b3d527990ea769e7f2d3ac8d32a07df9c38))

# [1.3.0](https://github.com/HankHuang0516/realbot/compare/v1.2.0...v1.3.0) (2026-03-07)


### Bug Fixes

* **android:** add name/description/ruleType to SkillTemplate and fix gallery dialogs ([e0a79b7](https://github.com/HankHuang0516/realbot/commit/e0a79b76503d36e21e7dc28246e940b27791492b))
* **bind:** await single-device save after binding to prevent race condition ([811b3e9](https://github.com/HankHuang0516/realbot/commit/811b3e9b250f7dee518e1f7f7cdf65c1a8dd94d8))
* **test:** fix reorder-channel test order array size to match device limit ([3103918](https://github.com/HankHuang0516/realbot/commit/31039180cf26e0e5f2db3292bd153be856c541f6))
* **portal:** fix XSS, broken tags, and filter consistency in soul/rule gallery ([0dd30ec](https://github.com/HankHuang0516/realbot/commit/0dd30ec0c8a358594d4c603ed5c92e7b86871226))
* **bind:** make /api/bind handler async to fix await syntax error ([f78d373](https://github.com/HankHuang0516/realbot/commit/f78d373e2826b710adf6a7039604d93e90a627d0))
* **tests:** read TEST_ENTITY_ID from .env in bot-api-response test; add setup_broadcast_webhook.js ([0dc137c](https://github.com/HankHuang0516/realbot/commit/0dc137c85e00de20c74b0c42c7569acbaf117dae))
* **bind:** reset bot-to-bot counter on rebind to prevent stale rate limits ([daea976](https://github.com/HankHuang0516/realbot/commit/daea976e44768dc65eb515d2bff4b5f400385642))
* **test:** shorten NEW_NAME to stay within 20-char server limit ([45a1653](https://github.com/HankHuang0516/realbot/commit/45a165359c4212b2d0851cebbfa20c19f26e81e5))


### Features

* **info:** add deep linking support for guide sub-items ([e16ebb7](https://github.com/HankHuang0516/realbot/commit/e16ebb76d8fdf5d5b53ca117da92c3ea158579f6)), closes [#faq](https://github.com/HankHuang0516/realbot/issues/faq) [#release-notes](https://github.com/HankHuang0516/realbot/issues/release-notes) [#compare](https://github.com/HankHuang0516/realbot/issues/compare)
* **android:** add fetchSoulTemplates/fetchRuleTemplates to MissionViewModel ([1c411fc](https://github.com/HankHuang0516/realbot/commit/1c411fce073055eb743d09c71f5d6ce9aed4b988))
* **android/i18n:** add soul & rule template gallery strings ([0a28d99](https://github.com/HankHuang0516/realbot/commit/0a28d9979ab846214683a9c3bbc76c62be69e385))
* **android:** add SoulGalleryDialog and RuleGalleryDialog ([5a3142a](https://github.com/HankHuang0516/realbot/commit/5a3142af3f67dfa4c4ba9473a4381f89e04aee24))
* **skill-templates:** add structural validation to contribute endpoint ([891327d](https://github.com/HankHuang0516/realbot/commit/891327dc02dbd3d2a8bbbf254d596cdb33fca3ed))
* **info:** add 實用案例 category with Claude x OpenClaw guide ([94475ea](https://github.com/HankHuang0516/realbot/commit/94475eaf8c8f0cf9cc2068d6edff14b9036f136d))
* **skill-templates:** auto-approve pipeline + admin contributions UI ([5f94ea1](https://github.com/HankHuang0516/realbot/commit/5f94ea13291d6b0d4f12e563d8451402452b09b7))
* **channel:** push NAME_CHANGED to channel bots immediately on rename ([d7992fc](https://github.com/HankHuang0516/realbot/commit/d7992fceb50ce615887ed3fe5e5e54c4306be7e9))
* **android:** wire SoulGalleryDialog and RuleGalleryDialog into add dialogs ([74898b3](https://github.com/HankHuang0516/realbot/commit/74898b3d527990ea769e7f2d3ac8d32a07df9c38))

# [1.3.0](https://github.com/HankHuang0516/realbot/compare/v1.2.0...v1.3.0) (2026-03-07)


### Bug Fixes

* **android:** add name/description/ruleType to SkillTemplate and fix gallery dialogs ([e0a79b7](https://github.com/HankHuang0516/realbot/commit/e0a79b76503d36e21e7dc28246e940b27791492b))
* **bind:** await single-device save after binding to prevent race condition ([811b3e9](https://github.com/HankHuang0516/realbot/commit/811b3e9b250f7dee518e1f7f7cdf65c1a8dd94d8))
* **test:** fix reorder-channel test order array size to match device limit ([3103918](https://github.com/HankHuang0516/realbot/commit/31039180cf26e0e5f2db3292bd153be856c541f6))
* **portal:** fix XSS, broken tags, and filter consistency in soul/rule gallery ([0dd30ec](https://github.com/HankHuang0516/realbot/commit/0dd30ec0c8a358594d4c603ed5c92e7b86871226))
* **bind:** make /api/bind handler async to fix await syntax error ([f78d373](https://github.com/HankHuang0516/realbot/commit/f78d373e2826b710adf6a7039604d93e90a627d0))
* **tests:** read TEST_ENTITY_ID from .env in bot-api-response test; add setup_broadcast_webhook.js ([0dc137c](https://github.com/HankHuang0516/realbot/commit/0dc137c85e00de20c74b0c42c7569acbaf117dae))
* **bind:** reset bot-to-bot counter on rebind to prevent stale rate limits ([daea976](https://github.com/HankHuang0516/realbot/commit/daea976e44768dc65eb515d2bff4b5f400385642))
* **test:** shorten NEW_NAME to stay within 20-char server limit ([45a1653](https://github.com/HankHuang0516/realbot/commit/45a165359c4212b2d0851cebbfa20c19f26e81e5))


### Features

* **info:** add deep linking support for guide sub-items ([e16ebb7](https://github.com/HankHuang0516/realbot/commit/e16ebb76d8fdf5d5b53ca117da92c3ea158579f6)), closes [#faq](https://github.com/HankHuang0516/realbot/issues/faq) [#release-notes](https://github.com/HankHuang0516/realbot/issues/release-notes) [#compare](https://github.com/HankHuang0516/realbot/issues/compare)
* **android:** add fetchSoulTemplates/fetchRuleTemplates to MissionViewModel ([1c411fc](https://github.com/HankHuang0516/realbot/commit/1c411fce073055eb743d09c71f5d6ce9aed4b988))
* **android/i18n:** add soul & rule template gallery strings ([0a28d99](https://github.com/HankHuang0516/realbot/commit/0a28d9979ab846214683a9c3bbc76c62be69e385))
* **android:** add SoulGalleryDialog and RuleGalleryDialog ([5a3142a](https://github.com/HankHuang0516/realbot/commit/5a3142af3f67dfa4c4ba9473a4381f89e04aee24))
* **skill-templates:** add structural validation to contribute endpoint ([891327d](https://github.com/HankHuang0516/realbot/commit/891327dc02dbd3d2a8bbbf254d596cdb33fca3ed))
* **info:** add 實用案例 category with Claude x OpenClaw guide ([94475ea](https://github.com/HankHuang0516/realbot/commit/94475eaf8c8f0cf9cc2068d6edff14b9036f136d))
* **skill-templates:** auto-approve pipeline + admin contributions UI ([5f94ea1](https://github.com/HankHuang0516/realbot/commit/5f94ea13291d6b0d4f12e563d8451402452b09b7))
* **channel:** push NAME_CHANGED to channel bots immediately on rename ([d7992fc](https://github.com/HankHuang0516/realbot/commit/d7992fceb50ce615887ed3fe5e5e54c4306be7e9))
* **android:** wire SoulGalleryDialog and RuleGalleryDialog into add dialogs ([74898b3](https://github.com/HankHuang0516/realbot/commit/74898b3d527990ea769e7f2d3ac8d32a07df9c38))

# [1.3.0](https://github.com/HankHuang0516/realbot/compare/v1.2.0...v1.3.0) (2026-03-07)


### Bug Fixes

* **android:** add name/description/ruleType to SkillTemplate and fix gallery dialogs ([e0a79b7](https://github.com/HankHuang0516/realbot/commit/e0a79b76503d36e21e7dc28246e940b27791492b))
* **bind:** await single-device save after binding to prevent race condition ([811b3e9](https://github.com/HankHuang0516/realbot/commit/811b3e9b250f7dee518e1f7f7cdf65c1a8dd94d8))
* **test:** fix reorder-channel test order array size to match device limit ([3103918](https://github.com/HankHuang0516/realbot/commit/31039180cf26e0e5f2db3292bd153be856c541f6))
* **portal:** fix XSS, broken tags, and filter consistency in soul/rule gallery ([0dd30ec](https://github.com/HankHuang0516/realbot/commit/0dd30ec0c8a358594d4c603ed5c92e7b86871226))
* **bind:** make /api/bind handler async to fix await syntax error ([f78d373](https://github.com/HankHuang0516/realbot/commit/f78d373e2826b710adf6a7039604d93e90a627d0))
* **tests:** read TEST_ENTITY_ID from .env in bot-api-response test; add setup_broadcast_webhook.js ([0dc137c](https://github.com/HankHuang0516/realbot/commit/0dc137c85e00de20c74b0c42c7569acbaf117dae))
* **bind:** reset bot-to-bot counter on rebind to prevent stale rate limits ([daea976](https://github.com/HankHuang0516/realbot/commit/daea976e44768dc65eb515d2bff4b5f400385642))
* **test:** shorten NEW_NAME to stay within 20-char server limit ([45a1653](https://github.com/HankHuang0516/realbot/commit/45a165359c4212b2d0851cebbfa20c19f26e81e5))


### Features

* **info:** add deep linking support for guide sub-items ([e16ebb7](https://github.com/HankHuang0516/realbot/commit/e16ebb76d8fdf5d5b53ca117da92c3ea158579f6)), closes [#faq](https://github.com/HankHuang0516/realbot/issues/faq) [#release-notes](https://github.com/HankHuang0516/realbot/issues/release-notes) [#compare](https://github.com/HankHuang0516/realbot/issues/compare)
* **android:** add fetchSoulTemplates/fetchRuleTemplates to MissionViewModel ([1c411fc](https://github.com/HankHuang0516/realbot/commit/1c411fce073055eb743d09c71f5d6ce9aed4b988))
* **android/i18n:** add soul & rule template gallery strings ([0a28d99](https://github.com/HankHuang0516/realbot/commit/0a28d9979ab846214683a9c3bbc76c62be69e385))
* **android:** add SoulGalleryDialog and RuleGalleryDialog ([5a3142a](https://github.com/HankHuang0516/realbot/commit/5a3142af3f67dfa4c4ba9473a4381f89e04aee24))
* **skill-templates:** add structural validation to contribute endpoint ([891327d](https://github.com/HankHuang0516/realbot/commit/891327dc02dbd3d2a8bbbf254d596cdb33fca3ed))
* **info:** add 實用案例 category with Claude x OpenClaw guide ([94475ea](https://github.com/HankHuang0516/realbot/commit/94475eaf8c8f0cf9cc2068d6edff14b9036f136d))
* **skill-templates:** auto-approve pipeline + admin contributions UI ([5f94ea1](https://github.com/HankHuang0516/realbot/commit/5f94ea13291d6b0d4f12e563d8451402452b09b7))
* **channel:** push NAME_CHANGED to channel bots immediately on rename ([d7992fc](https://github.com/HankHuang0516/realbot/commit/d7992fceb50ce615887ed3fe5e5e54c4306be7e9))
* **android:** wire SoulGalleryDialog and RuleGalleryDialog into add dialogs ([74898b3](https://github.com/HankHuang0516/realbot/commit/74898b3d527990ea769e7f2d3ac8d32a07df9c38))

# [1.3.0](https://github.com/HankHuang0516/realbot/compare/v1.2.0...v1.3.0) (2026-03-07)


### Bug Fixes

* **android:** add name/description/ruleType to SkillTemplate and fix gallery dialogs ([e0a79b7](https://github.com/HankHuang0516/realbot/commit/e0a79b76503d36e21e7dc28246e940b27791492b))
* **bind:** await single-device save after binding to prevent race condition ([811b3e9](https://github.com/HankHuang0516/realbot/commit/811b3e9b250f7dee518e1f7f7cdf65c1a8dd94d8))
* **test:** fix reorder-channel test order array size to match device limit ([3103918](https://github.com/HankHuang0516/realbot/commit/31039180cf26e0e5f2db3292bd153be856c541f6))
* **portal:** fix XSS, broken tags, and filter consistency in soul/rule gallery ([0dd30ec](https://github.com/HankHuang0516/realbot/commit/0dd30ec0c8a358594d4c603ed5c92e7b86871226))
* **bind:** make /api/bind handler async to fix await syntax error ([f78d373](https://github.com/HankHuang0516/realbot/commit/f78d373e2826b710adf6a7039604d93e90a627d0))
* **tests:** read TEST_ENTITY_ID from .env in bot-api-response test; add setup_broadcast_webhook.js ([0dc137c](https://github.com/HankHuang0516/realbot/commit/0dc137c85e00de20c74b0c42c7569acbaf117dae))
* **bind:** reset bot-to-bot counter on rebind to prevent stale rate limits ([daea976](https://github.com/HankHuang0516/realbot/commit/daea976e44768dc65eb515d2bff4b5f400385642))
* **test:** shorten NEW_NAME to stay within 20-char server limit ([45a1653](https://github.com/HankHuang0516/realbot/commit/45a165359c4212b2d0851cebbfa20c19f26e81e5))


### Features

* **android:** add fetchSoulTemplates/fetchRuleTemplates to MissionViewModel ([1c411fc](https://github.com/HankHuang0516/realbot/commit/1c411fce073055eb743d09c71f5d6ce9aed4b988))
* **android/i18n:** add soul & rule template gallery strings ([0a28d99](https://github.com/HankHuang0516/realbot/commit/0a28d9979ab846214683a9c3bbc76c62be69e385))
* **android:** add SoulGalleryDialog and RuleGalleryDialog ([5a3142a](https://github.com/HankHuang0516/realbot/commit/5a3142af3f67dfa4c4ba9473a4381f89e04aee24))
* **skill-templates:** add structural validation to contribute endpoint ([891327d](https://github.com/HankHuang0516/realbot/commit/891327dc02dbd3d2a8bbbf254d596cdb33fca3ed))
* **info:** add 實用案例 category with Claude x OpenClaw guide ([94475ea](https://github.com/HankHuang0516/realbot/commit/94475eaf8c8f0cf9cc2068d6edff14b9036f136d))
* **skill-templates:** auto-approve pipeline + admin contributions UI ([5f94ea1](https://github.com/HankHuang0516/realbot/commit/5f94ea13291d6b0d4f12e563d8451402452b09b7))
* **channel:** push NAME_CHANGED to channel bots immediately on rename ([d7992fc](https://github.com/HankHuang0516/realbot/commit/d7992fceb50ce615887ed3fe5e5e54c4306be7e9))
* **android:** wire SoulGalleryDialog and RuleGalleryDialog into add dialogs ([74898b3](https://github.com/HankHuang0516/realbot/commit/74898b3d527990ea769e7f2d3ac8d32a07df9c38))

# [1.3.0](https://github.com/HankHuang0516/realbot/compare/v1.2.0...v1.3.0) (2026-03-07)


### Bug Fixes

* **android:** add name/description/ruleType to SkillTemplate and fix gallery dialogs ([e0a79b7](https://github.com/HankHuang0516/realbot/commit/e0a79b76503d36e21e7dc28246e940b27791492b))
* **bind:** await single-device save after binding to prevent race condition ([811b3e9](https://github.com/HankHuang0516/realbot/commit/811b3e9b250f7dee518e1f7f7cdf65c1a8dd94d8))
* **test:** fix reorder-channel test order array size to match device limit ([3103918](https://github.com/HankHuang0516/realbot/commit/31039180cf26e0e5f2db3292bd153be856c541f6))
* **portal:** fix XSS, broken tags, and filter consistency in soul/rule gallery ([0dd30ec](https://github.com/HankHuang0516/realbot/commit/0dd30ec0c8a358594d4c603ed5c92e7b86871226))
* **bind:** make /api/bind handler async to fix await syntax error ([f78d373](https://github.com/HankHuang0516/realbot/commit/f78d373e2826b710adf6a7039604d93e90a627d0))
* **bind:** reset bot-to-bot counter on rebind to prevent stale rate limits ([daea976](https://github.com/HankHuang0516/realbot/commit/daea976e44768dc65eb515d2bff4b5f400385642))
* **test:** shorten NEW_NAME to stay within 20-char server limit ([45a1653](https://github.com/HankHuang0516/realbot/commit/45a165359c4212b2d0851cebbfa20c19f26e81e5))


### Features

* **android:** add fetchSoulTemplates/fetchRuleTemplates to MissionViewModel ([1c411fc](https://github.com/HankHuang0516/realbot/commit/1c411fce073055eb743d09c71f5d6ce9aed4b988))
* **android/i18n:** add soul & rule template gallery strings ([0a28d99](https://github.com/HankHuang0516/realbot/commit/0a28d9979ab846214683a9c3bbc76c62be69e385))
* **android:** add SoulGalleryDialog and RuleGalleryDialog ([5a3142a](https://github.com/HankHuang0516/realbot/commit/5a3142af3f67dfa4c4ba9473a4381f89e04aee24))
* **skill-templates:** add structural validation to contribute endpoint ([891327d](https://github.com/HankHuang0516/realbot/commit/891327dc02dbd3d2a8bbbf254d596cdb33fca3ed))
* **info:** add 實用案例 category with Claude x OpenClaw guide ([94475ea](https://github.com/HankHuang0516/realbot/commit/94475eaf8c8f0cf9cc2068d6edff14b9036f136d))
* **skill-templates:** auto-approve pipeline + admin contributions UI ([5f94ea1](https://github.com/HankHuang0516/realbot/commit/5f94ea13291d6b0d4f12e563d8451402452b09b7))
* **channel:** push NAME_CHANGED to channel bots immediately on rename ([d7992fc](https://github.com/HankHuang0516/realbot/commit/d7992fceb50ce615887ed3fe5e5e54c4306be7e9))
* **android:** wire SoulGalleryDialog and RuleGalleryDialog into add dialogs ([74898b3](https://github.com/HankHuang0516/realbot/commit/74898b3d527990ea769e7f2d3ac8d32a07df9c38))

# [1.3.0](https://github.com/HankHuang0516/realbot/compare/v1.2.0...v1.3.0) (2026-03-07)


### Bug Fixes

* **android:** add name/description/ruleType to SkillTemplate and fix gallery dialogs ([e0a79b7](https://github.com/HankHuang0516/realbot/commit/e0a79b76503d36e21e7dc28246e940b27791492b))
* **bind:** await single-device save after binding to prevent race condition ([811b3e9](https://github.com/HankHuang0516/realbot/commit/811b3e9b250f7dee518e1f7f7cdf65c1a8dd94d8))
* **test:** fix reorder-channel test order array size to match device limit ([3103918](https://github.com/HankHuang0516/realbot/commit/31039180cf26e0e5f2db3292bd153be856c541f6))
* **portal:** fix XSS, broken tags, and filter consistency in soul/rule gallery ([0dd30ec](https://github.com/HankHuang0516/realbot/commit/0dd30ec0c8a358594d4c603ed5c92e7b86871226))
* **bind:** reset bot-to-bot counter on rebind to prevent stale rate limits ([daea976](https://github.com/HankHuang0516/realbot/commit/daea976e44768dc65eb515d2bff4b5f400385642))
* **test:** shorten NEW_NAME to stay within 20-char server limit ([45a1653](https://github.com/HankHuang0516/realbot/commit/45a165359c4212b2d0851cebbfa20c19f26e81e5))


### Features

* **android:** add fetchSoulTemplates/fetchRuleTemplates to MissionViewModel ([1c411fc](https://github.com/HankHuang0516/realbot/commit/1c411fce073055eb743d09c71f5d6ce9aed4b988))
* **android/i18n:** add soul & rule template gallery strings ([0a28d99](https://github.com/HankHuang0516/realbot/commit/0a28d9979ab846214683a9c3bbc76c62be69e385))
* **android:** add SoulGalleryDialog and RuleGalleryDialog ([5a3142a](https://github.com/HankHuang0516/realbot/commit/5a3142af3f67dfa4c4ba9473a4381f89e04aee24))
* **skill-templates:** add structural validation to contribute endpoint ([891327d](https://github.com/HankHuang0516/realbot/commit/891327dc02dbd3d2a8bbbf254d596cdb33fca3ed))
* **info:** add 實用案例 category with Claude x OpenClaw guide ([94475ea](https://github.com/HankHuang0516/realbot/commit/94475eaf8c8f0cf9cc2068d6edff14b9036f136d))
* **skill-templates:** auto-approve pipeline + admin contributions UI ([5f94ea1](https://github.com/HankHuang0516/realbot/commit/5f94ea13291d6b0d4f12e563d8451402452b09b7))
* **channel:** push NAME_CHANGED to channel bots immediately on rename ([d7992fc](https://github.com/HankHuang0516/realbot/commit/d7992fceb50ce615887ed3fe5e5e54c4306be7e9))
* **android:** wire SoulGalleryDialog and RuleGalleryDialog into add dialogs ([74898b3](https://github.com/HankHuang0516/realbot/commit/74898b3d527990ea769e7f2d3ac8d32a07df9c38))

# [1.3.0](https://github.com/HankHuang0516/realbot/compare/v1.2.0...v1.3.0) (2026-03-07)


### Bug Fixes

* **android:** add name/description/ruleType to SkillTemplate and fix gallery dialogs ([e0a79b7](https://github.com/HankHuang0516/realbot/commit/e0a79b76503d36e21e7dc28246e940b27791492b))
* **bind:** await single-device save after binding to prevent race condition ([811b3e9](https://github.com/HankHuang0516/realbot/commit/811b3e9b250f7dee518e1f7f7cdf65c1a8dd94d8))
* **test:** fix reorder-channel test order array size to match device limit ([3103918](https://github.com/HankHuang0516/realbot/commit/31039180cf26e0e5f2db3292bd153be856c541f6))
* **portal:** fix XSS, broken tags, and filter consistency in soul/rule gallery ([0dd30ec](https://github.com/HankHuang0516/realbot/commit/0dd30ec0c8a358594d4c603ed5c92e7b86871226))
* **test:** shorten NEW_NAME to stay within 20-char server limit ([45a1653](https://github.com/HankHuang0516/realbot/commit/45a165359c4212b2d0851cebbfa20c19f26e81e5))


### Features

* **android:** add fetchSoulTemplates/fetchRuleTemplates to MissionViewModel ([1c411fc](https://github.com/HankHuang0516/realbot/commit/1c411fce073055eb743d09c71f5d6ce9aed4b988))
* **android/i18n:** add soul & rule template gallery strings ([0a28d99](https://github.com/HankHuang0516/realbot/commit/0a28d9979ab846214683a9c3bbc76c62be69e385))
* **android:** add SoulGalleryDialog and RuleGalleryDialog ([5a3142a](https://github.com/HankHuang0516/realbot/commit/5a3142af3f67dfa4c4ba9473a4381f89e04aee24))
* **skill-templates:** add structural validation to contribute endpoint ([891327d](https://github.com/HankHuang0516/realbot/commit/891327dc02dbd3d2a8bbbf254d596cdb33fca3ed))
* **info:** add 實用案例 category with Claude x OpenClaw guide ([94475ea](https://github.com/HankHuang0516/realbot/commit/94475eaf8c8f0cf9cc2068d6edff14b9036f136d))
* **skill-templates:** auto-approve pipeline + admin contributions UI ([5f94ea1](https://github.com/HankHuang0516/realbot/commit/5f94ea13291d6b0d4f12e563d8451402452b09b7))
* **channel:** push NAME_CHANGED to channel bots immediately on rename ([d7992fc](https://github.com/HankHuang0516/realbot/commit/d7992fceb50ce615887ed3fe5e5e54c4306be7e9))
* **android:** wire SoulGalleryDialog and RuleGalleryDialog into add dialogs ([74898b3](https://github.com/HankHuang0516/realbot/commit/74898b3d527990ea769e7f2d3ac8d32a07df9c38))

# [1.3.0](https://github.com/HankHuang0516/realbot/compare/v1.2.0...v1.3.0) (2026-03-07)


### Bug Fixes

* **android:** add name/description/ruleType to SkillTemplate and fix gallery dialogs ([e0a79b7](https://github.com/HankHuang0516/realbot/commit/e0a79b76503d36e21e7dc28246e940b27791492b))
* **bind:** await single-device save after binding to prevent race condition ([811b3e9](https://github.com/HankHuang0516/realbot/commit/811b3e9b250f7dee518e1f7f7cdf65c1a8dd94d8))
* **test:** fix reorder-channel test order array size to match device limit ([3103918](https://github.com/HankHuang0516/realbot/commit/31039180cf26e0e5f2db3292bd153be856c541f6))
* **portal:** fix XSS, broken tags, and filter consistency in soul/rule gallery ([0dd30ec](https://github.com/HankHuang0516/realbot/commit/0dd30ec0c8a358594d4c603ed5c92e7b86871226))
* **test:** shorten NEW_NAME to stay within 20-char server limit ([45a1653](https://github.com/HankHuang0516/realbot/commit/45a165359c4212b2d0851cebbfa20c19f26e81e5))


### Features

* **android:** add fetchSoulTemplates/fetchRuleTemplates to MissionViewModel ([1c411fc](https://github.com/HankHuang0516/realbot/commit/1c411fce073055eb743d09c71f5d6ce9aed4b988))
* **android/i18n:** add soul & rule template gallery strings ([0a28d99](https://github.com/HankHuang0516/realbot/commit/0a28d9979ab846214683a9c3bbc76c62be69e385))
* **android:** add SoulGalleryDialog and RuleGalleryDialog ([5a3142a](https://github.com/HankHuang0516/realbot/commit/5a3142af3f67dfa4c4ba9473a4381f89e04aee24))
* **skill-templates:** add structural validation to contribute endpoint ([891327d](https://github.com/HankHuang0516/realbot/commit/891327dc02dbd3d2a8bbbf254d596cdb33fca3ed))
* **info:** add 實用案例 category with Claude x OpenClaw guide ([94475ea](https://github.com/HankHuang0516/realbot/commit/94475eaf8c8f0cf9cc2068d6edff14b9036f136d))
* **skill-templates:** auto-approve pipeline + admin contributions UI ([5f94ea1](https://github.com/HankHuang0516/realbot/commit/5f94ea13291d6b0d4f12e563d8451402452b09b7))
* **channel:** push NAME_CHANGED to channel bots immediately on rename ([d7992fc](https://github.com/HankHuang0516/realbot/commit/d7992fceb50ce615887ed3fe5e5e54c4306be7e9))
* **android:** wire SoulGalleryDialog and RuleGalleryDialog into add dialogs ([74898b3](https://github.com/HankHuang0516/realbot/commit/74898b3d527990ea769e7f2d3ac8d32a07df9c38))

# [1.3.0](https://github.com/HankHuang0516/realbot/compare/v1.2.0...v1.3.0) (2026-03-07)


### Bug Fixes

* **android:** add name/description/ruleType to SkillTemplate and fix gallery dialogs ([e0a79b7](https://github.com/HankHuang0516/realbot/commit/e0a79b76503d36e21e7dc28246e940b27791492b))
* **bind:** await single-device save after binding to prevent race condition ([811b3e9](https://github.com/HankHuang0516/realbot/commit/811b3e9b250f7dee518e1f7f7cdf65c1a8dd94d8))
* **test:** fix reorder-channel test order array size to match device limit ([3103918](https://github.com/HankHuang0516/realbot/commit/31039180cf26e0e5f2db3292bd153be856c541f6))
* **portal:** fix XSS, broken tags, and filter consistency in soul/rule gallery ([0dd30ec](https://github.com/HankHuang0516/realbot/commit/0dd30ec0c8a358594d4c603ed5c92e7b86871226))
* **test:** shorten NEW_NAME to stay within 20-char server limit ([45a1653](https://github.com/HankHuang0516/realbot/commit/45a165359c4212b2d0851cebbfa20c19f26e81e5))


### Features

* **android:** add fetchSoulTemplates/fetchRuleTemplates to MissionViewModel ([1c411fc](https://github.com/HankHuang0516/realbot/commit/1c411fce073055eb743d09c71f5d6ce9aed4b988))
* **android/i18n:** add soul & rule template gallery strings ([0a28d99](https://github.com/HankHuang0516/realbot/commit/0a28d9979ab846214683a9c3bbc76c62be69e385))
* **android:** add SoulGalleryDialog and RuleGalleryDialog ([5a3142a](https://github.com/HankHuang0516/realbot/commit/5a3142af3f67dfa4c4ba9473a4381f89e04aee24))
* **skill-templates:** add structural validation to contribute endpoint ([891327d](https://github.com/HankHuang0516/realbot/commit/891327dc02dbd3d2a8bbbf254d596cdb33fca3ed))
* **info:** add 實用案例 category with Claude x OpenClaw guide ([94475ea](https://github.com/HankHuang0516/realbot/commit/94475eaf8c8f0cf9cc2068d6edff14b9036f136d))
* **skill-templates:** auto-approve pipeline + admin contributions UI ([5f94ea1](https://github.com/HankHuang0516/realbot/commit/5f94ea13291d6b0d4f12e563d8451402452b09b7))
* **channel:** push NAME_CHANGED to channel bots immediately on rename ([d7992fc](https://github.com/HankHuang0516/realbot/commit/d7992fceb50ce615887ed3fe5e5e54c4306be7e9))
* **android:** wire SoulGalleryDialog and RuleGalleryDialog into add dialogs ([74898b3](https://github.com/HankHuang0516/realbot/commit/74898b3d527990ea769e7f2d3ac8d32a07df9c38))

# [1.3.0](https://github.com/HankHuang0516/realbot/compare/v1.2.0...v1.3.0) (2026-03-07)


### Bug Fixes

* **android:** add name/description/ruleType to SkillTemplate and fix gallery dialogs ([e0a79b7](https://github.com/HankHuang0516/realbot/commit/e0a79b76503d36e21e7dc28246e940b27791492b))
* **bind:** await single-device save after binding to prevent race condition ([811b3e9](https://github.com/HankHuang0516/realbot/commit/811b3e9b250f7dee518e1f7f7cdf65c1a8dd94d8))
* **test:** fix reorder-channel test order array size to match device limit ([3103918](https://github.com/HankHuang0516/realbot/commit/31039180cf26e0e5f2db3292bd153be856c541f6))
* **portal:** fix XSS, broken tags, and filter consistency in soul/rule gallery ([0dd30ec](https://github.com/HankHuang0516/realbot/commit/0dd30ec0c8a358594d4c603ed5c92e7b86871226))
* **test:** shorten NEW_NAME to stay within 20-char server limit ([45a1653](https://github.com/HankHuang0516/realbot/commit/45a165359c4212b2d0851cebbfa20c19f26e81e5))


### Features

* **android:** add fetchSoulTemplates/fetchRuleTemplates to MissionViewModel ([1c411fc](https://github.com/HankHuang0516/realbot/commit/1c411fce073055eb743d09c71f5d6ce9aed4b988))
* **android/i18n:** add soul & rule template gallery strings ([0a28d99](https://github.com/HankHuang0516/realbot/commit/0a28d9979ab846214683a9c3bbc76c62be69e385))
* **android:** add SoulGalleryDialog and RuleGalleryDialog ([5a3142a](https://github.com/HankHuang0516/realbot/commit/5a3142af3f67dfa4c4ba9473a4381f89e04aee24))
* **skill-templates:** add structural validation to contribute endpoint ([891327d](https://github.com/HankHuang0516/realbot/commit/891327dc02dbd3d2a8bbbf254d596cdb33fca3ed))
* **info:** add 實用案例 category with Claude x OpenClaw guide ([94475ea](https://github.com/HankHuang0516/realbot/commit/94475eaf8c8f0cf9cc2068d6edff14b9036f136d))
* **skill-templates:** auto-approve pipeline + admin contributions UI ([5f94ea1](https://github.com/HankHuang0516/realbot/commit/5f94ea13291d6b0d4f12e563d8451402452b09b7))
* **channel:** push NAME_CHANGED to channel bots immediately on rename ([d7992fc](https://github.com/HankHuang0516/realbot/commit/d7992fceb50ce615887ed3fe5e5e54c4306be7e9))
* **android:** wire SoulGalleryDialog and RuleGalleryDialog into add dialogs ([74898b3](https://github.com/HankHuang0516/realbot/commit/74898b3d527990ea769e7f2d3ac8d32a07df9c38))

# [1.3.0](https://github.com/HankHuang0516/realbot/compare/v1.2.0...v1.3.0) (2026-03-07)


### Bug Fixes

* **android:** add name/description/ruleType to SkillTemplate and fix gallery dialogs ([e0a79b7](https://github.com/HankHuang0516/realbot/commit/e0a79b76503d36e21e7dc28246e940b27791492b))
* **bind:** await single-device save after binding to prevent race condition ([811b3e9](https://github.com/HankHuang0516/realbot/commit/811b3e9b250f7dee518e1f7f7cdf65c1a8dd94d8))
* **test:** fix reorder-channel test order array size to match device limit ([3103918](https://github.com/HankHuang0516/realbot/commit/31039180cf26e0e5f2db3292bd153be856c541f6))
* **portal:** fix XSS, broken tags, and filter consistency in soul/rule gallery ([0dd30ec](https://github.com/HankHuang0516/realbot/commit/0dd30ec0c8a358594d4c603ed5c92e7b86871226))
* **test:** shorten NEW_NAME to stay within 20-char server limit ([45a1653](https://github.com/HankHuang0516/realbot/commit/45a165359c4212b2d0851cebbfa20c19f26e81e5))


### Features

* **android:** add fetchSoulTemplates/fetchRuleTemplates to MissionViewModel ([1c411fc](https://github.com/HankHuang0516/realbot/commit/1c411fce073055eb743d09c71f5d6ce9aed4b988))
* **android/i18n:** add soul & rule template gallery strings ([0a28d99](https://github.com/HankHuang0516/realbot/commit/0a28d9979ab846214683a9c3bbc76c62be69e385))
* **android:** add SoulGalleryDialog and RuleGalleryDialog ([5a3142a](https://github.com/HankHuang0516/realbot/commit/5a3142af3f67dfa4c4ba9473a4381f89e04aee24))
* **skill-templates:** add structural validation to contribute endpoint ([891327d](https://github.com/HankHuang0516/realbot/commit/891327dc02dbd3d2a8bbbf254d596cdb33fca3ed))
* **skill-templates:** auto-approve pipeline + admin contributions UI ([5f94ea1](https://github.com/HankHuang0516/realbot/commit/5f94ea13291d6b0d4f12e563d8451402452b09b7))
* **channel:** push NAME_CHANGED to channel bots immediately on rename ([d7992fc](https://github.com/HankHuang0516/realbot/commit/d7992fceb50ce615887ed3fe5e5e54c4306be7e9))
* **android:** wire SoulGalleryDialog and RuleGalleryDialog into add dialogs ([74898b3](https://github.com/HankHuang0516/realbot/commit/74898b3d527990ea769e7f2d3ac8d32a07df9c38))

# [1.3.0](https://github.com/HankHuang0516/realbot/compare/v1.2.0...v1.3.0) (2026-03-07)


### Bug Fixes

* **android:** add name/description/ruleType to SkillTemplate and fix gallery dialogs ([e0a79b7](https://github.com/HankHuang0516/realbot/commit/e0a79b76503d36e21e7dc28246e940b27791492b))
* **bind:** await single-device save after binding to prevent race condition ([811b3e9](https://github.com/HankHuang0516/realbot/commit/811b3e9b250f7dee518e1f7f7cdf65c1a8dd94d8))
* **test:** fix reorder-channel test order array size to match device limit ([3103918](https://github.com/HankHuang0516/realbot/commit/31039180cf26e0e5f2db3292bd153be856c541f6))
* **portal:** fix XSS, broken tags, and filter consistency in soul/rule gallery ([0dd30ec](https://github.com/HankHuang0516/realbot/commit/0dd30ec0c8a358594d4c603ed5c92e7b86871226))
* **test:** shorten NEW_NAME to stay within 20-char server limit ([45a1653](https://github.com/HankHuang0516/realbot/commit/45a165359c4212b2d0851cebbfa20c19f26e81e5))


### Features

* **android:** add fetchSoulTemplates/fetchRuleTemplates to MissionViewModel ([1c411fc](https://github.com/HankHuang0516/realbot/commit/1c411fce073055eb743d09c71f5d6ce9aed4b988))
* **android/i18n:** add soul & rule template gallery strings ([0a28d99](https://github.com/HankHuang0516/realbot/commit/0a28d9979ab846214683a9c3bbc76c62be69e385))
* **android:** add SoulGalleryDialog and RuleGalleryDialog ([5a3142a](https://github.com/HankHuang0516/realbot/commit/5a3142af3f67dfa4c4ba9473a4381f89e04aee24))
* **skill-templates:** auto-approve pipeline + admin contributions UI ([5f94ea1](https://github.com/HankHuang0516/realbot/commit/5f94ea13291d6b0d4f12e563d8451402452b09b7))
* **channel:** push NAME_CHANGED to channel bots immediately on rename ([d7992fc](https://github.com/HankHuang0516/realbot/commit/d7992fceb50ce615887ed3fe5e5e54c4306be7e9))
* **android:** wire SoulGalleryDialog and RuleGalleryDialog into add dialogs ([74898b3](https://github.com/HankHuang0516/realbot/commit/74898b3d527990ea769e7f2d3ac8d32a07df9c38))

# [1.3.0](https://github.com/HankHuang0516/realbot/compare/v1.2.0...v1.3.0) (2026-03-07)


### Bug Fixes

* **test:** fix reorder-channel test order array size to match device limit ([3103918](https://github.com/HankHuang0516/realbot/commit/31039180cf26e0e5f2db3292bd153be856c541f6))
* **portal:** fix XSS, broken tags, and filter consistency in soul/rule gallery ([0dd30ec](https://github.com/HankHuang0516/realbot/commit/0dd30ec0c8a358594d4c603ed5c92e7b86871226))
* **test:** shorten NEW_NAME to stay within 20-char server limit ([45a1653](https://github.com/HankHuang0516/realbot/commit/45a165359c4212b2d0851cebbfa20c19f26e81e5))


### Features

* **android:** add fetchSoulTemplates/fetchRuleTemplates to MissionViewModel ([1c411fc](https://github.com/HankHuang0516/realbot/commit/1c411fce073055eb743d09c71f5d6ce9aed4b988))
* **android/i18n:** add soul & rule template gallery strings ([0a28d99](https://github.com/HankHuang0516/realbot/commit/0a28d9979ab846214683a9c3bbc76c62be69e385))
* **skill-templates:** auto-approve pipeline + admin contributions UI ([5f94ea1](https://github.com/HankHuang0516/realbot/commit/5f94ea13291d6b0d4f12e563d8451402452b09b7))
* **channel:** push NAME_CHANGED to channel bots immediately on rename ([d7992fc](https://github.com/HankHuang0516/realbot/commit/d7992fceb50ce615887ed3fe5e5e54c4306be7e9))

# [1.3.0](https://github.com/HankHuang0516/realbot/compare/v1.2.0...v1.3.0) (2026-03-07)


### Bug Fixes

* **test:** fix reorder-channel test order array size to match device limit ([3103918](https://github.com/HankHuang0516/realbot/commit/31039180cf26e0e5f2db3292bd153be856c541f6))
* **portal:** fix XSS, broken tags, and filter consistency in soul/rule gallery ([0dd30ec](https://github.com/HankHuang0516/realbot/commit/0dd30ec0c8a358594d4c603ed5c92e7b86871226))
* **test:** shorten NEW_NAME to stay within 20-char server limit ([45a1653](https://github.com/HankHuang0516/realbot/commit/45a165359c4212b2d0851cebbfa20c19f26e81e5))


### Features

* **android:** add fetchSoulTemplates/fetchRuleTemplates to MissionViewModel ([1c411fc](https://github.com/HankHuang0516/realbot/commit/1c411fce073055eb743d09c71f5d6ce9aed4b988))
* **android/i18n:** add soul & rule template gallery strings ([0a28d99](https://github.com/HankHuang0516/realbot/commit/0a28d9979ab846214683a9c3bbc76c62be69e385))
* **skill-templates:** auto-approve pipeline + admin contributions UI ([5f94ea1](https://github.com/HankHuang0516/realbot/commit/5f94ea13291d6b0d4f12e563d8451402452b09b7))
* **channel:** push NAME_CHANGED to channel bots immediately on rename ([d7992fc](https://github.com/HankHuang0516/realbot/commit/d7992fceb50ce615887ed3fe5e5e54c4306be7e9))

# [1.3.0](https://github.com/HankHuang0516/realbot/compare/v1.2.0...v1.3.0) (2026-03-07)


### Bug Fixes

* **test:** fix reorder-channel test order array size to match device limit ([3103918](https://github.com/HankHuang0516/realbot/commit/31039180cf26e0e5f2db3292bd153be856c541f6))
* **portal:** fix XSS, broken tags, and filter consistency in soul/rule gallery ([0dd30ec](https://github.com/HankHuang0516/realbot/commit/0dd30ec0c8a358594d4c603ed5c92e7b86871226))


### Features

* **android/i18n:** add soul & rule template gallery strings ([0a28d99](https://github.com/HankHuang0516/realbot/commit/0a28d9979ab846214683a9c3bbc76c62be69e385))
* **skill-templates:** auto-approve pipeline + admin contributions UI ([5f94ea1](https://github.com/HankHuang0516/realbot/commit/5f94ea13291d6b0d4f12e563d8451402452b09b7))
* **channel:** push NAME_CHANGED to channel bots immediately on rename ([d7992fc](https://github.com/HankHuang0516/realbot/commit/d7992fceb50ce615887ed3fe5e5e54c4306be7e9))

# [1.3.0](https://github.com/HankHuang0516/realbot/compare/v1.2.0...v1.3.0) (2026-03-07)


### Bug Fixes

* **test:** fix reorder-channel test order array size to match device limit ([3103918](https://github.com/HankHuang0516/realbot/commit/31039180cf26e0e5f2db3292bd153be856c541f6))
* **portal:** fix XSS, broken tags, and filter consistency in soul/rule gallery ([0dd30ec](https://github.com/HankHuang0516/realbot/commit/0dd30ec0c8a358594d4c603ed5c92e7b86871226))


### Features

* **android/i18n:** add soul & rule template gallery strings ([0a28d99](https://github.com/HankHuang0516/realbot/commit/0a28d9979ab846214683a9c3bbc76c62be69e385))
* **skill-templates:** auto-approve pipeline + admin contributions UI ([5f94ea1](https://github.com/HankHuang0516/realbot/commit/5f94ea13291d6b0d4f12e563d8451402452b09b7))

# [1.2.0](https://github.com/HankHuang0516/realbot/compare/v1.1.0...v1.2.0) (2026-03-07)


### Bug Fixes

* **tests:** add missing mock methods to Jest test files ([4e9a479](https://github.com/HankHuang0516/realbot/commit/4e9a479551361abbcb18f986563d97ba93750dcd))


### Features

* **portal:** add soul & rule template gallery to mission page ([2535f30](https://github.com/HankHuang0516/realbot/commit/2535f30c35fa7916e88e3865ca3b81a193d65ad9))

# [1.1.0](https://github.com/HankHuang0516/realbot/compare/v1.0.0...v1.1.0) (2026-03-07)


### Bug Fixes

* **channel:** add channel bot parity for schedule and entity reorder ([10b9535](https://github.com/HankHuang0516/realbot/commit/10b9535877e395133c8b71f26c7f6dd8ce2fa675))
* **api:** add PATCH to apiCall body serialization ([c317b33](https://github.com/HankHuang0516/realbot/commit/c317b33f6bbc41b8879280a2fbabff2f452a0238))
* **api:** add try/catch and docs to soul/rule-templates data loading ([ccd7070](https://github.com/HankHuang0516/realbot/commit/ccd707008d8f2bfb34456ae58c5ff408ff892ce4))
* **scheduler:** allow entityId up to device limit (not hardcoded 0-3) ([160a061](https://github.com/HankHuang0516/realbot/commit/160a061de9a7f947a4d09680101f878b4a068bf9))
* **ai-support:** handle object-shaped device.entities in fetchDeviceContext ([10b8fcd](https://github.com/HankHuang0516/realbot/commit/10b8fcdd9a15be57f929a5c16380321e706d8b31))
* **mission:** move channel callback wiring after channelModule init ([783d726](https://github.com/HankHuang0516/realbot/commit/783d7261c9188396ed0376dba9b043f1f230cd60))
* resolve issues [#145](https://github.com/HankHuang0516/realbot/issues/145) [#146](https://github.com/HankHuang0516/realbot/issues/146)-149 [#150](https://github.com/HankHuang0516/realbot/issues/150) — skill templates, AI chat fixes ([c532245](https://github.com/HankHuang0516/realbot/commit/c532245ab645b27207e8bf0523f22ebc145b0da4)), closes [#146-149](https://github.com/HankHuang0516/realbot/issues/146-149) [#146-149](https://github.com/HankHuang0516/realbot/issues/146-149)
* **channel:** route debug messages through serverLog for /api/logs visibility ([ae1e5fe](https://github.com/HankHuang0516/realbot/commit/ae1e5fe1762a5a32808ab1cb72ebeb131acd573e))
* **android:** show requiredVars warning when selecting skill template ([95287bb](https://github.com/HankHuang0516/realbot/commit/95287bb807d39e261d77348582f7065dbf6c4ef7))
* **test:** use correct reorder endpoint /api/device/reorder-entities ([abb1eb3](https://github.com/HankHuang0516/realbot/commit/abb1eb3b031a293dd01be34080471b00a35a799b))


### Features

* **channel:** add [BIND]/[PUSH] debug messages to channel-api.js ([aa9a7b7](https://github.com/HankHuang0516/realbot/commit/aa9a7b73378c7d4e44ec0f58d833e2a6c5b27300))
* **skills:** add 3 popular community skill templates ([559bce0](https://github.com/HankHuang0516/realbot/commit/559bce00ee19a2e05fd339cfc523a04bb0cf44e9))
* **mission:** add channel bot support for mission notify (Bot Push Parity Rule) ([a9b4b16](https://github.com/HankHuang0516/realbot/commit/a9b4b16fe5827cbe6df3f5b4dc2c5f79f6d49df7))
* **skill-templates:** add community skill contribution API + review flow ([375961c](https://github.com/HankHuang0516/realbot/commit/375961c10791ad9c49013a0d790ce388dcdeefee))
* **channel:** add eclaw_context to channel bot push (v1.0.17 parity) ([a43ac93](https://github.com/HankHuang0516/realbot/commit/a43ac93b0df0d3609e7e697153cfa2512dd66538))
* **schedule:** add Enable/Disable toggle + fix missing i18n keys ([6c6a96c](https://github.com/HankHuang0516/realbot/commit/6c6a96c2fb8151b2bec5004c84d2f2bd40e36583))
* **api:** add GET /api/soul-templates and /api/rule-templates endpoints ([47f24d4](https://github.com/HankHuang0516/realbot/commit/47f24d473d32d3ed98492066ebdfa855daad101c))
* **i18n:** add missing i18n keys across Web Portal and Android App ([60fad93](https://github.com/HankHuang0516/realbot/commit/60fad933ba7e9ac18da333940a58c34db4874aa2))
* **data:** add soul-templates.json and rule-templates.json with starter templates ([0affa7b](https://github.com/HankHuang0516/realbot/commit/0affa7b7aa272895b6058b5bad1129e442f3d82b))
* **portal:** always show requiredVars dialog with read/overwrite UX ([42e5e47](https://github.com/HankHuang0516/realbot/commit/42e5e4774373f1bb764c32e6dfacdae0c7b47ae9))
* **channel:** auto-select entity slot + all-slots-full error ([49b29fa](https://github.com/HankHuang0516/realbot/commit/49b29fa0bd27fd66c3613d10d9e2e6b3a3fa4779))
* **ai-chat:** disable image upload button while vision is unavailable ([334d618](https://github.com/HankHuang0516/realbot/commit/334d6182f8b2212fe395bdc0254c3d6bb8a50ac5))
* **ai-support:** inject device diagnostics into Claude chat context ([eb621dd](https://github.com/HankHuang0516/realbot/commit/eb621dd02edb1c7724174d7b5a162f468d427912))
* **skills:** replace placeholder templates with verified real repos ([9384751](https://github.com/HankHuang0516/realbot/commit/9384751ff9c288225508c072ced4432f79e1fd09))
* **ui:** replace skill template chips/spinner with Gallery dialog ([b1f2782](https://github.com/HankHuang0516/realbot/commit/b1f27826d728c9fa7f97cb601d9d928d34077493))
* **logging:** route all debug messages through serverLog for /api/logs visibility ([be8ad19](https://github.com/HankHuang0516/realbot/commit/be8ad19661fad806c5932c53790e5ce1f5f97458))

# [1.1.0](https://github.com/HankHuang0516/realbot/compare/v1.0.0...v1.1.0) (2026-03-07)


### Bug Fixes

* **channel:** add channel bot parity for schedule and entity reorder ([10b9535](https://github.com/HankHuang0516/realbot/commit/10b9535877e395133c8b71f26c7f6dd8ce2fa675))
* **api:** add PATCH to apiCall body serialization ([c317b33](https://github.com/HankHuang0516/realbot/commit/c317b33f6bbc41b8879280a2fbabff2f452a0238))
* **scheduler:** allow entityId up to device limit (not hardcoded 0-3) ([160a061](https://github.com/HankHuang0516/realbot/commit/160a061de9a7f947a4d09680101f878b4a068bf9))
* **ai-support:** handle object-shaped device.entities in fetchDeviceContext ([10b8fcd](https://github.com/HankHuang0516/realbot/commit/10b8fcdd9a15be57f929a5c16380321e706d8b31))
* **mission:** move channel callback wiring after channelModule init ([783d726](https://github.com/HankHuang0516/realbot/commit/783d7261c9188396ed0376dba9b043f1f230cd60))
* resolve issues [#145](https://github.com/HankHuang0516/realbot/issues/145) [#146](https://github.com/HankHuang0516/realbot/issues/146)-149 [#150](https://github.com/HankHuang0516/realbot/issues/150) — skill templates, AI chat fixes ([c532245](https://github.com/HankHuang0516/realbot/commit/c532245ab645b27207e8bf0523f22ebc145b0da4)), closes [#146-149](https://github.com/HankHuang0516/realbot/issues/146-149) [#146-149](https://github.com/HankHuang0516/realbot/issues/146-149)
* **channel:** route debug messages through serverLog for /api/logs visibility ([ae1e5fe](https://github.com/HankHuang0516/realbot/commit/ae1e5fe1762a5a32808ab1cb72ebeb131acd573e))
* **android:** show requiredVars warning when selecting skill template ([95287bb](https://github.com/HankHuang0516/realbot/commit/95287bb807d39e261d77348582f7065dbf6c4ef7))


### Features

* **channel:** add [BIND]/[PUSH] debug messages to channel-api.js ([aa9a7b7](https://github.com/HankHuang0516/realbot/commit/aa9a7b73378c7d4e44ec0f58d833e2a6c5b27300))
* **skills:** add 3 popular community skill templates ([559bce0](https://github.com/HankHuang0516/realbot/commit/559bce00ee19a2e05fd339cfc523a04bb0cf44e9))
* **mission:** add channel bot support for mission notify (Bot Push Parity Rule) ([a9b4b16](https://github.com/HankHuang0516/realbot/commit/a9b4b16fe5827cbe6df3f5b4dc2c5f79f6d49df7))
* **skill-templates:** add community skill contribution API + review flow ([375961c](https://github.com/HankHuang0516/realbot/commit/375961c10791ad9c49013a0d790ce388dcdeefee))
* **channel:** add eclaw_context to channel bot push (v1.0.17 parity) ([a43ac93](https://github.com/HankHuang0516/realbot/commit/a43ac93b0df0d3609e7e697153cfa2512dd66538))
* **schedule:** add Enable/Disable toggle + fix missing i18n keys ([6c6a96c](https://github.com/HankHuang0516/realbot/commit/6c6a96c2fb8151b2bec5004c84d2f2bd40e36583))
* **api:** add GET /api/soul-templates and /api/rule-templates endpoints ([47f24d4](https://github.com/HankHuang0516/realbot/commit/47f24d473d32d3ed98492066ebdfa855daad101c))
* **i18n:** add missing i18n keys across Web Portal and Android App ([60fad93](https://github.com/HankHuang0516/realbot/commit/60fad933ba7e9ac18da333940a58c34db4874aa2))
* **data:** add soul-templates.json and rule-templates.json with starter templates ([0affa7b](https://github.com/HankHuang0516/realbot/commit/0affa7b7aa272895b6058b5bad1129e442f3d82b))
* **portal:** always show requiredVars dialog with read/overwrite UX ([42e5e47](https://github.com/HankHuang0516/realbot/commit/42e5e4774373f1bb764c32e6dfacdae0c7b47ae9))
* **channel:** auto-select entity slot + all-slots-full error ([49b29fa](https://github.com/HankHuang0516/realbot/commit/49b29fa0bd27fd66c3613d10d9e2e6b3a3fa4779))
* **ai-chat:** disable image upload button while vision is unavailable ([334d618](https://github.com/HankHuang0516/realbot/commit/334d6182f8b2212fe395bdc0254c3d6bb8a50ac5))
* **ai-support:** inject device diagnostics into Claude chat context ([eb621dd](https://github.com/HankHuang0516/realbot/commit/eb621dd02edb1c7724174d7b5a162f468d427912))
* **skills:** replace placeholder templates with verified real repos ([9384751](https://github.com/HankHuang0516/realbot/commit/9384751ff9c288225508c072ced4432f79e1fd09))
* **ui:** replace skill template chips/spinner with Gallery dialog ([b1f2782](https://github.com/HankHuang0516/realbot/commit/b1f27826d728c9fa7f97cb601d9d928d34077493))
* **logging:** route all debug messages through serverLog for /api/logs visibility ([be8ad19](https://github.com/HankHuang0516/realbot/commit/be8ad19661fad806c5932c53790e5ce1f5f97458))

# [1.1.0](https://github.com/HankHuang0516/realbot/compare/v1.0.0...v1.1.0) (2026-03-07)


### Bug Fixes

* **channel:** add channel bot parity for schedule and entity reorder ([10b9535](https://github.com/HankHuang0516/realbot/commit/10b9535877e395133c8b71f26c7f6dd8ce2fa675))
* **api:** add PATCH to apiCall body serialization ([c317b33](https://github.com/HankHuang0516/realbot/commit/c317b33f6bbc41b8879280a2fbabff2f452a0238))
* **ai-support:** handle object-shaped device.entities in fetchDeviceContext ([10b8fcd](https://github.com/HankHuang0516/realbot/commit/10b8fcdd9a15be57f929a5c16380321e706d8b31))
* **mission:** move channel callback wiring after channelModule init ([783d726](https://github.com/HankHuang0516/realbot/commit/783d7261c9188396ed0376dba9b043f1f230cd60))
* resolve issues [#145](https://github.com/HankHuang0516/realbot/issues/145) [#146](https://github.com/HankHuang0516/realbot/issues/146)-149 [#150](https://github.com/HankHuang0516/realbot/issues/150) — skill templates, AI chat fixes ([c532245](https://github.com/HankHuang0516/realbot/commit/c532245ab645b27207e8bf0523f22ebc145b0da4)), closes [#146-149](https://github.com/HankHuang0516/realbot/issues/146-149) [#146-149](https://github.com/HankHuang0516/realbot/issues/146-149)
* **channel:** route debug messages through serverLog for /api/logs visibility ([ae1e5fe](https://github.com/HankHuang0516/realbot/commit/ae1e5fe1762a5a32808ab1cb72ebeb131acd573e))
* **android:** show requiredVars warning when selecting skill template ([95287bb](https://github.com/HankHuang0516/realbot/commit/95287bb807d39e261d77348582f7065dbf6c4ef7))


### Features

* **channel:** add [BIND]/[PUSH] debug messages to channel-api.js ([aa9a7b7](https://github.com/HankHuang0516/realbot/commit/aa9a7b73378c7d4e44ec0f58d833e2a6c5b27300))
* **skills:** add 3 popular community skill templates ([559bce0](https://github.com/HankHuang0516/realbot/commit/559bce00ee19a2e05fd339cfc523a04bb0cf44e9))
* **mission:** add channel bot support for mission notify (Bot Push Parity Rule) ([a9b4b16](https://github.com/HankHuang0516/realbot/commit/a9b4b16fe5827cbe6df3f5b4dc2c5f79f6d49df7))
* **skill-templates:** add community skill contribution API + review flow ([375961c](https://github.com/HankHuang0516/realbot/commit/375961c10791ad9c49013a0d790ce388dcdeefee))
* **channel:** add eclaw_context to channel bot push (v1.0.17 parity) ([a43ac93](https://github.com/HankHuang0516/realbot/commit/a43ac93b0df0d3609e7e697153cfa2512dd66538))
* **schedule:** add Enable/Disable toggle + fix missing i18n keys ([6c6a96c](https://github.com/HankHuang0516/realbot/commit/6c6a96c2fb8151b2bec5004c84d2f2bd40e36583))
* **i18n:** add missing i18n keys across Web Portal and Android App ([60fad93](https://github.com/HankHuang0516/realbot/commit/60fad933ba7e9ac18da333940a58c34db4874aa2))
* **portal:** always show requiredVars dialog with read/overwrite UX ([42e5e47](https://github.com/HankHuang0516/realbot/commit/42e5e4774373f1bb764c32e6dfacdae0c7b47ae9))
* **channel:** auto-select entity slot + all-slots-full error ([49b29fa](https://github.com/HankHuang0516/realbot/commit/49b29fa0bd27fd66c3613d10d9e2e6b3a3fa4779))
* **ai-chat:** disable image upload button while vision is unavailable ([334d618](https://github.com/HankHuang0516/realbot/commit/334d6182f8b2212fe395bdc0254c3d6bb8a50ac5))
* **ai-support:** inject device diagnostics into Claude chat context ([eb621dd](https://github.com/HankHuang0516/realbot/commit/eb621dd02edb1c7724174d7b5a162f468d427912))
* **skills:** replace placeholder templates with verified real repos ([9384751](https://github.com/HankHuang0516/realbot/commit/9384751ff9c288225508c072ced4432f79e1fd09))
* **ui:** replace skill template chips/spinner with Gallery dialog ([b1f2782](https://github.com/HankHuang0516/realbot/commit/b1f27826d728c9fa7f97cb601d9d928d34077493))
* **logging:** route all debug messages through serverLog for /api/logs visibility ([be8ad19](https://github.com/HankHuang0516/realbot/commit/be8ad19661fad806c5932c53790e5ce1f5f97458))

# [1.1.0](https://github.com/HankHuang0516/realbot/compare/v1.0.0...v1.1.0) (2026-03-07)


### Bug Fixes

* **api:** add PATCH to apiCall body serialization ([c317b33](https://github.com/HankHuang0516/realbot/commit/c317b33f6bbc41b8879280a2fbabff2f452a0238))
* **ai-support:** handle object-shaped device.entities in fetchDeviceContext ([10b8fcd](https://github.com/HankHuang0516/realbot/commit/10b8fcdd9a15be57f929a5c16380321e706d8b31))
* **mission:** move channel callback wiring after channelModule init ([783d726](https://github.com/HankHuang0516/realbot/commit/783d7261c9188396ed0376dba9b043f1f230cd60))
* resolve issues [#145](https://github.com/HankHuang0516/realbot/issues/145) [#146](https://github.com/HankHuang0516/realbot/issues/146)-149 [#150](https://github.com/HankHuang0516/realbot/issues/150) — skill templates, AI chat fixes ([c532245](https://github.com/HankHuang0516/realbot/commit/c532245ab645b27207e8bf0523f22ebc145b0da4)), closes [#146-149](https://github.com/HankHuang0516/realbot/issues/146-149) [#146-149](https://github.com/HankHuang0516/realbot/issues/146-149)
* **channel:** route debug messages through serverLog for /api/logs visibility ([ae1e5fe](https://github.com/HankHuang0516/realbot/commit/ae1e5fe1762a5a32808ab1cb72ebeb131acd573e))
* **android:** show requiredVars warning when selecting skill template ([95287bb](https://github.com/HankHuang0516/realbot/commit/95287bb807d39e261d77348582f7065dbf6c4ef7))


### Features

* **channel:** add [BIND]/[PUSH] debug messages to channel-api.js ([aa9a7b7](https://github.com/HankHuang0516/realbot/commit/aa9a7b73378c7d4e44ec0f58d833e2a6c5b27300))
* **skills:** add 3 popular community skill templates ([559bce0](https://github.com/HankHuang0516/realbot/commit/559bce00ee19a2e05fd339cfc523a04bb0cf44e9))
* **mission:** add channel bot support for mission notify (Bot Push Parity Rule) ([a9b4b16](https://github.com/HankHuang0516/realbot/commit/a9b4b16fe5827cbe6df3f5b4dc2c5f79f6d49df7))
* **skill-templates:** add community skill contribution API + review flow ([375961c](https://github.com/HankHuang0516/realbot/commit/375961c10791ad9c49013a0d790ce388dcdeefee))
* **channel:** add eclaw_context to channel bot push (v1.0.17 parity) ([a43ac93](https://github.com/HankHuang0516/realbot/commit/a43ac93b0df0d3609e7e697153cfa2512dd66538))
* **schedule:** add Enable/Disable toggle + fix missing i18n keys ([6c6a96c](https://github.com/HankHuang0516/realbot/commit/6c6a96c2fb8151b2bec5004c84d2f2bd40e36583))
* **i18n:** add missing i18n keys across Web Portal and Android App ([60fad93](https://github.com/HankHuang0516/realbot/commit/60fad933ba7e9ac18da333940a58c34db4874aa2))
* **portal:** always show requiredVars dialog with read/overwrite UX ([42e5e47](https://github.com/HankHuang0516/realbot/commit/42e5e4774373f1bb764c32e6dfacdae0c7b47ae9))
* **channel:** auto-select entity slot + all-slots-full error ([49b29fa](https://github.com/HankHuang0516/realbot/commit/49b29fa0bd27fd66c3613d10d9e2e6b3a3fa4779))
* **ai-chat:** disable image upload button while vision is unavailable ([334d618](https://github.com/HankHuang0516/realbot/commit/334d6182f8b2212fe395bdc0254c3d6bb8a50ac5))
* **ai-support:** inject device diagnostics into Claude chat context ([eb621dd](https://github.com/HankHuang0516/realbot/commit/eb621dd02edb1c7724174d7b5a162f468d427912))
* **skills:** replace placeholder templates with verified real repos ([9384751](https://github.com/HankHuang0516/realbot/commit/9384751ff9c288225508c072ced4432f79e1fd09))
* **ui:** replace skill template chips/spinner with Gallery dialog ([b1f2782](https://github.com/HankHuang0516/realbot/commit/b1f27826d728c9fa7f97cb601d9d928d34077493))
* **logging:** route all debug messages through serverLog for /api/logs visibility ([be8ad19](https://github.com/HankHuang0516/realbot/commit/be8ad19661fad806c5932c53790e5ce1f5f97458))

# [1.1.0](https://github.com/HankHuang0516/realbot/compare/v1.0.0...v1.1.0) (2026-03-07)


### Bug Fixes

* **api:** add PATCH to apiCall body serialization ([c317b33](https://github.com/HankHuang0516/realbot/commit/c317b33f6bbc41b8879280a2fbabff2f452a0238))
* **ai-support:** handle object-shaped device.entities in fetchDeviceContext ([10b8fcd](https://github.com/HankHuang0516/realbot/commit/10b8fcdd9a15be57f929a5c16380321e706d8b31))
* **mission:** move channel callback wiring after channelModule init ([783d726](https://github.com/HankHuang0516/realbot/commit/783d7261c9188396ed0376dba9b043f1f230cd60))
* resolve issues [#145](https://github.com/HankHuang0516/realbot/issues/145) [#146](https://github.com/HankHuang0516/realbot/issues/146)-149 [#150](https://github.com/HankHuang0516/realbot/issues/150) — skill templates, AI chat fixes ([c532245](https://github.com/HankHuang0516/realbot/commit/c532245ab645b27207e8bf0523f22ebc145b0da4)), closes [#146-149](https://github.com/HankHuang0516/realbot/issues/146-149) [#146-149](https://github.com/HankHuang0516/realbot/issues/146-149)
* **channel:** route debug messages through serverLog for /api/logs visibility ([ae1e5fe](https://github.com/HankHuang0516/realbot/commit/ae1e5fe1762a5a32808ab1cb72ebeb131acd573e))
* **android:** show requiredVars warning when selecting skill template ([95287bb](https://github.com/HankHuang0516/realbot/commit/95287bb807d39e261d77348582f7065dbf6c4ef7))


### Features

* **channel:** add [BIND]/[PUSH] debug messages to channel-api.js ([aa9a7b7](https://github.com/HankHuang0516/realbot/commit/aa9a7b73378c7d4e44ec0f58d833e2a6c5b27300))
* **skills:** add 3 popular community skill templates ([559bce0](https://github.com/HankHuang0516/realbot/commit/559bce00ee19a2e05fd339cfc523a04bb0cf44e9))
* **mission:** add channel bot support for mission notify (Bot Push Parity Rule) ([a9b4b16](https://github.com/HankHuang0516/realbot/commit/a9b4b16fe5827cbe6df3f5b4dc2c5f79f6d49df7))
* **channel:** add eclaw_context to channel bot push (v1.0.17 parity) ([a43ac93](https://github.com/HankHuang0516/realbot/commit/a43ac93b0df0d3609e7e697153cfa2512dd66538))
* **schedule:** add Enable/Disable toggle + fix missing i18n keys ([6c6a96c](https://github.com/HankHuang0516/realbot/commit/6c6a96c2fb8151b2bec5004c84d2f2bd40e36583))
* **i18n:** add missing i18n keys across Web Portal and Android App ([60fad93](https://github.com/HankHuang0516/realbot/commit/60fad933ba7e9ac18da333940a58c34db4874aa2))
* **portal:** always show requiredVars dialog with read/overwrite UX ([42e5e47](https://github.com/HankHuang0516/realbot/commit/42e5e4774373f1bb764c32e6dfacdae0c7b47ae9))
* **channel:** auto-select entity slot + all-slots-full error ([49b29fa](https://github.com/HankHuang0516/realbot/commit/49b29fa0bd27fd66c3613d10d9e2e6b3a3fa4779))
* **ai-chat:** disable image upload button while vision is unavailable ([334d618](https://github.com/HankHuang0516/realbot/commit/334d6182f8b2212fe395bdc0254c3d6bb8a50ac5))
* **ai-support:** inject device diagnostics into Claude chat context ([eb621dd](https://github.com/HankHuang0516/realbot/commit/eb621dd02edb1c7724174d7b5a162f468d427912))
* **skills:** replace placeholder templates with verified real repos ([9384751](https://github.com/HankHuang0516/realbot/commit/9384751ff9c288225508c072ced4432f79e1fd09))
* **ui:** replace skill template chips/spinner with Gallery dialog ([b1f2782](https://github.com/HankHuang0516/realbot/commit/b1f27826d728c9fa7f97cb601d9d928d34077493))
* **logging:** route all debug messages through serverLog for /api/logs visibility ([be8ad19](https://github.com/HankHuang0516/realbot/commit/be8ad19661fad806c5932c53790e5ce1f5f97458))

# [1.1.0](https://github.com/HankHuang0516/realbot/compare/v1.0.0...v1.1.0) (2026-03-07)


### Bug Fixes

* **api:** add PATCH to apiCall body serialization ([c317b33](https://github.com/HankHuang0516/realbot/commit/c317b33f6bbc41b8879280a2fbabff2f452a0238))
* **ai-support:** handle object-shaped device.entities in fetchDeviceContext ([10b8fcd](https://github.com/HankHuang0516/realbot/commit/10b8fcdd9a15be57f929a5c16380321e706d8b31))
* resolve issues [#145](https://github.com/HankHuang0516/realbot/issues/145) [#146](https://github.com/HankHuang0516/realbot/issues/146)-149 [#150](https://github.com/HankHuang0516/realbot/issues/150) — skill templates, AI chat fixes ([c532245](https://github.com/HankHuang0516/realbot/commit/c532245ab645b27207e8bf0523f22ebc145b0da4)), closes [#146-149](https://github.com/HankHuang0516/realbot/issues/146-149) [#146-149](https://github.com/HankHuang0516/realbot/issues/146-149)
* **channel:** route debug messages through serverLog for /api/logs visibility ([ae1e5fe](https://github.com/HankHuang0516/realbot/commit/ae1e5fe1762a5a32808ab1cb72ebeb131acd573e))
* **android:** show requiredVars warning when selecting skill template ([95287bb](https://github.com/HankHuang0516/realbot/commit/95287bb807d39e261d77348582f7065dbf6c4ef7))


### Features

* **channel:** add [BIND]/[PUSH] debug messages to channel-api.js ([aa9a7b7](https://github.com/HankHuang0516/realbot/commit/aa9a7b73378c7d4e44ec0f58d833e2a6c5b27300))
* **skills:** add 3 popular community skill templates ([559bce0](https://github.com/HankHuang0516/realbot/commit/559bce00ee19a2e05fd339cfc523a04bb0cf44e9))
* **mission:** add channel bot support for mission notify (Bot Push Parity Rule) ([a9b4b16](https://github.com/HankHuang0516/realbot/commit/a9b4b16fe5827cbe6df3f5b4dc2c5f79f6d49df7))
* **channel:** add eclaw_context to channel bot push (v1.0.17 parity) ([a43ac93](https://github.com/HankHuang0516/realbot/commit/a43ac93b0df0d3609e7e697153cfa2512dd66538))
* **schedule:** add Enable/Disable toggle + fix missing i18n keys ([6c6a96c](https://github.com/HankHuang0516/realbot/commit/6c6a96c2fb8151b2bec5004c84d2f2bd40e36583))
* **i18n:** add missing i18n keys across Web Portal and Android App ([60fad93](https://github.com/HankHuang0516/realbot/commit/60fad933ba7e9ac18da333940a58c34db4874aa2))
* **portal:** always show requiredVars dialog with read/overwrite UX ([42e5e47](https://github.com/HankHuang0516/realbot/commit/42e5e4774373f1bb764c32e6dfacdae0c7b47ae9))
* **channel:** auto-select entity slot + all-slots-full error ([49b29fa](https://github.com/HankHuang0516/realbot/commit/49b29fa0bd27fd66c3613d10d9e2e6b3a3fa4779))
* **ai-chat:** disable image upload button while vision is unavailable ([334d618](https://github.com/HankHuang0516/realbot/commit/334d6182f8b2212fe395bdc0254c3d6bb8a50ac5))
* **ai-support:** inject device diagnostics into Claude chat context ([eb621dd](https://github.com/HankHuang0516/realbot/commit/eb621dd02edb1c7724174d7b5a162f468d427912))
* **skills:** replace placeholder templates with verified real repos ([9384751](https://github.com/HankHuang0516/realbot/commit/9384751ff9c288225508c072ced4432f79e1fd09))
* **ui:** replace skill template chips/spinner with Gallery dialog ([b1f2782](https://github.com/HankHuang0516/realbot/commit/b1f27826d728c9fa7f97cb601d9d928d34077493))
* **logging:** route all debug messages through serverLog for /api/logs visibility ([be8ad19](https://github.com/HankHuang0516/realbot/commit/be8ad19661fad806c5932c53790e5ce1f5f97458))

# [1.1.0](https://github.com/HankHuang0516/realbot/compare/v1.0.0...v1.1.0) (2026-03-07)


### Bug Fixes

* **api:** add PATCH to apiCall body serialization ([c317b33](https://github.com/HankHuang0516/realbot/commit/c317b33f6bbc41b8879280a2fbabff2f452a0238))
* **ai-support:** handle object-shaped device.entities in fetchDeviceContext ([10b8fcd](https://github.com/HankHuang0516/realbot/commit/10b8fcdd9a15be57f929a5c16380321e706d8b31))
* resolve issues [#145](https://github.com/HankHuang0516/realbot/issues/145) [#146](https://github.com/HankHuang0516/realbot/issues/146)-149 [#150](https://github.com/HankHuang0516/realbot/issues/150) — skill templates, AI chat fixes ([c532245](https://github.com/HankHuang0516/realbot/commit/c532245ab645b27207e8bf0523f22ebc145b0da4)), closes [#146-149](https://github.com/HankHuang0516/realbot/issues/146-149) [#146-149](https://github.com/HankHuang0516/realbot/issues/146-149)
* **channel:** route debug messages through serverLog for /api/logs visibility ([ae1e5fe](https://github.com/HankHuang0516/realbot/commit/ae1e5fe1762a5a32808ab1cb72ebeb131acd573e))
* **android:** show requiredVars warning when selecting skill template ([95287bb](https://github.com/HankHuang0516/realbot/commit/95287bb807d39e261d77348582f7065dbf6c4ef7))


### Features

* **channel:** add [BIND]/[PUSH] debug messages to channel-api.js ([aa9a7b7](https://github.com/HankHuang0516/realbot/commit/aa9a7b73378c7d4e44ec0f58d833e2a6c5b27300))
* **skills:** add 3 popular community skill templates ([559bce0](https://github.com/HankHuang0516/realbot/commit/559bce00ee19a2e05fd339cfc523a04bb0cf44e9))
* **channel:** add eclaw_context to channel bot push (v1.0.17 parity) ([a43ac93](https://github.com/HankHuang0516/realbot/commit/a43ac93b0df0d3609e7e697153cfa2512dd66538))
* **schedule:** add Enable/Disable toggle + fix missing i18n keys ([6c6a96c](https://github.com/HankHuang0516/realbot/commit/6c6a96c2fb8151b2bec5004c84d2f2bd40e36583))
* **i18n:** add missing i18n keys across Web Portal and Android App ([60fad93](https://github.com/HankHuang0516/realbot/commit/60fad933ba7e9ac18da333940a58c34db4874aa2))
* **portal:** always show requiredVars dialog with read/overwrite UX ([42e5e47](https://github.com/HankHuang0516/realbot/commit/42e5e4774373f1bb764c32e6dfacdae0c7b47ae9))
* **channel:** auto-select entity slot + all-slots-full error ([49b29fa](https://github.com/HankHuang0516/realbot/commit/49b29fa0bd27fd66c3613d10d9e2e6b3a3fa4779))
* **ai-chat:** disable image upload button while vision is unavailable ([334d618](https://github.com/HankHuang0516/realbot/commit/334d6182f8b2212fe395bdc0254c3d6bb8a50ac5))
* **ai-support:** inject device diagnostics into Claude chat context ([eb621dd](https://github.com/HankHuang0516/realbot/commit/eb621dd02edb1c7724174d7b5a162f468d427912))
* **skills:** replace placeholder templates with verified real repos ([9384751](https://github.com/HankHuang0516/realbot/commit/9384751ff9c288225508c072ced4432f79e1fd09))
* **ui:** replace skill template chips/spinner with Gallery dialog ([b1f2782](https://github.com/HankHuang0516/realbot/commit/b1f27826d728c9fa7f97cb601d9d928d34077493))
* **logging:** route all debug messages through serverLog for /api/logs visibility ([be8ad19](https://github.com/HankHuang0516/realbot/commit/be8ad19661fad806c5932c53790e5ce1f5f97458))

# [1.1.0](https://github.com/HankHuang0516/realbot/compare/v1.0.0...v1.1.0) (2026-03-07)


### Bug Fixes

* **api:** add PATCH to apiCall body serialization ([c317b33](https://github.com/HankHuang0516/realbot/commit/c317b33f6bbc41b8879280a2fbabff2f452a0238))
* **ai-support:** handle object-shaped device.entities in fetchDeviceContext ([10b8fcd](https://github.com/HankHuang0516/realbot/commit/10b8fcdd9a15be57f929a5c16380321e706d8b31))
* resolve issues [#145](https://github.com/HankHuang0516/realbot/issues/145) [#146](https://github.com/HankHuang0516/realbot/issues/146)-149 [#150](https://github.com/HankHuang0516/realbot/issues/150) — skill templates, AI chat fixes ([c532245](https://github.com/HankHuang0516/realbot/commit/c532245ab645b27207e8bf0523f22ebc145b0da4)), closes [#146-149](https://github.com/HankHuang0516/realbot/issues/146-149) [#146-149](https://github.com/HankHuang0516/realbot/issues/146-149)
* **channel:** route debug messages through serverLog for /api/logs visibility ([ae1e5fe](https://github.com/HankHuang0516/realbot/commit/ae1e5fe1762a5a32808ab1cb72ebeb131acd573e))
* **android:** show requiredVars warning when selecting skill template ([95287bb](https://github.com/HankHuang0516/realbot/commit/95287bb807d39e261d77348582f7065dbf6c4ef7))


### Features

* **channel:** add [BIND]/[PUSH] debug messages to channel-api.js ([aa9a7b7](https://github.com/HankHuang0516/realbot/commit/aa9a7b73378c7d4e44ec0f58d833e2a6c5b27300))
* **skills:** add 3 popular community skill templates ([559bce0](https://github.com/HankHuang0516/realbot/commit/559bce00ee19a2e05fd339cfc523a04bb0cf44e9))
* **channel:** add eclaw_context to channel bot push (v1.0.17 parity) ([a43ac93](https://github.com/HankHuang0516/realbot/commit/a43ac93b0df0d3609e7e697153cfa2512dd66538))
* **schedule:** add Enable/Disable toggle + fix missing i18n keys ([6c6a96c](https://github.com/HankHuang0516/realbot/commit/6c6a96c2fb8151b2bec5004c84d2f2bd40e36583))
* **i18n:** add missing i18n keys across Web Portal and Android App ([60fad93](https://github.com/HankHuang0516/realbot/commit/60fad933ba7e9ac18da333940a58c34db4874aa2))
* **portal:** always show requiredVars dialog with read/overwrite UX ([42e5e47](https://github.com/HankHuang0516/realbot/commit/42e5e4774373f1bb764c32e6dfacdae0c7b47ae9))
* **channel:** auto-select entity slot + all-slots-full error ([49b29fa](https://github.com/HankHuang0516/realbot/commit/49b29fa0bd27fd66c3613d10d9e2e6b3a3fa4779))
* **ai-support:** inject device diagnostics into Claude chat context ([eb621dd](https://github.com/HankHuang0516/realbot/commit/eb621dd02edb1c7724174d7b5a162f468d427912))
* **skills:** replace placeholder templates with verified real repos ([9384751](https://github.com/HankHuang0516/realbot/commit/9384751ff9c288225508c072ced4432f79e1fd09))
* **logging:** route all debug messages through serverLog for /api/logs visibility ([be8ad19](https://github.com/HankHuang0516/realbot/commit/be8ad19661fad806c5932c53790e5ce1f5f97458))

# [1.1.0](https://github.com/HankHuang0516/realbot/compare/v1.0.0...v1.1.0) (2026-03-07)


### Bug Fixes

* **api:** add PATCH to apiCall body serialization ([c317b33](https://github.com/HankHuang0516/realbot/commit/c317b33f6bbc41b8879280a2fbabff2f452a0238))
* **ai-support:** handle object-shaped device.entities in fetchDeviceContext ([10b8fcd](https://github.com/HankHuang0516/realbot/commit/10b8fcdd9a15be57f929a5c16380321e706d8b31))
* resolve issues [#145](https://github.com/HankHuang0516/realbot/issues/145) [#146](https://github.com/HankHuang0516/realbot/issues/146)-149 [#150](https://github.com/HankHuang0516/realbot/issues/150) — skill templates, AI chat fixes ([c532245](https://github.com/HankHuang0516/realbot/commit/c532245ab645b27207e8bf0523f22ebc145b0da4)), closes [#146-149](https://github.com/HankHuang0516/realbot/issues/146-149) [#146-149](https://github.com/HankHuang0516/realbot/issues/146-149)
* **channel:** route debug messages through serverLog for /api/logs visibility ([ae1e5fe](https://github.com/HankHuang0516/realbot/commit/ae1e5fe1762a5a32808ab1cb72ebeb131acd573e))
* **android:** show requiredVars warning when selecting skill template ([95287bb](https://github.com/HankHuang0516/realbot/commit/95287bb807d39e261d77348582f7065dbf6c4ef7))


### Features

* **channel:** add [BIND]/[PUSH] debug messages to channel-api.js ([aa9a7b7](https://github.com/HankHuang0516/realbot/commit/aa9a7b73378c7d4e44ec0f58d833e2a6c5b27300))
* **skills:** add 3 popular community skill templates ([559bce0](https://github.com/HankHuang0516/realbot/commit/559bce00ee19a2e05fd339cfc523a04bb0cf44e9))
* **channel:** add eclaw_context to channel bot push (v1.0.17 parity) ([a43ac93](https://github.com/HankHuang0516/realbot/commit/a43ac93b0df0d3609e7e697153cfa2512dd66538))
* **schedule:** add Enable/Disable toggle + fix missing i18n keys ([6c6a96c](https://github.com/HankHuang0516/realbot/commit/6c6a96c2fb8151b2bec5004c84d2f2bd40e36583))
* **i18n:** add missing i18n keys across Web Portal and Android App ([60fad93](https://github.com/HankHuang0516/realbot/commit/60fad933ba7e9ac18da333940a58c34db4874aa2))
* **channel:** auto-select entity slot + all-slots-full error ([49b29fa](https://github.com/HankHuang0516/realbot/commit/49b29fa0bd27fd66c3613d10d9e2e6b3a3fa4779))
* **ai-support:** inject device diagnostics into Claude chat context ([eb621dd](https://github.com/HankHuang0516/realbot/commit/eb621dd02edb1c7724174d7b5a162f468d427912))
* **skills:** replace placeholder templates with verified real repos ([9384751](https://github.com/HankHuang0516/realbot/commit/9384751ff9c288225508c072ced4432f79e1fd09))
* **logging:** route all debug messages through serverLog for /api/logs visibility ([be8ad19](https://github.com/HankHuang0516/realbot/commit/be8ad19661fad806c5932c53790e5ce1f5f97458))

# [1.1.0](https://github.com/HankHuang0516/realbot/compare/v1.0.0...v1.1.0) (2026-03-07)


### Bug Fixes

* **api:** add PATCH to apiCall body serialization ([c317b33](https://github.com/HankHuang0516/realbot/commit/c317b33f6bbc41b8879280a2fbabff2f452a0238))
* **ai-support:** handle object-shaped device.entities in fetchDeviceContext ([10b8fcd](https://github.com/HankHuang0516/realbot/commit/10b8fcdd9a15be57f929a5c16380321e706d8b31))
* resolve issues [#145](https://github.com/HankHuang0516/realbot/issues/145) [#146](https://github.com/HankHuang0516/realbot/issues/146)-149 [#150](https://github.com/HankHuang0516/realbot/issues/150) — skill templates, AI chat fixes ([c532245](https://github.com/HankHuang0516/realbot/commit/c532245ab645b27207e8bf0523f22ebc145b0da4)), closes [#146-149](https://github.com/HankHuang0516/realbot/issues/146-149) [#146-149](https://github.com/HankHuang0516/realbot/issues/146-149)
* **channel:** route debug messages through serverLog for /api/logs visibility ([ae1e5fe](https://github.com/HankHuang0516/realbot/commit/ae1e5fe1762a5a32808ab1cb72ebeb131acd573e))


### Features

* **channel:** add [BIND]/[PUSH] debug messages to channel-api.js ([aa9a7b7](https://github.com/HankHuang0516/realbot/commit/aa9a7b73378c7d4e44ec0f58d833e2a6c5b27300))
* **skills:** add 3 popular community skill templates ([559bce0](https://github.com/HankHuang0516/realbot/commit/559bce00ee19a2e05fd339cfc523a04bb0cf44e9))
* **schedule:** add Enable/Disable toggle + fix missing i18n keys ([6c6a96c](https://github.com/HankHuang0516/realbot/commit/6c6a96c2fb8151b2bec5004c84d2f2bd40e36583))
* **i18n:** add missing i18n keys across Web Portal and Android App ([60fad93](https://github.com/HankHuang0516/realbot/commit/60fad933ba7e9ac18da333940a58c34db4874aa2))
* **channel:** auto-select entity slot + all-slots-full error ([49b29fa](https://github.com/HankHuang0516/realbot/commit/49b29fa0bd27fd66c3613d10d9e2e6b3a3fa4779))
* **ai-support:** inject device diagnostics into Claude chat context ([eb621dd](https://github.com/HankHuang0516/realbot/commit/eb621dd02edb1c7724174d7b5a162f468d427912))
* **skills:** replace placeholder templates with verified real repos ([9384751](https://github.com/HankHuang0516/realbot/commit/9384751ff9c288225508c072ced4432f79e1fd09))
* **logging:** route all debug messages through serverLog for /api/logs visibility ([be8ad19](https://github.com/HankHuang0516/realbot/commit/be8ad19661fad806c5932c53790e5ce1f5f97458))

# [1.1.0](https://github.com/HankHuang0516/realbot/compare/v1.0.0...v1.1.0) (2026-03-07)


### Bug Fixes

* **api:** add PATCH to apiCall body serialization ([c317b33](https://github.com/HankHuang0516/realbot/commit/c317b33f6bbc41b8879280a2fbabff2f452a0238))
* **ai-support:** handle object-shaped device.entities in fetchDeviceContext ([10b8fcd](https://github.com/HankHuang0516/realbot/commit/10b8fcdd9a15be57f929a5c16380321e706d8b31))
* resolve issues [#145](https://github.com/HankHuang0516/realbot/issues/145) [#146](https://github.com/HankHuang0516/realbot/issues/146)-149 [#150](https://github.com/HankHuang0516/realbot/issues/150) — skill templates, AI chat fixes ([c532245](https://github.com/HankHuang0516/realbot/commit/c532245ab645b27207e8bf0523f22ebc145b0da4)), closes [#146-149](https://github.com/HankHuang0516/realbot/issues/146-149) [#146-149](https://github.com/HankHuang0516/realbot/issues/146-149)
* **channel:** route debug messages through serverLog for /api/logs visibility ([ae1e5fe](https://github.com/HankHuang0516/realbot/commit/ae1e5fe1762a5a32808ab1cb72ebeb131acd573e))


### Features

* **channel:** add [BIND]/[PUSH] debug messages to channel-api.js ([aa9a7b7](https://github.com/HankHuang0516/realbot/commit/aa9a7b73378c7d4e44ec0f58d833e2a6c5b27300))
* **skills:** add 3 popular community skill templates ([559bce0](https://github.com/HankHuang0516/realbot/commit/559bce00ee19a2e05fd339cfc523a04bb0cf44e9))
* **schedule:** add Enable/Disable toggle + fix missing i18n keys ([6c6a96c](https://github.com/HankHuang0516/realbot/commit/6c6a96c2fb8151b2bec5004c84d2f2bd40e36583))
* **i18n:** add missing i18n keys across Web Portal and Android App ([60fad93](https://github.com/HankHuang0516/realbot/commit/60fad933ba7e9ac18da333940a58c34db4874aa2))
* **channel:** auto-select entity slot + all-slots-full error ([49b29fa](https://github.com/HankHuang0516/realbot/commit/49b29fa0bd27fd66c3613d10d9e2e6b3a3fa4779))
* **ai-support:** inject device diagnostics into Claude chat context ([eb621dd](https://github.com/HankHuang0516/realbot/commit/eb621dd02edb1c7724174d7b5a162f468d427912))
* **skills:** replace placeholder templates with verified real repos ([9384751](https://github.com/HankHuang0516/realbot/commit/9384751ff9c288225508c072ced4432f79e1fd09))
* **logging:** route all debug messages through serverLog for /api/logs visibility ([be8ad19](https://github.com/HankHuang0516/realbot/commit/be8ad19661fad806c5932c53790e5ce1f5f97458))

# [1.1.0](https://github.com/HankHuang0516/realbot/compare/v1.0.0...v1.1.0) (2026-03-07)


### Bug Fixes

* **api:** add PATCH to apiCall body serialization ([c317b33](https://github.com/HankHuang0516/realbot/commit/c317b33f6bbc41b8879280a2fbabff2f452a0238))
* **ai-support:** handle object-shaped device.entities in fetchDeviceContext ([10b8fcd](https://github.com/HankHuang0516/realbot/commit/10b8fcdd9a15be57f929a5c16380321e706d8b31))
* resolve issues [#145](https://github.com/HankHuang0516/realbot/issues/145) [#146](https://github.com/HankHuang0516/realbot/issues/146)-149 [#150](https://github.com/HankHuang0516/realbot/issues/150) — skill templates, AI chat fixes ([c532245](https://github.com/HankHuang0516/realbot/commit/c532245ab645b27207e8bf0523f22ebc145b0da4)), closes [#146-149](https://github.com/HankHuang0516/realbot/issues/146-149) [#146-149](https://github.com/HankHuang0516/realbot/issues/146-149)
* **channel:** route debug messages through serverLog for /api/logs visibility ([ae1e5fe](https://github.com/HankHuang0516/realbot/commit/ae1e5fe1762a5a32808ab1cb72ebeb131acd573e))


### Features

* **channel:** add [BIND]/[PUSH] debug messages to channel-api.js ([aa9a7b7](https://github.com/HankHuang0516/realbot/commit/aa9a7b73378c7d4e44ec0f58d833e2a6c5b27300))
* **skills:** add 3 popular community skill templates ([559bce0](https://github.com/HankHuang0516/realbot/commit/559bce00ee19a2e05fd339cfc523a04bb0cf44e9))
* **schedule:** add Enable/Disable toggle + fix missing i18n keys ([6c6a96c](https://github.com/HankHuang0516/realbot/commit/6c6a96c2fb8151b2bec5004c84d2f2bd40e36583))
* **i18n:** add missing i18n keys across Web Portal and Android App ([60fad93](https://github.com/HankHuang0516/realbot/commit/60fad933ba7e9ac18da333940a58c34db4874aa2))
* **channel:** auto-select entity slot + all-slots-full error ([49b29fa](https://github.com/HankHuang0516/realbot/commit/49b29fa0bd27fd66c3613d10d9e2e6b3a3fa4779))
* **ai-support:** inject device diagnostics into Claude chat context ([eb621dd](https://github.com/HankHuang0516/realbot/commit/eb621dd02edb1c7724174d7b5a162f468d427912))
* **skills:** replace placeholder templates with verified real repos ([9384751](https://github.com/HankHuang0516/realbot/commit/9384751ff9c288225508c072ced4432f79e1fd09))
* **logging:** route all debug messages through serverLog for /api/logs visibility ([be8ad19](https://github.com/HankHuang0516/realbot/commit/be8ad19661fad806c5932c53790e5ce1f5f97458))

# [1.1.0](https://github.com/HankHuang0516/realbot/compare/v1.0.0...v1.1.0) (2026-03-07)


### Bug Fixes

* **api:** add PATCH to apiCall body serialization ([c317b33](https://github.com/HankHuang0516/realbot/commit/c317b33f6bbc41b8879280a2fbabff2f452a0238))
* resolve issues [#145](https://github.com/HankHuang0516/realbot/issues/145) [#146](https://github.com/HankHuang0516/realbot/issues/146)-149 [#150](https://github.com/HankHuang0516/realbot/issues/150) — skill templates, AI chat fixes ([c532245](https://github.com/HankHuang0516/realbot/commit/c532245ab645b27207e8bf0523f22ebc145b0da4)), closes [#146-149](https://github.com/HankHuang0516/realbot/issues/146-149) [#146-149](https://github.com/HankHuang0516/realbot/issues/146-149)
* **channel:** route debug messages through serverLog for /api/logs visibility ([ae1e5fe](https://github.com/HankHuang0516/realbot/commit/ae1e5fe1762a5a32808ab1cb72ebeb131acd573e))


### Features

* **channel:** add [BIND]/[PUSH] debug messages to channel-api.js ([aa9a7b7](https://github.com/HankHuang0516/realbot/commit/aa9a7b73378c7d4e44ec0f58d833e2a6c5b27300))
* **skills:** add 3 popular community skill templates ([559bce0](https://github.com/HankHuang0516/realbot/commit/559bce00ee19a2e05fd339cfc523a04bb0cf44e9))
* **schedule:** add Enable/Disable toggle + fix missing i18n keys ([6c6a96c](https://github.com/HankHuang0516/realbot/commit/6c6a96c2fb8151b2bec5004c84d2f2bd40e36583))
* **i18n:** add missing i18n keys across Web Portal and Android App ([60fad93](https://github.com/HankHuang0516/realbot/commit/60fad933ba7e9ac18da333940a58c34db4874aa2))
* **channel:** auto-select entity slot + all-slots-full error ([49b29fa](https://github.com/HankHuang0516/realbot/commit/49b29fa0bd27fd66c3613d10d9e2e6b3a3fa4779))
* **ai-support:** inject device diagnostics into Claude chat context ([eb621dd](https://github.com/HankHuang0516/realbot/commit/eb621dd02edb1c7724174d7b5a162f468d427912))
* **skills:** replace placeholder templates with verified real repos ([9384751](https://github.com/HankHuang0516/realbot/commit/9384751ff9c288225508c072ced4432f79e1fd09))
* **logging:** route all debug messages through serverLog for /api/logs visibility ([be8ad19](https://github.com/HankHuang0516/realbot/commit/be8ad19661fad806c5932c53790e5ce1f5f97458))

# [1.1.0](https://github.com/HankHuang0516/realbot/compare/v1.0.0...v1.1.0) (2026-03-07)


### Bug Fixes

* **api:** add PATCH to apiCall body serialization ([c317b33](https://github.com/HankHuang0516/realbot/commit/c317b33f6bbc41b8879280a2fbabff2f452a0238))
* resolve issues [#145](https://github.com/HankHuang0516/realbot/issues/145) [#146](https://github.com/HankHuang0516/realbot/issues/146)-149 [#150](https://github.com/HankHuang0516/realbot/issues/150) — skill templates, AI chat fixes ([c532245](https://github.com/HankHuang0516/realbot/commit/c532245ab645b27207e8bf0523f22ebc145b0da4)), closes [#146-149](https://github.com/HankHuang0516/realbot/issues/146-149) [#146-149](https://github.com/HankHuang0516/realbot/issues/146-149)
* **channel:** route debug messages through serverLog for /api/logs visibility ([ae1e5fe](https://github.com/HankHuang0516/realbot/commit/ae1e5fe1762a5a32808ab1cb72ebeb131acd573e))


### Features

* **channel:** add [BIND]/[PUSH] debug messages to channel-api.js ([aa9a7b7](https://github.com/HankHuang0516/realbot/commit/aa9a7b73378c7d4e44ec0f58d833e2a6c5b27300))
* **skills:** add 3 popular community skill templates ([559bce0](https://github.com/HankHuang0516/realbot/commit/559bce00ee19a2e05fd339cfc523a04bb0cf44e9))
* **schedule:** add Enable/Disable toggle + fix missing i18n keys ([6c6a96c](https://github.com/HankHuang0516/realbot/commit/6c6a96c2fb8151b2bec5004c84d2f2bd40e36583))
* **i18n:** add missing i18n keys across Web Portal and Android App ([60fad93](https://github.com/HankHuang0516/realbot/commit/60fad933ba7e9ac18da333940a58c34db4874aa2))
* **channel:** auto-select entity slot + all-slots-full error ([49b29fa](https://github.com/HankHuang0516/realbot/commit/49b29fa0bd27fd66c3613d10d9e2e6b3a3fa4779))
* **skills:** replace placeholder templates with verified real repos ([9384751](https://github.com/HankHuang0516/realbot/commit/9384751ff9c288225508c072ced4432f79e1fd09))
* **logging:** route all debug messages through serverLog for /api/logs visibility ([be8ad19](https://github.com/HankHuang0516/realbot/commit/be8ad19661fad806c5932c53790e5ce1f5f97458))

# [1.1.0](https://github.com/HankHuang0516/realbot/compare/v1.0.0...v1.1.0) (2026-03-07)


### Bug Fixes

* **api:** add PATCH to apiCall body serialization ([c317b33](https://github.com/HankHuang0516/realbot/commit/c317b33f6bbc41b8879280a2fbabff2f452a0238))
* **channel:** route debug messages through serverLog for /api/logs visibility ([ae1e5fe](https://github.com/HankHuang0516/realbot/commit/ae1e5fe1762a5a32808ab1cb72ebeb131acd573e))


### Features

* **channel:** add [BIND]/[PUSH] debug messages to channel-api.js ([aa9a7b7](https://github.com/HankHuang0516/realbot/commit/aa9a7b73378c7d4e44ec0f58d833e2a6c5b27300))
* **skills:** add 3 popular community skill templates ([559bce0](https://github.com/HankHuang0516/realbot/commit/559bce00ee19a2e05fd339cfc523a04bb0cf44e9))
* **schedule:** add Enable/Disable toggle + fix missing i18n keys ([6c6a96c](https://github.com/HankHuang0516/realbot/commit/6c6a96c2fb8151b2bec5004c84d2f2bd40e36583))
* **i18n:** add missing i18n keys across Web Portal and Android App ([60fad93](https://github.com/HankHuang0516/realbot/commit/60fad933ba7e9ac18da333940a58c34db4874aa2))
* **channel:** auto-select entity slot + all-slots-full error ([49b29fa](https://github.com/HankHuang0516/realbot/commit/49b29fa0bd27fd66c3613d10d9e2e6b3a3fa4779))
* **skills:** replace placeholder templates with verified real repos ([9384751](https://github.com/HankHuang0516/realbot/commit/9384751ff9c288225508c072ced4432f79e1fd09))
* **logging:** route all debug messages through serverLog for /api/logs visibility ([be8ad19](https://github.com/HankHuang0516/realbot/commit/be8ad19661fad806c5932c53790e5ce1f5f97458))

# [1.1.0](https://github.com/HankHuang0516/realbot/compare/v1.0.0...v1.1.0) (2026-03-07)


### Bug Fixes

* **api:** add PATCH to apiCall body serialization ([c317b33](https://github.com/HankHuang0516/realbot/commit/c317b33f6bbc41b8879280a2fbabff2f452a0238))
* **channel:** route debug messages through serverLog for /api/logs visibility ([ae1e5fe](https://github.com/HankHuang0516/realbot/commit/ae1e5fe1762a5a32808ab1cb72ebeb131acd573e))


### Features

* **channel:** add [BIND]/[PUSH] debug messages to channel-api.js ([aa9a7b7](https://github.com/HankHuang0516/realbot/commit/aa9a7b73378c7d4e44ec0f58d833e2a6c5b27300))
* **schedule:** add Enable/Disable toggle + fix missing i18n keys ([6c6a96c](https://github.com/HankHuang0516/realbot/commit/6c6a96c2fb8151b2bec5004c84d2f2bd40e36583))
* **channel:** auto-select entity slot + all-slots-full error ([49b29fa](https://github.com/HankHuang0516/realbot/commit/49b29fa0bd27fd66c3613d10d9e2e6b3a3fa4779))
* **logging:** route all debug messages through serverLog for /api/logs visibility ([be8ad19](https://github.com/HankHuang0516/realbot/commit/be8ad19661fad806c5932c53790e5ce1f5f97458))

# [1.1.0](https://github.com/HankHuang0516/realbot/compare/v1.0.0...v1.1.0) (2026-03-07)


### Bug Fixes

* **api:** add PATCH to apiCall body serialization ([c317b33](https://github.com/HankHuang0516/realbot/commit/c317b33f6bbc41b8879280a2fbabff2f452a0238))
* **channel:** route debug messages through serverLog for /api/logs visibility ([ae1e5fe](https://github.com/HankHuang0516/realbot/commit/ae1e5fe1762a5a32808ab1cb72ebeb131acd573e))


### Features

* **channel:** add [BIND]/[PUSH] debug messages to channel-api.js ([aa9a7b7](https://github.com/HankHuang0516/realbot/commit/aa9a7b73378c7d4e44ec0f58d833e2a6c5b27300))
* **schedule:** add Enable/Disable toggle + fix missing i18n keys ([6c6a96c](https://github.com/HankHuang0516/realbot/commit/6c6a96c2fb8151b2bec5004c84d2f2bd40e36583))
* **channel:** auto-select entity slot + all-slots-full error ([49b29fa](https://github.com/HankHuang0516/realbot/commit/49b29fa0bd27fd66c3613d10d9e2e6b3a3fa4779))

# [1.1.0](https://github.com/HankHuang0516/realbot/compare/v1.0.0...v1.1.0) (2026-03-07)


### Bug Fixes

* **api:** add PATCH to apiCall body serialization ([c317b33](https://github.com/HankHuang0516/realbot/commit/c317b33f6bbc41b8879280a2fbabff2f452a0238))


### Features

* **channel:** add [BIND]/[PUSH] debug messages to channel-api.js ([aa9a7b7](https://github.com/HankHuang0516/realbot/commit/aa9a7b73378c7d4e44ec0f58d833e2a6c5b27300))
* **schedule:** add Enable/Disable toggle + fix missing i18n keys ([6c6a96c](https://github.com/HankHuang0516/realbot/commit/6c6a96c2fb8151b2bec5004c84d2f2bd40e36583))
* **channel:** auto-select entity slot + all-slots-full error ([49b29fa](https://github.com/HankHuang0516/realbot/commit/49b29fa0bd27fd66c3613d10d9e2e6b3a3fa4779))

# [1.1.0](https://github.com/HankHuang0516/realbot/compare/v1.0.0...v1.1.0) (2026-03-07)


### Bug Fixes

* **api:** add PATCH to apiCall body serialization ([c317b33](https://github.com/HankHuang0516/realbot/commit/c317b33f6bbc41b8879280a2fbabff2f452a0238))


### Features

* **channel:** add [BIND]/[PUSH] debug messages to channel-api.js ([aa9a7b7](https://github.com/HankHuang0516/realbot/commit/aa9a7b73378c7d4e44ec0f58d833e2a6c5b27300))
* **schedule:** add Enable/Disable toggle + fix missing i18n keys ([6c6a96c](https://github.com/HankHuang0516/realbot/commit/6c6a96c2fb8151b2bec5004c84d2f2bd40e36583))

# [1.1.0](https://github.com/HankHuang0516/realbot/compare/v1.0.0...v1.1.0) (2026-03-07)


### Bug Fixes

* **api:** add PATCH to apiCall body serialization ([c317b33](https://github.com/HankHuang0516/realbot/commit/c317b33f6bbc41b8879280a2fbabff2f452a0238))


### Features

* **schedule:** add Enable/Disable toggle + fix missing i18n keys ([6c6a96c](https://github.com/HankHuang0516/realbot/commit/6c6a96c2fb8151b2bec5004c84d2f2bd40e36583))

# [1.1.0](https://github.com/HankHuang0516/realbot/compare/v1.0.0...v1.1.0) (2026-03-07)


### Features

* **schedule:** add Enable/Disable toggle + fix missing i18n keys ([6c6a96c](https://github.com/HankHuang0516/realbot/commit/6c6a96c2fb8151b2bec5004c84d2f2bd40e36583))

# 1.0.0 (2026-03-06)


* Refactor to matrix architecture: each device has own entity slots (v5) ([a7fb7e2](https://github.com/HankHuang0516/realbot/commit/a7fb7e2f8a25ee4f90abe14c165d48415722aa10))


### Bug Fixes

* add --dangerouslySkipPermissions to CLI chat spawn ([5d9ec98](https://github.com/HankHuang0516/realbot/commit/5d9ec981dd079e06990e0345dd0e2ab41a9b63c0))
* add --verbose flag for stream-json output format ([86da713](https://github.com/HankHuang0516/realbot/commit/86da713fe6fdf91671c9f7ef9b75e8d3f16b9fb2))
* add [#48](https://github.com/HankHuang0516/realbot/issues/48) entity visibility diagnosis logging + auto-sync fix ([f146893](https://github.com/HankHuang0516/realbot/commit/f146893d976a4683a847857b0b0f17c6f0d298b0))
* **lint:** add AbortController, TextDecoder, TextEncoder to ESLint globals ([db1f80f](https://github.com/HankHuang0516/realbot/commit/db1f80fd6e2ce25efc1e443c8f73d394ca15b24d))
* add all essential backend files for Railway deployment ([32c94a4](https://github.com/HankHuang0516/realbot/commit/32c94a4f87724b667d0d58b1b15b38c92389eba7))
* add auto-refresh across all pages and fix priority enum mapping ([ddae755](https://github.com/HankHuang0516/realbot/commit/ddae75574b5f131e62ea6cfec0b9ae17cd5a2ca9))
* add bot-to-bot rate limiter to prevent infinite message loops ([28b6a48](https://github.com/HankHuang0516/realbot/commit/28b6a481eb488e5ef1048e106e4c09dbf80f81e2))
* add Cache-Control no-cache for i18n.js to prevent stale translations ([b8beac0](https://github.com/HankHuang0516/realbot/commit/b8beac0d39dc91779888a88cc7714b1741810dad))
* **screenshot:** add canTakeScreenshot flag + shorten backend timeout ([3d9dc21](https://github.com/HankHuang0516/realbot/commit/3d9dc2105152db23476a93c8625b34de04bac8d7))
* add cross-source dedup in syncFromBackend() to prevent chat echo ([4bac4c7](https://github.com/HankHuang0516/realbot/commit/4bac4c729a02aedfe2c5cec8f97e98114e071644))
* add debug logging to AI support proxy communication ([f00394c](https://github.com/HankHuang0516/realbot/commit/f00394cd2feb09c64715532365260fbed79a07a6))
* add delete buttons to todo/mission/done items ([9bcb797](https://github.com/HankHuang0516/realbot/commit/9bcb797c9edd131e2e453bc9334f50dabe6db9d8))
* add dialog input CSS to env-vars.html for consistent styling ([d99e394](https://github.com/HankHuang0516/realbot/commit/d99e394eae7c02607ebcf16ce32e8b4662065491))
* add direct entity polling in ChatActivity for bot responses ([d07d966](https://github.com/HankHuang0516/realbot/commit/d07d96665c4ce0a8ed26eba3e04db420fbed096e))
* **screenshot:** add error propagation and logging in takeAndPostScreenshot ([c38e46e](https://github.com/HankHuang0516/realbot/commit/c38e46e1ef89985052b6f50704b593058f15a1e5))
* add fallback parsing when stream-json produces no NDJSON events ([fef8b8b](https://github.com/HankHuang0516/realbot/commit/fef8b8bbc61aba4aea9e4e73b8f39582219e3c76))
* add fill color to card emoji icons (lobster + airplane) ([600057a](https://github.com/HankHuang0516/realbot/commit/600057ae05c35c83f005db6244b8529a3fefdacd)), closes [#6C63FF](https://github.com/HankHuang0516/realbot/issues/6C63FF) [#0088CC](https://github.com/HankHuang0516/realbot/issues/0088CC)
* add git to proxy container + remove invalid CLI flag ([b260696](https://github.com/HankHuang0516/realbot/commit/b2606968f2b25eb7a0365932a89fdd13a2d53f76))
* add git via both nixPkgs and aptPkgs for Nixpacks compatibility ([770f30c](https://github.com/HankHuang0516/realbot/commit/770f30cf404be8769db4cf609ae126081357d426))
* add instalment:0 for TapPay INS merchant (code 72 fix) ([64cdd87](https://github.com/HankHuang0516/realbot/commit/64cdd8762fcc39eb77b7d753858118f5f6845b85))
* add JUnit and Gson test dependencies for Kotlin unit tests ([44154d2](https://github.com/HankHuang0516/realbot/commit/44154d2b59e5de0868d83a2535dee0c40d756d60))
* add missing ai_chat_view_feedback string resource ([4d2ac91](https://github.com/HankHuang0516/realbot/commit/4d2ac912112151a810d5d474010f63c216bbb478))
* add missing chat-integrity.js (fixes deployment crash) ([fc4bcc0](https://github.com/HankHuang0516/realbot/commit/fc4bcc02bd52b44670609bd87b4dc80037e539da))
* **claude-cli-proxy:** add missing import sys ([22cf38f](https://github.com/HankHuang0516/realbot/commit/22cf38f18dc1ed191d816aa4cfb7db64ccfbc789))
* add missing saveFeedback function to db.js ([fc9ac25](https://github.com/HankHuang0516/realbot/commit/fc9ac254625a84008280726dbfde99c7ba1c0273))
* add missing skills column migration + clean up mission page UI ([984b8d6](https://github.com/HankHuang0516/realbot/commit/984b8d66e153928008f96210d6ac457e4f5020c3))
* add missing SQL schema files for Railway deployment ([52602f5](https://github.com/HankHuang0516/realbot/commit/52602f548696ba190528e9bf5fc2d8c10805649f))
* **ssl:** add network_security_config to trust user CAs in debug builds ([7f7cfce](https://github.com/HankHuang0516/realbot/commit/7f7cfce209a59a214a4a973c37cb21d24d330ad3))
* add OpenClaw 2.14 sessions_send fix instructions to error messages ([a744e63](https://github.com/HankHuang0516/realbot/commit/a744e63c92db282cce0737a6bf2fa3647e3d7c38))
* add pairing_required solution hint to error messages ([07b1e31](https://github.com/HankHuang0516/realbot/commit/07b1e3177f3854e9d38f3233d2bfe27868a68a2b))
* add PR write permission and make Railway deploy non-blocking ([929cf7d](https://github.com/HankHuang0516/realbot/commit/929cf7d46270ebed75ca31721c93522e22d2d1c2))
* add prominent accessibility disclosure dialog for Google Play compliance (v1.0.37) ([253b96f](https://github.com/HankHuang0516/realbot/commit/253b96f09f3620b24d5a3e333c16178f977c86a6))
* add required cardholder.name for TapPay pay-by-prime ([d96ed4e](https://github.com/HankHuang0516/realbot/commit/d96ed4ebc49066fbb9e75627877f53d1f4bd1083))
* add social login buttons and Google SDK to web portal login/register ([51e2f7e](https://github.com/HankHuang0516/realbot/commit/51e2f7eb992bd04e7cfd8c745850a741ab5e5a93))
* add URLSearchParams to ESLint globals ([d09447f](https://github.com/HankHuang0516/realbot/commit/d09447f08aed81855b50d77a596985441db0c289))
* address code review issues before merge ([e039533](https://github.com/HankHuang0516/realbot/commit/e039533f973d3bdbfcf2576ecfbbb2018f411412))
* admin bots API auto-cleans stale assigned bots ([e43094f](https://github.com/HankHuang0516/realbot/commit/e43094f8037add43ab8721e296f1955cb14b86ff))
* admin link not showing on info page ([d538a46](https://github.com/HankHuang0516/realbot/commit/d538a465ecf88412b502f3ab4aed70948a5dc5e6))
* AI chat proactively creates GitHub issues for user feedback ([cf0bacb](https://github.com/HankHuang0516/realbot/commit/cf0bacb5cc677c2c739e605dc8d12a1471eae3e2))
* AI chat stuck on "thinking" — t() not defined, use i18n.t() ([692be25](https://github.com/HankHuang0516/realbot/commit/692be25306a6189c93272286d61f660989e5b98f))
* allow debug/test devices to use all 8 entity slots ([#66](https://github.com/HankHuang0516/realbot/issues/66)) ([94be3c5](https://github.com/HankHuang0516/realbot/commit/94be3c57261801a2f658f8bb037ecce024b57dcb))
* allow key name editing in Env Variables dialog ([78846a4](https://github.com/HankHuang0516/realbot/commit/78846a42a2e9b9b4f3bf27abb4020701003e94a7))
* also suppress speak-to echo in processEntityMessage() ([be670de](https://github.com/HankHuang0516/realbot/commit/be670de454cece91590b5ee15e601024b26136cd))
* **screen-control:** always include truncated field in screen-capture response ([aecdc87](https://github.com/HankHuang0516/realbot/commit/aecdc87536cad9ed49f99b8189eff627579ab17c))
* **portal:** apply i18n after nav/footer render in info.html ([b5c626c](https://github.com/HankHuang0516/realbot/commit/b5c626c6ea7b3f9ccd2688323cea1471e2911d39))
* auth redirect loop caused by /api/notifications/count returning 401 ([41832f5](https://github.com/HankHuang0516/realbot/commit/41832f58a52266dfe4266e99221c264b7a098237))
* auto-create device on API calls to survive server redeploy ([cf48cdc](https://github.com/HankHuang0516/realbot/commit/cf48cdcd10cc1c46abad2d5abac651da22bc399c))
* auto-create gateway session for official borrow bots ([b02f9a0](https://github.com/HankHuang0516/realbot/commit/b02f9a0a2fffd0ed707b5a4f1979618583d0f0d8))
* auto-restore .claude.json from backup on proxy startup ([31d2275](https://github.com/HankHuang0516/realbot/commit/31d2275aaf312f2baf8ee2a404c49e562f40f352))
* auto-strip Bearer prefix from webhook token ([f4be13e](https://github.com/HankHuang0516/realbot/commit/f4be13ec5cc2149546b4ffd976c6928dfce6c452))
* auto-sync feedback status with GitHub issue state ([6f1574b](https://github.com/HankHuang0516/realbot/commit/6f1574b33d9db1f3e9552310911c4dfcdd6738b0))
* auto-sync feedback status with GitHub issue state ([9b21e26](https://github.com/HankHuang0516/realbot/commit/9b21e26c4bcfec822d9f28025e9d74e0cf09a2a8))
* auto-sync server-bound entities to local registry ([571a9ba](https://github.com/HankHuang0516/realbot/commit/571a9bab356379a9f429ae6bd2a008050e79cc06))
* bind to 0.0.0.0 for Railway container healthcheck ([7c86e37](https://github.com/HankHuang0516/realbot/commit/7c86e375f14338243b35287b88dfd9f370389f17))
* bot-to-bot chat shows sender's bubble with 發送至 footer ([3bfbd70](https://github.com/HankHuang0516/realbot/commit/3bfbd70bec007cd5e6f194cd508f76b91e1b6e48))
* botSecret auth, read timeout, Room version, and handshake message ([0dee1c4](https://github.com/HankHuang0516/realbot/commit/0dee1c4646bfaa7ce7e2994e6038e8d9ed45d14e))
* bottom nav position consistency and edge padding ([1a41199](https://github.com/HankHuang0516/realbot/commit/1a41199e9a3a9bfdb6f2c6001443f9f5408249e6))
* broadcast delivered_to overwrite bug + add broadcast regression test ([d5a82ab](https://github.com/HankHuang0516/realbot/commit/d5a82ab3b1ac45bf9dc45d54d060b701a2c1da29))
* broadcast test uses polling for delivered_to instead of fixed 15s wait ([8000dab](https://github.com/HankHuang0516/realbot/commit/8000dab8058d2c960293bcc05fe94df7140e0ed8))
* bump versionCode to 37 (36 already used on Play Console) ([ef63b01](https://github.com/HankHuang0516/realbot/commit/ef63b01cbe61175cc71188a0eb33875770b41f83))
* canonical domain redirect to prevent cookie/auth loop ([0c5ff85](https://github.com/HankHuang0516/realbot/commit/0c5ff85332041930ab74058d104829a79a278ddf))
* catch __...__  wrapped placeholder tokens (e.g. __OPENCLAW_REDACTED__) ([d3289f5](https://github.com/HankHuang0516/realbot/commit/d3289f5678aa4c4e13c207cecf39bfcea2b958c8))
* change message_reactions.message_id from INTEGER to UUID ([4790c2f](https://github.com/HankHuang0516/realbot/commit/4790c2f78638ce2384f07d74e44d8a7d499e96ba))
* channel test checks entities wrapper object correctly ([dc9e12d](https://github.com/HankHuang0516/realbot/commit/dc9e12d725b966224febee243496c894bf76bb65))
* chat filter shows broadcast/speak-to messages for recipient entities ([360cb4a](https://github.com/HankHuang0516/realbot/commit/360cb4a055c9ef7b6201654d7d48c2ae98856122))
* chat history returns latest 500 msgs + skill doc English & improvements ([1022bca](https://github.com/HankHuang0516/realbot/commit/1022bcab335549c5fa10d068bc46993120070b1b))
* chat message duplication when entity visible on wallpaper ([ccd8458](https://github.com/HankHuang0516/realbot/commit/ccd845897fd7c64a2641444abcab34e2ac645362))
* chat message query shows newest 500 msgs + reject invalid webhook params ([af941cd](https://github.com/HankHuang0516/realbot/commit/af941cda9dfbb2414f5d3ab3ec0b4d7137b59164))
* chat page bugs - remove Received echo and self read receipts ([99d7645](https://github.com/HankHuang0516/realbot/commit/99d764586819c38ae37ea38f6a8fb51a23117dd5))
* Chat polls backend chat history directly, independent of wallpaper ([2a8c11f](https://github.com/HankHuang0516/realbot/commit/2a8c11f3ffa4df773d5f30d643e02a8216f6e2a3))
* chat UI input section no longer covers messages ([b087c92](https://github.com/HankHuang0516/realbot/commit/b087c9228bba8f85eafc1f765b617005475c4d7f))
* clarify bot-to-bot push instructions (transform vs speak-to) ([214f001](https://github.com/HankHuang0516/realbot/commit/214f001f7acd519a44689627c0cec01b8388fc95))
* convert ChatActivity to full-screen dark style with bottom nav ([fc1d33d](https://github.com/HankHuang0516/realbot/commit/fc1d33dd6b598691d91cadc7d3f235ca963523c5)), closes [#0D0D1A](https://github.com/HankHuang0516/realbot/issues/0D0D1A) [#1A1A2E](https://github.com/HankHuang0516/realbot/issues/1A1A2E)
* correct Multi-Entity max to 8 and Setup description (independent platforms) ([8499441](https://github.com/HankHuang0516/realbot/commit/84994413319e800af7612d84f222a375c19bf360))
* correct TapPay sandbox app_key (was corrupted) ([9f730e6](https://github.com/HankHuang0516/realbot/commit/9f730e6ca79f38da3f37cf051bd86b5dc16997ba))
* correct UI test assertions and add settings features ([777d2a9](https://github.com/HankHuang0516/realbot/commit/777d2a9d3151b097fd59ca905f4b8981d1021170))
* crash on device.entities iteration + add crash logging to /api/logs ([9c19ec5](https://github.com/HankHuang0516/realbot/commit/9c19ec5edd0ce73416b9267c28d91995ae9bbc5a))
* create Railway preview environment before deploy ([2a1974a](https://github.com/HankHuang0516/realbot/commit/2a1974a67042dd9e3c2e53226690ddc0d38b2685))
* cross-device chat label shows local entity instead of remote target ([ead47bd](https://github.com/HankHuang0516/realbot/commit/ead47bd3d093808448877658e698840b93f81494))
* dark theme for notification/language cards and fix API field name mismatch ([31473cf](https://github.com/HankHuang0516/realbot/commit/31473cf3af3909e085722eb7e35ef7c02002403a)), closes [#1A1A1A](https://github.com/HankHuang0516/realbot/issues/1A1A1A) [#333333](https://github.com/HankHuang0516/realbot/issues/333333)
* dashboard countdown shows {m}:{ss} literally + reset UI after entity bind ([846bb1a](https://github.com/HankHuang0516/realbot/commit/846bb1aec5e304d2daba9485ccd55f3aff29e9bc))
* decouple Bash tool from repo clone status ([92640ad](https://github.com/HankHuang0516/realbot/commit/92640ad6161df202f9dc5b9aeaac8b0ceb9334c5))
* deduplicate broadcast header entities + user message dedup ([4202e8d](https://github.com/HankHuang0516/realbot/commit/4202e8dad9f15270999eb5face0057d3e6811db5))
* enable EYE_LID/EYE_ANGLE rendering and fix test scripts ([4f9f4dc](https://github.com/HankHuang0516/realbot/commit/4f9f4dcfa607df802104d828d82e5029b543a804))
* entity count fetches from API with premium-aware max ([ea42c62](https://github.com/HankHuang0516/realbot/commit/ea42c62320f336106507c1ea65ee090fa6c88542))
* entity reorder now syncs all associated data atomically ([3683914](https://github.com/HankHuang0516/realbot/commit/368391460d3269a056dfe382b560c71140626194))
* **android:** exclude current message from history to fix AI image processing ([502a909](https://github.com/HankHuang0516/realbot/commit/502a9096d9b90613f8279d4b6c1a7b0447dee155)), closes [#143](https://github.com/HankHuang0516/realbot/issues/143)
* extend idle timeout from 20s to 5min to not overwrite bot replies ([a769bca](https://github.com/HankHuang0516/realbot/commit/a769bca4e0d8d67763ae0930accce35dc305821c))
* fail-safe usage limit with in-memory fallback ([4f1d0d4](https://github.com/HankHuang0516/realbot/commit/4f1d0d4a0227cbc4cfcc608c6b8f2e6b18e352ae))
* filter Android user messages from ChatIntegrity validation ([aabc61e](https://github.com/HankHuang0516/realbot/commit/aabc61e88ac48e13244e76bd1678d5f3e0502742)), closes [#82](https://github.com/HankHuang0516/realbot/issues/82) [#83](https://github.com/HankHuang0516/realbot/issues/83)
* filter chat target chips to only show bound entities ([7041744](https://github.com/HankHuang0516/realbot/commit/704174482066424f6610730c406d2cced30f42a8))
* **portal:** fix inconsistent white button styles in Channel API section ([22d2db3](https://github.com/HankHuang0516/realbot/commit/22d2db357cbdc464a2643d5196ff043c920282d6))
* **portal:** fix screen-control Loading bug + update info.html with new features ([863343e](https://github.com/HankHuang0516/realbot/commit/863343e958dc875011f9542ef3a3a54e968db574))
* Flickr 429 rate limit - use getInfo + static URL + retry + async album ([421316c](https://github.com/HankHuang0516/realbot/commit/421316c0ff640a760df36bee30c5032f287466d5))
* flickr-sdk v6 API (createFlickr) + add media docs to bot skill ([1907b65](https://github.com/HankHuang0516/realbot/commit/1907b656410b0a07aaf3fb67efbf99eac8bcab6a))
* force Nixpacks Node.js provider to prevent nginx static site ([613caf6](https://github.com/HankHuang0516/realbot/commit/613caf6f6f51eaef331882ec25d475df54a29024))
* **ui:** guard coerceIn against empty range in AiChatFabHelper ([20f8e47](https://github.com/HankHuang0516/realbot/commit/20f8e470e0d8802c863b41d700de01f0a42bf6c0))
* handle duplicate public_code gracefully during device save ([ba853d3](https://github.com/HankHuang0516/realbot/commit/ba853d30b010e78f443c938b771f4ac4d2be633c))
* handle null JSONB fields in device transfer migration ([571ed60](https://github.com/HankHuang0516/realbot/commit/571ed60fbc0340322460caed01f95e179bdbf49d))
* handshake now rejects pairing_required in response body ([17d7730](https://github.com/HankHuang0516/realbot/commit/17d77302bed885a1d86586c10bb640926f028e5a))
* handshake uses dry-run invoke instead of unreliable /tools/list ([8ba5346](https://github.com/HankHuang0516/realbot/commit/8ba534655191bfffc1af30975ec50a246bda99b4))
* i18n interpolation for unlimited usage display ([4a296cb](https://github.com/HankHuang0516/realbot/commit/4a296cbcf9cfedf3c4f97bcfbd4ad3ed2abdc8d9))
* **screen-control:** ime_action fallback when no INPUT focus (ACTION_SET_TEXT case) ([03c2179](https://github.com/HankHuang0516/realbot/commit/03c2179da70e6067afc10b27488c0b508d1d61d7))
* **ai-support:** improve 401 and setup_password rules ([c68e972](https://github.com/HankHuang0516/realbot/commit/c68e972df64ce9603d9198ec4387de9588f3ee90))
* improve entity chip UI - remove close icons, add avatars, dark theme colors ([d710331](https://github.com/HankHuang0516/realbot/commit/d71033110db0c14643eb19a83717324e6915889a))
* improve local/private IP webhook rejection with OpenClaw Overview guidance ([f89aef5](https://github.com/HankHuang0516/realbot/commit/f89aef56ec78860e70ea6ba90dde6aa65c2fcf25))
* improve mission dialog UX - checkbox layout, field labels, delete buttons ([ce833fd](https://github.com/HankHuang0516/realbot/commit/ce833fd2ee2c65d89b6f7d8fc7f6532e3ec3352c))
* improve schedule history display, matching accuracy, and pagination ([e70df42](https://github.com/HankHuang0516/realbot/commit/e70df426e1f9de4daf789cff83c40f96ebaa8d9e))
* include botSecret in push messages for official bot entities ([c0c6a52](https://github.com/HankHuang0516/realbot/commit/c0c6a52b876bd4fa3a4f03cf7500f8f78389e1e7))
* **screenshot:** increase body limit to 5mb for screenshot-result endpoint ([661d076](https://github.com/HankHuang0516/realbot/commit/661d076f35208c1759162f55d369812dca0fb302))
* increase MAX_ENTITIES_PER_DEVICE to 8 for debug entity support ([7c638f2](https://github.com/HankHuang0516/realbot/commit/7c638f2ecc809f478fddd4800201ccdaf4e6c47a))
* increase max-turns to 15 and add intermediate feedback for AI chat ([3bbd3aa](https://github.com/HankHuang0516/realbot/commit/3bbd3aade18241a73c33bb527a662f86e7ae65f2))
* install Claude CLI as dependency in proxy container ([90409a3](https://github.com/HankHuang0516/realbot/commit/90409a3f7d3cbe40e540bfbf6e08e9c427e48663))
* instruct AI to execute tools directly in non-interactive mode ([18d19f1](https://github.com/HankHuang0516/realbot/commit/18d19f13fb3346a010715310ff6d1cb4715f5c4b))
* instruct bots to update mood/emoji only, not narrate messages ([1354657](https://github.com/HankHuang0516/realbot/commit/135465713fd607d1d6a11b0e6d3ed73826bdaa82))
* IP detection runs every 10 min, preserves all history from DB ([414e2a2](https://github.com/HankHuang0516/realbot/commit/414e2a2709acdff71f26163e6b47a63c1fcbe9d1))
* keyboard covers chat input and auto-scroll to latest message ([4ce4f31](https://github.com/HankHuang0516/realbot/commit/4ce4f31d5642ad3aff6f06d43233b70736d04c68))
* keyboard covers chat input on Pixel 9a (Android 15 edge-to-edge) ([49c4ea4](https://github.com/HankHuang0516/realbot/commit/49c4ea4387b11765230e3fc13c8885ccb917385e))
* let entity cards scroll independently via RecyclerView ([d76dea7](https://github.com/HankHuang0516/realbot/commit/d76dea78f42a51e7ab227a8d2e0bd38b59237f3e))
* limit free bot to one binding per device ([6add614](https://github.com/HankHuang0516/realbot/commit/6add6141416698843c0fce14bae02a0f2a48954d))
* load officialBindingsCache on startup and fix admin BIGINT conversions ([b0f0bb8](https://github.com/HankHuang0516/realbot/commit/b0f0bb892207278ecc0dbb046fd14e16856e9239))
* make speak-to and broadcast webhook push fire-and-forget ([f73cdba](https://github.com/HankHuang0516/realbot/commit/f73cdbab50e916bba1bdf432abef0a147238a8f7))
* make sub-item delete buttons visible by default (opacity 0.5) ([480cfab](https://github.com/HankHuang0516/realbot/commit/480cfab4a68f5b2b41574c8f5d31ae53b0247e25))
* make usage limit unconditional for all client/speak calls ([d1f4d62](https://github.com/HankHuang0516/realbot/commit/d1f4d629daa39d378526c097b734e4a00004b6ce))
* mission notify chat bubble shows 發送至 and per-entity 已讀 status ([4872aab](https://github.com/HankHuang0516/realbot/commit/4872aab6a23008ae1816ce7b82b828abcf2b781f))
* monthly bot rental requires per-entity payment, rename button to 購買月租版 ([3c4953d](https://github.com/HankHuang0516/realbot/commit/3c4953d476fece915ac483a0d3ede6339577c837))
* mount /docs static route for webhook troubleshooting page ([75acb71](https://github.com/HankHuang0516/realbot/commit/75acb71ed5d52e4bddb0a90a8c72b3f5189c4f1d))
* **channel:** multi-account portal UI + auth.js regression fixes ([8531d69](https://github.com/HankHuang0516/realbot/commit/8531d698dbf1e6522ae2d903004380e47cacd29a))
* normalize webhook URL double-slash + add token debug logging ([e5cd7d3](https://github.com/HankHuang0516/realbot/commit/e5cd7d37be034531361045cd9491dcc012bbc0f2))
* notify prompt includes all assigned TODOs regardless of priority ([d79a394](https://github.com/HankHuang0516/realbot/commit/d79a394eaf9881c6e1ebccba10dfdf07a515d648))
* only dedup bot messages, not user messages in saveChatMessage ([96bc624](https://github.com/HankHuang0516/realbot/commit/96bc6247e25d4b60e430014b126ad86a8ff97807))
* persist DATABASE_URL to file for Claude CLI child processes ([f177bed](https://github.com/HankHuang0516/realbot/commit/f177bededbfec67061fb02351d0a48f7ff6a87de))
* preserve entity name across unbind/rebind operations ([0f5b771](https://github.com/HankHuang0516/realbot/commit/0f5b771ca1f457817165acf8eec1f4fe70a1b76b)), closes [#2](https://github.com/HankHuang0516/realbot/issues/2) [#1](https://github.com/HankHuang0516/realbot/issues/1) [#3](https://github.com/HankHuang0516/realbot/issues/3)
* prevent AI chat timeout — optimize prompt and fix spawn bugs ([18f743e](https://github.com/HankHuang0516/realbot/commit/18f743ed411d692a835342e59e6dc032d5c638a4))
* prevent entity cards from disappearing + add CI workflow ([#29](https://github.com/HankHuang0516/realbot/issues/29)) ([09856c8](https://github.com/HankHuang0516/realbot/commit/09856c8598c80efabd811d2d93cd6756770d853e))
* prevent entity cards from disappearing + improve logging for [#16](https://github.com/HankHuang0516/realbot/issues/16) ([931d426](https://github.com/HankHuang0516/realbot/commit/931d42650c34033376fbe43583b9599f0c1b7d8d))
* prevent entity cards from hiding in edit mode + fix price inconsistency ([#16](https://github.com/HankHuang0516/realbot/issues/16), [#17](https://github.com/HankHuang0516/realbot/issues/17)) ([2f12e84](https://github.com/HankHuang0516/realbot/commit/2f12e8428ff0b78108751c6db45d761ef5425d08))
* prevent entity message echo by deduplicating bot chat messages ([41c5bc6](https://github.com/HankHuang0516/realbot/commit/41c5bc6dc5367d642d5d8d79ffc7db466e631227))
* **entities:** prevent Gson crash when bot sends non-numeric parts value ([f29c550](https://github.com/HankHuang0516/realbot/commit/f29c5502b2b631ed23474b0387476909ad526b1b))
* prevent usage counter inflation and sync client-server usage ([afd6483](https://github.com/HankHuang0516/realbot/commit/afd6483aad1783e5e6754918ba76803db17f94e4))
* properly normalize double slashes in webhook URL path ([bebc402](https://github.com/HankHuang0516/realbot/commit/bebc402b57ea7145c11b5c429e64ffe85645f901))
* Railway startCommand remove cd backend (root dir is already backend) ([6a734aa](https://github.com/HankHuang0516/realbot/commit/6a734aa48bb1f731e9b1cdf05cbc638436956cc9))
* redesign bot-to-bot limiter to counter-based (no time reset) ([39d9b0e](https://github.com/HankHuang0516/realbot/commit/39d9b0e11e3c1cc327b8fcfdf3f12453cc03be71))
* **claude-cli-proxy:** redirect Python logging to stdout ([1417618](https://github.com/HankHuang0516/realbot/commit/1417618a330e570eb3b5884200ae98eb6caa8be2))
* reduce bot API test from 20 to 10 cases to fit 300s runner timeout ([328e330](https://github.com/HankHuang0516/realbot/commit/328e3308971f5c80ff6a0092a678219b941523ed))
* reduce gatekeeper false positives + show blocking reason on both platforms ([#18](https://github.com/HankHuang0516/realbot/issues/18)) ([2006bbc](https://github.com/HankHuang0516/realbot/commit/2006bbc74b710c2201a29b74380e193b1df5f633))
* regenerate PNG with CJK font support and updated QR codes ([67f6b48](https://github.com/HankHuang0516/realbot/commit/67f6b489d982f7981a854cb99714c255540f282a))
* **screenshot:** register 5mb json limit before global middleware ([f4e5e41](https://github.com/HankHuang0516/realbot/commit/f4e5e418d2964480966e8bbbce6c7681748af20a))
* **screen-control:** remove 20-capture session limit, keep 500ms interval only ([61b4665](https://github.com/HankHuang0516/realbot/commit/61b4665c1dc04cade28ef92e6a8d5585416dd203))
* remove AD_ID permission and add changesNotSentForReview flag ([ebd2fd7](https://github.com/HankHuang0516/realbot/commit/ebd2fd754e7b4c5d8a6b435a079aa0947ffc6113))
* **portal:** remove broken security info block from env-vars page ([3742253](https://github.com/HankHuang0516/realbot/commit/374225367b9f8ecbc5193af4734ff69cc5941c28))
* **upload:** remove changesNotSentForReview param (rejected by Play API) ([45aef55](https://github.com/HankHuang0516/realbot/commit/45aef55e5d9d798f9d79a7e5a27dc2c97fa6e302))
* remove duplicate currentUser declaration causing SyntaxError in env-vars.html ([b92156d](https://github.com/HankHuang0516/realbot/commit/b92156d8e26bea70a9f9eea49462e902f0cbf55d))
* remove schedule tab from web nav, add Chinese translations for Android schedule ([5cb8e7b](https://github.com/HankHuang0516/realbot/commit/5cb8e7be350b7ba8c33e7ff093f16173ca1b834b))
* rename loading UI, entity card removal, copy button UX ([fe57a80](https://github.com/HankHuang0516/realbot/commit/fe57a803ce5acd341b4ce3d8f356c8520ea3b78a))
* repair all GitHub Actions CI failures ([ea06c7e](https://github.com/HankHuang0516/realbot/commit/ea06c7e67bf7cead823fdaac449113b732269a86))
* replace broken QR codes with valid ones for Web portal and Android app ([9a5ec3a](https://github.com/HankHuang0516/realbot/commit/9a5ec3a211eb18c18c0775fdbc8745ce9eadf253))
* replace emoji icons with proper SVG brand icons + fix table overflow ([8bce357](https://github.com/HankHuang0516/realbot/commit/8bce3570e33453f6f991b2f71c0444aab4c564b4))
* **claude-cli-proxy:** replace hatchling local package install with requirements.txt ([523c474](https://github.com/HankHuang0516/realbot/commit/523c474fc12cc69f6ae2071e687287f5eacc8a76))
* replace inline 44KB skill doc with short hint in bind response ([a27985c](https://github.com/HankHuang0516/realbot/commit/a27985c73da02635d4a698aa5a0e42e7df47027d))
* replace sessions_create with session discovery + handshake ([0995b04](https://github.com/HankHuang0516/realbot/commit/0995b04a20cf0bf3da2c0e1b5c83ba07df4a7258))
* replace system edit icon with custom Material icon for visual consistency ([0b7a179](https://github.com/HankHuang0516/realbot/commit/0b7a1798635e1fcffaef61c2dc6630985fbcc7a0)), closes [#888888](https://github.com/HankHuang0516/realbot/issues/888888) [#4FC3F7](https://github.com/HankHuang0516/realbot/issues/4FC3F7)
* **screenshot:** report onFailure error immediately to backend ([49e30bd](https://github.com/HankHuang0516/realbot/commit/49e30bd5d6f03d00b76328b6a0b7bfb5adea0e80))
* resetBotToBotCounter now resets all entity slots dynamically ([b35a099](https://github.com/HankHuang0516/realbot/commit/b35a0995d585cbcf572d2029e0ef294c207e6a30)), closes [#85](https://github.com/HankHuang0516/realbot/issues/85)
* resolve "Invalid Date" in notification items ([1905956](https://github.com/HankHuang0516/realbot/commit/19059565b49cb8f270a397719cf9136661944334))
* resolve 4 GitHub issues in parallel — [#100](https://github.com/HankHuang0516/realbot/issues/100), [#111](https://github.com/HankHuang0516/realbot/issues/111), [#112](https://github.com/HankHuang0516/realbot/issues/112), [#113](https://github.com/HankHuang0516/realbot/issues/113) ([43247db](https://github.com/HankHuang0516/realbot/commit/43247db706436f8c9b592e77ab73563f3c2e24f6))
* resolve 5 open issues ([#34](https://github.com/HankHuang0516/realbot/issues/34), [#35](https://github.com/HankHuang0516/realbot/issues/35), [#36](https://github.com/HankHuang0516/realbot/issues/36), [#37](https://github.com/HankHuang0516/realbot/issues/37), [#38](https://github.com/HankHuang0516/realbot/issues/38)) ([4a7b211](https://github.com/HankHuang0516/realbot/commit/4a7b211de216c1b88d2bb2f8feba35fe806eba25))
* resolve 7 GitHub issues — parallel agent batch fix ([bbea86d](https://github.com/HankHuang0516/realbot/commit/bbea86da677f11f115f29d53d32225ca1a337073)), closes [#97](https://github.com/HankHuang0516/realbot/issues/97)
* resolve 8 open issues via multi-agent parallel implementation ([8fe348c](https://github.com/HankHuang0516/realbot/commit/8fe348ca6841b67d6434b3b9c14605a787d3ee9b)), closes [#77](https://github.com/HankHuang0516/realbot/issues/77) [#76](https://github.com/HankHuang0516/realbot/issues/76) [#72](https://github.com/HankHuang0516/realbot/issues/72) [#73](https://github.com/HankHuang0516/realbot/issues/73) [#79](https://github.com/HankHuang0516/realbot/issues/79) [#80](https://github.com/HankHuang0516/realbot/issues/80) [#75](https://github.com/HankHuang0516/realbot/issues/75) [#74](https://github.com/HankHuang0516/realbot/issues/74)
* **android:** resolve ChatIntegrity false-positives and LinkPreviewHelper NPE ([a2b53be](https://github.com/HankHuang0516/realbot/commit/a2b53bed001ea2e5ccb99bf821f12e5e306be7f3)), closes [#141](https://github.com/HankHuang0516/realbot/issues/141) [#142](https://github.com/HankHuang0516/realbot/issues/142)
* resolve cross-device display codes and prevent bubble count false positives ([bb2a5b1](https://github.com/HankHuang0516/realbot/commit/bb2a5b191a99cd31146f892a5e77d7bab847be9d)), closes [#86](https://github.com/HankHuang0516/realbot/issues/86) [#88](https://github.com/HankHuang0516/realbot/issues/88) [#89](https://github.com/HankHuang0516/realbot/issues/89)
* resolve ESLint and Android Lint CI failures ([cae5b94](https://github.com/HankHuang0516/realbot/commit/cae5b940a1da49e04526890844eaee92dfbe2e5b))
* resolve ESLint and Android Lint CI failures ([9f4d7c1](https://github.com/HankHuang0516/realbot/commit/9f4d7c1323049776515d65883286617c7ffcaaed))
* **chat:** resolve link preview crash and coroutine lifecycle issues ([3ed4be4](https://github.com/HankHuang0516/realbot/commit/3ed4be45d13a463bcf1d8d306e78c2c14145d6a5)), closes [#131](https://github.com/HankHuang0516/realbot/issues/131) [#136](https://github.com/HankHuang0516/realbot/issues/136) [#128](https://github.com/HankHuang0516/realbot/issues/128) [#127](https://github.com/HankHuang0516/realbot/issues/127) [#130](https://github.com/HankHuang0516/realbot/issues/130)
* resolve merge conflicts in package.json/package-lock.json ([e66abf1](https://github.com/HankHuang0516/realbot/commit/e66abf13b3b9d2fbf2ec7e30721741ea58921cfe))
* restore CI workflows, fix eslint version conflict, add Unix gradlew ([a8e6f27](https://github.com/HankHuang0516/realbot/commit/a8e6f2725d70f35f4905b99420502028b81509ef))
* restore UTF-8 encoding on files corrupted by PowerShell ([58bf0b3](https://github.com/HankHuang0516/realbot/commit/58bf0b35102be3c4d9e751b98e18c300240f98b3))
* **screen-control:** revert OkHttp to HttpURLConnection, remove typeWindowContentChanged ([8410931](https://github.com/HankHuang0516/realbot/commit/841093104ec587ee379041d58e353a6c32932ac6))
* revert v1.0.9 release + fix Railway healthcheck (nixpacks server.js→index.js) ([9af0e10](https://github.com/HankHuang0516/realbot/commit/9af0e106694dc38a795d4748f3b6f0878de2ad99))
* **ui:** round border corners to match screen + halve border thickness ([642b455](https://github.com/HankHuang0516/realbot/commit/642b455baf95c094b7c0509e755fb8e1d90e9330))
* sanitize raw CLI JSON in async path + stream-json monitoring for proxy ([98d6216](https://github.com/HankHuang0516/realbot/commit/98d621664550eea0ede08a9a6ea0033d5ce4e9dd))
* sanitize raw JSON from AI chat proxy response ([2e394a2](https://github.com/HankHuang0516/realbot/commit/2e394a2c89aa1c57563ff8c5b6c68bdbc7f4c833))
* save bot responses to chat history and add AUTH to entity messaging ([7c8a85d](https://github.com/HankHuang0516/realbot/commit/7c8a85d3a4518659625060b6a2294bf45854abd3))
* schedule card add icon and rename to 進入排程 ([dc013be](https://github.com/HankHuang0516/realbot/commit/dc013be1076df57160455cd1a3816e6607266aa3))
* server-side pre-execute close_issue intent to bypass model safety training ([b760224](https://github.com/HankHuang0516/realbot/commit/b7602246688b20324a781ec7603655931759834c)), closes [#123](https://github.com/HankHuang0516/realbot/issues/123)
* set CLAUDE_DANGEROUSLY_SKIP_PERMISSIONS env var for headless CLI ([970430d](https://github.com/HankHuang0516/realbot/commit/970430d77521f8546dea0a156f30fd6882eaf923))
* short-circuit AI call when close_issue is pre-executed ([3b616aa](https://github.com/HankHuang0516/realbot/commit/3b616aab36cae364599c584e8fff467c0404e79d))
* show actual TapPay error details instead of generic message ([1dec9de](https://github.com/HankHuang0516/realbot/commit/1dec9deb4addab69da7845797c753eaa9bf774ae))
* show authenticated nav on info page for logged-in users ([d5c864e](https://github.com/HankHuang0516/realbot/commit/d5c864e23327c1feb185a8c0cb3a5063c997ac4b))
* show binding count and conversation stats for free bots in admin bot list ([88139c9](https://github.com/HankHuang0516/realbot/commit/88139c9f3726863a013ef491badaf1d9d8b6265b))
* show clear loading status during bot binding (handshake/connect/success) ([a8713e1](https://github.com/HankHuang0516/realbot/commit/a8713e1b36f8cba123240140dad88d44a62a8477))
* **web:** show edit mode button by using inline-flex display ([020ff1d](https://github.com/HankHuang0516/realbot/commit/020ff1db5635153e0ad2a6571e479e32fbdfe63a))
* show upload progress status when sending images in AI chat ([219f04f](https://github.com/HankHuang0516/realbot/commit/219f04fee016eca9103f323fb9af061c2a6c4661))
* smart 401 handling — guide bot to retry with setup_password ([88a42ea](https://github.com/HankHuang0516/realbot/commit/88a42eaada90c39c4865ef19144c1aebfcf82a5e))
* smart cleanup of stale official borrow bindings ([36ad43f](https://github.com/HankHuang0516/realbot/commit/36ad43fe4c8351eab224c81b530582b1a582c9b4))
* startup cleanup releases all stale bot assignments on deploy ([10380ee](https://github.com/HankHuang0516/realbot/commit/10380ee9d171aa17092889f05b92e639f5a74c92))
* strengthen gatekeeper both locks to catch real-world attacks ([4b5ee5a](https://github.com/HankHuang0516/realbot/commit/4b5ee5ab4296cc490913e60d0599ec3830aad733))
* strengthen system prompt to override model's GitHub permission hesitation ([7c05798](https://github.com/HankHuang0516/realbot/commit/7c057988a1e44dc5f504766ab3c036ce4a9f40b9))
* suppress broadcast echo in Chat and update delivery receipts on re-sync ([7559ad4](https://github.com/HankHuang0516/realbot/commit/7559ad4c3b16dd09d129270083182a796463978f))
* switch to non-instalment merchant ID (GP_POS_1) ([65d6c30](https://github.com/HankHuang0516/realbot/commit/65d6c30dcd3546b2832a71afc1e4a0edaacb0d85))
* sync Google Play subscription with server to lift usage limits ([925a936](https://github.com/HankHuang0516/realbot/commit/925a93659ca764e2cd16d4aac94e881e1efc14f4))
* sync web-sent messages to Android chat + merge broadcast bubbles ([2dce0a2](https://github.com/HankHuang0516/realbot/commit/2dce0a2dff1855748339c4e210ceeef8c3186e8b))
* telemetry path in sub-routers, duration=0 handling, usage limit scope ([e5c9aa3](https://github.com/HankHuang0516/realbot/commit/e5c9aa351722656d0697c0056c5e278168410cb2))
* treat handshake timeout as success (AI processing = tool works) ([a24ef23](https://github.com/HankHuang0516/realbot/commit/a24ef23c1ffeedbbc37a4188f60bfd98e83ef554))
* **ssl:** trust-all TrustManager in debug builds for emulator SSL fix ([800fb0e](https://github.com/HankHuang0516/realbot/commit/800fb0e2355ab34671854a09a54a635855c51ed2))
* unify feedback button style with other settings buttons ([6b9c3ff](https://github.com/HankHuang0516/realbot/commit/6b9c3ff49bb94e95210cf33c2a13403cec90e970))
* update claude-proxy skill template with correct openclaw-claude-proxy steps ([e3dbc28](https://github.com/HankHuang0516/realbot/commit/e3dbc289644dae02f6b16c820133a3cf0484311c))
* update footer description to AI collaboration platform ([7b5550b](https://github.com/HankHuang0516/realbot/commit/7b5550bb7eb4aa3400d55214872d471d549bfd86))
* update LATEST_APP_VERSION from 1.0.3 to 1.0.14 ([3320f12](https://github.com/HankHuang0516/realbot/commit/3320f122fe883ac0fcb9424f2830e371e1bcbe24))
* update sessions_send error messages to reference official docs instead of hardcoded config paths ([f3b8313](https://github.com/HankHuang0516/realbot/commit/f3b8313bb001c013ee664a652010520b90dcef18))
* use absolute path for db-query.js in system prompt ([c73af64](https://github.com/HankHuang0516/realbot/commit/c73af6423545f4809f7cce3de81abe795a3d5443))
* use API pattern format instead of full URL with credentials in push messages ([192ddd4](https://github.com/HankHuang0516/realbot/commit/192ddd4c12735c70698c045d42d36132e5be10a7))
* **admin:** use cookie-based auth for DELETE official-bot endpoint ([93642d4](https://github.com/HankHuang0516/realbot/commit/93642d4f4a6eeb788d2c1604be5b56d5306fcc43))
* use device timezone for cron schedule execution ([84df76c](https://github.com/HankHuang0516/realbot/commit/84df76cb20d6f25e307e1c1f44ff9540aaff1406))
* use Dockerfile for claude-cli-proxy to ensure git is installed ([838afa7](https://github.com/HankHuang0516/realbot/commit/838afa78389211c5baa711e7c9e36a60d0a6db5c))
* use flickr-sdk v6 CommonJS API (Flickr.Upload constructor) ([b78ee97](https://github.com/HankHuang0516/realbot/commit/b78ee97686f2b374f7987506aec59148a3c0ed7d))
* use matching TapPay sandbox partner_key and merchant_id ([84e0d7c](https://github.com/HankHuang0516/realbot/commit/84e0d7caed57e82ef67a006e60afb8abc97072d7))
* use own TapPay merchant credentials (app_id 166632) ([b87b1fd](https://github.com/HankHuang0516/realbot/commit/b87b1fdfc228ac28fa338ac4ab0ebe72db7cb471))
* use regular callback for FB.login (async not supported by Facebook SDK) ([46bb49f](https://github.com/HankHuang0516/realbot/commit/46bb49fdc9acdca3f145414dbfaa23ddacc3d915))
* use rsvg-convert for PNG with proper emoji + CJK rendering ([5ad4612](https://github.com/HankHuang0516/realbot/commit/5ad4612a328cd788fc6332e94791e5151c113fc3))
* use stdin for Claude CLI prompt + increase timeout to 55s ([73d3aab](https://github.com/HankHuang0516/realbot/commit/73d3aab5af5b1f853f8d8b1711d32b8939761d3e))
* warn bots not to edit config files directly, use openclaw CLI ([77ffeb4](https://github.com/HankHuang0516/realbot/commit/77ffeb4d794a1d4ae109f24aeb2aaa4eb595b2d8))
* webhook error handshake validation and message matching ([ce12721](https://github.com/HankHuang0516/realbot/commit/ce1272111d1e4563533c6ce2f931fa3197fe7512))
* webhook error shown in chat when no webhook or push fails ([bf21157](https://github.com/HankHuang0516/realbot/commit/bf21157621c3325986ceb7edc54cb5948ccfe7e0))
* widen QR cards, replace blurry emoji, fix corrupted QR data ([08cadb0](https://github.com/HankHuang0516/realbot/commit/08cadb053feaf45607f98bdcb829d45c732c2266))
* widget info pointing to old layout causing load failure ([91b5430](https://github.com/HankHuang0516/realbot/commit/91b5430ab58d3c2800ccbfef99421311ebb29f9c))
* **claude-cli-proxy:** wrap startCommand with sh -c for PORT variable expansion ([ab7c431](https://github.com/HankHuang0516/realbot/commit/ab7c4313c969c6e260436a98d4438a76f822e0c3))


### Features

* 5 improvements - entity selection fix, multi-entity TODO, system skill, Markwon MD, bot file storage ([140b73f](https://github.com/HankHuang0516/realbot/commit/140b73fbc337e7c78fed0027e233f9b1f7b08d02))
* add /api/ai-support/proxy-sessions admin endpoint for session monitoring ([ecf3de1](https://github.com/HankHuang0516/realbot/commit/ecf3de1cc2ec0944c1449b344b70b9423ae185b6))
* **auth:** add account deletion page and API for Google Play Data Safety ([30fb56c](https://github.com/HankHuang0516/realbot/commit/30fb56c8cd8d9d920f86309cebd80186058e26b2))
* add account login to Android app for data recovery after reinstall ([95a9b90](https://github.com/HankHuang0516/realbot/commit/95a9b908f096a72a0414ea848d69106b74ea9598))
* add admin dashboard visualization charts for bot stats and platform breakdown ([ead2451](https://github.com/HankHuang0516/realbot/commit/ead245122f3a04b95465aaee10c5483101e79c5c))
* add admin role awareness to AI support proxy ([b3cd461](https://github.com/HankHuang0516/realbot/commit/b3cd4613ba710a1dcbcd845b3de8119b3964356d))
* add AI chat concurrency queue with auto-retry ([e1c2021](https://github.com/HankHuang0516/realbot/commit/e1c2021b097e0c1cb5ebd774382a476f0235f4e4))
* **admin:** add AI Support Chat widget on admin dashboard ([bde04bb](https://github.com/HankHuang0516/realbot/commit/bde04bb5aa4530b8a7b5288b9b842e3c1876954e))
* add AI-powered binding troubleshooter with rule engine + Claude CLI proxy ([f2052fd](https://github.com/HankHuang0516/realbot/commit/f2052fd1c6cc7ea5da05411ae5543c7b5bb77791))
* add all 14 tests to regression runner incl. credential-based tests ([f1f819c](https://github.com/HankHuang0516/realbot/commit/f1f819c90b2d2106c49fff164a39a8387e18cc90))
* add API hint (注意) to webhook push messages ([79b52df](https://github.com/HankHuang0516/realbot/commit/79b52dfc0ea77ad5fc22c743110d7ddb34c0f80f))
* add bbb880008@gmail.com as admin user ([78dc1a4](https://github.com/HankHuang0516/realbot/commit/78dc1a4ae67f0fa161b4be66ada11434745e023d))
* add broadcast curl template to push notification + skill doc ([003f9a3](https://github.com/HankHuang0516/realbot/commit/003f9a33acb73bf9d371b1b4b594456268d94d5c))
* add broadcast recipient info toggle to Web Portal settings ([#105](https://github.com/HankHuang0516/realbot/issues/105)) ([61fb99c](https://github.com/HankHuang0516/realbot/commit/61fb99cd48cf0f8165a7d7c3c5cdcb652c0eb2ba))
* add buildBroadcastRecipientBlock() helper ([#105](https://github.com/HankHuang0516/realbot/issues/105)) ([a1e02e5](https://github.com/HankHuang0516/realbot/commit/a1e02e59aba1bd346de1ed06bb210fe433789909))
* **ui:** add Channel binding type indicators across Portal and Android ([bf72728](https://github.com/HankHuang0516/realbot/commit/bf7272820e99700cdbf0fad109f69a8ac46fdd66))
* add Claude CLI warmup to reduce cold start latency ([856e16d](https://github.com/HankHuang0516/realbot/commit/856e16d54cff23e2cb29f2aaba2bfb13b119f01c))
* add comprehensive notification system (Socket.IO, Web Push, FCM prep, preferences) ([f182810](https://github.com/HankHuang0516/realbot/commit/f182810ce93c88b20a793e7ac6b17e25ed9e3a04))
* add crash reporting & debug logging for issue [#120](https://github.com/HankHuang0516/realbot/issues/120) ([0245cfe](https://github.com/HankHuang0516/realbot/commit/0245cfe2bd48cff85c4bd9058377909a007d4b5d))
* add cross-device bot-to-bot communication via public entity codes ([880f8d4](https://github.com/HankHuang0516/realbot/commit/880f8d4b2190be959b81eae30e2b473d222ab785)), closes [#70](https://github.com/HankHuang0516/realbot/issues/70)
* add debug diagnostics to webhook register response and push errors ([b3c3ad9](https://github.com/HankHuang0516/realbot/commit/b3c3ad9863465d888c4440653622acc1ee911540))
* **settings:** add Delete Account entry in Settings (web + Android) ([ccac5a5](https://github.com/HankHuang0516/realbot/commit/ccac5a56145904375565278d2d84c06be6b8d344))
* add device preferences module with DB table ([#105](https://github.com/HankHuang0516/realbot/issues/105)) ([3a946e4](https://github.com/HankHuang0516/realbot/commit/3a946e4eba55e04481f1d7b43c88b7ba11b2b0f1))
* add device preferences UI in SettingsActivity + localized strings ([#105](https://github.com/HankHuang0516/realbot/issues/105)) ([c0d306c](https://github.com/HankHuang0516/realbot/commit/c0d306c78f4a4e970ac3ca1c4a9e0d3b8cb68ac0))
* add device telemetry debug buffer (~1MB/device) with auto-capture ([0e00872](https://github.com/HankHuang0516/realbot/commit/0e00872a18e4eb98d4a06f7f1a93d19bfbd2a2d5))
* **db:** add device_vars table + CRUD helpers for encrypted env vars ([c2342f8](https://github.com/HankHuang0516/realbot/commit/c2342f860f85604ed7d00456948236daf0be5252))
* add device-preferences API endpoints (GET/PUT) ([#105](https://github.com/HankHuang0516/realbot/issues/105)) ([515eef1](https://github.com/HankHuang0516/realbot/commit/515eef17fcfe05882f3687c4e26e7ce76a6c9b1f))
* add E-Claw vs Telegram channel comparison page ([9dd9778](https://github.com/HankHuang0516/realbot/commit/9dd97789578d803f2baf6c92f037afc127748a7f))
* add E-Claw vs Telegram comparison infographic (SVG) ([cca7dcd](https://github.com/HankHuang0516/realbot/commit/cca7dcd2aa7f65ec0cf6e4556f1545dc914785d9))
* **web:** add edit mode to dashboard entity cards (parity with Android) ([0143de6](https://github.com/HankHuang0516/realbot/commit/0143de67a29d274b9cd7e0c26ec89a2c19c6dea2))
* add edit mode with drag-to-reorder entity cards ([fa5b1ae](https://github.com/HankHuang0516/realbot/commit/fa5b1ae6aacd40596399da7e9dd9c2d20cb628ea))
* add email binding from Android app for web portal login ([#42](https://github.com/HankHuang0516/realbot/issues/42)) ([61782b8](https://github.com/HankHuang0516/realbot/commit/61782b8f3bb9f48a660afb00cb19286198117964))
* add entity assign field to TODO add/edit (web + Android) ([4e41d8c](https://github.com/HankHuang0516/realbot/commit/4e41d8c7668c641f47966e51edfa552f9c3d55f5))
* add expects_reply field to bot-to-bot speak-to and broadcast APIs ([eb90681](https://github.com/HankHuang0516/realbot/commit/eb90681299381472b28c0abd539f48088a8b6da0))
* add file management page to web portal and Android app ([096d8e3](https://github.com/HankHuang0516/realbot/commit/096d8e31c58288e4975333b131939f48e470a6b8))
* add free bot limit hint and sold-out rental demand flow ([#81](https://github.com/HankHuang0516/realbot/issues/81)) ([4669b19](https://github.com/HankHuang0516/realbot/commit/4669b19371d35fe29e6f99853f2382f7a2c24c54))
* add free bot TOS agreement flow (Web + App sync) ([5932bc4](https://github.com/HankHuang0516/realbot/commit/5932bc4de9383291b0020ecd38ad05d8e314fd9b))
* add gatekeeper module for free bot abuse prevention ([0abaf0d](https://github.com/HankHuang0516/realbot/commit/0abaf0d9d17d6b78d091ed4f8868bbc7a9659bd0))
* **remote-control:** add getWindows() fallback + pixel screenshot endpoint ([3a1d7b9](https://github.com/HankHuang0516/realbot/commit/3a1d7b97b6a46201a15b88d397b100d289e4b238))
* **remote-control:** add ime_action command to submit keyboard input ([130f2dc](https://github.com/HankHuang0516/realbot/commit/130f2dce744a268fb13ff0febd86d7dda569eda1))
* add in-place entity refresh (rebind without unbinding) ([75d6291](https://github.com/HankHuang0516/realbot/commit/75d629113ae9e95527ece9ed5e15b46ad2b1740b))
* **admin:** add individual remove button to official bot list ([8288512](https://github.com/HankHuang0516/realbot/commit/828851279a6a17415cadf088c5766718a6f77cdf))
* **chat:** add inline image preview for direct image URLs ([cbe0561](https://github.com/HankHuang0516/realbot/commit/cbe0561f18420a6e47a82b7441086d7df3a8b0c0))
* add isTestDevice flag for accurate test device cleanup ([4621cde](https://github.com/HankHuang0516/realbot/commit/4621cde52192c7478e47d1a97f770cbfd74c9e08))
* add Jest+Supertest, Android instrumented test, and CI/CD workflows ([c0475eb](https://github.com/HankHuang0516/realbot/commit/c0475eb45cb8989c210cd5966008198b2245170e))
* **android:** add JIT vars approval dialog + sync locked flag ([f9f94b7](https://github.com/HankHuang0516/realbot/commit/f9f94b7e291ad30d68948ffb4b9189e871baee48))
* add JIT vars approval dialog to Portal shared socket handler ([48b4b7e](https://github.com/HankHuang0516/realbot/commit/48b4b7eb2c92e0494e707e192293174f40279b78))
* add local variables vault — device-only .env-like secret store ([a84b7be](https://github.com/HankHuang0516/realbot/commit/a84b7be1e0596878ec1b19899dbb3384661bb612))
* add Mission Control & Chat Attachments comparison rows, fix Setup description ([cc75b13](https://github.com/HankHuang0516/realbot/commit/cc75b135a9c41ab983f500e0a49e7ac2e4d442cf))
* add multi-language support (8 languages) for Web Portal and Android ([e049536](https://github.com/HankHuang0516/realbot/commit/e0495360dfbb044bac34357040e0c42ede923341))
* add official bot pool DB tables and CRUD functions ([93a46e4](https://github.com/HankHuang0516/realbot/commit/93a46e45182a901b8c2500a821592b7ac67ad0ec))
* add official skill templates and installation steps to skill dialog ([73b158e](https://github.com/HankHuang0516/realbot/commit/73b158e0679e89f30a5003091b56df830f223d9a))
* add OpenClaw channel plugin + backend Channel API ([b80c58d](https://github.com/HankHuang0516/realbot/commit/b80c58d0d04170d1f3d03afab0788047a80f4d25))
* add paid_borrow_slots system for free rebinding after accidental unbind ([3dd7646](https://github.com/HankHuang0516/realbot/commit/3dd764601d9625b25d8deea10862a67258d0cfd0))
* add photo (Flickr) and voice (base64) media support to chat ([46dc381](https://github.com/HankHuang0516/realbot/commit/46dc38129be987720795e289f6856b57340cff4d))
* add photo upload to feedback system (web + Android) ([02dac84](https://github.com/HankHuang0516/realbot/commit/02dac844bc4ff548ba04228ce2125b0e9b8fd599))
* add photo upload to settings feedback dialog ([31db074](https://github.com/HankHuang0516/realbot/commit/31db0749958c4c187474b258338fbf5ccdbbf410))
* add POST /api/admin/transfer-device endpoint ([fbb4c97](https://github.com/HankHuang0516/realbot/commit/fbb4c975d8cf07178fc0a09426f8478074f505ca))
* add public navigation bar with FAQ, Release Notes, and User Guide pages ([248a6f0](https://github.com/HankHuang0516/realbot/commit/248a6f09eee1a4c6294dd894ec9aef7a49434619))
* add push health status tracking for bots (方案 A + B) ([c46a89c](https://github.com/HankHuang0516/realbot/commit/c46a89ccb0b851de1b4777039849b1aa51721fce))
* add push notification status tracking ([76c28ca](https://github.com/HankHuang0516/realbot/commit/76c28cac3070cc56201e3d9626e19d96df64f3cd))
* add scheduled cleanup for test and zombie devices ([d4b8a5e](https://github.com/HankHuang0516/realbot/commit/d4b8a5e9cf4ab80e4ca2f34c92253755b2f55508))
* add scheduling feature for timed message delivery ([c5fb333](https://github.com/HankHuang0516/realbot/commit/c5fb333ecd47d1c76828a69294149484ad9cf53e))
* **portal:** add Security & Privacy info card to Remote Control page ([9ec15c5](https://github.com/HankHuang0516/realbot/commit/9ec15c57f596a0b7849d698dd1ff457a8837c0be))
* **channel:** add self-test infrastructure + provision-device endpoint ([0ebcc3d](https://github.com/HankHuang0516/realbot/commit/0ebcc3d0bc422c692dd61064ea0e16fbccf48fb3))
* add server_logs table + /api/logs endpoint for remote debugging ([b7149f3](https://github.com/HankHuang0516/realbot/commit/b7149f381a296de865ac6a802eedb75e10f23a62))
* **admin:** add Setup Password field to create bot dialog ([d07a3fd](https://github.com/HankHuang0516/realbot/commit/d07a3fdcfb91089b456e61be899a4f5c68a63d5e))
* add skills_documentation_url to bind response for large skill doc fetch ([b733213](https://github.com/HankHuang0516/realbot/commit/b733213036198253ec54c7f67e700400b346abad))
* add slash command autocomplete in Chat input ([5eac498](https://github.com/HankHuang0516/realbot/commit/5eac498c356a551eaee790972601e7446ce5d873))
* add soul category to Mission Control for entity personality management ([8015fe5](https://github.com/HankHuang0516/realbot/commit/8015fe5bbda3aa8fced974425c3208554a04c39b))
* add system prompt hint in bot-to-bot push notifications ([08d9562](https://github.com/HankHuang0516/realbot/commit/08d95626cfe0be3f3ffe82eff1d4ccdebedac9ee))
* add telemetry SDK for Web + Android with auto-capture ([1a2da97](https://github.com/HankHuang0516/realbot/commit/1a2da97fa7ba5077aab6435ad7f71f9bfbef92bb))
* add temporary /api/server-ip endpoint for TapPay IP whitelist ([13ca34c](https://github.com/HankHuang0516/realbot/commit/13ca34c59379edf5abb585cccc52c7696258ef6b))
* add video sending support to chat with streaming playback ([c6e9da6](https://github.com/HankHuang0516/realbot/commit/c6e9da6e7ac16f59effc07d5a78e4c39707e4df7))
* add webhook troubleshooting FAQ page, unify error messages ([5d47055](https://github.com/HankHuang0516/realbot/commit/5d47055a8fe09074a4fec330897706567a2b47fc))
* add WebSocket transport for OpenClaw gateways with SETUP_PASSWORD ([053ba83](https://github.com/HankHuang0516/realbot/commit/053ba838aaba4fc7c8f4c2bec4c4e7791610be57))
* add XP/Level system for entities ([6b1dae3](https://github.com/HankHuang0516/realbot/commit/6b1dae3270e168f66943e509267e78d0c8f0ca8b))
* AI chat can query user's server logs without asking for credentials ([ef66011](https://github.com/HankHuang0516/realbot/commit/ef66011acf0bc1c565e4040c9dfd4169b4b30b29))
* AI chat enhancements — feedback entry, image support, Android app ([ebf3bc5](https://github.com/HankHuang0516/realbot/commit/ebf3bc5b245229e1eb7baa75e73966839d7ab145))
* AI chat runs in background — survives page refresh and navigation ([90ed8c1](https://github.com/HankHuang0516/realbot/commit/90ed8c19128f23c478f2c93970359a2e07fd4731))
* Android Channel API display + OpenClaw metadata + backend auth fix ([d6f42e3](https://github.com/HankHuang0516/realbot/commit/d6f42e3cbce4c1eea3556ea918cb82a7047100ed))
* Android chat media support (photo/voice) ([f82ea4b](https://github.com/HankHuang0516/realbot/commit/f82ea4baa875fa3ecd7ba276a6d7f72d2a6e629d))
* assign public_code to free bot bindings ([38017e6](https://github.com/HankHuang0516/realbot/commit/38017e683f0b1a7d7e700c49d6136f686fe8219c))
* async AI chat with direct Anthropic API + error handling ([4e9587a](https://github.com/HankHuang0516/realbot/commit/4e9587af007cc6cc28974ac35a6cf1daf43ac46b))
* auto-create GitHub issues for user feedback via AI chat ([4d44ed7](https://github.com/HankHuang0516/realbot/commit/4d44ed73e27ca281852047b104391b549bf9567e))
* auto-delete Railway preview environment on PR close ([cd399f6](https://github.com/HankHuang0516/realbot/commit/cd399f66b32bde7515c2f9967c969736a1e00658))
* auto-detect outbound IP on startup for TapPay whitelist ([35e0543](https://github.com/HankHuang0516/realbot/commit/35e0543d9d772e13d5c4475ae90a7888590eca6c))
* auto-provision channel API key on registration + settings UI ([cfb6e70](https://github.com/HankHuang0516/realbot/commit/cfb6e70524f01d1ef3db4edcaf5b85c353953ad1))
* backend photo cache (max 5/device) with backup_url for bots ([10eefe5](https://github.com/HankHuang0516/realbot/commit/10eefe5a3270f146490b705dc5b120f384bd89b2))
* bot-to-bot 已讀 delivery tracking ([9cf485e](https://github.com/HankHuang0516/realbot/commit/9cf485e0b47bf1ea5c532de2928ade428cc901b2))
* chat cloud sync recovery + app version in telemetry ([#123](https://github.com/HankHuang0516/realbot/issues/123), [#124](https://github.com/HankHuang0516/realbot/issues/124)) ([c293018](https://github.com/HankHuang0516/realbot/commit/c2930181251b8a8a93a50450b76ef4940b99a126))
* chat history with Room DB, avatar system, UI overhaul ([7480b27](https://github.com/HankHuang0516/realbot/commit/7480b27f86626ec3d6b8e6d80ff2385b30b6345b))
* collapsible notification preferences section in settings ([9b01eba](https://github.com/HankHuang0516/realbot/commit/9b01eba6ba395fb6c84414e824d36c84a6e0222b))
* complete E-Claw vs Telegram comparison with all 12 categories ([edf1a5a](https://github.com/HankHuang0516/realbot/commit/edf1a5a2a4986e08bc04da89c4e656aac9419951))
* complete Google + Facebook OAuth social login integration ([d366d12](https://github.com/HankHuang0516/realbot/commit/d366d1220b868d5c1dfe5e32d30be16e244c6ef0))
* connect claude-cli-proxy to Postgres for direct DB queries ([3d869c5](https://github.com/HankHuang0516/realbot/commit/3d869c502a4f969e3e886a424e550dbc42a0fc4d))
* **android:** cross-device contacts system for chat ([975fe5a](https://github.com/HankHuang0516/realbot/commit/975fe5a8ab8b3972a0614fe8d4ffb917cf544bca))
* cross-device contacts system with unified target bar ([e204cb2](https://github.com/HankHuang0516/realbot/commit/e204cb2a3244fd6e60b9fff2be2937004e093b7a))
* detect bot gateway disconnection (pairing required) and notify device ([5a929c2](https://github.com/HankHuang0516/realbot/commit/5a929c2e217a188a23f48211a4a484be5786bce8))
* **android:** draggable AI FAB with edge snap and position memory ([aaaabfe](https://github.com/HankHuang0516/realbot/commit/aaaabfed8f409ff0f401cb9e6b76acab0e553978))
* dynamic entity chips with debug 4/8 toggle ([43b13c1](https://github.com/HankHuang0516/realbot/commit/43b13c14f640637c1a78aaa9f1bf8facc5e0b1b5))
* dynamically show 8 entity slots for premium users on web dashboard ([ba0463f](https://github.com/HankHuang0516/realbot/commit/ba0463fd8fc23315523d829899060f6678ae6679))
* enable AI to close GitHub issues via action system ([#98](https://github.com/HankHuang0516/realbot/issues/98)) ([3b39445](https://github.com/HankHuang0516/realbot/commit/3b394450a8116d845ac01b6592623e9e2385bc60))
* **proxy:** enable AI to query server logs via Bash + curl ([20d6cfa](https://github.com/HankHuang0516/realbot/commit/20d6cfa2e6f9b1612cc16c114f01716158b9b533))
* enable Firebase Cloud Messaging (FCM) for Android push notifications ([24de393](https://github.com/HankHuang0516/realbot/commit/24de393a6e06874e631914dd9c26571806de0b69))
* enable Railway PR preview deploy in backend-ci ([39d7447](https://github.com/HankHuang0516/realbot/commit/39d7447c3797936c6b49a92c98892997f2fc8832))
* encrypted env vars with JIT approval via Socket.IO ([#121](https://github.com/HankHuang0516/realbot/issues/121)) ([e247571](https://github.com/HankHuang0516/realbot/commit/e247571b076ec0ed6d94f4cda74c1f96b2ca1713))
* enhance feedback with log snapshot capture + AI diagnostic prompt ([73b9717](https://github.com/HankHuang0516/realbot/commit/73b97171e53e2181dff94add31b8925fc78c255d))
* entity rename from main page (web + Android) ([9419bfc](https://github.com/HankHuang0516/realbot/commit/9419bfcb64e03f2c18ccc20b9516270db5df5fa4))
* env-vars.html sends lock as separate flag + adds security info section ([231feea](https://github.com/HankHuang0516/realbot/commit/231feeadcad7702924119c182e3a8fb3aa13d6b3))
* expand XP system with 8 new channels + message like/dislike UI ([251d692](https://github.com/HankHuang0516/realbot/commit/251d6929fdb940ed18af02307699bc00ce4ef4da))
* extend transfer-device to migrate all DB tables ([aefb56a](https://github.com/HankHuang0516/realbot/commit/aefb56accaa39beeab88019b8cfebfd36a9aa43f))
* fix newline display and add link preview for chat ([#58](https://github.com/HankHuang0516/realbot/issues/58), [#57](https://github.com/HankHuang0516/realbot/issues/57)) ([e00ac8f](https://github.com/HankHuang0516/realbot/commit/e00ac8f9bc4a79a12969089b97f72dafec98d521))
* fix push error UX + webhook test polling + skill doc update ([55a17a5](https://github.com/HankHuang0516/realbot/commit/55a17a5cd0977f7070334f61210ceca8ee8bd29f))
* floating AI chat FAB on all main pages + account status card ([f35c0e9](https://github.com/HankHuang0516/realbot/commit/f35c0e9d1c7b5b8d055cd437b8b0a85859560c53))
* full mission dashboard Bot CRUD + smart notification API hints ([21de340](https://github.com/HankHuang0516/realbot/commit/21de340eb87e19a40eec99bd4428cb5d2e375b29))
* grant bots read-write access to mission_notes ([90194e0](https://github.com/HankHuang0516/realbot/commit/90194e0a56f3d4d9c551adfc5fbd24dba3357080))
* implement chat history widget with ListView ([85c456d](https://github.com/HankHuang0516/realbot/commit/85c456d9a96d6abe42847cbbb1f3cc0d2d769442))
* implement issue [#55](https://github.com/HankHuang0516/realbot/issues/55) (task saved toast) and [#54](https://github.com/HankHuang0516/realbot/issues/54) (schedule history + chat annotation) ([7853627](https://github.com/HankHuang0516/realbot/commit/78536278a91d0592b2c63893eefb5bb605b1b51f))
* improve file manager UX - broadcast grouping, view toggle, time filter ([d57ae37](https://github.com/HankHuang0516/realbot/commit/d57ae373698391b22168c2bdb1bae34922030236))
* include APP-only devices in admin user list ([83c637a](https://github.com/HankHuang0516/realbot/commit/83c637af26782a990a3be2998a3bc81183360854))
* include mission dashboard API in all bot push messages ([370782f](https://github.com/HankHuang0516/realbot/commit/370782f9ce0968456eee0ab6b0a205cf981f56b0))
* **screen-control:** increase MAX_ELEMENTS 150→300, add truncated flag ([cb5650a](https://github.com/HankHuang0516/realbot/commit/cb5650ae55016a29d306c850b6e6fbe0c0b99c53))
* inject recipient info into bot broadcast push ([#105](https://github.com/HankHuang0516/realbot/issues/105)) ([0590851](https://github.com/HankHuang0516/realbot/commit/059085157ff762c95b9cc7138c36469a7877f0d0))
* inject recipient info into user broadcast push ([#105](https://github.com/HankHuang0516/realbot/issues/105)) ([1fba3e2](https://github.com/HankHuang0516/realbot/commit/1fba3e21a4e18f13b75ae24ccda599f060bb5157))
* integrate yanhui debug KB into feedback system ([ec863ee](https://github.com/HankHuang0516/realbot/commit/ec863ee6dbe386a9c431a2face959bc3046e27ef))
* log system errors to server_logs for AI visibility ([46de972](https://github.com/HankHuang0516/realbot/commit/46de97208d8e5f57f18e480ff99ea78897237283))
* mission notify fills actual bot credentials + add POST /todo/done endpoint ([4651f1e](https://github.com/HankHuang0516/realbot/commit/4651f1e1582a5519375cc5a8a13ec3cb621d3204))
* mission notify saves consolidated chat bubble with per-entity delivery tracking ([99ae767](https://github.com/HankHuang0516/realbot/commit/99ae7678afb260e5e027f1715dc6a281e1a56da1))
* move Env Variables to dedicated tab (env-vars.html) ([d1ee38d](https://github.com/HankHuang0516/realbot/commit/d1ee38d700ed3483c610753b1f192665778f64e3))
* override mode for bot binding - auto-unbind existing before re-bind ([7b6d28a](https://github.com/HankHuang0516/realbot/commit/7b6d28a7c7a5e49b9e92d60c197b4b7cd3e8f598)), closes [0-#2](https://github.com/0-/issues/2)
* per-device entity limit (free: 4, premium: 8) ([6be6136](https://github.com/HankHuang0516/realbot/commit/6be61363fe1624c0b5ace4e338ca008ff30ed33e)), closes [#50](https://github.com/HankHuang0516/realbot/issues/50) [#49](https://github.com/HankHuang0516/realbot/issues/49) [#50](https://github.com/HankHuang0516/realbot/issues/50)
* persist all known server IPs to PostgreSQL for TapPay whitelist ([7960bd7](https://github.com/HankHuang0516/realbot/commit/7960bd7656b263962e2f77a5563b8b7865d8d45f))
* **ai-chat:** persist pending requestId to survive Activity recreation ([#129](https://github.com/HankHuang0516/realbot/issues/129)) ([add3ead](https://github.com/HankHuang0516/realbot/commit/add3ead7fb74aa66393a087e066cf07cbde748e5))
* phone remote control via Accessibility Tree ([bed8206](https://github.com/HankHuang0516/realbot/commit/bed820609a5aecf6ec024751ccabe0c998cc73fb))
* photo caption UX + structured media in webhook push ([2a01ef4](https://github.com/HankHuang0516/realbot/commit/2a01ef473f0f41ec50c60d1a71a03006080d7b54))
* record handshake failures to PostgreSQL for analysis ([fbc1708](https://github.com/HankHuang0516/realbot/commit/fbc1708b3f356388a38a69d081444e7cfe9a7a04))
* redesign comparison infographic with 3-column card layout ([0b35236](https://github.com/HankHuang0516/realbot/commit/0b35236dd8c25e698d1cecef87f2eec91360861f))
* redesign feedback UI with dark theme, color-coded categories, and tracking links ([92844a4](https://github.com/HankHuang0516/realbot/commit/92844a460cd2bb2f02f950b97f0a9ca200e0600f))
* redesign feedback UI with dark theme, highlighted categories, and feedback tracking ([f8a7c52](https://github.com/HankHuang0516/realbot/commit/f8a7c52f060a8e226c1e0be0b60b38da8a2b7216))
* redirect root URL to /portal/ for custom domain ([4b43637](https://github.com/HankHuang0516/realbot/commit/4b4363710f1b9b04ae480ced82447837bc3cbed1))
* reframe comparison as competitive + add iPhone/Web note & QR codes ([59e4990](https://github.com/HankHuang0516/realbot/commit/59e4990f321505c589cd49ebb2f79c37d239e4d5))
* remove battery info and add webhook failure notification ([157548a](https://github.com/HankHuang0516/realbot/commit/157548a960a95dbd2a14b08ae5a69688fe01f7ab))
* **cleanup:** remove pixel screenshot (Option B) feature ([a947730](https://github.com/HankHuang0516/realbot/commit/a947730d74e6fd91acc7259db04baa6c49b5552d))
* **remote-control:** replace border with entity name indicator + fix accessibility detection ([e3f8621](https://github.com/HankHuang0516/realbot/commit/e3f86210f1b74c2911f10f827e1d8143a92c6bac))
* replace chat photo icon with + button, support multi-file upload (100MB) ([1b7a554](https://github.com/HankHuang0516/realbot/commit/1b7a554b36d565882c720c0a4c01f637255110b3))
* restructure push notifications for 90%+ API usage rate ([cc32250](https://github.com/HankHuang0516/realbot/commit/cc32250c146d63b69a087c6cadf17f880f2783bd))
* Rules multi-entity assignment, Skills section, notify prompt + fix auto-refresh bug ([ff6dc81](https://github.com/HankHuang0516/realbot/commit/ff6dc8102e7478fc515ed2b785e86606245efd6d))
* schedule execution history, mission control UI improvements ([5ab6197](https://github.com/HankHuang0516/realbot/commit/5ab61979b2cc61953027a0dcfc3748afbd46e381))
* send E-Claw skill documentation to bot on official borrow binding ([301153a](https://github.com/HankHuang0516/realbot/commit/301153a9400f583a9d2a1e3eb3e06c9b0cbb84ff))
* send email notification when feedback status changes ([3976271](https://github.com/HankHuang0516/realbot/commit/397627145f0f6829b413a15233600b1e12c09e1f))
* shared dashboard permissions, rule/update API, smart notify ([4be61bf](https://github.com/HankHuang0516/realbot/commit/4be61bf5639d32c636bd8cc9a7405cfcb2cdf633))
* show entity names alongside IDs in chat (web + Android) ([717fa68](https://github.com/HankHuang0516/realbot/commit/717fa68ccf6be4a66e078f9b6055a7e708724adf)), closes [#id](https://github.com/HankHuang0516/realbot/issues/id)
* show payment maintenance notice for TapPay features on Web Portal ([79c3799](https://github.com/HankHuang0516/realbot/commit/79c37995dae11aac71cff6e302bedede921f9fa3))
* show real-time AI progress during long requests ([abf0c3c](https://github.com/HankHuang0516/realbot/commit/abf0c3c85d27b0bf66023202ee7b5af28f561cd3))
* **channel:** simplify auth to API key only, remove secret requirement ([2669116](https://github.com/HankHuang0516/realbot/commit/2669116d58952d3594a483e520cf47fd64152054))
* **screen-control:** smart ime_action fallback for apps without Enter key ([a04f6f7](https://github.com/HankHuang0516/realbot/commit/a04f6f762ab8b809a1688c5ebafc90b8c2c62e1b))
* social login (Google/Facebook) + AI chat feedback dual-track ([e7650ef](https://github.com/HankHuang0516/realbot/commit/e7650efe030316e62e2eb3d900aa7e3a4d96f070))
* **channel:** support multiple OpenClaw plugins binding different entities ([e848866](https://github.com/HankHuang0516/realbot/commit/e848866d6b6e9bc532cb6b45790339da9d04e413))
* UI/UX improvements - emoji avatars, floating chat, rename ([24b2855](https://github.com/HankHuang0516/realbot/commit/24b2855c5c4b72fcc9c40668f88286184b76794b))
* unified Info Hub with embedded User Guide, FAQ, Release Notes & Compare ([2709013](https://github.com/HankHuang0516/realbot/commit/2709013b278dd45ec196bd44cefdc5b4092bba9a)), closes [info.html#section](https://github.com/info.html/issues/section)
* unify Mission Control delete UX — tap to edit, delete inside dialog ([#114](https://github.com/HankHuang0516/realbot/issues/114)) ([b40e0f1](https://github.com/HankHuang0516/realbot/commit/b40e0f1df82a109428a9ed26013641c497d9b427))
* universal AI chat widget + admin assistant with repo access ([e2874d6](https://github.com/HankHuang0516/realbot/commit/e2874d6a6186e682ed55249b1ef72a424a6139ae))
* upgrade Android feedback UI to match web portal (category + mark bug moment) ([107ad65](https://github.com/HankHuang0516/realbot/commit/107ad655cbd984964a05eb542afe05ce2306285c))
* use Anthropic tool use for GitHub actions instead of text parsing ([8c031c5](https://github.com/HankHuang0516/realbot/commit/8c031c5dd7b880163c16a6e9fdf19c77890f170e))
* web chat broadcast optimization + 已讀 delivery display ([051ed88](https://github.com/HankHuang0516/realbot/commit/051ed8809cd32b11fd48bf523e46b0a12920c654))
* web portal chat media support (photo/voice) ([36bfa15](https://github.com/HankHuang0516/realbot/commit/36bfa15f938031c35b3a81c08982b96faf1031af))
* webhook error AlertDialog and chat message copy ([2d53bb1](https://github.com/HankHuang0516/realbot/commit/2d53bb1c18f02fa5509e98300a400fec50d26c47))
* wire Android chat reaction buttons (like/dislike) to backend API ([#109](https://github.com/HankHuang0516/realbot/issues/109)) ([b6227cf](https://github.com/HankHuang0516/realbot/commit/b6227cf6e35f688802d2fe1e2d2ccceab5b7e553))


### Performance Improvements

* **claude-cli-proxy:** reduce warmup interval from 5min to 30min ([369ea6c](https://github.com/HankHuang0516/realbot/commit/369ea6c319567a9de9292943fc50c09dce5117bd))
* screen-capture latency optimizations ([5fdfe85](https://github.com/HankHuang0516/realbot/commit/5fdfe851db90d920e11e6a302c04fe1c443d201d))


### Reverts

* rollback MAX_ENTITIES_PER_DEVICE to 4 ([14142ae](https://github.com/HankHuang0516/realbot/commit/14142ae18b43ba4ebf3baa6f35cbbc8bfa27628c)), closes [#50](https://github.com/HankHuang0516/realbot/issues/50)


### BREAKING CHANGES

* All APIs now require deviceId parameter!

Architecture change:
- Old: entitySlots[0-3] (global, shared)
- New: devices[deviceId].entities[0-3] (per-device isolation)

Key changes:
- Each device has independent 4 entity slots
- Binding codes now map to (deviceId, entityId) pairs
- Bot receives deviceId + entityId + botSecret on bind
- All APIs require deviceId parameter
- Cross-device access properly rejected (403)

Benefits:
- Unlimited devices (was limited to 4 total bindings)
- True multi-tenant isolation
- Same entityId can be used by different devices

Updated SKILL docs to v5 with new API format.
Added test_device_isolation.js for testing isolation.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>

# [1.92.0](https://github.com/HankHuang0516/realbot/compare/v1.91.2...v1.92.0) (2026-03-06)


### Features

* **channel:** simplify auth to API key only, remove secret requirement ([c687d93](https://github.com/HankHuang0516/realbot/commit/c687d93ec9cc43f54b7641d4e251d5fadad51c6b))

## [1.91.2](https://github.com/HankHuang0516/realbot/compare/v1.91.1...v1.91.2) (2026-03-06)


### Bug Fixes

* **portal:** fix inconsistent white button styles in Channel API section ([d56537f](https://github.com/HankHuang0516/realbot/commit/d56537f3c191a9ba9ff454445f3a3a40488e36fd))

## [1.91.1](https://github.com/HankHuang0516/realbot/compare/v1.91.0...v1.91.1) (2026-03-06)


### Bug Fixes

* **portal:** remove broken security info block from env-vars page ([6363aa7](https://github.com/HankHuang0516/realbot/commit/6363aa7b0cd1ae860af1e8f06e3b786c72368675))

# [1.91.0](https://github.com/HankHuang0516/realbot/compare/v1.90.3...v1.91.0) (2026-03-06)


### Features

* **chat:** add inline image preview for direct image URLs ([c57256c](https://github.com/HankHuang0516/realbot/commit/c57256c7a5a182a562666f7cccbc86e1ecf8bcff))

## [1.90.3](https://github.com/HankHuang0516/realbot/compare/v1.90.2...v1.90.3) (2026-03-05)


### Bug Fixes

* **android:** exclude current message from history to fix AI image processing ([e6ad954](https://github.com/HankHuang0516/realbot/commit/e6ad9549398317dd586bc9d3b73b60af959dfb5d)), closes [#143](https://github.com/HankHuang0516/realbot/issues/143)

## [1.90.2](https://github.com/HankHuang0516/realbot/compare/v1.90.1...v1.90.2) (2026-03-05)


### Bug Fixes

* **entities:** prevent Gson crash when bot sends non-numeric parts value ([5b9f097](https://github.com/HankHuang0516/realbot/commit/5b9f0979e60c9f3227ac0c9a536aac6ed2070de3))

## [1.90.1](https://github.com/HankHuang0516/realbot/compare/v1.90.0...v1.90.1) (2026-03-05)


### Bug Fixes

* **android:** resolve ChatIntegrity false-positives and LinkPreviewHelper NPE ([ee98c2c](https://github.com/HankHuang0516/realbot/commit/ee98c2c9543ee5025aae6e8f399c07e00ce7dc32)), closes [#141](https://github.com/HankHuang0516/realbot/issues/141) [#142](https://github.com/HankHuang0516/realbot/issues/142)

# [1.90.0](https://github.com/HankHuang0516/realbot/compare/v1.89.8...v1.90.0) (2026-03-05)


### Features

* **cleanup:** remove pixel screenshot (Option B) feature ([788563f](https://github.com/HankHuang0516/realbot/commit/788563f849cf84c9794d076bcc39e1636e84decf))

## [1.89.8](https://github.com/HankHuang0516/realbot/compare/v1.89.7...v1.89.8) (2026-03-05)


### Bug Fixes

* **screenshot:** register 5mb json limit before global middleware ([2c07a68](https://github.com/HankHuang0516/realbot/commit/2c07a686d68db5baff170c41045c7e991aa04fe5))

## [1.89.7](https://github.com/HankHuang0516/realbot/compare/v1.89.6...v1.89.7) (2026-03-05)


### Bug Fixes

* **screenshot:** increase body limit to 5mb for screenshot-result endpoint ([c68be3f](https://github.com/HankHuang0516/realbot/commit/c68be3f0419d0ac50ffef3f1a4f4dfdd679be9f6))

## [1.89.6](https://github.com/HankHuang0516/realbot/compare/v1.89.5...v1.89.6) (2026-03-05)


### Bug Fixes

* **screenshot:** add error propagation and logging in takeAndPostScreenshot ([f3b7e27](https://github.com/HankHuang0516/realbot/commit/f3b7e2755bb2f6490e5c6d6f98853207626da23d))

## [1.89.5](https://github.com/HankHuang0516/realbot/compare/v1.89.4...v1.89.5) (2026-03-05)


### Bug Fixes

* **ssl:** trust-all TrustManager in debug builds for emulator SSL fix ([2ad2948](https://github.com/HankHuang0516/realbot/commit/2ad294885947563190ded40744c918e518afccb0))

## [1.89.4](https://github.com/HankHuang0516/realbot/compare/v1.89.3...v1.89.4) (2026-03-05)


### Bug Fixes

* **ssl:** add network_security_config to trust user CAs in debug builds ([67f142a](https://github.com/HankHuang0516/realbot/commit/67f142a0f4dcedd676523a185dd3ba47e763d34d))

## [1.89.3](https://github.com/HankHuang0516/realbot/compare/v1.89.2...v1.89.3) (2026-03-05)


### Bug Fixes

* **claude-cli-proxy:** add missing import sys ([8a53b5d](https://github.com/HankHuang0516/realbot/commit/8a53b5d81e35c9ecfb2299405d85cfef22aa06b5))

## [1.89.2](https://github.com/HankHuang0516/realbot/compare/v1.89.1...v1.89.2) (2026-03-05)


### Bug Fixes

* **screenshot:** add canTakeScreenshot flag + shorten backend timeout ([a4ef2ed](https://github.com/HankHuang0516/realbot/commit/a4ef2edd823006d7f4aa58ef7d538ab4032c21c1))

## [1.89.1](https://github.com/HankHuang0516/realbot/compare/v1.89.0...v1.89.1) (2026-03-05)


### Bug Fixes

* **screenshot:** report onFailure error immediately to backend ([6226704](https://github.com/HankHuang0516/realbot/commit/6226704f1503f9fc0022335c254b4ae6b5982044))

# [1.89.0](https://github.com/HankHuang0516/realbot/compare/v1.88.3...v1.89.0) (2026-03-05)


### Features

* **remote-control:** add getWindows() fallback + pixel screenshot endpoint ([b17393c](https://github.com/HankHuang0516/realbot/commit/b17393cd92dcf36a665daa670d5d58b07e88cdc7))

## [1.88.3](https://github.com/HankHuang0516/realbot/compare/v1.88.2...v1.88.3) (2026-03-05)


### Bug Fixes

* **claude-cli-proxy:** redirect Python logging to stdout ([6eab316](https://github.com/HankHuang0516/realbot/commit/6eab31667069b0ff82b92d9fe8c5fe20269ee139))

## [1.88.2](https://github.com/HankHuang0516/realbot/compare/v1.88.1...v1.88.2) (2026-03-05)


### Performance Improvements

* **claude-cli-proxy:** reduce warmup interval from 5min to 30min ([a4d08c6](https://github.com/HankHuang0516/realbot/commit/a4d08c6403cee7fa6eec0ac100c51ca23ffe6bca))

## [1.88.1](https://github.com/HankHuang0516/realbot/compare/v1.88.0...v1.88.1) (2026-03-05)


### Bug Fixes

* **screen-control:** always include truncated field in screen-capture response ([d97579a](https://github.com/HankHuang0516/realbot/commit/d97579a2bea0e6313fc57a76abc51a935be020b3))

# [1.88.0](https://github.com/HankHuang0516/realbot/compare/v1.87.2...v1.88.0) (2026-03-05)


### Features

* **screen-control:** increase MAX_ELEMENTS 150→300, add truncated flag ([3d7b5d0](https://github.com/HankHuang0516/realbot/commit/3d7b5d095fc30e2354677bfc0a645077d0333ef3))

## [1.87.2](https://github.com/HankHuang0516/realbot/compare/v1.87.1...v1.87.2) (2026-03-05)


### Bug Fixes

* **screen-control:** ime_action fallback when no INPUT focus (ACTION_SET_TEXT case) ([70f0592](https://github.com/HankHuang0516/realbot/commit/70f0592966662ca0bd25e672214eb3501d74bd08))

## [1.87.1](https://github.com/HankHuang0516/realbot/compare/v1.87.0...v1.87.1) (2026-03-05)


### Bug Fixes

* **claude-cli-proxy:** wrap startCommand with sh -c for PORT variable expansion ([91d6310](https://github.com/HankHuang0516/realbot/commit/91d6310365d8d14aeb768c1f8477717430cc1d97))

# [1.87.0](https://github.com/HankHuang0516/realbot/compare/v1.86.1...v1.87.0) (2026-03-05)


### Features

* **screen-control:** smart ime_action fallback for apps without Enter key ([b4f0ddb](https://github.com/HankHuang0516/realbot/commit/b4f0ddba3f84cff59e094aad1ca7bc0df9714bb9))

## [1.86.1](https://github.com/HankHuang0516/realbot/compare/v1.86.0...v1.86.1) (2026-03-05)


### Bug Fixes

* **channel:** multi-account portal UI + auth.js regression fixes ([e34603c](https://github.com/HankHuang0516/realbot/commit/e34603caf2701c53e78c9feb8036f9564dbc82cf))

# [1.86.0](https://github.com/HankHuang0516/realbot/compare/v1.85.0...v1.86.0) (2026-03-05)


### Features

* **remote-control:** replace border with entity name indicator + fix accessibility detection ([74b0e89](https://github.com/HankHuang0516/realbot/commit/74b0e893acbf8e4b697a052645055780f11de134))

# [1.85.0](https://github.com/HankHuang0516/realbot/compare/v1.84.0...v1.85.0) (2026-03-05)


### Features

* **channel:** add self-test infrastructure + provision-device endpoint ([5e187bf](https://github.com/HankHuang0516/realbot/commit/5e187bf1118266a6f9d31f29d8f6871010a301ac))

# [1.84.0](https://github.com/HankHuang0516/realbot/compare/v1.83.2...v1.84.0) (2026-03-05)


### Features

* **channel:** support multiple OpenClaw plugins binding different entities ([c7ba874](https://github.com/HankHuang0516/realbot/commit/c7ba8746c60acfef6bfaed40307819d519234311))

## [1.83.2](https://github.com/HankHuang0516/realbot/compare/v1.83.1...v1.83.2) (2026-03-04)


### Bug Fixes

* **ui:** round border corners to match screen + halve border thickness ([43c3c2a](https://github.com/HankHuang0516/realbot/commit/43c3c2a396759ba8e9fdb288225c132c9845ea65))

## [1.83.1](https://github.com/HankHuang0516/realbot/compare/v1.83.0...v1.83.1) (2026-03-04)


### Bug Fixes

* **ui:** guard coerceIn against empty range in AiChatFabHelper ([eea9712](https://github.com/HankHuang0516/realbot/commit/eea9712e5edf17f133f020e573e951d5e40cb7f7))

# [1.83.0](https://github.com/HankHuang0516/realbot/compare/v1.82.0...v1.83.0) (2026-03-04)


### Features

* **remote-control:** add ime_action command to submit keyboard input ([acb04a8](https://github.com/HankHuang0516/realbot/commit/acb04a8f509786d0938c9a20d99a0f7aa8cbf768))

# [1.82.0](https://github.com/HankHuang0516/realbot/compare/v1.81.0...v1.82.0) (2026-03-04)


### Features

* **ui:** add Channel binding type indicators across Portal and Android ([57b54ac](https://github.com/HankHuang0516/realbot/commit/57b54acd371e1abae1955c13cf59d3272f4169cb))

# [1.81.0](https://github.com/HankHuang0516/realbot/compare/v1.80.0...v1.81.0) (2026-03-04)


### Features

* Android Channel API display + OpenClaw metadata + backend auth fix ([762ed62](https://github.com/HankHuang0516/realbot/commit/762ed62c29d42b4072ede530e01242a57f3d08dc))

# [1.80.0](https://github.com/HankHuang0516/realbot/compare/v1.79.0...v1.80.0) (2026-03-04)


### Features

* **settings:** add Delete Account entry in Settings (web + Android) ([cb94da1](https://github.com/HankHuang0516/realbot/commit/cb94da17610aa29c9f15bb3a57c5c4f2d2e40012))

# [1.79.0](https://github.com/HankHuang0516/realbot/compare/v1.78.0...v1.79.0) (2026-03-04)


### Features

* **auth:** add account deletion page and API for Google Play Data Safety ([c2071f5](https://github.com/HankHuang0516/realbot/commit/c2071f52b468878559e2c5aa4c2a6366154c5fce))

# [1.78.0](https://github.com/HankHuang0516/realbot/compare/v1.77.5...v1.78.0) (2026-03-04)


### Features

* **ai-chat:** persist pending requestId to survive Activity recreation ([#129](https://github.com/HankHuang0516/realbot/issues/129)) ([e9ac0e4](https://github.com/HankHuang0516/realbot/commit/e9ac0e44fa8804aef6566d7ce7a30a681fbc613f))

## [1.77.5](https://github.com/HankHuang0516/realbot/compare/v1.77.4...v1.77.5) (2026-03-04)


### Bug Fixes

* **chat:** resolve link preview crash and coroutine lifecycle issues ([39a201d](https://github.com/HankHuang0516/realbot/commit/39a201d0cdc33b42d67429a4fb3bcbd026b5fe7a)), closes [#131](https://github.com/HankHuang0516/realbot/issues/131) [#136](https://github.com/HankHuang0516/realbot/issues/136) [#128](https://github.com/HankHuang0516/realbot/issues/128) [#127](https://github.com/HankHuang0516/realbot/issues/127) [#130](https://github.com/HankHuang0516/realbot/issues/130)

## [1.77.4](https://github.com/HankHuang0516/realbot/compare/v1.77.3...v1.77.4) (2026-03-04)


### Bug Fixes

* **claude-cli-proxy:** replace hatchling local package install with requirements.txt ([542b918](https://github.com/HankHuang0516/realbot/commit/542b9184a30930a2df480dfd2d5f2a19d108b088))

## [1.77.3](https://github.com/HankHuang0516/realbot/compare/v1.77.2...v1.77.3) (2026-03-04)


### Bug Fixes

* add prominent accessibility disclosure dialog for Google Play compliance (v1.0.37) ([aa39248](https://github.com/HankHuang0516/realbot/commit/aa3924865a2017b03dc4f1faf6fc87b39f375fb7))

## [1.77.2](https://github.com/HankHuang0516/realbot/compare/v1.77.1...v1.77.2) (2026-03-04)


### Bug Fixes

* **portal:** apply i18n after nav/footer render in info.html ([586ece7](https://github.com/HankHuang0516/realbot/commit/586ece7b17511a8bfbece7a1be739d44191e49f1))
* **upload:** remove changesNotSentForReview param (rejected by Play API) ([a183a1f](https://github.com/HankHuang0516/realbot/commit/a183a1f647360de2047591d51eba9f912360c2df))

## [1.77.1](https://github.com/HankHuang0516/realbot/compare/v1.77.0...v1.77.1) (2026-03-04)


### Bug Fixes

* **portal:** fix screen-control Loading bug + update info.html with new features ([d240e7d](https://github.com/HankHuang0516/realbot/commit/d240e7de60f476b9d38a39fa395aef69a906ef64))

# [1.77.0](https://github.com/HankHuang0516/realbot/compare/v1.76.3...v1.77.0) (2026-03-04)


### Features

* **portal:** add Security & Privacy info card to Remote Control page ([1e9907f](https://github.com/HankHuang0516/realbot/commit/1e9907f16fa6bd4bf8990e993fb287c1b5544c4a))

## [1.76.3](https://github.com/HankHuang0516/realbot/compare/v1.76.2...v1.76.3) (2026-03-04)


### Bug Fixes

* **screen-control:** remove 20-capture session limit, keep 500ms interval only ([2efb3f2](https://github.com/HankHuang0516/realbot/commit/2efb3f2b17665f7cae0d0d2c5172974ab513539e))

## [1.76.2](https://github.com/HankHuang0516/realbot/compare/v1.76.1...v1.76.2) (2026-03-04)


### Bug Fixes

* **screen-control:** revert OkHttp to HttpURLConnection, remove typeWindowContentChanged ([6ee40ba](https://github.com/HankHuang0516/realbot/commit/6ee40ba3ced6a457d6154b3088c27d5c0504ae7d))

## [1.76.1](https://github.com/HankHuang0516/realbot/compare/v1.76.0...v1.76.1) (2026-03-04)


### Performance Improvements

* screen-capture latency optimizations ([c903d03](https://github.com/HankHuang0516/realbot/commit/c903d0321168158d4e9d9a799b0ae46ceadd6483))

# [1.76.0](https://github.com/HankHuang0516/realbot/compare/v1.75.0...v1.76.0) (2026-03-04)


### Features

* phone remote control via Accessibility Tree ([6a08cf3](https://github.com/HankHuang0516/realbot/commit/6a08cf3f241e480c845da794a0b4ecccb1e65b9f))

# [1.75.0](https://github.com/HankHuang0516/realbot/compare/v1.74.2...v1.75.0) (2026-03-04)


### Features

* auto-provision channel API key on registration + settings UI ([cfa0a37](https://github.com/HankHuang0516/realbot/commit/cfa0a37495c50fd2d76f43b782c9465f3917c26d))

## [1.74.2](https://github.com/HankHuang0516/realbot/compare/v1.74.1...v1.74.2) (2026-03-04)


### Bug Fixes

* crash on device.entities iteration + add crash logging to /api/logs ([9818442](https://github.com/HankHuang0516/realbot/commit/9818442db389db89f6ea606079c4e6cfcbf23b2b))

## [1.74.1](https://github.com/HankHuang0516/realbot/compare/v1.74.0...v1.74.1) (2026-03-03)


### Bug Fixes

* channel test checks entities wrapper object correctly ([40a08ee](https://github.com/HankHuang0516/realbot/commit/40a08ee6899f5413edb36236661da133425a0ed1))

# [1.74.0](https://github.com/HankHuang0516/realbot/compare/v1.73.0...v1.74.0) (2026-03-03)


### Features

* add OpenClaw channel plugin + backend Channel API ([4912fdd](https://github.com/HankHuang0516/realbot/commit/4912fdd7394facbbbcb8c5cbf31887660a0b4e7b))

# [1.73.0](https://github.com/HankHuang0516/realbot/compare/v1.72.0...v1.73.0) (2026-03-03)


### Bug Fixes

* address code review issues before merge ([0b246cf](https://github.com/HankHuang0516/realbot/commit/0b246cf99cefa3a68d77f1eb8bd4b4af56125eeb))


### Features

* **android:** add JIT vars approval dialog + sync locked flag ([44f446e](https://github.com/HankHuang0516/realbot/commit/44f446e06d557e12d09741201a85f375c85801e4))
* add JIT vars approval dialog to Portal shared socket handler ([dda4edc](https://github.com/HankHuang0516/realbot/commit/dda4edc5ffc4e73063c6cd62f62c90aba3b71fc4))
* encrypted env vars with JIT approval via Socket.IO ([#121](https://github.com/HankHuang0516/realbot/issues/121)) ([56416e2](https://github.com/HankHuang0516/realbot/commit/56416e21009cde73dd218fedac941fcd30fe6c5e))
* env-vars.html sends lock as separate flag + adds security info section ([ab410b9](https://github.com/HankHuang0516/realbot/commit/ab410b9eef890e79ac4896992d8b7f5884e2a0b3))

# [1.72.0](https://github.com/HankHuang0516/realbot/compare/v1.71.0...v1.72.0) (2026-03-03)


### Features

* **db:** add device_vars table + CRUD helpers for encrypted env vars ([43b631e](https://github.com/HankHuang0516/realbot/commit/43b631e04a2973e6813deba70fb94037a392fd96))
* chat cloud sync recovery + app version in telemetry ([#123](https://github.com/HankHuang0516/realbot/issues/123), [#124](https://github.com/HankHuang0516/realbot/issues/124)) ([6a71c35](https://github.com/HankHuang0516/realbot/commit/6a71c350f76f4554a9c95eb47350c58fd814f2d0))

# [1.71.0](https://github.com/HankHuang0516/realbot/compare/v1.70.0...v1.71.0) (2026-03-03)


### Features

* add crash reporting & debug logging for issue [#120](https://github.com/HankHuang0516/realbot/issues/120) ([99f6216](https://github.com/HankHuang0516/realbot/commit/99f621648b602c5cc402b24e10f5672159a45531))

# [1.70.0](https://github.com/HankHuang0516/realbot/compare/v1.69.0...v1.70.0) (2026-03-03)


### Features

* unify Mission Control delete UX — tap to edit, delete inside dialog ([#114](https://github.com/HankHuang0516/realbot/issues/114)) ([093af72](https://github.com/HankHuang0516/realbot/commit/093af72d5ee317d9a65380ca4f9e79c2afa3cc58))

# [1.69.0](https://github.com/HankHuang0516/realbot/compare/v1.68.1...v1.69.0) (2026-03-03)


### Features

* add broadcast recipient info toggle to Web Portal settings ([#105](https://github.com/HankHuang0516/realbot/issues/105)) ([fa0b07b](https://github.com/HankHuang0516/realbot/commit/fa0b07b894f31f2bedfbfbd8bcf344c74c89cb2b))
* add buildBroadcastRecipientBlock() helper ([#105](https://github.com/HankHuang0516/realbot/issues/105)) ([746ae03](https://github.com/HankHuang0516/realbot/commit/746ae038841a9556d9b6b4fd58ac170c64490912))
* add device preferences module with DB table ([#105](https://github.com/HankHuang0516/realbot/issues/105)) ([abfe650](https://github.com/HankHuang0516/realbot/commit/abfe6505064ec0e2d5136d318804e9de7b43701f))
* add device preferences UI in SettingsActivity + localized strings ([#105](https://github.com/HankHuang0516/realbot/issues/105)) ([60ac42b](https://github.com/HankHuang0516/realbot/commit/60ac42b7fa5c8ed63658a506b60f3048065701aa))
* add device-preferences API endpoints (GET/PUT) ([#105](https://github.com/HankHuang0516/realbot/issues/105)) ([2bd73b1](https://github.com/HankHuang0516/realbot/commit/2bd73b16575a88687926b7cb727286f4a25b1482))
* inject recipient info into bot broadcast push ([#105](https://github.com/HankHuang0516/realbot/issues/105)) ([0f41b34](https://github.com/HankHuang0516/realbot/commit/0f41b34c58a2230e2fba8ad7466ca38e43335526))
* inject recipient info into user broadcast push ([#105](https://github.com/HankHuang0516/realbot/issues/105)) ([eb7c5e1](https://github.com/HankHuang0516/realbot/commit/eb7c5e10ed394fd78204a20470bf3150fe7db9b5))

## [1.68.1](https://github.com/HankHuang0516/realbot/compare/v1.68.0...v1.68.1) (2026-03-02)


### Bug Fixes

* add dialog input CSS to env-vars.html for consistent styling ([b1e40c3](https://github.com/HankHuang0516/realbot/commit/b1e40c381de7b10e422ab47511a20c04dd13674f))

# [1.68.0](https://github.com/HankHuang0516/realbot/compare/v1.67.2...v1.68.0) (2026-03-02)


### Features

* wire Android chat reaction buttons (like/dislike) to backend API ([#109](https://github.com/HankHuang0516/realbot/issues/109)) ([43fadd5](https://github.com/HankHuang0516/realbot/commit/43fadd5cee82198329552e915c70488ce6d8f07a))

## [1.67.2](https://github.com/HankHuang0516/realbot/compare/v1.67.1...v1.67.2) (2026-03-02)


### Bug Fixes

* remove duplicate currentUser declaration causing SyntaxError in env-vars.html ([42eddbd](https://github.com/HankHuang0516/realbot/commit/42eddbde824a1efe040f02fd98b7d7b7091aab4c))

## [1.67.1](https://github.com/HankHuang0516/realbot/compare/v1.67.0...v1.67.1) (2026-03-02)


### Bug Fixes

* allow key name editing in Env Variables dialog ([b21f424](https://github.com/HankHuang0516/realbot/commit/b21f42414c2d7a26f20f6fff568e77a3e045f923))

# [1.67.0](https://github.com/HankHuang0516/realbot/compare/v1.66.1...v1.67.0) (2026-03-02)


### Features

* move Env Variables to dedicated tab (env-vars.html) ([0c909f8](https://github.com/HankHuang0516/realbot/commit/0c909f8499e90cd684c67f3e78d69a5acd46daa6))

## [1.66.1](https://github.com/HankHuang0516/realbot/compare/v1.66.0...v1.66.1) (2026-03-02)


### Bug Fixes

* short-circuit AI call when close_issue is pre-executed ([4245826](https://github.com/HankHuang0516/realbot/commit/424582643c240b4d015d976a9fb059fe77b1ab74))

# [1.66.0](https://github.com/HankHuang0516/realbot/compare/v1.65.4...v1.66.0) (2026-03-02)


### Features

* add local variables vault — device-only .env-like secret store ([bfebeba](https://github.com/HankHuang0516/realbot/commit/bfebeba869a958d7010361c1616a005ef6748996))

## [1.65.4](https://github.com/HankHuang0516/realbot/compare/v1.65.3...v1.65.4) (2026-03-02)


### Bug Fixes

* **lint:** add AbortController, TextDecoder, TextEncoder to ESLint globals ([271d0d5](https://github.com/HankHuang0516/realbot/commit/271d0d5cb7d98bf0f5afdbefbf0af975cca50a8b))

## [1.65.3](https://github.com/HankHuang0516/realbot/compare/v1.65.2...v1.65.3) (2026-03-02)


### Bug Fixes

* resolve 4 GitHub issues in parallel — [#100](https://github.com/HankHuang0516/realbot/issues/100), [#111](https://github.com/HankHuang0516/realbot/issues/111), [#112](https://github.com/HankHuang0516/realbot/issues/112), [#113](https://github.com/HankHuang0516/realbot/issues/113) ([09f3a6c](https://github.com/HankHuang0516/realbot/commit/09f3a6c2259d2a616e13aa9909560b75b4fbcdc5))

## [1.65.2](https://github.com/HankHuang0516/realbot/compare/v1.65.1...v1.65.2) (2026-03-02)


### Bug Fixes

* server-side pre-execute close_issue intent to bypass model safety training ([2d133cf](https://github.com/HankHuang0516/realbot/commit/2d133cf6fe2a2177c818d6d63bf2159390387c81)), closes [#123](https://github.com/HankHuang0516/realbot/issues/123)

## [1.65.1](https://github.com/HankHuang0516/realbot/compare/v1.65.0...v1.65.1) (2026-03-02)


### Bug Fixes

* update claude-proxy skill template with correct openclaw-claude-proxy steps ([fdb8b43](https://github.com/HankHuang0516/realbot/commit/fdb8b4394c17066c66cef0112f1729d0bb15a69f))

# [1.65.0](https://github.com/HankHuang0516/realbot/compare/v1.64.1...v1.65.0) (2026-03-02)


### Features

* add official skill templates and installation steps to skill dialog ([8bd3e50](https://github.com/HankHuang0516/realbot/commit/8bd3e508c3aab33a2e6452852947faee74e7fcc1))

## [1.64.1](https://github.com/HankHuang0516/realbot/compare/v1.64.0...v1.64.1) (2026-03-02)


### Bug Fixes

* strengthen system prompt to override model's GitHub permission hesitation ([c765813](https://github.com/HankHuang0516/realbot/commit/c7658138f0a0c84a11f8567e849a256e8cbdfaf6))

# [1.64.0](https://github.com/HankHuang0516/realbot/compare/v1.63.2...v1.64.0) (2026-03-02)


### Features

* show real-time AI progress during long requests ([3a3d523](https://github.com/HankHuang0516/realbot/commit/3a3d523dd53b269c4b264e25ab6ff52f4097ed08))

## [1.63.2](https://github.com/HankHuang0516/realbot/compare/v1.63.1...v1.63.2) (2026-03-02)


### Bug Fixes

* add URLSearchParams to ESLint globals ([91ee972](https://github.com/HankHuang0516/realbot/commit/91ee972c9ed60827dd2d0ad01705c3fa3cdae03d))

## [1.63.1](https://github.com/HankHuang0516/realbot/compare/v1.63.0...v1.63.1) (2026-03-02)


### Bug Fixes

* bump versionCode to 37 (36 already used on Play Console) ([e5fd9b8](https://github.com/HankHuang0516/realbot/commit/e5fd9b887f8c9dfe415ac42b8906f9acd0ab5ec1))

# [1.63.0](https://github.com/HankHuang0516/realbot/compare/v1.62.0...v1.63.0) (2026-03-02)


### Features

* use Anthropic tool use for GitHub actions instead of text parsing ([b567834](https://github.com/HankHuang0516/realbot/commit/b5678348b693b0cbfcaac7562ec790b6f00983c6))

# [1.62.0](https://github.com/HankHuang0516/realbot/compare/v1.61.3...v1.62.0) (2026-03-02)


### Features

* enable AI to close GitHub issues via action system ([#98](https://github.com/HankHuang0516/realbot/issues/98)) ([ea0131d](https://github.com/HankHuang0516/realbot/commit/ea0131d482796074b283702015ae7953317ef19e))

## [1.61.3](https://github.com/HankHuang0516/realbot/compare/v1.61.2...v1.61.3) (2026-03-02)


### Bug Fixes

* resolve 7 GitHub issues — parallel agent batch fix ([9262f6b](https://github.com/HankHuang0516/realbot/commit/9262f6b9081f3357343a618e59b48e3d21055a82)), closes [#97](https://github.com/HankHuang0516/realbot/issues/97)

## [1.61.2](https://github.com/HankHuang0516/realbot/compare/v1.61.1...v1.61.2) (2026-03-01)


### Bug Fixes

* persist DATABASE_URL to file for Claude CLI child processes ([7f1975e](https://github.com/HankHuang0516/realbot/commit/7f1975e479abeeccf68176f4332fab4e7da15a81))

## [1.61.1](https://github.com/HankHuang0516/realbot/compare/v1.61.0...v1.61.1) (2026-03-01)


### Bug Fixes

* use absolute path for db-query.js in system prompt ([63b9b14](https://github.com/HankHuang0516/realbot/commit/63b9b1459dab3fd7211bc0eee3bcf30781d29fed))

# [1.61.0](https://github.com/HankHuang0516/realbot/compare/v1.60.4...v1.61.0) (2026-03-01)


### Features

* connect claude-cli-proxy to Postgres for direct DB queries ([5022543](https://github.com/HankHuang0516/realbot/commit/5022543780b04717812740d8de4c6acac21db711))

## [1.60.4](https://github.com/HankHuang0516/realbot/compare/v1.60.3...v1.60.4) (2026-03-01)


### Bug Fixes

* increase max-turns to 15 and add intermediate feedback for AI chat ([87169be](https://github.com/HankHuang0516/realbot/commit/87169bea548dec916f946ea12f5398013d9686f7))

## [1.60.3](https://github.com/HankHuang0516/realbot/compare/v1.60.2...v1.60.3) (2026-03-01)


### Bug Fixes

* add Cache-Control no-cache for i18n.js to prevent stale translations ([4318f75](https://github.com/HankHuang0516/realbot/commit/4318f75487ae9316aafc633d3ebf71e417cb5a23))

## [1.60.2](https://github.com/HankHuang0516/realbot/compare/v1.60.1...v1.60.2) (2026-03-01)


### Bug Fixes

* add --verbose flag for stream-json output format ([0d2c859](https://github.com/HankHuang0516/realbot/commit/0d2c859155121e96118b86691ef3a720b007c724))

## [1.60.1](https://github.com/HankHuang0516/realbot/compare/v1.60.0...v1.60.1) (2026-03-01)


### Bug Fixes

* add fallback parsing when stream-json produces no NDJSON events ([8034150](https://github.com/HankHuang0516/realbot/commit/8034150517093c2fdffd340eca892c1d24af94bc))

# [1.60.0](https://github.com/HankHuang0516/realbot/compare/v1.59.5...v1.60.0) (2026-03-01)


### Features

* add /api/ai-support/proxy-sessions admin endpoint for session monitoring ([ca06dd8](https://github.com/HankHuang0516/realbot/commit/ca06dd86a005dcb8aa6c0830cf6ca14d9f7f9781))

## [1.59.5](https://github.com/HankHuang0516/realbot/compare/v1.59.4...v1.59.5) (2026-03-01)


### Bug Fixes

* sanitize raw CLI JSON in async path + stream-json monitoring for proxy ([b8ab09b](https://github.com/HankHuang0516/realbot/commit/b8ab09ba6c12f842e386734ba8fc55c40004e53b))

## [1.59.4](https://github.com/HankHuang0516/realbot/compare/v1.59.3...v1.59.4) (2026-03-01)


### Bug Fixes

* remove AD_ID permission and add changesNotSentForReview flag ([f2ae128](https://github.com/HankHuang0516/realbot/commit/f2ae1287cc52ae3bf8a45ce65754ca8f9e499c2b))

## [1.59.3](https://github.com/HankHuang0516/realbot/compare/v1.59.2...v1.59.3) (2026-03-01)


### Bug Fixes

* only dedup bot messages, not user messages in saveChatMessage ([bf6236d](https://github.com/HankHuang0516/realbot/commit/bf6236ddce3f17b56443a68fc444a7161d2d5d70))

## [1.59.2](https://github.com/HankHuang0516/realbot/compare/v1.59.1...v1.59.2) (2026-03-01)


### Bug Fixes

* use regular callback for FB.login (async not supported by Facebook SDK) ([f1443a8](https://github.com/HankHuang0516/realbot/commit/f1443a8ce68d865e3c65a19b864e0e62da8855fd))

## [1.59.1](https://github.com/HankHuang0516/realbot/compare/v1.59.0...v1.59.1) (2026-03-01)


### Bug Fixes

* add social login buttons and Google SDK to web portal login/register ([dd98a65](https://github.com/HankHuang0516/realbot/commit/dd98a65da0a786e00dcaff53fe9fa857352680b3))

# [1.59.0](https://github.com/HankHuang0516/realbot/compare/v1.58.0...v1.59.0) (2026-03-01)


### Features

* complete Google + Facebook OAuth social login integration ([aae345a](https://github.com/HankHuang0516/realbot/commit/aae345ae0c0f0d3509e9d28c14d721e4f4516380))

# [1.58.0](https://github.com/HankHuang0516/realbot/compare/v1.57.1...v1.58.0) (2026-03-01)


### Features

* async AI chat with direct Anthropic API + error handling ([3c1a3bc](https://github.com/HankHuang0516/realbot/commit/3c1a3bc5a171d78ddb4ed1bad2ce90a803bf242c))

## [1.57.1](https://github.com/HankHuang0516/realbot/compare/v1.57.0...v1.57.1) (2026-03-01)


### Bug Fixes

* add missing ai_chat_view_feedback string resource ([1429efc](https://github.com/HankHuang0516/realbot/commit/1429efc7aed573ae3eb6182f2be97af679b9a733))

# [1.57.0](https://github.com/HankHuang0516/realbot/compare/v1.56.0...v1.57.0) (2026-03-01)


### Features

* social login (Google/Facebook) + AI chat feedback dual-track ([62bc8ff](https://github.com/HankHuang0516/realbot/commit/62bc8ffc63e029dfe90d4d92bc9e177ee5444152))

# [1.56.0](https://github.com/HankHuang0516/realbot/compare/v1.55.0...v1.56.0) (2026-03-01)


### Features

* **android:** draggable AI FAB with edge snap and position memory ([bca3f81](https://github.com/HankHuang0516/realbot/commit/bca3f81ca5b46e83c8754949d83ba337f7b3e7e6))

# [1.55.0](https://github.com/HankHuang0516/realbot/compare/v1.54.2...v1.55.0) (2026-03-01)


### Features

* floating AI chat FAB on all main pages + account status card ([d8b1342](https://github.com/HankHuang0516/realbot/commit/d8b1342f25df3addb4e32784b6ed29918dcdae6d))

## [1.54.2](https://github.com/HankHuang0516/realbot/compare/v1.54.1...v1.54.2) (2026-03-01)


### Bug Fixes

* sanitize raw JSON from AI chat proxy response ([1bd6248](https://github.com/HankHuang0516/realbot/commit/1bd6248b6ce88b0ade3c96ae8d08d7ababdba401))

## [1.54.1](https://github.com/HankHuang0516/realbot/compare/v1.54.0...v1.54.1) (2026-03-01)


### Bug Fixes

* enable EYE_LID/EYE_ANGLE rendering and fix test scripts ([baec14d](https://github.com/HankHuang0516/realbot/commit/baec14d72d0f7abe794383ec7561e30805aac010))

# [1.54.0](https://github.com/HankHuang0516/realbot/compare/v1.53.2...v1.54.0) (2026-03-01)


### Features

* **android:** cross-device contacts system for chat ([1a12a7a](https://github.com/HankHuang0516/realbot/commit/1a12a7a6eb45e299ec8854de11055cc1fd63e73a))

## [1.53.2](https://github.com/HankHuang0516/realbot/compare/v1.53.1...v1.53.2) (2026-03-01)


### Bug Fixes

* chat filter shows broadcast/speak-to messages for recipient entities ([1772877](https://github.com/HankHuang0516/realbot/commit/17728779d12acf7ad95e22be39ebc39f09b9bb6c))

## [1.53.1](https://github.com/HankHuang0516/realbot/compare/v1.53.0...v1.53.1) (2026-03-01)


### Bug Fixes

* improve schedule history display, matching accuracy, and pagination ([f721628](https://github.com/HankHuang0516/realbot/commit/f721628777d066d2058103daf7047aacd27b082a))

# [1.53.0](https://github.com/HankHuang0516/realbot/compare/v1.52.1...v1.53.0) (2026-03-01)


### Features

* cross-device contacts system with unified target bar ([f58435f](https://github.com/HankHuang0516/realbot/commit/f58435f9d98b4700a306629649602e6b94478edb))

## [1.52.1](https://github.com/HankHuang0516/realbot/compare/v1.52.0...v1.52.1) (2026-03-01)


### Bug Fixes

* instruct bots to update mood/emoji only, not narrate messages ([8bfabd5](https://github.com/HankHuang0516/realbot/commit/8bfabd5c9ce343c335d03cf32c6648197957e9b4))

# [1.52.0](https://github.com/HankHuang0516/realbot/compare/v1.51.3...v1.52.0) (2026-03-01)


### Features

* add expects_reply field to bot-to-bot speak-to and broadcast APIs ([015c302](https://github.com/HankHuang0516/realbot/commit/015c302ec31dce9687f6b63fda289024a7008292))

## [1.51.3](https://github.com/HankHuang0516/realbot/compare/v1.51.2...v1.51.3) (2026-03-01)


### Bug Fixes

* AI chat stuck on "thinking" — t() not defined, use i18n.t() ([4ce6b26](https://github.com/HankHuang0516/realbot/commit/4ce6b2619cfa335e58bd699bb8601de1abc5d000))

## [1.51.2](https://github.com/HankHuang0516/realbot/compare/v1.51.1...v1.51.2) (2026-02-28)


### Bug Fixes

* prevent AI chat timeout — optimize prompt and fix spawn bugs ([539aadf](https://github.com/HankHuang0516/realbot/commit/539aadfb0d4b2c2ee2664c0cdcf992adba485d4f))

## [1.51.1](https://github.com/HankHuang0516/realbot/compare/v1.51.0...v1.51.1) (2026-02-28)


### Bug Fixes

* cross-device chat label shows local entity instead of remote target ([7d84753](https://github.com/HankHuang0516/realbot/commit/7d84753514736fc532c086eccb8be7c711214544))

# [1.51.0](https://github.com/HankHuang0516/realbot/compare/v1.50.0...v1.51.0) (2026-02-28)


### Features

* assign public_code to free bot bindings ([8ae1bb7](https://github.com/HankHuang0516/realbot/commit/8ae1bb77a66dd1dba1c11f080487a8a51305a357))

# [1.50.0](https://github.com/HankHuang0516/realbot/compare/v1.49.2...v1.50.0) (2026-02-28)


### Features

* AI chat runs in background — survives page refresh and navigation ([6d8a021](https://github.com/HankHuang0516/realbot/commit/6d8a0219ada442e1b45589cfd2356adf78fd08e1))

## [1.49.2](https://github.com/HankHuang0516/realbot/compare/v1.49.1...v1.49.2) (2026-02-28)


### Bug Fixes

* resolve cross-device display codes and prevent bubble count false positives ([e89eeca](https://github.com/HankHuang0516/realbot/commit/e89eecaf2a217a4b386ab90ceac8eba2667a847e)), closes [#86](https://github.com/HankHuang0516/realbot/issues/86) [#88](https://github.com/HankHuang0516/realbot/issues/88) [#89](https://github.com/HankHuang0516/realbot/issues/89)

## [1.49.1](https://github.com/HankHuang0516/realbot/compare/v1.49.0...v1.49.1) (2026-02-28)


### Bug Fixes

* show upload progress status when sending images in AI chat ([a3e1fae](https://github.com/HankHuang0516/realbot/commit/a3e1faee54e7083bc54e77be48256ceba688837b))

# [1.49.0](https://github.com/HankHuang0516/realbot/compare/v1.48.0...v1.49.0) (2026-02-28)


### Features

* AI chat can query user's server logs without asking for credentials ([8252fba](https://github.com/HankHuang0516/realbot/commit/8252fba8c3b22006d31aa490a1001abdd960221a))

# [1.48.0](https://github.com/HankHuang0516/realbot/compare/v1.47.1...v1.48.0) (2026-02-28)


### Features

* auto-create GitHub issues for user feedback via AI chat ([35c6edb](https://github.com/HankHuang0516/realbot/commit/35c6edb5c192d5efd99a563d107502f6bcead79f))

## [1.47.1](https://github.com/HankHuang0516/realbot/compare/v1.47.0...v1.47.1) (2026-02-28)


### Bug Fixes

* AI chat proactively creates GitHub issues for user feedback ([7270fa3](https://github.com/HankHuang0516/realbot/commit/7270fa3b4c665e710c74d57509549510f837c699))

# [1.47.0](https://github.com/HankHuang0516/realbot/compare/v1.46.0...v1.47.0) (2026-02-28)


### Features

* add AI chat concurrency queue with auto-retry ([ea58eb7](https://github.com/HankHuang0516/realbot/commit/ea58eb70e0f07b494cec7db495910edffe727d56))

# [1.46.0](https://github.com/HankHuang0516/realbot/compare/v1.45.1...v1.46.0) (2026-02-28)


### Features

* AI chat enhancements — feedback entry, image support, Android app ([ee94822](https://github.com/HankHuang0516/realbot/commit/ee94822739e20e48107db12851caf35fc360536c))

## [1.45.1](https://github.com/HankHuang0516/realbot/compare/v1.45.0...v1.45.1) (2026-02-28)


### Bug Fixes

* resetBotToBotCounter now resets all entity slots dynamically ([80b16ed](https://github.com/HankHuang0516/realbot/commit/80b16edb871afa1f6213f7c9f3d958cac1d7c9d8)), closes [#85](https://github.com/HankHuang0516/realbot/issues/85)

# [1.45.0](https://github.com/HankHuang0516/realbot/compare/v1.44.1...v1.45.0) (2026-02-28)


### Bug Fixes

* filter Android user messages from ChatIntegrity validation ([71bef4a](https://github.com/HankHuang0516/realbot/commit/71bef4a54a0376c4d91e32f5c29cb9e7ccf762c8)), closes [#82](https://github.com/HankHuang0516/realbot/issues/82) [#83](https://github.com/HankHuang0516/realbot/issues/83)


### Features

* add free bot limit hint and sold-out rental demand flow ([#81](https://github.com/HankHuang0516/realbot/issues/81)) ([2f57b26](https://github.com/HankHuang0516/realbot/commit/2f57b263c628f66ef8b66f34df981523c1a7e530))

## [1.44.1](https://github.com/HankHuang0516/realbot/compare/v1.44.0...v1.44.1) (2026-02-28)


### Bug Fixes

* use Dockerfile for claude-cli-proxy to ensure git is installed ([6e57edd](https://github.com/HankHuang0516/realbot/commit/6e57edd393cb0e7856179399030b3e3ba5abb175))

# [1.44.0](https://github.com/HankHuang0516/realbot/compare/v1.43.7...v1.44.0) (2026-02-28)


### Features

* log system errors to server_logs for AI visibility ([7410ac4](https://github.com/HankHuang0516/realbot/commit/7410ac46ee2ba9717f2d9f9ecba30443296091c2))

## [1.43.7](https://github.com/HankHuang0516/realbot/compare/v1.43.6...v1.43.7) (2026-02-28)


### Bug Fixes

* handle duplicate public_code gracefully during device save ([3c15ea6](https://github.com/HankHuang0516/realbot/commit/3c15ea6be4dea4360f44f82464e86e99cec159fe))

## [1.43.6](https://github.com/HankHuang0516/realbot/compare/v1.43.5...v1.43.6) (2026-02-28)


### Bug Fixes

* decouple Bash tool from repo clone status ([e2bc96a](https://github.com/HankHuang0516/realbot/commit/e2bc96ab7c217f61bcd6ff08821aed710a330c21))

## [1.43.5](https://github.com/HankHuang0516/realbot/compare/v1.43.4...v1.43.5) (2026-02-28)


### Bug Fixes

* add git via both nixPkgs and aptPkgs for Nixpacks compatibility ([b31dcf9](https://github.com/HankHuang0516/realbot/commit/b31dcf90ecc7599a7d8dc63d8891e1bcc8905bde))

## [1.43.4](https://github.com/HankHuang0516/realbot/compare/v1.43.3...v1.43.4) (2026-02-28)


### Bug Fixes

* add git to proxy container + remove invalid CLI flag ([3b98cd7](https://github.com/HankHuang0516/realbot/commit/3b98cd783415a5bf4dac82c321e6592c8581a4f2))

## [1.43.3](https://github.com/HankHuang0516/realbot/compare/v1.43.2...v1.43.3) (2026-02-28)


### Bug Fixes

* set CLAUDE_DANGEROUSLY_SKIP_PERMISSIONS env var for headless CLI ([7a5681b](https://github.com/HankHuang0516/realbot/commit/7a5681b117c831664694fbae065115e9058d8c19))

## [1.43.2](https://github.com/HankHuang0516/realbot/compare/v1.43.1...v1.43.2) (2026-02-28)


### Bug Fixes

* add --dangerouslySkipPermissions to CLI chat spawn ([18a16ba](https://github.com/HankHuang0516/realbot/commit/18a16ba9b3073f88092b66e64171bd81b89fcfbf))

## [1.43.1](https://github.com/HankHuang0516/realbot/compare/v1.43.0...v1.43.1) (2026-02-28)


### Bug Fixes

* instruct AI to execute tools directly in non-interactive mode ([cceb659](https://github.com/HankHuang0516/realbot/commit/cceb659a2d3ef83bf3ddf2b263dd44b176926644))

# [1.43.0](https://github.com/HankHuang0516/realbot/compare/v1.42.2...v1.43.0) (2026-02-28)


### Features

* **proxy:** enable AI to query server logs via Bash + curl ([cf49236](https://github.com/HankHuang0516/realbot/commit/cf49236a86be3e61844a2af77d4b781e08daa6bd))

## [1.42.2](https://github.com/HankHuang0516/realbot/compare/v1.42.1...v1.42.2) (2026-02-28)


### Bug Fixes

* deduplicate broadcast header entities + user message dedup ([1722755](https://github.com/HankHuang0516/realbot/commit/1722755c54841a9d630e076cacb1b6f3083390c5))

## [1.42.1](https://github.com/HankHuang0516/realbot/compare/v1.42.0...v1.42.1) (2026-02-28)


### Bug Fixes

* entity reorder now syncs all associated data atomically ([0ef28ca](https://github.com/HankHuang0516/realbot/commit/0ef28cacb23a65e0ec6693d5050b16fdc012a3ab))

# [1.42.0](https://github.com/HankHuang0516/realbot/compare/v1.41.4...v1.42.0) (2026-02-28)


### Features

* universal AI chat widget + admin assistant with repo access ([0fee0b0](https://github.com/HankHuang0516/realbot/commit/0fee0b09138caacb2e206efc50bcbfd1a800d0f6))

## [1.41.4](https://github.com/HankHuang0516/realbot/compare/v1.41.3...v1.41.4) (2026-02-28)


### Bug Fixes

* make usage limit unconditional for all client/speak calls ([2b107ab](https://github.com/HankHuang0516/realbot/commit/2b107abe6a3ed096088038692dc301983343a39f))

## [1.41.3](https://github.com/HankHuang0516/realbot/compare/v1.41.2...v1.41.3) (2026-02-28)


### Bug Fixes

* add missing chat-integrity.js (fixes deployment crash) ([a87e700](https://github.com/HankHuang0516/realbot/commit/a87e7007ded80fdfa425d4aae84a973696d8e581))

## [1.41.2](https://github.com/HankHuang0516/realbot/compare/v1.41.1...v1.41.2) (2026-02-28)


### Bug Fixes

* fail-safe usage limit with in-memory fallback ([dac91f8](https://github.com/HankHuang0516/realbot/commit/dac91f88e1d8a6d27b0afad4ad69316ba5653259))

## [1.41.1](https://github.com/HankHuang0516/realbot/compare/v1.41.0...v1.41.1) (2026-02-28)


### Bug Fixes

* telemetry path in sub-routers, duration=0 handling, usage limit scope ([f0203f1](https://github.com/HankHuang0516/realbot/commit/f0203f1b381cfc197d29047c636ae027ca5c26e9))

# [1.41.0](https://github.com/HankHuang0516/realbot/compare/v1.40.1...v1.41.0) (2026-02-28)


### Features

* add admin role awareness to AI support proxy ([1d025e2](https://github.com/HankHuang0516/realbot/commit/1d025e2366b998599e090690f0bd1dd43ddfc993))

## [1.40.1](https://github.com/HankHuang0516/realbot/compare/v1.40.0...v1.40.1) (2026-02-28)


### Bug Fixes

* auto-restore .claude.json from backup on proxy startup ([9f87b2f](https://github.com/HankHuang0516/realbot/commit/9f87b2fecaac64ed50bed59d95bb636d98177ea6))

# [1.40.0](https://github.com/HankHuang0516/realbot/compare/v1.39.4...v1.40.0) (2026-02-28)


### Features

* add Claude CLI warmup to reduce cold start latency ([dd4d0ae](https://github.com/HankHuang0516/realbot/commit/dd4d0aec88f5989121fe809ed9569f03261f7a3b))

## [1.39.4](https://github.com/HankHuang0516/realbot/compare/v1.39.3...v1.39.4) (2026-02-28)


### Bug Fixes

* use stdin for Claude CLI prompt + increase timeout to 55s ([f8aad9d](https://github.com/HankHuang0516/realbot/commit/f8aad9d6d02c7d2a895428a339173fca6537ecd4))

## [1.39.3](https://github.com/HankHuang0516/realbot/compare/v1.39.2...v1.39.3) (2026-02-28)


### Bug Fixes

* install Claude CLI as dependency in proxy container ([3f4c854](https://github.com/HankHuang0516/realbot/commit/3f4c85443e45c3cef2eaecc767e6814024a41f82))

## [1.39.2](https://github.com/HankHuang0516/realbot/compare/v1.39.1...v1.39.2) (2026-02-28)


### Bug Fixes

* add debug logging to AI support proxy communication ([a3dcd81](https://github.com/HankHuang0516/realbot/commit/a3dcd816ce642126f2fc132e36781a8c6de2c096))

## [1.39.1](https://github.com/HankHuang0516/realbot/compare/v1.39.0...v1.39.1) (2026-02-28)


### Bug Fixes

* sync web-sent messages to Android chat + merge broadcast bubbles ([0e8c0b0](https://github.com/HankHuang0516/realbot/commit/0e8c0b0523fc36598e4863949d0021ab844934cd))

# [1.39.0](https://github.com/HankHuang0516/realbot/compare/v1.38.1...v1.39.0) (2026-02-28)


### Features

* **admin:** add AI Support Chat widget on admin dashboard ([f3ed7a9](https://github.com/HankHuang0516/realbot/commit/f3ed7a9f5bf2916dfdbae594dc605e57e1211288))

## [1.38.1](https://github.com/HankHuang0516/realbot/compare/v1.38.0...v1.38.1) (2026-02-28)


### Bug Fixes

* **ai-support:** improve 401 and setup_password rules ([d782e4f](https://github.com/HankHuang0516/realbot/commit/d782e4fda2d86fc765beace60e4ff54479298f90))

# [1.38.0](https://github.com/HankHuang0516/realbot/compare/v1.37.1...v1.38.0) (2026-02-28)


### Features

* add AI-powered binding troubleshooter with rule engine + Claude CLI proxy ([8bf04b3](https://github.com/HankHuang0516/realbot/commit/8bf04b3b36c7ca0a83a3c3a942e53fbd161142e0))

## [1.37.1](https://github.com/HankHuang0516/realbot/compare/v1.37.0...v1.37.1) (2026-02-28)


### Bug Fixes

* smart 401 handling — guide bot to retry with setup_password ([c1f9e70](https://github.com/HankHuang0516/realbot/commit/c1f9e705dc2b28cf9e283b4c0ede325d8b813ade))

# [1.37.0](https://github.com/HankHuang0516/realbot/compare/v1.36.0...v1.37.0) (2026-02-28)


### Features

* **admin:** add Setup Password field to create bot dialog ([6f44ad4](https://github.com/HankHuang0516/realbot/commit/6f44ad40fae92754c141d3cf8f85b4eec8e7d851))

# [1.36.0](https://github.com/HankHuang0516/realbot/compare/v1.35.1...v1.36.0) (2026-02-28)


### Features

* add WebSocket transport for OpenClaw gateways with SETUP_PASSWORD ([8cb91b4](https://github.com/HankHuang0516/realbot/commit/8cb91b4e1d86a86b69abf648b370d8dec953eeb8))

## [1.35.1](https://github.com/HankHuang0516/realbot/compare/v1.35.0...v1.35.1) (2026-02-28)


### Bug Fixes

* rename loading UI, entity card removal, copy button UX ([ca73a9e](https://github.com/HankHuang0516/realbot/commit/ca73a9ee4a92411215a2ba33b280e125d6b0d13c))

# [1.35.0](https://github.com/HankHuang0516/realbot/compare/v1.34.1...v1.35.0) (2026-02-28)


### Features

* send email notification when feedback status changes ([641fbf4](https://github.com/HankHuang0516/realbot/commit/641fbf4aa69ae8c916162618e6e870a19e74b112))

## [1.34.1](https://github.com/HankHuang0516/realbot/compare/v1.34.0...v1.34.1) (2026-02-28)


### Bug Fixes

* change message_reactions.message_id from INTEGER to UUID ([ac96233](https://github.com/HankHuang0516/realbot/commit/ac96233209a9565b57db12dc76a7f322e766740f))

# [1.34.0](https://github.com/HankHuang0516/realbot/compare/v1.33.2...v1.34.0) (2026-02-28)


### Features

* expand XP system with 8 new channels + message like/dislike UI ([96a95ef](https://github.com/HankHuang0516/realbot/commit/96a95efd46c0b48d8ff2ff0ac4e809c70205b9ea))

## [1.33.2](https://github.com/HankHuang0516/realbot/compare/v1.33.1...v1.33.2) (2026-02-27)


### Bug Fixes

* **admin:** use cookie-based auth for DELETE official-bot endpoint ([0c1b8dd](https://github.com/HankHuang0516/realbot/commit/0c1b8dd5aacdb6b14dae3c99c36b01547efbf765))

## [1.33.1](https://github.com/HankHuang0516/realbot/compare/v1.33.0...v1.33.1) (2026-02-27)


### Bug Fixes

* **web:** show edit mode button by using inline-flex display ([b01600a](https://github.com/HankHuang0516/realbot/commit/b01600a61c2814e2bc17ab127fc3d29473d4aa1f))

# [1.33.0](https://github.com/HankHuang0516/realbot/compare/v1.32.1...v1.33.0) (2026-02-27)


### Features

* **web:** add edit mode to dashboard entity cards (parity with Android) ([d41156c](https://github.com/HankHuang0516/realbot/commit/d41156cc2297db9e500c42d8714575ce6a29a2c6))
* **admin:** add individual remove button to official bot list ([1f85683](https://github.com/HankHuang0516/realbot/commit/1f85683a09e4c1997d962ee42debc6533a891ed8))

## [1.32.1](https://github.com/HankHuang0516/realbot/compare/v1.32.0...v1.32.1) (2026-02-27)


### Bug Fixes

* mount /docs static route for webhook troubleshooting page ([28590d0](https://github.com/HankHuang0516/realbot/commit/28590d07002c89c103209fbb94e61595ebc24b8d))

# [1.32.0](https://github.com/HankHuang0516/realbot/compare/v1.31.3...v1.32.0) (2026-02-27)


### Features

* add webhook troubleshooting FAQ page, unify error messages ([cb52c16](https://github.com/HankHuang0516/realbot/commit/cb52c16b7a3e30c574a38316c16db4b6fd06f53b))

## [1.31.3](https://github.com/HankHuang0516/realbot/compare/v1.31.2...v1.31.3) (2026-02-27)


### Bug Fixes

* warn bots not to edit config files directly, use openclaw CLI ([e67037e](https://github.com/HankHuang0516/realbot/commit/e67037e1ce95893889dd9224ef3491139c412626))

## [1.31.2](https://github.com/HankHuang0516/realbot/compare/v1.31.1...v1.31.2) (2026-02-27)


### Bug Fixes

* add pairing_required solution hint to error messages ([5118d26](https://github.com/HankHuang0516/realbot/commit/5118d261d4007ae7f245ada2c9e977a3eb1b7324))

## [1.31.1](https://github.com/HankHuang0516/realbot/compare/v1.31.0...v1.31.1) (2026-02-27)


### Bug Fixes

* handshake now rejects pairing_required in response body ([e20a949](https://github.com/HankHuang0516/realbot/commit/e20a9497dfdf37289f217c21396366b0096c2f4e))

# [1.31.0](https://github.com/HankHuang0516/realbot/compare/v1.30.1...v1.31.0) (2026-02-27)


### Features

* add push health status tracking for bots (方案 A + B) ([bf42320](https://github.com/HankHuang0516/realbot/commit/bf42320ebaffd287db85e18ae6c565ffcd6d5d79))

## [1.30.1](https://github.com/HankHuang0516/realbot/compare/v1.30.0...v1.30.1) (2026-02-27)


### Bug Fixes

* replace inline 44KB skill doc with short hint in bind response ([9b075bb](https://github.com/HankHuang0516/realbot/commit/9b075bbff455360f074ffed3f8e68e1a7f0b86b3))

# [1.30.0](https://github.com/HankHuang0516/realbot/compare/v1.29.2...v1.30.0) (2026-02-27)


### Features

* add skills_documentation_url to bind response for large skill doc fetch ([51cd7bb](https://github.com/HankHuang0516/realbot/commit/51cd7bb06bb4abbe737967bb15b27e93fc4473da))

## [1.29.2](https://github.com/HankHuang0516/realbot/compare/v1.29.1...v1.29.2) (2026-02-27)


### Bug Fixes

* improve local/private IP webhook rejection with OpenClaw Overview guidance ([940feda](https://github.com/HankHuang0516/realbot/commit/940fedaa42e6bc96c5aa93fb5d4639c64cef12d4))

## [1.29.1](https://github.com/HankHuang0516/realbot/compare/v1.29.0...v1.29.1) (2026-02-27)


### Bug Fixes

* update sessions_send error messages to reference official docs instead of hardcoded config paths ([554ba72](https://github.com/HankHuang0516/realbot/commit/554ba722188d60d030fc6dfe9d17906bb924fb4c))

# [1.29.0](https://github.com/HankHuang0516/realbot/compare/v1.28.0...v1.29.0) (2026-02-27)


### Features

* record handshake failures to PostgreSQL for analysis ([8ad97be](https://github.com/HankHuang0516/realbot/commit/8ad97be7970669580e351c20e659c0a490cd552e))

# [1.28.0](https://github.com/HankHuang0516/realbot/compare/v1.27.2...v1.28.0) (2026-02-27)


### Features

* detect bot gateway disconnection (pairing required) and notify device ([2569d29](https://github.com/HankHuang0516/realbot/commit/2569d299522afa0b2020870109fbdb165e728e29))

## [1.27.2](https://github.com/HankHuang0516/realbot/compare/v1.27.1...v1.27.2) (2026-02-27)


### Bug Fixes

* let entity cards scroll independently via RecyclerView ([d2a5c36](https://github.com/HankHuang0516/realbot/commit/d2a5c362b923bc88da2d46189b90d76fbe6baa6d))

## [1.27.1](https://github.com/HankHuang0516/realbot/compare/v1.27.0...v1.27.1) (2026-02-26)


### Bug Fixes

* resolve 8 open issues via multi-agent parallel implementation ([d7b0ee0](https://github.com/HankHuang0516/realbot/commit/d7b0ee0f45477c76badcc64d46fa924110bd666a)), closes [#77](https://github.com/HankHuang0516/realbot/issues/77) [#76](https://github.com/HankHuang0516/realbot/issues/76) [#72](https://github.com/HankHuang0516/realbot/issues/72) [#73](https://github.com/HankHuang0516/realbot/issues/73) [#79](https://github.com/HankHuang0516/realbot/issues/79) [#80](https://github.com/HankHuang0516/realbot/issues/80) [#75](https://github.com/HankHuang0516/realbot/issues/75) [#74](https://github.com/HankHuang0516/realbot/issues/74)

# [1.27.0](https://github.com/HankHuang0516/realbot/compare/v1.26.0...v1.27.0) (2026-02-25)


### Features

* add cross-device bot-to-bot communication via public entity codes ([4993572](https://github.com/HankHuang0516/realbot/commit/4993572687c9089ea4074e60c18b8e6f2832fe4a)), closes [#70](https://github.com/HankHuang0516/realbot/issues/70)

# [1.26.0](https://github.com/HankHuang0516/realbot/compare/v1.25.2...v1.26.0) (2026-02-25)


### Features

* dynamically show 8 entity slots for premium users on web dashboard ([b334396](https://github.com/HankHuang0516/realbot/commit/b334396b89c571c77aeb6ac4a0f5811472298bb8))

## [1.25.2](https://github.com/HankHuang0516/realbot/compare/v1.25.1...v1.25.2) (2026-02-25)


### Bug Fixes

* update footer description to AI collaboration platform ([20bb415](https://github.com/HankHuang0516/realbot/commit/20bb415d23671a4b3b2c86273a78384843c4f1d0))

## [1.25.1](https://github.com/HankHuang0516/realbot/compare/v1.25.0...v1.25.1) (2026-02-25)


### Bug Fixes

* admin link not showing on info page ([ad28fe4](https://github.com/HankHuang0516/realbot/commit/ad28fe4a2a32b2ea2c77c5c3a032a5075f920a7e))

# [1.25.0](https://github.com/HankHuang0516/realbot/compare/v1.24.0...v1.25.0) (2026-02-25)


### Features

* add video sending support to chat with streaming playback ([f24f462](https://github.com/HankHuang0516/realbot/commit/f24f462038f20494ab59e4ef10013e890033dadf))

# [1.24.0](https://github.com/HankHuang0516/realbot/compare/v1.23.0...v1.24.0) (2026-02-25)


### Features

* add bbb880008@gmail.com as admin user ([1aa4ade](https://github.com/HankHuang0516/realbot/commit/1aa4adec63ca0fb7622a91681b974da11bcc55d1))

# [1.23.0](https://github.com/HankHuang0516/realbot/compare/v1.22.3...v1.23.0) (2026-02-25)


### Bug Fixes

* show authenticated nav on info page for logged-in users ([ec7eed9](https://github.com/HankHuang0516/realbot/commit/ec7eed91589cba04bd40756ef7808cde94691538))


### Features

* add photo upload to settings feedback dialog ([e409ff6](https://github.com/HankHuang0516/realbot/commit/e409ff67f2bee5400384fab157fc095fc2f75df7))

## [1.22.3](https://github.com/HankHuang0516/realbot/compare/v1.22.2...v1.22.3) (2026-02-25)


### Bug Fixes

* add fill color to card emoji icons (lobster + airplane) ([5527523](https://github.com/HankHuang0516/realbot/commit/55275237476ad378f1c265c7ec2a8cdf3e1cb0b2)), closes [#6C63FF](https://github.com/HankHuang0516/realbot/issues/6C63FF) [#0088CC](https://github.com/HankHuang0516/realbot/issues/0088CC)
* regenerate PNG with CJK font support and updated QR codes ([f3989d4](https://github.com/HankHuang0516/realbot/commit/f3989d442654bdb10c020bdd283a6b74a2a80a29))
* replace broken QR codes with valid ones for Web portal and Android app ([1c61238](https://github.com/HankHuang0516/realbot/commit/1c612385f35a13bff9b6ae152fb47f37762f8c8d))
* replace emoji icons with proper SVG brand icons + fix table overflow ([51d0916](https://github.com/HankHuang0516/realbot/commit/51d0916021da264e5a3bf5fbc9fbae56f735d002))
* use rsvg-convert for PNG with proper emoji + CJK rendering ([29d5f9a](https://github.com/HankHuang0516/realbot/commit/29d5f9ae424ee891da5abef6e13b72e1c2e5ba4c))
* widen QR cards, replace blurry emoji, fix corrupted QR data ([b16bbe5](https://github.com/HankHuang0516/realbot/commit/b16bbe5e630a1e22ab2a81de54bb7ac63f0c2750))

## [1.22.2](https://github.com/HankHuang0516/realbot/compare/v1.22.1...v1.22.2) (2026-02-25)


### Bug Fixes

* resolve "Invalid Date" in notification items ([ecc745d](https://github.com/HankHuang0516/realbot/commit/ecc745d4551d9f91c29fce8c1d1e36663516cc36))

## [1.22.1](https://github.com/HankHuang0516/realbot/compare/v1.22.0...v1.22.1) (2026-02-25)


### Bug Fixes

* repair all GitHub Actions CI failures ([cf0145e](https://github.com/HankHuang0516/realbot/commit/cf0145efddb0dc8a714d0a78198b5250888cd38e))

# [1.22.0](https://github.com/HankHuang0516/realbot/compare/v1.21.0...v1.22.0) (2026-02-25)


### Features

* add XP/Level system for entities ([6acfff3](https://github.com/HankHuang0516/realbot/commit/6acfff325515bd7e117b896a37742b5578a3fdf2))

# [1.21.0](https://github.com/HankHuang0516/realbot/compare/v1.20.1...v1.21.0) (2026-02-24)


### Features

* reframe comparison as competitive + add iPhone/Web note & QR codes ([4008efa](https://github.com/HankHuang0516/realbot/commit/4008efa9ddf7717f3b44cf53d401099636463bcf))

## [1.20.1](https://github.com/HankHuang0516/realbot/compare/v1.20.0...v1.20.1) (2026-02-24)


### Bug Fixes

* allow debug/test devices to use all 8 entity slots ([#66](https://github.com/HankHuang0516/realbot/issues/66)) ([3ec7ca4](https://github.com/HankHuang0516/realbot/commit/3ec7ca490899495daaab56a4dd6bfeb01cba6fe2))
* dark theme for notification/language cards and fix API field name mismatch ([9b89f46](https://github.com/HankHuang0516/realbot/commit/9b89f461059b8547f1914dd002ef5c42c62e8f56)), closes [#1A1A1A](https://github.com/HankHuang0516/realbot/issues/1A1A1A) [#333333](https://github.com/HankHuang0516/realbot/issues/333333)

# [1.20.0](https://github.com/HankHuang0516/realbot/compare/v1.19.0...v1.20.0) (2026-02-24)


### Features

* redesign comparison infographic with 3-column card layout ([41511fd](https://github.com/HankHuang0516/realbot/commit/41511fdc27d2a2420ae75374a434dd2a8bcd3439))

# [1.19.0](https://github.com/HankHuang0516/realbot/compare/v1.18.0...v1.19.0) (2026-02-24)


### Features

* add E-Claw vs Telegram comparison infographic (SVG) ([7c72fee](https://github.com/HankHuang0516/realbot/commit/7c72fee0c13f3f57460d0b444b2f589168b8a6c1))
* complete E-Claw vs Telegram comparison with all 12 categories ([e593a86](https://github.com/HankHuang0516/realbot/commit/e593a86fa26bad7161e2f332fd56a5f84642d566))

# [1.18.0](https://github.com/HankHuang0516/realbot/compare/v1.17.0...v1.18.0) (2026-02-24)


### Features

* collapsible notification preferences section in settings ([8faf562](https://github.com/HankHuang0516/realbot/commit/8faf5627c74de1d48791527ddc1a8d76d29a7833))

# [1.17.0](https://github.com/HankHuang0516/realbot/compare/v1.16.2...v1.17.0) (2026-02-24)


### Features

* unified Info Hub with embedded User Guide, FAQ, Release Notes & Compare ([020ee67](https://github.com/HankHuang0516/realbot/commit/020ee6761c42a2e0f16599fac267b57e13935260)), closes [info.html#section](https://github.com/info.html/issues/section)

## [1.16.2](https://github.com/HankHuang0516/realbot/compare/v1.16.1...v1.16.2) (2026-02-24)


### Bug Fixes

* auth redirect loop caused by /api/notifications/count returning 401 ([cb4d6a7](https://github.com/HankHuang0516/realbot/commit/cb4d6a7791ae25e19b685247766ee68acfc6701c))

## [1.16.1](https://github.com/HankHuang0516/realbot/compare/v1.16.0...v1.16.1) (2026-02-24)


### Bug Fixes

* canonical domain redirect to prevent cookie/auth loop ([e7b2d5b](https://github.com/HankHuang0516/realbot/commit/e7b2d5bfdaf036b3a4fe69dc6ac1a4402e299e23))

# [1.16.0](https://github.com/HankHuang0516/realbot/compare/v1.15.0...v1.16.0) (2026-02-24)


### Features

* redirect root URL to /portal/ for custom domain ([a0affdf](https://github.com/HankHuang0516/realbot/commit/a0affdf6ce249314b5f2d4bec489e59142ad43f5))

# [1.15.0](https://github.com/HankHuang0516/realbot/compare/v1.14.0...v1.15.0) (2026-02-24)


### Features

* enable Firebase Cloud Messaging (FCM) for Android push notifications ([180b13f](https://github.com/HankHuang0516/realbot/commit/180b13ff3b92c22d33d25546d08348a8ce3ad0b0))

# [1.14.0](https://github.com/HankHuang0516/realbot/compare/v1.13.0...v1.14.0) (2026-02-24)


### Features

* add comprehensive notification system (Socket.IO, Web Push, FCM prep, preferences) ([8f629fc](https://github.com/HankHuang0516/realbot/commit/8f629fcde80f20e6adb85371b1b4dab6a0e0e7bf))

# [1.13.0](https://github.com/HankHuang0516/realbot/compare/v1.12.0...v1.13.0) (2026-02-24)


### Features

* add public navigation bar with FAQ, Release Notes, and User Guide pages ([cfd30f0](https://github.com/HankHuang0516/realbot/commit/cfd30f004562ff7d85f49c8f0cf40c9456f4b302))

# [1.12.0](https://github.com/HankHuang0516/realbot/compare/v1.11.0...v1.12.0) (2026-02-24)


### Features

* fix newline display and add link preview for chat ([#58](https://github.com/HankHuang0516/realbot/issues/58), [#57](https://github.com/HankHuang0516/realbot/issues/57)) ([3ccba06](https://github.com/HankHuang0516/realbot/commit/3ccba0624f5615cda00f29e56d4f83c292cbb231))

# [1.11.0](https://github.com/HankHuang0516/realbot/compare/v1.10.0...v1.11.0) (2026-02-24)


### Bug Fixes

* correct Multi-Entity max to 8 and Setup description (independent platforms) ([13a8770](https://github.com/HankHuang0516/realbot/commit/13a8770fbf0d5fe773785292d904aac1a7664a7e))


### Features

* add E-Claw vs Telegram channel comparison page ([231b555](https://github.com/HankHuang0516/realbot/commit/231b555c16ea4397f1e297402a6201db9c05a418))
* add Mission Control & Chat Attachments comparison rows, fix Setup description ([009c4d1](https://github.com/HankHuang0516/realbot/commit/009c4d1290dc5972a1360b37771c76c0291bb5c9))

# [1.10.0](https://github.com/HankHuang0516/realbot/compare/v1.9.0...v1.10.0) (2026-02-23)


### Features

* show payment maintenance notice for TapPay features on Web Portal ([1af5365](https://github.com/HankHuang0516/realbot/commit/1af5365ea315d6829eef9899c2dc48f101fec8da))

# [1.9.0](https://github.com/HankHuang0516/realbot/compare/v1.8.0...v1.9.0) (2026-02-23)


### Features

* add multi-language support (8 languages) for Web Portal and Android ([b36248d](https://github.com/HankHuang0516/realbot/commit/b36248dd3952dfe610e5e67a36e0fc33bf9fcef4))

# [1.8.0](https://github.com/HankHuang0516/realbot/compare/v1.7.0...v1.8.0) (2026-02-23)


### Features

* implement issue [#55](https://github.com/HankHuang0516/realbot/issues/55) (task saved toast) and [#54](https://github.com/HankHuang0516/realbot/issues/54) (schedule history + chat annotation) ([b8a8b3c](https://github.com/HankHuang0516/realbot/commit/b8a8b3c1326f473ca7d2288d9ec95394292fee02))

# [1.7.0](https://github.com/HankHuang0516/realbot/compare/v1.6.2...v1.7.0) (2026-02-23)


### Features

* replace chat photo icon with + button, support multi-file upload (100MB) ([09a1072](https://github.com/HankHuang0516/realbot/commit/09a10726263c226fadc6e13eba409577bd955e76))

## [1.6.2](https://github.com/HankHuang0516/realbot/compare/v1.6.1...v1.6.2) (2026-02-23)


### Bug Fixes

* convert ChatActivity to full-screen dark style with bottom nav ([54f4abe](https://github.com/HankHuang0516/realbot/commit/54f4abe3394c5a711f086da7fb8a5f14074b86f2)), closes [#0D0D1A](https://github.com/HankHuang0516/realbot/issues/0D0D1A) [#1A1A2E](https://github.com/HankHuang0516/realbot/issues/1A1A2E)

## [1.6.1](https://github.com/HankHuang0516/realbot/compare/v1.6.0...v1.6.1) (2026-02-22)


### Bug Fixes

* bottom nav position consistency and edge padding ([e7b184a](https://github.com/HankHuang0516/realbot/commit/e7b184aa4e4da367e2b84a2101c5f16f89829dd6))

# [1.6.0](https://github.com/HankHuang0516/realbot/compare/v1.5.4...v1.6.0) (2026-02-22)


### Bug Fixes

* schedule card add icon and rename to 進入排程 ([09751b7](https://github.com/HankHuang0516/realbot/commit/09751b797eefb9ea9dc1956023eb2922f9ec7202))


### Features

* per-device entity limit (free: 4, premium: 8) ([ab07aef](https://github.com/HankHuang0516/realbot/commit/ab07aef4e888781a2b90433f55a2fe71f885cab8)), closes [#50](https://github.com/HankHuang0516/realbot/issues/50) [#49](https://github.com/HankHuang0516/realbot/issues/49) [#50](https://github.com/HankHuang0516/realbot/issues/50)
* schedule execution history, mission control UI improvements ([e84c622](https://github.com/HankHuang0516/realbot/commit/e84c6227cc696488f199bf2dcf6548bd2348eee2))

## [1.5.4](https://github.com/HankHuang0516/realbot/compare/v1.5.3...v1.5.4) (2026-02-22)


### Reverts

* rollback MAX_ENTITIES_PER_DEVICE to 4 ([1609941](https://github.com/HankHuang0516/realbot/commit/1609941ce2343f1361fa42e5344c676e8d0677e3)), closes [#50](https://github.com/HankHuang0516/realbot/issues/50)

## [1.5.3](https://github.com/HankHuang0516/realbot/compare/v1.5.2...v1.5.3) (2026-02-22)


### Bug Fixes

* increase MAX_ENTITIES_PER_DEVICE to 8 for debug entity support ([21863c5](https://github.com/HankHuang0516/realbot/commit/21863c51d1ccba89fb8e38840d0d7158693351ff))

## [1.5.2](https://github.com/HankHuang0516/realbot/compare/v1.5.1...v1.5.2) (2026-02-22)


### Bug Fixes

* use device timezone for cron schedule execution ([f8d45b1](https://github.com/HankHuang0516/realbot/commit/f8d45b1db8cf7cfc39c2fe04af9874eb5ed83e77))

## [1.5.1](https://github.com/HankHuang0516/realbot/compare/v1.5.0...v1.5.1) (2026-02-22)


### Bug Fixes

* improve entity chip UI - remove close icons, add avatars, dark theme colors ([8b97b80](https://github.com/HankHuang0516/realbot/commit/8b97b80d431ae455d8cecbb57c2697f4d48ecede))

# [1.5.0](https://github.com/HankHuang0516/realbot/compare/v1.4.1...v1.5.0) (2026-02-22)


### Features

* dynamic entity chips with debug 4/8 toggle ([0da6355](https://github.com/HankHuang0516/realbot/commit/0da6355ef4034756fb2a19a5c95fd5b3c766a2e8))

## [1.4.1](https://github.com/HankHuang0516/realbot/compare/v1.4.0...v1.4.1) (2026-02-22)


### Bug Fixes

* add [#48](https://github.com/HankHuang0516/realbot/issues/48) entity visibility diagnosis logging + auto-sync fix ([2952b80](https://github.com/HankHuang0516/realbot/commit/2952b804b89338a3dc2b2545e3f95fa843246752))
* add PR write permission and make Railway deploy non-blocking ([dd707cb](https://github.com/HankHuang0516/realbot/commit/dd707cb9caa7fcec78975051bd39733e3f3ea621))

# [1.4.0](https://github.com/HankHuang0516/realbot/compare/v1.3.2...v1.4.0) (2026-02-22)


### Bug Fixes

* add JUnit and Gson test dependencies for Kotlin unit tests ([47a367d](https://github.com/HankHuang0516/realbot/commit/47a367deb6cb6b2a58886ed286ab3ac94fccff05))
* auto-sync feedback status with GitHub issue state ([d908266](https://github.com/HankHuang0516/realbot/commit/d908266af85c4b1ccf18bd41dc7e0cbba3efaa3a))
* create Railway preview environment before deploy ([fa45a23](https://github.com/HankHuang0516/realbot/commit/fa45a23d74999b523f018327e9562543a985427c))
* resolve ESLint and Android Lint CI failures ([97e1c95](https://github.com/HankHuang0516/realbot/commit/97e1c95d1d825fa0dcaea1999ef9a8912c5a29cf))
* resolve ESLint and Android Lint CI failures ([00c914b](https://github.com/HankHuang0516/realbot/commit/00c914b204567c20ce3de6a5eaf1ce586729bc3d))
* resolve merge conflicts in package.json/package-lock.json ([b987c22](https://github.com/HankHuang0516/realbot/commit/b987c22f09fec51a92199087223b0ee4d386f180))
* restore CI workflows, fix eslint version conflict, add Unix gradlew ([32517a9](https://github.com/HankHuang0516/realbot/commit/32517a99027f718c68da2eb35d9afe30a35399b8))


### Features

* add soul category to Mission Control for entity personality management ([fdced69](https://github.com/HankHuang0516/realbot/commit/fdced69cbc69b3891759bbdf7957e6598a76e2df))

## [1.3.2](https://github.com/HankHuang0516/realbot/compare/v1.3.1...v1.3.2) (2026-02-22)


### Bug Fixes

* auto-sync feedback status with GitHub issue state ([723b859](https://github.com/HankHuang0516/realbot/commit/723b8598e27cf21194b0c6a23cf491c0b6c9ca3f))

## [1.3.1](https://github.com/HankHuang0516/realbot/compare/v1.3.0...v1.3.1) (2026-02-22)


### Bug Fixes

* remove schedule tab from web nav, add Chinese translations for Android schedule ([a214fda](https://github.com/HankHuang0516/realbot/commit/a214fda33ae28a47d075ad611b1b1a87b2f42f32))

# [1.3.0](https://github.com/HankHuang0516/realbot/compare/v1.2.0...v1.3.0) (2026-02-22)


### Features

* auto-delete Railway preview environment on PR close ([8db5a0b](https://github.com/HankHuang0516/realbot/commit/8db5a0b27c2bfcda54733741875313564dbd9cf9))

# [1.2.0](https://github.com/HankHuang0516/realbot/compare/v1.1.0...v1.2.0) (2026-02-22)


### Features

* enable Railway PR preview deploy in backend-ci ([e1145b6](https://github.com/HankHuang0516/realbot/commit/e1145b65ef3d45426048b81321778c591bf3519c))

# [1.1.0](https://github.com/HankHuang0516/realbot/compare/v1.0.24...v1.1.0) (2026-02-22)


### Features

* add Jest+Supertest, Android instrumented test, and CI/CD workflows ([8a8459d](https://github.com/HankHuang0516/realbot/commit/8a8459d1c94d983fe68e5281798e0ed3fe3fd86c))
